/* COPYRIGHT Esri - https://js.arcgis.com/5.1.0/LICENSE.txt */
import{Manipulator3D as a}from"../../Manipulator3D.js";class t{constructor(){this._available=!0}set location(a){this._forEachManipulator3D(t=>t.location=a)}set elevationAlignedLocation(a){this._forEachManipulator3D(t=>t.elevationAlignedLocation=a)}set elevationInfo(a){this._forEachManipulator3D(t=>t.elevationInfo=a)}get renderLocation(){let a;return this._forEachManipulator3D(t=>{a||(a=t.renderLocation)}),a}set renderLocation(a){this._forEachManipulator3D(t=>t.renderLocation=a)}get available(){return this._available}set available(a){this._available=a,this._forEachManipulator3D(t=>t.available=a)}get hovering(){return this.someManipulator(a=>a.hovering)}get grabbing(){return this.someManipulator(a=>a.grabbing)}get dragging(){return this.someManipulator(a=>a.dragging)}get selected(){return this.someManipulator(a=>a.selected)}hasManipulator(a){return this.someManipulator(t=>t===a)}someManipulator(a){let t=!1;return this.forEachManipulator(o=>{!t&&a(o)&&(t=!0)}),t}_forEachManipulator3D(t){this.forEachManipulator((o,e)=>{o instanceof a&&t(o,e)})}}export{t as Manipulation};
