import { Recorder, Snapshot } from './types.js';
/**
 * This recorder will
 * - store auto snapshots in memory after every dispatch (for time travel debugging)
 * - persist a snapshot to disk when explicitly instructed to do so via createSnapshot()
 *
 */
export declare class FileRecorder implements Recorder {
    private snapshots;
    private filePath;
    constructor(filePath: string);
    afterDispatch(snapshot: Snapshot): Promise<void>;
    getSnapshots(): Promise<Snapshot[]>;
    createSnapshot(snapshot: Snapshot): Promise<void>;
    loadSnapshot(id?: string | undefined): Promise<Snapshot | null>;
}
