import { Adapter } from './adapters/Adapter'; export interface EncodedValue { expire: number; value: string | null; } export default class Storage { /** * Storage key prefix */ private prefix; /** * Adapter for storing and getting values */ private storeAdapter; /** * * @param prefix - Storage key prefix * @param storeAdapter - Adapter for storing and getting values */ constructor(prefix?: string, storeAdapter?: Adapter); /** * Parse object saved in storage. * * @private * @param object - Save object * @param key - Key of item * @returns Decoded value */ private _parseEncodedValue; get(key: string): Promise | null>; remove(key: string): Promise; set(key: string, value: string | number | Record | null, expire?: Date): Promise; }