import { type Mat4, type Vec3 } from "@aura3d/scene";
export interface CameraFrameBounds {
    readonly min: readonly [number, number, number];
    readonly max: readonly [number, number, number];
}
export interface CameraFrameViewport {
    readonly width: number;
    readonly height: number;
}
export interface PerspectiveCameraFrameOptions {
    readonly fovYRadians?: number;
    readonly paddingRatio?: number;
    readonly minDistance?: number;
    readonly nearPadding?: number;
    readonly farPadding?: number;
    readonly yawRadians?: number;
    readonly pitchRadians?: number;
}
export interface PerspectiveCameraFrame {
    readonly center: Vec3;
    readonly cameraPosition: Vec3;
    readonly near: number;
    readonly far: number;
    readonly fovYRadians: number;
    readonly aspect: number;
    readonly viewMatrix: Mat4;
    readonly projectionMatrix: Mat4;
    readonly viewProjectionMatrix: Mat4;
}
export declare function computePerspectiveCameraFrame(bounds: CameraFrameBounds, viewport: CameraFrameViewport, options?: PerspectiveCameraFrameOptions): PerspectiveCameraFrame;
//# sourceMappingURL=CameraFraming.d.ts.map