import type { DescMessage, DescMethodUnary, MessageInitShape, MessageShape } from "@bufbuild/protobuf";
import type { ConnectError, Transport } from "@connectrpc/connect";
import type { UseMutationOptions as TSUseMutationOptions, UseMutationResult } from "@tanstack/react-query";
/**
 * Options for useMutation
 */
export type UseMutationOptions<I extends DescMessage, O extends DescMessage, Ctx = unknown> = TSUseMutationOptions<MessageShape<O>, ConnectError, MessageInitShape<I>, Ctx> & {
    /** The transport to be used for the fetching. */
    transport?: Transport;
};
/**
 * Query the method provided. Maps to useMutation on tanstack/react-query
 */
export declare function useMutation<I extends DescMessage, O extends DescMessage, Ctx = unknown>(schema: DescMethodUnary<I, O>, { transport, ...queryOptions }?: UseMutationOptions<I, O, Ctx>): UseMutationResult<MessageShape<O>, ConnectError, MessageInitShape<I>, Ctx>;
