import { EventEmitter } from 'events'; export interface LogEntry { timestamp: string; level: 'info' | 'warn' | 'error' | 'debug'; message: string; source?: 'stdout' | 'stderr' | 'system'; serverName: string; } export interface ServerLogStats { totalLogs: number; errorCount: number; warnCount: number; lastActivity: string; isConnected: boolean; connectionAttempts: number; lastError?: string; } export declare class ServerLogManager extends EventEmitter { private logs; private maxLogsPerServer; private logStats; constructor(maxLogsPerServer?: number); /** * Add log entry */ addLog(serverName: string, level: LogEntry['level'], message: string, source?: LogEntry['source']): void; /** * Get server logs */ getLogs(serverName: string, limit?: number): LogEntry[]; /** * Get recent logs for all servers */ getAllRecentLogs(limit?: number): LogEntry[]; /** * Get server statistics */ getStats(serverName: string): ServerLogStats | undefined; /** * Get all server statistics */ getAllStats(): Map; /** * Clear server logs */ clearLogs(serverName: string): void; /** * Clear all logs */ clearAllLogs(): void; /** * Log server connection status changes */ updateConnectionStatus(serverName: string, isConnected: boolean, error?: string): void; /** * Log server output */ addServerOutput(serverName: string, data: string, source: 'stdout' | 'stderr'): void; /** * Search logs */ searchLogs(serverName: string, query: string, options?: { level?: LogEntry['level']; source?: LogEntry['source']; limit?: number; }): LogEntry[]; /** * Export logs as text format */ exportLogs(serverName: string, format?: 'json' | 'text'): string; private updateStats; private getOrCreateStats; } export declare const globalLogManager: ServerLogManager; //# sourceMappingURL=server-log-manager.d.ts.map