/** * Session Management Service * SOLID Principles: Single Responsibility - Handle session management only */ import { ClaudeConversationManager } from '../conversation-manager'; import { ISessionManagementService } from '../interfaces/index'; export declare class SessionManagementService implements ISessionManagementService { private logger; private conversationManager; private activeSessions; private sessionTimestamps; private readonly SESSION_TIMEOUT; private cleanupTimer?; constructor(conversationManager?: ClaudeConversationManager); /** * Cleanup method to stop timers and release resources * Should be called when shutting down the service */ destroy(): Promise; getSessionForProject(projectPath: string): Promise; startNewSession(projectPath: string): Promise; endSession(sessionId: string): Promise; cleanupExpiredSessions(): Promise; getActiveSessionCount(): number; getSessionInfo(sessionId: string): { sessionId: string; startTime: Date; lastActivity: Date; isActive: boolean; } | null; getAllActiveSessions(): Array<{ sessionId: string; projectPath: string; startTime: Date; lastActivity: Date; }>; isSessionActive(sessionId: string): boolean; validateSession(sessionId: string, projectPath: string): Promise; private updateSessionTimestamp; private normalizePath; refreshSession(sessionId: string): Promise; getSessionStats(): { totalActiveSessions: number; oldestSessionAge: number; newestSessionAge: number; averageSessionAge: number; }; } //# sourceMappingURL=session-management-service.d.ts.map