/** The id-agnostic, order-agnostic semantic structure of a BPMN model. Two * models are structurally equal iff their three multisets are equal. */ export interface CanonicalModel { /** Semantic descriptor of every flow node (task/gateway/event/subProcess), * sorted. Each carries its type, definition, and edge-degree signature. */ nodes: string[]; /** Every sequence flow as `«fromNode» =[tag]=> «toNode»`, plus structural * attach (boundary→host) and containment (subProcess→child) edges, sorted. */ flows: string[]; /** The full semantic identity of every message a catch event subscribes to, * sorted (deduped): the serialized `` definition — its name plus * the `zeebe:subscription correlationKey` and any `zeebe:properties` envelope — * so a differing correlation key or envelope is a structural difference. */ messages: string[]; } /** Normalize a BPMN XML document to its canonical semantic model. Strips DI and * canonicalizes ids, child ordering, and sequence-flow ids so only semantic * structure remains. */ export declare function normalize(bpmnXml: string): CanonicalModel;