API > wxt/storage > WxtStorage
Interface: WxtStorage
Contents
Methods
defineItem()
defineItem(key)
defineItem<
TValue,TMetadata>(key):WxtStorageItem<null|TValue,TMetadata>
Define a storage item with a default value, type, or versioning.
Read full docs: https://wxt.dev/guide/extension-apis/storage.html#defining-storage-items
Type parameters
▪ TValue
▪ TMetadata extends Record<string, unknown> = object
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
Source
packages/wxt/src/storage.ts:569
defineItem(key, options)
defineItem<
TValue,TMetadata>(key,options):WxtStorageItem<TValue,TMetadata>
Type parameters
▪ TValue
▪ TMetadata extends Record<string, unknown> = object
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ options: WxtStorageItemOptions<TValue>
Source
packages/wxt/src/storage.ts:572
getItem()
getItem<
T>(key,opts?):Promise<null|T>
Get an item from storage, or return null if it doesn't exist.
Type parameters
▪ T
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ opts?: GetItemOptions<T>
Returns
Example
await storage.getItem<number>("local:installDate");Source
packages/wxt/src/storage.ts:464
getItems()
getItems(
keys):Promise<object[]>
Get multiple items from storage. The return order is guaranteed to be the same as the order requested.
Parameters
▪ keys: (`local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}` | object)[]
Returns
Example
await storage.getItems(["local:installDate", "session:someCounter"]);Source
packages/wxt/src/storage.ts:472
getMeta()
getMeta<
T>(key):Promise<T>
Return an object containing metadata about the key. Object is stored at key + "$". If value is not an object, it returns an empty object.
Type parameters
▪ T extends Record<string, unknown>
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
Returns
Example
await storage.getMeta("local:installDate");Source
packages/wxt/src/storage.ts:484
removeItem()
removeItem(
key,opts?):Promise<void>
Removes an item from storage.
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ opts?: RemoveItemOptions
Returns
Example
await storage.removeItem("local:installDate");Source
packages/wxt/src/storage.ts:520
removeItems()
removeItems(
keys):Promise<void>
Remove a list of keys from storage.
Parameters
▪ keys: (`local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}` | object)[]
Source
packages/wxt/src/storage.ts:524
removeMeta()
removeMeta(
key,properties?):Promise<void>
Remove the entire metadata for a key, or specific properties by name.
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ properties?: string | string[]
Returns
Example
// Remove all metadata properties from the item
await storage.removeMeta("local:installDate");
// Remove only specific the "v" field
await storage.removeMeta("local:installDate", "v")Source
packages/wxt/src/storage.ts:539
restoreSnapshot()
restoreSnapshot(
base,data):Promise<void>
Restores the results of snapshot. If new properties have been saved since the snapshot, they are not overridden. Only values existing in the snapshot are overridden.
Parameters
▪ base: StorageArea
▪ data: any
Source
packages/wxt/src/storage.ts:554
setItem()
setItem<
T>(key,value):Promise<void>
Set a value in storage. Setting a value to null or undefined is equivalent to calling removeItem.
Type parameters
▪ T
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ value: null | T
Returns
Example
await storage.setItem<number>("local:installDate", Date.now());Source
packages/wxt/src/storage.ts:492
setItems()
setItems(
values):Promise<void>
Set multiple values in storage. If a value is set to null or undefined, the key is removed.
Parameters
▪ values: object[]
Returns
Example
await storage.setItem([
{ key: "local:installDate", value: Date.now() },
{ key: "session:someCounter, value: 5 },
]);Source
packages/wxt/src/storage.ts:502
setMeta()
setMeta<
T>(key,properties):Promise<void>
Sets metadata properties. If some properties are already set, but are not included in the properties parameter, they will not be removed.
Type parameters
▪ T extends Record<string, unknown>
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ properties: null | T
Returns
Example
await storage.setMeta("local:installDate", { appVersion });Source
packages/wxt/src/storage.ts:510
snapshot()
snapshot(
base,opts?):Promise<Record<string,unknown>>
Return all the items in storage.
Parameters
▪ base: StorageArea
▪ opts?: SnapshotOptions
Source
packages/wxt/src/storage.ts:546
unwatch()
unwatch():
void
Remove all watch listeners.
Source
packages/wxt/src/storage.ts:562
watch()
watch<
T>(key,cb):Unwatch
Watch for changes to a specific key in storage.
Type parameters
▪ T
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ cb: WatchCallback<null | T>
Source
packages/wxt/src/storage.ts:558
Generated using typedoc-plugin-markdown and TypeDoc