import type { ConversationMessage, ProviderId } from './types.js';
import type { ProfileName } from '../config.js';
export interface SessionSummary {
    id: string;
    title: string;
    profile: ProfileName;
    provider: ProviderId;
    model: string;
    createdAt: string;
    updatedAt: string;
    messageCount: number;
    workspaceRoot?: string;
}
export interface StoredSession extends SessionSummary {
    messages: ConversationMessage[];
    scrollbackBuffer?: string[];
}
export interface SaveSessionOptions {
    id?: string | null;
    title?: string | null;
    profile: ProfileName;
    provider: ProviderId;
    model: string;
    workspaceRoot?: string | null;
    messages: ConversationMessage[];
    scrollbackBuffer?: string[];
}
export declare function listSessions(profile?: ProfileName): SessionSummary[];
export declare function saveSessionSnapshot(options: SaveSessionOptions): SessionSummary;
export declare function loadSessionById(id: string): StoredSession | null;
export declare function deleteSession(id: string): boolean;
export declare function saveAutosaveSnapshot(profile: ProfileName, options: Omit<SaveSessionOptions, 'profile'>): void;
export declare function loadAutosaveSnapshot(profile: ProfileName): StoredSession | null;
export declare function clearAutosaveSnapshot(profile: ProfileName): void;
//# sourceMappingURL=sessionStore.d.ts.map