/** * Compliance Mapper * * Maps adversary findings to compliance framework controls including * OWASP LLM Top 10, MITRE ATLAS, MITRE ATT&CK, CWE, SOC 2, ISO 27001, * PCI-DSS, and GDPR. * * @module agents/adversary/reporting/compliance-mapper */ import type { AdversaryFinding, AttackFocusArea } from "../types.js"; /** * Compliance framework mapping result */ export interface ComplianceMappingResult { finding: AdversaryFinding; frameworks: { owaspLlm?: OwaspLlmMapping; mitreAtlas?: MitreAtlasMapping; mitreAttack?: MitreAttackMapping; cwe?: CweMapping; soc2?: Soc2Mapping; iso27001?: Iso27001Mapping; pciDss?: PciDssMapping; gdpr?: GdprMapping; }; overallRisk: AdversaryFinding["severity"]; } interface OwaspLlmMapping { id: string; name: string; description: string; severity: string; } interface MitreAtlasMapping { technique: string; tactic: string; description: string; } interface MitreAttackMapping { technique: string; tactic: string; description: string; } interface CweMapping { id: string; name: string; description: string; } interface Soc2Mapping { criteria: string; control: string; description: string; } interface Iso27001Mapping { control: string; annex: string; description: string; } interface PciDssMapping { requirement: string; description: string; } interface GdprMapping { article: string; description: string; } /** * Map a finding to compliance frameworks */ export declare function mapFindingToCompliance(finding: AdversaryFinding, focusArea?: AttackFocusArea): ComplianceMappingResult; /** * Map multiple findings to compliance frameworks */ export declare function mapFindingsToCompliance(findings: AdversaryFinding[]): ComplianceMappingResult[]; /** * Generate compliance summary from mappings */ export declare function generateComplianceSummary(mappings: ComplianceMappingResult[]): ComplianceSummary; export interface ComplianceSummary { totalFindings: number; byFramework: { owaspLlm: string[]; mitreAtlas: string[]; mitreAttack: string[]; cwe: string[]; soc2: string[]; iso27001: string[]; pciDss: string[]; gdpr: string[]; }; bySeverity: { critical: number; high: number; medium: number; low: number; }; affectedControls: string[]; } /** * Format compliance mapping as markdown */ export declare function formatComplianceMappingAsMarkdown(mapping: ComplianceMappingResult): string; /** * Format compliance summary as markdown */ export declare function formatComplianceSummaryAsMarkdown(summary: ComplianceSummary): string; export {}; //# sourceMappingURL=compliance-mapper.d.ts.map