export declare class LRUCache { private readonly cache; private readonly capacity; constructor(capacity: number); /** * Get a value by key. * Moves the key to the "most recently used" position if found. */ get(key: K): V | undefined; /** * Insert or update a value by key. * If capacity is exceeded, evicts the least recently used item. */ set(key: K, value: V): void; /** * Check if the cache contains a key (without updating its recency). */ has(key: K): boolean; /** * Delete a specific key from the cache. */ delete(key: K): boolean; /** * Clear the entire cache. */ clear(): void; /** * Current number of elements in cache. */ get size(): number; /** * Returns keys from least -> most recently used. */ keys(): K[]; }