> For the complete documentation index, see [llms.txt](https://developers.polymath.network/classic-sdk/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.polymath.network/classic-sdk/beta/external-modules/_entities_factories_tieredstofactory_.tieredstofactory.md).

# TieredStoFactory

Factory generates information for a tiered sto entity

## Hierarchy

* [Factory](broken://pages/-M-tw-_wrPu6TGwSOUU8)‹[TieredSto](broken://pages/-M-tw-_s2mCsrosd0XRo), [Params](broken://pages/-M-tw-c4-nZlI3NJ7fpP), [UniqueIdentifiers](broken://pages/-M-tw-c1QJv7aB-cF3RR)›

  ↳ **TieredStoFactory**

## Index

### Constructors

* [constructor](broken://pages/-M-tw-a0EDViQZAPSJ-X#constructor)

### Properties

* [Entity](broken://pages/-M-tw-a0EDViQZAPSJ-X#entity)
* [cache](broken://pages/-M-tw-a0EDViQZAPSJ-X#cache)
* [context](broken://pages/-M-tw-a0EDViQZAPSJ-X#context)

### Methods

* [create](broken://pages/-M-tw-a0EDViQZAPSJ-X#create)
* [fetch](broken://pages/-M-tw-a0EDViQZAPSJ-X#fetch)
* [generateProperties](broken://pages/-M-tw-a0EDViQZAPSJ-X#protected-generateproperties)
* [refresh](broken://pages/-M-tw-a0EDViQZAPSJ-X#refresh)
* [update](broken://pages/-M-tw-a0EDViQZAPSJ-X#update)

## Constructors

### constructor

\+ **new TieredStoFactory**(`context`: [Context](broken://pages/-M-tw-_Q7PZbtE8P8eVD)): [*TieredStoFactory*](broken://pages/-M-tw-a0EDViQZAPSJ-X)

*Overrides* [*Factory*](broken://pages/-M-tw-_wrPu6TGwSOUU8)*.*[*constructor*](broken://pages/-M-tw-_wrPu6TGwSOUU8#constructor)

*Defined in* [*src/entities/factories/TieredStoFactory.ts:148*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/TieredStoFactory.ts#L148)

Create an instance of the tiered sto factory

**Parameters:**

| Name      | Type                                           |
| --------- | ---------------------------------------------- |
| `context` | [Context](broken://pages/-M-tw-_Q7PZbtE8P8eVD) |

**Returns:** [*TieredStoFactory*](broken://pages/-M-tw-a0EDViQZAPSJ-X)

## Properties

### Entity

• **Entity**: [*EntityClass*](broken://pages/-M-tw-c8bRVlnQqEsaxH)*‹*[*Params*](broken://pages/-M-tw-c4-nZlI3NJ7fpP)*,* [*UniqueIdentifiers*](broken://pages/-M-tw-c1QJv7aB-cF3RR)*›*

*Inherited from* [*Factory*](broken://pages/-M-tw-_wrPu6TGwSOUU8)*.*[*Entity*](broken://pages/-M-tw-_wrPu6TGwSOUU8#entity)

*Defined in* [*src/entities/factories/Factory.ts:37*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/Factory.ts#L37)

entity class that this Factory is in charge of generating and caching

### cache

• **cache**: *object*

*Inherited from* [*Factory*](broken://pages/-M-tw-_wrPu6TGwSOUU8)*.*[*cache*](broken://pages/-M-tw-_wrPu6TGwSOUU8#cache)

*Defined in* [*src/entities/factories/Factory.ts:28*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/Factory.ts#L28)

#### Type declaration:

* \[ **key**: *string*]: [TieredSto](broken://pages/-M-tw-_s2mCsrosd0XRo) | undefined

### context

• **context**: [*Context*](broken://pages/-M-tw-_Q7PZbtE8P8eVD)

*Inherited from* [*Factory*](broken://pages/-M-tw-_wrPu6TGwSOUU8)*.*[*context*](broken://pages/-M-tw-_wrPu6TGwSOUU8#context)

*Defined in* [*src/entities/factories/Factory.ts:32*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/Factory.ts#L32)

## Methods

### create

▸ **create**(`uid`: string, `params`: [Params](broken://pages/-M-tw-c4-nZlI3NJ7fpP)): *EntityType*

*Inherited from* [*Factory*](broken://pages/-M-tw-_wrPu6TGwSOUU8)*.*[*create*](broken://pages/-M-tw-_wrPu6TGwSOUU8#create)

*Defined in* [*src/entities/factories/Factory.ts:87*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/Factory.ts#L87)

Get an entity from the cache. Creates it if it isn't cached, updates it if it is

**Parameters:**

| Name     | Type                                          | Description                      |
| -------- | --------------------------------------------- | -------------------------------- |
| `uid`    | string                                        | unique identifier for the entity |
| `params` | [Params](broken://pages/-M-tw-c4-nZlI3NJ7fpP) | constructor data for the entity  |

**Returns:** *EntityType*

### fetch

▸ **fetch**(`uid`: string): *Promise‹EntityType›*

*Inherited from* [*Factory*](broken://pages/-M-tw-_wrPu6TGwSOUU8)*.*[*fetch*](broken://pages/-M-tw-_wrPu6TGwSOUU8#fetch)

*Defined in* [*src/entities/factories/Factory.ts:57*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/Factory.ts#L57)

Get an entity from the cache. Fetches the necessary data to create it if it isn't cached, refreshes it if it is

**Parameters:**

| Name  | Type   | Description                      |
| ----- | ------ | -------------------------------- |
| `uid` | string | unique identifier for the entity |

**Returns:** *Promise‹EntityType›*

### `Protected` generateProperties

▸ **generateProperties**(`uid`: string): *Promise‹object›*

*Overrides void*

*Defined in* [*src/entities/factories/TieredStoFactory.ts:13*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/TieredStoFactory.ts#L13)

**Parameters:**

| Name  | Type   |
| ----- | ------ |
| `uid` | string |

**Returns:** *Promise‹object›*

### refresh

▸ **refresh**(`uid`: string): *Promise‹void›*

*Inherited from* [*Factory*](broken://pages/-M-tw-_wrPu6TGwSOUU8)*.*[*refresh*](broken://pages/-M-tw-_wrPu6TGwSOUU8#refresh)

*Defined in* [*src/entities/factories/Factory.ts:108*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/Factory.ts#L108)

Fetch the data for an entity and updates its properties

**Parameters:**

| Name  | Type   | Description                      |
| ----- | ------ | -------------------------------- |
| `uid` | string | unique identifier for the entity |

**Returns:** *Promise‹void›*

### update

▸ **update**(`uid`: string, `params`: Partial‹[Params](broken://pages/-M-tw-c4-nZlI3NJ7fpP)›): *Promise‹void›*

*Inherited from* [*Factory*](broken://pages/-M-tw-_wrPu6TGwSOUU8)*.*[*update*](broken://pages/-M-tw-_wrPu6TGwSOUU8#update)

*Defined in* [*src/entities/factories/Factory.ts:126*](https://github.com/PolymathNetwork/polymath-sdk/blob/550676f/src/entities/factories/Factory.ts#L126)

Update an entity's properties in place

**Parameters:**

| Name     | Type                                                   | Description                       |
| -------- | ------------------------------------------------------ | --------------------------------- |
| `uid`    | string                                                 | unique identifier for the entity  |
| `params` | Partial‹[Params](broken://pages/-M-tw-c4-nZlI3NJ7fpP)› | properties that should be updated |

**Returns:** *Promise‹void›*
