/* COPYRIGHT Esri - https://js.arcgis.com/5.0/LICENSE.txt */
import{__decorate as t}from"tslib";import{property as e,subclass as o}from"../core/accessorSupport/decorators.js";import i from"./Symbol3DLayer.js";import r from"./support/Symbol3DMaterial.js";import{lineJoins as l,pathCaps as a}from"./support/symbolLayerUtils3D.js";import{enumeration as s}from"../core/accessorSupport/decorators/enumeration.js";import{reader as p}from"../core/accessorSupport/decorators/reader.js";var h;let n=class extends i{static{h=this}constructor(t){super(t),this.material=null,this.castShadows=!0,this.type="path",this.profile="circle",this.join="miter",this.cap="butt",this.width=void 0,this.height=void 0,this.anchor="center",this.profileRotation="all"}readWidth(t,e){return null!=t?t:null==e.height&&null!=e.size?e.size:void 0}readHeight(t,e){return null!=t?t:null==e.width&&null!=e.size?e.size:void 0}clone(){return new h({enabled:this.enabled,material:null!=this.material?this.material.clone():null,castShadows:this.castShadows,profile:this.profile,join:this.join,cap:this.cap,width:this.width,height:this.height,profileRotation:this.profileRotation,anchor:this.anchor})}};t([e({type:r,json:{write:!0}})],n.prototype,"material",void 0),t([e({type:Boolean,nonNullable:!0,json:{write:!0,default:!0}})],n.prototype,"castShadows",void 0),t([s({Path:"path"},{readOnly:!0})],n.prototype,"type",void 0),t([e({type:["circle","quad"],nonNullable:!0,json:{write:!0,default:"circle"}})],n.prototype,"profile",void 0),t([e({type:l,nonNullable:!0,json:{write:!0,default:"miter"}})],n.prototype,"join",void 0),t([e({type:a,nonNullable:!0,json:{write:!0,default:"butt"}})],n.prototype,"cap",void 0),t([e({type:Number,json:{write:{enabled:!0,target:{width:{type:Number},size:{type:Number}}}}})],n.prototype,"width",void 0),t([p("width",["width","size","height"])],n.prototype,"readWidth",null),t([e({type:Number,json:{write:!0}})],n.prototype,"height",void 0),t([p("height",["height","size","width"])],n.prototype,"readHeight",null),t([e({type:["center","bottom","top"],nonNullable:!0,json:{write:!0,default:"center"}})],n.prototype,"anchor",void 0),t([e({type:["heading","all"],nonNullable:!0,json:{write:!0,default:"all"}})],n.prototype,"profileRotation",void 0),n=h=t([o("esri.symbols.PathSymbol3DLayer")],n);export{n as default};
