/* 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 s from"../../../networks/support/CircuitPath.js";import n from"../circuits/support/CircuitTraceResult.js";import i from"./AggregatedGeometry.js";import p from"./FunctionResult.js";import l from"./NetworkElement.js";import a from"./TelecomNetworkElement.js";import{reader as m}from"../../../core/accessorSupport/decorators/reader.js";import{writer as u}from"../../../core/accessorSupport/decorators/writer.js";let d=class extends t{constructor(e){super(e),this.aggregatedGeometry=null,this.circuits=null,this.elements=null,this.globalFunctionResults=null,this.kFeaturesForKNNFound=!1,this.paths=null,this.startingPointsIgnored=!1,this.warnings=null}readNetworkElements(e,t){return null!=t.elements&&Array.isArray(t.elements)?t.elements.map(e=>"firstUnit"in e&&"lastUnit"in e?new a({...e}):new l({...e})):[]}writeNetworkElements(e,t){t.elements=e.map(e=>e.toJSON())}};e([r({type:i,json:{write:!0},readOnly:!0})],d.prototype,"aggregatedGeometry",void 0),e([r({type:[n],json:{write:!0},readOnly:!0})],d.prototype,"circuits",void 0),e([r({type:[l],json:{write:!0},readOnly:!0})],d.prototype,"elements",void 0),e([m("elements")],d.prototype,"readNetworkElements",null),e([u("elements")],d.prototype,"writeNetworkElements",null),e([r({type:[p],json:{write:!0},readOnly:!0})],d.prototype,"globalFunctionResults",void 0),e([r({type:Boolean,json:{write:!0},readOnly:!0})],d.prototype,"kFeaturesForKNNFound",void 0),e([r({type:[s],json:{write:!0},readOnly:!0})],d.prototype,"paths",void 0),e([r({type:Boolean,json:{write:!0},readOnly:!0})],d.prototype,"startingPointsIgnored",void 0),e([r({type:[String],json:{write:!0},readOnly:!0})],d.prototype,"warnings",void 0),d=e([o("esri.rest.networks.support.TraceResult")],d);export{d as default};
