import { Point } from './point'; export declare enum VertexId { Corner = 0, VertexA = 1, otherCorner = 2, VertexB = 3 } type MinMax = { minx: number; miny: number; maxx: number; maxy: number; }; export declare class Parallelogram { isSeg: boolean; corner: Point; a: Point; b: Point; otherCorner: Point; aPlusCorner: Point; bPlusCorner: Point; aRot: Point; bRot: Point; abRot: number; baRot: number; contains(point: Point): boolean; get area(): number; vertex(vertexPar: VertexId): Point; static parallelogramOfTwo(box0: Parallelogram, box1: Parallelogram): Parallelogram; static pumpMinMax(mm: MinMax, p: Point): void; static intersect(parallelogram0: Parallelogram, parallelogram1: Parallelogram): boolean; static ParallelSegsIntersect(p0: Parallelogram, p1: Parallelogram): boolean; static separByB(p0: Parallelogram, p1: Parallelogram): boolean; static separByA(p0: Parallelogram, p1: Parallelogram): boolean; static parallelogramByCornerSideSide(corner: Point, sideA: Point, sideB: Point): Parallelogram; static getParallelogramOfAGroup(boxes: Parallelogram[]): Parallelogram; } export declare function allVerticesOfParall(p: Parallelogram): Generator; export {};