@tanstack/vue-query
Version:
Hooks for managing, caching and syncing asynchronous and remote data in Vue
18 lines (15 loc) • 1.9 kB
TypeScript
import { ToRefs } from 'vue-demi';
import { DefaultError, MutationObserverOptions, DistributiveOmit, MutationObserverResult, MutateFunction } from '@tanstack/query-core';
import { MaybeRefDeep, ShallowOption } from './types.js';
import { Q as QueryClient } from './queryClient-CcE04-Qt.js';
type MutationResult<TData, TError, TVariables, TOnMutateResult> = DistributiveOmit<MutationObserverResult<TData, TError, TVariables, TOnMutateResult>, 'mutate' | 'reset'>;
type UseMutationOptionsBase<TData, TError, TVariables, TOnMutateResult> = MutationObserverOptions<TData, TError, TVariables, TOnMutateResult> & ShallowOption;
type UseMutationOptions<TData = unknown, TError = DefaultError, TVariables = void, TOnMutateResult = unknown> = MaybeRefDeep<UseMutationOptionsBase<TData, TError, TVariables, TOnMutateResult>> | (() => MaybeRefDeep<UseMutationOptionsBase<TData, TError, TVariables, TOnMutateResult>>);
type MutateSyncFunction<TData = unknown, TError = DefaultError, TVariables = void, TOnMutateResult = unknown> = (...options: Parameters<MutateFunction<TData, TError, TVariables, TOnMutateResult>>) => void;
type UseMutationReturnType<TData, TError, TVariables, TOnMutateResult, TResult = MutationResult<TData, TError, TVariables, TOnMutateResult>> = ToRefs<Readonly<TResult>> & {
mutate: MutateSyncFunction<TData, TError, TVariables, TOnMutateResult>;
mutateAsync: MutateFunction<TData, TError, TVariables, TOnMutateResult>;
reset: MutationObserverResult<TData, TError, TVariables, TOnMutateResult>['reset'];
};
declare function useMutation<TData = unknown, TError = DefaultError, TVariables = void, TOnMutateResult = unknown>(mutationOptions: UseMutationOptions<TData, TError, TVariables, TOnMutateResult>, queryClient?: QueryClient): UseMutationReturnType<TData, TError, TVariables, TOnMutateResult>;
export { type UseMutationOptions, type UseMutationReturnType, useMutation };