Skip to content

Commit a8ae890

Browse files
authored
fix: types for useSuspenseQuery (#5755)
1 parent 0c0055c commit a8ae890

File tree

2 files changed

+20
-8
lines changed

2 files changed

+20
-8
lines changed

packages/react-query/src/types.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import type {
1212
QueryKey,
1313
QueryObserverOptions,
1414
QueryObserverResult,
15+
QueryObserverSuccessResult,
1516
WithRequired,
1617
} from '@tanstack/query-core'
1718

@@ -36,6 +37,16 @@ export interface UseQueryOptions<
3637
'queryKey'
3738
> {}
3839

40+
export interface UseSuspenseQueryOptions<
41+
TQueryFnData = unknown,
42+
TError = DefaultError,
43+
TData = TQueryFnData,
44+
TQueryKey extends QueryKey = QueryKey,
45+
> extends Omit<
46+
UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,
47+
'enabled' | 'suspense' | 'throwOnError' | 'placeholderData'
48+
> {}
49+
3950
export interface UseInfiniteQueryOptions<
4051
TQueryFnData = unknown,
4152
TError = DefaultError,
@@ -65,6 +76,11 @@ export type UseQueryResult<
6576
TError = DefaultError,
6677
> = UseBaseQueryResult<TData, TError>
6778

79+
export type UseSuspenseQueryResult<
80+
TData = unknown,
81+
TError = DefaultError,
82+
> = Omit<QueryObserverSuccessResult<TData, TError>, 'isPlaceholderData'>
83+
6884
export type DefinedUseQueryResult<
6985
TData = unknown,
7086
TError = DefaultError,
Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,18 @@
11
'use client'
22
import { QueryObserver } from '@tanstack/query-core'
33
import { useBaseQuery } from './useBaseQuery'
4-
import type { UseQueryOptions } from './types'
4+
import type { UseSuspenseQueryOptions, UseSuspenseQueryResult } from './types'
55
import type { DefaultError, QueryClient, QueryKey } from '@tanstack/query-core'
6-
import type { DefinedUseQueryResult } from './types'
76

87
export function useSuspenseQuery<
98
TQueryFnData = unknown,
109
TError = DefaultError,
1110
TData = TQueryFnData,
1211
TQueryKey extends QueryKey = QueryKey,
1312
>(
14-
options: Omit<
15-
UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,
16-
'enabled' | 'suspense' | 'throwOnError' | 'placeholderData'
17-
>,
13+
options: UseSuspenseQueryOptions<TQueryFnData, TError, TData, TQueryKey>,
1814
queryClient?: QueryClient,
19-
): Omit<DefinedUseQueryResult<TData, TError>, 'isPlaceholderData'> {
15+
): UseSuspenseQueryResult<TData, TError> {
2016
return useBaseQuery(
2117
{
2218
...options,
@@ -26,5 +22,5 @@ export function useSuspenseQuery<
2622
},
2723
QueryObserver,
2824
queryClient,
29-
) as DefinedUseQueryResult<TData, TError>
25+
) as UseSuspenseQueryResult<TData, TError>
3026
}

0 commit comments

Comments
 (0)