@@ -15,14 +15,15 @@ import { notifyManager } from './notifyManager'
1515import { infiniteQueryBehavior } from './infiniteQueryBehavior'
1616import type {
1717 CancelOptions ,
18- DataTag ,
1918 DefaultError ,
2019 DefaultOptions ,
2120 DefaultedQueryObserverOptions ,
2221 EnsureInfiniteQueryDataOptions ,
2322 EnsureQueryDataOptions ,
2423 FetchInfiniteQueryOptions ,
2524 FetchQueryOptions ,
25+ InferDataFromTag ,
26+ InferErrorFromTag ,
2627 InfiniteData ,
2728 InvalidateOptions ,
2829 InvalidateQueryFilters ,
@@ -39,7 +40,6 @@ import type {
3940 RefetchQueryFilters ,
4041 ResetOptions ,
4142 SetDataOptions ,
42- UnsetMarker ,
4343} from './types'
4444import type { QueryState } from './query'
4545import type { MutationFilters , QueryFilters , Updater } from './utils'
@@ -122,13 +122,7 @@ export class QueryClient {
122122 getQueryData <
123123 TQueryFnData = unknown ,
124124 TTaggedQueryKey extends QueryKey = QueryKey ,
125- TInferredQueryFnData = TTaggedQueryKey extends DataTag <
126- unknown ,
127- infer TaggedValue ,
128- unknown
129- >
130- ? TaggedValue
131- : TQueryFnData ,
125+ TInferredQueryFnData = InferDataFromTag < TQueryFnData , TTaggedQueryKey > ,
132126 > ( queryKey : TTaggedQueryKey ) : TInferredQueryFnData | undefined {
133127 const options = this . defaultQueryOptions ( { queryKey } )
134128
@@ -191,13 +185,7 @@ export class QueryClient {
191185 setQueryData <
192186 TQueryFnData = unknown ,
193187 TTaggedQueryKey extends QueryKey = QueryKey ,
194- TInferredQueryFnData = TTaggedQueryKey extends DataTag <
195- unknown ,
196- infer TaggedValue ,
197- unknown
198- >
199- ? TaggedValue
200- : TQueryFnData ,
188+ TInferredQueryFnData = InferDataFromTag < TQueryFnData , TTaggedQueryKey > ,
201189 > (
202190 queryKey : TTaggedQueryKey ,
203191 updater : Updater <
@@ -267,22 +255,8 @@ export class QueryClient {
267255 TQueryFnData = unknown ,
268256 TError = DefaultError ,
269257 TTaggedQueryKey extends QueryKey = QueryKey ,
270- TInferredQueryFnData = TTaggedQueryKey extends DataTag <
271- unknown ,
272- infer TaggedValue ,
273- unknown
274- >
275- ? TaggedValue
276- : TQueryFnData ,
277- TInferredError = TTaggedQueryKey extends DataTag <
278- unknown ,
279- unknown ,
280- infer TaggedError
281- >
282- ? TaggedError extends UnsetMarker
283- ? TError
284- : TaggedError
285- : TError ,
258+ TInferredQueryFnData = InferDataFromTag < TQueryFnData , TTaggedQueryKey > ,
259+ TInferredError = InferErrorFromTag < TError , TTaggedQueryKey > ,
286260 > (
287261 queryKey : TTaggedQueryKey ,
288262 ) : QueryState < TInferredQueryFnData , TInferredError > | undefined {
@@ -293,8 +267,19 @@ export class QueryClient {
293267 }
294268
295269 removeQueries <
296- TQueryFilters extends QueryFilters < any , any , any , any > = QueryFilters ,
297- > ( filters ?: TQueryFilters ) : void {
270+ TQueryFnData = unknown ,
271+ TError = DefaultError ,
272+ TTaggedQueryKey extends QueryKey = QueryKey ,
273+ TInferredQueryFnData = InferDataFromTag < TQueryFnData , TTaggedQueryKey > ,
274+ TInferredError = InferErrorFromTag < TError , TTaggedQueryKey > ,
275+ > (
276+ filters ?: QueryFilters <
277+ TInferredQueryFnData ,
278+ TInferredError ,
279+ TInferredQueryFnData ,
280+ TTaggedQueryKey
281+ > ,
282+ ) : void {
298283 const queryCache = this . #queryCache
299284 notifyManager . batch ( ( ) => {
300285 queryCache . findAll ( filters ) . forEach ( ( query ) => {
@@ -304,26 +289,51 @@ export class QueryClient {
304289 }
305290
306291 resetQueries <
307- TQueryFilters extends QueryFilters < any , any , any , any > = QueryFilters ,
308- > ( filters ?: TQueryFilters , options ?: ResetOptions ) : Promise < void > {
292+ TQueryFnData = unknown ,
293+ TError = DefaultError ,
294+ TTaggedQueryKey extends QueryKey = QueryKey ,
295+ TInferredQueryFnData = InferDataFromTag < TQueryFnData , TTaggedQueryKey > ,
296+ TInferredError = InferErrorFromTag < TError , TTaggedQueryKey > ,
297+ > (
298+ filters ?: QueryFilters <
299+ TInferredQueryFnData ,
300+ TInferredError ,
301+ TInferredQueryFnData ,
302+ TTaggedQueryKey
303+ > ,
304+ options ?: ResetOptions ,
305+ ) : Promise < void > {
309306 const queryCache = this . #queryCache
310307
311- const refetchFilters : RefetchQueryFilters = {
312- type : 'active' ,
313- ...filters ,
314- }
315-
316308 return notifyManager . batch ( ( ) => {
317309 queryCache . findAll ( filters ) . forEach ( ( query ) => {
318310 query . reset ( )
319311 } )
320- return this . refetchQueries ( refetchFilters , options )
312+ return this . refetchQueries (
313+ {
314+ type : 'active' ,
315+ ...filters ,
316+ } ,
317+ options ,
318+ )
321319 } )
322320 }
323321
324322 cancelQueries <
325- TQueryFilters extends QueryFilters < any , any , any , any > = QueryFilters ,
326- > ( filters ?: TQueryFilters , cancelOptions : CancelOptions = { } ) : Promise < void > {
323+ TQueryFnData = unknown ,
324+ TError = DefaultError ,
325+ TTaggedQueryKey extends QueryKey = QueryKey ,
326+ TInferredQueryFnData = InferDataFromTag < TQueryFnData , TTaggedQueryKey > ,
327+ TInferredError = InferErrorFromTag < TError , TTaggedQueryKey > ,
328+ > (
329+ filters ?: QueryFilters <
330+ TInferredQueryFnData ,
331+ TInferredError ,
332+ TInferredQueryFnData ,
333+ TTaggedQueryKey
334+ > ,
335+ cancelOptions : CancelOptions = { } ,
336+ ) : Promise < void > {
327337 const defaultedCancelOptions = { revert : true , ...cancelOptions }
328338
329339 const promises = notifyManager . batch ( ( ) =>
@@ -336,14 +346,18 @@ export class QueryClient {
336346 }
337347
338348 invalidateQueries <
339- TInvalidateQueryFilters extends InvalidateQueryFilters <
340- any ,
341- any ,
342- any ,
343- any
344- > = InvalidateQueryFilters ,
349+ TQueryFnData = unknown ,
350+ TError = DefaultError ,
351+ TTaggedQueryKey extends QueryKey = QueryKey ,
352+ TInferredQueryFnData = InferDataFromTag < TQueryFnData , TTaggedQueryKey > ,
353+ TInferredError = InferErrorFromTag < TError , TTaggedQueryKey > ,
345354 > (
346- filters ?: TInvalidateQueryFilters ,
355+ filters ?: InvalidateQueryFilters <
356+ TInferredQueryFnData ,
357+ TInferredError ,
358+ TInferredQueryFnData ,
359+ TTaggedQueryKey
360+ > ,
347361 options : InvalidateOptions = { } ,
348362 ) : Promise < void > {
349363 return notifyManager . batch ( ( ) => {
@@ -354,23 +368,29 @@ export class QueryClient {
354368 if ( filters ?. refetchType === 'none' ) {
355369 return Promise . resolve ( )
356370 }
357- const refetchFilters : RefetchQueryFilters = {
358- ...filters ,
359- type : filters ?. refetchType ?? filters ?. type ?? 'active' ,
360- }
361- return this . refetchQueries ( refetchFilters , options )
371+ return this . refetchQueries (
372+ {
373+ ...filters ,
374+ type : filters ?. refetchType ?? filters ?. type ?? 'active' ,
375+ } ,
376+ options ,
377+ )
362378 } )
363379 }
364380
365381 refetchQueries <
366- TRefetchQueryFilters extends RefetchQueryFilters <
367- any ,
368- any ,
369- any ,
370- any
371- > = RefetchQueryFilters ,
382+ TQueryFnData = unknown ,
383+ TError = DefaultError ,
384+ TTaggedQueryKey extends QueryKey = QueryKey ,
385+ TInferredQueryFnData = InferDataFromTag < TQueryFnData , TTaggedQueryKey > ,
386+ TInferredError = InferErrorFromTag < TError , TTaggedQueryKey > ,
372387 > (
373- filters ?: TRefetchQueryFilters ,
388+ filters ?: RefetchQueryFilters <
389+ TInferredQueryFnData ,
390+ TInferredError ,
391+ TInferredQueryFnData ,
392+ TTaggedQueryKey
393+ > ,
374394 options : RefetchOptions = { } ,
375395 ) : Promise < void > {
376396 const fetchOptions = {
0 commit comments