import type { ControlFlowOptions } from '../types.js'; import type { SignEIP2612PermitParams } from './signEIP2612Permit.js'; import type { Client, FeeValuesEIP1559, Hash } from 'viem'; /** * Parameters for the {@link permit} function. */ export type PermitParams = SignEIP2612PermitParams & { gas?: bigint; fees?: FeeValuesEIP1559; }; export type PermitReturnType = Hash; /** * Signs and executes an EIP-2612 permit * * @param client - The client instance. * @param params - The permit parameters. * @returns A transaction hash (`Hash`). */ export declare function permit(client: Client, params: PermitParams & ControlFlowOptions): Promise<`0x${string}`>;