@@ -8,13 +8,16 @@ type QueryKeyEndpointOptions = {
88 query ?: Record < string , any > ;
99} ;
1010
11- export type QueryKey =
11+ export type ApiQueryKey =
1212 | readonly [ url : string ]
1313 | readonly [ url : string , options : QueryKeyEndpointOptions ] ;
1414
15- interface UseQueryOptions < TQueryFnData , TError = RequestError , TData = TQueryFnData >
16- extends Omit <
17- reactQuery . UseQueryOptions < TQueryFnData , TError , TData , QueryKey > ,
15+ export interface UseApiQueryOptions <
16+ TQueryFnData ,
17+ TError = RequestError ,
18+ TData = TQueryFnData
19+ > extends Omit <
20+ reactQuery . UseQueryOptions < TQueryFnData , TError , TData , ApiQueryKey > ,
1821 'queryKey' | 'queryFn'
1922 > {
2023 /**
@@ -35,6 +38,15 @@ interface UseQueryOptions<TQueryFnData, TError = RequestError, TData = TQueryFnD
3538 staleTime : number ;
3639}
3740
41+ /**
42+ * TODO(epurkhiser): Remove once getsentry references are updated
43+ */
44+ export interface UseQueryOptions <
45+ TQueryFnData ,
46+ TError = RequestError ,
47+ TData = TQueryFnData
48+ > extends UseApiQueryOptions < TQueryFnData , TError , TData > { }
49+
3850// Overrides to the default react-query options.
3951// See https://tanstack.com/query/v4/docs/guides/important-defaults
4052const DEFAULT_QUERY_CLIENT_CONFIG : QueryClientConfig = {
@@ -47,9 +59,9 @@ const DEFAULT_QUERY_CLIENT_CONFIG: QueryClientConfig = {
4759
4860function isQueryFn < TQueryFnData , TError , TData > (
4961 queryFnOrQueryOptions ?:
50- | reactQuery . QueryFunction < TQueryFnData , QueryKey >
51- | UseQueryOptions < TQueryFnData , TError , TData >
52- ) : queryFnOrQueryOptions is reactQuery . QueryFunction < TQueryFnData , QueryKey > {
62+ | reactQuery . QueryFunction < TQueryFnData , ApiQueryKey >
63+ | UseApiQueryOptions < TQueryFnData , TError , TData >
64+ ) : queryFnOrQueryOptions is reactQuery . QueryFunction < TQueryFnData , ApiQueryKey > {
5365 return typeof queryFnOrQueryOptions === 'function' ;
5466}
5567
@@ -69,8 +81,8 @@ function isQueryFn<TQueryFnData, TError, TData>(
6981 * );
7082 */
7183function useApiQuery < TQueryFnData , TError = RequestError , TData = TQueryFnData > (
72- queryKey : QueryKey ,
73- queryOptions : UseQueryOptions < TQueryFnData , TError , TData >
84+ queryKey : ApiQueryKey ,
85+ queryOptions : UseApiQueryOptions < TQueryFnData , TError , TData >
7486) : reactQuery . UseQueryResult < TData , TError > ;
7587/**
7688 * Example usage with custom query function:
@@ -82,16 +94,16 @@ function useApiQuery<TQueryFnData, TError = RequestError, TData = TQueryFnData>(
8294 * )
8395 */
8496function useApiQuery < TQueryFnData , TError = RequestError , TData = TQueryFnData > (
85- queryKey : QueryKey ,
86- queryFn : reactQuery . QueryFunction < TQueryFnData , QueryKey > ,
87- queryOptions ?: UseQueryOptions < TQueryFnData , TError , TData >
97+ queryKey : ApiQueryKey ,
98+ queryFn : reactQuery . QueryFunction < TQueryFnData , ApiQueryKey > ,
99+ queryOptions ?: UseApiQueryOptions < TQueryFnData , TError , TData >
88100) : reactQuery . UseQueryResult < TData , TError > ;
89101function useApiQuery < TQueryFnData , TError = RequestError , TData = TQueryFnData > (
90- queryKey : QueryKey ,
102+ queryKey : ApiQueryKey ,
91103 queryFnOrQueryOptions :
92- | reactQuery . QueryFunction < TQueryFnData , QueryKey >
93- | UseQueryOptions < TQueryFnData , TError , TData > ,
94- queryOptions ?: UseQueryOptions < TQueryFnData , TError , TData >
104+ | reactQuery . QueryFunction < TQueryFnData , ApiQueryKey >
105+ | UseApiQueryOptions < TQueryFnData , TError , TData > ,
106+ queryOptions ?: UseApiQueryOptions < TQueryFnData , TError , TData >
95107) : reactQuery . UseQueryResult < TData , TError > {
96108 // XXX: We need to set persistInFlight to disable query cancellation on unmount.
97109 // The current implementation of our API client does not reject on query
@@ -101,7 +113,7 @@ function useApiQuery<TQueryFnData, TError = RequestError, TData = TQueryFnData>(
101113
102114 const [ path , endpointOptions ] = queryKey ;
103115
104- const defaultQueryFn : reactQuery . QueryFunction < TQueryFnData , QueryKey > = ( ) =>
116+ const defaultQueryFn : reactQuery . QueryFunction < TQueryFnData , ApiQueryKey > = ( ) =>
105117 api . requestPromise ( path , {
106118 method : 'GET' ,
107119 query : endpointOptions ?. query ,
@@ -121,7 +133,5 @@ function useApiQuery<TQueryFnData, TError = RequestError, TData = TQueryFnData>(
121133// eslint-disable-next-line import/export
122134export * from '@tanstack/react-query' ;
123135
124- const useQuery = useApiQuery ;
125-
126136// eslint-disable-next-line import/export
127- export { DEFAULT_QUERY_CLIENT_CONFIG , useApiQuery , useQuery , UseQueryOptions } ;
137+ export { DEFAULT_QUERY_CLIENT_CONFIG , useApiQuery } ;
0 commit comments