UNPKG

webext-storage

Version:

A more usable typed storage API for Web Extensions

22 lines (21 loc) 923 B
export type StorageItemOptions<T> = { area?: chrome.storage.AreaName; defaultValue?: T; }; export declare class StorageItem< /** Only specify this if you don't have a default value */ Base, /** The return type will be undefined unless you provide a default value */ Return = Base | undefined> { readonly key: string; readonly area: chrome.storage.AreaName; readonly defaultValue?: Return; /** @deprecated Use `onChanged` instead */ onChange: (callback: (value: Exclude<Return, undefined>) => void, signal?: AbortSignal) => void; constructor(key: string, { area, defaultValue, }?: StorageItemOptions<Exclude<Return, undefined>>); get: () => Promise<Return>; set: (value: Exclude<Return, undefined>) => Promise<void>; has: () => Promise<boolean>; remove: () => Promise<void>; onChanged(callback: (value: Exclude<Return, undefined>) => void, signal?: AbortSignal): void; }