import * as _angular_core from '@angular/core'; import { TemplateRef, ElementRef, EnvironmentInjector, ApplicationRef, ViewContainerRef } from '@angular/core'; import { NgAtomicComponent } from '@ng-atomic/core'; import { Node, Edge, DefaultEdgeOptions, NodeTypes, EdgeTypes, ConnectionLineType, ConnectionLineComponent, ConnectionMode, KeyCode, SelectionMode, NodeOrigin, Viewport, CoordinateExtent, PanOnScrollMode, FitViewOptions, PanelPosition, ProOptions, BackgroundVariant, Connection, HandleType, NodeChange, EdgeChange, OnConnectStartParams, ReactFlowInstance, OnSelectionChangeParams, OnError } from 'reactflow'; export { BackgroundVariant } from 'reactflow'; import * as React from 'react'; import React__default from 'react'; declare class ReactFlowComponentStore { readonly nodes: _angular_core.InputSignal[] | undefined>; readonly edges: _angular_core.InputSignal[] | undefined>; readonly defaultNodes: _angular_core.InputSignal[] | undefined>; readonly defaultEdges: _angular_core.InputSignal[] | undefined>; readonly defaultEdgeOptions: _angular_core.InputSignal; readonly nodeTemplates: _angular_core.InputSignal> | undefined>; readonly nodeTypes: _angular_core.InputSignal; readonly edgeTypes: _angular_core.InputSignal; readonly connectionLineType: _angular_core.InputSignal; readonly connectionLineStyle: _angular_core.InputSignal; readonly connectionLineComponent: _angular_core.InputSignal; readonly connectionLineContainerStyle: _angular_core.InputSignal; readonly connectionMode: _angular_core.InputSignal; readonly deleteKeyCode: _angular_core.InputSignal; readonly selectionKeyCode: _angular_core.InputSignal; readonly selectionOnDrag: _angular_core.InputSignal; readonly selectionMode: _angular_core.InputSignal; readonly panActivationKeyCode: _angular_core.InputSignal; readonly multiSelectionKeyCode: _angular_core.InputSignal; readonly zoomActivationKeyCode: _angular_core.InputSignal; readonly snapToGrid: _angular_core.InputSignal; readonly snapGrid: _angular_core.InputSignal<[number, number] | undefined>; readonly onlyRenderVisibleElements: _angular_core.InputSignal; readonly nodesDraggable: _angular_core.InputSignal; readonly nodesConnectable: _angular_core.InputSignal; readonly nodesFocusable: _angular_core.InputSignal; readonly nodeOrigin: _angular_core.InputSignal; readonly edgesFocusable: _angular_core.InputSignal; readonly initNodeOrigin: _angular_core.InputSignal; readonly elementsSelectable: _angular_core.InputSignal; readonly selectNodesOnDrag: _angular_core.InputSignal; readonly panOnDrag: _angular_core.InputSignal; readonly minZoom: _angular_core.InputSignal; readonly maxZoom: _angular_core.InputSignal; readonly defaultViewport: _angular_core.InputSignal; readonly translateExtent: _angular_core.InputSignal; readonly preventScrolling: _angular_core.InputSignal; readonly nodeExtent: _angular_core.InputSignal; readonly defaultMarkerColor: _angular_core.InputSignal; readonly zoomOnScroll: _angular_core.InputSignal; readonly zoomOnPinch: _angular_core.InputSignal; readonly panOnScroll: _angular_core.InputSignal; readonly panOnScrollSpeed: _angular_core.InputSignal; readonly panOnScrollMode: _angular_core.InputSignal; readonly zoomOnDoubleClick: _angular_core.InputSignal; readonly edgeUpdaterRadius: _angular_core.InputSignal; readonly noDragClassName: _angular_core.InputSignal; readonly noWheelClassName: _angular_core.InputSignal; readonly noPanClassName: _angular_core.InputSignal; readonly fitView: _angular_core.InputSignal; readonly fitViewOptions: _angular_core.InputSignal; readonly connectOnClick: _angular_core.InputSignal; readonly attributionPosition: _angular_core.InputSignal; readonly proOptions: _angular_core.InputSignal; readonly elevateNodesOnSelect: _angular_core.InputSignal; readonly elevateEdgesOnSelect: _angular_core.InputSignal; readonly disableKeyboardA11y: _angular_core.InputSignal; readonly autoPanOnNodeDrag: _angular_core.InputSignal; readonly autoPanOnConnect: _angular_core.InputSignal; readonly connectionRadius: _angular_core.InputSignal; readonly backgroundVariant: _angular_core.InputSignal; readonly backgroundGap: _angular_core.InputSignal; readonly backgroundColor: _angular_core.InputSignal; readonly backgroundSize: _angular_core.InputSignal; readonly showBackground: _angular_core.InputSignal; readonly showMiniMap: _angular_core.InputSignal; readonly showControls: _angular_core.InputSignal; readonly showCoordinateLabels: _angular_core.InputSignal; readonly coordinateLabelInterval: _angular_core.InputSignal; readonly onNodeClick: _angular_core.OutputEmitterRef<[MouseEvent, Node]>; readonly onNodeDoubleClick: _angular_core.OutputEmitterRef<[MouseEvent, Node]>; readonly onNodeMouseEnter: _angular_core.OutputEmitterRef<[MouseEvent, Node]>; readonly onNodeMouseMove: _angular_core.OutputEmitterRef<[MouseEvent, Node]>; readonly onNodeMouseLeave: _angular_core.OutputEmitterRef<[MouseEvent, Node]>; readonly onNodeContextMenu: _angular_core.OutputEmitterRef<[MouseEvent, Node]>; readonly onNodeDragStart: _angular_core.OutputEmitterRef<[MouseEvent, Node, Node[]]>; readonly onNodeDrag: _angular_core.OutputEmitterRef<[MouseEvent, Node, Node[]]>; readonly onNodeDragStop: _angular_core.OutputEmitterRef<[MouseEvent, Node, Node[]]>; readonly onEdgeClick: _angular_core.OutputEmitterRef<[MouseEvent, Node]>; readonly onEdgeUpdate: _angular_core.OutputEmitterRef<[any, Connection]>; readonly onEdgeContextMenu: _angular_core.OutputEmitterRef<[MouseEvent, Edge]>; readonly onEdgeMouseEnter: _angular_core.OutputEmitterRef<[MouseEvent, Edge]>; readonly onEdgeMouseMove: _angular_core.OutputEmitterRef<[MouseEvent, Edge]>; readonly onEdgeMouseLeave: _angular_core.OutputEmitterRef<[MouseEvent, Edge]>; readonly onEdgeDoubleClick: _angular_core.OutputEmitterRef<[MouseEvent, Edge]>; readonly onEdgeUpdateStart: _angular_core.OutputEmitterRef<[MouseEvent, Edge, HandleType]>; readonly onEdgeUpdateEnd: _angular_core.OutputEmitterRef<[MouseEvent, Edge, HandleType]>; readonly onNodesChange: _angular_core.OutputEmitterRef<[NodeChange[]]>; readonly onEdgesChange: _angular_core.OutputEmitterRef<[EdgeChange[]]>; readonly onNodesDelete: _angular_core.OutputEmitterRef<[Node[]]>; readonly onEdgesDelete: _angular_core.OutputEmitterRef<[Edge[]]>; readonly onSelectionDragStart: _angular_core.OutputEmitterRef<[MouseEvent, Node[]]>; readonly onSelectionDrag: _angular_core.OutputEmitterRef<[MouseEvent, Node[]]>; readonly onSelectionDragStop: _angular_core.OutputEmitterRef<[MouseEvent, Node[]]>; readonly onSelectionStart: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onSelectionEnd: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onSelectionContextMenu: _angular_core.OutputEmitterRef<[MouseEvent, Node[]]>; readonly onConnect: _angular_core.OutputEmitterRef<[Connection]>; readonly onConnectStart: _angular_core.OutputEmitterRef<[MouseEvent, OnConnectStartParams]>; readonly onConnectEnd: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onClickConnectStart: _angular_core.OutputEmitterRef<[MouseEvent, OnConnectStartParams]>; readonly onClickConnectEnd: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onDragOver: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onDrop: _angular_core.OutputEmitterRef<[MouseEvent, string]>; readonly onInit: _angular_core.OutputEmitterRef<[ReactFlowInstance]>; readonly onMove: _angular_core.OutputEmitterRef<[MouseEvent, Viewport]>; readonly onMoveStart: _angular_core.OutputEmitterRef<[MouseEvent, Viewport]>; readonly onMoveEnd: _angular_core.OutputEmitterRef<[MouseEvent, Viewport]>; readonly onSelectionChange: _angular_core.OutputEmitterRef<[OnSelectionChangeParams]>; readonly onPaneScroll: _angular_core.OutputEmitterRef<[WheelEvent]>; readonly onPaneClick: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onPaneContextMenu: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onPaneMouseEnter: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onPaneMouseMove: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onPaneMouseLeave: _angular_core.OutputEmitterRef<[MouseEvent]>; readonly onError: _angular_core.OutputEmitterRef; readonly onNodeResizeEnd: _angular_core.OutputEmitterRef<{ nodeId: string; width: number; height: number; }>; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵdir: _angular_core.ɵɵDirectiveDeclaration; } declare class ReactFlowComponent extends NgAtomicComponent { protected readonly store: ReactFlowComponentStore; protected readonly el: ElementRef; private readonly vcr; private _root; private _nodeTypesCache; private _transitionTimer; private _prevNodePositions; private contentNodeTemplates; private _touchCleanup; private _ancestorScrollCleanup; /** * PR-G fix: drag end 直後の server-driven snap back を react flow internal state に強制反映する用。 * effect 内で常時 setNodes 呼ぶと updateNodeDimensions chain で NG0103 大量発生するため、 * onNodeDragStop event hook で drag 完了 800ms 後に one-shot で呼ぶ局所化。 */ private _instance; private _dragEndSnapBackTimer; readonly enableTouchPassthrough: _angular_core.InputSignal; /** Pre-computed React props — signal依存を分離してrender()を軽量化 */ private readonly reactFlowProps; constructor(); ngOnInit(): void; ngOnDestroy(): void; private setupTouchPassthrough; private emitTapAsNodeClick; /** * 祖先要素のスクロールをロックする。 * overflow:clip は .react-flow 自体のスクロールを防ぐが、 * 祖先のスクロールコンテナ(例: ScrollFrame の .contents)には効かない。 * ノード内 input 入力時のブラウザ自動スクロールを防ぐため、 * 全祖先の scroll イベントを監視して即座にリセットする。 */ private lockAncestorScroll; private cleanupTouchPassthrough; readonly nodeTypes: _angular_core.Signal; private applyTransitionClass; private render; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } interface GroupNodeData { label: string; status?: string; assignee?: string; task?: any; } interface NgNodeData { label: string; status: string; assignee: string; } declare function setAngularContext(injector: EnvironmentInjector, appRef: ApplicationRef): void; interface TemplateNodeData { [key: string]: any; } declare function createTemplateNodeComponent(template: TemplateRef, vcr: ViewContainerRef, onNodeResizeEnd?: (nodeId: string, width: number, height: number) => void): ({ data, selected, id }: { data: TemplateNodeData; selected?: boolean; id: string; }) => React__default.JSX.Element; declare const NODE_TYPES: { task: React.MemoExoticComponent<({ data }: { data: NgNodeData; selected?: boolean; }) => React.JSX.Element>; group: React.MemoExoticComponent<({ data }: { data: GroupNodeData; }) => React.JSX.Element>; }; declare class FlowNodeDirective { template: TemplateRef; type: string; constructor(template: TemplateRef); static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵdir: _angular_core.ɵɵDirectiveDeclaration; } export { FlowNodeDirective, NODE_TYPES, ReactFlowComponent, ReactFlowComponentStore, createTemplateNodeComponent, setAngularContext }; //# sourceMappingURL=xxmachina-components-extras-flow.d.ts.map