@itwin/core-common 4.0.0-dev.44 → 4.0.0-dev.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (951) hide show
  1. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  2. package/lib/cjs/AmbientOcclusion.js +55 -55
  3. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  4. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  5. package/lib/cjs/AnalysisStyle.js +165 -165
  6. package/lib/cjs/AnalysisStyle.js.map +1 -1
  7. package/lib/cjs/AuthorizationClient.d.ts +17 -17
  8. package/lib/cjs/AuthorizationClient.js +9 -9
  9. package/lib/cjs/AuthorizationClient.js.map +1 -1
  10. package/lib/cjs/BackendTypes.d.ts +12 -12
  11. package/lib/cjs/BackendTypes.js +9 -9
  12. package/lib/cjs/BackendTypes.js.map +1 -1
  13. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  14. package/lib/cjs/BackgroundMapProvider.js +67 -67
  15. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  16. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  17. package/lib/cjs/BackgroundMapSettings.js +154 -154
  18. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  19. package/lib/cjs/Base64EncodedString.d.ts +32 -32
  20. package/lib/cjs/Base64EncodedString.js +66 -66
  21. package/lib/cjs/Base64EncodedString.js.map +1 -1
  22. package/lib/cjs/BlobReader.d.ts +31 -31
  23. package/lib/cjs/BlobReader.js +84 -84
  24. package/lib/cjs/BlobReader.js.map +1 -1
  25. package/lib/cjs/BriefcaseTypes.d.ts +191 -191
  26. package/lib/cjs/BriefcaseTypes.js +95 -95
  27. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  28. package/lib/cjs/Camera.d.ts +42 -42
  29. package/lib/cjs/Camera.js +62 -62
  30. package/lib/cjs/Camera.js.map +1 -1
  31. package/lib/cjs/ChangedElements.d.ts +85 -85
  32. package/lib/cjs/ChangedElements.js +23 -23
  33. package/lib/cjs/ChangedElements.js.map +1 -1
  34. package/lib/cjs/ChangedEntities.d.ts +45 -45
  35. package/lib/cjs/ChangedEntities.js +9 -9
  36. package/lib/cjs/ChangedEntities.js.map +1 -1
  37. package/lib/cjs/ChangesetProps.d.ts +98 -98
  38. package/lib/cjs/ChangesetProps.js +22 -22
  39. package/lib/cjs/ChangesetProps.js.map +1 -1
  40. package/lib/cjs/ClipStyle.d.ts +89 -89
  41. package/lib/cjs/ClipStyle.js +121 -121
  42. package/lib/cjs/ClipStyle.js.map +1 -1
  43. package/lib/cjs/CloudStorage.d.ts +62 -62
  44. package/lib/cjs/CloudStorage.js +113 -113
  45. package/lib/cjs/CloudStorage.js.map +1 -1
  46. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  47. package/lib/cjs/CloudStorageTileCache.js +65 -65
  48. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  49. package/lib/cjs/Code.d.ts +277 -277
  50. package/lib/cjs/Code.js +268 -268
  51. package/lib/cjs/Code.js.map +1 -1
  52. package/lib/cjs/ColorByName.d.ts +161 -161
  53. package/lib/cjs/ColorByName.js +169 -169
  54. package/lib/cjs/ColorByName.js.map +1 -1
  55. package/lib/cjs/ColorDef.d.ts +208 -208
  56. package/lib/cjs/ColorDef.js +570 -570
  57. package/lib/cjs/ColorDef.js.map +1 -1
  58. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  59. package/lib/cjs/CommonLoggerCategory.js +26 -26
  60. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  61. package/lib/cjs/ConcurrentQuery.d.ts +421 -421
  62. package/lib/cjs/ConcurrentQuery.js +552 -552
  63. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  64. package/lib/cjs/ContextRealityModel.d.ts +303 -303
  65. package/lib/cjs/ContextRealityModel.js +371 -371
  66. package/lib/cjs/ContextRealityModel.js.map +1 -1
  67. package/lib/cjs/DisplayStyleSettings.d.ts +588 -588
  68. package/lib/cjs/DisplayStyleSettings.js +981 -981
  69. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  70. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  71. package/lib/cjs/ECSchemaProps.js +9 -9
  72. package/lib/cjs/ECSchemaProps.js.map +1 -1
  73. package/lib/cjs/ECSqlReader.d.ts +70 -70
  74. package/lib/cjs/ECSqlReader.js +280 -280
  75. package/lib/cjs/ECSqlReader.js.map +1 -1
  76. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  77. package/lib/cjs/ECSqlTypes.js +189 -189
  78. package/lib/cjs/ECSqlTypes.js.map +1 -1
  79. package/lib/cjs/ElementMesh.d.ts +39 -39
  80. package/lib/cjs/ElementMesh.js +56 -56
  81. package/lib/cjs/ElementMesh.js.map +1 -1
  82. package/lib/cjs/ElementProps.d.ts +483 -483
  83. package/lib/cjs/ElementProps.js +99 -99
  84. package/lib/cjs/ElementProps.js.map +1 -1
  85. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  86. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  87. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  88. package/lib/cjs/EntityProps.d.ts +177 -177
  89. package/lib/cjs/EntityProps.js +113 -113
  90. package/lib/cjs/EntityProps.js.map +1 -1
  91. package/lib/cjs/EntityReference.d.ts +51 -51
  92. package/lib/cjs/EntityReference.js +56 -56
  93. package/lib/cjs/EntityReference.js.map +1 -1
  94. package/lib/cjs/Environment.d.ts +61 -61
  95. package/lib/cjs/Environment.js +70 -70
  96. package/lib/cjs/Environment.js.map +1 -1
  97. package/lib/cjs/FeatureIndex.d.ts +39 -39
  98. package/lib/cjs/FeatureIndex.js +63 -63
  99. package/lib/cjs/FeatureIndex.js.map +1 -1
  100. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  101. package/lib/cjs/FeatureSymbology.js +613 -613
  102. package/lib/cjs/FeatureSymbology.js.map +1 -1
  103. package/lib/cjs/FeatureTable.d.ts +141 -141
  104. package/lib/cjs/FeatureTable.js +278 -278
  105. package/lib/cjs/FeatureTable.js.map +1 -1
  106. package/lib/cjs/Fonts.d.ts +51 -51
  107. package/lib/cjs/Fonts.js +53 -53
  108. package/lib/cjs/Fonts.js.map +1 -1
  109. package/lib/cjs/Frustum.d.ts +114 -114
  110. package/lib/cjs/Frustum.js +292 -292
  111. package/lib/cjs/Frustum.js.map +1 -1
  112. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  113. package/lib/cjs/GeoCoordinateServices.js +80 -80
  114. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  115. package/lib/cjs/GeometryContainment.d.ts +28 -28
  116. package/lib/cjs/GeometryContainment.js +9 -9
  117. package/lib/cjs/GeometryContainment.js.map +1 -1
  118. package/lib/cjs/GeometryParams.d.ts +130 -130
  119. package/lib/cjs/GeometryParams.js +174 -174
  120. package/lib/cjs/GeometryParams.js.map +1 -1
  121. package/lib/cjs/GeometrySummary.d.ts +45 -45
  122. package/lib/cjs/GeometrySummary.js +23 -23
  123. package/lib/cjs/GeometrySummary.js.map +1 -1
  124. package/lib/cjs/Gradient.d.ts +139 -139
  125. package/lib/cjs/Gradient.js +453 -453
  126. package/lib/cjs/Gradient.js.map +1 -1
  127. package/lib/cjs/GraphicParams.d.ts +58 -58
  128. package/lib/cjs/GraphicParams.js +85 -85
  129. package/lib/cjs/GraphicParams.js.map +1 -1
  130. package/lib/cjs/GroundPlane.d.ts +52 -52
  131. package/lib/cjs/GroundPlane.js +63 -63
  132. package/lib/cjs/GroundPlane.js.map +1 -1
  133. package/lib/cjs/HSLColor.d.ts +20 -20
  134. package/lib/cjs/HSLColor.js +32 -32
  135. package/lib/cjs/HSLColor.js.map +1 -1
  136. package/lib/cjs/HSVColor.d.ts +30 -30
  137. package/lib/cjs/HSVColor.js +59 -59
  138. package/lib/cjs/HSVColor.js.map +1 -1
  139. package/lib/cjs/HiddenLine.d.ts +97 -97
  140. package/lib/cjs/HiddenLine.js +160 -160
  141. package/lib/cjs/HiddenLine.js.map +1 -1
  142. package/lib/cjs/Hilite.d.ts +50 -50
  143. package/lib/cjs/Hilite.js +64 -64
  144. package/lib/cjs/Hilite.js.map +1 -1
  145. package/lib/cjs/IModel.d.ts +358 -358
  146. package/lib/cjs/IModel.js +347 -347
  147. package/lib/cjs/IModel.js.map +1 -1
  148. package/lib/cjs/IModelError.d.ts +42 -42
  149. package/lib/cjs/IModelError.js +71 -71
  150. package/lib/cjs/IModelError.js.map +1 -1
  151. package/lib/cjs/IModelVersion.d.ts +68 -68
  152. package/lib/cjs/IModelVersion.js +79 -79
  153. package/lib/cjs/IModelVersion.js.map +1 -1
  154. package/lib/cjs/Image.d.ts +86 -86
  155. package/lib/cjs/Image.js +128 -128
  156. package/lib/cjs/Image.js.map +1 -1
  157. package/lib/cjs/IpcAppProps.d.ts +141 -141
  158. package/lib/cjs/IpcAppProps.js +23 -23
  159. package/lib/cjs/IpcAppProps.js.map +1 -1
  160. package/lib/cjs/LightSettings.d.ts +224 -224
  161. package/lib/cjs/LightSettings.js +304 -304
  162. package/lib/cjs/LightSettings.js.map +1 -1
  163. package/lib/cjs/LinePixels.d.ts +34 -34
  164. package/lib/cjs/LinePixels.js +42 -42
  165. package/lib/cjs/LinePixels.js.map +1 -1
  166. package/lib/cjs/Localization.d.ts +113 -113
  167. package/lib/cjs/Localization.js +33 -33
  168. package/lib/cjs/Localization.js.map +1 -1
  169. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  170. package/lib/cjs/MapImagerySettings.js +80 -80
  171. package/lib/cjs/MapImagerySettings.js.map +1 -1
  172. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  173. package/lib/cjs/MapLayerSettings.js +407 -407
  174. package/lib/cjs/MapLayerSettings.js.map +1 -1
  175. package/lib/cjs/MassProperties.d.ts +64 -64
  176. package/lib/cjs/MassProperties.js +23 -23
  177. package/lib/cjs/MassProperties.js.map +1 -1
  178. package/lib/cjs/MaterialProps.d.ts +153 -153
  179. package/lib/cjs/MaterialProps.js +35 -35
  180. package/lib/cjs/MaterialProps.js.map +1 -1
  181. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  182. package/lib/cjs/ModelClipGroup.js +96 -96
  183. package/lib/cjs/ModelClipGroup.js.map +1 -1
  184. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  185. package/lib/cjs/ModelGeometryChanges.js +83 -83
  186. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  187. package/lib/cjs/ModelProps.d.ts +67 -67
  188. package/lib/cjs/ModelProps.js +9 -9
  189. package/lib/cjs/ModelProps.js.map +1 -1
  190. package/lib/cjs/NativeAppProps.d.ts +122 -122
  191. package/lib/cjs/NativeAppProps.js +30 -30
  192. package/lib/cjs/NativeAppProps.js.map +1 -1
  193. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  194. package/lib/cjs/OctEncodedNormal.js +98 -98
  195. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  196. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  197. package/lib/cjs/PlanProjectionSettings.js +63 -63
  198. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  199. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  200. package/lib/cjs/PlanarClipMask.js +136 -136
  201. package/lib/cjs/PlanarClipMask.js.map +1 -1
  202. package/lib/cjs/QPoint.d.ts +479 -479
  203. package/lib/cjs/QPoint.js +824 -824
  204. package/lib/cjs/QPoint.js.map +1 -1
  205. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  206. package/lib/cjs/RealityDataAccessProps.js +19 -19
  207. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  208. package/lib/cjs/RealityModelDisplaySettings.d.ts +183 -183
  209. package/lib/cjs/RealityModelDisplaySettings.js +141 -141
  210. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  211. package/lib/cjs/Render.d.ts +89 -89
  212. package/lib/cjs/Render.js +177 -177
  213. package/lib/cjs/Render.js.map +1 -1
  214. package/lib/cjs/RenderMaterial.d.ts +58 -58
  215. package/lib/cjs/RenderMaterial.js +75 -75
  216. package/lib/cjs/RenderMaterial.js.map +1 -1
  217. package/lib/cjs/RenderSchedule.d.ts +543 -543
  218. package/lib/cjs/RenderSchedule.js +992 -992
  219. package/lib/cjs/RenderTexture.d.ts +70 -70
  220. package/lib/cjs/RenderTexture.js +59 -59
  221. package/lib/cjs/RenderTexture.js.map +1 -1
  222. package/lib/cjs/RgbColor.d.ts +47 -47
  223. package/lib/cjs/RgbColor.js +77 -77
  224. package/lib/cjs/RgbColor.js.map +1 -1
  225. package/lib/cjs/RpcInterface.d.ts +33 -33
  226. package/lib/cjs/RpcInterface.js +137 -137
  227. package/lib/cjs/RpcInterface.js.map +1 -1
  228. package/lib/cjs/RpcManager.d.ts +40 -40
  229. package/lib/cjs/RpcManager.js +55 -55
  230. package/lib/cjs/RpcManager.js.map +1 -1
  231. package/lib/cjs/SessionProps.d.ts +16 -16
  232. package/lib/cjs/SessionProps.js +9 -9
  233. package/lib/cjs/SessionProps.js.map +1 -1
  234. package/lib/cjs/SkyBox.d.ts +215 -215
  235. package/lib/cjs/SkyBox.js +209 -209
  236. package/lib/cjs/SkyBox.js.map +1 -1
  237. package/lib/cjs/Snapping.d.ts +49 -49
  238. package/lib/cjs/Snapping.js +9 -9
  239. package/lib/cjs/Snapping.js.map +1 -1
  240. package/lib/cjs/SolarCalculate.d.ts +27 -27
  241. package/lib/cjs/SolarCalculate.js +211 -211
  242. package/lib/cjs/SolarCalculate.js.map +1 -1
  243. package/lib/cjs/SolarShadows.d.ts +35 -35
  244. package/lib/cjs/SolarShadows.js +61 -61
  245. package/lib/cjs/SolarShadows.js.map +1 -1
  246. package/lib/cjs/SpatialClassification.d.ts +208 -208
  247. package/lib/cjs/SpatialClassification.js +339 -339
  248. package/lib/cjs/SpatialClassification.js.map +1 -1
  249. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  250. package/lib/cjs/SubCategoryAppearance.js +96 -96
  251. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  252. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  253. package/lib/cjs/SubCategoryOverride.js +104 -104
  254. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  255. package/lib/cjs/TerrainSettings.d.ts +82 -82
  256. package/lib/cjs/TerrainSettings.js +100 -100
  257. package/lib/cjs/TerrainSettings.js.map +1 -1
  258. package/lib/cjs/TextureMapping.d.ts +118 -118
  259. package/lib/cjs/TextureMapping.js +173 -173
  260. package/lib/cjs/TextureMapping.js.map +1 -1
  261. package/lib/cjs/TextureProps.d.ts +65 -65
  262. package/lib/cjs/TextureProps.js +28 -28
  263. package/lib/cjs/TextureProps.js.map +1 -1
  264. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  265. package/lib/cjs/ThematicDisplay.js +343 -343
  266. package/lib/cjs/ThematicDisplay.js.map +1 -1
  267. package/lib/cjs/Thumbnail.d.ts +26 -26
  268. package/lib/cjs/Thumbnail.js +9 -9
  269. package/lib/cjs/Thumbnail.js.map +1 -1
  270. package/lib/cjs/TileProps.d.ts +82 -82
  271. package/lib/cjs/TileProps.js +29 -29
  272. package/lib/cjs/TileProps.js.map +1 -1
  273. package/lib/cjs/Tween.d.ts +191 -191
  274. package/lib/cjs/Tween.js +570 -570
  275. package/lib/cjs/Tween.js.map +1 -1
  276. package/lib/cjs/TxnAction.d.ts +21 -21
  277. package/lib/cjs/TxnAction.js +29 -29
  278. package/lib/cjs/TxnAction.js.map +1 -1
  279. package/lib/cjs/ViewDetails.d.ts +125 -125
  280. package/lib/cjs/ViewDetails.js +166 -166
  281. package/lib/cjs/ViewDetails.js.map +1 -1
  282. package/lib/cjs/ViewFlags.d.ts +287 -287
  283. package/lib/cjs/ViewFlags.js +367 -367
  284. package/lib/cjs/ViewFlags.js.map +1 -1
  285. package/lib/cjs/ViewProps.d.ts +205 -205
  286. package/lib/cjs/ViewProps.js +9 -9
  287. package/lib/cjs/ViewProps.js.map +1 -1
  288. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  289. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  290. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  291. package/lib/cjs/core-common.d.ts +245 -244
  292. package/lib/cjs/core-common.d.ts.map +1 -1
  293. package/lib/cjs/core-common.js +261 -260
  294. package/lib/cjs/core-common.js.map +1 -1
  295. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  296. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  297. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  298. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  299. package/lib/cjs/domains/GenericElementProps.js +9 -9
  300. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  301. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  302. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  303. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  304. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  305. package/lib/cjs/geometry/AreaPattern.js +203 -203
  306. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  307. package/lib/cjs/geometry/BoundingSphere.d.ts +27 -27
  308. package/lib/cjs/geometry/BoundingSphere.js +44 -44
  309. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  310. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  311. package/lib/cjs/geometry/Cartographic.js +345 -345
  312. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  313. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  314. package/lib/cjs/geometry/CoordinateReferenceSystem.js +260 -260
  315. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  316. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  317. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  318. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  319. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  320. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  321. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  322. package/lib/cjs/geometry/FrustumPlanes.d.ts +81 -81
  323. package/lib/cjs/geometry/FrustumPlanes.js +189 -189
  324. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  325. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  326. package/lib/cjs/geometry/GeodeticDatum.js +400 -400
  327. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  328. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  329. package/lib/cjs/geometry/GeodeticEllipsoid.js +71 -71
  330. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  331. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  332. package/lib/cjs/geometry/GeometryStream.js +468 -468
  333. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  334. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  335. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  336. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  337. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  338. package/lib/cjs/geometry/LineStyle.js +129 -129
  339. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  340. package/lib/cjs/geometry/Placement.d.ts +95 -95
  341. package/lib/cjs/geometry/Placement.js +131 -131
  342. package/lib/cjs/geometry/Placement.js.map +1 -1
  343. package/lib/cjs/geometry/Projection.d.ts +251 -251
  344. package/lib/cjs/geometry/Projection.js +198 -198
  345. package/lib/cjs/geometry/Projection.js.map +1 -1
  346. package/lib/cjs/geometry/TextString.d.ts +55 -55
  347. package/lib/cjs/geometry/TextString.js +65 -65
  348. package/lib/cjs/geometry/TextString.js.map +1 -1
  349. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  350. package/lib/cjs/ipc/IpcSession.js +27 -27
  351. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  352. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  353. package/lib/cjs/ipc/IpcSocket.js +16 -16
  354. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  355. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  356. package/lib/cjs/ipc/IpcWebSocket.js +150 -150
  357. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  358. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  359. package/lib/cjs/ipc/IpcWebSocketTransport.js +160 -160
  360. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  361. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  362. package/lib/cjs/rpc/DevToolsRpcInterface.js +52 -52
  363. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  364. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +99 -99
  365. package/lib/cjs/rpc/IModelReadRpcInterface.js +122 -122
  366. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  367. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  368. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  369. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  370. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  371. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  372. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  373. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  374. package/lib/cjs/rpc/TestRpcManager.js +40 -40
  375. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  376. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  377. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  378. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  379. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  380. package/lib/cjs/rpc/core/RpcConfiguration.js +191 -191
  381. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  382. package/lib/cjs/rpc/core/RpcConstants.d.ts +90 -90
  383. package/lib/cjs/rpc/core/RpcConstants.js +109 -109
  384. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  385. package/lib/cjs/rpc/core/RpcControl.d.ts +54 -54
  386. package/lib/cjs/rpc/core/RpcControl.js +145 -145
  387. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  388. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  389. package/lib/cjs/rpc/core/RpcInvocation.js +256 -256
  390. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  391. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +35 -35
  392. package/lib/cjs/rpc/core/RpcMarshaling.js +156 -156
  393. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  394. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  395. package/lib/cjs/rpc/core/RpcOperation.js +134 -134
  396. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  397. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  398. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  399. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  400. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  401. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  402. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  403. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  404. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  405. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  406. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  407. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  408. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  409. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  410. package/lib/cjs/rpc/core/RpcRequest.js +478 -478
  411. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  412. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  413. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  414. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  415. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  416. package/lib/cjs/rpc/core/RpcRoutingToken.js +24 -24
  417. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  418. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  419. package/lib/cjs/rpc/core/RpcSessionInvocation.js +60 -60
  420. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  421. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  422. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  423. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  424. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  425. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +141 -141
  426. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  427. package/lib/cjs/rpc/web/OpenAPI.d.ts +140 -140
  428. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  429. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  430. package/lib/cjs/rpc/web/RpcMultipart.d.ts +35 -35
  431. package/lib/cjs/rpc/web/RpcMultipart.js +50 -50
  432. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  433. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +28 -28
  434. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  435. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  436. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  437. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  438. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  439. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +67 -67
  440. package/lib/cjs/rpc/web/WebAppRpcRequest.js +239 -239
  441. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  442. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  443. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +373 -373
  444. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  445. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  446. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  447. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  448. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  449. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  450. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  451. package/lib/cjs/tile/ElementGraphics.d.ts +145 -145
  452. package/lib/cjs/tile/ElementGraphics.js +9 -9
  453. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  454. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  455. package/lib/cjs/tile/GltfTileIO.js +109 -109
  456. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  457. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  458. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  459. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  460. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  461. package/lib/cjs/tile/IModelTileIO.js +95 -95
  462. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  463. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  464. package/lib/cjs/tile/PntsTileIO.js +26 -26
  465. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  466. package/lib/cjs/tile/TileIO.d.ts +66 -66
  467. package/lib/cjs/tile/TileIO.js +118 -118
  468. package/lib/cjs/tile/TileIO.js.map +1 -1
  469. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  470. package/lib/cjs/tile/TileMetadata.js +675 -675
  471. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  472. package/lib/cjs/tile/Tileset3dSchema.d.ts +97 -0
  473. package/lib/cjs/tile/Tileset3dSchema.d.ts.map +1 -0
  474. package/lib/cjs/tile/Tileset3dSchema.js +10 -0
  475. package/lib/cjs/tile/Tileset3dSchema.js.map +1 -0
  476. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  477. package/lib/esm/AmbientOcclusion.js +52 -52
  478. package/lib/esm/AmbientOcclusion.js.map +1 -1
  479. package/lib/esm/AnalysisStyle.d.ts +134 -134
  480. package/lib/esm/AnalysisStyle.js +159 -159
  481. package/lib/esm/AnalysisStyle.js.map +1 -1
  482. package/lib/esm/AuthorizationClient.d.ts +17 -17
  483. package/lib/esm/AuthorizationClient.js +8 -8
  484. package/lib/esm/AuthorizationClient.js.map +1 -1
  485. package/lib/esm/BackendTypes.d.ts +12 -12
  486. package/lib/esm/BackendTypes.js +8 -8
  487. package/lib/esm/BackendTypes.js.map +1 -1
  488. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  489. package/lib/esm/BackgroundMapProvider.js +63 -63
  490. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  491. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  492. package/lib/esm/BackgroundMapSettings.js +150 -150
  493. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  494. package/lib/esm/Base64EncodedString.d.ts +32 -32
  495. package/lib/esm/Base64EncodedString.js +63 -63
  496. package/lib/esm/Base64EncodedString.js.map +1 -1
  497. package/lib/esm/BlobReader.d.ts +31 -31
  498. package/lib/esm/BlobReader.js +79 -79
  499. package/lib/esm/BlobReader.js.map +1 -1
  500. package/lib/esm/BriefcaseTypes.d.ts +191 -191
  501. package/lib/esm/BriefcaseTypes.js +92 -92
  502. package/lib/esm/BriefcaseTypes.js.map +1 -1
  503. package/lib/esm/Camera.d.ts +42 -42
  504. package/lib/esm/Camera.js +58 -58
  505. package/lib/esm/Camera.js.map +1 -1
  506. package/lib/esm/ChangedElements.d.ts +85 -85
  507. package/lib/esm/ChangedElements.js +20 -20
  508. package/lib/esm/ChangedElements.js.map +1 -1
  509. package/lib/esm/ChangedEntities.d.ts +45 -45
  510. package/lib/esm/ChangedEntities.js +8 -8
  511. package/lib/esm/ChangedEntities.js.map +1 -1
  512. package/lib/esm/ChangesetProps.d.ts +98 -98
  513. package/lib/esm/ChangesetProps.js +19 -19
  514. package/lib/esm/ChangesetProps.js.map +1 -1
  515. package/lib/esm/ClipStyle.d.ts +89 -89
  516. package/lib/esm/ClipStyle.js +116 -116
  517. package/lib/esm/ClipStyle.js.map +1 -1
  518. package/lib/esm/CloudStorage.d.ts +62 -62
  519. package/lib/esm/CloudStorage.js +109 -109
  520. package/lib/esm/CloudStorage.js.map +1 -1
  521. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  522. package/lib/esm/CloudStorageTileCache.js +61 -61
  523. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  524. package/lib/esm/Code.d.ts +277 -277
  525. package/lib/esm/Code.js +263 -263
  526. package/lib/esm/Code.js.map +1 -1
  527. package/lib/esm/ColorByName.d.ts +161 -161
  528. package/lib/esm/ColorByName.js +166 -166
  529. package/lib/esm/ColorByName.js.map +1 -1
  530. package/lib/esm/ColorDef.d.ts +208 -208
  531. package/lib/esm/ColorDef.js +566 -566
  532. package/lib/esm/ColorDef.js.map +1 -1
  533. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  534. package/lib/esm/CommonLoggerCategory.js +23 -23
  535. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  536. package/lib/esm/ConcurrentQuery.d.ts +421 -421
  537. package/lib/esm/ConcurrentQuery.js +545 -545
  538. package/lib/esm/ConcurrentQuery.js.map +1 -1
  539. package/lib/esm/ContextRealityModel.d.ts +303 -303
  540. package/lib/esm/ContextRealityModel.js +366 -366
  541. package/lib/esm/ContextRealityModel.js.map +1 -1
  542. package/lib/esm/DisplayStyleSettings.d.ts +588 -588
  543. package/lib/esm/DisplayStyleSettings.js +976 -976
  544. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  545. package/lib/esm/ECSchemaProps.d.ts +39 -39
  546. package/lib/esm/ECSchemaProps.js +8 -8
  547. package/lib/esm/ECSchemaProps.js.map +1 -1
  548. package/lib/esm/ECSqlReader.d.ts +70 -70
  549. package/lib/esm/ECSqlReader.js +275 -275
  550. package/lib/esm/ECSqlReader.js.map +1 -1
  551. package/lib/esm/ECSqlTypes.d.ts +128 -128
  552. package/lib/esm/ECSqlTypes.js +185 -185
  553. package/lib/esm/ECSqlTypes.js.map +1 -1
  554. package/lib/esm/ElementMesh.d.ts +39 -39
  555. package/lib/esm/ElementMesh.js +52 -52
  556. package/lib/esm/ElementMesh.js.map +1 -1
  557. package/lib/esm/ElementProps.d.ts +483 -483
  558. package/lib/esm/ElementProps.js +92 -92
  559. package/lib/esm/ElementProps.js.map +1 -1
  560. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  561. package/lib/esm/EmphasizeElementsProps.js +22 -22
  562. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  563. package/lib/esm/EntityProps.d.ts +177 -177
  564. package/lib/esm/EntityProps.js +108 -108
  565. package/lib/esm/EntityProps.js.map +1 -1
  566. package/lib/esm/EntityReference.d.ts +51 -51
  567. package/lib/esm/EntityReference.js +52 -52
  568. package/lib/esm/EntityReference.js.map +1 -1
  569. package/lib/esm/Environment.d.ts +61 -61
  570. package/lib/esm/Environment.js +66 -66
  571. package/lib/esm/Environment.js.map +1 -1
  572. package/lib/esm/FeatureIndex.d.ts +39 -39
  573. package/lib/esm/FeatureIndex.js +57 -57
  574. package/lib/esm/FeatureIndex.js.map +1 -1
  575. package/lib/esm/FeatureSymbology.d.ts +444 -444
  576. package/lib/esm/FeatureSymbology.js +608 -608
  577. package/lib/esm/FeatureSymbology.js.map +1 -1
  578. package/lib/esm/FeatureTable.d.ts +141 -141
  579. package/lib/esm/FeatureTable.js +272 -272
  580. package/lib/esm/FeatureTable.js.map +1 -1
  581. package/lib/esm/Fonts.d.ts +51 -51
  582. package/lib/esm/Fonts.js +49 -49
  583. package/lib/esm/Fonts.js.map +1 -1
  584. package/lib/esm/Frustum.d.ts +114 -114
  585. package/lib/esm/Frustum.js +288 -288
  586. package/lib/esm/Frustum.js.map +1 -1
  587. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  588. package/lib/esm/GeoCoordinateServices.js +76 -76
  589. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  590. package/lib/esm/GeometryContainment.d.ts +28 -28
  591. package/lib/esm/GeometryContainment.js +8 -8
  592. package/lib/esm/GeometryContainment.js.map +1 -1
  593. package/lib/esm/GeometryParams.d.ts +130 -130
  594. package/lib/esm/GeometryParams.js +170 -170
  595. package/lib/esm/GeometryParams.js.map +1 -1
  596. package/lib/esm/GeometrySummary.d.ts +45 -45
  597. package/lib/esm/GeometrySummary.js +20 -20
  598. package/lib/esm/GeometrySummary.js.map +1 -1
  599. package/lib/esm/Gradient.d.ts +139 -139
  600. package/lib/esm/Gradient.js +450 -450
  601. package/lib/esm/Gradient.js.map +1 -1
  602. package/lib/esm/GraphicParams.d.ts +58 -58
  603. package/lib/esm/GraphicParams.js +81 -81
  604. package/lib/esm/GraphicParams.js.map +1 -1
  605. package/lib/esm/GroundPlane.d.ts +52 -52
  606. package/lib/esm/GroundPlane.js +59 -59
  607. package/lib/esm/GroundPlane.js.map +1 -1
  608. package/lib/esm/HSLColor.d.ts +20 -20
  609. package/lib/esm/HSLColor.js +28 -28
  610. package/lib/esm/HSLColor.js.map +1 -1
  611. package/lib/esm/HSVColor.d.ts +30 -30
  612. package/lib/esm/HSVColor.js +55 -55
  613. package/lib/esm/HSVColor.js.map +1 -1
  614. package/lib/esm/HiddenLine.d.ts +97 -97
  615. package/lib/esm/HiddenLine.js +157 -157
  616. package/lib/esm/HiddenLine.js.map +1 -1
  617. package/lib/esm/Hilite.d.ts +50 -50
  618. package/lib/esm/Hilite.js +61 -61
  619. package/lib/esm/Hilite.js.map +1 -1
  620. package/lib/esm/IModel.d.ts +358 -358
  621. package/lib/esm/IModel.js +342 -342
  622. package/lib/esm/IModel.js.map +1 -1
  623. package/lib/esm/IModelError.d.ts +42 -42
  624. package/lib/esm/IModelError.js +56 -56
  625. package/lib/esm/IModelError.js.map +1 -1
  626. package/lib/esm/IModelVersion.d.ts +68 -68
  627. package/lib/esm/IModelVersion.js +75 -75
  628. package/lib/esm/IModelVersion.js.map +1 -1
  629. package/lib/esm/Image.d.ts +86 -86
  630. package/lib/esm/Image.js +120 -120
  631. package/lib/esm/Image.js.map +1 -1
  632. package/lib/esm/IpcAppProps.d.ts +141 -141
  633. package/lib/esm/IpcAppProps.js +19 -19
  634. package/lib/esm/IpcAppProps.js.map +1 -1
  635. package/lib/esm/LightSettings.d.ts +224 -224
  636. package/lib/esm/LightSettings.js +296 -296
  637. package/lib/esm/LightSettings.js.map +1 -1
  638. package/lib/esm/LinePixels.d.ts +34 -34
  639. package/lib/esm/LinePixels.js +39 -39
  640. package/lib/esm/LinePixels.js.map +1 -1
  641. package/lib/esm/Localization.d.ts +113 -113
  642. package/lib/esm/Localization.js +29 -29
  643. package/lib/esm/Localization.js.map +1 -1
  644. package/lib/esm/MapImagerySettings.d.ts +62 -62
  645. package/lib/esm/MapImagerySettings.js +76 -76
  646. package/lib/esm/MapImagerySettings.js.map +1 -1
  647. package/lib/esm/MapLayerSettings.d.ts +272 -272
  648. package/lib/esm/MapLayerSettings.js +399 -399
  649. package/lib/esm/MapLayerSettings.js.map +1 -1
  650. package/lib/esm/MassProperties.d.ts +64 -64
  651. package/lib/esm/MassProperties.js +20 -20
  652. package/lib/esm/MassProperties.js.map +1 -1
  653. package/lib/esm/MaterialProps.d.ts +153 -153
  654. package/lib/esm/MaterialProps.js +32 -32
  655. package/lib/esm/MaterialProps.js.map +1 -1
  656. package/lib/esm/ModelClipGroup.d.ts +67 -67
  657. package/lib/esm/ModelClipGroup.js +91 -91
  658. package/lib/esm/ModelClipGroup.js.map +1 -1
  659. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  660. package/lib/esm/ModelGeometryChanges.js +80 -80
  661. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  662. package/lib/esm/ModelProps.d.ts +67 -67
  663. package/lib/esm/ModelProps.js +8 -8
  664. package/lib/esm/ModelProps.js.map +1 -1
  665. package/lib/esm/NativeAppProps.d.ts +122 -122
  666. package/lib/esm/NativeAppProps.js +27 -27
  667. package/lib/esm/NativeAppProps.js.map +1 -1
  668. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  669. package/lib/esm/OctEncodedNormal.js +93 -93
  670. package/lib/esm/OctEncodedNormal.js.map +1 -1
  671. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  672. package/lib/esm/PlanProjectionSettings.js +59 -59
  673. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  674. package/lib/esm/PlanarClipMask.d.ts +177 -177
  675. package/lib/esm/PlanarClipMask.js +132 -132
  676. package/lib/esm/PlanarClipMask.js.map +1 -1
  677. package/lib/esm/QPoint.d.ts +479 -479
  678. package/lib/esm/QPoint.js +813 -813
  679. package/lib/esm/QPoint.js.map +1 -1
  680. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  681. package/lib/esm/RealityDataAccessProps.js +16 -16
  682. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  683. package/lib/esm/RealityModelDisplaySettings.d.ts +183 -183
  684. package/lib/esm/RealityModelDisplaySettings.js +136 -136
  685. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  686. package/lib/esm/Render.d.ts +89 -89
  687. package/lib/esm/Render.js +165 -165
  688. package/lib/esm/Render.js.map +1 -1
  689. package/lib/esm/RenderMaterial.d.ts +58 -58
  690. package/lib/esm/RenderMaterial.js +71 -71
  691. package/lib/esm/RenderMaterial.js.map +1 -1
  692. package/lib/esm/RenderSchedule.d.ts +543 -543
  693. package/lib/esm/RenderSchedule.js +989 -989
  694. package/lib/esm/RenderTexture.d.ts +70 -70
  695. package/lib/esm/RenderTexture.js +55 -55
  696. package/lib/esm/RenderTexture.js.map +1 -1
  697. package/lib/esm/RgbColor.d.ts +47 -47
  698. package/lib/esm/RgbColor.js +73 -73
  699. package/lib/esm/RgbColor.js.map +1 -1
  700. package/lib/esm/RpcInterface.d.ts +33 -33
  701. package/lib/esm/RpcInterface.js +133 -133
  702. package/lib/esm/RpcInterface.js.map +1 -1
  703. package/lib/esm/RpcManager.d.ts +40 -40
  704. package/lib/esm/RpcManager.js +51 -51
  705. package/lib/esm/RpcManager.js.map +1 -1
  706. package/lib/esm/SessionProps.d.ts +16 -16
  707. package/lib/esm/SessionProps.js +8 -8
  708. package/lib/esm/SessionProps.js.map +1 -1
  709. package/lib/esm/SkyBox.d.ts +215 -215
  710. package/lib/esm/SkyBox.js +202 -202
  711. package/lib/esm/SkyBox.js.map +1 -1
  712. package/lib/esm/Snapping.d.ts +49 -49
  713. package/lib/esm/Snapping.js +8 -8
  714. package/lib/esm/Snapping.js.map +1 -1
  715. package/lib/esm/SolarCalculate.d.ts +27 -27
  716. package/lib/esm/SolarCalculate.js +204 -204
  717. package/lib/esm/SolarCalculate.js.map +1 -1
  718. package/lib/esm/SolarShadows.d.ts +35 -35
  719. package/lib/esm/SolarShadows.js +57 -57
  720. package/lib/esm/SolarShadows.js.map +1 -1
  721. package/lib/esm/SpatialClassification.d.ts +208 -208
  722. package/lib/esm/SpatialClassification.js +333 -333
  723. package/lib/esm/SpatialClassification.js.map +1 -1
  724. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  725. package/lib/esm/SubCategoryAppearance.js +92 -92
  726. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  727. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  728. package/lib/esm/SubCategoryOverride.js +100 -100
  729. package/lib/esm/SubCategoryOverride.js.map +1 -1
  730. package/lib/esm/TerrainSettings.d.ts +82 -82
  731. package/lib/esm/TerrainSettings.js +96 -96
  732. package/lib/esm/TerrainSettings.js.map +1 -1
  733. package/lib/esm/TextureMapping.d.ts +118 -118
  734. package/lib/esm/TextureMapping.js +169 -169
  735. package/lib/esm/TextureMapping.js.map +1 -1
  736. package/lib/esm/TextureProps.d.ts +65 -65
  737. package/lib/esm/TextureProps.js +25 -25
  738. package/lib/esm/TextureProps.js.map +1 -1
  739. package/lib/esm/ThematicDisplay.d.ts +230 -230
  740. package/lib/esm/ThematicDisplay.js +336 -336
  741. package/lib/esm/ThematicDisplay.js.map +1 -1
  742. package/lib/esm/Thumbnail.d.ts +26 -26
  743. package/lib/esm/Thumbnail.js +8 -8
  744. package/lib/esm/Thumbnail.js.map +1 -1
  745. package/lib/esm/TileProps.d.ts +82 -82
  746. package/lib/esm/TileProps.js +25 -25
  747. package/lib/esm/TileProps.js.map +1 -1
  748. package/lib/esm/Tween.d.ts +191 -191
  749. package/lib/esm/Tween.js +565 -565
  750. package/lib/esm/Tween.js.map +1 -1
  751. package/lib/esm/TxnAction.d.ts +21 -21
  752. package/lib/esm/TxnAction.js +26 -26
  753. package/lib/esm/TxnAction.js.map +1 -1
  754. package/lib/esm/ViewDetails.d.ts +125 -125
  755. package/lib/esm/ViewDetails.js +161 -161
  756. package/lib/esm/ViewDetails.js.map +1 -1
  757. package/lib/esm/ViewFlags.d.ts +287 -287
  758. package/lib/esm/ViewFlags.js +363 -363
  759. package/lib/esm/ViewFlags.js.map +1 -1
  760. package/lib/esm/ViewProps.d.ts +205 -205
  761. package/lib/esm/ViewProps.js +8 -8
  762. package/lib/esm/ViewProps.js.map +1 -1
  763. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  764. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  765. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  766. package/lib/esm/core-common.d.ts +245 -244
  767. package/lib/esm/core-common.d.ts.map +1 -1
  768. package/lib/esm/core-common.js +249 -248
  769. package/lib/esm/core-common.js.map +1 -1
  770. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  771. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  772. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  773. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  774. package/lib/esm/domains/GenericElementProps.js +8 -8
  775. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  776. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  777. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  778. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  779. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  780. package/lib/esm/geometry/AreaPattern.js +200 -200
  781. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  782. package/lib/esm/geometry/BoundingSphere.d.ts +27 -27
  783. package/lib/esm/geometry/BoundingSphere.js +40 -40
  784. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  785. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  786. package/lib/esm/geometry/Cartographic.js +340 -340
  787. package/lib/esm/geometry/Cartographic.js.map +1 -1
  788. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  789. package/lib/esm/geometry/CoordinateReferenceSystem.js +253 -253
  790. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  791. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  792. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  793. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  794. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  795. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  796. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  797. package/lib/esm/geometry/FrustumPlanes.d.ts +81 -81
  798. package/lib/esm/geometry/FrustumPlanes.js +185 -185
  799. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  800. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  801. package/lib/esm/geometry/GeodeticDatum.js +389 -389
  802. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  803. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  804. package/lib/esm/geometry/GeodeticEllipsoid.js +67 -67
  805. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  806. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  807. package/lib/esm/geometry/GeometryStream.js +463 -463
  808. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  809. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  810. package/lib/esm/geometry/ImageGraphic.js +93 -93
  811. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  812. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  813. package/lib/esm/geometry/LineStyle.js +126 -126
  814. package/lib/esm/geometry/LineStyle.js.map +1 -1
  815. package/lib/esm/geometry/Placement.d.ts +95 -95
  816. package/lib/esm/geometry/Placement.js +126 -126
  817. package/lib/esm/geometry/Placement.js.map +1 -1
  818. package/lib/esm/geometry/Projection.d.ts +251 -251
  819. package/lib/esm/geometry/Projection.js +192 -192
  820. package/lib/esm/geometry/Projection.js.map +1 -1
  821. package/lib/esm/geometry/TextString.d.ts +55 -55
  822. package/lib/esm/geometry/TextString.js +61 -61
  823. package/lib/esm/geometry/TextString.js.map +1 -1
  824. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  825. package/lib/esm/ipc/IpcSession.js +23 -23
  826. package/lib/esm/ipc/IpcSession.js.map +1 -1
  827. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  828. package/lib/esm/ipc/IpcSocket.js +12 -12
  829. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  830. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  831. package/lib/esm/ipc/IpcWebSocket.js +144 -144
  832. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  833. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  834. package/lib/esm/ipc/IpcWebSocketTransport.js +156 -156
  835. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  836. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  837. package/lib/esm/rpc/DevToolsRpcInterface.js +48 -48
  838. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  839. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +99 -99
  840. package/lib/esm/rpc/IModelReadRpcInterface.js +117 -117
  841. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  842. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  843. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  844. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  845. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  846. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  847. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  848. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  849. package/lib/esm/rpc/TestRpcManager.js +36 -36
  850. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  851. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  852. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  853. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  854. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  855. package/lib/esm/rpc/core/RpcConfiguration.js +184 -184
  856. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  857. package/lib/esm/rpc/core/RpcConstants.d.ts +90 -90
  858. package/lib/esm/rpc/core/RpcConstants.js +106 -106
  859. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  860. package/lib/esm/rpc/core/RpcControl.d.ts +54 -54
  861. package/lib/esm/rpc/core/RpcControl.js +138 -138
  862. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  863. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  864. package/lib/esm/rpc/core/RpcInvocation.js +252 -252
  865. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  866. package/lib/esm/rpc/core/RpcMarshaling.d.ts +35 -35
  867. package/lib/esm/rpc/core/RpcMarshaling.js +152 -152
  868. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  869. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  870. package/lib/esm/rpc/core/RpcOperation.js +129 -129
  871. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  872. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  873. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  874. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  875. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  876. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  877. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  878. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  879. package/lib/esm/rpc/core/RpcPush.js +119 -119
  880. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  881. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  882. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  883. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  884. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  885. package/lib/esm/rpc/core/RpcRequest.js +473 -473
  886. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  887. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  888. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  889. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  890. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  891. package/lib/esm/rpc/core/RpcRoutingToken.js +20 -20
  892. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  893. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  894. package/lib/esm/rpc/core/RpcSessionInvocation.js +56 -56
  895. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  896. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  897. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  898. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  899. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  900. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +137 -137
  901. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  902. package/lib/esm/rpc/web/OpenAPI.d.ts +140 -140
  903. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  904. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  905. package/lib/esm/rpc/web/RpcMultipart.d.ts +35 -35
  906. package/lib/esm/rpc/web/RpcMultipart.js +46 -46
  907. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  908. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +28 -28
  909. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  910. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  911. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  912. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  913. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  914. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +67 -67
  915. package/lib/esm/rpc/web/WebAppRpcRequest.js +235 -235
  916. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  917. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  918. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +369 -369
  919. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  920. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  921. package/lib/esm/tile/B3dmTileIO.js +62 -62
  922. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  923. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  924. package/lib/esm/tile/CompositeTileIO.js +22 -22
  925. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  926. package/lib/esm/tile/ElementGraphics.d.ts +145 -145
  927. package/lib/esm/tile/ElementGraphics.js +8 -8
  928. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  929. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  930. package/lib/esm/tile/GltfTileIO.js +105 -105
  931. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  932. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  933. package/lib/esm/tile/I3dmTileIO.js +36 -36
  934. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  935. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  936. package/lib/esm/tile/IModelTileIO.js +90 -90
  937. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  938. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  939. package/lib/esm/tile/PntsTileIO.js +22 -22
  940. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  941. package/lib/esm/tile/TileIO.d.ts +66 -66
  942. package/lib/esm/tile/TileIO.js +110 -110
  943. package/lib/esm/tile/TileIO.js.map +1 -1
  944. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  945. package/lib/esm/tile/TileMetadata.js +660 -660
  946. package/lib/esm/tile/TileMetadata.js.map +1 -1
  947. package/lib/esm/tile/Tileset3dSchema.d.ts +97 -0
  948. package/lib/esm/tile/Tileset3dSchema.d.ts.map +1 -0
  949. package/lib/esm/tile/Tileset3dSchema.js +9 -0
  950. package/lib/esm/tile/Tileset3dSchema.js.map +1 -0
  951. package/package.json +8 -8
package/lib/esm/SkyBox.js CHANGED
@@ -1,203 +1,203 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module DisplayStyles
7
- */
8
- import { Id64 } from "@itwin/core-bentley";
9
- import { ColorDef } from "./ColorDef";
10
- /** Supported types of [[SkyBox]] images.
11
- * @see [[SkyBoxImageProps]].
12
- * @public
13
- * @extensions
14
- */
15
- export var SkyBoxImageType;
16
- (function (SkyBoxImageType) {
17
- /** No image, indicating a [[SkyGradient]] should be displayed. */
18
- SkyBoxImageType[SkyBoxImageType["None"] = 0] = "None";
19
- /** A single image mapped to the surface of a sphere.
20
- * @see [[SkySphere]].
21
- */
22
- SkyBoxImageType[SkyBoxImageType["Spherical"] = 1] = "Spherical";
23
- /** @internal not yet supported */
24
- SkyBoxImageType[SkyBoxImageType["Cylindrical"] = 2] = "Cylindrical";
25
- /** Six images mapped to the faces of a cube.
26
- * @see [[SkyCube]].
27
- */
28
- SkyBoxImageType[SkyBoxImageType["Cube"] = 3] = "Cube";
29
- })(SkyBoxImageType || (SkyBoxImageType = {}));
30
- const defaultGroundColor = ColorDef.from(143, 205, 125);
31
- const defaultZenithColor = ColorDef.from(54, 117, 255);
32
- const defaultNadirColor = ColorDef.from(40, 125, 0);
33
- const defaultSkyColor = ColorDef.from(142, 205, 255);
34
- const defaultExponent = 4.0;
35
- function colorDefFromJson(props) {
36
- return undefined !== props ? ColorDef.fromJSON(props) : undefined;
37
- }
38
- /** Describes how to map a two- or four-color [[Gradient]] to the interior of a sphere to produce a [[SkyBox]].
39
- * @see [[SkyBox.gradient]].
40
- * @public
41
- */
42
- export class SkyGradient {
43
- constructor(args) {
44
- this.twoColor = args.twoColor ?? false;
45
- this.skyColor = args.skyColor ?? defaultSkyColor;
46
- this.groundColor = args.groundColor ?? defaultGroundColor;
47
- this.nadirColor = args.nadirColor ?? defaultNadirColor;
48
- this.zenithColor = args.zenithColor ?? defaultZenithColor;
49
- this.skyExponent = args.skyExponent ?? defaultExponent;
50
- this.groundExponent = args.groundExponent ?? defaultExponent;
51
- }
52
- /** Create a new gradient. Any properties not specified by `props` are initialized to their default values. */
53
- static create(props) {
54
- return props ? new this(props) : this.defaults;
55
- }
56
- /** Create from JSON representation. */
57
- static fromJSON(props) {
58
- if (!props)
59
- return this.defaults;
60
- return new this({
61
- twoColor: props.twoColor,
62
- skyExponent: props.skyExponent,
63
- groundExponent: props.groundExponent,
64
- skyColor: colorDefFromJson(props.skyColor),
65
- groundColor: colorDefFromJson(props.groundColor),
66
- nadirColor: colorDefFromJson(props.nadirColor),
67
- zenithColor: colorDefFromJson(props.zenithColor),
68
- });
69
- }
70
- /** Create ea copy of this gradient, identical except for any properties explicitly specified by `changedProps`.
71
- * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.
72
- */
73
- clone(changedProps) {
74
- return new SkyGradient({ ...this, ...changedProps });
75
- }
76
- /** Convert to JSON representation. */
77
- toJSON() {
78
- const props = {
79
- skyColor: this.skyColor.toJSON(),
80
- groundColor: this.groundColor.toJSON(),
81
- nadirColor: this.nadirColor.toJSON(),
82
- zenithColor: this.zenithColor.toJSON(),
83
- };
84
- if (this.groundExponent !== defaultExponent)
85
- props.groundExponent = this.groundExponent;
86
- if (this.skyExponent !== defaultExponent)
87
- props.skyExponent = this.skyExponent;
88
- if (this.twoColor)
89
- props.twoColor = this.twoColor;
90
- return props;
91
- }
92
- /** Returns true if this gradient is equivalent to the supplied gradient. */
93
- equals(other) {
94
- if (this === other)
95
- return true;
96
- return this.twoColor === other.twoColor && this.skyColor.equals(other.skyColor) && this.groundColor.equals(other.groundColor) &&
97
- this.zenithColor.equals(other.zenithColor) && this.nadirColor.equals(other.nadirColor);
98
- }
99
- }
100
- /** Default settings for a four-color gradient. */
101
- SkyGradient.defaults = new SkyGradient({});
102
- /** Describes how to draw a representation of a sky, as part of an [[Environment]].
103
- * @see [[SkyBoxProps]].
104
- * @public
105
- */
106
- export class SkyBox {
107
- constructor(gradient) {
108
- this.gradient = gradient;
109
- }
110
- /** Create a skybox that displays the specified gradient, or the default gradient if none is supplied. */
111
- static createGradient(gradient) {
112
- return gradient ? new this(gradient) : this.defaults;
113
- }
114
- /** Create from JSON representation. */
115
- static fromJSON(props) {
116
- const gradient = SkyGradient.fromJSON(props);
117
- if (props?.image) {
118
- switch (props.image.type) {
119
- case SkyBoxImageType.Spherical:
120
- if (undefined !== props.image.texture)
121
- return new SkySphere(props.image.texture, gradient);
122
- break;
123
- case SkyBoxImageType.Cube: {
124
- const tx = props.image.textures;
125
- if (tx && undefined !== tx.top && undefined !== tx.bottom && undefined !== tx.right && undefined !== tx.left && undefined !== tx.front && undefined !== tx.back)
126
- return new SkyCube(tx, gradient);
127
- break;
128
- }
129
- }
130
- }
131
- return this.createGradient(gradient);
132
- }
133
- /** Convert to JSON representation.
134
- * @param display If defined, the value to use for [[SkyBoxProps.display]]; otherwise, that property will be left undefined.
135
- */
136
- toJSON(display) {
137
- const props = this.gradient.toJSON();
138
- if (undefined !== display)
139
- props.display = display;
140
- return props;
141
- }
142
- /** @internal */
143
- get textureIds() {
144
- return [];
145
- }
146
- }
147
- /** Default settings for a four-color gradient. */
148
- SkyBox.defaults = new SkyBox(SkyGradient.defaults);
149
- /** Describes how to draw a representation of a sky by mapping a single image to the interior of a sphere.
150
- * @public
151
- */
152
- export class SkySphere extends SkyBox {
153
- /** Create a new sky sphere using the specified image.
154
- * @param image The image to map to the interior of the sphere.
155
- * @param gradient Optionally overrides the default gradient settings used if the image cannot be obtained.
156
- */
157
- constructor(image, gradient) {
158
- super(gradient ?? SkyGradient.defaults);
159
- this.image = image;
160
- }
161
- /** @internal override */
162
- toJSON(display) {
163
- const props = super.toJSON(display);
164
- props.image = {
165
- type: SkyBoxImageType.Spherical,
166
- texture: this.image,
167
- };
168
- return props;
169
- }
170
- /** @internal */
171
- get textureIds() {
172
- return Id64.isValidId64(this.image) ? [this.image] : [];
173
- }
174
- }
175
- /** Describes how to draw a representation of a sky by mapping images to the interior faces of a cube.
176
- * The images are required to be *square*, and each image must have the same dimensions as the other images.
177
- * @public
178
- */
179
- export class SkyCube extends SkyBox {
180
- /** Create a new sky cube using the specified images.
181
- * @param images The images to map to each face of the cube.
182
- * @param Optionally overrides the default gradient settings used if the images cannot be obtained.
183
- */
184
- constructor(images, gradient) {
185
- super(gradient ?? SkyGradient.defaults);
186
- this.images = { ...images };
187
- }
188
- /** @internal override */
189
- toJSON(display) {
190
- const props = super.toJSON(display);
191
- props.image = {
192
- type: SkyBoxImageType.Cube,
193
- textures: { ...this.images },
194
- };
195
- return props;
196
- }
197
- /** @internal */
198
- get textureIds() {
199
- const imgs = this.images;
200
- return [imgs.front, imgs.back, imgs.top, imgs.bottom, imgs.left, imgs.right].filter((x) => Id64.isValidId64(x));
201
- }
202
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module DisplayStyles
7
+ */
8
+ import { Id64 } from "@itwin/core-bentley";
9
+ import { ColorDef } from "./ColorDef";
10
+ /** Supported types of [[SkyBox]] images.
11
+ * @see [[SkyBoxImageProps]].
12
+ * @public
13
+ * @extensions
14
+ */
15
+ export var SkyBoxImageType;
16
+ (function (SkyBoxImageType) {
17
+ /** No image, indicating a [[SkyGradient]] should be displayed. */
18
+ SkyBoxImageType[SkyBoxImageType["None"] = 0] = "None";
19
+ /** A single image mapped to the surface of a sphere.
20
+ * @see [[SkySphere]].
21
+ */
22
+ SkyBoxImageType[SkyBoxImageType["Spherical"] = 1] = "Spherical";
23
+ /** @internal not yet supported */
24
+ SkyBoxImageType[SkyBoxImageType["Cylindrical"] = 2] = "Cylindrical";
25
+ /** Six images mapped to the faces of a cube.
26
+ * @see [[SkyCube]].
27
+ */
28
+ SkyBoxImageType[SkyBoxImageType["Cube"] = 3] = "Cube";
29
+ })(SkyBoxImageType || (SkyBoxImageType = {}));
30
+ const defaultGroundColor = ColorDef.from(143, 205, 125);
31
+ const defaultZenithColor = ColorDef.from(54, 117, 255);
32
+ const defaultNadirColor = ColorDef.from(40, 125, 0);
33
+ const defaultSkyColor = ColorDef.from(142, 205, 255);
34
+ const defaultExponent = 4.0;
35
+ function colorDefFromJson(props) {
36
+ return undefined !== props ? ColorDef.fromJSON(props) : undefined;
37
+ }
38
+ /** Describes how to map a two- or four-color [[Gradient]] to the interior of a sphere to produce a [[SkyBox]].
39
+ * @see [[SkyBox.gradient]].
40
+ * @public
41
+ */
42
+ export class SkyGradient {
43
+ constructor(args) {
44
+ this.twoColor = args.twoColor ?? false;
45
+ this.skyColor = args.skyColor ?? defaultSkyColor;
46
+ this.groundColor = args.groundColor ?? defaultGroundColor;
47
+ this.nadirColor = args.nadirColor ?? defaultNadirColor;
48
+ this.zenithColor = args.zenithColor ?? defaultZenithColor;
49
+ this.skyExponent = args.skyExponent ?? defaultExponent;
50
+ this.groundExponent = args.groundExponent ?? defaultExponent;
51
+ }
52
+ /** Create a new gradient. Any properties not specified by `props` are initialized to their default values. */
53
+ static create(props) {
54
+ return props ? new this(props) : this.defaults;
55
+ }
56
+ /** Create from JSON representation. */
57
+ static fromJSON(props) {
58
+ if (!props)
59
+ return this.defaults;
60
+ return new this({
61
+ twoColor: props.twoColor,
62
+ skyExponent: props.skyExponent,
63
+ groundExponent: props.groundExponent,
64
+ skyColor: colorDefFromJson(props.skyColor),
65
+ groundColor: colorDefFromJson(props.groundColor),
66
+ nadirColor: colorDefFromJson(props.nadirColor),
67
+ zenithColor: colorDefFromJson(props.zenithColor),
68
+ });
69
+ }
70
+ /** Create ea copy of this gradient, identical except for any properties explicitly specified by `changedProps`.
71
+ * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.
72
+ */
73
+ clone(changedProps) {
74
+ return new SkyGradient({ ...this, ...changedProps });
75
+ }
76
+ /** Convert to JSON representation. */
77
+ toJSON() {
78
+ const props = {
79
+ skyColor: this.skyColor.toJSON(),
80
+ groundColor: this.groundColor.toJSON(),
81
+ nadirColor: this.nadirColor.toJSON(),
82
+ zenithColor: this.zenithColor.toJSON(),
83
+ };
84
+ if (this.groundExponent !== defaultExponent)
85
+ props.groundExponent = this.groundExponent;
86
+ if (this.skyExponent !== defaultExponent)
87
+ props.skyExponent = this.skyExponent;
88
+ if (this.twoColor)
89
+ props.twoColor = this.twoColor;
90
+ return props;
91
+ }
92
+ /** Returns true if this gradient is equivalent to the supplied gradient. */
93
+ equals(other) {
94
+ if (this === other)
95
+ return true;
96
+ return this.twoColor === other.twoColor && this.skyColor.equals(other.skyColor) && this.groundColor.equals(other.groundColor) &&
97
+ this.zenithColor.equals(other.zenithColor) && this.nadirColor.equals(other.nadirColor);
98
+ }
99
+ }
100
+ /** Default settings for a four-color gradient. */
101
+ SkyGradient.defaults = new SkyGradient({});
102
+ /** Describes how to draw a representation of a sky, as part of an [[Environment]].
103
+ * @see [[SkyBoxProps]].
104
+ * @public
105
+ */
106
+ export class SkyBox {
107
+ constructor(gradient) {
108
+ this.gradient = gradient;
109
+ }
110
+ /** Create a skybox that displays the specified gradient, or the default gradient if none is supplied. */
111
+ static createGradient(gradient) {
112
+ return gradient ? new this(gradient) : this.defaults;
113
+ }
114
+ /** Create from JSON representation. */
115
+ static fromJSON(props) {
116
+ const gradient = SkyGradient.fromJSON(props);
117
+ if (props?.image) {
118
+ switch (props.image.type) {
119
+ case SkyBoxImageType.Spherical:
120
+ if (undefined !== props.image.texture)
121
+ return new SkySphere(props.image.texture, gradient);
122
+ break;
123
+ case SkyBoxImageType.Cube: {
124
+ const tx = props.image.textures;
125
+ if (tx && undefined !== tx.top && undefined !== tx.bottom && undefined !== tx.right && undefined !== tx.left && undefined !== tx.front && undefined !== tx.back)
126
+ return new SkyCube(tx, gradient);
127
+ break;
128
+ }
129
+ }
130
+ }
131
+ return this.createGradient(gradient);
132
+ }
133
+ /** Convert to JSON representation.
134
+ * @param display If defined, the value to use for [[SkyBoxProps.display]]; otherwise, that property will be left undefined.
135
+ */
136
+ toJSON(display) {
137
+ const props = this.gradient.toJSON();
138
+ if (undefined !== display)
139
+ props.display = display;
140
+ return props;
141
+ }
142
+ /** @internal */
143
+ get textureIds() {
144
+ return [];
145
+ }
146
+ }
147
+ /** Default settings for a four-color gradient. */
148
+ SkyBox.defaults = new SkyBox(SkyGradient.defaults);
149
+ /** Describes how to draw a representation of a sky by mapping a single image to the interior of a sphere.
150
+ * @public
151
+ */
152
+ export class SkySphere extends SkyBox {
153
+ /** Create a new sky sphere using the specified image.
154
+ * @param image The image to map to the interior of the sphere.
155
+ * @param gradient Optionally overrides the default gradient settings used if the image cannot be obtained.
156
+ */
157
+ constructor(image, gradient) {
158
+ super(gradient ?? SkyGradient.defaults);
159
+ this.image = image;
160
+ }
161
+ /** @internal override */
162
+ toJSON(display) {
163
+ const props = super.toJSON(display);
164
+ props.image = {
165
+ type: SkyBoxImageType.Spherical,
166
+ texture: this.image,
167
+ };
168
+ return props;
169
+ }
170
+ /** @internal */
171
+ get textureIds() {
172
+ return Id64.isValidId64(this.image) ? [this.image] : [];
173
+ }
174
+ }
175
+ /** Describes how to draw a representation of a sky by mapping images to the interior faces of a cube.
176
+ * The images are required to be *square*, and each image must have the same dimensions as the other images.
177
+ * @public
178
+ */
179
+ export class SkyCube extends SkyBox {
180
+ /** Create a new sky cube using the specified images.
181
+ * @param images The images to map to each face of the cube.
182
+ * @param Optionally overrides the default gradient settings used if the images cannot be obtained.
183
+ */
184
+ constructor(images, gradient) {
185
+ super(gradient ?? SkyGradient.defaults);
186
+ this.images = { ...images };
187
+ }
188
+ /** @internal override */
189
+ toJSON(display) {
190
+ const props = super.toJSON(display);
191
+ props.image = {
192
+ type: SkyBoxImageType.Cube,
193
+ textures: { ...this.images },
194
+ };
195
+ return props;
196
+ }
197
+ /** @internal */
198
+ get textureIds() {
199
+ const imgs = this.images;
200
+ return [imgs.front, imgs.back, imgs.top, imgs.bottom, imgs.left, imgs.right].filter((x) => Id64.isValidId64(x));
201
+ }
202
+ }
203
203
  //# sourceMappingURL=SkyBox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SkyBox.js","sourceRoot":"","sources":["../../src/SkyBox.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module DisplayStyles\r\n */\r\n\r\nimport { Id64, Id64String, NonFunctionPropertiesOf } from \"@itwin/core-bentley\";\r\nimport { ColorDef, ColorDefProps } from \"./ColorDef\";\r\nimport { TextureImageSpec } from \"./RenderTexture\";\r\n\r\n/** Supported types of [[SkyBox]] images.\r\n * @see [[SkyBoxImageProps]].\r\n * @public\r\n * @extensions\r\n */\r\nexport enum SkyBoxImageType {\r\n /** No image, indicating a [[SkyGradient]] should be displayed. */\r\n None = 0,\r\n /** A single image mapped to the surface of a sphere.\r\n * @see [[SkySphere]].\r\n */\r\n Spherical = 1,\r\n /** @internal not yet supported */\r\n Cylindrical = 2,\r\n /** Six images mapped to the faces of a cube.\r\n * @see [[SkyCube]].\r\n */\r\n Cube = 3,\r\n}\r\n\r\n/** JSON representation of the six images used by a [[SkyCube]].\r\n * Each property specifies the image for a face of the cube as either an image URL, or the Id of a [Texture]($backend) element.\r\n * Each image must be square and have the same dimensions as all the other images.\r\n * @public\r\n * @extensions\r\n */\r\nexport interface SkyCubeProps {\r\n front: TextureImageSpec;\r\n back: TextureImageSpec;\r\n top: TextureImageSpec;\r\n bottom: TextureImageSpec;\r\n right: TextureImageSpec;\r\n left: TextureImageSpec;\r\n}\r\n\r\n/** JSON representation of the image used for a [[SkySphere]].\r\n * @see [[SkyBoxProps.image]].\r\n * @public\r\n */\r\nexport interface SkySphereImageProps {\r\n type: SkyBoxImageType.Spherical;\r\n texture: TextureImageSpec;\r\n /** @internal */\r\n textures?: never;\r\n}\r\n\r\n/** JSON representation of the images used for a [[SkyCube]].\r\n * @see [[SkyBoxProps.image]].\r\n * @public\r\n */\r\nexport interface SkyCubeImageProps {\r\n type: SkyBoxImageType.Cube;\r\n textures: SkyCubeProps;\r\n /** @internal */\r\n texture?: never;\r\n}\r\n\r\n/** JSON representation of the image(s) to be mapped to the surfaces of a [[SkyBox]].\r\n * @see [[SkyBoxProps.image]].\r\n * @public\r\n * @extensions\r\n */\r\nexport type SkyBoxImageProps = SkySphereImageProps | SkyCubeImageProps | { type?: SkyBoxImageType, texture?: never, textures?: never };\r\n\r\n/** JSON representation of a [[SkyBox]] that can be drawn as the background of a [ViewState3d]($frontend).\r\n * An object of this type can describe one of several types of sky box:\r\n * - A cube with a texture image mapped to each face; or\r\n * - A sphere with a single texture image mapped to its surface; or\r\n * - A sphere with a two- or four-color vertical [[Gradient]] mapped to its surface.\r\n *\r\n * Whether cuboid or spherical, the skybox is drawn as if the viewer and the contents of the view are contained within its interior.\r\n *\r\n * For a two-color gradient, the gradient transitions smoothly from the nadir color at the bottom of the sphere to the zenith color at the top of the sphere.\r\n * The sky and ground colors are unused, as are the sky and ground exponents.\r\n *\r\n * For a four-color gradient, a \"horizon\" is produced on the equator of the sphere, where the ground color and sky color meet. The lower half of the sphere transitions\r\n * smoothly from the ground color at the equator to the nadir color at the bottom, and the upper half transitions from the sky color at the equator to the zenith color at\r\n * the top of the sphere.\r\n *\r\n * The color and exponent properties are unused if one or more texture images are supplied.\r\n *\r\n * @see [[DisplayStyle3dSettings.environment]] to define the skybox for a display style.\r\n * @public\r\n * @extensions\r\n */\r\nexport interface SkyBoxProps {\r\n /** Whether or not the skybox should be displayed.\r\n * Default: false.\r\n */\r\n display?: boolean;\r\n /** For a [[SkyGradient]], if true, a 2-color gradient skybox is used instead of a 4-color.\r\n * Default: false.\r\n */\r\n twoColor?: boolean;\r\n /** The color of the sky at the horizon. Unused unless this is a four-color [[SkyGradient]].\r\n * Default: (143, 205, 255).\r\n */\r\n skyColor?: ColorDefProps;\r\n /** The color of the ground at the horizon. Unused unless this is a four-color [[SkyGradient]].\r\n * Default: (120, 143, 125).\r\n */\r\n groundColor?: ColorDefProps;\r\n /** The color of the top of the sphere.\r\n * Default: (54, 117, 255).\r\n */\r\n zenithColor?: ColorDefProps;\r\n /** The color of the bottom of the sphere.\r\n * Default: (40, 15, 0).\r\n */\r\n nadirColor?: ColorDefProps;\r\n /** For a 4-color [[SkyGradient]], controls speed of change from sky color to zenith color; otherwise unused.\r\n * Default: 4.0.\r\n */\r\n skyExponent?: number;\r\n /** For a 4-color [[SkyGradient]], controls speed of change from ground color to nadir color; otherwise unused.\r\n * Default: 4.0.\r\n */\r\n groundExponent?: number;\r\n /** The image(s), if any, to be mapped to the surfaces of the sphere or cube. If undefined, the skybox will be displayed as a gradient instead.\r\n * Default: undefined.\r\n */\r\n image?: SkyBoxImageProps;\r\n}\r\n\r\nconst defaultGroundColor = ColorDef.from(143, 205, 125);\r\nconst defaultZenithColor = ColorDef.from(54, 117, 255);\r\nconst defaultNadirColor = ColorDef.from(40, 125, 0);\r\nconst defaultSkyColor = ColorDef.from(142, 205, 255);\r\nconst defaultExponent = 4.0;\r\n\r\nfunction colorDefFromJson(props?: ColorDefProps): ColorDef | undefined {\r\n return undefined !== props ? ColorDef.fromJSON(props) : undefined;\r\n}\r\n\r\n/** A type containing all of the properties and none of the methods of [[SkyGradient]] with `readonly` modifiers removed.\r\n * @see [[SkyGradient.create]] and [[SkyGradient.clone]].\r\n * @public\r\n */\r\nexport type SkyGradientProperties = NonFunctionPropertiesOf<SkyGradient>;\r\n\r\n/** Describes how to map a two- or four-color [[Gradient]] to the interior of a sphere to produce a [[SkyBox]].\r\n * @see [[SkyBox.gradient]].\r\n * @public\r\n */\r\nexport class SkyGradient {\r\n public readonly twoColor: boolean;\r\n public readonly skyColor: ColorDef;\r\n public readonly groundColor: ColorDef;\r\n public readonly zenithColor: ColorDef;\r\n public readonly nadirColor: ColorDef;\r\n public readonly skyExponent: number;\r\n public readonly groundExponent: number;\r\n\r\n private constructor(args: Partial<SkyGradientProperties>) {\r\n this.twoColor = args.twoColor ?? false;\r\n this.skyColor = args.skyColor ?? defaultSkyColor;\r\n this.groundColor = args.groundColor ?? defaultGroundColor;\r\n this.nadirColor = args.nadirColor ?? defaultNadirColor;\r\n this.zenithColor = args.zenithColor ?? defaultZenithColor;\r\n this.skyExponent = args.skyExponent ?? defaultExponent;\r\n this.groundExponent = args.groundExponent ?? defaultExponent;\r\n }\r\n\r\n /** Default settings for a four-color gradient. */\r\n public static readonly defaults = new SkyGradient({});\r\n\r\n /** Create a new gradient. Any properties not specified by `props` are initialized to their default values. */\r\n public static create(props?: Partial<SkyGradientProperties>): SkyGradient {\r\n return props ? new this(props) : this.defaults;\r\n }\r\n\r\n /** Create from JSON representation. */\r\n public static fromJSON(props?: SkyBoxProps): SkyGradient {\r\n if (!props)\r\n return this.defaults;\r\n\r\n return new this({\r\n twoColor: props.twoColor,\r\n skyExponent: props.skyExponent,\r\n groundExponent: props.groundExponent,\r\n skyColor: colorDefFromJson(props.skyColor),\r\n groundColor: colorDefFromJson(props.groundColor),\r\n nadirColor: colorDefFromJson(props.nadirColor),\r\n zenithColor: colorDefFromJson(props.zenithColor),\r\n });\r\n }\r\n\r\n /** Create ea copy of this gradient, identical except for any properties explicitly specified by `changedProps`.\r\n * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.\r\n */\r\n public clone(changedProps: SkyGradientProperties): SkyGradient {\r\n return new SkyGradient({ ...this, ...changedProps });\r\n }\r\n\r\n /** Convert to JSON representation. */\r\n public toJSON(): SkyBoxProps {\r\n const props: SkyBoxProps = {\r\n skyColor: this.skyColor.toJSON(),\r\n groundColor: this.groundColor.toJSON(),\r\n nadirColor: this.nadirColor.toJSON(),\r\n zenithColor: this.zenithColor.toJSON(),\r\n };\r\n\r\n if (this.groundExponent !== defaultExponent)\r\n props.groundExponent = this.groundExponent;\r\n\r\n if (this.skyExponent !== defaultExponent)\r\n props.skyExponent = this.skyExponent;\r\n\r\n if (this.twoColor)\r\n props.twoColor = this.twoColor;\r\n\r\n return props;\r\n }\r\n\r\n /** Returns true if this gradient is equivalent to the supplied gradient. */\r\n public equals(other: SkyGradient): boolean {\r\n if (this === other)\r\n return true;\r\n\r\n return this.twoColor === other.twoColor && this.skyColor.equals(other.skyColor) && this.groundColor.equals(other.groundColor) &&\r\n this.zenithColor.equals(other.zenithColor) && this.nadirColor.equals(other.nadirColor);\r\n }\r\n}\r\n\r\n/** Describes how to draw a representation of a sky, as part of an [[Environment]].\r\n * @see [[SkyBoxProps]].\r\n * @public\r\n */\r\nexport class SkyBox {\r\n /** The gradient settings, used if no cube or sphere images are supplied, or if the images cannot be loaded. */\r\n public readonly gradient: SkyGradient;\r\n\r\n protected constructor(gradient: SkyGradient) {\r\n this.gradient = gradient;\r\n }\r\n\r\n /** Default settings for a four-color gradient. */\r\n public static readonly defaults = new SkyBox(SkyGradient.defaults);\r\n\r\n /** Create a skybox that displays the specified gradient, or the default gradient if none is supplied. */\r\n public static createGradient(gradient?: SkyGradient): SkyBox {\r\n return gradient ? new this(gradient) : this.defaults;\r\n }\r\n\r\n /** Create from JSON representation. */\r\n public static fromJSON(props?: SkyBoxProps): SkyBox {\r\n const gradient = SkyGradient.fromJSON(props);\r\n\r\n if (props?.image) {\r\n switch (props.image.type) {\r\n case SkyBoxImageType.Spherical:\r\n if (undefined !== props.image.texture)\r\n return new SkySphere(props.image.texture, gradient);\r\n\r\n break;\r\n case SkyBoxImageType.Cube: {\r\n const tx = props.image.textures;\r\n if (tx && undefined !== tx.top && undefined !== tx.bottom && undefined !== tx.right && undefined !== tx.left && undefined !== tx.front && undefined !== tx.back)\r\n return new SkyCube(tx, gradient);\r\n\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return this.createGradient(gradient);\r\n }\r\n\r\n /** Convert to JSON representation.\r\n * @param display If defined, the value to use for [[SkyBoxProps.display]]; otherwise, that property will be left undefined.\r\n */\r\n public toJSON(display?: boolean): SkyBoxProps {\r\n const props = this.gradient.toJSON();\r\n if (undefined !== display)\r\n props.display = display;\r\n\r\n return props;\r\n }\r\n\r\n /** @internal */\r\n public get textureIds(): Iterable<Id64String> {\r\n return [];\r\n }\r\n}\r\n\r\n/** Describes how to draw a representation of a sky by mapping a single image to the interior of a sphere.\r\n * @public\r\n */\r\nexport class SkySphere extends SkyBox {\r\n /** The image to map to the interior of the sphere. */\r\n public readonly image: TextureImageSpec;\r\n\r\n /** Create a new sky sphere using the specified image.\r\n * @param image The image to map to the interior of the sphere.\r\n * @param gradient Optionally overrides the default gradient settings used if the image cannot be obtained.\r\n */\r\n public constructor(image: TextureImageSpec, gradient?: SkyGradient) {\r\n super(gradient ?? SkyGradient.defaults);\r\n this.image = image;\r\n }\r\n\r\n /** @internal override */\r\n public override toJSON(display?: boolean): SkyBoxProps {\r\n const props = super.toJSON(display);\r\n props.image = {\r\n type: SkyBoxImageType.Spherical,\r\n texture: this.image,\r\n };\r\n\r\n return props;\r\n }\r\n\r\n /** @internal */\r\n public override get textureIds(): Iterable<Id64String> {\r\n return Id64.isValidId64(this.image) ? [this.image] : [];\r\n }\r\n}\r\n\r\n/** Describes how to draw a representation of a sky by mapping images to the interior faces of a cube.\r\n * The images are required to be *square*, and each image must have the same dimensions as the other images.\r\n * @public\r\n */\r\nexport class SkyCube extends SkyBox {\r\n /** The images to map to each face of the cube. */\r\n public readonly images: SkyCubeProps;\r\n\r\n /** Create a new sky cube using the specified images.\r\n * @param images The images to map to each face of the cube.\r\n * @param Optionally overrides the default gradient settings used if the images cannot be obtained.\r\n */\r\n public constructor(images: SkyCubeProps, gradient?: SkyGradient) {\r\n super(gradient ?? SkyGradient.defaults);\r\n this.images = { ...images };\r\n }\r\n\r\n /** @internal override */\r\n public override toJSON(display?: boolean): SkyBoxProps {\r\n const props = super.toJSON(display);\r\n props.image = {\r\n type: SkyBoxImageType.Cube,\r\n textures: { ...this.images },\r\n };\r\n\r\n return props;\r\n }\r\n\r\n /** @internal */\r\n public override get textureIds(): Iterable<Id64String> {\r\n const imgs = this.images;\r\n return [imgs.front, imgs.back, imgs.top, imgs.bottom, imgs.left, imgs.right].filter((x) => Id64.isValidId64(x));\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"SkyBox.js","sourceRoot":"","sources":["../../src/SkyBox.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module DisplayStyles\n */\n\nimport { Id64, Id64String, NonFunctionPropertiesOf } from \"@itwin/core-bentley\";\nimport { ColorDef, ColorDefProps } from \"./ColorDef\";\nimport { TextureImageSpec } from \"./RenderTexture\";\n\n/** Supported types of [[SkyBox]] images.\n * @see [[SkyBoxImageProps]].\n * @public\n * @extensions\n */\nexport enum SkyBoxImageType {\n /** No image, indicating a [[SkyGradient]] should be displayed. */\n None = 0,\n /** A single image mapped to the surface of a sphere.\n * @see [[SkySphere]].\n */\n Spherical = 1,\n /** @internal not yet supported */\n Cylindrical = 2,\n /** Six images mapped to the faces of a cube.\n * @see [[SkyCube]].\n */\n Cube = 3,\n}\n\n/** JSON representation of the six images used by a [[SkyCube]].\n * Each property specifies the image for a face of the cube as either an image URL, or the Id of a [Texture]($backend) element.\n * Each image must be square and have the same dimensions as all the other images.\n * @public\n * @extensions\n */\nexport interface SkyCubeProps {\n front: TextureImageSpec;\n back: TextureImageSpec;\n top: TextureImageSpec;\n bottom: TextureImageSpec;\n right: TextureImageSpec;\n left: TextureImageSpec;\n}\n\n/** JSON representation of the image used for a [[SkySphere]].\n * @see [[SkyBoxProps.image]].\n * @public\n */\nexport interface SkySphereImageProps {\n type: SkyBoxImageType.Spherical;\n texture: TextureImageSpec;\n /** @internal */\n textures?: never;\n}\n\n/** JSON representation of the images used for a [[SkyCube]].\n * @see [[SkyBoxProps.image]].\n * @public\n */\nexport interface SkyCubeImageProps {\n type: SkyBoxImageType.Cube;\n textures: SkyCubeProps;\n /** @internal */\n texture?: never;\n}\n\n/** JSON representation of the image(s) to be mapped to the surfaces of a [[SkyBox]].\n * @see [[SkyBoxProps.image]].\n * @public\n * @extensions\n */\nexport type SkyBoxImageProps = SkySphereImageProps | SkyCubeImageProps | { type?: SkyBoxImageType, texture?: never, textures?: never };\n\n/** JSON representation of a [[SkyBox]] that can be drawn as the background of a [ViewState3d]($frontend).\n * An object of this type can describe one of several types of sky box:\n * - A cube with a texture image mapped to each face; or\n * - A sphere with a single texture image mapped to its surface; or\n * - A sphere with a two- or four-color vertical [[Gradient]] mapped to its surface.\n *\n * Whether cuboid or spherical, the skybox is drawn as if the viewer and the contents of the view are contained within its interior.\n *\n * For a two-color gradient, the gradient transitions smoothly from the nadir color at the bottom of the sphere to the zenith color at the top of the sphere.\n * The sky and ground colors are unused, as are the sky and ground exponents.\n *\n * For a four-color gradient, a \"horizon\" is produced on the equator of the sphere, where the ground color and sky color meet. The lower half of the sphere transitions\n * smoothly from the ground color at the equator to the nadir color at the bottom, and the upper half transitions from the sky color at the equator to the zenith color at\n * the top of the sphere.\n *\n * The color and exponent properties are unused if one or more texture images are supplied.\n *\n * @see [[DisplayStyle3dSettings.environment]] to define the skybox for a display style.\n * @public\n * @extensions\n */\nexport interface SkyBoxProps {\n /** Whether or not the skybox should be displayed.\n * Default: false.\n */\n display?: boolean;\n /** For a [[SkyGradient]], if true, a 2-color gradient skybox is used instead of a 4-color.\n * Default: false.\n */\n twoColor?: boolean;\n /** The color of the sky at the horizon. Unused unless this is a four-color [[SkyGradient]].\n * Default: (143, 205, 255).\n */\n skyColor?: ColorDefProps;\n /** The color of the ground at the horizon. Unused unless this is a four-color [[SkyGradient]].\n * Default: (120, 143, 125).\n */\n groundColor?: ColorDefProps;\n /** The color of the top of the sphere.\n * Default: (54, 117, 255).\n */\n zenithColor?: ColorDefProps;\n /** The color of the bottom of the sphere.\n * Default: (40, 15, 0).\n */\n nadirColor?: ColorDefProps;\n /** For a 4-color [[SkyGradient]], controls speed of change from sky color to zenith color; otherwise unused.\n * Default: 4.0.\n */\n skyExponent?: number;\n /** For a 4-color [[SkyGradient]], controls speed of change from ground color to nadir color; otherwise unused.\n * Default: 4.0.\n */\n groundExponent?: number;\n /** The image(s), if any, to be mapped to the surfaces of the sphere or cube. If undefined, the skybox will be displayed as a gradient instead.\n * Default: undefined.\n */\n image?: SkyBoxImageProps;\n}\n\nconst defaultGroundColor = ColorDef.from(143, 205, 125);\nconst defaultZenithColor = ColorDef.from(54, 117, 255);\nconst defaultNadirColor = ColorDef.from(40, 125, 0);\nconst defaultSkyColor = ColorDef.from(142, 205, 255);\nconst defaultExponent = 4.0;\n\nfunction colorDefFromJson(props?: ColorDefProps): ColorDef | undefined {\n return undefined !== props ? ColorDef.fromJSON(props) : undefined;\n}\n\n/** A type containing all of the properties and none of the methods of [[SkyGradient]] with `readonly` modifiers removed.\n * @see [[SkyGradient.create]] and [[SkyGradient.clone]].\n * @public\n */\nexport type SkyGradientProperties = NonFunctionPropertiesOf<SkyGradient>;\n\n/** Describes how to map a two- or four-color [[Gradient]] to the interior of a sphere to produce a [[SkyBox]].\n * @see [[SkyBox.gradient]].\n * @public\n */\nexport class SkyGradient {\n public readonly twoColor: boolean;\n public readonly skyColor: ColorDef;\n public readonly groundColor: ColorDef;\n public readonly zenithColor: ColorDef;\n public readonly nadirColor: ColorDef;\n public readonly skyExponent: number;\n public readonly groundExponent: number;\n\n private constructor(args: Partial<SkyGradientProperties>) {\n this.twoColor = args.twoColor ?? false;\n this.skyColor = args.skyColor ?? defaultSkyColor;\n this.groundColor = args.groundColor ?? defaultGroundColor;\n this.nadirColor = args.nadirColor ?? defaultNadirColor;\n this.zenithColor = args.zenithColor ?? defaultZenithColor;\n this.skyExponent = args.skyExponent ?? defaultExponent;\n this.groundExponent = args.groundExponent ?? defaultExponent;\n }\n\n /** Default settings for a four-color gradient. */\n public static readonly defaults = new SkyGradient({});\n\n /** Create a new gradient. Any properties not specified by `props` are initialized to their default values. */\n public static create(props?: Partial<SkyGradientProperties>): SkyGradient {\n return props ? new this(props) : this.defaults;\n }\n\n /** Create from JSON representation. */\n public static fromJSON(props?: SkyBoxProps): SkyGradient {\n if (!props)\n return this.defaults;\n\n return new this({\n twoColor: props.twoColor,\n skyExponent: props.skyExponent,\n groundExponent: props.groundExponent,\n skyColor: colorDefFromJson(props.skyColor),\n groundColor: colorDefFromJson(props.groundColor),\n nadirColor: colorDefFromJson(props.nadirColor),\n zenithColor: colorDefFromJson(props.zenithColor),\n });\n }\n\n /** Create ea copy of this gradient, identical except for any properties explicitly specified by `changedProps`.\n * Any properties of `changedProps` explicitly set to `undefined` will be reset to their default values.\n */\n public clone(changedProps: SkyGradientProperties): SkyGradient {\n return new SkyGradient({ ...this, ...changedProps });\n }\n\n /** Convert to JSON representation. */\n public toJSON(): SkyBoxProps {\n const props: SkyBoxProps = {\n skyColor: this.skyColor.toJSON(),\n groundColor: this.groundColor.toJSON(),\n nadirColor: this.nadirColor.toJSON(),\n zenithColor: this.zenithColor.toJSON(),\n };\n\n if (this.groundExponent !== defaultExponent)\n props.groundExponent = this.groundExponent;\n\n if (this.skyExponent !== defaultExponent)\n props.skyExponent = this.skyExponent;\n\n if (this.twoColor)\n props.twoColor = this.twoColor;\n\n return props;\n }\n\n /** Returns true if this gradient is equivalent to the supplied gradient. */\n public equals(other: SkyGradient): boolean {\n if (this === other)\n return true;\n\n return this.twoColor === other.twoColor && this.skyColor.equals(other.skyColor) && this.groundColor.equals(other.groundColor) &&\n this.zenithColor.equals(other.zenithColor) && this.nadirColor.equals(other.nadirColor);\n }\n}\n\n/** Describes how to draw a representation of a sky, as part of an [[Environment]].\n * @see [[SkyBoxProps]].\n * @public\n */\nexport class SkyBox {\n /** The gradient settings, used if no cube or sphere images are supplied, or if the images cannot be loaded. */\n public readonly gradient: SkyGradient;\n\n protected constructor(gradient: SkyGradient) {\n this.gradient = gradient;\n }\n\n /** Default settings for a four-color gradient. */\n public static readonly defaults = new SkyBox(SkyGradient.defaults);\n\n /** Create a skybox that displays the specified gradient, or the default gradient if none is supplied. */\n public static createGradient(gradient?: SkyGradient): SkyBox {\n return gradient ? new this(gradient) : this.defaults;\n }\n\n /** Create from JSON representation. */\n public static fromJSON(props?: SkyBoxProps): SkyBox {\n const gradient = SkyGradient.fromJSON(props);\n\n if (props?.image) {\n switch (props.image.type) {\n case SkyBoxImageType.Spherical:\n if (undefined !== props.image.texture)\n return new SkySphere(props.image.texture, gradient);\n\n break;\n case SkyBoxImageType.Cube: {\n const tx = props.image.textures;\n if (tx && undefined !== tx.top && undefined !== tx.bottom && undefined !== tx.right && undefined !== tx.left && undefined !== tx.front && undefined !== tx.back)\n return new SkyCube(tx, gradient);\n\n break;\n }\n }\n }\n\n return this.createGradient(gradient);\n }\n\n /** Convert to JSON representation.\n * @param display If defined, the value to use for [[SkyBoxProps.display]]; otherwise, that property will be left undefined.\n */\n public toJSON(display?: boolean): SkyBoxProps {\n const props = this.gradient.toJSON();\n if (undefined !== display)\n props.display = display;\n\n return props;\n }\n\n /** @internal */\n public get textureIds(): Iterable<Id64String> {\n return [];\n }\n}\n\n/** Describes how to draw a representation of a sky by mapping a single image to the interior of a sphere.\n * @public\n */\nexport class SkySphere extends SkyBox {\n /** The image to map to the interior of the sphere. */\n public readonly image: TextureImageSpec;\n\n /** Create a new sky sphere using the specified image.\n * @param image The image to map to the interior of the sphere.\n * @param gradient Optionally overrides the default gradient settings used if the image cannot be obtained.\n */\n public constructor(image: TextureImageSpec, gradient?: SkyGradient) {\n super(gradient ?? SkyGradient.defaults);\n this.image = image;\n }\n\n /** @internal override */\n public override toJSON(display?: boolean): SkyBoxProps {\n const props = super.toJSON(display);\n props.image = {\n type: SkyBoxImageType.Spherical,\n texture: this.image,\n };\n\n return props;\n }\n\n /** @internal */\n public override get textureIds(): Iterable<Id64String> {\n return Id64.isValidId64(this.image) ? [this.image] : [];\n }\n}\n\n/** Describes how to draw a representation of a sky by mapping images to the interior faces of a cube.\n * The images are required to be *square*, and each image must have the same dimensions as the other images.\n * @public\n */\nexport class SkyCube extends SkyBox {\n /** The images to map to each face of the cube. */\n public readonly images: SkyCubeProps;\n\n /** Create a new sky cube using the specified images.\n * @param images The images to map to each face of the cube.\n * @param Optionally overrides the default gradient settings used if the images cannot be obtained.\n */\n public constructor(images: SkyCubeProps, gradient?: SkyGradient) {\n super(gradient ?? SkyGradient.defaults);\n this.images = { ...images };\n }\n\n /** @internal override */\n public override toJSON(display?: boolean): SkyBoxProps {\n const props = super.toJSON(display);\n props.image = {\n type: SkyBoxImageType.Cube,\n textures: { ...this.images },\n };\n\n return props;\n }\n\n /** @internal */\n public override get textureIds(): Iterable<Id64String> {\n const imgs = this.images;\n return [imgs.front, imgs.back, imgs.top, imgs.bottom, imgs.left, imgs.right].filter((x) => Id64.isValidId64(x));\n }\n}\n"]}
@@ -1,50 +1,50 @@
1
- /** @packageDocumentation
2
- * @module Geometry
3
- */
4
- import { Id64Array, Id64String } from "@itwin/core-bentley";
5
- import { Matrix4dProps, XYZProps } from "@itwin/core-geometry";
6
- import { GeometryStreamProps } from "./geometry/GeometryStream";
7
- import { GeometryClass } from "./GeometryParams";
8
- import { ViewFlagProps } from "./ViewFlags";
9
- /** Information required to request a *snap* to a pickable decoration from the front end to the back end.
10
- * @internal
11
- */
12
- export interface DecorationGeometryProps {
13
- readonly id: Id64String;
14
- readonly geometryStream: GeometryStreamProps;
15
- }
16
- /** Information required to request a *snap* to an element from the front end to the back end.
17
- * Includes the viewing parameters so that snap can be relative to the view direction, viewing mode, etc.
18
- * @internal
19
- */
20
- export interface SnapRequestProps {
21
- id: Id64String;
22
- testPoint: XYZProps;
23
- closePoint: XYZProps;
24
- worldToView: Matrix4dProps;
25
- viewFlags?: ViewFlagProps;
26
- snapModes?: number[];
27
- snapAperture?: number;
28
- snapDivisor?: number;
29
- subCategoryId?: Id64String;
30
- geometryClass?: GeometryClass;
31
- intersectCandidates?: Id64Array;
32
- decorationGeometry?: DecorationGeometryProps[];
33
- }
34
- /** Information returned from the back end to the front end holding the result of a *snap* operation.
35
- * @internal
36
- */
37
- export interface SnapResponseProps {
38
- status: number;
39
- snapMode?: number;
40
- heat?: number;
41
- geomType?: number;
42
- parentGeomType?: number;
43
- hitPoint?: XYZProps;
44
- snapPoint?: XYZProps;
45
- normal?: XYZProps;
46
- curve?: any;
47
- intersectCurve?: any;
48
- intersectId?: string;
49
- }
1
+ /** @packageDocumentation
2
+ * @module Geometry
3
+ */
4
+ import { Id64Array, Id64String } from "@itwin/core-bentley";
5
+ import { Matrix4dProps, XYZProps } from "@itwin/core-geometry";
6
+ import { GeometryStreamProps } from "./geometry/GeometryStream";
7
+ import { GeometryClass } from "./GeometryParams";
8
+ import { ViewFlagProps } from "./ViewFlags";
9
+ /** Information required to request a *snap* to a pickable decoration from the front end to the back end.
10
+ * @internal
11
+ */
12
+ export interface DecorationGeometryProps {
13
+ readonly id: Id64String;
14
+ readonly geometryStream: GeometryStreamProps;
15
+ }
16
+ /** Information required to request a *snap* to an element from the front end to the back end.
17
+ * Includes the viewing parameters so that snap can be relative to the view direction, viewing mode, etc.
18
+ * @internal
19
+ */
20
+ export interface SnapRequestProps {
21
+ id: Id64String;
22
+ testPoint: XYZProps;
23
+ closePoint: XYZProps;
24
+ worldToView: Matrix4dProps;
25
+ viewFlags?: ViewFlagProps;
26
+ snapModes?: number[];
27
+ snapAperture?: number;
28
+ snapDivisor?: number;
29
+ subCategoryId?: Id64String;
30
+ geometryClass?: GeometryClass;
31
+ intersectCandidates?: Id64Array;
32
+ decorationGeometry?: DecorationGeometryProps[];
33
+ }
34
+ /** Information returned from the back end to the front end holding the result of a *snap* operation.
35
+ * @internal
36
+ */
37
+ export interface SnapResponseProps {
38
+ status: number;
39
+ snapMode?: number;
40
+ heat?: number;
41
+ geomType?: number;
42
+ parentGeomType?: number;
43
+ hitPoint?: XYZProps;
44
+ snapPoint?: XYZProps;
45
+ normal?: XYZProps;
46
+ curve?: any;
47
+ intersectCurve?: any;
48
+ intersectId?: string;
49
+ }
50
50
  //# sourceMappingURL=Snapping.d.ts.map
@@ -1,9 +1,9 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Geometry
7
- */
8
- export {};
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Geometry
7
+ */
8
+ export {};
9
9
  //# sourceMappingURL=Snapping.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Snapping.js","sourceRoot":"","sources":["../../src/Snapping.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module Geometry\r\n */\r\n\r\nimport { Id64Array, Id64String } from \"@itwin/core-bentley\";\r\nimport { Matrix4dProps, XYZProps } from \"@itwin/core-geometry\";\r\nimport { GeometryStreamProps } from \"./geometry/GeometryStream\";\r\nimport { GeometryClass } from \"./GeometryParams\";\r\nimport { ViewFlagProps } from \"./ViewFlags\";\r\n\r\n/** Information required to request a *snap* to a pickable decoration from the front end to the back end.\r\n * @internal\r\n */\r\nexport interface DecorationGeometryProps {\r\n readonly id: Id64String;\r\n readonly geometryStream: GeometryStreamProps;\r\n}\r\n\r\n/** Information required to request a *snap* to an element from the front end to the back end.\r\n * Includes the viewing parameters so that snap can be relative to the view direction, viewing mode, etc.\r\n * @internal\r\n */\r\nexport interface SnapRequestProps {\r\n id: Id64String;\r\n testPoint: XYZProps;\r\n closePoint: XYZProps;\r\n worldToView: Matrix4dProps;\r\n viewFlags?: ViewFlagProps;\r\n snapModes?: number[];\r\n snapAperture?: number;\r\n snapDivisor?: number;\r\n subCategoryId?: Id64String;\r\n geometryClass?: GeometryClass;\r\n intersectCandidates?: Id64Array;\r\n decorationGeometry?: DecorationGeometryProps[];\r\n}\r\n\r\n/** Information returned from the back end to the front end holding the result of a *snap* operation.\r\n * @internal\r\n */\r\nexport interface SnapResponseProps {\r\n status: number;\r\n snapMode?: number;\r\n heat?: number;\r\n geomType?: number;\r\n parentGeomType?: number;\r\n hitPoint?: XYZProps;\r\n snapPoint?: XYZProps;\r\n normal?: XYZProps;\r\n curve?: any;\r\n intersectCurve?: any;\r\n intersectId?: string;\r\n}\r\n"]}
1
+ {"version":3,"file":"Snapping.js","sourceRoot":"","sources":["../../src/Snapping.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Geometry\n */\n\nimport { Id64Array, Id64String } from \"@itwin/core-bentley\";\nimport { Matrix4dProps, XYZProps } from \"@itwin/core-geometry\";\nimport { GeometryStreamProps } from \"./geometry/GeometryStream\";\nimport { GeometryClass } from \"./GeometryParams\";\nimport { ViewFlagProps } from \"./ViewFlags\";\n\n/** Information required to request a *snap* to a pickable decoration from the front end to the back end.\n * @internal\n */\nexport interface DecorationGeometryProps {\n readonly id: Id64String;\n readonly geometryStream: GeometryStreamProps;\n}\n\n/** Information required to request a *snap* to an element from the front end to the back end.\n * Includes the viewing parameters so that snap can be relative to the view direction, viewing mode, etc.\n * @internal\n */\nexport interface SnapRequestProps {\n id: Id64String;\n testPoint: XYZProps;\n closePoint: XYZProps;\n worldToView: Matrix4dProps;\n viewFlags?: ViewFlagProps;\n snapModes?: number[];\n snapAperture?: number;\n snapDivisor?: number;\n subCategoryId?: Id64String;\n geometryClass?: GeometryClass;\n intersectCandidates?: Id64Array;\n decorationGeometry?: DecorationGeometryProps[];\n}\n\n/** Information returned from the back end to the front end holding the result of a *snap* operation.\n * @internal\n */\nexport interface SnapResponseProps {\n status: number;\n snapMode?: number;\n heat?: number;\n geomType?: number;\n parentGeomType?: number;\n hitPoint?: XYZProps;\n snapPoint?: XYZProps;\n normal?: XYZProps;\n curve?: any;\n intersectCurve?: any;\n intersectId?: string;\n}\n"]}