import { WorkflowBase } from "../abstractions"; export interface IWorkflowHost { start(): Promise; stop(): any; startWorkflow(id: string, version: number, data: any): Promise; registerWorkflow(workflow: new () => WorkflowBase): any; publishEvent(eventName: string, eventKey: string, eventData: any, eventTime: Date): Promise; suspendWorkflow(id: string): Promise; resumeWorkflow(id: string): Promise; terminateWorkflow(id: string): Promise; }