import type { CheckpointId } from '../../types/ids/index.js'; import type { Checkpoint } from '../../types/session/checkpoint.js'; import { type CheckpointLogView, type CheckpointScope, type CheckpointWriteReceipt, type SessionCheckpointStore } from './contract.js'; export interface InMemorySessionCheckpointStoreOptions { /** The session log the checkpoints are verified and protected against. */ readonly log: CheckpointLogView; } /** * Process-local {@link SessionCheckpointStore}, keyed by the full * tenant/project/session/turn scope. * * It keeps the serialised bytes rather than the object, so `restore` hashes * exactly what `write` hashed and refuses exactly what the disk store * refuses. It is the parity partner of the disk store and the store an * in-memory session keeps its checkpoints in. */ export declare class InMemorySessionCheckpointStore implements SessionCheckpointStore { #private; constructor(options: InMemorySessionCheckpointStoreOptions); write(scope: CheckpointScope, checkpoint: Checkpoint): Promise; read(scope: CheckpointScope, checkpointId: CheckpointId): Promise; restore(scope: CheckpointScope, checkpointId: CheckpointId): Promise; list(scope: CheckpointScope): Promise; delete(scope: CheckpointScope, checkpointId: CheckpointId): Promise; prune(scope: CheckpointScope, keepLast: number): Promise; } //# sourceMappingURL=memory.d.ts.map