import { Promisable } from 'type-fest'; import { IJson } from '../interfaces/IJson'; import { IStorage } from '../interfaces/IStorage'; /** * This class behaves like LocalStorage but entries are JSON objects */ export declare class ObjectStorage { private baseStorage; constructor(baseStorage: IStorage); /** * Returns the number of key/value pairs currently present in the list associated with the object. */ get length(): Promisable; /** * Empties the list associated with the object of all key/value pairs, if there are any. */ clear(): void; /** * Returns the current value associated with the given key, or null if the given key does not exist in the list associated with the object. */ getItem(key: string): Promise; /** * Returns the name of the nth key in the list, or null if n is greater than or equal to the number of key/value pairs in the object. */ key(index: number): string | null; /** * Removes the key/value pair with the given key from the list associated with the object, if a key/value pair with the given key exists. */ removeItem(key: string): void; /** * Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously. */ setItem(key: string, value: T): Promisable; } export declare const objectLocalStorage: ObjectStorage;