import type { ArvoEvent } from 'arvo-core'; import type { Snapshot } from 'xstate'; import type ArvoMachine from '../ArvoMachine'; import type { EnqueueArvoEventActionParam } from '../ArvoMachine/types'; export type ExecuteMachineInput = { machine: ArvoMachine; state: Snapshot | null; event: ArvoEvent; }; export type ExecuteMachineOutput = { state: Snapshot; events: EnqueueArvoEventActionParam[]; finalOutput: any; };