import { Viewer } from './Viewer'; import { PluginBase } from './base/PluginBase'; import * as BABYLON from '@babylonjs/core'; import { IViewPort, Ctrl, OnCtrlChangedArgs } from './Types'; import { PreviewControl } from './controls/PreviewControl'; declare class CameraControl extends PluginBase { DefaultControl: PreviewControl; Controls: { [key: string]: Ctrl; }; onControlChanged: BABYLON.Observable; getClassName(): string; toJson(): Object; parseJson(json: Object): void; constructor(viewer: Viewer); init(): void; private _currControl; get CurrControl(): Ctrl; set CurrControl(ctrl: Ctrl); getNodeBounding(node: BABYLON.TransformNode): BABYLON.Nullable; createDefault(): void; private detach; private attach; private sameControl; switchDefault(): void; getViewPort(): IViewPort; setViewPort(vp: IViewPort, animation: boolean): void; zoomObjectToFit(obj: String | BABYLON.AbstractMesh | BABYLON.TransformNode): void; switchFree(): void; switchPreview(): void; switchFirst(): void; switchThird(): void; switchFly(): void; } export { CameraControl };