import type { DurableTopicDocument } from './types.js';
export interface DurableMemoryWorkspaceSnapshot {
    index: string | null;
    topics: Array<{
        fileName: string;
        content: string;
    }>;
}
export declare class DurableMemoryWorkspace {
    private readonly rootDir;
    constructor(rootDir?: string);
    initialize(): void;
    getRootDir(): string;
    private getIndexPath;
    private getTopicPath;
    listTopicFiles(): string[];
    readTopicFile(fileName: string): string | null;
    writeTopicFile(fileName: string, content: string): void;
    deleteTopicFile(fileName: string): void;
    readTopicDocument(fileName: string): DurableTopicDocument | null;
    readAllTopicDocuments(): DurableTopicDocument[];
    writeTopicDocument(topic: DurableTopicDocument): void;
    readIndex(): string | null;
    writeIndex(content: string): void;
    deleteIndex(): void;
    snapshot(): DurableMemoryWorkspaceSnapshot;
    restore(snapshot: DurableMemoryWorkspaceSnapshot): void;
    clear(): void;
    private atomicWrite;
}
//# sourceMappingURL=workspace.d.ts.map