[thorium-store-context](../README.md) / [Exports](../modules.md) / IStoreContext

# Interface: IStoreContext

L'interface `IStoreContext` définit la structure et les méthodes qu'un objet contexte de magasin devrait avoir.

## Table of contents

### Properties

- [huid](IStoreContext.md#huid)
- [name](IStoreContext.md#name)
- [root](IStoreContext.md#root)
- [states](IStoreContext.md#states)
- [unid](IStoreContext.md#unid)
- [uuid](IStoreContext.md#uuid)

### Methods

- [destroy](IStoreContext.md#destroy)
- [extends](IStoreContext.md#extends)
- [get](IStoreContext.md#get)
- [keyList](IStoreContext.md#keylist)
- [on](IStoreContext.md#on)
- [remove](IStoreContext.md#remove)
- [set](IStoreContext.md#set)
- [tokenList](IStoreContext.md#tokenlist)
- [update](IStoreContext.md#update)
- [values](IStoreContext.md#values)

## Properties

### huid

• **huid**: `_HUID`

La propriété `huid:_HUID;` définit une propriété appelée `huid` dans l'interface `IStoreContext`. Le type
de cette propriété est `_HUID`, qui est un identifiant unique hiérarchique.

#### Defined in

[store-context.ts:96](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L96)

___

### name

• **name**: `string`

La propriété `name:string;` définit une propriété appelée `name` dans l'interface `IStoreContext`. Cette propriété
est une chaîne de caractères et représente le nom du contexte de magasin.

#### Defined in

[store-context.ts:109](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L109)

___

### root

• **root**: [`IStoreContext`](IStoreContext.md)

La propriété `root:IStoreContext;` définit une propriété appelée `root` dans l'interface `IStoreContext`. Cette propriété
est de type `IStoreContext` et représente le contexte racine du magasin.

#### Defined in

[store-context.ts:115](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L115)

___

### states

• **states**: [`IStoreState`](IStoreState.md)\<`any`\>[]

La propriété `states:IStoreState<any>[]` définit une propriété appelée `states` dans l'interface `IStoreContext`. Cette
propriété est un tableau d'objets de type `IStoreState<any>` et représente les états stockés dans le contexte de magasin.

#### Defined in

[store-context.ts:121](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L121)

___

### unid

• **unid**: `string`

La propriété `unid:string;` définit une propriété appelée `unid` dans l'interface `IStoreContext`. Cette propriété
est une chaîne de caractères et est utilisée comme identifiant unique pour le contexte de magasin. Elle se compose
du `huid` et du `name`.

#### Defined in

[store-context.ts:103](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L103)

___

### uuid

• **uuid**: \`$\{string}-$\{string}-$\{string}-$\{string}-$\{string}\`

La propriété `uuid:TStoreUUID;` définit une propriété appelée `uuid` dans l'interface `IStoreContext`. Le type
de cette propriété est `TStoreUUID`, qui est une chaîne de caractères. Cette propriété est utilisée pour identifier
de manière unique un objet contexte de magasin.

#### Defined in

[store-context.ts:90](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L90)

## Methods

### destroy

▸ **destroy**(): `boolean`

La méthode `destroy` dans la classe `StoreContext` renvoie un booléen pour indiquer si la destruction du contexte a réussi.

#### Returns

`boolean`

#### Defined in

[store-context.ts:169](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L169)

___

### extends

▸ **extends**(`contextName`, `options?`): [`IStoreContext`](IStoreContext.md)

La méthode `extends` dans la classe `StoreContext` permet d'étendre le contexte de magasin actuel en créant un nouveau contexte avec le nom spécifié.

#### Parameters

| Name | Type |
| :------ | :------ |
| `contextName` | `string` |
| `options?` | [`StoreContextOptions`](StoreContextOptions.md) |

#### Returns

[`IStoreContext`](IStoreContext.md)

#### Defined in

[store-context.ts:166](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L166)

___

### get

▸ **get**\<`T`\>(`identificateur`): [`IStoreState`](IStoreState.md)\<`T`\>

La méthode `get` dans la classe `StoreContext` prend un `identificateur` de type `string|TStoreStateToken` et renvoie un objet `IStoreState<T>`.

#### Type parameters

| Name |
| :------ |
| `T` |

#### Parameters

| Name | Type |
| :------ | :------ |
| `identificateur` | `string` |

#### Returns

[`IStoreState`](IStoreState.md)\<`T`\>

#### Defined in

[store-context.ts:151](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L151)

___

### keyList

▸ **keyList**(): `string`[]

La méthode `keyList` dans l'interface `IStoreContext` est une fonction qui renvoie un tableau de chaînes de caractères. Cette
méthode est utilisée pour récupérer la liste de toutes les clés ou identifiants des valeurs d'état dans un contexte de magasin. Chaque
valeur d'état dans le contexte de magasin est associée à une clé unique, et cette méthode vous permet d'obtenir toutes ces clés.

#### Returns

`string`[]

#### Defined in

[store-context.ts:135](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L135)

___

### on

▸ **on**(`event`, `callback`): `void`

La méthode `on` dans la classe `StoreContext` est utilisée pour enregistrer des écouteurs d'événements pour des
événements spécifiques dans le contexte de magasin. Elle prend deux paramètres : `event` et `callback`.

#### Parameters

| Name | Type |
| :------ | :------ |
| `event` | [`TStoreContextEvent`](../modules.md#tstorecontextevent) |
| `callback` | (`oldValue`: `any`, `newValue`: `any`) => `void` |

#### Returns

`void`

#### Defined in

[store-context.ts:163](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L163)

___

### remove

▸ **remove**(`identificateur`): `any`

La méthode `remove` dans la classe `StoreContext` prend un `identificateur` de type `string|TStoreStateToken`.

#### Parameters

| Name | Type |
| :------ | :------ |
| `identificateur` | `string` |

#### Returns

`any`

#### Defined in

[store-context.ts:157](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L157)

___

### set

▸ **set**\<`T`\>(`key`, `value`): `void` \| [`IStoreState`](IStoreState.md)\<`T`\>

La méthode `set` dans la classe `StoreContext` est une méthode générique qui prend une `clé` de type `string` et une `valeur` de type `T`.
Elle est utilisée pour ajouter une nouvelle valeur d'état au contexte de magasin.

#### Type parameters

| Name |
| :------ |
| `T` |

#### Parameters

| Name | Type |
| :------ | :------ |
| `key` | `string` |
| `value` | `T` |

#### Returns

`void` \| [`IStoreState`](IStoreState.md)\<`T`\>

#### Defined in

[store-context.ts:146](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L146)

___

### tokenList

▸ **tokenList**(): \`$\{string}-$\{string}-$\{string}-$\{string}-$\{string}\`[]

La méthode `keyList` dans l'interface `IStoreContext` est une fonction qui renvoie un tableau de chaînes de caractères. Cette
méthode est utilisée pour récupérer la liste de toutes les clés ou identifiants des valeurs d'état dans un contexte de magasin. Chaque
valeur d'état dans le contexte de magasin est associée à un jeton unique, et cette méthode vous permet d'obtenir toutes ces clés.

#### Returns

\`$\{string}-$\{string}-$\{string}-$\{string}-$\{string}\`[]

#### Defined in

[store-context.ts:128](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L128)

___

### update

▸ **update**(`identificateur`, `value`): `any`

La méthode `update` dans la classe `StoreContext` prend un `identificateur` de type `string|TStoreStateToken` et une `valeur` de type `any`.

#### Parameters

| Name | Type |
| :------ | :------ |
| `identificateur` | `string` |
| `value` | `any` |

#### Returns

`any`

#### Defined in

[store-context.ts:154](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L154)

___

### values

▸ **values**(): [`IStoreState`](IStoreState.md)\<`any`\>[]

La méthode `values` dans la classe `StoreContext` est une fonction qui renvoie un tableau d'objets `IStoreState<any>`.

#### Returns

[`IStoreState`](IStoreState.md)\<`any`\>[]

#### Defined in

[store-context.ts:140](https://github.com/Odyssee-Software/thorium-store-context/blob/ea2755d/src/store-context.ts#L140)
