import type { AABB } from '@antv/g'; import type { Anchor, NodeLikeData, Placement, Point, RelativePlacement } from '../types'; /** * 获取节点/ combo 的位置坐标 * * Get the position of node/combo * @param datum - 节点/ combo 的数据 | data of node/combo * @returns - 坐标 | position */ export declare function positionOf(datum: NodeLikeData): Point; /** * 检查数据是否有位置坐标 * * Check if the data has a position coordinate * @param datum - 节点/ combo 的数据 | data of node/combo * @returns - 是否有位置坐标 | Whether there is a position coordinate */ export declare function hasPosition(datum: NodeLikeData): boolean; /** * 获取相对位置坐标 * * Get position by relative placement * @param bbox - 元素包围盒 | element bounding box * @param placement - 相对于元素的位置 | Point relative to element * @returns - 坐标 | position */ export declare function getXYByRelativePlacement(bbox: AABB, placement: RelativePlacement): Point; /** * 获取位置坐标 * * Get position by placement * @param bbox - 元素包围盒 | element bounding box * @param placement - 相对于元素的位置 | Point relative to element * @returns - 坐标 | position */ export declare function getXYByPlacement(bbox: AABB, placement?: Placement): Point; /** * 获取锚点坐标 * * Get anchor position * @param bbox - 元素包围盒 | element bounding box * @param anchor - 锚点位置 | Anchor * @returns - 坐标 | position */ export declare function getXYByAnchor(bbox: AABB, anchor: Anchor): Point; /** * 通过 rect points 路径点获取 position 方位配置. * * The rect points command is used to obtain the position and orientation configuration. * @param points Points * @returns `{ left: number; right: number; top: number; bottom: number }` */ export declare const getPositionByRectPoints: (points: Point[]) => { left: number; right: number; top: number; bottom: number; };