import { Object3D } from 'three'; import { Observable } from '@zcomponent/core'; import { RotationHelper } from './gizmos/rotationHelper'; export interface TransformControlsPointerObject { x: number; y: number; button: number; } type TransformControlsGizmoPrivateGizmos = { ['combine']: Object3D; }; export type TransformPermissions = { rotation: { x: boolean; y: boolean; z: boolean; }; scale: { x: boolean; y: boolean; z: boolean; }; position: { x: boolean; y: boolean; z: boolean; }; }; export declare class TransformControlsGizmo extends Object3D { private isTransformControlsGizmo; type: string; rotationHelper: RotationHelper; uniformScale: boolean; private tempVector; private tempEuler; private alignVector; private zeroVector; private lookAtMatrix; private tempQuaternion; private tempQuaternion2; private identityQuaternion; private unitX; private unitY; private unitZ; private gizmo; picker: TransformControlsGizmoPrivateGizmos; private helper; private rotationAxis; private cameraPosition; private worldPositionStart; private worldQuaternionStart; private worldPosition; private worldQuaternion; private eye; private camera; private enabled; private axis; private mode; space: 'world' | 'local'; combineMode: Observable<'scale' | 'rotate' | 'translate' | undefined>; currentCombineModeHover: Observable<'scale' | 'rotate' | 'translate' | undefined>; private size; private dragging; private showX; private showY; private showZ; transformPermissions: TransformPermissions; constructor(domElement: HTMLElement); updateMatrixWorld: () => void; dispose: () => void; } export {};