From 2533c9308b20ba31fdc10f9301c77b95b0407dab Mon Sep 17 00:00:00 2001 From: Dominik Dorfmeister Date: Tue, 2 Jun 2020 15:58:19 +0200 Subject: [PATCH] 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` --- types/index.d.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/types/index.d.ts b/types/index.d.ts index d638c7eb634..4679deb8a44 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -604,7 +604,7 @@ export interface CachedQuery { config: QueryOptions state: CachedQueryState setData( - dataOrUpdater: unknown | ((oldData: unknown | undefined) => unknown) + dataOrUpdater: unknown | undefined | ((oldData: unknown | undefined) => unknown | undefined) ): void clear(): void } @@ -686,7 +686,7 @@ export interface QueryCache { getQueryData(key: AnyQueryKey | string): T | undefined setQueryData( key: AnyQueryKey | string, - dataOrUpdater: T | ((oldData: T | undefined) => T) + dataOrUpdater: T | undefined | ((oldData: T | undefined) => T | undefined) ): void refetchQueries( queryKeyOrPredicateFn: