import type { SessionStats } from './types.js'; import type { SessionStateManager } from './state-manager.js'; import type { SessionEventEmitter } from './event-emitter.js'; import type { pino } from 'pino'; export interface ExtendedSessionStats extends SessionStats { averageSessionDuration: number; peakConcurrentSessions: number; sessionCreationRate: number; sessionTerminationRate: number; topUsers: Array<{ userId: string; sessionCount: number; totalDuration: number; }>; } export declare class SessionStatisticsManager { private readonly logger; private readonly stateManager; private readonly eventEmitter; private sessionMetrics; private peakConcurrentSessions; private sessionCreationTimes; private sessionTerminationTimes; constructor(logger: pino.Logger, stateManager: SessionStateManager, eventEmitter: SessionEventEmitter); getSessionStats(): SessionStats; getExtendedStats(): ExtendedSessionStats; exportStatistics(): Record; resetStatistics(): void; cleanupOldMetrics(maxAge?: number): void; private setupEventListeners; private updatePeakSessions; private calculateSessionsPerUser; private calculateUserMetrics; } //# sourceMappingURL=statistics-manager.d.ts.map