export interface Cache { value?: V; timeoutId?: ReturnType; time?: number; alive?: number; } export declare class Memory { private cache; private alive; constructor(alive?: number); get getCache(): { [key in keyof T]?: Cache | undefined; }; setCache(cache: any): void; get(key: K): { [key in keyof T]?: Cache | undefined; }[K]; set(key: K, value: V, expires?: number): V; remove(key: K): V | undefined; resetCache(cache: { [K in keyof T]: Cache; }): void; clear(): void; }