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:578
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:581
getItem()
getItem(key, opts)
getItem<
TValue
>(key
,opts
):Promise
<TValue
>
Get an item from storage, or return null
if it doesn't exist.
Type parameters
▪ TValue
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ opts: GetItemOptions
<TValue
> & object
Returns
Example
await storage.getItem<number>("local:installDate");
Source
packages/wxt/src/storage.ts:464
getItem(key, opts)
getItem<
TValue
>(key
,opts
?):Promise
<null
|TValue
>
Type parameters
▪ TValue
Parameters
▪ key: `local:${string}` | `session:${string}` | `sync:${string}` | `managed:${string}`
▪ opts?: GetItemOptions
<TValue
>
Source
packages/wxt/src/storage.ts:469
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:481
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:493
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:529
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:533
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:548
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:563
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:501
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:511
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:519
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:555
unwatch()
unwatch():
void
Remove all watch listeners.
Source
packages/wxt/src/storage.ts:571
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:567
Generated using typedoc-plugin-markdown and TypeDoc