/** * Event Engine Core state change module. * * @internal */ /* eslint-disable @typescript-eslint/no-explicit-any */ import { State } from './state'; import { EventTypeFromMap, GenericMap, InvocationTypeFromMap } from './types'; /** @internal */ export type EngineStarted = { type: 'engineStarted'; state: State; context: any; }; /** @internal */ export type EventReceived = { type: 'eventReceived'; event: EventTypeFromMap; }; /** @internal */ export type TransitionDone = { type: 'transitionDone'; event: EventTypeFromMap; fromState: State; toState: State; fromContext: any; toContext: any; }; /** @internal */ export type InvocationDispatched = { type: 'invocationDispatched'; invocation: InvocationTypeFromMap; }; /** @internal */ export type Change = | TransitionDone | InvocationDispatched | EngineStarted | EventReceived;