import type { Node } from '../../Node'; import type { Group } from '../../shapes/Group'; import type { EditorEdgeRecord, EditorNodeRecord } from './types'; export declare function nodeDiagramId(node: Node): string | undefined; export declare function isEditableDiagramNode(node: Node): boolean; /** Walk diagram tree and collect editable node groups. */ export declare function collectEditableNodes(root: Group): Group[]; export declare function findEdgeLayer(root: Group): Group | undefined; export declare function collectEdgesFromLayer(edgeLayer: Group): EditorEdgeRecord[]; export declare function extractNodeLabel(node: Group): string; export declare function buildNodeRecords(nodes: Group[]): EditorNodeRecord[]; export declare function findNodeByDiagramId(root: Group, id: string): Group | undefined; export declare function resolveEditableGroup(hit: Node | null | undefined): Group | undefined;