import type { ITwinIdArg, PreferenceArg, PreferenceKeyArg, UserPreferencesAccess } from "@itwin/core-frontend"; /** Index signature holding preferences content * * @internal */ interface KeyContentProps { [preferenceKey: string]: any; } /** * @beta */ export interface PreferencesBrowserStorageOptions { /** indicate whether or not delete function should throw an error if the provided key cannot be found. */ throwOnDeleteMissingKey?: boolean; } /** User preferences implementation using browser's local storage. * It creates storage item key in the form of: * .. * * and being optional. * * Each entry in the storage is a serialized JSON of the following index signature: * { * ".": { * ... * * }, * ... * } * @beta */ export declare class PreferencesBrowserStorage implements UserPreferencesAccess { private readonly _options; private readonly _storageItemKeyPrefix; constructor(storageItemKeyPrefix: string, opts?: PreferencesBrowserStorageOptions); private getStorageItemKey; private static getPreferenceKey; get(arg: PreferenceKeyArg & ITwinIdArg): Promise; delete(arg: PreferenceKeyArg & ITwinIdArg): Promise; save(arg: PreferenceArg & ITwinIdArg): Promise; } export {}; //# sourceMappingURL=PreferencesBrowserStorage.d.ts.map