@kangfenmao/keyv-storage
Version:
Simple key-value storage with support for multiple backends
68 lines (67 loc) • 1.44 kB
TypeScript
import { KeyvStorageParams } from './types/keyv-storage';
import { StorageDriver } from './types/storage-driver';
declare class KeyvStorage {
storage: StorageDriver;
env: string;
expiredSuffix: string;
keepSuffix: string;
constructor(params?: KeyvStorageParams);
init(): Promise<void>;
/**
* Remove expired keys
* @param {string} key
*/
private removeExpiredKeys;
/**
* Remove expired key
* @param {string} key
*/
private removeExpiredKey;
/**
* Get storage key name
* @param {string} key
*/
private getKey;
/**
* Get storage expired key name
* @param {string} key
*/
private getExpiredKey;
/**
* Get storage value
* @param {string} key
*/
get(key: string): any;
/**
* Set a storage key
* @param {string} key
* @param {any} data
* @param {object} expires
*/
set(key: string, data: any, { expires }?: {
expires: Date | null;
}): void;
/**
* Is key exists
* @param {string} key
*/
exists(key: string): boolean;
/**
* Remove a storage key
* @param {string} key
*/
remove(key: string): boolean;
/**
* Get all keys
*/
keys(): string[];
/**
* Clear storage
*/
clear(): Promise<void>;
/**
* Clear all
*/
clearAll(): Promise<void>;
}
export default KeyvStorage;