import { EventType } from '../Constants'; import { BoundaryEvent, EndEvent, Event, EventDefinition, IntermediateCatchEvent, IntermediateThrowEvent, StartEvent } from './EventBase'; /** * Describes a global BPMN Message object. */ export type Message = { id: string; name: string; }; /** * Contains the definition for a MessageEvent. */ export type MessageEventDefinition = EventDefinition & { id: string; name: string; }; /** * Describes a Flow Node with a Message Event Definition. */ export type MessageEvent = Event & { readonly eventType: EventType.messageEvent; messageEventDefinition: MessageEventDefinition; messageChannel?: string; }; export type MessageBoundaryEvent = BoundaryEvent & MessageEvent; export type MessageStartEvent = StartEvent & MessageEvent; export type MessageEndEvent = EndEvent & MessageEvent; export type MessageIntermediateCatchEvent = IntermediateCatchEvent & MessageEvent; export type MessageIntermediateThrowEvent = IntermediateThrowEvent & MessageEvent;