import { Address, Hex, WalletClient } from 'viem'; export declare const API_KEY_ACTIONS: readonly ["create", "list", "update", "revoke"]; export type ApiKeyAction = (typeof API_KEY_ACTIONS)[number]; export declare const API_KEY_ACTION_TYPES: { readonly ApiKeyAction: readonly [{ readonly name: "root"; readonly type: "address"; }, { readonly name: "action"; readonly type: "string"; }, { readonly name: "keyId"; readonly type: "string"; }, { readonly name: "timestamp"; readonly type: "uint256"; }, { readonly name: "nonce"; readonly type: "bytes32"; }]; }; export interface ApiKeyActionEnvelope { root: Address; action: ApiKeyAction; keyId: string; timestamp: number; nonce: Hex; agent?: Address; signature: Hex; } export interface SignApiKeyActionParams { root: Address; action: ApiKeyAction; keyId?: string; routerAddress?: Address; } export declare function signApiKeyAction(wallet: WalletClient, { root, action, keyId, routerAddress }: SignApiKeyActionParams): Promise;