import type { AuditEvent } from '../types.js'; export type ComplianceExportFormat = 'csv' | 'json' | 'parquet'; export type AuditLogFilter = { startDate?: Date; endDate?: Date; eventType?: string; keyId?: string; success?: boolean; limit?: number; }; export type ComplianceReport = { generatedAt: Date; eventCount: number; keyIds: string[]; eventTypes: Set; successRate: number; suspiciousActivity: AuditEvent[]; }; /** * Enhanced audit logging with compliance reporting and event search * Phase 1: Comprehensive audit logging for regulatory compliance */ export declare class ComplianceAuditLogger { private auditLog; private readonly maxLogSize; constructor(maxLogSize?: number); /** * Record an audit event */ record(event: AuditEvent): void; /** * Search audit logs with filters */ searchLogs(filter: AuditLogFilter): AuditEvent[]; /** * Generate compliance report */ generateComplianceReport(filter?: AuditLogFilter): ComplianceReport; /** * Export audit logs in specified format */ exportLogs(filter: AuditLogFilter, format?: ComplianceExportFormat): string; /** * Detect suspicious activity patterns */ private detectSuspiciousActivity; /** * Clear audit logs (with caution) */ clear(): void; /** * Get total audit log entries */ getLogCount(): number; } //# sourceMappingURL=compliance-audit.d.ts.map