import { ActorSystem } from 'xstate'; import { EditorActorRef } from '../../editor/editorActor.states'; import { OverlaysActorRef } from '../../overlays/overlaysActor'; import { SearchActorRef } from '../../search/searchActor'; import { DiagramMachineRef } from './machine'; export type NodeWithData = { id: string; data: Record; }; export type System = ActorSystem<{ actors: { diagram: DiagramMachineRef; overlays: OverlaysActorRef; search: SearchActorRef; editor: EditorActorRef; }; }>; export interface DiagramActorRef extends DiagramMachineRef { system: System; } export type { DiagramContext, DiagramEmittedEvents, DiagramEvents, DiagramMachineSnapshot as DiagramActorSnapshot, } from './machine';