/*
All material copyright Esri, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
*/
import{__decorate as e}from"tslib";import{clone as r}from"../../core/lang.js";import{lengthUnitsJSONMap as t}from"../../core/units.js";import{property as o,subclass as i}from"../../core/accessorSupport/decorators.js";import s from"../../geometry/Point.js";import{getJsonType as p}from"../../geometry/support/jsonTypeUtils.js";import m from"./BaseImageMeasureParameters.js";import{measureOperationJSONMap as a}from"./imageMeasureUtils.js";import{writer as n}from"../../core/accessorSupport/decorators/writer.js";var y;let l=y=class extends m{constructor(e){super(e),this.type="height",this.fromGeometry=null,this.toGeometry=null,this.operationType="base-and-top",this.linearUnit="meters"}writeFromGeometry(e,r,t){null!=e&&(r.geometryType=p(e),r[t]=e.toJSON())}get measureOperation(){return this.operationType}clone(){return new y(r({fromGeometry:this.fromGeometry,toGeometry:this.toGeometry,operationType:this.operationType,linearUnit:this.linearUnit,mosaicRule:this.mosaicRule,pixelSize:this.pixelSize,raster:this.raster}))}};e([o({type:s,json:{read:!0}})],l.prototype,"fromGeometry",void 0),e([n("fromGeometry")],l.prototype,"writeFromGeometry",null),e([o({type:s,json:{read:!0,write:!0}})],l.prototype,"toGeometry",void 0),e([o({type:a.apiValues,json:{write:a.write}})],l.prototype,"measureOperation",null),e([o({json:{read:!0}})],l.prototype,"operationType",void 0),e([o({type:String,json:{read:t.read,write:t.write}})],l.prototype,"linearUnit",void 0),l=y=e([i("esri.rest.support.ImageHeightParameters")],l);export{l as default};
