/** * Shared x402 POST helper. * * Posts JSON to a BlockRun gateway endpoint and transparently completes the * x402 payment handshake: the first POST may return 402 with payment * requirements, we sign with the local wallet (Base or Solana, per active * chain) and retry once with the signature header. * * Extracted from src/phone/client.ts so phone, onramp, and any future * gateway clients share one implementation instead of copy-pasting the * 402 dance. Endpoints that are free simply return 200 on the first POST, * in which case no signing happens. */ export interface PostResult { ok: boolean; status: number; body: Record; raw: string; } /** * POST JSON to a gateway endpoint, completing the x402 handshake if the * endpoint demands payment. `resourceDescription` is surfaced to the user * in the wallet signature for free-text context. */ export declare function postWithPayment(endpoint: string, body: Record, resourceDescription: string, timeoutMs?: number): Promise;