import type { Object3D } from 'three';
type CameraControllerCallback = (target: Object3D) => void;
export declare class CameraController {
    private _callback;
    private _updateAlways;
    private _listener;
    private _target;
    private _listenerAdded;
    constructor(_callback: CameraControllerCallback);
    removeTarget(): void;
    setTarget(target: Object3D | undefined): void;
    setUpdateAlways(newUpdateAlways: boolean): void;
    private _currentEventName;
    private _addCameraEvent;
    private _removeCameraEvent;
    private _executeCallback;
}
export {};
