@tauri-apps/plugin-store
A lazy loaded key-value store persisted by the backend layer.
IStore
new LazyStore(path, options?): LazyStore
Note 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(): number
number
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