import { X as X402Config } from '../config-Dfuvno71.js'; import { C as ConnectedClient, S as Signer } from '../wallet-QoI_c_RA.js'; import { a as PaymentPayload, P as PaymentRequirements, G as VerifyResponse, S as SettleResponse } from '../x402Specs-DDvn2leQ.js'; import { Transport, Chain, Account } from 'viem'; import { C as CreateHeaders, F as FacilitatorConfig } from '../middleware-C2A30IXp.js'; import '../wallet-h2_C4cJt.js'; import 'viem/chains'; import '../wallet-BHq0zJhq.js'; import '@solana/kit'; import 'zod'; import '../network-N01ZIAhA.js'; /** * Verifies a payment payload against the required payment details regardless of the scheme * this function wraps all verify functions for each specific scheme * * @param client - The public client used for blockchain interactions * @param payload - The signed payment payload containing transfer parameters and signature * @param paymentRequirements - The payment requirements that the payload must satisfy * @param config - Optional configuration for X402 operations (e.g., custom RPC URLs) * @returns A ValidPaymentRequest indicating if the payment is valid and any invalidation reason */ declare function verify(client: ConnectedClient | Signer, payload: PaymentPayload, paymentRequirements: PaymentRequirements, config?: X402Config): Promise; /** * Settles a payment payload against the required payment details regardless of the scheme * this function wraps all settle functions for each specific scheme * * @param client - The signer wallet used for blockchain interactions * @param payload - The signed payment payload containing transfer parameters and signature * @param paymentRequirements - The payment requirements that the payload must satisfy * @param config - Optional configuration for X402 operations (e.g., custom RPC URLs) * @returns A SettleResponse indicating if the payment is settled and any settlement reason */ declare function settle(client: Signer, payload: PaymentPayload, paymentRequirements: PaymentRequirements, config?: X402Config): Promise; type Supported = { x402Version: number; kind: { scheme: string; networkId: string; extra: object; }[]; }; /** * Creates an authorization header for a request to the Coinbase API. * * @param apiKeyId - The api key ID * @param apiKeySecret - The api key secret * @param requestMethod - The method for the request (e.g. 'POST') * @param requestHost - The host for the request (e.g. 'https://x402.org/facilitator') * @param requestPath - The path for the request (e.g. '/verify') * @returns The authorization header string */ declare function createAuthHeader(apiKeyId: string, apiKeySecret: string, requestMethod: string, requestHost: string, requestPath: string): Promise; /** * Creates a correlation header for a request to the Coinbase API. * * @returns The correlation header string */ declare function createCorrelationHeader(): string; /** * Creates a CDP auth header for the facilitator service * * @param apiKeyId - The CDP API key ID * @param apiKeySecret - The CDP API key secret * @returns A function that returns the auth headers */ declare function createCdpAuthHeaders(apiKeyId?: string, apiKeySecret?: string): CreateHeaders; /** * Creates a facilitator config for the Coinbase CDP X402 facilitator * * @param apiKeyId - The CDP API key ID * @param apiKeySecret - The CDP API key secret * @returns A facilitator config for CDP */ declare function createCdpFacilitatorConfig(apiKeyId?: string, apiKeySecret?: string): FacilitatorConfig; /** * Creates a facilitator config for the AnySpend X402 facilitator * AnySpend does not require authentication headers * * @returns A facilitator config for AnySpend */ declare function createFacilitatorConfig(): FacilitatorConfig; /** * Default facilitator using AnySpend (no auth required) */ declare const facilitator: FacilitatorConfig; /** * CDP facilitator (requires CDP API keys) */ declare const cdpFacilitator: FacilitatorConfig; export { type Supported, cdpFacilitator, createAuthHeader, createCdpAuthHeaders, createCdpFacilitatorConfig, createCorrelationHeader, createFacilitatorConfig, facilitator, settle, verify };