import { ObservablePoint } from "@pixi/math";
import { Camera } from "./camera";
/**
 * Allows the user to control the camera by orbiting the target.
 */
export declare class CameraOrbitControl {
    camera: Camera;
    private _grabbed;
    private _dampingAngles;
    private _distance;
    private _dampingDistance;
    private _angles;
    /**
     * Orientation euler angles (x-axis and y-axis). The angle for the x-axis
     * will be clamped between -85 and 85 degrees.
     */
    get angles(): ObservablePoint<undefined>;
    /** Value indicating if damping (inertia) is enabled, which can be used to give a sense of weight to the controls. Default is false. */
    enableDamping: boolean;
    /** The damping inertia used if enableDamping is true. Default is 0.1. */
    dampingFactor: number;
    /** Target position (x, y, z) to orbit. */
    target: {
        x: number;
        y: number;
        z: number;
    };
    /** Allows the camera to be controlled by user. */
    allowControl: boolean;
    /**
     * Creates a new camera orbit control.
     * @param element The element for listening to user events.
     * @param camera The camera to control. If not set, the main camera will be used
     * by default.
     */
    constructor(element: HTMLElement, camera?: Camera);
    /**
     * Updates the position and rotation of the camera.
     */
    updateCamera(): void;
    /**
     * Distance between camera and the target. Default value is 5.
     */
    get distance(): number;
    set distance(value: number);
}
