Skip to content

EventLifecycle

Defined in: event-lifecycle.ts:24

Lifecycle interface defines the methods for managing state transitions and effects. Implemented by StateMachine and StoreMachine to handle state changes. It provides a structured way to handle state changes, including guards, effects, and notifications.

Lifecycle steps:

  1. transition(ev) - Triggers the transition lifecycle, handling all steps for processing a change event.
  2. guard(ev) - Checks if the transition is allowed.
  3. handle(ev) - Processes the event, may abort if returns undefined.
  4. before(ev) - Prepares for state change, may abort if returns undefined.
  5. update(ev) - Applies the state update.
  6. effect(ev) - Runs side effects, calls leave/enter hooks.
  7. leave(ev) - Called when leaving the previous state.
  8. enter(ev) - Called when entering the new state.
  9. notify(ev) - Notifies subscribers of the change.
  10. after(ev) - Final hook after transition completes.
Type Parameter
E

transition(change: E): void

Defined in: event-lifecycle.ts:28

Triggers the transition lifecycle, handling all steps for processing a change event.

ParameterType
changeE

void


guard(ev: E): boolean

Defined in: event-lifecycle.ts:32

Checks if a transition event is allowed to proceed. Returns true to continue, false to abort.

ParameterType
evE

boolean


handle(ev: E): undefined | E

Defined in: event-lifecycle.ts:36

Processes the event. May abort the transition if returns undefined.

ParameterType
evE

undefined | E


before(ev: E): undefined | E

Defined in: event-lifecycle.ts:41

Called before the transition is applied. May abort if returns undefined. (Represents a beforeTransition hook, not state entry/exit.)

ParameterType
evE

undefined | E


update(ev: E): void

Defined in: event-lifecycle.ts:45

Applies the state update.

ParameterType
evE

void


effect(ev: E): void

Defined in: event-lifecycle.ts:49

Runs side effects for the transition. By default, calls leave and enter hooks.

ParameterType
evE

void


leave(ev: E): void

Defined in: event-lifecycle.ts:53

Called when leaving the previous state.

ParameterType
evE

void


enter(ev: E): void

Defined in: event-lifecycle.ts:57

Called when entering the new state.

ParameterType
evE

void


notify(ev: E): void

Defined in: event-lifecycle.ts:61

Notifies subscribers of the change.

ParameterType
evE

void


after(ev: E): void

Defined in: event-lifecycle.ts:65

Final hook after transition completes. (Represents afterTransition, not state entry/exit.)

ParameterType
evE

void