import { EventEmitter, h } from '../../stencil-public-runtime'; import { Euler, Matrix4, Quaternion, Vector3 } from '@vertexvis/geometry'; import { HTMLDomRendererPositionableElement } from '../../interfaces'; export declare class ViewerDomGroup implements HTMLDomRendererPositionableElement { /** * The local 3D position of where this element is located. */ position: Vector3.Vector3; /** * @ignore */ protected handlePositionChange(): void; /** * The local 3D position of where this element is located, as a JSON string. * JSON representation can either be in the format of `[x, y, z]` or `{"x": 0, * "y": 0, "z": 0}`. */ positionJson: string; /** * @ignore */ protected handlePositionJsonChanged(): void; /** * An event that is emitted when any property on the dom group changes */ propertyChange: EventEmitter; /** * The local rotation of this element in Euler angles. */ rotation?: Euler.Euler; /** * @ignore */ protected handleRotationChanged(): void; /** * The local rotation of this element in Euler angles, as a JSON string. JSON * representation can either be `[x, y, z, order]` or `{"x": 0, "y": 0, "z": * 0, "order": "xyz"}`. */ rotationJson?: string; /** * @ignore */ protected handleRotationJsonChanged(): void; /** * The local rotation of this element. */ quaternion: Quaternion.Quaternion; /** * @ignore */ protected handleQuaternionChange(): void; /** * The local rotation of this element, as a JSON string. JSON * representation can either be `[x, y, z, w]` or `{"x": 0, "y": 0, "z": * 0, "w": 1}`. */ quaternionJson: string; /** * @ignore */ protected handleQuaternionJsonChanged(): void; /** * The local scale of this element. */ scale: Vector3.Vector3; /** * @ignore */ protected handleScaleChange(): void; /** * The local scale of this element, as a JSON string. JSON string * representation can either be in the format of `[x, y, z]` or `{"x": 0, "y": * 0, "z": 0}`. */ scaleJson: string; /** * @ignore */ protected handleScaleJsonChanged(): void; /** * @ignore */ protected handleMatrixChanged(newMatrix: Matrix4.Matrix4, oldMatrix: Matrix4.Matrix4): void; /** * The local matrix of this element. */ matrix: Matrix4.Matrix4; /** * @ignore */ protected componentWillLoad(): void; /** * @ignore */ protected componentShouldUpdate(): boolean; private syncProperties; private syncPosition; private syncRotation; private syncQuaternionWithRotation; private syncQuaternion; private syncScale; private syncMatrix; private parseJson; /** * @ignore */ protected render(): h.JSX.IntrinsicElements; }