UNPKG

mini-state-machine

Version:
29 lines (28 loc) 979 B
interface AddEventOptions { /** * Listen for only 1 event emission */ once?: boolean; } export interface AddEventHandler { /** * Remove the event handler */ remove: () => void; } export type EventCallback = (execution: ExecuteOptions) => boolean | void | Promise<boolean | void>; export interface EventsInterface { "@@handlers": Array<any>; add: (event: string, stateOrTransition: string, callback: EventCallback, options?: AddEventOptions) => AddEventHandler; addIdle: (callback: EventCallback) => AddEventHandler; emitIdle: (target?: EventCallback) => Promise<void>; execute: (event: string, stateOrTransition: string, options?: ExecuteOptions) => Promise<boolean>; remove: (event: string, stateOrTransition: string, callback: EventCallback) => void; } interface ExecuteOptions { from: string; to: string; transition: string; } export declare function createEventsInterface(): EventsInterface; export {};