import { Point } from '../../math/geometry/point'; import { Size, Rectangle } from '../../math/geometry/rectangle'; import { GeomNode } from '../core/geomNode'; import { MstEdge } from './MstOnDelaunayTriangulation'; import { OverlapRemovalSettings } from './OverlapRemovalSettings'; export declare class GTreeOverlapRemoval { _settings: OverlapRemovalSettings; _overlapForLayers: boolean; lastRunNumberIterations: number; _nodes: GeomNode[]; constructor(settings: OverlapRemovalSettings, nodes: GeomNode[]); static RemoveOverlaps(nodes: GeomNode[], nodeSeparation: number): void; RemoveOverlaps(): void; RemoveOverlapsOnTinyGraph(): void; GetIdealDistanceBetweenTwoNodes(a: GeomNode, b: GeomNode): number; static AvgEdgeLength(nodes: GeomNode[]): number; OneIteration(nodePositions: Point[], nodeSizes: Size[], scanlinePhase: boolean): boolean; FindProximityEdgesWithSweepLine(proximityEdges: Array, nodeSizes: Size[], nodePositions: Point[]): number; static GetIdealEdge(i: number, j: number, point1: Point, point2: Point, nodeSizes: Size[]): MstEdge; static GetIdealEdgeLength(i: number, j: number, point1: Point, point2: Point, nodeBoxes: Size[], wrapTRes: { overlapFactor: number; }): number; static GetDistanceRects(a: Rectangle, b: Rectangle): number; static MoveNodePositions(treeEdges: Array, nodePositions: Point[], rootNodeId: number): void; static MoveNode(standingNode: number, movingNode: number, oldPos: Point[], newPos: Point[], visited: Set, idealDist: number): void; GetLastRunIterations(): number; }