Skip to content

Commit 2533c93

Browse files
committed
fix(types): adapt type definition of dataOrUpdater in setQueryData
since the updater receives `T | undefined`, it is difficult to construct a `T` from that. oldData can legitimately be `undefined`, but since `getQueryData` can also return `undefined` at any point, it makes more sense to have the updater be able to return `undefined` as well, which also means that `data` itself can be `undefined`
1 parent 3a589bb commit 2533c93

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

types/index.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -604,7 +604,7 @@ export interface CachedQuery<T, TError = unknown> {
604604
config: QueryOptions<unknown, TError>
605605
state: CachedQueryState<T>
606606
setData(
607-
dataOrUpdater: unknown | ((oldData: unknown | undefined) => unknown)
607+
dataOrUpdater: unknown | undefined | ((oldData: unknown | undefined) => unknown | undefined)
608608
): void
609609
clear(): void
610610
}
@@ -686,7 +686,7 @@ export interface QueryCache {
686686
getQueryData<T = unknown>(key: AnyQueryKey | string): T | undefined
687687
setQueryData<T = unknown>(
688688
key: AnyQueryKey | string,
689-
dataOrUpdater: T | ((oldData: T | undefined) => T)
689+
dataOrUpdater: T | undefined | ((oldData: T | undefined) => T | undefined)
690690
): void
691691
refetchQueries<TResult>(
692692
queryKeyOrPredicateFn:

0 commit comments

Comments
 (0)