@tauri-apps/plugin-store
A lazy loaded key-value store persisted by the backend layer.
IStore
new LazyStore(path, options?): LazyStoreNote that the options are not applied if someone else already created the store
| Parameter | Type | Description |
|---|---|---|
path | string | Path to save the store in app_data_dir |
options? | StoreOptions | Store configuration options |
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L96
clear(): Promise<void>Clears the store, removing all key-value pairs.
Note: To clear the storage and reset it to its default value, use reset instead.
Promise<void>
IStore.clear
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L124
close(): Promise<void>Close the store and cleans up this resource from memory. You should not call any method on this object anymore and should drop any reference to it.
Promise<void>
IStore.close
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L169
delete(key): Promise<boolean>Removes a key-value pair from the store.
| Parameter | Type | Description |
|---|---|---|
key | string |
Promise<boolean>
IStore.delete
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L120
entries<T>(): Promise<[string, T][]>Returns a list of all entries in the store.
| Type Parameter |
|---|
T |
Promise<[string, T][]>
IStore.entries
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L140
get<T>(key): Promise<undefined | T>Returns the value for the given key or undefined if the key does not exist.
| Type Parameter |
|---|
T |
| Parameter | Type | Description |
|---|---|---|
key | string |
Promise<undefined | T>
IStore.get
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L112
has(key): Promise<boolean>Returns true if the given key exists in the store.
| Parameter | Type | Description |
|---|---|---|
key | string |
Promise<boolean>
IStore.has
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L116
init(): Promise<void>Init/load the store if it’s not loaded already
Promise<void>
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L104
keys(): Promise<string[]>Returns a list of all keys in the store.
Promise<string[]>
IStore.keys
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L132
length(): Promise<number>Returns the number of key-value pairs in the store.
Promise<number>
IStore.length
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L144
onChange<T>(cb): Promise<UnlistenFn>Listen to changes on the store.
| Type Parameter |
|---|
T |
| Parameter | Type | Description |
|---|---|---|
cb | (key, value) => void |
Promise<UnlistenFn>
A promise resolving to a function to unlisten to the event.
2.0.0
IStore.onChange
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L163
onKeyChange<T>(key, cb): Promise<UnlistenFn>Listen to changes on a store key.
| Type Parameter |
|---|
T |
| Parameter | Type | Description |
|---|---|---|
key | string | |
cb | (value) => void |
Promise<UnlistenFn>
A promise resolving to a function to unlisten to the event.
2.0.0
IStore.onKeyChange
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L156
reload(): Promise<void>Attempts to load the on-disk state at the store’s path into memory.
This method is useful if the on-disk state was edited by the user and you want to synchronize the changes.
Note: This method does not emit change events.
Promise<void>
IStore.reload
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L148
reset(): Promise<void>Resets the store to its default value.
If no default value has been set, this method behaves identical to clear.
Promise<void>
IStore.reset
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L128
save(): Promise<void>Saves the store to disk at the store’s path.
Promise<void>
IStore.save
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L152
set(key, value): Promise<void>Inserts a key-value pair into the store.
| Parameter | Type | Description |
|---|---|---|
key | string | |
value | unknown |
Promise<void>
IStore.set
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L108
values<T>(): Promise<T[]>Returns a list of all values in the store.
| Type Parameter |
|---|
T |
Promise<T[]>
IStore.values
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L136
A key-value store persisted by the backend layer.
Resource
IStore
get rid(): numbernumber
Resource.rid
Source: undefined
clear(): Promise<void>Clears the store, removing all key-value pairs.
Note: To clear the storage and reset it to its default value, use reset instead.
Promise<void>
IStore.clear
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L259
close(): Promise<void>Destroys and cleans up this resource from memory. You should not call any method on this object anymore and should drop any reference to it.
Promise<void>
IStore.close
Resource.close
Source: undefined
delete(key): Promise<boolean>Removes a key-value pair from the store.
| Parameter | Type | Description |
|---|---|---|
key | string |
Promise<boolean>
IStore.delete
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L252
entries<T>(): Promise<[string, T][]>Returns a list of all entries in the store.
| Type Parameter |
|---|
T |
Promise<[string, T][]>
IStore.entries
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L275
get<T>(key): Promise<undefined | T>Returns the value for the given key or undefined if the key does not exist.
| Type Parameter |
|---|
T |
| Parameter | Type | Description |
|---|---|---|
key | string |
Promise<undefined | T>
IStore.get
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L237
has(key): Promise<boolean>Returns true if the given key exists in the store.
| Parameter | Type | Description |
|---|---|---|
key | string |
Promise<boolean>
IStore.has
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L245
keys(): Promise<string[]>Returns a list of all keys in the store.
Promise<string[]>
IStore.keys
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L267
length(): Promise<number>Returns the number of key-value pairs in the store.
Promise<number>
IStore.length
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L279
onChange<T>(cb): Promise<UnlistenFn>Listen to changes on the store.
| Type Parameter |
|---|
T |
| Parameter | Type | Description |
|---|---|---|
cb | (key, value) => void |
Promise<UnlistenFn>
A promise resolving to a function to unlisten to the event.
2.0.0
IStore.onChange
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L302
onKeyChange<T>(key, cb): Promise<UnlistenFn>Listen to changes on a store key.
| Type Parameter |
|---|
T |
| Parameter | Type | Description |
|---|---|---|
key | string | |
cb | (value) => void |
Promise<UnlistenFn>
A promise resolving to a function to unlisten to the event.
2.0.0
IStore.onKeyChange
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L291
reload(): Promise<void>Attempts to load the on-disk state at the store’s path into memory.
This method is useful if the on-disk state was edited by the user and you want to synchronize the changes.
Note: This method does not emit change events.
Promise<void>
IStore.reload
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L283
reset(): Promise<void>Resets the store to its default value.
If no default value has been set, this method behaves identical to clear.
Promise<void>
IStore.reset
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L263
save(): Promise<void>Saves the store to disk at the store’s path.
Promise<void>
IStore.save
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L287
set(key, value): Promise<void>Inserts a key-value pair into the store.
| Parameter | Type | Description |
|---|---|---|
key | string | |
value | unknown |
Promise<void>
IStore.set
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L229
values<T>(): Promise<T[]>Returns a list of all values in the store.
| Type Parameter |
|---|
T |
Promise<T[]>
IStore.values
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L271
static get(path): Promise<null | Store>Gets an already loaded store.
If the store is not loaded, returns null. In this case you must load it.
This function is more useful when you already know the store is loaded and just need to access its instance. Prefer Store.load otherwise.
| Parameter | Type | Description |
|---|---|---|
path | string | Path of the store. |
import { Store } from '@tauri-apps/api/store';let store = await Store.get('store.json');if (!store) { store = await Store.load('store.json');}Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L223
static load(path, options?): Promise<Store>Create a new Store or load the existing store with the path.
| Parameter | Type | Description |
|---|---|---|
path | string | Path to save the store in app_data_dir |
options? | StoreOptions | Store configuration options |
import { Store } from '@tauri-apps/api/store';const store = await Store.load('store.json');Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L196
type StoreOptions: object;Options to create a store
| Name | Type | Description | Defined in |
|---|---|---|---|
autoSave | boolean | number | Auto save on modification with debounce duration in milliseconds, it’s 100ms by default, pass in false to disable it | Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L24 |
createNew | boolean | Force create a new store with default values even if it already exists. | Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L36 |
deserializeFnName | string | Name of a deserialize function registered in the rust side plugin builder | Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L32 |
serializeFnName | string | Name of a serialize function registered in the rust side plugin builder | Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L28 |
Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L20
function getStore(path): Promise<Store | null>Gets an already loaded store.
If the store is not loaded, returns null. In this case you must load it.
This function is more useful when you already know the store is loaded and just need to access its instance. Prefer Store.load otherwise.
| Parameter | Type | Description |
|---|---|---|
path | string | Path of the store. |
import { getStore } from '@tauri-apps/api/store';const store = await getStore('store.json');Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L74
function load(path, options?): Promise<Store>Create a new Store or load the existing store with the path.
| Parameter | Type | Description |
|---|---|---|
path | string | Path to save the store in app_data_dir |
options? | StoreOptions | Store configuration options |
import { Store } from '@tauri-apps/api/store';const store = await Store.load('store.json');Source: https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/store/guest-js/index.ts#L51
© 2025 Tauri Contributors. CC-BY / MIT