#!/usr/bin/env node
/**
 * Manages delegation session persistence for multi-turn conversations
 */
interface SessionData {
    sessionId: string;
    totalCost?: number;
    cwd?: string;
}
interface TurnData {
    totalCost?: number;
}
interface SessionMetadata {
    sessionId: string;
    profile: string;
    startTime: number;
    lastTurnTime: number;
    totalCost: number;
    turns: number;
    cwd: string;
}
/**
 * Session Manager Class
 */
declare class SessionManager {
    private readonly sessionsPath;
    constructor();
    /**
     * Store new session metadata
     */
    storeSession(profile: string, sessionData: SessionData): void;
    /**
     * Update session after additional turn
     */
    updateSession(profile: string, sessionId: string, turnData: TurnData): void;
    /**
     * Get last session for profile
     */
    getLastSession(profile: string): SessionMetadata | null;
    /**
     * Clear all sessions for profile
     */
    clearProfile(profile: string): void;
    /**
     * Clean up expired sessions (>30 days)
     */
    cleanupExpired(): void;
    /**
     * Load sessions from disk
     */
    private loadSessions;
    /**
     * Save sessions to disk
     */
    private saveSessions;
}
export { SessionManager };
//# sourceMappingURL=session-manager.d.ts.map