Skip to main content

Reference / Modules / client / VaultState

Class: VaultState

client.VaultState

A State instance is a state in the "state machine" sense. It comes with some behavior and state transition methods. A state transition method returns an instance of the next state given the executed operation, which discards current object.

This class should be extended by client class. It provides method enabling the client class to query if it was already discarded or not as well as methods actually discarding the state.

Hierarchy​

Table of contents​

Constructors​

Properties​

Accessors​

Methods​

Constructors​

constructor​

• new VaultState(state): VaultState

Parameters​

NameType
stateVaultSharedState

Returns​

VaultState

Overrides​

State.constructor

Defined in​

packages/client/src/Vault.ts:102

Properties​

sharedState​

• Private sharedState: VaultSharedState

Defined in​

packages/client/src/Vault.ts:107

Accessors​

acceptedVaultTransferRequests​

• get acceptedVaultTransferRequests(): VaultTransferRequest[]

Returns​

VaultTransferRequest[]

Defined in​

packages/client/src/Vault.ts:121


balances​

• get balances(): CoinBalance[]

Returns​

CoinBalance[]

Defined in​

packages/client/src/Vault.ts:346


cancelledVaultTransferRequests​

• get cancelledVaultTransferRequests(): VaultTransferRequest[]

Returns​

VaultTransferRequest[]

Defined in​

packages/client/src/Vault.ts:113


discarded​

• get discarded(): boolean

Returns​

boolean

Description

True if this state was discarded

Inherited from​

State.discarded

Defined in​

packages/client/src/State.ts:24


pendingVaultTransferRequests​

• get pendingVaultTransferRequests(): VaultTransferRequest[]

Returns​

VaultTransferRequest[]

Defined in​

packages/client/src/Vault.ts:109


rejectedVaultTransferRequests​

• get rejectedVaultTransferRequests(): VaultTransferRequest[]

Returns​

VaultTransferRequest[]

Defined in​

packages/client/src/Vault.ts:117


transactions​

• get transactions(): Transaction[]

Returns​

Transaction[]

Defined in​

packages/client/src/Vault.ts:342


vaultAccount​

• get vaultAccount(): ValidAccountId

Returns​

ValidAccountId

Defined in​

packages/client/src/Vault.ts:338


vaultTransferRequestsHistory​

• get vaultTransferRequestsHistory(): VaultTransferRequest[]

Returns​

VaultTransferRequest[]

Defined in​

packages/client/src/Vault.ts:125

Methods​

_cancelVaultTransferRequest​

▸ _cancelVaultTransferRequest(legalOfficer, request, signer, callback?): Promise<VaultState>

Parameters​

NameType
legalOfficerLegalOfficer
requestVaultTransferRequest
signerSigner
callback?SignCallback

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:226


_createVaultTransferRequest​

▸ _createVaultTransferRequest(params): Promise<VaultState>

Parameters​

NameType
paramsObject
params.amountLgnt
params.callback?SignCallback
params.destinationValidAccountId
params.legalOfficerLegalOfficer
params.signerSigner

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:142


_refresh​

▸ _refresh(): Promise<VaultState>

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:325


_resubmitVaultTransferRequest​

▸ _resubmitVaultTransferRequest(legalOfficer, request): Promise<VaultState>

Parameters​

NameType
legalOfficerLegalOfficer
requestVaultTransferRequest

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:296


cancelVaultTransferRequest​

▸ cancelVaultTransferRequest(legalOfficer, request, signer, callback?): Promise<VaultState>

Parameters​

NameType
legalOfficerLegalOfficer
requestVaultTransferRequest
signerSigner
callback?SignCallback

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:217


createVaultTransferRequest​

▸ createVaultTransferRequest(params): Promise<VaultState>

Parameters​

NameType
paramsObject
params.amountLgnt
params.callback?SignCallback
params.destinationValidAccountId
params.legalOfficerLegalOfficer
params.signerSigner

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:132


discard​

▸ discard(next): void

Parameters​

NameType
nextundefined | State

Returns​

void

Description

Discards current state. One must discard the state only if the state transition was successfully executed. It may be safer to use discardOnSuccess.

Inherited from​

State.discard

Defined in​

packages/client/src/State.ts:43


discardOnSuccess​

▸ discardOnSuccess<T, U>(action): Promise<U>

Type parameters​

NameType
Textends State
Uextends State = T

Parameters​

NameTypeDescription
action(current: T) => Promise<U>The state transition logic producing next state

Returns​

Promise<U>

Next state if state transition logic execution did not throw

Descripiton

Discards current state only if given state transition logic executed successfully (i.e. without throwing an error).

Inherited from​

State.discardOnSuccess

Defined in​

packages/client/src/State.ts:55


ensureCurrent​

▸ ensureCurrent(): void

Returns​

void

Description

Throws an error if this state was discarded. This should be called by all public methods of client class.

Inherited from​

State.ensureCurrent

Defined in​

packages/client/src/State.ts:32


finalizeOnSuccess​

▸ finalizeOnSuccess<T>(action): Promise<void>

Type parameters​

NameType
Textends State

Parameters​

NameTypeDescription
action(current: T) => Promise<void>The state transition logic producing next state

Returns​

Promise<void>

Next state if state transition logic execution did not throw

Descripiton

Finalizes (i.e. replaces with no new state) current state only if given state transition logic executed successfully (i.e. without throwing an error).

Inherited from​

State.finalizeOnSuccess

Defined in​

packages/client/src/State.ts:117


getCurrentState​

▸ getCurrentState(): undefined | State

Returns​

undefined | State

This state if not discareded or the current state or undefined when there is no current state.

Description

If the state has been discarded, provides the replacing current state if any.

Inherited from​

State.getCurrentState

Defined in​

packages/client/src/State.ts:90


getCurrentStateOrThrow​

▸ getCurrentStateOrThrow(): State

Returns​

State

Inherited from​

State.getCurrentStateOrThrow

Defined in​

packages/client/src/State.ts:102


recoveryTransferSubmittable​

▸ recoveryTransferSubmittable(params): Promise<SubmittableExtrinsic>

Parameters​

NameType
paramsObject
params.amountLgnt
params.destinationValidAccountId

Returns​

Promise<SubmittableExtrinsic>

Defined in​

packages/client/src/Vault.ts:191


refresh​

▸ refresh(): Promise<VaultState>

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:321


regularTransferSubmittable​

▸ regularTransferSubmittable(params): Promise<SubmittableExtrinsic>

Parameters​

NameType
paramsObject
params.amountLgnt
params.destinationValidAccountId

Returns​

Promise<SubmittableExtrinsic>

Defined in​

packages/client/src/Vault.ts:206


resubmitVaultTransferRequest​

▸ resubmitVaultTransferRequest(legalOfficer, request): Promise<VaultState>

Parameters​

NameType
legalOfficerLegalOfficer
requestVaultTransferRequest

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:289


syncDiscardOnSuccess​

▸ syncDiscardOnSuccess<T, U>(action): U

Type parameters​

NameType
Textends State
Uextends State = T

Parameters​

NameTypeDescription
action(current: T) => UThe state transition logic producing next state

Returns​

U

Next state if state transition logic execution did not throw

Descripiton

Same as discardOnSuccess but with a synchronous action.

Inherited from​

State.syncDiscardOnSuccess

Defined in​

packages/client/src/State.ts:73


create​

▸ create(sharedState): Promise<VaultState>

Parameters​

NameType
sharedStateVaultStateCreationParameters

Returns​

Promise<VaultState>

Defined in​

packages/client/src/Vault.ts:39


getDefinedRecoveredAddress​

▸ getDefinedRecoveredAddress(sharedState): ValidAccountId

Parameters​

NameType
sharedStateVaultStateCreationParameters

Returns​

ValidAccountId

Defined in​

packages/client/src/Vault.ts:95


getVault​

▸ getVault(sharedState): Vault

Parameters​

NameType
sharedStateVaultStateCreationParameters

Returns​

Vault

Defined in​

packages/client/src/Vault.ts:75


newTransactionClient​

▸ newTransactionClient(vaultAddress, sharedState): TransactionClient

Parameters​

NameType
vaultAddressValidAccountId
sharedStateVaultStateCreationParameters

Returns​

TransactionClient

Defined in​

packages/client/src/Vault.ts:67