import { Point, Rectangle, Direction } from '../../math/geometry'; import { VisibilityEdge } from '../visibility/VisibilityEdge'; import { VisibilityVertex } from '../visibility/VisibilityVertex'; import { TransientGraphUtility } from './TransientGraphUtility'; export declare class FreePoint { Vertex: VisibilityVertex; get Point(): Point; IsOverlapped: boolean; get InitialWeight(): number; OutOfBoundsDirectionFromGraph: Direction; get IsOutOfBounds(): boolean; private maxVisibilitySegmentsAndCrossings; constructor(transUtil: TransientGraphUtility, point: Point); GetVertex(transUtil: TransientGraphUtility, point: Point): void; AddEdgeToAdjacentEdge(transUtil: TransientGraphUtility, targetEdge: VisibilityEdge, dirToExtend: Direction, limitRect: Rectangle): VisibilityVertex; AddToAdjacentVertex(transUtil: TransientGraphUtility, targetVertex: VisibilityVertex, dirToExtend: Direction, limitRect: Rectangle): void; ExtendEdgeChain(transUtil: TransientGraphUtility, targetVertex: VisibilityVertex, dirToExtend: Direction, limitRect: Rectangle): void; private GetSegmentAndCrossings; MaxVisibilityInDirectionForNonOverlappedFreePoint(dirToExtend: Direction, transUtil: TransientGraphUtility): Point; AddOobEdgesFromGraphCorner(transUtil: TransientGraphUtility, cornerPoint: Point): void; RemoveFromGraph(): void; toString(): string; }