/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["require","exports","../../core/Error","../../core/maybe"],(function(e,r,i,a){"use strict";const s=e=>Object.freeze(Object.defineProperty({__proto__:null,default:e},Symbol.toStringTag,{value:"Module"})),o=()=>new Promise(((r,i)=>e(["./layers/TileLayerView3D"],(e=>r(s(e))),i))),l=()=>new Promise(((r,i)=>e(["./layers/ElevationLayerView3D"],(e=>r(s(e))),i))),n={"base-dynamic":()=>new Promise(((r,i)=>e(["./layers/BaseDynamicLayerView3D"],(e=>r(s(e))),i))),"base-elevation":l,"base-tile":o,"bing-maps":o,"building-scene":()=>new Promise(((r,i)=>e(["./layers/BuildingSceneLayerView3D"],(e=>r(s(e))),i))),csv:()=>new Promise(((r,i)=>e(["./layers/CSVLayerView3D"],(e=>r(s(e))),i))),elevation:l,feature:()=>new Promise(((r,i)=>e(["./layers/FeatureLayerView3D"],(e=>r(s(e))),i))),geojson:()=>new Promise(((r,i)=>e(["./layers/GeoJSONLayerView3D"],(e=>r(s(e))),i))),graphics:()=>new Promise(((r,i)=>e(["./layers/GraphicsLayerView3D"],(e=>r(s(e))),i))),group:()=>new Promise(((r,i)=>e(["../layers/GroupLayerView"],(e=>r(s(e))),i))),imagery:()=>new Promise(((r,i)=>e(["./layers/ImageryLayerView3D"],(e=>r(s(e))),i))),"integrated-mesh":()=>new Promise(((r,i)=>e(["./layers/IntegratedMeshLayerView3D"],(e=>r(s(e))),i))),"line-of-sight":()=>new Promise(((r,i)=>e(["./layers/LineOfSightLayerView3D"],(e=>r(s(e))),i))),"map-image":()=>new Promise(((r,i)=>e(["./layers/MapImageLayerView3D"],(e=>r(s(e))),i))),media:()=>new Promise(((r,i)=>e(["./layers/MediaLayerView3D"],(e=>r(s(e))),i))),"ogc-feature":()=>new Promise(((r,i)=>e(["./layers/OGCFeatureLayerView3D"],(e=>r(s(e))),i))),"open-street-map":o,"point-cloud":()=>new Promise(((r,i)=>e(["./layers/PointCloudLayerView3D"],(e=>r(s(e))),i))),voxel:()=>new Promise(((r,i)=>e(["./layers/VoxelLayerView3D"],(e=>r(s(e))),i))),route:()=>new Promise(((r,i)=>e(["./layers/RouteLayerView3D"],(e=>r(s(e))),i))),scene:r=>null==r.profile||"mesh-pyramids"===r.profile?new Promise(((r,i)=>e(["./layers/SceneLayerView3D"],(e=>r(s(e))),i))):new Promise(((r,i)=>e(["./layers/SceneLayerGraphicsView3D"],(e=>r(s(e))),i))),stream:()=>new Promise(((r,i)=>e(["./layers/StreamLayerView3D"],(e=>r(s(e))),i))),tile:o,"imagery-tile":()=>new Promise(((r,i)=>e(["./layers/ImageryTileLayerView3D"],(e=>r(s(e))),i))),"vector-tile":()=>new Promise(((r,i)=>e(["./layers/VectorTileLayerView3D"],(e=>r(s(e))),i))),wcs:()=>new Promise(((r,i)=>e(["./layers/ImageryTileLayerView3D"],(e=>r(s(e))),i))),"web-tile":o,wfs:()=>new Promise(((r,i)=>e(["./layers/WFSLayerView3D"],(e=>r(s(e))),i))),wms:()=>new Promise(((r,i)=>e(["./layers/WMSLayerView3D"],(e=>r(s(e))),i))),wmts:()=>new Promise(((r,i)=>e(["./layers/WMTSLayerView3D"],(e=>r(s(e))),i))),"geo-rss":null,kml:null,"map-notes":null,"subtype-group":null,unknown:null,unsupported:null};function y(e){const r=e.declaredClass?e.declaredClass.slice(e.declaredClass.lastIndexOf(".")+1):"Unknown",a=r.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();return new i(`${a}:view-not-supported`,`${r} is not supported in 3D`)}const w={hasLayerViewModule:e=>a.isSome(n[e.type]),importLayerView:e=>{const r=n[e.type];if(a.isNone(r))throw y(e);return r(e)}};r.layerView3DImporter=w,Object.defineProperties(r,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
