Skip to content

SqliteSnapshotStore

Defined in: src/persistence/snapshot-stores/SqliteSnapshotStore.ts:35

SQLite-backed SnapshotStore — JSON payloads, single table, prune-on-save. Works on Bun (bun:sqlite) and Node.js (better-sqlite3) via the SqliteDriver abstraction. Construction is lazy (same pattern as SqliteJournal): the DB is opened on the first save / load call.

new SqliteSnapshotStore(options?): SqliteSnapshotStore

Defined in: src/persistence/snapshot-stores/SqliteSnapshotStore.ts:45

SqliteSnapshotStoreOptions = {}

SqliteSnapshotStore

close(): Promise<void>

Defined in: src/persistence/snapshot-stores/SqliteSnapshotStore.ts:106

Best-effort teardown.

Promise<void>

SnapshotStore.close


delete(pid, toSeq): Promise<void>

Defined in: src/persistence/snapshot-stores/SqliteSnapshotStore.ts:101

Delete snapshots up to and including toSeq. Useful for pruning.

string

number

Promise<void>

SnapshotStore.delete


loadBefore<S>(pid, seq, _options?): Promise<Option<Snapshot<S>>>

Defined in: src/persistence/snapshot-stores/SqliteSnapshotStore.ts:84

Load the newest snapshot with sequenceNr < seq, or None.

S

string

number

PersistenceOptions

Promise<Option<Snapshot<S>>>

SnapshotStore.loadBefore


loadLatest<S>(pid, _options?): Promise<Option<Snapshot<S>>>

Defined in: src/persistence/snapshot-stores/SqliteSnapshotStore.ts:67

Load the newest snapshot for pid, or None if none exist. options.encryption is required when client-side encryption was used at write time — the store has no other way to obtain the master key. Stores that don’t encrypt ignore the field.

S

string

PersistenceOptions

Promise<Option<Snapshot<S>>>

SnapshotStore.loadLatest


save<S>(pid, seq, state, _options?): Promise<Snapshot<S>>

Defined in: src/persistence/snapshot-stores/SqliteSnapshotStore.ts:51

Persist a snapshot at seq — typically the seq of the latest event applied. Optional options carry per-call preferences from the caller (e.g. compression/encryption set on the actor). Stores that cannot honour them silently ignore the field.

S

string

number

S

PersistenceOptions

Promise<Snapshot<S>>

SnapshotStore.save