import { Vector3D } from '../geom/Vector3D';
import { CoordinateSystem } from './CoordinateSystem';
import { ProjectionBase } from './ProjectionBase';
export declare class PerspectiveProjection extends ProjectionBase {
    constructor(fieldOfView?: number, coordinateSystem?: CoordinateSystem);
    /**
     *
     */
    get fieldOfView(): number;
    set fieldOfView(value: number);
    /**
     *
     * @param position
     * @param target
     */
    project(position: Vector3D, target?: Vector3D): Vector3D;
    /**
     *
     * @param nX
     * @param nY
     * @param sZ
     * @param target
     */
    unproject(nX: number, nY: number, sZ: number, target?: Vector3D): Vector3D;
    /**
     *
     * @returns {PerspectiveProjection}
     */
    clone(): ProjectionBase;
    /**
     *
     * @private
     */
    protected _updateFrustumMatrix3D(): void;
    protected _updateProperties(): void;
}
//# sourceMappingURL=PerspectiveProjection.d.ts.map