/** * @typedef {import('interface-datastore').Datastore} Datastore * @typedef {import('interface-datastore/key').Key} Key * @typedef {import('interface-datastore').Options} Options * @typedef {import('interface-datastore').Pair} Pair * @typedef {import('interface-datastore').Batch} Batch * @typedef {import('interface-datastore').Query} Query * @typedef {import('interface-datastore').KeyQuery} KeyQuery * @typedef {import('interface-store').AwaitIterable} AwaitIterablePair * @typedef {import('interface-store').AwaitIterable} AwaitIterableKey */ /** * A datastore with an internal LRU cache */ export class LRUDatastore extends BaseDatastore { /** * Creates an instance of TLRU. * * @param {number} maxSize * @param {Datastore} datastore */ constructor(maxSize: number, datastore: Datastore); lru: { has: (key: string | number) => boolean; remove: (key: string | number) => void; get: (key: string | number) => any; set: (key: string | number, value: any) => void; clear: () => void; }; child: import("interface-datastore").Datastore; /** * @param {Key} key * @param {Options} [options] */ get(key: Key, options?: import("interface-datastore").Options | undefined): Promise; /** * @param {AwaitIterablePair} source * @param {Options} [options] */ putMany(source: AwaitIterablePair, options?: import("interface-datastore").Options | undefined): AsyncGenerator, void, undefined>; /** * @param {AwaitIterableKey} source * @param {Options} [options] */ getMany(source: AwaitIterableKey, options?: import("interface-datastore").Options | undefined): AsyncGenerator; /** * @param {AwaitIterableKey} source * @param {Options} [options] */ deleteMany(source: AwaitIterableKey, options?: import("interface-datastore").Options | undefined): AsyncGenerator; /** * @param {Query} q * @param {Options} [options] */ query(q: Query, options?: import("interface-datastore").Options | undefined): AsyncGenerator, void, undefined>; /** * @param {KeyQuery} q * @param {Options} [options] */ queryKeys(q: KeyQuery, options?: import("interface-datastore").Options | undefined): AsyncGenerator; } export type Datastore = import('interface-datastore').Datastore; export type Key = import('interface-datastore/key').Key; export type Options = import('interface-datastore').Options; export type Pair = import('interface-datastore').Pair; export type Batch = import('interface-datastore').Batch; export type Query = import('interface-datastore').Query; export type KeyQuery = import('interface-datastore').KeyQuery; export type AwaitIterablePair = import('interface-store').AwaitIterable; export type AwaitIterableKey = import('interface-store').AwaitIterable; import { BaseDatastore } from "datastore-core/base"; //# sourceMappingURL=lru-datastore.d.ts.map