/** @private Polygon Math */ import type { Penetration } from "../ai/steer"; import { type Rect } from "./rect"; import { type Vec2 } from "./vec2"; export type Poly = { points: Vec2[]; _edges: { A: Vec2; B: Vec2; normal: Vec2; dir: Vec2; length: number; }[]; }; export declare function poly_from_rect(rect: Rect, theta?: number): Poly; export declare function poly_from_points(inputPoints: Vec2[]): Poly; export declare function collisionSurface(poly: Poly, p: Vec2): Penetration; export declare function computeSignedArea(pts: Vec2[]): number; export declare function findSegmentAtPoint(points: Vec2[], click: Vec2, eps?: number): number; export declare function closestPointOnSegment(P: Vec2, A: Vec2, B: Vec2): { point: { x: number; y: number; }; t: number; }; export declare function pointInPolygon(pt: Vec2, poly: Poly): boolean; export declare function advanceAlongPath(path: Poly, startIndex: number, startPoint: Vec2, distance: number): { point: Vec2; index: number; }; export declare function lateralOffset(p: Vec2, a: Vec2, b: Vec2): { offset: number; normal: Vec2; closest: Vec2; }; export declare function findClosestSegmentIndex(p: Vec2, path: Poly, hint?: number): number; //# sourceMappingURL=polygon.d.ts.map