[API Documentation](../index.md) / [pinia](../modules/pinia.md) / MutationType
-# Enumeration: MutationType
+# Enumeration: MutationType %{#Enumeration:-MutationType}%
[pinia](../modules/pinia.md).MutationType
Possible types for SubscriptionCallback
-## Enumeration Members
+## Enumeration Members %{#Enumeration:-MutationType-Enumeration-Members}%
-### direct
+### direct %{#Enumeration:-MutationType-Enumeration-Members-direct}%
• **direct** = ``"direct"``
___
-### patchFunction
+### patchFunction %{#Enumeration:-MutationType-Enumeration-Members-patchFunction}%
• **patchFunction** = ``"patch function"``
___
-### patchObject
+### patchObject %{#Enumeration:-MutationType-Enumeration-Members-patchObject}%
• **patchObject** = ``"patch object"``
API Documentation
-# API Documentation
+# API Documentation %{#API-Documentation}%
-## Modules
+## Modules %{#API-Documentation-Modules}%
- [@pinia/nuxt](modules/pinia_nuxt.md)
- [@pinia/testing](modules/pinia_testing.md)
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / DefineSetupStoreOptions
-# Interface: DefineSetupStoreOptions<Id, S, G, A\>
+# Interface: DefineSetupStoreOptions<Id, S, G, A\> %{#Interface:-DefineSetupStoreOptions<Id,-S,-G,-A\>}%
[pinia](../modules/pinia.md).DefineSetupStoreOptions
[DefineStoreOptionsBase](pinia.DefineStoreOptionsBase.md).
-## Type parameters
+## Type parameters %{#Interface:-DefineSetupStoreOptions<Id,-S,-G,-A\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | `G` |
| `A` | `A` |
-## Hierarchy
+## Hierarchy %{#Interface:-DefineSetupStoreOptions<Id,-S,-G,-A\>-Hierarchy}%
- [`DefineStoreOptionsBase`](pinia.DefineStoreOptionsBase.md)<`S`, [`Store`](../modules/pinia.md#store)<`Id`, `S`, `G`, `A`\>\>
↳ **`DefineSetupStoreOptions`**
-## Properties
+## Properties %{#Interface:-DefineSetupStoreOptions<Id,-S,-G,-A\>-Properties}%
-### actions
+### actions %{#Interface:-DefineSetupStoreOptions<Id,-S,-G,-A\>-Properties-actions}%
• `Optional` **actions**: `A`
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / DefineStoreOptions
-# Interface: DefineStoreOptions<Id, S, G, A\>
+# Interface: DefineStoreOptions<Id, S, G, A\> %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>}%
[pinia](../modules/pinia.md).DefineStoreOptions
[DefineStoreOptionsBase](pinia.DefineStoreOptionsBase.md).
-## Type parameters
+## Type parameters %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | `G` |
| `A` | `A` |
-## Hierarchy
+## Hierarchy %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Hierarchy}%
- [`DefineStoreOptionsBase`](pinia.DefineStoreOptionsBase.md)<`S`, [`Store`](../modules/pinia.md#store)<`Id`, `S`, `G`, `A`\>\>
↳ **`DefineStoreOptions`**
-## Properties
+## Properties %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Properties}%
-### actions
+### actions %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Properties-actions}%
• `Optional` **actions**: `A` & `ThisType`<`A` & `UnwrapRef`<`S`\> & [`_StoreWithState`](pinia._StoreWithState.md)<`Id`, `S`, `G`, `A`\> & [`_StoreWithGetters`](../modules/pinia.md#_storewithgetters)<`G`\> & [`PiniaCustomProperties`](pinia.PiniaCustomProperties.md)<`string`, [`StateTree`](../modules/pinia.md#statetree), [`_GettersTree`](../modules/pinia.md#_getterstree)<[`StateTree`](../modules/pinia.md#statetree)\>, [`_ActionsTree`](../modules/pinia.md#_actionstree)\>\>
___
-### getters
+### getters %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Properties-getters}%
• `Optional` **getters**: `G` & `ThisType`<`UnwrapRef`<`S`\> & [`_StoreWithGetters`](../modules/pinia.md#_storewithgetters)<`G`\> & [`PiniaCustomProperties`](pinia.PiniaCustomProperties.md)<`string`, [`StateTree`](../modules/pinia.md#statetree), [`_GettersTree`](../modules/pinia.md#_getterstree)<[`StateTree`](../modules/pinia.md#statetree)\>, [`_ActionsTree`](../modules/pinia.md#_actionstree)\>\> & [`_GettersTree`](../modules/pinia.md#_getterstree)<`S`\>
___
-### id
+### id %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Properties-id}%
• **id**: `Id`
___
-### state
+### state %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Properties-state}%
• `Optional` **state**: () => `S`
-#### Type declaration
+#### Type declaration %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Properties-state-Type-declaration}%
▸ (): `S`
Function to create a fresh state. **Must be an arrow function** to ensure
correct typings!
-##### Returns
+##### Returns %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Properties-state-Type-declaration-Returns}%
`S`
-## Methods
+## Methods %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Methods}%
-### hydrate
+### hydrate %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Methods-hydrate}%
▸ `Optional` **hydrate**(`storeState`, `initialState`): `void`
})
```
-#### Parameters
+#### Parameters %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Methods-hydrate-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `storeState` | `UnwrapRef`<`S`\> | the current state in the store |
| `initialState` | `UnwrapRef`<`S`\> | initialState |
-#### Returns
+#### Returns %{#Interface:-DefineStoreOptions<Id,-S,-G,-A\>-Methods-hydrate-Returns}%
`void`
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / DefineStoreOptionsBase
-# Interface: DefineStoreOptionsBase<S, Store\>
+# Interface: DefineStoreOptionsBase<S, Store\> %{#Interface:-DefineStoreOptionsBase<S,-Store\>}%
[pinia](../modules/pinia.md).DefineStoreOptionsBase
stores. Extend this interface if you want to add custom options to both kinds
of stores.
-## Type parameters
+## Type parameters %{#Interface:-DefineStoreOptionsBase<S,-Store\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `S` | extends [`StateTree`](../modules/pinia.md#statetree) |
| `Store` | `Store` |
-## Hierarchy
+## Hierarchy %{#Interface:-DefineStoreOptionsBase<S,-Store\>-Hierarchy}%
- **`DefineStoreOptionsBase`**
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / DefineStoreOptionsInPlugin
-# Interface: DefineStoreOptionsInPlugin<Id, S, G, A\>
+# Interface: DefineStoreOptionsInPlugin<Id, S, G, A\> %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>}%
[pinia](../modules/pinia.md).DefineStoreOptionsInPlugin
Available `options` when creating a pinia plugin.
-## Type parameters
+## Type parameters %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | `G` |
| `A` | `A` |
-## Hierarchy
+## Hierarchy %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Hierarchy}%
- `Omit`<[`DefineStoreOptions`](pinia.DefineStoreOptions.md)<`Id`, `S`, `G`, `A`\>, ``"id"`` \| ``"actions"``\>
↳ **`DefineStoreOptionsInPlugin`**
-## Properties
+## Properties %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Properties}%
-### actions
+### actions %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Properties-actions}%
• **actions**: `A`
___
-### getters
+### getters %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Properties-getters}%
• `Optional` **getters**: `G` & `ThisType`<`UnwrapRef`<`S`\> & [`_StoreWithGetters`](../modules/pinia.md#_storewithgetters)<`G`\> & [`PiniaCustomProperties`](pinia.PiniaCustomProperties.md)<`string`, [`StateTree`](../modules/pinia.md#statetree), [`_GettersTree`](../modules/pinia.md#_getterstree)<[`StateTree`](../modules/pinia.md#statetree)\>, [`_ActionsTree`](../modules/pinia.md#_actionstree)\>\> & [`_GettersTree`](../modules/pinia.md#_getterstree)<`S`\>
Optional object of getters.
-#### Inherited from
+#### Inherited from %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Properties-getters-Inherited-from}%
Omit.getters
___
-### state
+### state %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Properties-state}%
• `Optional` **state**: () => `S`
-#### Type declaration
+#### Type declaration %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Properties-state-Type-declaration}%
▸ (): `S`
Function to create a fresh state. **Must be an arrow function** to ensure
correct typings!
-##### Returns
+##### Returns %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Properties-state-Type-declaration-Returns}%
`S`
-#### Inherited from
+#### Inherited from %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Properties-state-Inherited-from}%
Omit.state
-## Methods
+## Methods %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Methods}%
-### hydrate
+### hydrate %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Methods-hydrate}%
▸ `Optional` **hydrate**(`storeState`, `initialState`): `void`
})
```
-#### Parameters
+#### Parameters %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Methods-hydrate-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `storeState` | `UnwrapRef`<`S`\> | the current state in the store |
| `initialState` | `UnwrapRef`<`S`\> | initialState |
-#### Returns
+#### Returns %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Methods-hydrate-Returns}%
`void`
-#### Inherited from
+#### Inherited from %{#Interface:-DefineStoreOptionsInPlugin<Id,-S,-G,-A\>-Methods-hydrate-Inherited-from}%
Omit.hydrate
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / MapStoresCustomization
-# Interface: MapStoresCustomization
+# Interface: MapStoresCustomization %{#Interface:-MapStoresCustomization}%
[pinia](../modules/pinia.md).MapStoresCustomization
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / Pinia
-# Interface: Pinia
+# Interface: Pinia %{#Interface:-Pinia}%
[pinia](../modules/pinia.md).Pinia
Every application must own its own pinia to be able to create stores
-## Hierarchy
+## Hierarchy %{#Interface:-Pinia-Hierarchy}%
- **`Pinia`**
↳ [`TestingPinia`](pinia_testing.TestingPinia.md)
-## Properties
+## Properties %{#Interface:-Pinia-Properties}%
-### install
+### install %{#Interface:-Pinia-Properties-install}%
• **install**: (`app`: `App`<`any`\>) => `void`
-#### Type declaration
+#### Type declaration %{#Interface:-Pinia-Properties-install-Type-declaration}%
▸ (`app`): `void`
-##### Parameters
+##### Parameters %{#Interface:-Pinia-Properties-install-Type-declaration-Parameters}%
| Name | Type |
| :------ | :------ |
| `app` | `App`<`any`\> |
-##### Returns
+##### Returns %{#Interface:-Pinia-Properties-install-Type-declaration-Returns}%
`void`
___
-### state
+### state %{#Interface:-Pinia-Properties-state}%
• **state**: `Ref`<`Record`<`string`, [`StateTree`](../modules/pinia.md#statetree)\>\>
root state
-## Methods
+## Methods %{#Interface:-Pinia-Methods}%
-### use
+### use %{#Interface:-Pinia-Methods-use}%
▸ **use**(`plugin`): [`Pinia`](pinia.Pinia.md)
Adds a store plugin to extend every store
-#### Parameters
+#### Parameters %{#Interface:-Pinia-Methods-use-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `plugin` | [`PiniaPlugin`](pinia.PiniaPlugin.md) | store plugin to add |
-#### Returns
+#### Returns %{#Interface:-Pinia-Methods-use-Returns}%
[`Pinia`](pinia.Pinia.md)
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / PiniaCustomProperties
-# Interface: PiniaCustomProperties<Id, S, G, A\>
+# Interface: PiniaCustomProperties<Id, S, G, A\> %{#Interface:-PiniaCustomProperties<Id,-S,-G,-A\>}%
[pinia](../modules/pinia.md).PiniaCustomProperties
Interface to be extended by the user when they add properties through plugins.
-## Type parameters
+## Type parameters %{#Interface:-PiniaCustomProperties<Id,-S,-G,-A\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | [`_GettersTree`](../modules/pinia.md#_getterstree)<`S`\> |
| `A` | [`_ActionsTree`](../modules/pinia.md#_actionstree) |
-## Accessors
+## Accessors %{#Interface:-PiniaCustomProperties<Id,-S,-G,-A\>-Accessors}%
-### route
+### route %{#Interface:-PiniaCustomProperties<Id,-S,-G,-A\>-Accessors-route}%
• `get` **route**(): `RouteLocationNormalized`
-#### Returns
+#### Returns %{#Interface:-PiniaCustomProperties<Id,-S,-G,-A\>-Accessors-route-Returns}%
`RouteLocationNormalized`
• `set` **route**(`value`): `void`
-#### Parameters
+#### Parameters %{#Interface:-PiniaCustomProperties<Id,-S,-G,-A\>-Accessors-route-Parameters}%
| Name | Type |
| :------ | :------ |
| `value` | `RouteLocationNormalizedLoaded` \| `Ref`<`RouteLocationNormalizedLoaded`\> |
-#### Returns
+#### Returns %{#Interface:-PiniaCustomProperties<Id,-S,-G,-A\>-Accessors-route-Returns_1}%
`void`
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / PiniaCustomStateProperties
-# Interface: PiniaCustomStateProperties<S\>
+# Interface: PiniaCustomStateProperties<S\> %{#Interface:-PiniaCustomStateProperties<S\>}%
[pinia](../modules/pinia.md).PiniaCustomStateProperties
Properties that are added to every `store.$state` by `pinia.use()`.
-## Type parameters
+## Type parameters %{#Interface:-PiniaCustomStateProperties<S\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / PiniaPlugin
-# Interface: PiniaPlugin
+# Interface: PiniaPlugin %{#Interface:-PiniaPlugin}%
[pinia](../modules/pinia.md).PiniaPlugin
-## Callable
+## Callable %{#Interface:-PiniaPlugin-Callable}%
-### PiniaPlugin
+### PiniaPlugin %{#Interface:-PiniaPlugin-Callable-PiniaPlugin}%
▸ **PiniaPlugin**(`context`): `void` \| `Partial`<[`PiniaCustomProperties`](pinia.PiniaCustomProperties.md)<`string`, [`StateTree`](../modules/pinia.md#statetree), [`_GettersTree`](../modules/pinia.md#_getterstree)<[`StateTree`](../modules/pinia.md#statetree)\>, [`_ActionsTree`](../modules/pinia.md#_actionstree)\> & [`PiniaCustomStateProperties`](pinia.PiniaCustomStateProperties.md)<[`StateTree`](../modules/pinia.md#statetree)\>\>
Plugin to extend every store. Returns an object to extend the store or
nothing.
-#### Parameters
+#### Parameters %{#Interface:-PiniaPlugin-Callable-PiniaPlugin-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `context` | [`PiniaPluginContext`](pinia.PiniaPluginContext.md)<`string`, [`StateTree`](../modules/pinia.md#statetree), [`_GettersTree`](../modules/pinia.md#_getterstree)<[`StateTree`](../modules/pinia.md#statetree)\>, [`_ActionsTree`](../modules/pinia.md#_actionstree)\> | Context |
-#### Returns
+#### Returns %{#Interface:-PiniaPlugin-Callable-PiniaPlugin-Returns}%
`void` \| `Partial`<[`PiniaCustomProperties`](pinia.PiniaCustomProperties.md)<`string`, [`StateTree`](../modules/pinia.md#statetree), [`_GettersTree`](../modules/pinia.md#_getterstree)<[`StateTree`](../modules/pinia.md#statetree)\>, [`_ActionsTree`](../modules/pinia.md#_actionstree)\> & [`PiniaCustomStateProperties`](pinia.PiniaCustomStateProperties.md)<[`StateTree`](../modules/pinia.md#statetree)\>\>
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / PiniaPluginContext
-# Interface: PiniaPluginContext<Id, S, G, A\>
+# Interface: PiniaPluginContext<Id, S, G, A\> %{#Interface:-PiniaPluginContext<Id,-S,-G,-A\>}%
[pinia](../modules/pinia.md).PiniaPluginContext
Context argument passed to Pinia plugins.
-## Type parameters
+## Type parameters %{#Interface:-PiniaPluginContext<Id,-S,-G,-A\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | [`_GettersTree`](../modules/pinia.md#_getterstree)<`S`\> |
| `A` | [`_ActionsTree`](../modules/pinia.md#_actionstree) |
-## Properties
+## Properties %{#Interface:-PiniaPluginContext<Id,-S,-G,-A\>-Properties}%
-### app
+### app %{#Interface:-PiniaPluginContext<Id,-S,-G,-A\>-Properties-app}%
• **app**: `App`<`any`\>
___
-### options
+### options %{#Interface:-PiniaPluginContext<Id,-S,-G,-A\>-Properties-options}%
• **options**: [`DefineStoreOptionsInPlugin`](pinia.DefineStoreOptionsInPlugin.md)<`Id`, `S`, `G`, `A`\>
___
-### pinia
+### pinia %{#Interface:-PiniaPluginContext<Id,-S,-G,-A\>-Properties-pinia}%
• **pinia**: [`Pinia`](pinia.Pinia.md)
___
-### store
+### store %{#Interface:-PiniaPluginContext<Id,-S,-G,-A\>-Properties-store}%
• **store**: [`Store`](../modules/pinia.md#store)<`Id`, `S`, `G`, `A`\>
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / StoreDefinition
-# Interface: StoreDefinition<Id, S, G, A\>
+# Interface: StoreDefinition<Id, S, G, A\> %{#Interface:-StoreDefinition<Id,-S,-G,-A\>}%
[pinia](../modules/pinia.md).StoreDefinition
-## Type parameters
+## Type parameters %{#Interface:-StoreDefinition<Id,-S,-G,-A\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | [`_GettersTree`](../modules/pinia.md#_getterstree)<`S`\> |
| `A` | [`_ActionsTree`](../modules/pinia.md#_actionstree) |
-## Callable
+## Callable %{#Interface:-StoreDefinition<Id,-S,-G,-A\>-Callable}%
-### StoreDefinition
+### StoreDefinition %{#Interface:-StoreDefinition<Id,-S,-G,-A\>-Callable-StoreDefinition}%
▸ **StoreDefinition**(`pinia?`, `hot?`): [`Store`](../modules/pinia.md#store)<`Id`, `S`, `G`, `A`\>
Returns a store, creates it if necessary.
-#### Parameters
+#### Parameters %{#Interface:-StoreDefinition<Id,-S,-G,-A\>-Callable-StoreDefinition-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `pinia?` | ``null`` \| [`Pinia`](pinia.Pinia.md) | Pinia instance to retrieve the store |
| `hot?` | [`StoreGeneric`](../modules/pinia.md#storegeneric) | dev only hot module replacement |
-#### Returns
+#### Returns %{#Interface:-StoreDefinition<Id,-S,-G,-A\>-Callable-StoreDefinition-Returns}%
[`Store`](../modules/pinia.md#store)<`Id`, `S`, `G`, `A`\>
-## Properties
+## Properties %{#Interface:-StoreDefinition<Id,-S,-G,-A\>-Properties}%
-### $id
+### $id %{#Interface:-StoreDefinition<Id,-S,-G,-A\>-Properties-$id}%
• **$id**: `Id`
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / StoreProperties
-# Interface: StoreProperties<Id\>
+# Interface: StoreProperties<Id\> %{#Interface:-StoreProperties<Id\>}%
[pinia](../modules/pinia.md).StoreProperties
Properties of a store.
-## Type parameters
+## Type parameters %{#Interface:-StoreProperties<Id\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `Id` | extends `string` |
-## Hierarchy
+## Hierarchy %{#Interface:-StoreProperties<Id\>-Hierarchy}%
- **`StoreProperties`**
↳ [`_StoreWithState`](pinia._StoreWithState.md)
-## Properties
+## Properties %{#Interface:-StoreProperties<Id\>-Properties}%
-### $id
+### $id %{#Interface:-StoreProperties<Id\>-Properties-$id}%
• **$id**: `Id`
___
-### \_customProperties
+### \_customProperties %{#Interface:-StoreProperties<Id\>-Properties-\_customProperties}%
• **\_customProperties**: `Set`<`string`\>
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / SubscriptionCallbackMutationDirect
-# Interface: SubscriptionCallbackMutationDirect
+# Interface: SubscriptionCallbackMutationDirect %{#Interface:-SubscriptionCallbackMutationDirect}%
[pinia](../modules/pinia.md).SubscriptionCallbackMutationDirect
a store with `store.someState = newValue` or `store.$state.someState =
newValue`.
-## Hierarchy
+## Hierarchy %{#Interface:-SubscriptionCallbackMutationDirect-Hierarchy}%
- [`_SubscriptionCallbackMutationBase`](pinia._SubscriptionCallbackMutationBase.md)
↳ **`SubscriptionCallbackMutationDirect`**
-## Properties
+## Properties %{#Interface:-SubscriptionCallbackMutationDirect-Properties}%
-### events
+### events %{#Interface:-SubscriptionCallbackMutationDirect-Properties-events}%
• **events**: `DebuggerEvent`
https://vuejs.org/guide/extras/reactivity-in-depth.html#reactivity-debugging and allows to track mutations in
devtools and plugins **during development only**.
-#### Overrides
+#### Overrides %{#Interface:-SubscriptionCallbackMutationDirect-Properties-events-Overrides}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[events](pinia._SubscriptionCallbackMutationBase.md#events)
___
-### storeId
+### storeId %{#Interface:-SubscriptionCallbackMutationDirect-Properties-storeId}%
• **storeId**: `string`
`id` of the store doing the mutation.
-#### Inherited from
+#### Inherited from %{#Interface:-SubscriptionCallbackMutationDirect-Properties-storeId-Inherited-from}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[storeId](pinia._SubscriptionCallbackMutationBase.md#storeid)
___
-### type
+### type %{#Interface:-SubscriptionCallbackMutationDirect-Properties-type}%
• **type**: [`direct`](../enums/pinia.MutationType.md#direct)
Type of the mutation.
-#### Overrides
+#### Overrides %{#Interface:-SubscriptionCallbackMutationDirect-Properties-type-Overrides}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[type](pinia._SubscriptionCallbackMutationBase.md#type)
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / SubscriptionCallbackMutationPatchFunction
-# Interface: SubscriptionCallbackMutationPatchFunction
+# Interface: SubscriptionCallbackMutationPatchFunction %{#Interface:-SubscriptionCallbackMutationPatchFunction}%
[pinia](../modules/pinia.md).SubscriptionCallbackMutationPatchFunction
Context passed to a subscription callback when `store.$patch()` is called
with a function.
-## Hierarchy
+## Hierarchy %{#Interface:-SubscriptionCallbackMutationPatchFunction-Hierarchy}%
- [`_SubscriptionCallbackMutationBase`](pinia._SubscriptionCallbackMutationBase.md)
↳ **`SubscriptionCallbackMutationPatchFunction`**
-## Properties
+## Properties %{#Interface:-SubscriptionCallbackMutationPatchFunction-Properties}%
-### events
+### events %{#Interface:-SubscriptionCallbackMutationPatchFunction-Properties-events}%
• **events**: `DebuggerEvent`[]
https://vuejs.org/guide/extras/reactivity-in-depth.html#reactivity-debugging and allows to track mutations in
devtools and plugins **during development only**.
-#### Overrides
+#### Overrides %{#Interface:-SubscriptionCallbackMutationPatchFunction-Properties-events-Overrides}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[events](pinia._SubscriptionCallbackMutationBase.md#events)
___
-### storeId
+### storeId %{#Interface:-SubscriptionCallbackMutationPatchFunction-Properties-storeId}%
• **storeId**: `string`
`id` of the store doing the mutation.
-#### Inherited from
+#### Inherited from %{#Interface:-SubscriptionCallbackMutationPatchFunction-Properties-storeId-Inherited-from}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[storeId](pinia._SubscriptionCallbackMutationBase.md#storeid)
___
-### type
+### type %{#Interface:-SubscriptionCallbackMutationPatchFunction-Properties-type}%
• **type**: [`patchFunction`](../enums/pinia.MutationType.md#patchfunction)
Type of the mutation.
-#### Overrides
+#### Overrides %{#Interface:-SubscriptionCallbackMutationPatchFunction-Properties-type-Overrides}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[type](pinia._SubscriptionCallbackMutationBase.md#type)
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / SubscriptionCallbackMutationPatchObject
-# Interface: SubscriptionCallbackMutationPatchObject<S\>
+# Interface: SubscriptionCallbackMutationPatchObject<S\> %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>}%
[pinia](../modules/pinia.md).SubscriptionCallbackMutationPatchObject
Context passed to a subscription callback when `store.$patch()` is called
with an object.
-## Type parameters
+## Type parameters %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Type-parameters}%
| Name |
| :------ |
| `S` |
-## Hierarchy
+## Hierarchy %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Hierarchy}%
- [`_SubscriptionCallbackMutationBase`](pinia._SubscriptionCallbackMutationBase.md)
↳ **`SubscriptionCallbackMutationPatchObject`**
-## Properties
+## Properties %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Properties}%
-### events
+### events %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Properties-events}%
• **events**: `DebuggerEvent`[]
https://vuejs.org/guide/extras/reactivity-in-depth.html#reactivity-debugging and allows to track mutations in
devtools and plugins **during development only**.
-#### Overrides
+#### Overrides %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Properties-events-Overrides}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[events](pinia._SubscriptionCallbackMutationBase.md#events)
___
-### payload
+### payload %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Properties-payload}%
• **payload**: [`_DeepPartial`](../modules/pinia.md#_deeppartial)<`S`\>
___
-### storeId
+### storeId %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Properties-storeId}%
• **storeId**: `string`
`id` of the store doing the mutation.
-#### Inherited from
+#### Inherited from %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Properties-storeId-Inherited-from}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[storeId](pinia._SubscriptionCallbackMutationBase.md#storeid)
___
-### type
+### type %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Properties-type}%
• **type**: [`patchObject`](../enums/pinia.MutationType.md#patchobject)
Type of the mutation.
-#### Overrides
+#### Overrides %{#Interface:-SubscriptionCallbackMutationPatchObject<S\>-Properties-type-Overrides}%
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[type](pinia._SubscriptionCallbackMutationBase.md#type)
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / \_StoreOnActionListenerContext
-# Interface: \_StoreOnActionListenerContext<Store, ActionName, A\>
+# Interface: \_StoreOnActionListenerContext<Store, ActionName, A\> %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>}%
[pinia](../modules/pinia.md)._StoreOnActionListenerContext
purposes. For internal use only.
For internal use **only**
-## Type parameters
+## Type parameters %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `ActionName` | extends `string` |
| `A` | `A` |
-## Properties
+## Properties %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties}%
-### after
+### after %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-after}%
• **after**: (`callback`: `A` extends `Record`<`ActionName`, [`_Method`](../modules/pinia.md#_method)\> ? (`resolvedReturn`: [`_Awaited`](../modules/pinia.md#_awaited)<`ReturnType`<`A`[`ActionName`]\>\>) => `void` : () => `void`) => `void`
-#### Type declaration
+#### Type declaration %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-after-Type-declaration}%
▸ (`callback`): `void`
Sets up a hook once the action is finished. It receives the return value
of the action, if it's a Promise, it will be unwrapped.
-##### Parameters
+##### Parameters %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-after-Type-declaration-Parameters}%
| Name | Type |
| :------ | :------ |
| `callback` | `A` extends `Record`<`ActionName`, [`_Method`](../modules/pinia.md#_method)\> ? (`resolvedReturn`: [`_Awaited`](../modules/pinia.md#_awaited)<`ReturnType`<`A`[`ActionName`]\>\>) => `void` : () => `void` |
-##### Returns
+##### Returns %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-after-Type-declaration-Returns}%
`void`
___
-### args
+### args %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-args}%
• **args**: `A` extends `Record`<`ActionName`, [`_Method`](../modules/pinia.md#_method)\> ? `Parameters`<`A`[`ActionName`]\> : `unknown`[]
___
-### name
+### name %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-name}%
• **name**: `ActionName`
___
-### onError
+### onError %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-onError}%
• **onError**: (`callback`: (`error`: `unknown`) => `void`) => `void`
-#### Type declaration
+#### Type declaration %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-onError-Type-declaration}%
▸ (`callback`): `void`
Sets up a hook if the action fails. Return `false` to catch the error and
stop it from propagating.
-##### Parameters
+##### Parameters %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-onError-Type-declaration-Parameters}%
| Name | Type |
| :------ | :------ |
| `callback` | (`error`: `unknown`) => `void` |
-##### Returns
+##### Returns %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-onError-Type-declaration-Returns}%
`void`
___
-### store
+### store %{#Interface:-\_StoreOnActionListenerContext<Store,-ActionName,-A\>-Properties-store}%
• **store**: `Store`
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / \_StoreWithState
-# Interface: \_StoreWithState<Id, S, G, A\>
+# Interface: \_StoreWithState<Id, S, G, A\> %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>}%
[pinia](../modules/pinia.md)._StoreWithState
Base store with state and functions. Should not be used directly.
-## Type parameters
+## Type parameters %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | `G` |
| `A` | `A` |
-## Hierarchy
+## Hierarchy %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Hierarchy}%
- [`StoreProperties`](pinia.StoreProperties.md)<`Id`\>
↳ **`_StoreWithState`**
-## Properties
+## Properties %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Properties}%
-### $id
+### $id %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Properties-$id}%
• **$id**: `Id`
Unique identifier of the store
-#### Inherited from
+#### Inherited from %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Properties-$id-Inherited-from}%
[StoreProperties](pinia.StoreProperties.md).[$id](pinia.StoreProperties.md#$id)
___
-### $state
+### $state %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Properties-$state}%
• **$state**: `UnwrapRef`<`S`\> & [`PiniaCustomStateProperties`](pinia.PiniaCustomStateProperties.md)<`S`\>
___
-### \_customProperties
+### \_customProperties %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Properties-\_customProperties}%
• **\_customProperties**: `Set`<`string`\>
in production. Can be used by the user to add property keys of the store
that should be displayed in devtools.
-#### Inherited from
+#### Inherited from %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Properties-\_customProperties-Inherited-from}%
[StoreProperties](pinia.StoreProperties.md).[_customProperties](pinia.StoreProperties.md#_customproperties)
-## Methods
+## Methods %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods}%
-### $dispose
+### $dispose %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$dispose}%
▸ **$dispose**(): `void`
Stops the associated effect scope of the store and remove it from the store
registry. Plugins can override this method to cleanup any added effects.
e.g. devtools plugin stops displaying disposed stores from devtools.
+Note this doesn't delete the state of the store, you have to do it manually with
+`delete pinia.state.value[store.$id]` if you want to. If you don't and the
+store is used again, it will reuse the previous state.
-#### Returns
+#### Returns %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$dispose-Returns}%
`void`
___
-### $onAction
+### $onAction %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$onAction}%
▸ **$onAction**(`callback`, `detached?`): () => `void`
})
```
-#### Parameters
+#### Parameters %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$onAction-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `callback` | [`StoreOnActionListener`](../modules/pinia.md#storeonactionlistener)<`Id`, `S`, `G`, `A`\> | callback called before every action |
| `detached?` | `boolean` | detach the subscription from the context this is called from |
-#### Returns
+#### Returns %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$onAction-Returns}%
`fn`
})
```
-##### Returns
+##### Returns %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$onAction-Returns-Returns}%
`void`
___
-### $patch
+### $patch %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$patch}%
▸ **$patch**(`partialState`): `void`
Applies a state patch to current state. Allows passing nested values
-#### Parameters
+#### Parameters %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$patch-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `partialState` | [`_DeepPartial`](../modules/pinia.md#_deeppartial)<`UnwrapRef`<`S`\>\> | patch to apply to the state |
-#### Returns
+#### Returns %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$patch-Returns}%
`void`
Sets or arrays and applying an object patch isn't practical, e.g. appending
to an array. The function passed to `$patch()` **must be synchronous**.
-#### Type parameters
+#### Type parameters %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$patch-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `F` | extends (`state`: `UnwrapRef`<`S`\>) => `any` |
-#### Parameters
+#### Parameters %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$patch-Parameters_1}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `stateMutator` | `ReturnType`<`F`\> extends `Promise`<`any`\> ? `never` : `F` | function that mutates `state`, cannot be async |
-#### Returns
+#### Returns %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$patch-Returns_1}%
`void`
___
-### $reset
+### $reset %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$reset}%
▸ **$reset**(): `void`
Resets the store to its initial state by building a new state object.
TODO: make this options only
-#### Returns
+#### Returns %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$reset-Returns}%
`void`
___
-### $subscribe
+### $subscribe %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$subscribe}%
▸ **$subscribe**(`callback`, `options?`): () => `void`
that when calling `store.$subscribe()` inside of a component, it will be automatically cleaned up when the
component gets unmounted unless `detached` is set to true.
-#### Parameters
+#### Parameters %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$subscribe-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `callback` | [`SubscriptionCallback`](../modules/pinia.md#subscriptioncallback)<`S`\> | callback passed to the watcher |
| `options?` | { `detached?`: `boolean` } & `WatchOptions`<`boolean`\> | `watch` options + `detached` to detach the subscription from the context (usually a component) this is called from. Note that the `flush` option does not affect calls to `store.$patch()`. |
-#### Returns
+#### Returns %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$subscribe-Returns}%
`fn`
that when calling `store.$subscribe()` inside of a component, it will be automatically cleaned up when the
component gets unmounted unless `detached` is set to true.
-##### Returns
+##### Returns %{#Interface:-\_StoreWithState<Id,-S,-G,-A\>-Methods-$subscribe-Returns-Returns}%
`void`
[API Documentation](../index.md) / [pinia](../modules/pinia.md) / \_SubscriptionCallbackMutationBase
-# Interface: \_SubscriptionCallbackMutationBase
+# Interface: \_SubscriptionCallbackMutationBase %{#Interface:-\_SubscriptionCallbackMutationBase}%
[pinia](../modules/pinia.md)._SubscriptionCallbackMutationBase
Base type for the context passed to a subscription callback. Internal type.
-## Hierarchy
+## Hierarchy %{#Interface:-\_SubscriptionCallbackMutationBase-Hierarchy}%
- **`_SubscriptionCallbackMutationBase`**
↳ [`SubscriptionCallbackMutationPatchObject`](pinia.SubscriptionCallbackMutationPatchObject.md)
-## Properties
+## Properties %{#Interface:-\_SubscriptionCallbackMutationBase-Properties}%
-### events
+### events %{#Interface:-\_SubscriptionCallbackMutationBase-Properties-events}%
• `Optional` **events**: `DebuggerEvent` \| `DebuggerEvent`[]
___
-### storeId
+### storeId %{#Interface:-\_SubscriptionCallbackMutationBase-Properties-storeId}%
• **storeId**: `string`
___
-### type
+### type %{#Interface:-\_SubscriptionCallbackMutationBase-Properties-type}%
• **type**: [`MutationType`](../enums/pinia.MutationType.md)
[API Documentation](../index.md) / [@pinia/nuxt](../modules/pinia_nuxt.md) / ModuleOptions
-# Interface: ModuleOptions
+# Interface: ModuleOptions %{#Interface:-ModuleOptions}%
[@pinia/nuxt](../modules/pinia_nuxt.md).ModuleOptions
-## Properties
+## Properties %{#Interface:-ModuleOptions-Properties}%
-### autoImports
+### autoImports %{#Interface:-ModuleOptions-Properties-autoImports}%
• `Optional` **autoImports**: (`string` \| [`string`, `string`])[]
___
-### disableVuex
+### disableVuex %{#Interface:-ModuleOptions-Properties-disableVuex}%
• `Optional` **disableVuex**: `boolean`
[API Documentation](../index.md) / [@pinia/testing](../modules/pinia_testing.md) / TestingOptions
-# Interface: TestingOptions
+# Interface: TestingOptions %{#Interface:-TestingOptions}%
[@pinia/testing](../modules/pinia_testing.md).TestingOptions
-## Properties
+## Properties %{#Interface:-TestingOptions-Properties}%
-### createSpy
+### createSpy %{#Interface:-TestingOptions-Properties-createSpy}%
• `Optional` **createSpy**: (`fn?`: (...`args`: `any`[]) => `any`) => (...`args`: `any`[]) => `any`
-#### Type declaration
+#### Type declaration %{#Interface:-TestingOptions-Properties-createSpy-Type-declaration}%
▸ (`fn?`): (...`args`: `any`[]) => `any`
Function used to create a spy for actions and `$patch()`. Pre-configured
with `jest.fn()` in jest projects or `vi.fn()` in vitest projects.
-##### Parameters
+##### Parameters %{#Interface:-TestingOptions-Properties-createSpy-Type-declaration-Parameters}%
| Name | Type |
| :------ | :------ |
| `fn?` | (...`args`: `any`[]) => `any` |
-##### Returns
+##### Returns %{#Interface:-TestingOptions-Properties-createSpy-Type-declaration-Returns}%
`fn`
▸ (...`args`): `any`
-##### Parameters
+##### Parameters %{#Interface:-TestingOptions-Properties-createSpy-Type-declaration-Parameters_1}%
| Name | Type |
| :------ | :------ |
| `...args` | `any`[] |
-##### Returns
+##### Returns %{#Interface:-TestingOptions-Properties-createSpy-Type-declaration-Returns_1}%
`any`
___
-### fakeApp
+### fakeApp %{#Interface:-TestingOptions-Properties-fakeApp}%
• `Optional` **fakeApp**: `boolean`
___
-### initialState
+### initialState %{#Interface:-TestingOptions-Properties-initialState}%
• `Optional` **initialState**: [`StateTree`](../modules/pinia.md#statetree)
___
-### plugins
+### plugins %{#Interface:-TestingOptions-Properties-plugins}%
• `Optional` **plugins**: [`PiniaPlugin`](pinia.PiniaPlugin.md)[]
___
-### stubActions
+### stubActions %{#Interface:-TestingOptions-Properties-stubActions}%
• `Optional` **stubActions**: `boolean`
___
-### stubPatch
+### stubPatch %{#Interface:-TestingOptions-Properties-stubPatch}%
• `Optional` **stubPatch**: `boolean`
[API Documentation](../index.md) / [@pinia/testing](../modules/pinia_testing.md) / TestingPinia
-# Interface: TestingPinia
+# Interface: TestingPinia %{#Interface:-TestingPinia}%
[@pinia/testing](../modules/pinia_testing.md).TestingPinia
Pinia instance specifically designed for testing. Extends a regular
`Pinia` instance with test specific properties.
-## Hierarchy
+## Hierarchy %{#Interface:-TestingPinia-Hierarchy}%
- [`Pinia`](pinia.Pinia.md)
↳ **`TestingPinia`**
-## Properties
+## Properties %{#Interface:-TestingPinia-Properties}%
-### app
+### app %{#Interface:-TestingPinia-Properties-app}%
• **app**: `App`<`any`\>
___
-### install
+### install %{#Interface:-TestingPinia-Properties-install}%
• **install**: (`app`: `App`<`any`\>) => `void`
-#### Type declaration
+#### Type declaration %{#Interface:-TestingPinia-Properties-install-Type-declaration}%
▸ (`app`): `void`
-##### Parameters
+##### Parameters %{#Interface:-TestingPinia-Properties-install-Type-declaration-Parameters}%
| Name | Type |
| :------ | :------ |
| `app` | `App`<`any`\> |
-##### Returns
+##### Returns %{#Interface:-TestingPinia-Properties-install-Type-declaration-Returns}%
`void`
-#### Inherited from
+#### Inherited from %{#Interface:-TestingPinia-Properties-install-Inherited-from}%
[Pinia](pinia.Pinia.md).[install](pinia.Pinia.md#install)
___
-### state
+### state %{#Interface:-TestingPinia-Properties-state}%
• **state**: `Ref`<`Record`<`string`, [`StateTree`](../modules/pinia.md#statetree)\>\>
root state
-#### Inherited from
+#### Inherited from %{#Interface:-TestingPinia-Properties-state-Inherited-from}%
[Pinia](pinia.Pinia.md).[state](pinia.Pinia.md#state)
-## Methods
+## Methods %{#Interface:-TestingPinia-Methods}%
-### use
+### use %{#Interface:-TestingPinia-Methods-use}%
▸ **use**(`plugin`): [`Pinia`](pinia.Pinia.md)
Adds a store plugin to extend every store
-#### Parameters
+#### Parameters %{#Interface:-TestingPinia-Methods-use-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `plugin` | [`PiniaPlugin`](pinia.PiniaPlugin.md) | store plugin to add |
-#### Returns
+#### Returns %{#Interface:-TestingPinia-Methods-use-Returns}%
[`Pinia`](pinia.Pinia.md)
-#### Inherited from
+#### Inherited from %{#Interface:-TestingPinia-Methods-use-Inherited-from}%
[Pinia](pinia.Pinia.md).[use](pinia.Pinia.md#use)
[API Documentation](../index.md) / pinia
-# Module: pinia
+# Module: pinia %{#Module:-pinia}%
-## Enumerations
+## Enumerations %{#Module:-pinia-Enumerations}%
- [MutationType](../enums/pinia.MutationType.md)
-## Interfaces
+## Interfaces %{#Module:-pinia-Interfaces}%
- [DefineSetupStoreOptions](../interfaces/pinia.DefineSetupStoreOptions.md)
- [DefineStoreOptions](../interfaces/pinia.DefineStoreOptions.md)
- [\_StoreWithState](../interfaces/pinia._StoreWithState.md)
- [\_SubscriptionCallbackMutationBase](../interfaces/pinia._SubscriptionCallbackMutationBase.md)
-## Type Aliases
+## Type Aliases %{#Module:-pinia-Type-Aliases}%
-### PiniaStorePlugin
+### PiniaStorePlugin %{#Module:-pinia-Type-Aliases-PiniaStorePlugin}%
Ƭ **PiniaStorePlugin**: [`PiniaPlugin`](../interfaces/pinia.PiniaPlugin.md)
___
-### StateTree
+### StateTree %{#Module:-pinia-Type-Aliases-StateTree}%
Ƭ **StateTree**: `Record`<`string` \| `number` \| `symbol`, `any`\>
___
-### Store
+### Store %{#Module:-pinia-Type-Aliases-Store}%
Ƭ **Store**<`Id`, `S`, `G`, `A`\>: [`_StoreWithState`](../interfaces/pinia._StoreWithState.md)<`Id`, `S`, `G`, `A`\> & `UnwrapRef`<`S`\> & [`_StoreWithGetters`](pinia.md#_storewithgetters)<`G`\> & [`_ActionsTree`](pinia.md#_actionstree) extends `A` ? {} : `A` & [`PiniaCustomProperties`](../interfaces/pinia.PiniaCustomProperties.md)<`Id`, `S`, `G`, `A`\> & [`PiniaCustomStateProperties`](../interfaces/pinia.PiniaCustomStateProperties.md)<`S`\>
Store type to build a store.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-Store-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### StoreActions
+### StoreActions %{#Module:-pinia-Type-Aliases-StoreActions}%
Ƭ **StoreActions**<`SS`\>: `SS` extends [`Store`](pinia.md#store)<`string`, [`StateTree`](pinia.md#statetree), [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, infer A\> ? `A` : [`_ExtractActionsFromSetupStore`](pinia.md#_extractactionsfromsetupstore)<`SS`\>
Extract the actions of a store type. Works with both a Setup Store or an
Options Store.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-StoreActions-Type-parameters}%
| Name |
| :------ |
___
-### StoreGeneric
+### StoreGeneric %{#Module:-pinia-Type-Aliases-StoreGeneric}%
Ƭ **StoreGeneric**: [`Store`](pinia.md#store)<`string`, [`StateTree`](pinia.md#statetree), [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, [`_ActionsTree`](pinia.md#_actionstree)\>
___
-### StoreGetters
+### StoreGetters %{#Module:-pinia-Type-Aliases-StoreGetters}%
Ƭ **StoreGetters**<`SS`\>: `SS` extends [`Store`](pinia.md#store)<`string`, [`StateTree`](pinia.md#statetree), infer G, [`_ActionsTree`](pinia.md#_actionstree)\> ? [`_StoreWithGetters`](pinia.md#_storewithgetters)<`G`\> : [`_ExtractGettersFromSetupStore`](pinia.md#_extractgettersfromsetupstore)<`SS`\>
Extract the getters of a store type. Works with both a Setup Store or an
Options Store.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-StoreGetters-Type-parameters}%
| Name |
| :------ |
___
-### StoreOnActionListener
+### StoreOnActionListener %{#Module:-pinia-Type-Aliases-StoreOnActionListener}%
Ƭ **StoreOnActionListener**<`Id`, `S`, `G`, `A`\>: (`context`: [`StoreOnActionListenerContext`](pinia.md#storeonactionlistenercontext)<`Id`, `S`, `G`, {} extends `A` ? [`_ActionsTree`](pinia.md#_actionstree) : `A`\>) => `void`
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-StoreOnActionListener-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | `G` |
| `A` | `A` |
-#### Type declaration
+#### Type declaration %{#Module:-pinia-Type-Aliases-StoreOnActionListener-Type-declaration}%
▸ (`context`): `void`
Argument of `store.$onAction()`
-##### Parameters
+##### Parameters %{#Module:-pinia-Type-Aliases-StoreOnActionListener-Type-declaration-Parameters}%
| Name | Type |
| :------ | :------ |
| `context` | [`StoreOnActionListenerContext`](pinia.md#storeonactionlistenercontext)<`Id`, `S`, `G`, {} extends `A` ? [`_ActionsTree`](pinia.md#_actionstree) : `A`\> |
-##### Returns
+##### Returns %{#Module:-pinia-Type-Aliases-StoreOnActionListener-Type-declaration-Returns}%
`void`
___
-### StoreOnActionListenerContext
+### StoreOnActionListenerContext %{#Module:-pinia-Type-Aliases-StoreOnActionListenerContext}%
Ƭ **StoreOnActionListenerContext**<`Id`, `S`, `G`, `A`\>: [`_ActionsTree`](pinia.md#_actionstree) extends `A` ? [`_StoreOnActionListenerContext`](../interfaces/pinia._StoreOnActionListenerContext.md)<[`StoreGeneric`](pinia.md#storegeneric), `string`, [`_ActionsTree`](pinia.md#_actionstree)\> : { [Name in keyof A]: Name extends string ? \_StoreOnActionListenerContext<Store<Id, S, G, A\>, Name, A\> : never }[keyof `A`]
Context object passed to callbacks of `store.$onAction(context => {})`
TODO: should have only the Id, the Store and Actions to generate the proper object
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-StoreOnActionListenerContext-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### StoreState
+### StoreState %{#Module:-pinia-Type-Aliases-StoreState}%
Ƭ **StoreState**<`SS`\>: `SS` extends [`Store`](pinia.md#store)<`string`, infer S, [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, [`_ActionsTree`](pinia.md#_actionstree)\> ? `UnwrapRef`<`S`\> : [`_ExtractStateFromSetupStore`](pinia.md#_extractstatefromsetupstore)<`SS`\>
Extract the state of a store type. Works with both a Setup Store or an
Options Store. Note this unwraps refs.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-StoreState-Type-parameters}%
| Name |
| :------ |
___
-### SubscriptionCallback
+### SubscriptionCallback %{#Module:-pinia-Type-Aliases-SubscriptionCallback}%
Ƭ **SubscriptionCallback**<`S`\>: (`mutation`: [`SubscriptionCallbackMutation`](pinia.md#subscriptioncallbackmutation)<`S`\>, `state`: `UnwrapRef`<`S`\>) => `void`
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-SubscriptionCallback-Type-parameters}%
| Name |
| :------ |
| `S` |
-#### Type declaration
+#### Type declaration %{#Module:-pinia-Type-Aliases-SubscriptionCallback-Type-declaration}%
▸ (`mutation`, `state`): `void`
Callback of a subscription
-##### Parameters
+##### Parameters %{#Module:-pinia-Type-Aliases-SubscriptionCallback-Type-declaration-Parameters}%
| Name | Type |
| :------ | :------ |
| `mutation` | [`SubscriptionCallbackMutation`](pinia.md#subscriptioncallbackmutation)<`S`\> |
| `state` | `UnwrapRef`<`S`\> |
-##### Returns
+##### Returns %{#Module:-pinia-Type-Aliases-SubscriptionCallback-Type-declaration-Returns}%
`void`
___
-### SubscriptionCallbackMutation
+### SubscriptionCallbackMutation %{#Module:-pinia-Type-Aliases-SubscriptionCallbackMutation}%
Ƭ **SubscriptionCallbackMutation**<`S`\>: [`SubscriptionCallbackMutationDirect`](../interfaces/pinia.SubscriptionCallbackMutationDirect.md) \| [`SubscriptionCallbackMutationPatchObject`](../interfaces/pinia.SubscriptionCallbackMutationPatchObject.md)<`S`\> \| [`SubscriptionCallbackMutationPatchFunction`](../interfaces/pinia.SubscriptionCallbackMutationPatchFunction.md)
Context object passed to a subscription callback.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-SubscriptionCallbackMutation-Type-parameters}%
| Name |
| :------ |
___
-### \_ActionsTree
+### \_ActionsTree %{#Module:-pinia-Type-Aliases-\_ActionsTree}%
Ƭ **\_ActionsTree**: `Record`<`string`, [`_Method`](pinia.md#_method)\>
___
-### \_Awaited
+### \_Awaited %{#Module:-pinia-Type-Aliases-\_Awaited}%
Ƭ **\_Awaited**<`T`\>: `T` extends ``null`` \| `undefined` ? `T` : `T` extends `object` & { `then`: (`onfulfilled`: `F`) => `any` } ? `F` extends (`value`: infer V, ...`args`: `any`) => `any` ? [`_Awaited`](pinia.md#_awaited)<`V`\> : `never` : `T`
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_Awaited-Type-parameters}%
| Name |
| :------ |
___
-### \_DeepPartial
+### \_DeepPartial %{#Module:-pinia-Type-Aliases-\_DeepPartial}%
Ƭ **\_DeepPartial**<`T`\>: { [K in keyof T]?: \_DeepPartial<T[K]\> }
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_DeepPartial-Type-parameters}%
| Name |
| :------ |
___
-### \_ExtractActionsFromSetupStore
+### \_ExtractActionsFromSetupStore %{#Module:-pinia-Type-Aliases-\_ExtractActionsFromSetupStore}%
Ƭ **\_ExtractActionsFromSetupStore**<`SS`\>: `SS` extends `undefined` \| `void` ? {} : [`_ExtractActionsFromSetupStore_Keys`](pinia.md#_extractactionsfromsetupstore_keys)<`SS`\> extends keyof `SS` ? `Pick`<`SS`, [`_ExtractActionsFromSetupStore_Keys`](pinia.md#_extractactionsfromsetupstore_keys)<`SS`\>\> : `never`
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_ExtractActionsFromSetupStore-Type-parameters}%
| Name |
| :------ |
___
-### \_ExtractActionsFromSetupStore\_Keys
+### \_ExtractActionsFromSetupStore\_Keys %{#Module:-pinia-Type-Aliases-\_ExtractActionsFromSetupStore\_Keys}%
Ƭ **\_ExtractActionsFromSetupStore\_Keys**<`SS`\>: keyof { [K in keyof SS as SS[K] extends \_Method ? K : never]: any }
Type that enables refactoring through IDE.
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_ExtractActionsFromSetupStore\_Keys-Type-parameters}%
| Name |
| :------ |
___
-### \_ExtractGettersFromSetupStore
+### \_ExtractGettersFromSetupStore %{#Module:-pinia-Type-Aliases-\_ExtractGettersFromSetupStore}%
Ƭ **\_ExtractGettersFromSetupStore**<`SS`\>: `SS` extends `undefined` \| `void` ? {} : [`_ExtractGettersFromSetupStore_Keys`](pinia.md#_extractgettersfromsetupstore_keys)<`SS`\> extends keyof `SS` ? `Pick`<`SS`, [`_ExtractGettersFromSetupStore_Keys`](pinia.md#_extractgettersfromsetupstore_keys)<`SS`\>\> : `never`
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_ExtractGettersFromSetupStore-Type-parameters}%
| Name |
| :------ |
___
-### \_ExtractGettersFromSetupStore\_Keys
+### \_ExtractGettersFromSetupStore\_Keys %{#Module:-pinia-Type-Aliases-\_ExtractGettersFromSetupStore\_Keys}%
Ƭ **\_ExtractGettersFromSetupStore\_Keys**<`SS`\>: keyof { [K in keyof SS as SS[K] extends ComputedRef ? K : never]: any }
Type that enables refactoring through IDE.
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_ExtractGettersFromSetupStore\_Keys-Type-parameters}%
| Name |
| :------ |
___
-### \_ExtractStateFromSetupStore
+### \_ExtractStateFromSetupStore %{#Module:-pinia-Type-Aliases-\_ExtractStateFromSetupStore}%
Ƭ **\_ExtractStateFromSetupStore**<`SS`\>: `SS` extends `undefined` \| `void` ? {} : [`_ExtractStateFromSetupStore_Keys`](pinia.md#_extractstatefromsetupstore_keys)<`SS`\> extends keyof `SS` ? [`_UnwrapAll`](pinia.md#_unwrapall)<`Pick`<`SS`, [`_ExtractStateFromSetupStore_Keys`](pinia.md#_extractstatefromsetupstore_keys)<`SS`\>\>\> : `never`
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_ExtractStateFromSetupStore-Type-parameters}%
| Name |
| :------ |
___
-### \_ExtractStateFromSetupStore\_Keys
+### \_ExtractStateFromSetupStore\_Keys %{#Module:-pinia-Type-Aliases-\_ExtractStateFromSetupStore\_Keys}%
Ƭ **\_ExtractStateFromSetupStore\_Keys**<`SS`\>: keyof { [K in keyof SS as SS[K] extends \_Method \| ComputedRef ? never : K]: any }
Type that enables refactoring through IDE.
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_ExtractStateFromSetupStore\_Keys-Type-parameters}%
| Name |
| :------ |
___
-### \_GettersTree
+### \_GettersTree %{#Module:-pinia-Type-Aliases-\_GettersTree}%
Ƭ **\_GettersTree**<`S`\>: `Record`<`string`, (`state`: `UnwrapRef`<`S`\> & `UnwrapRef`<[`PiniaCustomStateProperties`](../interfaces/pinia.PiniaCustomStateProperties.md)<`S`\>\>) => `any` \| () => `any`\>
Type of an object of Getters that infers the argument. For internal usage only.
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_GettersTree-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### \_MapActionsObjectReturn
+### \_MapActionsObjectReturn %{#Module:-pinia-Type-Aliases-\_MapActionsObjectReturn}%
Ƭ **\_MapActionsObjectReturn**<`A`, `T`\>: { [key in keyof T]: A[T[key]] }
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_MapActionsObjectReturn-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### \_MapActionsReturn
+### \_MapActionsReturn %{#Module:-pinia-Type-Aliases-\_MapActionsReturn}%
Ƭ **\_MapActionsReturn**<`A`\>: { [key in keyof A]: A[key] }
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_MapActionsReturn-Type-parameters}%
| Name |
| :------ |
___
-### \_MapStateObjectReturn
+### \_MapStateObjectReturn %{#Module:-pinia-Type-Aliases-\_MapStateObjectReturn}%
Ƭ **\_MapStateObjectReturn**<`Id`, `S`, `G`, `A`, `T`\>: { [key in keyof T]: Function }
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_MapStateObjectReturn-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### \_MapStateReturn
+### \_MapStateReturn %{#Module:-pinia-Type-Aliases-\_MapStateReturn}%
Ƭ **\_MapStateReturn**<`S`, `G`, `Keys`\>: { [key in Keys]: Function }
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_MapStateReturn-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### \_MapWritableStateObjectReturn
+### \_MapWritableStateObjectReturn %{#Module:-pinia-Type-Aliases-\_MapWritableStateObjectReturn}%
Ƭ **\_MapWritableStateObjectReturn**<`S`, `T`\>: { [key in keyof T]: Object }
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_MapWritableStateObjectReturn-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### \_MapWritableStateReturn
+### \_MapWritableStateReturn %{#Module:-pinia-Type-Aliases-\_MapWritableStateReturn}%
Ƭ **\_MapWritableStateReturn**<`S`\>: { [key in keyof S]: Object }
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_MapWritableStateReturn-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### \_Method
+### \_Method %{#Module:-pinia-Type-Aliases-\_Method}%
Ƭ **\_Method**: (...`args`: `any`[]) => `any`
-#### Type declaration
+#### Type declaration %{#Module:-pinia-Type-Aliases-\_Method-Type-declaration}%
▸ (...`args`): `any`
For internal use **only**
-##### Parameters
+##### Parameters %{#Module:-pinia-Type-Aliases-\_Method-Type-declaration-Parameters}%
| Name | Type |
| :------ | :------ |
| `...args` | `any`[] |
-##### Returns
+##### Returns %{#Module:-pinia-Type-Aliases-\_Method-Type-declaration-Returns}%
`any`
___
-### \_Spread
+### \_Spread %{#Module:-pinia-Type-Aliases-\_Spread}%
Ƭ **\_Spread**<`A`\>: `A` extends [infer L, ...(infer R)] ? [`_StoreObject`](pinia.md#_storeobject)<`L`\> & [`_Spread`](pinia.md#_spread)<`R`\> : `unknown`
For internal use **only**.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_Spread-Type-parameters}%
| Name | Type |
| :------ | :------ |
___
-### \_StoreObject
+### \_StoreObject %{#Module:-pinia-Type-Aliases-\_StoreObject}%
-Ƭ **\_StoreObject**<`S`\>: `S` extends [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<infer Ids, infer State, infer Getters, infer Actions\> ? { [Id in \`${Ids}${MapStoresCustomization extends Record<"suffix", infer Suffix extends string\> ? Suffix : "Store"}\`]: Function } : {}
+Ƭ **\_StoreObject**<`S`\>: `S` extends [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<infer Ids, infer State, infer Getters, infer Actions\> ? { [Id in \`${Ids}${MapStoresCustomization extends Record<"suffix", infer Suffix\> ? Suffix : "Store"}\`]: Function } : {}
For internal use **only**.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_StoreObject-Type-parameters}%
| Name |
| :------ |
___
-### \_StoreWithActions
+### \_StoreWithActions %{#Module:-pinia-Type-Aliases-\_StoreWithActions}%
Ƭ **\_StoreWithActions**<`A`\>: { [k in keyof A]: A[k] extends Function ? Function : never }
Store augmented for actions. For internal usage only.
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_StoreWithActions-Type-parameters}%
| Name |
| :------ |
___
-### \_StoreWithGetters
+### \_StoreWithGetters %{#Module:-pinia-Type-Aliases-\_StoreWithGetters}%
Ƭ **\_StoreWithGetters**<`G`\>: { readonly [k in keyof G]: G[k] extends Function ? R : UnwrapRef<G[k]\> }
Store augmented with getters. For internal usage only.
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_StoreWithGetters-Type-parameters}%
| Name |
| :------ |
___
-### \_UnwrapAll
+### \_UnwrapAll %{#Module:-pinia-Type-Aliases-\_UnwrapAll}%
Ƭ **\_UnwrapAll**<`SS`\>: { [K in keyof SS]: UnwrapRef<SS[K]\> }
Type that enables refactoring through IDE.
For internal use **only**
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Type-Aliases-\_UnwrapAll-Type-parameters}%
| Name |
| :------ |
| `SS` |
-## Variables
+## Variables %{#Module:-pinia-Variables}%
-### PiniaVuePlugin
+### PiniaVuePlugin %{#Module:-pinia-Variables-PiniaVuePlugin}%
• `Const` **PiniaVuePlugin**: `Plugin`
`Vue` imported from 'vue'.
-## Functions
+## Functions %{#Module:-pinia-Functions}%
-### acceptHMRUpdate
+### acceptHMRUpdate %{#Module:-pinia-Functions-acceptHMRUpdate}%
▸ **acceptHMRUpdate**(`initialUseStore`, `hot`): (`newModule`: `any`) => `any`
}
```
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-acceptHMRUpdate-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `initialUseStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`string`, [`StateTree`](pinia.md#statetree), [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, [`_ActionsTree`](pinia.md#_actionstree)\> | return of the defineStore to hot update |
| `hot` | `any` | `import.meta.hot` |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-acceptHMRUpdate-Returns}%
`fn`
▸ (`newModule`): `any`
-##### Parameters
+##### Parameters %{#Module:-pinia-Functions-acceptHMRUpdate-Returns-Parameters}%
| Name | Type |
| :------ | :------ |
| `newModule` | `any` |
-##### Returns
+##### Returns %{#Module:-pinia-Functions-acceptHMRUpdate-Returns-Returns}%
`any`
___
-### createPinia
+### createPinia %{#Module:-pinia-Functions-createPinia}%
▸ **createPinia**(): [`Pinia`](../interfaces/pinia.Pinia.md)
Creates a Pinia instance to be used by the application
-#### Returns
+#### Returns %{#Module:-pinia-Functions-createPinia-Returns}%
[`Pinia`](../interfaces/pinia.Pinia.md)
___
-### defineStore
+### defineStore %{#Module:-pinia-Functions-defineStore}%
▸ **defineStore**<`Id`, `S`, `G`, `A`\>(`id`, `options`): [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\>
Creates a `useStore` function that retrieves the store instance
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-defineStore-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `G` | extends [`_GettersTree`](pinia.md#_getterstree)<`S`\> = {} |
| `A` | {} |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-defineStore-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `id` | `Id` | id of the store (must be unique) |
| `options` | `Omit`<[`DefineStoreOptions`](../interfaces/pinia.DefineStoreOptions.md)<`Id`, `S`, `G`, `A`\>, ``"id"``\> | options to define the store |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-defineStore-Returns}%
[`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\>
Creates a `useStore` function that retrieves the store instance
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-defineStore-Type-parameters_1}%
| Name | Type |
| :------ | :------ |
| `G` | extends [`_GettersTree`](pinia.md#_getterstree)<`S`\> = {} |
| `A` | {} |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-defineStore-Parameters_1}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `options` | [`DefineStoreOptions`](../interfaces/pinia.DefineStoreOptions.md)<`Id`, `S`, `G`, `A`\> | options to define the store |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-defineStore-Returns_1}%
[`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\>
Creates a `useStore` function that retrieves the store instance
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-defineStore-Type-parameters_2}%
| Name | Type |
| :------ | :------ |
| `Id` | extends `string` |
| `SS` | `SS` |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-defineStore-Parameters_2}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `storeSetup` | () => `SS` | function that defines the store |
| `options?` | [`DefineSetupStoreOptions`](../interfaces/pinia.DefineSetupStoreOptions.md)<`Id`, [`_ExtractStateFromSetupStore`](pinia.md#_extractstatefromsetupstore)<`SS`\>, [`_ExtractGettersFromSetupStore`](pinia.md#_extractgettersfromsetupstore)<`SS`\>, [`_ExtractActionsFromSetupStore`](pinia.md#_extractactionsfromsetupstore)<`SS`\>\> | extra options |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-defineStore-Returns_2}%
[`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, [`_ExtractStateFromSetupStore`](pinia.md#_extractstatefromsetupstore)<`SS`\>, [`_ExtractGettersFromSetupStore`](pinia.md#_extractgettersfromsetupstore)<`SS`\>, [`_ExtractActionsFromSetupStore`](pinia.md#_extractactionsfromsetupstore)<`SS`\>\>
___
-### getActivePinia
+### getActivePinia %{#Module:-pinia-Functions-getActivePinia}%
▸ **getActivePinia**(): `undefined` \| [`Pinia`](../interfaces/pinia.Pinia.md)
Get the currently active pinia if there is any.
-#### Returns
+#### Returns %{#Module:-pinia-Functions-getActivePinia-Returns}%
`undefined` \| [`Pinia`](../interfaces/pinia.Pinia.md)
___
-### mapActions
+### mapActions %{#Module:-pinia-Functions-mapActions}%
▸ **mapActions**<`Id`, `S`, `G`, `A`, `KeyMapper`\>(`useStore`, `keyMapper`): [`_MapActionsObjectReturn`](pinia.md#_mapactionsobjectreturn)<`A`, `KeyMapper`\>
}
```
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapActions-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `A` | `A` |
| `KeyMapper` | extends `Record`<`string`, keyof `A`\> |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapActions-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keyMapper` | `KeyMapper` | object to define new names for the actions |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapActions-Returns}%
[`_MapActionsObjectReturn`](pinia.md#_mapactionsobjectreturn)<`A`, `KeyMapper`\>
}
```
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapActions-Type-parameters_1}%
| Name | Type |
| :------ | :------ |
| `G` | extends [`_GettersTree`](pinia.md#_getterstree)<`S`\> |
| `A` | `A` |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapActions-Parameters_1}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keys` | keyof `A`[] | array of action names to map |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapActions-Returns_1}%
[`_MapActionsReturn`](pinia.md#_mapactionsreturn)<`A`\>
___
-### mapGetters
+### mapGetters %{#Module:-pinia-Functions-mapGetters}%
▸ **mapGetters**<`Id`, `S`, `G`, `A`, `KeyMapper`\>(`useStore`, `keyMapper`): [`_MapStateObjectReturn`](pinia.md#_mapstateobjectreturn)<`Id`, `S`, `G`, `A`, `KeyMapper`\>
use `mapState()` instead.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapGetters-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `A` | `A` |
| `KeyMapper` | extends `Record`<`string`, keyof `S` \| keyof `G` \| (`store`: [`Store`](pinia.md#store)<`Id`, `S`, `G`, `A`\>) => `any`\> |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapGetters-Parameters}%
| Name | Type |
| :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> |
| `keyMapper` | `KeyMapper` |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapGetters-Returns}%
[`_MapStateObjectReturn`](pinia.md#_mapstateobjectreturn)<`Id`, `S`, `G`, `A`, `KeyMapper`\>
use `mapState()` instead.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapGetters-Type-parameters_1}%
| Name | Type |
| :------ | :------ |
| `A` | `A` |
| `Keys` | extends `string` \| `number` \| `symbol` |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapGetters-Parameters_1}%
| Name | Type |
| :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> |
| `keys` | readonly `Keys`[] |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapGetters-Returns_1}%
[`_MapStateReturn`](pinia.md#_mapstatereturn)<`S`, `G`, `Keys`\>
___
-### mapState
+### mapState %{#Module:-pinia-Functions-mapState}%
▸ **mapState**<`Id`, `S`, `G`, `A`, `KeyMapper`\>(`useStore`, `keyMapper`): [`_MapStateObjectReturn`](pinia.md#_mapstateobjectreturn)<`Id`, `S`, `G`, `A`, `KeyMapper`\>
}
```
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapState-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `A` | `A` |
| `KeyMapper` | extends `Record`<`string`, keyof `S` \| keyof `G` \| (`store`: [`Store`](pinia.md#store)<`Id`, `S`, `G`, `A`\>) => `any`\> |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapState-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keyMapper` | `KeyMapper` | object of state properties or getters |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapState-Returns}%
[`_MapStateObjectReturn`](pinia.md#_mapstateobjectreturn)<`Id`, `S`, `G`, `A`, `KeyMapper`\>
}
```
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapState-Type-parameters_1}%
| Name | Type |
| :------ | :------ |
| `A` | `A` |
| `Keys` | extends `string` \| `number` \| `symbol` |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapState-Parameters_1}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keys` | readonly `Keys`[] | array of state properties or getters |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapState-Returns_1}%
[`_MapStateReturn`](pinia.md#_mapstatereturn)<`S`, `G`, `Keys`\>
___
-### mapStores
+### mapStores %{#Module:-pinia-Functions-mapStores}%
▸ **mapStores**<`Stores`\>(...`stores`): [`_Spread`](pinia.md#_spread)<`Stores`\>
}
```
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapStores-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `Stores` | extends `any`[] |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapStores-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `...stores` | [...Stores[]] | list of stores to map to an object |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapStores-Returns}%
[`_Spread`](pinia.md#_spread)<`Stores`\>
___
-### mapWritableState
+### mapWritableState %{#Module:-pinia-Functions-mapWritableState}%
▸ **mapWritableState**<`Id`, `S`, `G`, `A`, `KeyMapper`\>(`useStore`, `keyMapper`): [`_MapWritableStateObjectReturn`](pinia.md#_mapwritablestateobjectreturn)<`S`, `KeyMapper`\>
modified. Differently from `mapState()`, only `state` properties can be
added.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapWritableState-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `A` | `A` |
| `KeyMapper` | extends `Record`<`string`, keyof `S`\> |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapWritableState-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keyMapper` | `KeyMapper` | object of state properties |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapWritableState-Returns}%
[`_MapWritableStateObjectReturn`](pinia.md#_mapwritablestateobjectreturn)<`S`, `KeyMapper`\>
API (`setup()`) by generating an object to be spread in the `computed` field
of a component.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-mapWritableState-Type-parameters_1}%
| Name | Type |
| :------ | :------ |
| `G` | extends [`_GettersTree`](pinia.md#_getterstree)<`S`\> |
| `A` | `A` |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-mapWritableState-Parameters_1}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keys` | keyof `S`[] | array of state properties |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-mapWritableState-Returns_1}%
[`_MapWritableStateReturn`](pinia.md#_mapwritablestatereturn)<`S`\>
___
-### setActivePinia
+### setActivePinia %{#Module:-pinia-Functions-setActivePinia}%
▸ **setActivePinia**(`pinia`): `undefined` \| [`Pinia`](../interfaces/pinia.Pinia.md)
Sets or unsets the active pinia. Used in SSR and internally when calling
actions and getters
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-setActivePinia-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `pinia` | `undefined` \| [`Pinia`](../interfaces/pinia.Pinia.md) | Pinia instance |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-setActivePinia-Returns}%
`undefined` \| [`Pinia`](../interfaces/pinia.Pinia.md)
___
-### setMapStoreSuffix
+### setMapStoreSuffix %{#Module:-pinia-Functions-setMapStoreSuffix}%
▸ **setMapStoreSuffix**(`suffix`): `void`
Defaults to `"Store"`. Make sure to extend the MapStoresCustomization
interface if you are using TypeScript.
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-setMapStoreSuffix-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `suffix` | `string` | new suffix |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-setMapStoreSuffix-Returns}%
`void`
___
-### skipHydrate
+### skipHydrate %{#Module:-pinia-Functions-skipHydrate}%
▸ **skipHydrate**<`T`\>(`obj`): `T`
Tells Pinia to skip the hydration process of a given object. This is useful in setup stores (only) when you return a
stateful object in the store but it isn't really state. e.g. returning a router instance in a setup store.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-skipHydrate-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `T` | `any` |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-skipHydrate-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `obj` | `T` | target object |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-skipHydrate-Returns}%
`T`
___
-### storeToRefs
+### storeToRefs %{#Module:-pinia-Functions-storeToRefs}%
-▸ **storeToRefs**<`SS`\>(`store`): `ToRefs`<[`StoreState`](pinia.md#storestate)<`SS`\> & [`StoreGetters`](pinia.md#storegetters)<`SS`\> & [`PiniaCustomStateProperties`](../interfaces/pinia.PiniaCustomStateProperties.md)<[`StoreState`](pinia.md#storestate)<`SS`\>\>\>
+▸ **storeToRefs**<`SS`\>(`store`): `StoreToRefs`<`SS`\>
Creates an object of references with all the state, getters, and plugin-added
state properties of the store. Similar to `toRefs()` but specifically
designed for Pinia stores so methods and non reactive properties are
completely ignored.
-#### Type parameters
+#### Type parameters %{#Module:-pinia-Functions-storeToRefs-Type-parameters}%
| Name | Type |
| :------ | :------ |
| `SS` | extends [`_StoreWithState`](../interfaces/pinia._StoreWithState.md)<`string`, [`StateTree`](pinia.md#statetree), [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, [`_ActionsTree`](pinia.md#_actionstree), `SS`\> & [`StateTree`](pinia.md#statetree) & [`_StoreWithGetters`](pinia.md#_storewithgetters)<[`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>\> & [`PiniaCustomProperties`](../interfaces/pinia.PiniaCustomProperties.md)<`string`, [`StateTree`](pinia.md#statetree), [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, [`_ActionsTree`](pinia.md#_actionstree), `SS`\> & [`PiniaCustomStateProperties`](../interfaces/pinia.PiniaCustomStateProperties.md)<[`StateTree`](pinia.md#statetree), `SS`\> |
-#### Parameters
+#### Parameters %{#Module:-pinia-Functions-storeToRefs-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `store` | `SS` | store to extract the refs from |
-#### Returns
+#### Returns %{#Module:-pinia-Functions-storeToRefs-Returns}%
-`ToRefs`<[`StoreState`](pinia.md#storestate)<`SS`\> & [`StoreGetters`](pinia.md#storegetters)<`SS`\> & [`PiniaCustomStateProperties`](../interfaces/pinia.PiniaCustomStateProperties.md)<[`StoreState`](pinia.md#storestate)<`SS`\>\>\>
+`StoreToRefs`<`SS`\>
[API Documentation](../index.md) / @pinia/nuxt
-# Module: @pinia/nuxt
+# Module: @pinia/nuxt %{#Module:-@pinia/nuxt}%
-## Interfaces
+## Interfaces %{#Module:-@pinia/nuxt-Interfaces}%
- [ModuleOptions](../interfaces/pinia_nuxt.ModuleOptions.md)
-## Functions
+## Functions %{#Module:-@pinia/nuxt-Functions}%
-### default
+### default %{#Module:-@pinia/nuxt-Functions-default}%
▸ **default**(`this`, `inlineOptions`, `nuxt`): `void` \| `Promise`<`void`\>
-#### Parameters
+#### Parameters %{#Module:-@pinia/nuxt-Functions-default-Parameters}%
| Name | Type |
| :------ | :------ |
| `inlineOptions` | [`ModuleOptions`](../interfaces/pinia_nuxt.ModuleOptions.md) |
| `nuxt` | `Nuxt` |
-#### Returns
+#### Returns %{#Module:-@pinia/nuxt-Functions-default-Returns}%
`void` \| `Promise`<`void`\>
[API Documentation](../index.md) / @pinia/testing
-# Module: @pinia/testing
+# Module: @pinia/testing %{#Module:-@pinia/testing}%
-## Interfaces
+## Interfaces %{#Module:-@pinia/testing-Interfaces}%
- [TestingOptions](../interfaces/pinia_testing.TestingOptions.md)
- [TestingPinia](../interfaces/pinia_testing.TestingPinia.md)
-## Functions
+## Functions %{#Module:-@pinia/testing-Functions}%
-### createTestingPinia
+### createTestingPinia %{#Module:-@pinia/testing-Functions-createTestingPinia}%
▸ **createTestingPinia**(`options?`): [`TestingPinia`](../interfaces/pinia_testing.TestingPinia.md)
they are replaced with `jest.fn()`, otherwise, you must provide your own
`createSpy` option.
-#### Parameters
+#### Parameters %{#Module:-@pinia/testing-Functions-createTestingPinia-Parameters}%
| Name | Type | Description |
| :------ | :------ | :------ |
| `options` | [`TestingOptions`](../interfaces/pinia_testing.TestingOptions.md) | options to configure the testing pinia |
-#### Returns
+#### Returns %{#Module:-@pinia/testing-Functions-createTestingPinia-Returns}%
[`TestingPinia`](../interfaces/pinia_testing.TestingPinia.md)
↳ **`DefineSetupStoreOptions`**
-## 属性 %{#properties}%
+## 属性
### actions %{#actions}%
↳ **`DefineStoreOptions`**
-## 属性 %{#properties}%
+## 属性
### actions %{#actions}%
创建一个新 state 的函数。
**必须是一个箭头函数**,以确保正确的类型标注!
-##### 返回值 %{#returns}%
+##### 返回值
`S`
})
```
-#### 参数 %{#parameters}%
+#### 参数
| 名字 | 类型 | 描述 |
| :------ | :------ | :------ |
| `storeState` | `UnwrapRef`<`S`\> | the current state in the store |
| `initialState` | `UnwrapRef`<`S`\> | initialState |
-#### 返回值 %{#returns}%
+#### 返回值
`void`
↳ **`DefineStoreOptionsInPlugin`**
-## 属性 %{#properties}%
+## 属性
### actions %{#actions}%
getter 的可选对象
-#### 继承于 %{#inherited-from}%
+#### 继承于
Omit.getters
创建一个新 state 的函数。
**必须是一个箭头函数**,以确保正确的类型标注!
-#### 返回值 %{#returns}%
+#### 返回值
`S`
-#### 继承于 %{#inherited-from}%
+#### 继承于
Omit.state
})
```
-#### 参数 %{#parameters}%
+#### 参数
| 名字 | 类型 | 描述 |
| :------ | :------ | :------ |
| `storeState` | `UnwrapRef`<`S`\> | the current state in the store |
| `initialState` | `UnwrapRef`<`S`\> | initialState |
-#### 返回值 %{#returns}%
+#### 返回值
`void`
-#### 继承于 %{#inherited-from}%
+#### 继承于
Omit.hydrate
↳ [`TestingPinia`](pinia_testing.TestingPinia.md)
-## 属性 %{#properties}%
+## 属性
### 安装 %{#install}%
▸ (`app`): `void`
-##### 参数 %{#parameters}%
+##### 参数
| Name | Type |
| :------ | :------ |
| `app` | `App`<`any`\> |
-##### 返回值 %{#returns}%
+##### 返回值
`void`
| :------ | :------ | :------ |
| `plugin` | [`PiniaPlugin`](pinia.PiniaPlugin.md) | store plugin to add |
-#### 返回值 %{#returns}%
+#### 返回值
[`Pinia`](pinia.Pinia.md)
• `get` **route**(): `RouteLocationNormalized`
-#### 返回值 %{#returns}%
+#### 返回值
`RouteLocationNormalized`
• `set` **route**(`value`): `void`
-#### 参数 %{#parameters}%
+#### 参数
| Name | Type |
| :------ | :------ |
| `value` | `RouteLocationNormalizedLoaded` \| `Ref`<`RouteLocationNormalizedLoaded`\> |
-#### 返回值 %{#returns}%
+#### 返回值
`void`
用于扩展每个 store 的插件。返回一个扩展 store 的对象或
没有返回值。
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `context` | [`PiniaPluginContext`](pinia.PiniaPluginContext.md)<`string`, [`StateTree`](../modules/pinia.md#statetree), [`_GettersTree`](../modules/pinia.md#_getterstree)<[`StateTree`](../modules/pinia.md#statetree)\>, [`_ActionsTree`](../modules/pinia.md#_actionstree)\> | Context |
-#### 返回值 %{#returns}%
+#### 返回值
`void` \| `Partial`<[`PiniaCustomProperties`](pinia.PiniaCustomProperties.md)<`string`, [`StateTree`](../modules/pinia.md#statetree), [`_GettersTree`](../modules/pinia.md#_getterstree)<[`StateTree`](../modules/pinia.md#statetree)\>, [`_ActionsTree`](../modules/pinia.md#_actionstree)\> & [`PiniaCustomStateProperties`](pinia.PiniaCustomStateProperties.md)<[`StateTree`](../modules/pinia.md#statetree)\>\>
| `G` | [`_GettersTree`](../modules/pinia.md#_getterstree)<`S`\> |
| `A` | [`_ActionsTree`](../modules/pinia.md#_actionstree) |
-## 属性 %{#properties}%
+## 属性
### app %{#app}%
返回一个 store,有需要才创建它。
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `pinia?` | ``null`` \| [`Pinia`](pinia.Pinia.md) | Pinia instance to retrieve the store |
| `hot?` | [`StoreGeneric`](../modules/pinia.md#storegeneric) | dev only hot module replacement |
-#### 返回值 %{#returns}%
+#### 返回值
[`Store`](../modules/pinia.md#store)<`Id`, `S`, `G`, `A`\>
-## 属性 %{#properties}%
+## 属性
### $id %{#id}%
↳ [`_StoreWithState`](pinia._StoreWithState.md)
-## 属性 %{#properties}%
+## 属性
### $id %{#id}%
↳ **`SubscriptionCallbackMutationDirect`**
-## 属性 %{#properties}%
+## 属性
### 事件 %{#events}%
执行 mutation 的 store 的 `id`
-#### 继承于 %{#inherited-from}%
+#### 继承于
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[storeId](pinia._SubscriptionCallbackMutationBase.md#storeid)
↳ **`SubscriptionCallbackMutationPatchFunction`**
-## 属性 %{#properties}%
+## 属性
### 事件 %{#events}%
执行 mutation 的 store 的 `id`
-#### 继承于 %{#inherited-from}%
+#### 继承于
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[storeId](pinia._SubscriptionCallbackMutationBase.md#storeid)
↳ **`SubscriptionCallbackMutationPatchObject`**
-## 属性 %{#properties}%
+## 属性
### 事件 %{#events}%
执行 mutation 的 store 的 `id`
-#### 继承于 %{#inherited-from}%
+#### 继承于
[_SubscriptionCallbackMutationBase](pinia._SubscriptionCallbackMutationBase.md).[storeId](pinia._SubscriptionCallbackMutationBase.md#storeid)
| `ActionName` | extends `string` |
| `A` | `A` |
-## 属性 %{#properties}%
+## 属性
### after %{#after}%
| :------ | :------ |
| `callback` | `A` extends `Record`<`ActionName`, [`_Method`](../modules/pinia.md#_method)\> ? (`resolvedReturn`: [`_Awaited`](../modules/pinia.md#_awaited)<`ReturnType`<`A`[`ActionName`]\>\>) => `void` : () => `void` |
-##### 返回值 %{#returns}%
+##### 返回值
`void`
___
-### name %{#args}%
+### name %{#name}%
• **name**: `ActionName`
• **onError**: (`callback`: (`error`: `unknown`) => `void`) => `void`
-#### 类型声明 %{#type-declaration}%
+#### 类型声明 %{#type-declaration_1}%
▸ (`callback`): `void`
action 的错误钩子。
返回 `false` 以捕获错误并阻止其继续传播。
-##### 参数 %{#parameters}%
+##### 参数
| 名称 | 类型 |
| :------ | :------ |
| `callback` | (`error`: `unknown`) => `void` |
-##### 返回值 %{#returns}%
+##### 返回值
`void`
↳ **`_StoreWithState`**
-## 属性 %{#properties}%
+## 属性
### $id %{#id}%
store 的唯一标识符
-#### 继承于 %{#inherited-from}%
+#### 继承于
[StoreProperties](pinia.StoreProperties.md).[$id](pinia.StoreProperties.md#$id)
生产版本会被移除。
用户可以用它来添加应在 devtools 中显示的 store 属性键。
-#### 继承自 %{#inherited-from}%
+#### 继承自
[StoreProperties](pinia.StoreProperties.md).[_customProperties](pinia.StoreProperties.md#_customproperties)
插件可以覆盖此方法来清理已添加的任何副作用函数。
例如, devtools 插件停止显示来自 devtools 的已停止的 store。
-#### 返回值 %{#returns}%
+#### 返回值
`void`
})
```
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `callback` | [`StoreOnActionListener`](../modules/pinia.md#storeonactionlistener)<`Id`, `S`, `G`, `A`\> | callback called before every action |
| `detached?` | `boolean` | detach the subscription from the context this is called from |
-#### 返回值 %{#returns}%
+#### 返回值
`fn`
})
```
-##### 返回值 %{#returns}%
+##### 返回值
`void`
将一个 state 补丁应用于当前状态。允许传递嵌套值
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `partialState` | [`_DeepPartial`](../modules/pinia.md#_deeppartial)<`UnwrapRef`<`S`\>\> | patch to apply to the state |
-#### 返回值 %{#returns}%
+#### 返回值
`void`
当 mutation 对象(如 Sets 或数组)或者应用对象补丁不方便时很有用,例如追加到数组中。
传递给 `$patch()` 的函数**必须是同步的**。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数 %{#type-parameters_1}%
| 名称 | 类型 |
| :------ | :------ |
| `F` | extends (`state`: `UnwrapRef`<`S`\>) => `any` |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
通过建立一个新的状态对象,将 store 重设为初始状态。
TODO: make this options only
-#### 返回值 %{#returns}%
+#### 返回值
`void`
请注意,当在组件内调用 `store.$subscribe()` 时,除非 `detached` 被设置为 true,
否则当组件被卸载时,它将被自动清理掉。
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `callback` | [`SubscriptionCallback`](../modules/pinia.md#subscriptioncallback)<`S`\> | callback passed to the watcher |
| `options?` | { `detached?`: `boolean` } & `WatchOptions`<`boolean`\> | `watch` options + `detached` to detach the subscription from the context (usually a component) this is called from. Note that the `flush` option does not affect calls to `store.$patch()`. |
-#### 返回值 %{#returns}%
+#### 返回值
`fn`
请注意,当在组件内调用 `store.$subscribe()` 时,除非 `detached` 被设置为 true,
否则当组件被卸载时,它将被自动清理掉。
-##### 返回值 %{#returns}%
+##### 返回值
`void`
↳ [`SubscriptionCallbackMutationPatchObject`](pinia.SubscriptionCallbackMutationPatchObject.md)
-## 属性 %{#properties}%
+## 属性
### storeId %{#storeid}%
[@pinia/testing](../modules/pinia_testing.md).TestingOptions
-## 属性 %{#properties}%
+## 属性
### createSpy %{#createspy}%
用于创建 action 和 `$patch()` 的 spy 的函数。
在 jest 项目中默认为 `jest.fn()`,在 vitest 项目中默认为 `vi.fn()`。
-##### 参数 %{#parameters}%
+##### 参数
| 名称 | 类型 |
| :------ | :------ |
| `fn?` | (...`args`: `any`[]) => `any` |
-##### 返回值 %{#returns}%
+##### 返回值
`fn`
▸ (...`args`): `any`
-##### 参数 %{#parameters}%
+##### 参数
| 名称 | 类型 |
| :------ | :------ |
| `...args` | `any`[] |
-##### 返回值 %{#returns}%
+##### 返回值
`any`
↳ **`TestingPinia`**
-## 属性 %{#properties}%
+## 属性
### app %{#app}%
▸ (`app`): `void`
-##### 参数 %{#parameters}%
+##### 参数
| 名称 | 类型 |
| :------ | :------ |
| `app` | `App`<`any`\> |
-##### 返回值 %{#returns}%
+##### 返回值
`void`
-#### 继承于 %{#inherited-from}%
+#### 继承于
[Pinia](pinia.Pinia.md).[install](pinia.Pinia.md#install)
根 state
-#### 继承于 %{#inherited-from}%
+#### 继承于
[Pinia](pinia.Pinia.md).[state](pinia.Pinia.md#state)
增加了一个 store 插件来扩展每个 store
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `plugin` | [`PiniaPlugin`](pinia.PiniaPlugin.md) | store plugin to add |
-#### 返回值 %{#returns}%
+#### 返回值
[`Pinia`](pinia.Pinia.md)
-#### 继承于 %{#inherited-from}%
+#### 继承于
[Pinia](pinia.Pinia.md).[use](pinia.Pinia.md#use)
创建 store 的 Store 类型。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :--- | :--------------------------------------------- |
提取一个 store 类型的 action。
对 Setup Store 或 Option Store 都有效。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :--- |
提取一个 store 类型的 getter。
对 Setup Store 或 Option Store都有效。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :--- |
Ƭ **StoreOnActionListener**<`Id`, `S`, `G`, `A`\>: (`context`: [`StoreOnActionListenerContext`](pinia.md#storeonactionlistenercontext)<`Id`, `S`, `G`, {} extends `A` ? [`_ActionsTree`](pinia.md#_actionstree) : `A`\>) => `void`
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :--- | :---------------------------------------- |
`store.$onAction()` 的参数
-##### 参数 %{#parameters}%
+##### 参数
| 名称 | 类型 |
| :------ | :------ |
| `context` | [`StoreOnActionListenerContext`](pinia.md#storeonactionlistenercontext)<`Id`, `S`, `G`, {} extends `A` ? [`_ActionsTree`](pinia.md#_actionstree) : `A`\> |
-##### 返回值 %{#returns}%
+##### 返回值
`void`
传递给 `store.$onAction(context => {})` 的回调的上下文对象。
TODO:应该只有Id,Store 和 Action 来生成适当的对象。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :--- | :---------------------------------------- |
提取一个 store 类型的 state。
对 Setup Store 或 Option Store 都有效。请注意,它自动解包 refs。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :--- |
Ƭ **SubscriptionCallback**<`S`\>: (`mutation`: [`SubscriptionCallbackMutation`](pinia.md#subscriptioncallbackmutation)<`S`\>, `state`: `UnwrapRef`<`S`\>) => `void`
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
订阅的回调
-##### 参数 %{#parameters}%
+##### 参数
| 名称 | 类型 |
| :------ | :------ |
| `mutation` | [`SubscriptionCallbackMutation`](pinia.md#subscriptioncallbackmutation)<`S`\> |
| `state` | `UnwrapRef`<`S`\> |
-##### 返回值 %{#returns}%
+##### 返回值
`void`
传递给订阅回调的上下文对象。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :--- |
Ƭ **\_Awaited**<`T`\>: `T` extends ``null`` \| `undefined` ? `T` : `T` extends `object` & { `then`: (`onfulfilled`: `F`) => `any` } ? `F` extends (`value`: infer V, ...`args`: `any`) => `any` ? [`_Awaited`](pinia.md#_awaited)<`V`\> : `never` : `T`
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :--- |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
能够通过 IDE 进行重构的类型。
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
能够通过 IDE 进行重构的类型。
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
能够通过 IDE 进行重构的类型。
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
推断参数的 Getter 对象的类型。仅供内部使用。
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | Type |
| :------ | :------ |
Ƭ **\_Method**: (...`args`: `any`[]) => `any`
-#### 类型声明 %{#type-declaration}%
+#### 类型声明 %{#type-declaration_1}%
▸ (...`args`): `any`
**仅**供内部使用
-##### 参数 %{#parameters}%
+##### 参数
| 名称 | 类型 |
| :------ | :------ |
| `...args` | `any`[] |
-##### 返回值 %{#returns}%
+##### 返回值
`any`
**仅**供内部使用.
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
**仅**供内部使用.
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
为 action 增强的 Store。仅供内部使用。
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
Store augmented with getters. For internal usage only.
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
能够通过 IDE 进行重构的类型。
**仅**供内部使用
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 |
| :------ |
}
```
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `initialUseStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`string`, [`StateTree`](pinia.md#statetree), [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, [`_ActionsTree`](pinia.md#_actionstree)\> | return of the defineStore to hot update |
| `hot` | `any` | `import.meta.hot` |
-#### 返回值 %{#returns}%
+#### 返回值
`fn`
▸ (`newModule`): `any`
-##### 参数 %{#parameters}%
+##### 参数
| 名称 | 类型 |
| :---------- | :---- |
| `newModule` | `any` |
-##### 返回值 %{#returns}%
+##### 返回值
`any`
创建一个 Pinia 实例,供应用使用。
-#### 返回值 %{#returns}%
+#### 返回值
[`Pinia`](../interfaces/pinia.Pinia.md)
创建一个 `useStore` 函数,检索 store 实例
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :--- | :--------------------------------------------- |
| `G` | 扩展自 `_GettersTree`<`S`\> = {} |
| `A` | {} |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `id` | `Id` | id of the store (must be unique) |
| `options` | `Omit`<[`DefineStoreOptions`](../interfaces/pinia.DefineStoreOptions.md)<`Id`, `S`, `G`, `A`\>, ``"id"``\> | options to define the store |
-#### 返回值 %{#returns}%
+#### 返回值
[`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\>
创建一个 `useStore` 函数,检索 store 实例
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :--- | :------ |
| `G` | extends [`_GettersTree`](pinia.md#_getterstree)<`S`\> = {} |
| `A` | {} |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `options` | [`DefineStoreOptions`](../interfaces/pinia.DefineStoreOptions.md)<`Id`, `S`, `G`, `A`\> | options to define the store |
-#### 返回值 %{#returns}%
+#### 返回值
[`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\>
创建一个 `useStore` 函数,检索 store 实例
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :--- | :--------------- |
| `Id` | 扩展自 `string` |
| `SS` | `SS` |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `storeSetup` | () => `SS` | function that defines the store |
| `options?` | [`DefineSetupStoreOptions`](../interfaces/pinia.DefineSetupStoreOptions.md)<`Id`, [`_ExtractStateFromSetupStore`](pinia.md#_extractstatefromsetupstore)<`SS`\>, [`_ExtractGettersFromSetupStore`](pinia.md#_extractgettersfromsetupstore)<`SS`\>, [`_ExtractActionsFromSetupStore`](pinia.md#_extractactionsfromsetupstore)<`SS`\>\> | extra options |
-#### 返回值 %{#returns}%
+#### 返回值
[`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, [`_ExtractStateFromSetupStore`](pinia.md#_extractstatefromsetupstore)<`SS`\>, [`_ExtractGettersFromSetupStore`](pinia.md#_extractgettersfromsetupstore)<`SS`\>, [`_ExtractActionsFromSetupStore`](pinia.md#_extractactionsfromsetupstore)<`SS`\>\>
如果有的话,获取当前激活的 pinia
-#### 返回值 %{#returns}%
+#### 返回值
`undefined` \| [`Pinia`](../interfaces/pinia.Pinia.md)
}
```
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :---------- | :---------------------------------------- |
| `A` | `A` |
| `KeyMapper` | 扩展自 `Record`<`string`, keyof `A`\> |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keyMapper` | `KeyMapper` | object to define new names for the actions |
-#### 返回值 %{#returns}%
+#### 返回值
[`_MapActionsObjectReturn`](pinia.md#_mapactionsobjectreturn)<`A`, `KeyMapper`\>
}
```
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :--- | :---------------------------------------- |
| `G` | 扩展自 [`_GettersTree`](pinia.md#_getterstree)<`S`\> |
| `A` | `A` |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keys` | keyof `A`[] | array of action names to map |
-#### 返回值 %{#returns}%
+#### 返回值
[`_MapActionsReturn`](pinia.md#_mapactionsreturn)<`A`\>
}
```
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
| `A` | `A` |
| `KeyMapper` | extends `Record`<`string`, keyof `S` \| keyof `G` \| (`store`: [`Store`](pinia.md#store)<`Id`, `S`, `G`, `A`\>) => `any`\> |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keyMapper` | `KeyMapper` | object of state properties or getters |
-#### 返回值 %{#returns}%
+#### 返回值
[`_MapStateObjectReturn`](pinia.md#_mapstateobjectreturn)<`Id`, `S`, `G`, `A`, `KeyMapper`\>
}
```
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
| `A` | `A` |
| `Keys` | extends `string` \| `number` \| `symbol` |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keys` | readonly `Keys`[] | array of state properties or getters |
-#### 返回值 %{#returns}%
+#### 返回值
[`_MapStateReturn`](pinia.md#_mapstatereturn)<`S`, `G`, `Keys`\>
}
```
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
| `A` | `A` |
| `KeyMapper` | extends `Record`<`string`, keyof `S` \| keyof `G` \| (`store`: [`Store`](pinia.md#store)<`Id`, `S`, `G`, `A`\>) => `any`\> |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keyMapper` | `KeyMapper` | object of state properties or getters |
-#### 返回值 %{#returns}%
+#### 返回值
[`_MapStateObjectReturn`](pinia.md#_mapstateobjectreturn)<`Id`, `S`, `G`, `A`, `KeyMapper`\>
}
```
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
| `A` | `A` |
| `Keys` | extends `string` \| `number` \| `symbol` |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keys` | readonly `Keys`[] | array of state properties or getters |
-#### 返回值 %{#returns}%
+#### 返回值
[`_MapStateReturn`](pinia.md#_mapstatereturn)<`S`, `G`, `Keys`\>
}
```
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------- | :-------------- |
| `Stores` | 扩展 `any`[] |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :---------- | :------------ | :--------------------------------- |
| `...stores` | [...Stores[]] | list of stores to map to an object |
-#### 返回值 %{#returns}%
+#### 返回值
[`_Spread`](pinia.md#_spread)<`Stores`\>
所以 state 可以被修改。
与 `mapState()` 不同的是,只有 `state` 属性可以被添加。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
| `A` | `A` |
| `KeyMapper` | extends `Record`<`string`, keyof `S`\> |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keyMapper` | `KeyMapper` | object of state properties |
-#### 返回值 %{#returns}%
+#### 返回值
[`_MapWritableStateObjectReturn`](pinia.md#_mapwritablestateobjectreturn)<`S`, `KeyMapper`\>
以允许在不使用组合式 API(`setup()`)的情况下
使用来自一个 store 的 state 和 getter,。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
| `G` | extends [`_GettersTree`](pinia.md#_getterstree)<`S`\> |
| `A` | `A` |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `useStore` | [`StoreDefinition`](../interfaces/pinia.StoreDefinition.md)<`Id`, `S`, `G`, `A`\> | store to map from |
| `keys` | keyof `S`[] | array of state properties |
-#### 返回值 %{#returns}%
+#### 返回值
[`_MapWritableStateReturn`](pinia.md#_mapwritablestatereturn)<`S`\>
设置或取消设置激活的 pinia。
在 SSR 和内部调用 action 和 getter 时使用。
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `pinia` | `undefined` \| [`Pinia`](../interfaces/pinia.Pinia.md) | Pinia instance |
-#### 返回值 %{#returns}%
+#### 返回值
`undefined` \| [`Pinia`](../interfaces/pinia.Pinia.md)
| :------ | :------ | :------ |
| `suffix` | `string` | new suffix |
-#### 返回值 %{#returns}%
+#### 返回值
`void`
告诉 Pinia 跳过给定对象的激活过程。当你在 store 中返回一个有状态的对象,但它并不是真正的状态时,(仅)在 setup store 中这是很有用的。
例如,在一个 setup store 中返回一个路由器实例。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
| `T` | `any` |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `obj` | `T` | target object |
-#### 返回值 %{#returns}%
+#### 返回值
`T`
类似于 `toRefs()`,但专门为 Pinia store 设计,
所以 method 和非响应式属性会被完全忽略。
-#### 类型参数 %{#type-parameters}%
+#### 类型参数
| 名称 | 类型 |
| :------ | :------ |
| `SS` | extends [`_StoreWithState`](../interfaces/pinia._StoreWithState.md)<`string`, [`StateTree`](pinia.md#statetree), [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, [`_ActionsTree`](pinia.md#_actionstree), `SS`\> & [`StateTree`](pinia.md#statetree) & [`_StoreWithGetters`](pinia.md#_storewithgetters)<[`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>\> & [`PiniaCustomProperties`](../interfaces/pinia.PiniaCustomProperties.md)<`string`, [`StateTree`](pinia.md#statetree), [`_GettersTree`](pinia.md#_getterstree)<[`StateTree`](pinia.md#statetree)\>, [`_ActionsTree`](pinia.md#_actionstree), `SS`\> & [`PiniaCustomStateProperties`](../interfaces/pinia.PiniaCustomStateProperties.md)<[`StateTree`](pinia.md#statetree), `SS`\> |
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :--- | :------ |
| `store` | `SS` | store to extract the refs from |
-#### 返回值 %{#returns}%
+#### 返回值
`ToRefs`<[`StoreState`](pinia.md#storestate)<`SS`\> & [`StoreGetters`](pinia.md#storegetters)<`SS`\> & [`PiniaCustomStateProperties`](../interfaces/pinia.PiniaCustomStateProperties.md)<[`StoreState`](pinia.md#storestate)<`SS`\>\>\>
▸ **default**(`this`, `inlineOptions`, `nuxt`): `void` \| `Promise`<`void`\>
-#### 参数 %{#parameters}%
+#### 参数
| Name | Type |
| :------ | :------ |
| `inlineOptions` | [`ModuleOptions`](../interfaces/pinia_nuxt.ModuleOptions.md) |
| `nuxt` | `Nuxt` |
-#### 返回值 %{#returns}%
+#### 返回值
`void` \| `Promise`<`void`\>
如果你使用 jest,将它们替换为 `jest.fn()`,
否则,你必须提供你自己的 `createSpy` 选项。
-#### 参数 %{#parameters}%
+#### 参数
| 名称 | 类型 | 描述 |
| :------ | :------ | :------ |
| `options` | [`TestingOptions`](../interfaces/pinia_testing.TestingOptions.md) | 配置 pinia 测试实例的选项 |
-#### 返回值 %{#returns}%
+#### 返回值
[`TestingPinia`](../interfaces/pinia_testing.TestingPinia.md)