import { SchemeNetworkFacilitator, PaymentPayload, PaymentRequirements, VerifyResponse, SettleResponse } from '@payai/x402/types'; import { S as SettlementCache } from '../../../settlement-cache-D9gb94wH.js'; import { F as FacilitatorSvmSigner } from '../../../signer-BMkbhFYE.js'; import '@solana/kit'; /** * SVM facilitator implementation for the Exact payment scheme (V1). */ declare class ExactSvmSchemeV1 implements SchemeNetworkFacilitator { private readonly signer; readonly scheme = "exact"; readonly caipFamily = "solana:*"; private readonly settlementCache; /** * Creates a new ExactSvmFacilitatorV1 instance. * * @param signer - The SVM RPC client for facilitator operations * @param settlementCache - Optional shared settlement cache (one is created if omitted) * @returns ExactSvmFacilitatorV1 instance */ constructor(signer: FacilitatorSvmSigner, settlementCache?: SettlementCache); /** * Get mechanism-specific extra data for the supported kinds endpoint. * For SVM, this includes a randomly selected fee payer address. * Random selection distributes load across multiple signers. * * @param _ - The network identifier (unused for SVM) * @returns Extra data with feePayer address */ getExtra(_: string): Record | undefined; /** * Get signer addresses used by this facilitator. * For SVM, returns all available fee payer addresses. * * @param _ - The network identifier (unused for SVM) * @returns Array of fee payer addresses */ getSigners(_: string): string[]; /** * Verifies a payment payload (V1). * * @param payload - The payment payload to verify * @param requirements - The payment requirements * @returns Promise resolving to verification response */ verify(payload: PaymentPayload, requirements: PaymentRequirements): Promise; /** * Settles a payment by submitting the transaction (V1). * Ensures the correct signer is used based on the feePayer specified in requirements. * * @param payload - The payment payload to settle * @param requirements - The payment requirements * @returns Promise resolving to settlement response */ settle(payload: PaymentPayload, requirements: PaymentRequirements): Promise; /** * Verify compute limit instruction * * @param instruction - The compute limit instruction * @param instruction.programAddress - Program address * @param instruction.data - Instruction data bytes */ private verifyComputeLimitInstruction; /** * Verify compute price instruction * * @param instruction - The compute price instruction * @param instruction.programAddress - Program address * @param instruction.data - Instruction data bytes */ private verifyComputePriceInstruction; } export { ExactSvmSchemeV1 };