import { RevocationAuditEntry } from './cascading-revocation-manager'; import { ActivityLogger } from '../activity/activity-logger'; export interface AuditQuery { agentDID?: string; revokedBy?: string; serviceDID?: string; reason?: string; status?: 'pending' | 'completed' | 'failed' | 'partial'; dateRange?: { start: Date; end: Date; }; cascading?: boolean; limit?: number; offset?: number; sortBy?: 'timestamp' | 'agentDID' | 'status'; sortOrder?: 'asc' | 'desc'; } export interface AuditAnalytics { totalRevocations: number; revocationsByReason: Map; revocationsByService: Map; revocationsByUser: Map; revocationsByStatus: Map; cascadingPercentage: number; averageChildRevocations: number; peakRevocationHours: number[]; revocationTrends: { daily: Map; weekly: Map; monthly: Map; }; complianceMetrics: { auditCompleteness: number; notificationSuccessRate: number; avgProcessingTime: number; }; } export interface AuditAlert { id: string; type: 'high_volume' | 'cascade_failure' | 'notification_failure' | 'suspicious_pattern'; severity: 'low' | 'medium' | 'high' | 'critical'; message: string; timestamp: Date; affectedAgents: string[]; metadata: Record; acknowledged: boolean; acknowledgedBy?: string; acknowledgedAt?: Date; } /** * Enhanced audit trail system for delegation revocations * Provides advanced querying, analytics, and monitoring capabilities */ export declare class EnhancedAuditTrail { private activityLogger; private config; private auditEntries; private alertSubscribers; private alerts; private lastAnalyticsUpdate; private cachedAnalytics; constructor(activityLogger: ActivityLogger, config?: { maxEntries: number; alertThresholds: { highVolumeMinutes: number; highVolumeCount: number; cascadeFailureThreshold: number; notificationFailureThreshold: number; }; retentionDays: number; }); /** * Adds a revocation audit entry to the trail */ addAuditEntry(entry: RevocationAuditEntry): Promise; /** * Updates an existing audit entry */ updateAuditEntry(id: string, updates: Partial): Promise; /** * Queries audit entries with advanced filtering */ queryAuditEntries(query?: AuditQuery): RevocationAuditEntry[]; /** * Generates comprehensive analytics from audit data */ generateAnalytics(forceRefresh?: boolean): AuditAnalytics; /** * Subscribes to audit alerts */ subscribeToAlerts(subscriberId: string, callback: (alert: AuditAlert) => void): void; /** * Unsubscribes from audit alerts */ unsubscribeFromAlerts(subscriberId: string): void; /** * Gets all active alerts */ getActiveAlerts(): AuditAlert[]; /** * Acknowledges an alert */ acknowledgeAlert(alertId: string, acknowledgedBy: string): Promise; /** * Exports audit data in various formats */ exportAuditData(format: 'json' | 'csv' | 'xml', query?: AuditQuery): string; /** * Generates compliance report */ generateComplianceReport(period: { start: Date; end: Date; }): { summary: { totalRevocations: number; successfulRevocations: number; failedRevocations: number; partialRevocations: number; complianceScore: number; }; details: { auditCompleteness: number; notificationDelivery: number; processingTime: number; errorRate: number; }; recommendations: string[]; violations: Array<{ type: string; severity: 'low' | 'medium' | 'high'; description: string; affectedEntries: string[]; }>; }; private checkAlerts; private createAlert; private cleanupOldEntries; private exportToCsv; private exportToXml; private escapeXml; private getWeekKey; private getWeekNumber; } //# sourceMappingURL=audit-trail.d.ts.map