Skip to content

Commit b977cf4

Browse files
refactor(types): use core types in useMutation instead of redefining them (TanStack#3122)
1 parent ca2a57a commit b977cf4

File tree

1 file changed

+8
-38
lines changed

1 file changed

+8
-38
lines changed

src/react/types.ts

Lines changed: 8 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
1-
import { RetryValue, RetryDelayValue } from '../core/retryer'
21
import {
32
InfiniteQueryObserverOptions,
43
InfiniteQueryObserverResult,
54
MutationObserverResult,
6-
MutationKey,
75
QueryObserverOptions,
86
QueryObserverResult,
97
QueryKey,
10-
MutationFunction,
11-
MutateOptions,
12-
MutationMeta,
8+
MutationObserverOptions,
9+
MutateFunction,
1310
} from '../core/types'
1411

1512
export interface UseBaseQueryOptions<
@@ -73,53 +70,26 @@ export interface UseMutationOptions<
7370
TError = unknown,
7471
TVariables = void,
7572
TContext = unknown
76-
> {
77-
mutationFn?: MutationFunction<TData, TVariables>
78-
mutationKey?: MutationKey
79-
onMutate?: (
80-
variables: TVariables
81-
) => Promise<TContext | undefined> | TContext | undefined
82-
onSuccess?: (
83-
data: TData,
84-
variables: TVariables,
85-
context: TContext | undefined
86-
) => Promise<unknown> | void
87-
onError?: (
88-
error: TError,
89-
variables: TVariables,
90-
context: TContext | undefined
91-
) => Promise<unknown> | void
92-
onSettled?: (
93-
data: TData | undefined,
94-
error: TError | null,
95-
variables: TVariables,
96-
context: TContext | undefined
97-
) => Promise<unknown> | void
98-
retry?: RetryValue<TError>
99-
retryDelay?: RetryDelayValue<TError>
100-
useErrorBoundary?: boolean | ((error: TError) => boolean)
101-
meta?: MutationMeta
102-
}
73+
> extends Omit<
74+
MutationObserverOptions<TData, TError, TVariables, TContext>,
75+
'_defaulted' | 'variables'
76+
> {}
10377

10478
export type UseMutateFunction<
10579
TData = unknown,
10680
TError = unknown,
10781
TVariables = void,
10882
TContext = unknown
10983
> = (
110-
variables: TVariables,
111-
options?: MutateOptions<TData, TError, TVariables, TContext>
84+
...args: Parameters<MutateFunction<TData, TError, TVariables, TContext>>
11285
) => void
11386

11487
export type UseMutateAsyncFunction<
11588
TData = unknown,
11689
TError = unknown,
11790
TVariables = void,
11891
TContext = unknown
119-
> = (
120-
variables: TVariables,
121-
options?: MutateOptions<TData, TError, TVariables, TContext>
122-
) => Promise<TData>
92+
> = MutateFunction<TData, TError, TVariables, TContext>
12393

12494
export type UseBaseMutationResult<
12595
TData = unknown,

0 commit comments

Comments
 (0)