/** * 基于DynamicGroup重新实现的泳池节点组件 * 充分利用DynamicGroup的分组管理能力,实现完整的泳道功能 */ import LogicFlow, { GraphModel } from '@logicflow/core'; import { DynamicGroupNodeModel, IGroupNodeProperties } from '../dynamic-group/model'; import { poolConfig } from './constant'; import NodeConfig = LogicFlow.NodeConfig; export declare class PoolModel extends DynamicGroupNodeModel { titleSize: number; poolConfig: typeof poolConfig; readonly isPool: boolean; _defaultLaneCreated: boolean; constructor(data: NodeConfig, graphModel: GraphModel); get isHorizontal(): boolean; initNodeData(data: LogicFlow.NodeConfig): void; addEventListeners(): void; /** * 获取需要移动的节点 * @param groupModel */ getNodesInGroup(groupModel: DynamicGroupNodeModel): string[]; /** * 初始化文本位置 - 根据布局方向设置文本位置 */ private updateTextPosition; /** * 根据子泳道自动调整泳池尺寸 */ resizePool(): void; /** * 重新调整所有泳道布局 * @param newLanePosition 添加位置(可选):'above'|'below'|'left'|'right' * @param newLaneId 新添加的泳道ID(可选) */ resizeChildrenWithNewLane(newLanePosition?: 'above' | 'below' | 'left' | 'right', newLaneId?: string): void; moveLane(lane: any, newX: any, newY: any): void; /** * 重新调整所有泳道布局 * @param newLanePosition 添加位置(可选):'above'|'below'|'left'|'right' * @param newLaneId 新添加的泳道ID(可选) */ resizeChildren(): void; /** * 获取子泳道 */ getLanes(): any[]; /** * 添加泳道的公共方法 * @param position 添加位置:'above'|'below'|'left'|'right' * @param laneData 泳道数据 */ addLane(position: 'above' | 'below' | 'left' | 'right', laneData?: any): any; setZIndex(zIndex: number): void; /** * 在上方添加泳道 */ addChildAbove(laneData?: any): any; /** * 在下方添加泳道 */ addChildBelow(laneData?: any): any; /** * 在左侧添加泳道 */ addChildLeft(laneData?: any): any; /** * 在右侧添加泳道(纵向布局专用) */ addChildRight(laneData?: any): any; /** * 创建默认泳道 */ createDefaultLane(laneConfig?: any): any; /** * 删除泳道 */ deleteChild(childId: string): void; getNodeStyle(): { [x: string]: unknown; fill?: string | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; radius?: number | undefined; rx?: number | undefined; ry?: number | undefined; width?: number | undefined; height?: number | undefined; path?: string | undefined; }; /** * 获取文本样式 */ getTextStyle(): { [x: string]: unknown; fill?: string | undefined; stroke?: string | undefined; strokeWidth?: number | undefined; radius?: number | undefined; rx?: number | undefined; ry?: number | undefined; width?: number | undefined; height?: number | undefined; path?: string | undefined; overflowMode?: "default" | "autoWrap" | "ellipsis" | undefined; textWidth?: number | undefined; background?: LogicFlow.CommonTheme | undefined; wrapPadding?: string | undefined; color?: string | undefined; fontSize: number; lineHeight?: number | undefined; textAnchor?: "middle" | "start" | "end" | undefined; dominantBaseline?: "middle" | "central" | "auto" | "text-bottom" | "alphabetic" | "ideographic" | "mathematical" | "hanging" | "text-top" | undefined; }; getData(): LogicFlow.NodeData; } declare const _default: { PoolModel: typeof PoolModel; }; export default _default;