import { z } from "zod";
export const PaymentRequirementsSchema = z.object({
scheme: z.literal("exact"),
network: z.string(), // 例如 "bsc", "bsc-testnet", "base-sepolia"
maxAmountRequired: z.string().refine(
(v) => Number.isInteger(Number(v)) && Number(v) >= 0
),
resource: z.string().url(),
description: z.string(),
mimeType: z.string(),
outputSchema: z.record(z.any()).optional(),
payTo: z.string(), // EVM 0x... 或 SVM 地址
maxTimeoutSeconds: z.number().int().positive(),
asset: z.string(), // Token 地址(EVM/SVM)
paymentType: z.enum(["eip3009", "permit", "permit2"]).optional(),
extra: z.record(z.any()).optional(),
});