import { x402ResourceServer } from "@x402/core/server"; import { MCP_PAYMENT_META_KEY, MCP_PAYMENT_RESPONSE_META_KEY, type PaymentWrappedHandler, type MCPToolCallback, type PaymentRequirements } from "@x402/mcp"; import type { TollgateConfig } from "../config.js"; export interface McpPaymentLayer { mode: "live" | "demo"; resourceServer: x402ResourceServer; accepts: PaymentRequirements[]; payTo: string; publicMcpUrl: string; /** Wrap a tool handler with verify+settle (live) or demo payment meta. */ wrapPaid: >(toolName: string, description: string, handler: PaymentWrappedHandler) => MCPToolCallback; } /** * Creates the MCP-side x402 payment layer. * Builds one accept per config.accepts entry (multi-network / multi-asset). */ export declare function createMcpPaymentLayer(config: TollgateConfig): Promise; export { MCP_PAYMENT_META_KEY, MCP_PAYMENT_RESPONSE_META_KEY }; /** Build a demo payment payload that the demo facilitator will accept. */ export declare function buildDemoPaymentPayload(toolName: string, accepts: PaymentRequirements[], publicMcpUrl?: string): Record;