/* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
import{__decorate as e}from"tslib";import{JSONSupport as t}from"../core/JSONSupport.js";import{property as r,subclass as o}from"../core/accessorSupport/decorators.js";import a from"./SpatialReference.js";import{reader as n}from"../core/accessorSupport/decorators/reader.js";let s=class extends t{constructor(...e){super(...e),this.type=null,this.hasM=!1,this.hasZ=!1,this.spatialReference=a.WGS84}get cache(){return this.commitProperty("spatialReference"),{}}get extent(){return null}readSpatialReference(e,t){if(e instanceof a)return e;if(null!=e){const r=new a;return r.read(e,t),r}return e}clone(){return console.warn(".clone() is not implemented for "+this.declaredClass),null}clearCache(){this.notifyChange("cache")}getCacheValue(e){return this.cache[e]}setCacheValue(e,t){this.cache[e]=t}};e([r()],s.prototype,"type",void 0),e([r({readOnly:!0})],s.prototype,"cache",null),e([r({readOnly:!0})],s.prototype,"extent",null),e([r({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],s.prototype,"hasM",void 0),e([r({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],s.prototype,"hasZ",void 0),e([r({type:a,json:{write:!0},value:a.WGS84})],s.prototype,"spatialReference",void 0),e([n("spatialReference")],s.prototype,"readSpatialReference",null),s=e([o("esri.geometry.Geometry")],s);export{s as default};
