/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["exports","./core/accessorSupport/ensureType","./core/accessorSupport/extensions/serializableProperty/reader","./symbols/CIMSymbol","./symbols/ExtrudeSymbol3DLayer","./symbols/FillSymbol","./symbols/FillSymbol3DLayer","./symbols/Font","./symbols/IconSymbol3DLayer","./symbols/LabelSymbol3D","./symbols/LineSymbol3D","./symbols/LineSymbol3DLayer","./symbols/MarkerSymbol","./symbols/MeshSymbol3D","./symbols/ObjectSymbol3DLayer","./symbols/PathSymbol3DLayer","./symbols/PictureFillSymbol","./symbols/PictureMarkerSymbol","./symbols/PointSymbol3D","./symbols/PolygonSymbol3D","./symbols/SimpleFillSymbol","./symbols/SimpleLineSymbol","./symbols/SimpleMarkerSymbol","./symbols/Symbol","./symbols/Symbol3D","./symbols/Symbol3DLayer","./symbols/TextSymbol","./symbols/TextSymbol3DLayer","./symbols/WaterSymbol3DLayer","./symbols/WebStyleSymbol","./symbols/callouts/LineCallout3D","./chunks/LineCallout3DBorder"],(function(e,l,y,o,s,m,r,b,t,a,i,p,n,S,c,u,d,D,L,k,x,M,f,T,C,h,P,F,g,B,w,O){"use strict";function I(e){return e instanceof T}function W(e){if(!e)return!1;switch(e.type){case"picture-fill":case"picture-marker":case"simple-fill":case"simple-line":case"simple-marker":case"text":case"cim":return!0;default:return!1}}function j(e){if(!e)return!1;switch(e.type){case"label-3d":case"line-3d":case"mesh-3d":case"point-3d":case"polygon-3d":return!0;default:return!1}}const R={base:T,key:"type",typeMap:{"simple-fill":x,"picture-fill":d,"picture-marker":D,"simple-line":M,"simple-marker":f,text:P,"label-3d":a,"line-3d":i,"mesh-3d":S,"point-3d":L,"polygon-3d":k,"web-style":B,cim:o},errorContext:"symbol"},v={base:T,key:"type",typeMap:{"picture-marker":D,"simple-marker":f,text:P,"web-style":B,cim:o},errorContext:"symbol"},E=y.createTypeReader({types:R}),_={base:T,key:"type",typeMap:{"simple-fill":x,"picture-fill":d,"picture-marker":D,"simple-line":M,"simple-marker":f,text:P,"line-3d":i,"mesh-3d":S,"point-3d":L,"polygon-3d":k,"web-style":B,cim:o},errorContext:"symbol"},z={base:T,key:"type",typeMap:{text:P,"label-3d":a},errorContext:"symbol"},q={base:T,key:"type",typeMap:{"label-3d":a,"line-3d":i,"mesh-3d":S,"point-3d":L,"polygon-3d":k,"web-style":B},errorContext:"symbol"},A={base:T,key:"type",typeMap:{"line-3d":i,"mesh-3d":S,"point-3d":L,"polygon-3d":k,"web-style":B,cim:o},errorContext:"symbol"},G={base:T,key:"type",typeMap:{"label-3d":a},errorContext:"symbol"},H=l.ensureOneOfType(R);e.CIMSymbol=o,e.ExtrudeSymbol3DLayer=s,e.BaseFillSymbol=m,e.FillSymbol3DLayer=r,e.Font=b,e.IconSymbol3DLayer=t,e.LabelSymbol3D=a,e.LineSymbol3D=i,e.LineSymbol3DLayer=p,e.BaseMarkerSymbol=n,e.MeshSymbol3D=S,e.ObjectSymbol3DLayer=c,e.PathSymbol3DLayer=u,e.PictureFillSymbol=d,e.PictureMarkerSymbol=D,e.PointSymbol3D=L,e.PolygonSymbol3D=k,e.SimpleFillSymbol=x,e.SimpleLineSymbol=M,e.SimpleMarkerSymbol=f,e.BaseSymbol=T,e.BaseSymbol3D=C,e.BaseSymbol3DLayer=h,e.TextSymbol=P,e.TextSymbol3DLayer=F,e.WaterSymbol3DLayer=g,e.WebStyleSymbol=B,e.LineCallout3D=w,e.LineCallout3DBorder=O.LineCallout3DBorder,e.ensureType=H,e.isSymbol=I,e.isSymbol2D=W,e.isSymbol3D=j,e.readSymbol=E,e.symbolTypes=R,e.symbolTypes3D=q,e.symbolTypesCluster=v,e.symbolTypesLabel=z,e.symbolTypesLabel3D=G,e.symbolTypesRenderer=_,e.symbolTypesRenderer3D=A,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
