import CameraControls from 'camera-controls';
export declare class SpeckleCameraControls extends CameraControls {
    private _didDolly;
    private _didDollyLastFrame;
    _isTrucking: boolean;
    private _hasRestedLastFrame;
    private _didZoom;
    private overrideDollyLerpRatio;
    private overrideZoomLerpRatio;
    static install(): void;
    get hasRested(): boolean;
    set isTrucking(value: boolean);
    protected _dollyInternal: (delta: number, x: number, y: number) => void;
    protected _zoomInternal: (delta: number, x: number, y: number) => void;
    /**
     * Zoom in/out camera to given scale. The value overwrites camera zoom.
     * Limits set with .minZoom and .maxZoom
     * @param zoom
     * @param enableTransition
     * @category Methods
     */
    zoomTo(zoom: number, enableTransition?: boolean, lerpRatio?: number): Promise<void>;
    /**
     * Dolly in/out camera position to given distance.
     * @param distance Distance of dolly.
     * @param enableTransition Whether to move smoothly or immediately.
     * @category Methods
     */
    dollyTo(distance: number, enableTransition?: boolean, lerpRatio?: any): Promise<void>;
    update(delta: any): boolean;
}
