Skip to main content

Interface: ExperimentalKVStore

Store defines a transactional key/value store that Replicache stores all data within.

For correct operation of Replicache, implementations of this interface must provide strict serializable transactions.

Informally, read and write transactions must behave like a ReadWrite Lock - multiple read transactions are allowed in parallel, or one write. Additionally writes from a transaction must appear all at one, atomically.

experimental This interface is experimental and might be removed or changed in the future without following semver versioning. Please be cautious.

Properties

closed

closed: boolean

Methods

close

close(): Promise<void>

Returns

Promise<void>


read

read(): Promise<ExperimentalKVRead>

Returns

Promise<ExperimentalKVRead>


withRead

withRead<R>(f): Promise<R>

Type parameters

Name
R

Parameters

NameType
f(read: ExperimentalKVRead) => R | Promise<R>

Returns

Promise<R>


withWrite

withWrite<R>(f): Promise<R>

Type parameters

Name
R

Parameters

NameType
f(write: ExperimentalKVWrite) => R | Promise<R>

Returns

Promise<R>


write

write(): Promise<ExperimentalKVWrite>

Returns

Promise<ExperimentalKVWrite>