import { BaseComponent } from "../../core/BaseComponent.js"; import type { DiagramOptions } from "./Diagram.types.js"; export declare class Diagram extends BaseComponent { private options; private svg?; private nodesGroup?; private linksGroup?; private currentScale; private pan; private panStart?; private isPanning; private nodes; private links; private draggingNode?; private dragCandidate?; private toolbox?; private toolboxQuery; private collapsedToolboxGroups; private connectSourceId?; private resizing?; private selectedNodeId?; private selectedNodeIds; private selectedLinkId?; private connectMode; private statusEl?; private inlineEditor?; private canvasWrap?; private nodeClickHandler?; private nodeClickTimer?; private editMode; private labelInput?; private contextPanel?; private toolboxVisible; private toolboxVisibleBeforeFullscreen?; private collapsedToolbarGroups; private connectorDragMoveHandler?; private connectorDragUpHandler?; private fullscreenChangeHandler?; private historyPast; private historyFuture; private marqueeSelection?; private bendDrag?; private connectionDrag?; constructor(options: DiagramOptions); init(): void; destroy(): void; private render; private buildToolbar; private buildContextPanel; private buildCanvasHint; private createToolbarButton; private getIconscoutIconPath; private buildToolbox; private populateToolboxList; private createToolIconElement; private createIconElement; private getTools; private getToolGroupLabel; private normalizeNodes; private normalizeLinks; private applyToolButtonData; private resolveToolFromButton; private attachToolDragHandlers; private attachToolbarHandlers; private syncContextPanel; private escapeHtml; private clearInteractionModes; private fitToView; private centerCanvas; private toggleTools; private toggleFullscreen; private attachFullscreenListener; private setFullscreenState; private getNodeBounds; private attachCanvasHandlers; private createSvgCanvas; private attachSvgHandlers; private ensureSvgStructure; private tryHydrate; private renderNodes; private renderHandles; private renderConnectorHandles; private renderLinks; private buildLinkPath; private getLinkBendPoint; private getEdgePoint; private getConnectorPortPosition; private buildConnectorPath; private updateStatus; private handleWheel; private zoomBy; private resetView; private startPan; private handlePan; private endPan; private applyTransform; private startNodeDrag; private handleNodeDrag; private startBendDrag; private handleBendDrag; private startResize; private startConnectorDrag; private handleConnectorDrag; private finishConnectorDrag; private handleResize; private handleConnectClick; private handleDrop; private exportJSON; private exportSVG; private snap; private editLabel; private handleInlineEditRequest; private startInlineEdit; private exportRaster; private exportPDF; private updateSelectedLabel; private syncLabelInput; private handleCanvasClick; private handleKeyDown; private applyMarqueeSelection; private createLink; private duplicateSelectedNode; private deleteSelectedNode; private deleteSelectedLink; private editLinkLabel; private getSelectedNodes; private alignSelection; private distributeSelection; private syncToolbarState; private pushHistorySnapshot; private undo; private redo; private detachConnectorDragListeners; private getExportSvg; private getNodePalette; } //# sourceMappingURL=Diagram.d.ts.map