/** * QA360 MCP Audit Logger * Logs all tool calls for security and compliance */ export interface AuditConfig { enabled: boolean; logPath: string; } export interface AuditEntry { timestamp: number; tool: string; args: any; result: any; success: boolean; duration_ms: number; client_info?: { pid?: number; cwd?: string; }; } export declare class AuditLogger { private config; private logPath; constructor(config: AuditConfig); /** * Log a tool call */ logToolCall(toolName: string, args: any, result: any, success: boolean, startTime?: number): Promise; /** * Get recent audit entries */ getRecentEntries(limit?: number): Promise; /** * Get audit statistics */ getAuditStats(): Promise<{ totalCalls: number; successRate: number; topTools: Array<{ tool: string; count: number; }>; recentErrors: AuditEntry[]; }>; /** * Clear old audit entries */ rotateLog(maxEntries?: number): Promise; /** * Sanitize data for audit logging (remove sensitive info) */ private sanitizeForAudit; /** * Check if key contains sensitive information */ private isSensitiveKey; /** * Resolve path with home directory expansion */ private resolvePath; /** * Ensure log directory exists */ private ensureLogDirectory; } //# sourceMappingURL=audit.d.ts.map