/* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
import{__decorate as t}from"tslib";import o from"../../../../core/Accessor.js";import{equals as r}from"../../../../core/arrayUtils.js";import{equalsMaybe as e}from"../../../../core/maybe.js";import{property as s,subclass as i}from"../../../../core/accessorSupport/decorators.js";import{equals as n}from"../../../../core/libs/gl-matrix-2/math/vec3.js";import{equals as c}from"../../../../geometry/support/ray.js";let p=class extends o{constructor(t){super(t)}clone(){return this}equals(t){return this.context?.type===t.context?.type&&(!this.context||!t.context||this.context.equals(t.context))&&this.id===t.id&&e(this.mapPoint,t.mapPoint)&&n(this.renderPoint,t.renderPoint)&&r(this.normal,t.normal)&&c(this.ray,t.ray)}};t([s({constructOnly:!0})],p.prototype,"context",void 0),t([s({constructOnly:!0})],p.prototype,"id",void 0),t([s({constructOnly:!0})],p.prototype,"mapPoint",void 0),t([s({constructOnly:!0})],p.prototype,"renderPoint",void 0),t([s({constructOnly:!0})],p.prototype,"normal",void 0),t([s({constructOnly:!0})],p.prototype,"ray",void 0),p=t([i("esri.views.3d.analysis.LineOfSight.LineOfSightIntersectionResult")],p);class a{constructor(t){this.graphic=t,this.type="graphic"}equals(t){return t.type===this.type&&this.graphic===t.graphic}}class y{constructor(){this.type="ground"}equals(t){return t.type===this.type}}const l=new y;export{a as LineOfSightIntersectionContextGraphic,p as LineOfSightIntersectionResult,l as lineOfSightIntersectionContextGround};
