import { Point } from '../../math/geometry/point'; import { Polyline } from '../../math/geometry/polyline'; import { PolylinePoint } from '../../math/geometry/polylinePoint'; export declare class Polygon { private polyline; static mkFromPoints(pts: Point[]): Polygon; get Polyline(): Polyline; points: PolylinePoint[]; constructor(polyline: Polyline); Next(i: number): number; Prev(i: number): number; get count(): number; Module(i: number): number; pp(i: number): PolylinePoint; pnt(i: number): Point; toString(): string; Median(p1: number, p2: number): number; FindTheFurthestVertexFromBisector(p1: number, p2: number, bisectorPivot: Point, bisectorRay: Point): number; static TestPolygonDist(a: Polygon, b: Polygon): number; static Distance(a: Polygon, b: Polygon): { p: Point; q: Point; dist: number; }; static DistanceOnly(a: Polygon, b: Polygon): number; static PolygonIsLegalDebug(a: Polygon): boolean; static DistancePoint(poly: Polygon, b: Point): number; GetTangentPoints(t: { leftTangentPoint: number; rightTangentPoint: number; }, point: Point): void; GetSequenceDelegate(point: Point): (u: number) => number; }