export interface AuditLogEntry { timestamp: string; sessionId: string; action: string; command?: string; riskLevel: 'low' | 'medium' | 'high' | 'critical'; success: boolean; error?: string; executionTime: number; sourceIP?: string; userAgent?: string; } export interface SecurityMetrics { totalRequests: number; blockedRequests: number; highRiskRequests: number; criticalRiskRequests: number; averageExecutionTime: number; topCommands: { command: string; count: number; }[]; errorRate: number; } export declare class SecurityLogger { private logDir; private encryptionKey; constructor(logDir?: string); logSecurityEvent(entry: AuditLogEntry): Promise; getSecurityMetrics(since?: Date): Promise; searchLogs(criteria: { action?: string; riskLevel?: string; since?: Date; until?: Date; limit?: number; }): Promise; private ensureLogDirectory; private getOrCreateEncryptionKey; private encryptLogEntry; private encryptString; private decryptString; private getLogFilePath; private getLogLevel; private readLogEntries; private decryptLogEntry; } export declare const securityLogger: SecurityLogger;