/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["../../chunks/_rollupPluginBabelHelpers","../../chunks/tslib.es6","../../core/JSONSupport","../../core/maybe","../../core/accessorSupport/decorators/property","../../core/arrayUtils","../../core/has","../../core/accessorSupport/ensureType","../../core/accessorSupport/decorators/reader","../../core/accessorSupport/decorators/subclass","../../core/accessorSupport/decorators/writer","./networkEnums","./TravelMode"],(function(e,t,r,o,p,s,a,u,c,i,n,l,d){"use strict";let y=function(t){function r(e){var r;return(r=t.call(this,e)||this).accumulateAttributes=null,r.directionsLanguage=null,r.findBestSequence=null,r.preserveFirstStop=null,r.preserveLastStop=null,r.startTimeIsUTC=null,r.timeWindowsAreUTC=null,r.travelMode=null,r}e._inheritsLoose(r,t);var p=r.prototype;return p.readAccumulateAttributes=function(e){return o.isNone(e)?null:e.map((e=>l.impedanceAttributeNameJsonMap.fromJSON(e)))},p.writeAccumulateAttributes=function(e,t,r){!o.isNone(e)&&e.length&&(t[r]=e.map((e=>l.impedanceAttributeNameJsonMap.toJSON(e))))},r}(r.JSONSupport);t.__decorate([p.property({type:[String],json:{name:"accumulateAttributeNames",write:!0}})],y.prototype,"accumulateAttributes",void 0),t.__decorate([c.reader("accumulateAttributes")],y.prototype,"readAccumulateAttributes",null),t.__decorate([n.writer("accumulateAttributes")],y.prototype,"writeAccumulateAttributes",null),t.__decorate([p.property({type:String,json:{write:!0}})],y.prototype,"directionsLanguage",void 0),t.__decorate([p.property({type:Boolean,json:{write:!0}})],y.prototype,"findBestSequence",void 0),t.__decorate([p.property({type:Boolean,json:{write:!0}})],y.prototype,"preserveFirstStop",void 0),t.__decorate([p.property({type:Boolean,json:{write:!0}})],y.prototype,"preserveLastStop",void 0),t.__decorate([p.property({type:Boolean,json:{write:!0}})],y.prototype,"startTimeIsUTC",void 0),t.__decorate([p.property({type:Boolean,json:{write:!0}})],y.prototype,"timeWindowsAreUTC",void 0),t.__decorate([p.property({type:d,json:{write:!0}})],y.prototype,"travelMode",void 0),y=t.__decorate([i.subclass("esri.layers.support.RouteSettings")],y);return y}));
