import { type FileEntry } from '../../core/session-schema.js';
export interface SessionPersistenceBackend {
    ensureSessionDir(sessionDir: string): void;
    normalizeSessionRef(sessionRef: string): string;
    createSessionRef(sessionDir: string, sessionId: string, timestamp: string): string;
    sessionRefExists(sessionRef: string): boolean;
    loadEntries(sessionRef: string): FileEntry[];
    rewriteEntries(sessionRef: string, entries: FileEntry[]): void;
    appendEntries(sessionRef: string, entries: FileEntry[]): void;
    findMostRecentSessionRef(sessionDir: string): string | null;
    deleteSessionRef(sessionRef: string): void;
}
export declare class FileSessionPersistenceBackend implements SessionPersistenceBackend {
    ensureSessionDir(sessionDir: string): void;
    normalizeSessionRef(sessionRef: string): string;
    createSessionRef(sessionDir: string, sessionId: string, timestamp: string): string;
    sessionRefExists(sessionRef: string): boolean;
    loadEntries(sessionRef: string): FileEntry[];
    rewriteEntries(sessionRef: string, entries: FileEntry[]): void;
    appendEntries(sessionRef: string, entries: FileEntry[]): void;
    findMostRecentSessionRef(sessionDir: string): string | null;
    deleteSessionRef(sessionRef: string): void;
    private ensureParentDir;
}
//# sourceMappingURL=session-persistence-backend.d.ts.map