/
types.ts
141 lines (129 loc) 路 3.33 KB
/
types.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
import { RetryValue, RetryDelayValue } from '../core/retryer'
import {
InfiniteQueryObserverOptions,
InfiniteQueryObserverResult,
MutationObserverResult,
MutationKey,
QueryObserverOptions,
QueryObserverResult,
QueryKey,
MutationFunction,
MutateOptions,
MutationMeta,
} from '../core/types'
export interface UseBaseQueryOptions<
TQueryFnData = unknown,
TError = unknown,
TData = TQueryFnData,
TQueryData = TQueryFnData,
TQueryKey extends QueryKey = QueryKey
> extends QueryObserverOptions<
TQueryFnData,
TError,
TData,
TQueryData,
TQueryKey
> {}
export interface UseQueryOptions<
TQueryFnData = unknown,
TError = unknown,
TData = TQueryFnData,
TQueryKey extends QueryKey = QueryKey
> extends UseBaseQueryOptions<
TQueryFnData,
TError,
TData,
TQueryFnData,
TQueryKey
> {}
export interface UseInfiniteQueryOptions<
TQueryFnData = unknown,
TError = unknown,
TData = TQueryFnData,
TQueryData = TQueryFnData,
TQueryKey extends QueryKey = QueryKey
> extends InfiniteQueryObserverOptions<
TQueryFnData,
TError,
TData,
TQueryData,
TQueryKey
> {}
export type UseBaseQueryResult<
TData = unknown,
TError = unknown
> = QueryObserverResult<TData, TError>
export type UseQueryResult<
TData = unknown,
TError = unknown
> = UseBaseQueryResult<TData, TError>
export type UseInfiniteQueryResult<
TData = unknown,
TError = unknown
> = InfiniteQueryObserverResult<TData, TError>
export interface UseMutationOptions<
TData = unknown,
TError = unknown,
TVariables = void,
TContext = unknown
> {
mutationFn?: MutationFunction<TData, TVariables>
mutationKey?: MutationKey
onMutate?: (
variables: TVariables
) => Promise<TContext | undefined> | TContext | undefined
onSuccess?: (
data: TData,
variables: TVariables,
context: TContext | undefined
) => Promise<unknown> | void
onError?: (
error: TError,
variables: TVariables,
context: TContext | undefined
) => Promise<unknown> | void
onSettled?: (
data: TData | undefined,
error: TError | null,
variables: TVariables,
context: TContext | undefined
) => Promise<unknown> | void
retry?: RetryValue<TError>
retryDelay?: RetryDelayValue<TError>
useErrorBoundary?: boolean | ((error: TError) => boolean)
meta?: MutationMeta
}
export type UseMutateFunction<
TData = unknown,
TError = unknown,
TVariables = void,
TContext = unknown
> = (
variables: TVariables,
options?: MutateOptions<TData, TError, TVariables, TContext>
) => void
export type UseMutateAsyncFunction<
TData = unknown,
TError = unknown,
TVariables = void,
TContext = unknown
> = (
variables: TVariables,
options?: MutateOptions<TData, TError, TVariables, TContext>
) => Promise<TData>
export type UseBaseMutationResult<
TData = unknown,
TError = unknown,
TVariables = unknown,
TContext = unknown
> = Override<
MutationObserverResult<TData, TError, TVariables, TContext>,
{ mutate: UseMutateFunction<TData, TError, TVariables, TContext> }
> & { mutateAsync: UseMutateAsyncFunction<TData, TError, TVariables, TContext> }
export type UseMutationResult<
TData = unknown,
TError = unknown,
TVariables = unknown,
TContext = unknown
> = UseBaseMutationResult<TData, TError, TVariables, TContext>
type Override<A, B> = { [K in keyof A]: K extends keyof B ? B[K] : A[K] }