@beenotung/tslib
Version:
utils library in Typescript
27 lines (26 loc) • 1.15 kB
TypeScript
export declare const storageSymbol: unique symbol;
export declare function getNodeStore(name: string, quota?: number): Storage;
export declare function getLocalStorage(name: string, quota?: number): Storage;
export interface IStore<getItemResult, setItemResult> {
getItem(key: string): getItemResult;
setItem(key: string, value: string): setItemResult;
}
export declare function proxyStore<getItemResult = string | null, setItemResult = void, Store extends IStore<getItemResult, setItemResult> = IStore<getItemResult, setItemResult>>(store: Store): Store;
export declare class Store implements Storage {
[storageSymbol]: Storage;
private constructor();
get length(): number;
clear(): void;
getItem(key: string): string | null;
getObject<T>(key: string): T | null;
key(index: number): string | null;
keys(): string[];
removeItem(key: string): void;
setItem(key: string, value: string): void;
setObject(key: string, value: any): void;
static create(storage: Storage): Store;
}
/**
* @param storage {Storage} e.g. localStorage
* */
export declare function getStoreKeys(storage: Storage): string[];