UNPKG

@vk-io/scenes

Version:

Scenes for the library vk-io

36 lines (35 loc) 946 B
type CacheRepositorySortingValues<Value> = (a: Value, b: Value) => number; export declare class CacheRepository<Key, Value> { private readonly collection; keys: Key[]; values: Value[]; protected sortingValues?: CacheRepositorySortingValues<Value>; constructor({ sortingValues }?: { sortingValues?: CacheRepositorySortingValues<Value>; }); /** * Checks has value by key */ has(key: Key): boolean; /** * Sets value by key */ set(key: Key, value: Value): void; /** * Returns value by key */ get(key: Key): Value | undefined; /** * Sets value by key else error if exits */ strictSet(key: Key, value: Value): void; /** * Returns value by key else error */ strictGet(key: Key): Value; /** * Returns iterator */ [Symbol.iterator](): IterableIterator<[Key, Value]>; } export {};