import { CountOptions, KVStore, KVStoreTransaction, ScanOptions } from '../../types.js'; import { Tuple } from '../../codec.js'; import { ScopedKVStore } from '../utils/scoped-store.js'; export type IndexedDbKVOptions = { batchSize?: number; useCache?: boolean; }; export declare class IndexedDbKVStore implements KVStore { private db; private cache; readonly options: IndexedDbKVOptions; constructor(db: string | Promise, options?: IndexedDbKVOptions); private populateCache; private setupSchema; get(key: Tuple, scope?: Tuple): Promise; set(key: Tuple, value: any, scope?: Tuple): Promise; delete(key: Tuple, scope?: Tuple): Promise; scan(options: ScanOptions, scope?: Tuple): AsyncIterable<[Tuple, any]>; scanValues(options: ScanOptions, scope?: Tuple): AsyncIterable; clear(scope?: Tuple): Promise; scope(scope: Tuple): ScopedKVStore; transact(): KVStoreTransaction; count(options: CountOptions, scope?: Tuple): Promise; applyEdits(sets: AsyncIterable<[Tuple, any]> | Iterable<[Tuple, any]>, deletes: AsyncIterable | Iterable): Promise; getBatchKeys(keyRange: IDBKeyRange, batchSize: number): Promise; }