import type { TgdMat4, TgdVec3 } from ".";
import { TgdVec4 } from ".";
import type { ArrayNumber3, ArrayNumber4 } from "./types";
export declare class TgdBoundingBox {
    private xMin;
    private yMin;
    private zMin;
    private xMax;
    private yMax;
    private zMax;
    constructor(...points: ArrayNumber3[]);
    get min(): ArrayNumber3;
    get max(): ArrayNumber3;
    get center(): ArrayNumber3;
    get size(): ArrayNumber3;
    copyFrom(bbox: {
        min: ArrayNumber3;
        max: ArrayNumber3;
    }): this;
    clone(transfoMatrix?: TgdMat4): TgdBoundingBox;
    containsPoint([x, y, z]: ArrayNumber3 | ArrayNumber4 | TgdVec3 | TgdVec4): boolean;
    containsBBox({ min, max, }: {
        min: ArrayNumber3 | ArrayNumber4 | TgdVec3 | TgdVec4;
        max: ArrayNumber3 | ArrayNumber4 | TgdVec3 | TgdVec4;
    }): boolean;
    addBBox(bbox: {
        min: ArrayNumber3;
        max: ArrayNumber3;
    }): this;
    addPoint(x: number, y: number, z: number): this;
    addSphere(x: number, y: number, z: number, r: number): this;
    makeContainingCube(): TgdBoundingBox;
    debug(caption?: string): void;
}
//# sourceMappingURL=bounding-box.d.ts.map