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