UNPKG

@deno/kv

Version:

A Deno KV client library optimized for Node.js.

23 lines (22 loc) 1.67 kB
import { AtomicCheck, KvCommitError, KvCommitResult, KvConsistencyLevel, KvEntry, KvEntryMaybe, KvKey, KvListOptions, KvListSelector, KvMutation } from "./kv_types.js"; import { BaseKv, CursorHolder, DecodeV8, EncodeV8, Enqueue } from "./kv_util.js"; import { AtomicWrite, AtomicWriteOutput, SnapshotRead, SnapshotReadOutput, WatchKeyOutput } from "./proto/messages/com/deno/kv/datapath/index.js"; export { UnknownV8 } from "./v8.js"; export declare abstract class ProtoBasedKv extends BaseKv { protected readonly decodeV8: DecodeV8; protected readonly encodeV8: EncodeV8; constructor(debug: boolean, decodeV8: DecodeV8, encodeV8: EncodeV8); protected abstract snapshotRead(req: SnapshotRead, consistency: KvConsistencyLevel | undefined): Promise<SnapshotReadOutput>; protected abstract atomicWrite(req: AtomicWrite): Promise<AtomicWriteOutput>; protected get_<T = unknown>(key: KvKey, consistency?: KvConsistencyLevel): Promise<KvEntryMaybe<T>>; protected getMany_(keys: readonly KvKey[], consistency?: KvConsistencyLevel): Promise<KvEntryMaybe<unknown>[]>; protected commit(checks: AtomicCheck[], mutations: KvMutation[], enqueues: Enqueue[]): Promise<KvCommitResult | KvCommitError>; protected listStream<T>(outCursor: CursorHolder, selector: KvListSelector, { batchSize, consistency, cursor: cursorOpt, limit, reverse }?: KvListOptions): AsyncGenerator<KvEntry<T>>; } export declare class WatchCache { private readonly decodeV8; private readonly keys; private readonly lastValues; constructor(decodeV8: DecodeV8, keys: readonly KvKey[]); processOutputKeys(outputKeys: WatchKeyOutput[]): KvEntryMaybe<unknown>[]; }