import { z } from "zod";
export const PaymentRequirementsSchema = z.object({
scheme: z.literal("exact"),
network: z.string(), // e.g. "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... or SVM
maxTimeoutSeconds: z.number().int().positive(),
asset: z.string(), // token address (EVM/SVM)
paymentType: z.enum(["eip3009", "permit", "permit2"]).optional(),
extra: z.record(z.any()).optional(),
});