export declare class LRUCache { private _capacity; private _list; private _cache; constructor(capacity?: number); private _reenqueue; /** * Returns a specified element from the cache. * * @timeComplexity `O(1)` */ get(key: K): V | void; /** * Adds a new element with a specified key and value to the cache. * If an element with the same key already exists, the element will * be updated and marked as the most recent. * * @timeComplexity `O(1)` */ set(key: K, value: V): void; /** * Returns whether an element with the specified key exists or not. * * @timeComplexity `O(1)` */ has(key: K): boolean; /** * Deletes a specified element from the cache. * * @timeComplexity `O(1)` * * @returns True if the element was deleted, otherwise false. */ delete(key: K): boolean; /** * Clears the cache. * * @timeComplexity `O(1)` */ clear(): void; /** * Gets the number of cached items. * * @timeComplexity `O(1)` * * @returns The size of the cache. */ size(): number; keys(): IterableIterator; values(): IterableIterator; entries(): IterableIterator<[K, V]>; [Symbol.iterator](): IterableIterator<[K, V]>; }