/**
 * SessionStore - 백그라운드 에이전트 세션 저장소
 */
import { BackgroundAgentHandle, AgentResult, SessionInfo } from './types.js';
import { ToolResult } from '../types/tool.js';
export interface SessionData {
    handle: BackgroundAgentHandle;
    resultPromise: Promise<AgentResult>;
    cancelController: AbortController;
    createdAt: number;
}
/**
 * SessionStore - 세션 저장 및 관리
 */
declare class SessionStoreImpl {
    private activeSessions;
    private sessionHistory;
    private cleanupTimer;
    constructor();
    private startCleanupTimer;
    private cleanup;
    add(sessionId: string, data: SessionData): void;
    get(sessionId: string): SessionData | undefined;
    delete(sessionId: string): void;
    addToHistory(info: SessionInfo): void;
    findInHistory(sessionId: string): SessionInfo | undefined;
    getActiveSessions(): SessionData[];
    getRecentHistory(limit: number): SessionInfo[];
}
export declare const sessionStore: SessionStoreImpl;
/**
 * 활성 세션 목록 조회
 */
export declare function listActiveSessions(): ToolResult;
/**
 * 세션 히스토리 조회
 */
export declare function getSessionHistory(limit?: number): ToolResult;
export {};
//# sourceMappingURL=SessionStore.d.ts.map