import { Box, Plane3D, Vector3D } from '@awayjs/core';
import { BoundingVolumeBase } from './BoundingVolumeBase';
/**
 * BoundingBox represents a bounding box volume that has its planes aligned to the local coordinate axes of the bounded object.
 * This is useful for most sprites.
 */
export declare class BoundingBox extends BoundingVolumeBase {
    private _matrix3D;
    private _box;
    private _x;
    private _y;
    private _z;
    private _width;
    private _height;
    private _depth;
    private _centerX;
    private _centerY;
    private _centerZ;
    private _halfExtentsX;
    private _halfExtentsY;
    private _halfExtentsZ;
    /**
     * @inheritDoc
     */
    nullify(): void;
    /**
     * @inheritDoc
     */
    isInFrustum(planes: Array<Plane3D>, numPlanes: number): boolean;
    rayIntersection(position: Vector3D, direction: Vector3D, targetNormal: Vector3D): number;
    getBox(): Box;
    classifyToPlane(plane: Plane3D): number;
    _update(): void;
}
//# sourceMappingURL=BoundingBox.d.ts.map