import { type PublicClient, type WalletClient, type Chain, type Transport, type Account } from 'viem'; import { type AzethContractAddresses } from '@azeth/common'; import type { CreateAccountParams, CreateAccountResult } from './create.js'; /** Sign CreateAccount params with EIP-712 for gasless relay submission */ export declare function signCreateAccount(walletClient: WalletClient, publicClient: PublicClient, addresses: AzethContractAddresses, params: CreateAccountParams, agentURI: string, salt: `0x${string}`): Promise<{ signature: `0x${string}`; nonce: bigint; }>; /** Submit a signed CreateAccount to the relay endpoint. * Returns null for 429 (rate-limited) or 503 (relay unavailable). */ export declare function submitToRelay(serverUrl: string, params: CreateAccountParams, salt: `0x${string}`, agentURI: string, signature: `0x${string}`, chain: string): Promise; /** Try gasless creation via relay, return null if relay unavailable or rate-limited. * Falls back gracefully when the factory doesn't support createAccountWithSignature * (nonces() call fails), relay is down, or relay returns 429/503. */ export declare function createAccountGasless(publicClient: PublicClient, walletClient: WalletClient, addresses: AzethContractAddresses, params: CreateAccountParams, serverUrl: string, chain: string, salt: `0x${string}`, agentURI: string): Promise; //# sourceMappingURL=gasless.d.ts.map