/** * Authorized cybersecurity-scan payment profile helpers. * * Paid security tools need tighter guards than general data APIs. These helpers * require target authorization, allowed-domain binding, per-target spend caps, * scan-rate policy, human approval, and audit receipt language before x402 * signing can proceed. */ import { z } from 'zod'; export declare const AuthorizedCyberScanProfileSchema: z.ZodObject<{ schema: z.ZodLiteral<"agentpay-authorized-cybersecurity-scan-profile/v1">; generated_at: z.ZodString; scan: z.ZodObject<{ tool_id: z.ZodString; category: z.ZodEnum<{ vulnerability_scan: "vulnerability_scan"; compliance_check: "compliance_check"; threat_intel_lookup: "threat_intel_lookup"; security_audit: "security_audit"; }>; target: z.ZodString; target_domain: z.ZodString; requested_by_agent: z.ZodString; }, z.core.$strip>; authorization: z.ZodObject<{ attestation_id: z.ZodString; granted_by: z.ZodString; granted_at: z.ZodString; expires_at: z.ZodString; allowed_domains: z.ZodArray; allowed_scan_categories: z.ZodArray>; proof_uri: z.ZodOptional; }, z.core.$strip>; spend_policy: z.ZodObject<{ currency: z.ZodLiteral<"USD">; per_target_cap_usd: z.ZodNumber; spent_for_target_usd: z.ZodNumber; requested_cost_usd: z.ZodNumber; x402_max_amount_required: z.ZodString; }, z.core.$strip>; rate_limit: z.ZodObject<{ window_seconds: z.ZodNumber; max_scans_per_window: z.ZodNumber; scans_used_in_window: z.ZodNumber; }, z.core.$strip>; approval_gate: z.ZodObject<{ fail_closed: z.ZodLiteral; requires_human_approval: z.ZodLiteral; approved: z.ZodBoolean; prompt: z.ZodString; }, z.core.$strip>; audit_receipt: z.ZodObject<{ receipt_id: z.ZodString; retention_days: z.ZodNumber; language: z.ZodString; }, z.core.$strip>; }, z.core.$strip>; export type AuthorizedCyberScanProfile = z.infer; export type AuthorizedCyberScanPolicy = { now?: Date; allowedDomains: string[]; maxRequestedCostUsd: number; minReceiptRetentionDays: number; }; export type AuthorizedCyberScanDecision = { ok: boolean; failures: string[]; warnings: string[]; }; export declare function evaluateAuthorizedCyberScanProfile(profileInput: unknown, policy: AuthorizedCyberScanPolicy): AuthorizedCyberScanDecision; //# sourceMappingURL=authorized-cybersecurity-scan-profile.d.ts.map