Skip to main content

@jewel998/state-machine - v0.0.5 / IStateMachineDefinitionBuilder

Interface: IStateMachineDefinitionBuilder<TContext, TState, TEvent>

Type parameters​

NameType
TContextextends ContextConstraint
TStateextends StateIdentifier
TEventextends EventIdentifier

Implemented by​

Table of contents​

Methods​

Methods​

initialState​

▸ initialState(state): this

Parameters​

NameType
stateTState

Returns​

this

Defined in​

src/interfaces/StateMachineDefinition.ts:107


state​

▸ state(state): this

Parameters​

NameType
stateTState

Returns​

this

Defined in​

src/interfaces/StateMachineDefinition.ts:108


transition​

▸ transition(from, to, event): this

Parameters​

NameType
fromTState
toTState
eventTEvent

Returns​

this

Defined in​

src/interfaces/StateMachineDefinition.ts:109


guard​

▸ guard(condition): this

Parameters​

NameType
condition(context: TContext) => boolean | Promise<boolean>

Returns​

this

Defined in​

src/interfaces/StateMachineDefinition.ts:110


action​

▸ action(callback): this

Parameters​

NameType
callback(context: TContext) => void | Promise<void>

Returns​

this

Defined in​

src/interfaces/StateMachineDefinition.ts:111


transaction​

▸ transaction(callback, rollback?): this

Parameters​

NameType
callback(context: TContext) => Promise<void>
rollback?(context: TContext, error: Error) => Promise<void>

Returns​

this

Defined in​

src/interfaces/StateMachineDefinition.ts:112


onStateEntry​

▸ onStateEntry(state, callback): this

Parameters​

NameType
stateTState
callback(context: TContext) => void | Promise<void>

Returns​

this

Defined in​

src/interfaces/StateMachineDefinition.ts:116


onStateExit​

▸ onStateExit(state, callback): this

Parameters​

NameType
stateTState
callback(context: TContext) => void | Promise<void>

Returns​

this

Defined in​

src/interfaces/StateMachineDefinition.ts:120


buildDefinition​

▸ buildDefinition(): IStateMachineDefinition<TContext, TState, TEvent>

Returns​

IStateMachineDefinition<TContext, TState, TEvent>

Defined in​

src/interfaces/StateMachineDefinition.ts:124