diff --git a/src/index.ts b/src/index.ts index 46fd251..e5ca1e4 100644 --- a/src/index.ts +++ b/src/index.ts @@ -46,6 +46,7 @@ export interface Interpreter_T { isTransitioning: boolean; isPaused: boolean; start: ()=>Interpreter_T; + subscribe: (callback:SubscriptionCallbackFunction_T)=>Interpreter_T; } /** @@ -62,6 +63,7 @@ export function Interpreter(machine:Machine_T, initialContext:any, initial //@ts-expect-error const interpreter : Interpreter_T = {machine, state: initialStateName, context:initialContext, eventQueue:[], isTransitioning:false, subscriptions: {}, isPaused: true}; interpreter.start = ()=>{ start(interpreter); return interpreter; } + interpreter.subscribe = (callback)=>{ subscribe(interpreter,callback); return interpreter; } send(interpreter, ['entry', null] ); return interpreter; }