import type { Address, Chain, Client, StateOverride, Transport } from "viem";
import type { BundlerRpcSchema } from "../../client/decorators/bundlerClient";
import type { UserOperationEstimateGasResponse, UserOperationRequest } from "../../types";
export declare const estimateUserOperationGas: <TClient extends Client<Transport, Chain | undefined, any, BundlerRpcSchema>, TEntryPointVersion extends keyof import("../../entrypoint/types").EntryPointRegistryBase<unknown> = keyof import("../../entrypoint/types").EntryPointRegistryBase<unknown>>(client: TClient, args: {
    request: UserOperationRequest<TEntryPointVersion>;
    entryPoint: Address;
    stateOverride?: StateOverride | undefined;
}) => Promise<UserOperationEstimateGasResponse<TEntryPointVersion>>;
