import { StorageProviderConstructor } from '../types/StorageProviderConstructor'; /** * Simple key/value storage abstraction operating on top of the * given StorageProvider. Supports nested object paths in * get/set/remove using `.` like normal object accessors * @param {string} name Unique identifier for this storage, used by the given StorageProvider * @param {StorageProviderConstructor} provider The storage provider class that will be instantiated * and used as the backend for this storage abstraction */ export declare class KeyedStorage { private readonly _storage; constructor(name: string, provider: StorageProviderConstructor); /** * Initialize this storage. Any other method calls should not be made * until this method has been called and resolved * @returns {Promise} */ init(): Promise; /** * Get the names of all keys in this storage * @returns {Promise} */ keys(): Promise; /** * Get a value from this storage for the specified key * @param {string} key The key in storage to get * @returns {Promise} */ get(key: string): Promise; /** * Check if a value exists in storage * @param {string} key The key in storage to check * @returns {Promise} */ exists(key: string): Promise; /** * Set a value in this storage for the specified key * @param {string} key The key in storage to set * @param {any} value The value to set * @returns {Promise} */ set(key: string, value: any): Promise; /** * Remove a key/value pair from this storage * @param {string} key The key in storage to remove * @returns {Promise} */ remove(key: string): Promise; /** * Remove all key/value pairs from this storage * @returns {Promise} */ clear(): Promise; }