import { Vector3 } from "three";
import { CSG } from "./CSG";
import { Polygon } from "./math/Polygon3";
import { Side } from "./math/Side";
import { Vector2D } from "./math/Vector2";
import { Vector3D } from "./math/Vector3";
/**
 * Class CAG
 * Holds a solid area geometry like CSG but 2D.
 * Each area consists of a number of sides.
 * Each side is a line between 2 points.
 */
export declare class CAG {
    sides: Side[];
    isCanonicalized: boolean;
    constructor(sides?: Side[]);
    fromPoints(pts: Vector3[]): this;
    flipped(): CAG;
    getBounds(): Vector2D[];
    canonicalized(): CAG;
    extrude(offsetVector: Vector3D): CSG;
    private toCSGWall;
    toPolygons(bottom?: boolean): Polygon[];
}
//# sourceMappingURL=CAG.d.ts.map