import { Session, CreateSessionParams, SessionStatus } from '../types/McpTypes.js';
export declare class SessionManager {
    private logger;
    private redis;
    private sessions;
    private cache;
    private initialized;
    private connectionPool;
    private readonly maxPoolSize;
    private cleanupInterval?;
    constructor();
    initialize(): Promise<SessionManager>;
    private cleanupConnectionPool;
    shutdown(): Promise<void>;
    createSession(params: CreateSessionParams): Promise<Session>;
    getSession(sessionId: string): Promise<Session | null>;
    updateSession(sessionId: string, updates: Partial<Session>): Promise<Session | null>;
    updateSessionStatus(sessionId: string, status: SessionStatus): Promise<void>;
    setSessionEndpoints(sessionId: string, endpoints: any): Promise<void>;
    setContainerId(sessionId: string, containerId: string): Promise<void>;
    destroySession(sessionId: string): Promise<void>;
    listSessions(clientId?: string): Promise<Session[]>;
    cleanupExpiredSessions(): Promise<void>;
    cleanup(): Promise<void>;
    private storeSession;
}
//# sourceMappingURL=SessionManager.d.ts.map