Interface: WriteTransaction
WriteTransactions are used with mutators which are registered using ReplicacheOptions.mutators and allows read and write operations on the database.
Extends
Properties
clientID
readonlyclientID:string
Inherited from
environment
readonlyenvironment:TransactionEnvironment
Deprecated
Use ReadTransaction.location instead.
Inherited from
location
readonlylocation:TransactionEnvironment
Inherited from
mutationID
readonlymutationID:number
The ID of the mutation that is being applied.
reason
readonlyreason:TransactionReason
The reason for the transaction. This can be initial, rebase or authoriative.
Methods
del()
del(
key):Promise<boolean>
Removes a key and its value from the database. Returns true if there was a
key to remove.
Parameters
key
string
Returns
Promise<boolean>
get()
Call Signature
get(
key):Promise<undefined|ReadonlyJSONValue>
Get a single value from the database. If the key is not present this
returns undefined.
Important: The returned JSON is readonly and should not be modified. This is only enforced statically by TypeScript and there are no runtime checks for performance reasons. If you mutate the return value you will get undefined behavior.
Parameters
key
string
Returns
Promise<undefined | ReadonlyJSONValue>
Inherited from
Call Signature
get<
T>(key):Promise<undefined|DeepReadonly<T>>
Type Parameters
T
T extends JSONValue
Parameters
key
string
Returns
Promise<undefined | DeepReadonly<T>>
Inherited from
has()
has(
key):Promise<boolean>
Determines if a single key is present in the database.
Parameters
key
string
Returns
Promise<boolean>
Inherited from
isEmpty()
isEmpty():
Promise<boolean>
Whether the database is empty.
Returns
Promise<boolean>
Inherited from
put()
put(
key,value):Promise<void>
Parameters
key
string
value
Returns
Promise<void>
Deprecated
Use WriteTransaction.set instead.
scan()
Call Signature
scan(
options):ScanResult<IndexKey,ReadonlyJSONValue>
Gets many values from the database. This returns a ScanResult which
implements AsyncIterable. It also has methods to iterate over the
keys and entries.
If options has an indexName, then this does a scan over an index with
that name. A scan over an index uses a tuple for the key consisting of
[secondary: string, primary: string].
If the ScanResult is used after the ReadTransaction has been closed
it will throw a TransactionClosedError.
Important: The returned JSON is readonly and should not be modified. This is only enforced statically by TypeScript and there are no runtime checks for performance reasons. If you mutate the return value you will get undefined behavior.
Parameters
options
Returns
ScanResult<IndexKey, ReadonlyJSONValue>
Inherited from
Call Signature
scan(
options?):ScanResult<string,ReadonlyJSONValue>
Parameters
options?
Returns
ScanResult<string, ReadonlyJSONValue>
Inherited from
Call Signature
scan(
options?):ScanResult<string|IndexKey,ReadonlyJSONValue>
Parameters
options?
Returns
ScanResult<string | IndexKey, ReadonlyJSONValue>
Inherited from
Call Signature
scan<
V>(options):ScanResult<IndexKey,DeepReadonly<V>>
Type Parameters
V
V extends ReadonlyJSONValue
Parameters
options
Returns
ScanResult<IndexKey, DeepReadonly<V>>
Inherited from
Call Signature
scan<
V>(options?):ScanResult<string,DeepReadonly<V>>
Type Parameters
V
V extends ReadonlyJSONValue
Parameters
options?
Returns
ScanResult<string, DeepReadonly<V>>
Inherited from
Call Signature
scan<
V>(options?):ScanResult<string|IndexKey,DeepReadonly<V>>
Type Parameters
V
V extends ReadonlyJSONValue
Parameters
options?
Returns
ScanResult<string | IndexKey, DeepReadonly<V>>
Inherited from
set()
set(
key,value):Promise<void>
Sets a single value in the database. The value will be frozen (using
Object.freeze) in debug mode.
Parameters
key
string
value
Returns
Promise<void>