export interface ApiMutationBase { params: TApiMutationParams; mutate: (args: TApiMutationArgs) => Promise; } export interface ApiIdleMutation extends ApiMutationBase { status: `idle`; } export interface ApiPendingMutation extends ApiMutationBase { status: `pending`; } export interface ApiSuccessfulMutation extends ApiMutationBase { status: `successful`; data: TApiMutationData; } export interface ApiFailedMutation extends ApiMutationBase { status: `failed`; error: unknown; } export type ApiMutation = (ApiIdleMutation | ApiPendingMutation | ApiSuccessfulMutation | ApiFailedMutation); export interface ApiMutationType { getKey: (params?: TApiMutationParams) => Array; mutate: (params: TApiMutationParams, args: TApiMutationArgs, context: TApiMutationContext) => Promise; } export declare function useApiMutation(apiMutationParams: TApiMutationParams, apiMutationType: ApiMutationType, apiMutationContext: TApiMutationContext): ApiMutation; export declare function useApiMutation(apiMutationParams: TApiMutationParams | undefined, apiMutationType: ApiMutationType, apiMutationContext: TApiMutationContext | undefined): ApiMutation | undefined; //# sourceMappingURL=api-mutation.d.ts.map