type FindCallback = (value: T) => boolean; /** * Very simple least-recently-used cache implementation * that should be fast enough for very small cache sizes */ export declare class BaseLRUCache { readonly limit: number; protected _entries: T[]; constructor(limit: number); get size(): number; protected _get(findEntryFn: FindCallback): T | undefined; protected _getByIndexAndMoveUp(idx: number): T | undefined; protected _set(value: T, findEntryFn?: FindCallback): void; protected onEvictEntry(entry: T): void; } export declare class LRUCache extends BaseLRUCache { private _keyFn; constructor(limit: number, keyFn: (T: any) => K); get(key: K): T | undefined; set(value: T): void; } export declare function tests(): { "can retrieve added entries": (assert: any) => void; "first entry is evicted first": (assert: any) => void; "second entry is evicted if first is requested": (assert: any) => void; "setting an entry twice removes the first": (assert: any) => void; "evict callback is called": (assert: any) => void; "evict callback is called when replacing entry with same identity": (assert: any) => void; }; export {};