import type { ConnectionManager } from './connection-manager.js'; import type { WSComponentDependencies, SessionManagementOptions } from './types.js'; import type { SessionInfo, SessionStats } from './session/types.js'; export declare class SessionManager { private logger; private options; private components; constructor(dependencies: WSComponentDependencies, options?: SessionManagementOptions); start(): void; stop(): Promise; createOrUpdateSession(sessionId: string, userId: string, connectionId: string, options?: { roles?: string[]; permissions?: string[]; scopes?: string[]; metadata?: Record; }): Promise; removeConnectionFromSession(sessionId: string, connectionId: string): Promise; removeSession(sessionId: string): Promise; getSession(sessionId: string): SessionInfo | undefined; getUserSessions(userId: string): SessionInfo[]; validateSession(sessionId: string, connectionManager: ConnectionManager): Promise; getSessionStats(): SessionStats; cleanupExpiredSessions(): Promise; } export type { SessionInfo, SessionStats } from './session/types.js'; //# sourceMappingURL=session-manager.d.ts.map