/*
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{JSONMap as i}from"../../core/jsonMap.js";import{JSONSupport as t}from"../../core/JSONSupport.js";import{property as a,subclass as r}from"../../core/accessorSupport/decorators.js";import{enumeration as o}from"../../core/accessorSupport/decorators/enumeration.js";const s=new i({esriClassifyEqualInterval:"equal-interval",esriClassifyManual:"manual",esriClassifyNaturalBreaks:"natural-breaks",esriClassifyQuantile:"quantile",esriClassifyStandardDeviation:"standard-deviation",esriClassifyDefinedInterval:"defined-interval"}),n=new i({esriNormalizeByLog:"log",esriNormalizeByPercentOfTotal:"percent-of-total",esriNormalizeByField:"field"});let l=class extends t{constructor(e){super(e),this.type="class-breaks-definition",this.breakCount=null,this.classificationField=null,this.classificationMethod=null,this.normalizationField=null,this.normalizationType=null}set standardDeviationInterval(e){"standard-deviation"===this.classificationMethod&&this._set("standardDeviationInterval",e)}set definedInterval(e){"defined-interval"===this.classificationMethod&&this._set("definedInterval",e)}};e([o({classBreaksDef:"class-breaks-definition"})],l.prototype,"type",void 0),e([a({json:{write:!0}})],l.prototype,"breakCount",void 0),e([a({json:{write:!0}})],l.prototype,"classificationField",void 0),e([a({type:String,json:{read:s.read,write:s.write}})],l.prototype,"classificationMethod",void 0),e([a({json:{write:!0}})],l.prototype,"normalizationField",void 0),e([a({json:{read:n.read,write:n.write}})],l.prototype,"normalizationType",void 0),e([a({value:null,json:{write:!0}})],l.prototype,"standardDeviationInterval",null),e([a({value:null,json:{write:!0}})],l.prototype,"definedInterval",null),l=e([r("esri.rest.support.ClassBreaksDefinition")],l);export{l as default};
