tryaii-mcp-server
Version:
TryAII MCP Server - 15+ AI models with comparison, cost tracking, and collective intelligence
41 lines • 1.61 kB
TypeScript
import { EventEmitter } from 'events';
import { HttpClient } from './httpClient.js';
import { Session, QueueStatus } from '../types/session.js';
export declare class SessionManager extends EventEmitter {
private sessions;
private readonly SESSION_TIMEOUT;
private readonly CLEANUP_INTERVAL;
private readonly MAX_SESSIONS;
private cleanupTimer;
private running;
private metrics;
private httpClient;
private sessionService;
constructor();
private setupEventHandlers;
start(): void;
stop(): void;
createSession(userId: string, apiKeyId: string, tryaiiApiKey?: string): Promise<string>;
getOrCreateSession(userId: string, apiKeyId: string, tryaiiApiKey?: string): Promise<Session>;
/**
* 🔥 ENHANCED: Create session with user context data
*/
createSessionWithUserContext(userId: string, apiKeyId: string, tryaiiApiKey?: string): Promise<string>;
queueRequest(sessionId: string, method: string, params: any): Promise<any>;
private processNextRequest;
private rejectRequest;
private startCleanupScheduler;
private cleanupExpiredSessions;
private isSessionExpired;
private expireSession;
getSession(sessionId: string): Session | undefined;
getActiveSessionCount(): number;
getSessionStatus(sessionId: string): QueueStatus | null;
getMetrics(): any;
isRunning(): boolean;
setHttpClient(httpClient: HttpClient): void;
private saveSessionToDatabase;
private extractModelInteractions;
}
export declare const sessionManager: SessionManager;
//# sourceMappingURL=sessionManager.d.ts.map