@itwin/core-common 4.0.0-dev.24 → 4.0.0-dev.28

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 (946) hide show
  1. package/CHANGELOG.md +21 -16
  2. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  3. package/lib/cjs/AmbientOcclusion.js +55 -55
  4. package/lib/cjs/AmbientOcclusion.js.map +1 -1
  5. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  6. package/lib/cjs/AnalysisStyle.js +165 -165
  7. package/lib/cjs/AnalysisStyle.js.map +1 -1
  8. package/lib/cjs/AuthorizationClient.d.ts +17 -17
  9. package/lib/cjs/AuthorizationClient.js +9 -9
  10. package/lib/cjs/AuthorizationClient.js.map +1 -1
  11. package/lib/cjs/BackendTypes.d.ts +12 -12
  12. package/lib/cjs/BackendTypes.js +9 -9
  13. package/lib/cjs/BackendTypes.js.map +1 -1
  14. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  15. package/lib/cjs/BackgroundMapProvider.js +67 -68
  16. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  17. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  18. package/lib/cjs/BackgroundMapSettings.js +154 -156
  19. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  20. package/lib/cjs/Base64EncodedString.d.ts +32 -32
  21. package/lib/cjs/Base64EncodedString.js +66 -66
  22. package/lib/cjs/Base64EncodedString.js.map +1 -1
  23. package/lib/cjs/BlobReader.d.ts +31 -31
  24. package/lib/cjs/BlobReader.js +84 -84
  25. package/lib/cjs/BlobReader.js.map +1 -1
  26. package/lib/cjs/BriefcaseTypes.d.ts +191 -189
  27. package/lib/cjs/BriefcaseTypes.d.ts.map +1 -1
  28. package/lib/cjs/BriefcaseTypes.js +95 -95
  29. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  30. package/lib/cjs/Camera.d.ts +42 -42
  31. package/lib/cjs/Camera.js +62 -62
  32. package/lib/cjs/Camera.js.map +1 -1
  33. package/lib/cjs/ChangedElements.d.ts +85 -85
  34. package/lib/cjs/ChangedElements.js +23 -23
  35. package/lib/cjs/ChangedElements.js.map +1 -1
  36. package/lib/cjs/ChangedEntities.d.ts +45 -45
  37. package/lib/cjs/ChangedEntities.js +9 -9
  38. package/lib/cjs/ChangedEntities.js.map +1 -1
  39. package/lib/cjs/ChangesetProps.d.ts +98 -98
  40. package/lib/cjs/ChangesetProps.js +22 -22
  41. package/lib/cjs/ChangesetProps.js.map +1 -1
  42. package/lib/cjs/ClipStyle.d.ts +89 -89
  43. package/lib/cjs/ClipStyle.js +121 -123
  44. package/lib/cjs/ClipStyle.js.map +1 -1
  45. package/lib/cjs/CloudStorage.d.ts +62 -62
  46. package/lib/cjs/CloudStorage.js +113 -113
  47. package/lib/cjs/CloudStorage.js.map +1 -1
  48. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  49. package/lib/cjs/CloudStorageTileCache.js +65 -66
  50. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  51. package/lib/cjs/Code.d.ts +277 -277
  52. package/lib/cjs/Code.js +268 -269
  53. package/lib/cjs/Code.js.map +1 -1
  54. package/lib/cjs/ColorByName.d.ts +161 -161
  55. package/lib/cjs/ColorByName.js +169 -169
  56. package/lib/cjs/ColorByName.js.map +1 -1
  57. package/lib/cjs/ColorDef.d.ts +208 -208
  58. package/lib/cjs/ColorDef.js +570 -571
  59. package/lib/cjs/ColorDef.js.map +1 -1
  60. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  61. package/lib/cjs/CommonLoggerCategory.js +26 -26
  62. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  63. package/lib/cjs/ConcurrentQuery.d.ts +421 -421
  64. package/lib/cjs/ConcurrentQuery.js +552 -552
  65. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  66. package/lib/cjs/ContextRealityModel.d.ts +303 -303
  67. package/lib/cjs/ContextRealityModel.js +371 -373
  68. package/lib/cjs/ContextRealityModel.js.map +1 -1
  69. package/lib/cjs/DisplayStyleSettings.d.ts +588 -588
  70. package/lib/cjs/DisplayStyleSettings.js +981 -985
  71. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  72. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  73. package/lib/cjs/ECSchemaProps.js +9 -9
  74. package/lib/cjs/ECSchemaProps.js.map +1 -1
  75. package/lib/cjs/ECSqlReader.d.ts +70 -70
  76. package/lib/cjs/ECSqlReader.js +280 -280
  77. package/lib/cjs/ECSqlReader.js.map +1 -1
  78. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  79. package/lib/cjs/ECSqlTypes.js +189 -189
  80. package/lib/cjs/ECSqlTypes.js.map +1 -1
  81. package/lib/cjs/ElementMesh.d.ts +39 -39
  82. package/lib/cjs/ElementMesh.js +56 -56
  83. package/lib/cjs/ElementMesh.js.map +1 -1
  84. package/lib/cjs/ElementProps.d.ts +483 -483
  85. package/lib/cjs/ElementProps.js +99 -99
  86. package/lib/cjs/ElementProps.js.map +1 -1
  87. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  88. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  89. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  90. package/lib/cjs/EntityProps.d.ts +177 -177
  91. package/lib/cjs/EntityProps.js +113 -113
  92. package/lib/cjs/EntityProps.js.map +1 -1
  93. package/lib/cjs/EntityReference.d.ts +51 -51
  94. package/lib/cjs/EntityReference.js +56 -56
  95. package/lib/cjs/EntityReference.js.map +1 -1
  96. package/lib/cjs/Environment.d.ts +61 -61
  97. package/lib/cjs/Environment.js +70 -73
  98. package/lib/cjs/Environment.js.map +1 -1
  99. package/lib/cjs/FeatureIndex.d.ts +39 -39
  100. package/lib/cjs/FeatureIndex.js +63 -63
  101. package/lib/cjs/FeatureIndex.js.map +1 -1
  102. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  103. package/lib/cjs/FeatureSymbology.js +613 -614
  104. package/lib/cjs/FeatureSymbology.js.map +1 -1
  105. package/lib/cjs/FeatureTable.d.ts +141 -141
  106. package/lib/cjs/FeatureTable.js +278 -278
  107. package/lib/cjs/FeatureTable.js.map +1 -1
  108. package/lib/cjs/Fonts.d.ts +51 -51
  109. package/lib/cjs/Fonts.js +53 -53
  110. package/lib/cjs/Fonts.js.map +1 -1
  111. package/lib/cjs/Frustum.d.ts +114 -114
  112. package/lib/cjs/Frustum.js +292 -292
  113. package/lib/cjs/Frustum.js.map +1 -1
  114. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  115. package/lib/cjs/GeoCoordinateServices.js +80 -80
  116. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  117. package/lib/cjs/GeometryContainment.d.ts +28 -28
  118. package/lib/cjs/GeometryContainment.js +9 -9
  119. package/lib/cjs/GeometryContainment.js.map +1 -1
  120. package/lib/cjs/GeometryParams.d.ts +130 -130
  121. package/lib/cjs/GeometryParams.js +174 -174
  122. package/lib/cjs/GeometryParams.js.map +1 -1
  123. package/lib/cjs/GeometrySummary.d.ts +45 -45
  124. package/lib/cjs/GeometrySummary.js +23 -23
  125. package/lib/cjs/GeometrySummary.js.map +1 -1
  126. package/lib/cjs/Gradient.d.ts +139 -139
  127. package/lib/cjs/Gradient.js +453 -455
  128. package/lib/cjs/Gradient.js.map +1 -1
  129. package/lib/cjs/GraphicParams.d.ts +58 -58
  130. package/lib/cjs/GraphicParams.js +85 -85
  131. package/lib/cjs/GraphicParams.js.map +1 -1
  132. package/lib/cjs/GroundPlane.d.ts +52 -52
  133. package/lib/cjs/GroundPlane.js +63 -64
  134. package/lib/cjs/GroundPlane.js.map +1 -1
  135. package/lib/cjs/HSLColor.d.ts +20 -20
  136. package/lib/cjs/HSLColor.js +32 -32
  137. package/lib/cjs/HSLColor.js.map +1 -1
  138. package/lib/cjs/HSVColor.d.ts +30 -30
  139. package/lib/cjs/HSVColor.js +59 -59
  140. package/lib/cjs/HSVColor.js.map +1 -1
  141. package/lib/cjs/HiddenLine.d.ts +97 -97
  142. package/lib/cjs/HiddenLine.js +160 -162
  143. package/lib/cjs/HiddenLine.js.map +1 -1
  144. package/lib/cjs/Hilite.d.ts +50 -50
  145. package/lib/cjs/Hilite.js +64 -64
  146. package/lib/cjs/Hilite.js.map +1 -1
  147. package/lib/cjs/IModel.d.ts +358 -358
  148. package/lib/cjs/IModel.js +347 -347
  149. package/lib/cjs/IModel.js.map +1 -1
  150. package/lib/cjs/IModelError.d.ts +42 -42
  151. package/lib/cjs/IModelError.js +71 -71
  152. package/lib/cjs/IModelError.js.map +1 -1
  153. package/lib/cjs/IModelVersion.d.ts +68 -68
  154. package/lib/cjs/IModelVersion.js +79 -79
  155. package/lib/cjs/IModelVersion.js.map +1 -1
  156. package/lib/cjs/Image.d.ts +86 -86
  157. package/lib/cjs/Image.js +128 -128
  158. package/lib/cjs/Image.js.map +1 -1
  159. package/lib/cjs/IpcAppProps.d.ts +141 -141
  160. package/lib/cjs/IpcAppProps.js +23 -23
  161. package/lib/cjs/IpcAppProps.js.map +1 -1
  162. package/lib/cjs/LightSettings.d.ts +224 -224
  163. package/lib/cjs/LightSettings.js +304 -309
  164. package/lib/cjs/LightSettings.js.map +1 -1
  165. package/lib/cjs/LinePixels.d.ts +34 -34
  166. package/lib/cjs/LinePixels.js +42 -42
  167. package/lib/cjs/LinePixels.js.map +1 -1
  168. package/lib/cjs/Localization.d.ts +113 -113
  169. package/lib/cjs/Localization.js +33 -33
  170. package/lib/cjs/Localization.js.map +1 -1
  171. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  172. package/lib/cjs/MapImagerySettings.js +80 -80
  173. package/lib/cjs/MapImagerySettings.js.map +1 -1
  174. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  175. package/lib/cjs/MapLayerSettings.js +407 -411
  176. package/lib/cjs/MapLayerSettings.js.map +1 -1
  177. package/lib/cjs/MassProperties.d.ts +64 -64
  178. package/lib/cjs/MassProperties.js +23 -23
  179. package/lib/cjs/MassProperties.js.map +1 -1
  180. package/lib/cjs/MaterialProps.d.ts +153 -153
  181. package/lib/cjs/MaterialProps.js +35 -35
  182. package/lib/cjs/MaterialProps.js.map +1 -1
  183. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  184. package/lib/cjs/ModelClipGroup.js +96 -98
  185. package/lib/cjs/ModelClipGroup.js.map +1 -1
  186. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  187. package/lib/cjs/ModelGeometryChanges.js +83 -83
  188. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  189. package/lib/cjs/ModelProps.d.ts +67 -67
  190. package/lib/cjs/ModelProps.js +9 -9
  191. package/lib/cjs/ModelProps.js.map +1 -1
  192. package/lib/cjs/NativeAppProps.d.ts +122 -122
  193. package/lib/cjs/NativeAppProps.js +30 -30
  194. package/lib/cjs/NativeAppProps.js.map +1 -1
  195. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  196. package/lib/cjs/OctEncodedNormal.js +98 -98
  197. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  198. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  199. package/lib/cjs/PlanProjectionSettings.js +63 -63
  200. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  201. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  202. package/lib/cjs/PlanarClipMask.js +136 -136
  203. package/lib/cjs/PlanarClipMask.js.map +1 -1
  204. package/lib/cjs/QPoint.d.ts +479 -479
  205. package/lib/cjs/QPoint.js +824 -826
  206. package/lib/cjs/QPoint.js.map +1 -1
  207. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  208. package/lib/cjs/RealityDataAccessProps.js +19 -19
  209. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  210. package/lib/cjs/RealityModelDisplaySettings.d.ts +183 -183
  211. package/lib/cjs/RealityModelDisplaySettings.js +141 -142
  212. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  213. package/lib/cjs/Render.d.ts +89 -89
  214. package/lib/cjs/Render.js +177 -177
  215. package/lib/cjs/Render.js.map +1 -1
  216. package/lib/cjs/RenderMaterial.d.ts +58 -58
  217. package/lib/cjs/RenderMaterial.js +75 -76
  218. package/lib/cjs/RenderMaterial.js.map +1 -1
  219. package/lib/cjs/RenderSchedule.d.ts +543 -543
  220. package/lib/cjs/RenderSchedule.js +992 -1002
  221. package/lib/cjs/RenderSchedule.js.map +1 -1
  222. package/lib/cjs/RenderTexture.d.ts +70 -70
  223. package/lib/cjs/RenderTexture.js +59 -59
  224. package/lib/cjs/RenderTexture.js.map +1 -1
  225. package/lib/cjs/RgbColor.d.ts +47 -47
  226. package/lib/cjs/RgbColor.js +77 -77
  227. package/lib/cjs/RgbColor.js.map +1 -1
  228. package/lib/cjs/RpcInterface.d.ts +33 -33
  229. package/lib/cjs/RpcInterface.js +137 -137
  230. package/lib/cjs/RpcInterface.js.map +1 -1
  231. package/lib/cjs/RpcManager.d.ts +40 -40
  232. package/lib/cjs/RpcManager.js +55 -55
  233. package/lib/cjs/RpcManager.js.map +1 -1
  234. package/lib/cjs/SessionProps.d.ts +16 -16
  235. package/lib/cjs/SessionProps.js +9 -9
  236. package/lib/cjs/SessionProps.js.map +1 -1
  237. package/lib/cjs/SkyBox.d.ts +215 -215
  238. package/lib/cjs/SkyBox.js +209 -210
  239. package/lib/cjs/SkyBox.js.map +1 -1
  240. package/lib/cjs/Snapping.d.ts +49 -49
  241. package/lib/cjs/Snapping.js +9 -9
  242. package/lib/cjs/Snapping.js.map +1 -1
  243. package/lib/cjs/SolarCalculate.d.ts +27 -27
  244. package/lib/cjs/SolarCalculate.js +211 -211
  245. package/lib/cjs/SolarCalculate.js.map +1 -1
  246. package/lib/cjs/SolarShadows.d.ts +35 -35
  247. package/lib/cjs/SolarShadows.js +61 -62
  248. package/lib/cjs/SolarShadows.js.map +1 -1
  249. package/lib/cjs/SpatialClassification.d.ts +208 -208
  250. package/lib/cjs/SpatialClassification.js +339 -340
  251. package/lib/cjs/SpatialClassification.js.map +1 -1
  252. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  253. package/lib/cjs/SubCategoryAppearance.js +96 -96
  254. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  255. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  256. package/lib/cjs/SubCategoryOverride.js +104 -104
  257. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  258. package/lib/cjs/TerrainSettings.d.ts +82 -82
  259. package/lib/cjs/TerrainSettings.js +100 -102
  260. package/lib/cjs/TerrainSettings.js.map +1 -1
  261. package/lib/cjs/TextureMapping.d.ts +118 -118
  262. package/lib/cjs/TextureMapping.js +173 -174
  263. package/lib/cjs/TextureMapping.js.map +1 -1
  264. package/lib/cjs/TextureProps.d.ts +65 -65
  265. package/lib/cjs/TextureProps.js +28 -28
  266. package/lib/cjs/TextureProps.js.map +1 -1
  267. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  268. package/lib/cjs/ThematicDisplay.js +343 -344
  269. package/lib/cjs/ThematicDisplay.js.map +1 -1
  270. package/lib/cjs/Thumbnail.d.ts +26 -26
  271. package/lib/cjs/Thumbnail.js +9 -9
  272. package/lib/cjs/Thumbnail.js.map +1 -1
  273. package/lib/cjs/TileProps.d.ts +82 -82
  274. package/lib/cjs/TileProps.js +29 -29
  275. package/lib/cjs/TileProps.js.map +1 -1
  276. package/lib/cjs/Tween.d.ts +191 -191
  277. package/lib/cjs/Tween.js +570 -570
  278. package/lib/cjs/Tween.js.map +1 -1
  279. package/lib/cjs/TxnAction.d.ts +21 -21
  280. package/lib/cjs/TxnAction.js +29 -29
  281. package/lib/cjs/TxnAction.js.map +1 -1
  282. package/lib/cjs/ViewDetails.d.ts +125 -125
  283. package/lib/cjs/ViewDetails.js +166 -166
  284. package/lib/cjs/ViewDetails.js.map +1 -1
  285. package/lib/cjs/ViewFlags.d.ts +287 -287
  286. package/lib/cjs/ViewFlags.js +367 -368
  287. package/lib/cjs/ViewFlags.js.map +1 -1
  288. package/lib/cjs/ViewProps.d.ts +205 -205
  289. package/lib/cjs/ViewProps.js +9 -9
  290. package/lib/cjs/ViewProps.js.map +1 -1
  291. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  292. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  293. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  294. package/lib/cjs/core-common.d.ts +244 -244
  295. package/lib/cjs/core-common.js +260 -260
  296. package/lib/cjs/core-common.js.map +1 -1
  297. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  298. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  299. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  300. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  301. package/lib/cjs/domains/GenericElementProps.js +9 -9
  302. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  303. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  304. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  305. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  306. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  307. package/lib/cjs/geometry/AreaPattern.js +203 -204
  308. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  309. package/lib/cjs/geometry/BoundingSphere.d.ts +27 -27
  310. package/lib/cjs/geometry/BoundingSphere.js +44 -44
  311. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  312. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  313. package/lib/cjs/geometry/Cartographic.js +345 -345
  314. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  315. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  316. package/lib/cjs/geometry/CoordinateReferenceSystem.js +260 -261
  317. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  318. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  319. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  320. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  321. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  322. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  323. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  324. package/lib/cjs/geometry/FrustumPlanes.d.ts +81 -81
  325. package/lib/cjs/geometry/FrustumPlanes.js +189 -189
  326. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  327. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  328. package/lib/cjs/geometry/GeodeticDatum.js +400 -401
  329. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  330. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  331. package/lib/cjs/geometry/GeodeticEllipsoid.js +71 -72
  332. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  333. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  334. package/lib/cjs/geometry/GeometryStream.js +468 -469
  335. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  336. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  337. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  338. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  339. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  340. package/lib/cjs/geometry/LineStyle.js +129 -129
  341. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  342. package/lib/cjs/geometry/Placement.d.ts +95 -95
  343. package/lib/cjs/geometry/Placement.js +131 -131
  344. package/lib/cjs/geometry/Placement.js.map +1 -1
  345. package/lib/cjs/geometry/Projection.d.ts +251 -251
  346. package/lib/cjs/geometry/Projection.js +198 -198
  347. package/lib/cjs/geometry/Projection.js.map +1 -1
  348. package/lib/cjs/geometry/TextString.d.ts +55 -55
  349. package/lib/cjs/geometry/TextString.js +65 -65
  350. package/lib/cjs/geometry/TextString.js.map +1 -1
  351. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  352. package/lib/cjs/ipc/IpcSession.js +27 -27
  353. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  354. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  355. package/lib/cjs/ipc/IpcSocket.js +16 -16
  356. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  357. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  358. package/lib/cjs/ipc/IpcWebSocket.js +150 -151
  359. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  360. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  361. package/lib/cjs/ipc/IpcWebSocketTransport.js +160 -160
  362. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  363. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  364. package/lib/cjs/rpc/DevToolsRpcInterface.js +52 -52
  365. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  366. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +99 -99
  367. package/lib/cjs/rpc/IModelReadRpcInterface.js +122 -122
  368. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  369. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  370. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  371. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  372. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  373. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  374. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  375. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  376. package/lib/cjs/rpc/TestRpcManager.js +40 -40
  377. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  378. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  379. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  380. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  381. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  382. package/lib/cjs/rpc/core/RpcConfiguration.js +191 -191
  383. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  384. package/lib/cjs/rpc/core/RpcConstants.d.ts +90 -90
  385. package/lib/cjs/rpc/core/RpcConstants.js +109 -109
  386. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  387. package/lib/cjs/rpc/core/RpcControl.d.ts +54 -54
  388. package/lib/cjs/rpc/core/RpcControl.js +145 -145
  389. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  390. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  391. package/lib/cjs/rpc/core/RpcInvocation.js +256 -258
  392. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  393. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +35 -35
  394. package/lib/cjs/rpc/core/RpcMarshaling.js +156 -156
  395. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  396. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  397. package/lib/cjs/rpc/core/RpcOperation.js +134 -134
  398. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  399. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  400. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -95
  401. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  402. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  403. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  404. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  405. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  406. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  407. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  408. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  409. package/lib/cjs/rpc/core/RpcRegistry.js +198 -199
  410. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  411. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  412. package/lib/cjs/rpc/core/RpcRequest.js +478 -478
  413. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  414. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  415. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  416. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  417. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  418. package/lib/cjs/rpc/core/RpcRoutingToken.js +24 -24
  419. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  420. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  421. package/lib/cjs/rpc/core/RpcSessionInvocation.js +60 -60
  422. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  423. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  424. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  425. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  426. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  427. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +141 -143
  428. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  429. package/lib/cjs/rpc/web/OpenAPI.d.ts +140 -140
  430. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  431. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  432. package/lib/cjs/rpc/web/RpcMultipart.d.ts +35 -35
  433. package/lib/cjs/rpc/web/RpcMultipart.js +50 -50
  434. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  435. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +28 -28
  436. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  437. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  438. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  439. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  440. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  441. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +67 -67
  442. package/lib/cjs/rpc/web/WebAppRpcRequest.js +239 -239
  443. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  444. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  445. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +373 -373
  446. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  447. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  448. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  449. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  450. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  451. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  452. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  453. package/lib/cjs/tile/ElementGraphics.d.ts +145 -145
  454. package/lib/cjs/tile/ElementGraphics.js +9 -9
  455. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  456. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  457. package/lib/cjs/tile/GltfTileIO.js +109 -109
  458. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  459. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  460. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  461. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  462. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  463. package/lib/cjs/tile/IModelTileIO.js +95 -95
  464. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  465. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  466. package/lib/cjs/tile/PntsTileIO.js +26 -26
  467. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  468. package/lib/cjs/tile/TileIO.d.ts +66 -66
  469. package/lib/cjs/tile/TileIO.js +118 -118
  470. package/lib/cjs/tile/TileIO.js.map +1 -1
  471. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  472. package/lib/cjs/tile/TileMetadata.js +675 -676
  473. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  474. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  475. package/lib/esm/AmbientOcclusion.js +52 -52
  476. package/lib/esm/AmbientOcclusion.js.map +1 -1
  477. package/lib/esm/AnalysisStyle.d.ts +134 -134
  478. package/lib/esm/AnalysisStyle.js +159 -159
  479. package/lib/esm/AnalysisStyle.js.map +1 -1
  480. package/lib/esm/AuthorizationClient.d.ts +17 -17
  481. package/lib/esm/AuthorizationClient.js +8 -8
  482. package/lib/esm/AuthorizationClient.js.map +1 -1
  483. package/lib/esm/BackendTypes.d.ts +12 -12
  484. package/lib/esm/BackendTypes.js +8 -8
  485. package/lib/esm/BackendTypes.js.map +1 -1
  486. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  487. package/lib/esm/BackgroundMapProvider.js +63 -64
  488. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  489. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  490. package/lib/esm/BackgroundMapSettings.js +150 -152
  491. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  492. package/lib/esm/Base64EncodedString.d.ts +32 -32
  493. package/lib/esm/Base64EncodedString.js +63 -63
  494. package/lib/esm/Base64EncodedString.js.map +1 -1
  495. package/lib/esm/BlobReader.d.ts +31 -31
  496. package/lib/esm/BlobReader.js +79 -79
  497. package/lib/esm/BlobReader.js.map +1 -1
  498. package/lib/esm/BriefcaseTypes.d.ts +191 -189
  499. package/lib/esm/BriefcaseTypes.d.ts.map +1 -1
  500. package/lib/esm/BriefcaseTypes.js +92 -92
  501. package/lib/esm/BriefcaseTypes.js.map +1 -1
  502. package/lib/esm/Camera.d.ts +42 -42
  503. package/lib/esm/Camera.js +58 -58
  504. package/lib/esm/Camera.js.map +1 -1
  505. package/lib/esm/ChangedElements.d.ts +85 -85
  506. package/lib/esm/ChangedElements.js +20 -20
  507. package/lib/esm/ChangedElements.js.map +1 -1
  508. package/lib/esm/ChangedEntities.d.ts +45 -45
  509. package/lib/esm/ChangedEntities.js +8 -8
  510. package/lib/esm/ChangedEntities.js.map +1 -1
  511. package/lib/esm/ChangesetProps.d.ts +98 -98
  512. package/lib/esm/ChangesetProps.js +19 -19
  513. package/lib/esm/ChangesetProps.js.map +1 -1
  514. package/lib/esm/ClipStyle.d.ts +89 -89
  515. package/lib/esm/ClipStyle.js +116 -118
  516. package/lib/esm/ClipStyle.js.map +1 -1
  517. package/lib/esm/CloudStorage.d.ts +62 -62
  518. package/lib/esm/CloudStorage.js +109 -109
  519. package/lib/esm/CloudStorage.js.map +1 -1
  520. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  521. package/lib/esm/CloudStorageTileCache.js +61 -62
  522. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  523. package/lib/esm/Code.d.ts +277 -277
  524. package/lib/esm/Code.js +263 -264
  525. package/lib/esm/Code.js.map +1 -1
  526. package/lib/esm/ColorByName.d.ts +161 -161
  527. package/lib/esm/ColorByName.js +166 -166
  528. package/lib/esm/ColorByName.js.map +1 -1
  529. package/lib/esm/ColorDef.d.ts +208 -208
  530. package/lib/esm/ColorDef.js +566 -567
  531. package/lib/esm/ColorDef.js.map +1 -1
  532. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  533. package/lib/esm/CommonLoggerCategory.js +23 -23
  534. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  535. package/lib/esm/ConcurrentQuery.d.ts +421 -421
  536. package/lib/esm/ConcurrentQuery.js +545 -545
  537. package/lib/esm/ConcurrentQuery.js.map +1 -1
  538. package/lib/esm/ContextRealityModel.d.ts +303 -303
  539. package/lib/esm/ContextRealityModel.js +366 -368
  540. package/lib/esm/ContextRealityModel.js.map +1 -1
  541. package/lib/esm/DisplayStyleSettings.d.ts +588 -588
  542. package/lib/esm/DisplayStyleSettings.js +976 -980
  543. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  544. package/lib/esm/ECSchemaProps.d.ts +39 -39
  545. package/lib/esm/ECSchemaProps.js +8 -8
  546. package/lib/esm/ECSchemaProps.js.map +1 -1
  547. package/lib/esm/ECSqlReader.d.ts +70 -70
  548. package/lib/esm/ECSqlReader.js +275 -275
  549. package/lib/esm/ECSqlReader.js.map +1 -1
  550. package/lib/esm/ECSqlTypes.d.ts +128 -128
  551. package/lib/esm/ECSqlTypes.js +185 -185
  552. package/lib/esm/ECSqlTypes.js.map +1 -1
  553. package/lib/esm/ElementMesh.d.ts +39 -39
  554. package/lib/esm/ElementMesh.js +52 -52
  555. package/lib/esm/ElementMesh.js.map +1 -1
  556. package/lib/esm/ElementProps.d.ts +483 -483
  557. package/lib/esm/ElementProps.js +92 -92
  558. package/lib/esm/ElementProps.js.map +1 -1
  559. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  560. package/lib/esm/EmphasizeElementsProps.js +22 -22
  561. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  562. package/lib/esm/EntityProps.d.ts +177 -177
  563. package/lib/esm/EntityProps.js +108 -108
  564. package/lib/esm/EntityProps.js.map +1 -1
  565. package/lib/esm/EntityReference.d.ts +51 -51
  566. package/lib/esm/EntityReference.js +52 -52
  567. package/lib/esm/EntityReference.js.map +1 -1
  568. package/lib/esm/Environment.d.ts +61 -61
  569. package/lib/esm/Environment.js +66 -69
  570. package/lib/esm/Environment.js.map +1 -1
  571. package/lib/esm/FeatureIndex.d.ts +39 -39
  572. package/lib/esm/FeatureIndex.js +57 -57
  573. package/lib/esm/FeatureIndex.js.map +1 -1
  574. package/lib/esm/FeatureSymbology.d.ts +444 -444
  575. package/lib/esm/FeatureSymbology.js +608 -609
  576. package/lib/esm/FeatureSymbology.js.map +1 -1
  577. package/lib/esm/FeatureTable.d.ts +141 -141
  578. package/lib/esm/FeatureTable.js +272 -272
  579. package/lib/esm/FeatureTable.js.map +1 -1
  580. package/lib/esm/Fonts.d.ts +51 -51
  581. package/lib/esm/Fonts.js +49 -49
  582. package/lib/esm/Fonts.js.map +1 -1
  583. package/lib/esm/Frustum.d.ts +114 -114
  584. package/lib/esm/Frustum.js +288 -288
  585. package/lib/esm/Frustum.js.map +1 -1
  586. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  587. package/lib/esm/GeoCoordinateServices.js +76 -76
  588. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  589. package/lib/esm/GeometryContainment.d.ts +28 -28
  590. package/lib/esm/GeometryContainment.js +8 -8
  591. package/lib/esm/GeometryContainment.js.map +1 -1
  592. package/lib/esm/GeometryParams.d.ts +130 -130
  593. package/lib/esm/GeometryParams.js +170 -170
  594. package/lib/esm/GeometryParams.js.map +1 -1
  595. package/lib/esm/GeometrySummary.d.ts +45 -45
  596. package/lib/esm/GeometrySummary.js +20 -20
  597. package/lib/esm/GeometrySummary.js.map +1 -1
  598. package/lib/esm/Gradient.d.ts +139 -139
  599. package/lib/esm/Gradient.js +450 -452
  600. package/lib/esm/Gradient.js.map +1 -1
  601. package/lib/esm/GraphicParams.d.ts +58 -58
  602. package/lib/esm/GraphicParams.js +81 -81
  603. package/lib/esm/GraphicParams.js.map +1 -1
  604. package/lib/esm/GroundPlane.d.ts +52 -52
  605. package/lib/esm/GroundPlane.js +59 -60
  606. package/lib/esm/GroundPlane.js.map +1 -1
  607. package/lib/esm/HSLColor.d.ts +20 -20
  608. package/lib/esm/HSLColor.js +28 -28
  609. package/lib/esm/HSLColor.js.map +1 -1
  610. package/lib/esm/HSVColor.d.ts +30 -30
  611. package/lib/esm/HSVColor.js +55 -55
  612. package/lib/esm/HSVColor.js.map +1 -1
  613. package/lib/esm/HiddenLine.d.ts +97 -97
  614. package/lib/esm/HiddenLine.js +157 -159
  615. package/lib/esm/HiddenLine.js.map +1 -1
  616. package/lib/esm/Hilite.d.ts +50 -50
  617. package/lib/esm/Hilite.js +61 -61
  618. package/lib/esm/Hilite.js.map +1 -1
  619. package/lib/esm/IModel.d.ts +358 -358
  620. package/lib/esm/IModel.js +342 -342
  621. package/lib/esm/IModel.js.map +1 -1
  622. package/lib/esm/IModelError.d.ts +42 -42
  623. package/lib/esm/IModelError.js +56 -56
  624. package/lib/esm/IModelError.js.map +1 -1
  625. package/lib/esm/IModelVersion.d.ts +68 -68
  626. package/lib/esm/IModelVersion.js +75 -75
  627. package/lib/esm/IModelVersion.js.map +1 -1
  628. package/lib/esm/Image.d.ts +86 -86
  629. package/lib/esm/Image.js +120 -120
  630. package/lib/esm/Image.js.map +1 -1
  631. package/lib/esm/IpcAppProps.d.ts +141 -141
  632. package/lib/esm/IpcAppProps.js +19 -19
  633. package/lib/esm/IpcAppProps.js.map +1 -1
  634. package/lib/esm/LightSettings.d.ts +224 -224
  635. package/lib/esm/LightSettings.js +296 -301
  636. package/lib/esm/LightSettings.js.map +1 -1
  637. package/lib/esm/LinePixels.d.ts +34 -34
  638. package/lib/esm/LinePixels.js +39 -39
  639. package/lib/esm/LinePixels.js.map +1 -1
  640. package/lib/esm/Localization.d.ts +113 -113
  641. package/lib/esm/Localization.js +29 -29
  642. package/lib/esm/Localization.js.map +1 -1
  643. package/lib/esm/MapImagerySettings.d.ts +62 -62
  644. package/lib/esm/MapImagerySettings.js +76 -76
  645. package/lib/esm/MapImagerySettings.js.map +1 -1
  646. package/lib/esm/MapLayerSettings.d.ts +272 -272
  647. package/lib/esm/MapLayerSettings.js +399 -403
  648. package/lib/esm/MapLayerSettings.js.map +1 -1
  649. package/lib/esm/MassProperties.d.ts +64 -64
  650. package/lib/esm/MassProperties.js +20 -20
  651. package/lib/esm/MassProperties.js.map +1 -1
  652. package/lib/esm/MaterialProps.d.ts +153 -153
  653. package/lib/esm/MaterialProps.js +32 -32
  654. package/lib/esm/MaterialProps.js.map +1 -1
  655. package/lib/esm/ModelClipGroup.d.ts +67 -67
  656. package/lib/esm/ModelClipGroup.js +91 -93
  657. package/lib/esm/ModelClipGroup.js.map +1 -1
  658. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  659. package/lib/esm/ModelGeometryChanges.js +80 -80
  660. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  661. package/lib/esm/ModelProps.d.ts +67 -67
  662. package/lib/esm/ModelProps.js +8 -8
  663. package/lib/esm/ModelProps.js.map +1 -1
  664. package/lib/esm/NativeAppProps.d.ts +122 -122
  665. package/lib/esm/NativeAppProps.js +27 -27
  666. package/lib/esm/NativeAppProps.js.map +1 -1
  667. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  668. package/lib/esm/OctEncodedNormal.js +93 -93
  669. package/lib/esm/OctEncodedNormal.js.map +1 -1
  670. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  671. package/lib/esm/PlanProjectionSettings.js +59 -59
  672. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  673. package/lib/esm/PlanarClipMask.d.ts +177 -177
  674. package/lib/esm/PlanarClipMask.js +132 -132
  675. package/lib/esm/PlanarClipMask.js.map +1 -1
  676. package/lib/esm/QPoint.d.ts +479 -479
  677. package/lib/esm/QPoint.js +813 -815
  678. package/lib/esm/QPoint.js.map +1 -1
  679. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  680. package/lib/esm/RealityDataAccessProps.js +16 -16
  681. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  682. package/lib/esm/RealityModelDisplaySettings.d.ts +183 -183
  683. package/lib/esm/RealityModelDisplaySettings.js +136 -137
  684. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  685. package/lib/esm/Render.d.ts +89 -89
  686. package/lib/esm/Render.js +165 -165
  687. package/lib/esm/Render.js.map +1 -1
  688. package/lib/esm/RenderMaterial.d.ts +58 -58
  689. package/lib/esm/RenderMaterial.js +71 -72
  690. package/lib/esm/RenderMaterial.js.map +1 -1
  691. package/lib/esm/RenderSchedule.d.ts +543 -543
  692. package/lib/esm/RenderSchedule.js +989 -999
  693. package/lib/esm/RenderSchedule.js.map +1 -1
  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 -203
  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 -58
  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 -334
  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 -98
  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 -170
  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 -337
  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 -364
  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 +244 -244
  767. package/lib/esm/core-common.js +248 -248
  768. package/lib/esm/core-common.js.map +1 -1
  769. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  770. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  771. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  772. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  773. package/lib/esm/domains/GenericElementProps.js +8 -8
  774. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  775. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  776. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  777. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  778. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  779. package/lib/esm/geometry/AreaPattern.js +200 -201
  780. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  781. package/lib/esm/geometry/BoundingSphere.d.ts +27 -27
  782. package/lib/esm/geometry/BoundingSphere.js +40 -40
  783. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  784. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  785. package/lib/esm/geometry/Cartographic.js +340 -340
  786. package/lib/esm/geometry/Cartographic.js.map +1 -1
  787. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  788. package/lib/esm/geometry/CoordinateReferenceSystem.js +253 -254
  789. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  790. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  791. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  792. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  793. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  794. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  795. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  796. package/lib/esm/geometry/FrustumPlanes.d.ts +81 -81
  797. package/lib/esm/geometry/FrustumPlanes.js +185 -185
  798. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  799. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  800. package/lib/esm/geometry/GeodeticDatum.js +389 -390
  801. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  802. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  803. package/lib/esm/geometry/GeodeticEllipsoid.js +67 -68
  804. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  805. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  806. package/lib/esm/geometry/GeometryStream.js +463 -464
  807. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  808. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  809. package/lib/esm/geometry/ImageGraphic.js +93 -93
  810. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  811. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  812. package/lib/esm/geometry/LineStyle.js +126 -126
  813. package/lib/esm/geometry/LineStyle.js.map +1 -1
  814. package/lib/esm/geometry/Placement.d.ts +95 -95
  815. package/lib/esm/geometry/Placement.js +126 -126
  816. package/lib/esm/geometry/Placement.js.map +1 -1
  817. package/lib/esm/geometry/Projection.d.ts +251 -251
  818. package/lib/esm/geometry/Projection.js +192 -192
  819. package/lib/esm/geometry/Projection.js.map +1 -1
  820. package/lib/esm/geometry/TextString.d.ts +55 -55
  821. package/lib/esm/geometry/TextString.js +61 -61
  822. package/lib/esm/geometry/TextString.js.map +1 -1
  823. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  824. package/lib/esm/ipc/IpcSession.js +23 -23
  825. package/lib/esm/ipc/IpcSession.js.map +1 -1
  826. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  827. package/lib/esm/ipc/IpcSocket.js +12 -12
  828. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  829. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  830. package/lib/esm/ipc/IpcWebSocket.js +144 -145
  831. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  832. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  833. package/lib/esm/ipc/IpcWebSocketTransport.js +156 -156
  834. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  835. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  836. package/lib/esm/rpc/DevToolsRpcInterface.js +48 -48
  837. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  838. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +99 -99
  839. package/lib/esm/rpc/IModelReadRpcInterface.js +117 -117
  840. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  841. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  842. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  843. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  844. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  845. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  846. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  847. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  848. package/lib/esm/rpc/TestRpcManager.js +36 -36
  849. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  850. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  851. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  852. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  853. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  854. package/lib/esm/rpc/core/RpcConfiguration.js +184 -184
  855. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  856. package/lib/esm/rpc/core/RpcConstants.d.ts +90 -90
  857. package/lib/esm/rpc/core/RpcConstants.js +106 -106
  858. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  859. package/lib/esm/rpc/core/RpcControl.d.ts +54 -54
  860. package/lib/esm/rpc/core/RpcControl.js +138 -138
  861. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  862. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  863. package/lib/esm/rpc/core/RpcInvocation.js +252 -254
  864. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  865. package/lib/esm/rpc/core/RpcMarshaling.d.ts +35 -35
  866. package/lib/esm/rpc/core/RpcMarshaling.js +152 -152
  867. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  868. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  869. package/lib/esm/rpc/core/RpcOperation.js +129 -129
  870. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  871. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  872. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -91
  873. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  874. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  875. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  876. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  877. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  878. package/lib/esm/rpc/core/RpcPush.js +119 -119
  879. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  880. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  881. package/lib/esm/rpc/core/RpcRegistry.js +194 -195
  882. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  883. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  884. package/lib/esm/rpc/core/RpcRequest.js +473 -473
  885. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  886. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  887. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  888. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  889. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  890. package/lib/esm/rpc/core/RpcRoutingToken.js +20 -20
  891. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  892. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  893. package/lib/esm/rpc/core/RpcSessionInvocation.js +56 -56
  894. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  895. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  896. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  897. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  898. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  899. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +137 -139
  900. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  901. package/lib/esm/rpc/web/OpenAPI.d.ts +140 -140
  902. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  903. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  904. package/lib/esm/rpc/web/RpcMultipart.d.ts +35 -35
  905. package/lib/esm/rpc/web/RpcMultipart.js +46 -46
  906. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  907. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +28 -28
  908. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  909. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  910. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  911. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  912. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  913. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +67 -67
  914. package/lib/esm/rpc/web/WebAppRpcRequest.js +235 -235
  915. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  916. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  917. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +369 -369
  918. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  919. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  920. package/lib/esm/tile/B3dmTileIO.js +62 -62
  921. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  922. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  923. package/lib/esm/tile/CompositeTileIO.js +22 -22
  924. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  925. package/lib/esm/tile/ElementGraphics.d.ts +145 -145
  926. package/lib/esm/tile/ElementGraphics.js +8 -8
  927. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  928. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  929. package/lib/esm/tile/GltfTileIO.js +105 -105
  930. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  931. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  932. package/lib/esm/tile/I3dmTileIO.js +36 -36
  933. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  934. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  935. package/lib/esm/tile/IModelTileIO.js +90 -90
  936. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  937. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  938. package/lib/esm/tile/PntsTileIO.js +22 -22
  939. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  940. package/lib/esm/tile/TileIO.d.ts +66 -66
  941. package/lib/esm/tile/TileIO.js +110 -110
  942. package/lib/esm/tile/TileIO.js.map +1 -1
  943. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  944. package/lib/esm/tile/TileMetadata.js +660 -661
  945. package/lib/esm/tile/TileMetadata.js.map +1 -1
  946. package/package.json +7 -7
@@ -1,445 +1,445 @@
1
- /** @packageDocumentation
2
- * @module Rendering
3
- */
4
- import { Id64, Id64String } from "@itwin/core-bentley";
5
- import { BatchType, Feature } from "./FeatureTable";
6
- import { ColorDef } from "./ColorDef";
7
- import { GeometryClass } from "./GeometryParams";
8
- import { LinePixels } from "./LinePixels";
9
- import { RgbColor, RgbColorProps } from "./RgbColor";
10
- import { SubCategoryOverride } from "./SubCategoryOverride";
11
- /** JSON representation of a [[FeatureAppearance]].
12
- * @public
13
- * @extensions
14
- */
15
- export interface FeatureAppearanceProps {
16
- /** See [[FeatureAppearance.rgb]]. */
17
- rgb?: RgbColorProps;
18
- /** See [[FeatureAppearance.weight]]. */
19
- weight?: number;
20
- /** See [[FeatureAppearance.transparency]]. */
21
- transparency?: number;
22
- /** See [[FeatureAppearance.viewDependentTransparency]]. */
23
- viewDependentTransparency?: true;
24
- /** See [[FeatureAppearance.linePixels]]. */
25
- linePixels?: LinePixels;
26
- /** See [[FeatureAppearance.ignoresMaterial]]. */
27
- ignoresMaterial?: true;
28
- /** See [[FeatureAppearance.nonLocatable]]. */
29
- nonLocatable?: true;
30
- /** See [[FeatureAppearance.emphasized]]. */
31
- emphasized?: true;
32
- }
33
- /** Defines overrides for selected aspects of a [[Feature]]'s symbology.
34
- * Any member defined in the appearance overrides that aspect of symbology for all [[Feature]]s to which the appearance is applied.
35
- * @see [[FeatureOverrides]] to customize the appearance of multiple features.
36
- * @public
37
- */
38
- export declare class FeatureAppearance {
39
- /** Overrides the feature's color. */
40
- readonly rgb?: RgbColor;
41
- /** The width of lines and edges in pixels as an integer in [1, 31]. */
42
- readonly weight?: number;
43
- /** The transparency in the range [0, 1] where 0 indicates fully opaque and 1 indicates fully transparent.
44
- * @see [[viewDependentTransparency]] for details on how this override interacts with the [DisplayStyle]($backend).
45
- */
46
- readonly transparency?: number;
47
- /** The pixel pattern applied to lines and edges. */
48
- readonly linePixels?: LinePixels;
49
- /** If true, don't apply the [[RenderMaterial]] to the feature's surfaces. */
50
- readonly ignoresMaterial?: true;
51
- /** If true, the feature will not be drawn when using [Viewport.readPixels]($frontend), meaning [Tool]($frontend)s will not be able to interact with it. */
52
- readonly nonLocatable?: true;
53
- /** If true, the feature will be rendered using the [[Hilite.Settings]] defined by [Viewport.emphasisSettings]($frontend) to make it stand out. */
54
- readonly emphasized?: true;
55
- /** If true, then [[transparency]] will only be applied if [[ViewFlags.transparency]] is enabled and the current [[RenderMode]] supports transparency.
56
- * Default: false, meaning the transparency will be applied regardless of view flags or render mode.
57
- * This property has no effect if [[transparency]] is `undefined`.
58
- */
59
- readonly viewDependentTransparency?: true;
60
- /** An appearance that overrides nothing. */
61
- static readonly defaults: FeatureAppearance;
62
- static fromJSON(props?: FeatureAppearanceProps): FeatureAppearance;
63
- /** Create a FeatureAppearance that overrides only the RGB color.
64
- * @note The transparency component of the ColorDef is ignored.
65
- */
66
- static fromRgb(color: ColorDef): FeatureAppearance;
67
- /** Create a FeatureAppearance that overrides the RGB and transparency.
68
- * The appearance's transparency is derived from the transparency component of the ColorDef.
69
- */
70
- static fromRgba(color: ColorDef, viewDependentTransparency?: boolean): FeatureAppearance;
71
- /** Create a FeatureAppearance that overrides only the transparency */
72
- static fromTransparency(transparencyValue: number, viewDependent?: boolean): FeatureAppearance;
73
- /** Create a FeatureAppearance with overrides corresponding to those defined by the supplied SubCategoryOverride.
74
- * @note Subcategory overrides set [[viewDependentTransparency]] to `true`.
75
- */
76
- static fromSubCategoryOverride(ovr: SubCategoryOverride): FeatureAppearance;
77
- /** Returns true if this appearance does not override any aspects of symbology. */
78
- get matchesDefaults(): boolean;
79
- get overridesRgb(): boolean;
80
- get overridesTransparency(): boolean;
81
- get overridesLinePixels(): boolean;
82
- get overridesWeight(): boolean;
83
- get overridesSymbology(): boolean;
84
- get overridesNonLocatable(): boolean;
85
- get isFullyTransparent(): boolean;
86
- /** Returns true if any aspect of the appearance is overridden (i.e., if any member is not undefined). */
87
- get anyOverridden(): boolean;
88
- equals(other: FeatureAppearance): boolean;
89
- toJSON(): FeatureAppearanceProps;
90
- /** Convert this appearance to JSON, and override any properties explicitly specified by `changedProps` in the result.
91
- * Example:
92
- * ```ts
93
- * const base = FeatureAppearance.fromRgba(ColorDef.white); // transparency=0, rgb=white
94
- * const clone = base.cloneProps({ transparency: undefined, weight: 5 }); // transparency=undefined, rgb=white, weight=5
95
- * ```
96
- * @see [[FeatureAppearance.clone]].
97
- */
98
- cloneProps(changedProps: FeatureAppearanceProps): FeatureAppearanceProps;
99
- /** Create a copy of this appearance, overriding any properties explicitly specified by `changedProps`.
100
- * Example:
101
- * ```ts
102
- * const base = FeatureAppearance.fromRgba(ColorDef.white); // transparency=0, rgb=white
103
- * const clone = base.clone({ transparency: undefined, weight: 5 }); // transparency=undefined, rgb=white, weight=5
104
- * ```
105
- * @see [[FeatureAppearance.cloneProps]].
106
- */
107
- clone(changedProps: FeatureAppearanceProps): FeatureAppearance;
108
- /** Produce a FeatureAppearance from the supplied appearance in which any aspect not defined by the base appearance is overridden by this appearance. */
109
- extendAppearance(base: FeatureAppearance): FeatureAppearance;
110
- protected constructor(props: FeatureAppearanceProps);
111
- private rgbIsEqual;
112
- private transparencyIsEqual;
113
- }
114
- /** Interface adopted by an object that can supply a [[FeatureAppearance]] given a low-level description of a [[Feature]].
115
- * @see [[FeatureOverrides]] for the commonly-used implementation.
116
- * @see [[FeatureAppearanceProvider]] to supplement the appearance supplied by this interface.
117
- * @public
118
- * @extensions
119
- */
120
- export interface FeatureAppearanceSource {
121
- /** Supplies the desired appearance overrides for the specified [[Feature]], or `undefined` if the feature should not be drawn.
122
- * The feature is described by its components for efficiency reasons.
123
- * @param elemLo The lower 32 bits of the feature's element Id.
124
- * @param elemHi The upper 32 bits of the feature's element Id.
125
- * @param subcatLo The lower 32 bits of the feature's subcategory Id.
126
- * @param subcatHi The upper 32 bits of the feature's subcategory Id.
127
- * @param geomClass The geometry class of the feature.
128
- * @param modelLo The lower 32 bits of the feature's model Id.
129
- * @param modelHi The upper 32 bits of the feature's model Id.
130
- * @param type The type of batch to which the feature belongs.
131
- * @param animationNodeId The Id of the corresponding node in the [[RenderSchedule]], or `0` if none.
132
- * @returns The desired appearance overrides, or `undefined` to indicate the feature should not be displayed.
133
- * @see [Id64.isValidUint32Pair]($core-bentley) to determine if the components of an [Id64String]($core-bentley) represent a valid Id.
134
- */
135
- getAppearance(elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined;
136
- }
137
- /** Common options for [[FeatureOverrides.override]].
138
- * @public
139
- */
140
- export interface OverrideFeatureAppearanceOptions {
141
- /** Specifies the aspects of the [[Feature]]'s appearance to be overridden. */
142
- appearance: FeatureAppearance;
143
- /** Specifies what to do if a [[FeatureAppearance]] has already been configured for the specified element, model, or subcategory by a previous call to [[FeatureOverrides.override]].
144
- * - "subsume" (the default): Merge the two appearances using the logic described by [[FeatureAppearance.extendAppearance]] such that any aspect overridden by the existing appearance will be overwritten
145
- * if also overridden by [[appearance]].
146
- * - The resulting appearance is computed as `existingAppearance.extendAppearance(newAppearance)`.
147
- * - "extend": Merge the two appearances using the logic described by [[FeatureAppearance.extendAppearance]] such that any aspect overridden by [[appearance]] will only
148
- * apply if that aspect is not already overridden by a previous appearance.
149
- * - The resulting appearance is computed as `newAppearance.extendAppearance(existingAppearance)`.
150
- * - "replace": Completely replace the existing appearance with [[appearance]].
151
- * - "skip": Keep the existing appearance.
152
- */
153
- onConflict?: "extend" | "subsume" | "replace" | "skip";
154
- }
155
- /** Options for using [[FeatureOverrides.override]] to override the appearance of a [GeometricModel]($backend).
156
- * @public
157
- */
158
- export interface OverrideModelAppearanceOptions extends OverrideFeatureAppearanceOptions {
159
- /** The Id of the model whose appearance is to be overridden. */
160
- modelId: Id64String;
161
- /** @internal */
162
- elementId?: never;
163
- /** @internal */
164
- subCategoryId?: never;
165
- }
166
- /** Options for using [[FeatureOverrides.override]] to override the appearance of a [GeometricElement]($backend).
167
- * @public
168
- */
169
- export interface OverrideElementAppearanceOptions extends OverrideFeatureAppearanceOptions {
170
- /** The Id of the element whose appearance is to be overridden. */
171
- elementId: Id64String;
172
- /** @internal */
173
- modelId?: never;
174
- /** @internal */
175
- subCategoryId?: never;
176
- }
177
- /** Options for using [[FeatureOverrides.override]] to override the appearance of a [SubCategory]($backend).
178
- * @public
179
- */
180
- export interface OverrideSubCategoryAppearanceOptions extends OverrideFeatureAppearanceOptions {
181
- /** The Id of the subcategory whose appearance is to be overridden. */
182
- subCategoryId: Id64String;
183
- /** @internal */
184
- modelId?: never;
185
- /** @internal */
186
- elementId?: never;
187
- }
188
- /** Arguments supplied to [[FeatureOverrides.override]].
189
- * @public
190
- */
191
- export declare type OverrideFeatureAppearanceArgs = OverrideElementAppearanceOptions | OverrideModelAppearanceOptions | OverrideSubCategoryAppearanceOptions;
192
- /** Arguments provided to a function of type [[IgnoreAnimationOverrides]].
193
- * @see [[FeatureOverrides.ignoreAnimationOverrides]] to register such a function.
194
- * @public
195
- */
196
- export interface IgnoreAnimationOverridesArgs {
197
- /** The Id of the element under consideration.
198
- * @see [Id64.fromUint32Pair]($bentley) to convert a Uint32Pair into an [Id64String]($bentley), if needed.
199
- */
200
- readonly elementId: Readonly<Id64.Uint32Pair>;
201
- /** The [[RenderSchedule.ElementTimeline.batchId]] identifying the [[RenderSchedule.ElementTimeline]] to which the element under consideration belongs. */
202
- readonly animationNodeId: number;
203
- }
204
- /** A function that can be supplied to [[FeatureOverrides.ignoreAnimationOverrides]] to indicate whether the color or transparency overrides defined
205
- * by the view's [[RenderSchedule.Script]] should be ignored. The arguments describe the element under consideration. The function should return true if that
206
- * element should not have its color or transparency modified by the schedule script.
207
- * @public
208
- */
209
- export declare type IgnoreAnimationOverrides = (args: IgnoreAnimationOverridesArgs) => boolean;
210
- /** Specifies how to customize the appearance of individual [[Feature]]s, typically within the context of a [Viewport]($frontend).
211
- * Individual aspects of a feature's appearance - like visibility, color, and transparency - are overridden by supplying a [[FeatureAppearance]].
212
- * Those overrides can be specified on the basis of the feature's model, element, and/or subcategory. A default set of overrides can also be specified to
213
- * apply to the appearance of any feature not otherwise overridden.
214
- *
215
- * It is possible to override multiple aspects of a feature on different bases. For example, you might specify that all features belonging to subcategory "A" should be drawn in red,
216
- * and that all features belonging to model "B" should be drawn 50% transparent. In this case, a feature belonging to both subcategory "A" and model "B" will be drawn as 50% transparent red -
217
- * the separate overrides are combined to produce the feature's overall appearance.
218
- *
219
- * In the case of conflicts, there is an order of precedence:
220
- * - Model overrides take highest precedence.
221
- * - Element overrides are of higher precedence than subcategory and animation overrides.
222
- * - Overrides applied by a [[RenderSchedule.Script]]'s [[RenderSchedule.ElementTimeline]] are of higher precedence than subcategory overrides, but can be suppressed on a per-element basis via [[ignoreAnimationOverrides]].
223
- * - Subcategory overrides have lowest precedence.
224
- *
225
- * For example, you might specify that all features belonging to subcategory "A" should be drawn in red, and all those belonging to model "B" should be drawn in green.
226
- * Then a feature belonging to subcategory "A" and model "B" will be drawn in green, because the model overrides take precedence.
227
- *
228
- * Instances of this class are not typically instantiated by an application directly; instead, an application can implement a [FeatureOverrideProvider]($frontend)
229
- * that augments the overrides supplied by a viewport.
230
- *
231
- * @see [FeatureSymbology.Overrides]($frontend) to create overrides specific to a [Viewport]($frontend) or [ViewState]($frontend).
232
- * @see [FeatureOverrideProvider]($frontend) to customize the appearance of features within a [Viewport]($frontend).
233
- * @public
234
- */
235
- export declare class FeatureOverrides implements FeatureAppearanceSource {
236
- /** @internal */
237
- protected readonly _ignoreAnimationOverrides: IgnoreAnimationOverrides[];
238
- /** Ids of elements that should never be drawn. This takes precedence over [[alwaysDrawn]]. @internal */
239
- protected readonly _neverDrawn: Id64.Uint32Set;
240
- /** Ids of elements that should always be drawn. [[neverDrawn]] takes precedence over this set. @internal */
241
- protected readonly _alwaysDrawn: Id64.Uint32Set;
242
- /** If true, no elements *except* those defined in the "always drawn" set will be drawn.
243
- * @see [[setAlwaysDrawn]]
244
- */
245
- isAlwaysDrawnExclusive: boolean;
246
- /** If true, the always-drawn elements are drawn even if their subcategories are not visible.
247
- * @see [[setAlwaysDrawn]]
248
- */
249
- alwaysDrawnIgnoresSubCategory: boolean;
250
- /** If true, all subcategories are considered visible. This is used for drawing sheets via section callouts in the absence of an actual sheet view.
251
- * @internal
252
- */
253
- ignoreSubCategory: boolean;
254
- /** Overrides applied to any feature not explicitly overridden. @internal */
255
- protected _defaultOverrides: FeatureAppearance;
256
- /** Whether construction geometry should be drawn. @internal */
257
- protected _constructions: boolean;
258
- /** Whether dimensions should be drawn. @internal */
259
- protected _dimensions: boolean;
260
- /** Whether area patterns should be drawn. @internal */
261
- protected _patterns: boolean;
262
- /** Whether line weights should be applied. If false, all lines are rendered 1-pixel wide. @internal */
263
- protected _lineWeights: boolean;
264
- /** Overrides applied to all elements belonging to each model. @internal */
265
- protected readonly _modelOverrides: Id64.Uint32Map<FeatureAppearance>;
266
- /** Overrides applied to specific elements. @internal */
267
- protected readonly _elementOverrides: Id64.Uint32Map<FeatureAppearance>;
268
- /** Overrides applied to geometry belonging to each subcategory. @internal */
269
- protected readonly _subCategoryOverrides: Id64.Uint32Map<FeatureAppearance>;
270
- /** The set of displayed subcategories. Geometry belonging to subcategories not included in this set will not be drawn. @internal */
271
- protected readonly _visibleSubCategories: Id64.Uint32Set;
272
- /** Display priorities assigned to subcategories, possibly overridden by display style. Only applicable for plan projection models. @internal */
273
- protected readonly _subCategoryPriorities: Id64.Uint32Map<number>;
274
- /** Per-model, a set of subcategories whose visibility should be inverted for elements within that model.
275
- * Populated by Viewport.
276
- * @internal
277
- */
278
- protected readonly _modelSubCategoryOverrides: Id64.Uint32Map<Id64.Uint32Set>;
279
- /** Ids of animation nodes that should never be drawn.
280
- * @internal
281
- */
282
- readonly neverDrawnAnimationNodes: Set<number>;
283
- /** Mapping of animation node Ids to overrides applied to the corresponding animation nodes.
284
- * @internal
285
- */
286
- readonly animationNodeOverrides: Map<number, FeatureAppearance>;
287
- /** Accepts a criterion that determines whether color and transparency overrides originating from the view's [[RenderSchedule.Script]] should be ignored for a given element.
288
- * The function receives a description of the element in question and returns `true` if the script's overrides should be ignored.
289
- * Any number of such functions can be registered; if any one of them returns `true`, the script's overrides are not applied to the specified element.
290
- *
291
- * For example, applications commonly emphasize a set of elements by applying a [[FeatureAppearance.emphasized]] override to them, and specifying a highly-transparent
292
- * default appearance to de-emphasize the rest of the elements in the view. If some of the de-emphasized elements' appearances are also being overridden by the schedule script, then
293
- * they won't appear de-emphasized, making it difficult for the emphasized elements to stand out. In situations like this, [FeatureOverrideProvider]($frontend)s like [EmphasizeElements]($frontend) can register an [[IgnoreAnimationOverrides]] function that returns true if the element in question is not in the set of emphasized elements.
294
- */
295
- ignoreAnimationOverrides(ignore: IgnoreAnimationOverrides): void;
296
- /** Overrides applied to features for which no other overrides are defined */
297
- get defaultOverrides(): FeatureAppearance;
298
- /** Whether or not line weights are applied. If false, all lines are drawn with a weight of 1. */
299
- get lineWeights(): boolean;
300
- /** @internal */
301
- get neverDrawn(): Id64.Uint32Set;
302
- /** @internal */
303
- get alwaysDrawn(): Id64.Uint32Set;
304
- /** @internal */
305
- protected isNeverDrawn(elemIdLo: number, elemIdHi: number, animationNodeId: number): boolean;
306
- /** @internal */
307
- protected isAlwaysDrawn(idLo: number, idHi: number): boolean;
308
- /** Returns true if the [SubCategory]($backend) specified by Id is in the set of visible subcategories. @internal */
309
- isSubCategoryVisible(idLo: number, idHi: number): boolean;
310
- /** @internal */
311
- isSubCategoryVisibleInModel(subcatLo: number, subcatHi: number, modelLo: number, modelHi: number): boolean;
312
- /** @internal */
313
- protected getModelOverrides(idLo: number, idHi: number): FeatureAppearance | undefined;
314
- private getElementAnimationOverrides;
315
- /** @internal */
316
- protected getElementOverrides(idLo: number, idHi: number, animationNodeId: number): FeatureAppearance | undefined;
317
- /** @internal */
318
- protected getSubCategoryOverrides(idLo: number, idHi: number): FeatureAppearance | undefined;
319
- /** Add a [SubCategory]($backend) to the set of visible subcategories. */
320
- setVisibleSubCategory(id: Id64String): void;
321
- /** Specify the Id of an element that should never be drawn. */
322
- setNeverDrawn(id: Id64String): void;
323
- /** Specify the Id of an element that should always be drawn. */
324
- setAlwaysDrawn(id: Id64String): void;
325
- /** Specify the Id of a animation node that should never be drawn. */
326
- setAnimationNodeNeverDrawn(id: number): void;
327
- /** Specify the Ids of elements that should never be drawn. */
328
- setNeverDrawnSet(ids: Iterable<Id64String>): void;
329
- /** Specify the Ids of elements that should always be drawn. */
330
- setAlwaysDrawnSet(ids: Iterable<Id64String>, exclusive: boolean, ignoreSubCategory?: boolean): void;
331
- /** Returns the feature's appearance overrides, or undefined if the feature is not visible. */
332
- getFeatureAppearance(feature: Feature, modelId: Id64String, type?: BatchType, animationNodeId?: number): FeatureAppearance | undefined;
333
- private static readonly _weight1Appearance;
334
- /** Returns a feature's appearance overrides, or undefined if the feature is not visible.
335
- * Takes Id64s as pairs of unsigned 32-bit integers for efficiency, because that is how they are stored by the PackedFeatureTable associated with each batch of graphics.
336
- * @see [[getFeatureAppearance]] for an equivalent function that accepts [Id64String]($core-bentley)s instead of integer pairs.
337
- */
338
- getAppearance(elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined;
339
- /** Classifiers behave totally differently...in particular they are never invisible unless fully-transparent.
340
- * @internal
341
- */
342
- protected getClassifierAppearance(elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, modelLo: number, modelHi: number, animationNodeId: number): FeatureAppearance | undefined;
343
- /** Return whether geometry of the specified class should be drawn.
344
- * @see [[ViewFlags.constructions]], [[ViewFlags.dimensions]], and [[ViewFlags.patterns]].
345
- */
346
- isClassVisible(geomClass: GeometryClass): boolean;
347
- /** Specify overrides for all elements belonging to a specified [GeometricModel]($backend), or all geometry belonging to a specified [GeometricElement]($backend) or [SubCategory]($backend). */
348
- override(args: OverrideFeatureAppearanceArgs): void;
349
- /** Specify overrides for all elements within the specified model.
350
- * @param id The Id of the model.
351
- * @param app The symbology overrides.
352
- * @param replaceExisting Specifies whether to replace a pre-existing override for the same model.
353
- * @note These overrides take priority over all other overrides.
354
- * @note If [[defaultOverrides]] are defined, they will not apply to any element within this model, even if the supplied appearance overrides nothing.
355
- * @deprecated in 3.x. Use [[FeatureOverrides.override]].
356
- */
357
- overrideModel(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
358
- /** Specify overrides for all geometry belonging to the specified [SubCategory]($backend).
359
- * @param id The Id of the subcategory.
360
- * @param app The symbology overrides.
361
- * @param replaceExisting Specifies whether to replace a pre-existing override for the same subcategory.
362
- * @note These overrides have lower priority than element and model overrides.
363
- * @note If [[defaultOverrides]] are defined, they will not apply to any geometry within this subcategory, even if the supplied appearance overrides nothing.
364
- * @deprecated in 3.x. Use [[FeatureOverrides.override]].
365
- */
366
- overrideSubCategory(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
367
- /** Specify overrides for all geometry originating from the specified element.
368
- * @param id The Id of the element.
369
- * @param app The symbology overrides.
370
- * @param replaceExisting Specifies whether to replace a pre-existing override for the same element.
371
- * @note These overrides take precedence over subcategory overrides, but not over model overrides.
372
- * @note If [[defaultOverrides]] are defined, they will not apply to this element, even if the supplied appearance overrides nothing.
373
- * @deprecated in 3.x. Use [[FeatureOverrides.override]].
374
- */
375
- overrideElement(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
376
- /** Specify overrides for all geometry originating from the specified animation node.
377
- * @param id The Id of the animation node.
378
- * @param app The symbology overrides.
379
- * @note These overrides do not take precedence over element overrides.
380
- */
381
- overrideAnimationNode(id: number, app: FeatureAppearance): void;
382
- /** Defines a default appearance to be applied to any [[Feature]] *not* explicitly overridden.
383
- * @param appearance The symbology overrides.
384
- * @param replaceExisting Specifies whether to replace the current default overrides if they are already defined.
385
- */
386
- setDefaultOverrides(appearance: FeatureAppearance, replaceExisting?: boolean): void;
387
- /** Get the display priority of a subcategory. This is only relevant when using [[PlanProjectionSettings]].
388
- * @internal
389
- */
390
- getSubCategoryPriority(idLo: number, idHi: number): number;
391
- /** Construct a new Overrides that overrides nothing.
392
- * @see [FeatureSymbology.Overrides]($frontend) to construct overrides based on a [ViewState]($frontend) or [Viewport]($frontend).
393
- */
394
- constructor();
395
- /** Returns true if geometry belonging to the specified subcategory will be drawn. */
396
- isSubCategoryIdVisible(id: Id64String): boolean;
397
- /** Returns the overrides applied to geometry belonging to the specified model, if any such are defined. */
398
- getModelOverridesById(id: Id64String): FeatureAppearance | undefined;
399
- /** Returns the overrides applied to geometry belonging to the specified element, if any such are defined. */
400
- getElementOverridesById(id: Id64String): FeatureAppearance | undefined;
401
- /** Returns the overrides applied to geometry belonging to the specified subcategory, if any such are defined. */
402
- getSubCategoryOverridesById(id: Id64String): FeatureAppearance | undefined;
403
- /** Returns true if the specified Feature will be drawn. */
404
- isFeatureVisible(feature: Feature): boolean;
405
- }
406
- /** Interface adopted by an object that can supply the [[FeatureAppearance]] supplied by a [[FeatureAppearanceSource]].
407
- * This is useful for selectively overriding or agumenting a [Viewport]($frontend)'s symbology overrides.
408
- * A typical implementation will invoke [[FeatureAppearanceSource.getAppeaprance]] and customize the returned appearance.
409
- * @see [[FeatureAppearanceProvider.chain]] to chain two providers together.
410
- * @public
411
- * @extensions
412
- */
413
- export interface FeatureAppearanceProvider {
414
- /** Supply the desired appearance overrides for the specified [[Feature]], or `undefined` if the feature should not be drawn.
415
- * The feature is described by its components for efficiency reasons.
416
- * @param source The base symbology overrides, e.g., typically defined by a [Viewport]($frontend).
417
- * @param elemLo The lower 32 bits of the feature's element Id.
418
- * @param elemHi The upper 32 bits of the feature's element Id.
419
- * @param subcatLo The lower 32 bits of the feature's subcategory Id.
420
- * @param subcatHi The upper 32 bits of the feature's subcategory Id.
421
- * @param geomClass The geometry class of the feature.
422
- * @param modelLo The lower 32 bits of the feature's model Id.
423
- * @param modelHi The upper 32 bits of the feature's model Id.
424
- * @param type The type of batch to which the feature belongs.
425
- * @param animationNodeId The Id of the corresponding node in the [[RenderSchedule]], or `0` if none.
426
- * @returns The desired appearance overrides, or `undefined` to indicate the feature should not be displayed.
427
- * @see [[FeatureAppearanceSource.getAppearance]] to forward the request to the source.
428
- * @see [Id64.isValidUint32Pair]($core-bentley) to determine if the components of an [Id64String]($core-bentley) represent a valid Id.
429
- */
430
- getFeatureAppearance(source: FeatureAppearanceSource, elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined;
431
- }
432
- /** @public */
433
- export declare namespace FeatureAppearanceProvider {
434
- /** Create a provider that obtains each feature's appearance from the source, and if the feature is visible, modifies the appearance.
435
- * @param supplementAppearance A function accepting the feature's base appearance and returning a supplemental appearance.
436
- * @public
437
- */
438
- function supplement(supplementAppearance: (appearance: FeatureAppearance) => FeatureAppearance): FeatureAppearanceProvider;
439
- /** Chain two FeatureAppearanceProviders together such that `first`'s `getFeatureAppearance` function is applied before `second`'s.
440
- * If `second` invokes `source.getAppearance()`, the returned appearance will include any modifications applied by `first`.
441
- * @public
442
- */
443
- function chain(first: FeatureAppearanceProvider, second: FeatureAppearanceProvider): FeatureAppearanceProvider;
444
- }
1
+ /** @packageDocumentation
2
+ * @module Rendering
3
+ */
4
+ import { Id64, Id64String } from "@itwin/core-bentley";
5
+ import { BatchType, Feature } from "./FeatureTable";
6
+ import { ColorDef } from "./ColorDef";
7
+ import { GeometryClass } from "./GeometryParams";
8
+ import { LinePixels } from "./LinePixels";
9
+ import { RgbColor, RgbColorProps } from "./RgbColor";
10
+ import { SubCategoryOverride } from "./SubCategoryOverride";
11
+ /** JSON representation of a [[FeatureAppearance]].
12
+ * @public
13
+ * @extensions
14
+ */
15
+ export interface FeatureAppearanceProps {
16
+ /** See [[FeatureAppearance.rgb]]. */
17
+ rgb?: RgbColorProps;
18
+ /** See [[FeatureAppearance.weight]]. */
19
+ weight?: number;
20
+ /** See [[FeatureAppearance.transparency]]. */
21
+ transparency?: number;
22
+ /** See [[FeatureAppearance.viewDependentTransparency]]. */
23
+ viewDependentTransparency?: true;
24
+ /** See [[FeatureAppearance.linePixels]]. */
25
+ linePixels?: LinePixels;
26
+ /** See [[FeatureAppearance.ignoresMaterial]]. */
27
+ ignoresMaterial?: true;
28
+ /** See [[FeatureAppearance.nonLocatable]]. */
29
+ nonLocatable?: true;
30
+ /** See [[FeatureAppearance.emphasized]]. */
31
+ emphasized?: true;
32
+ }
33
+ /** Defines overrides for selected aspects of a [[Feature]]'s symbology.
34
+ * Any member defined in the appearance overrides that aspect of symbology for all [[Feature]]s to which the appearance is applied.
35
+ * @see [[FeatureOverrides]] to customize the appearance of multiple features.
36
+ * @public
37
+ */
38
+ export declare class FeatureAppearance {
39
+ /** Overrides the feature's color. */
40
+ readonly rgb?: RgbColor;
41
+ /** The width of lines and edges in pixels as an integer in [1, 31]. */
42
+ readonly weight?: number;
43
+ /** The transparency in the range [0, 1] where 0 indicates fully opaque and 1 indicates fully transparent.
44
+ * @see [[viewDependentTransparency]] for details on how this override interacts with the [DisplayStyle]($backend).
45
+ */
46
+ readonly transparency?: number;
47
+ /** The pixel pattern applied to lines and edges. */
48
+ readonly linePixels?: LinePixels;
49
+ /** If true, don't apply the [[RenderMaterial]] to the feature's surfaces. */
50
+ readonly ignoresMaterial?: true;
51
+ /** If true, the feature will not be drawn when using [Viewport.readPixels]($frontend), meaning [Tool]($frontend)s will not be able to interact with it. */
52
+ readonly nonLocatable?: true;
53
+ /** If true, the feature will be rendered using the [[Hilite.Settings]] defined by [Viewport.emphasisSettings]($frontend) to make it stand out. */
54
+ readonly emphasized?: true;
55
+ /** If true, then [[transparency]] will only be applied if [[ViewFlags.transparency]] is enabled and the current [[RenderMode]] supports transparency.
56
+ * Default: false, meaning the transparency will be applied regardless of view flags or render mode.
57
+ * This property has no effect if [[transparency]] is `undefined`.
58
+ */
59
+ readonly viewDependentTransparency?: true;
60
+ /** An appearance that overrides nothing. */
61
+ static readonly defaults: FeatureAppearance;
62
+ static fromJSON(props?: FeatureAppearanceProps): FeatureAppearance;
63
+ /** Create a FeatureAppearance that overrides only the RGB color.
64
+ * @note The transparency component of the ColorDef is ignored.
65
+ */
66
+ static fromRgb(color: ColorDef): FeatureAppearance;
67
+ /** Create a FeatureAppearance that overrides the RGB and transparency.
68
+ * The appearance's transparency is derived from the transparency component of the ColorDef.
69
+ */
70
+ static fromRgba(color: ColorDef, viewDependentTransparency?: boolean): FeatureAppearance;
71
+ /** Create a FeatureAppearance that overrides only the transparency */
72
+ static fromTransparency(transparencyValue: number, viewDependent?: boolean): FeatureAppearance;
73
+ /** Create a FeatureAppearance with overrides corresponding to those defined by the supplied SubCategoryOverride.
74
+ * @note Subcategory overrides set [[viewDependentTransparency]] to `true`.
75
+ */
76
+ static fromSubCategoryOverride(ovr: SubCategoryOverride): FeatureAppearance;
77
+ /** Returns true if this appearance does not override any aspects of symbology. */
78
+ get matchesDefaults(): boolean;
79
+ get overridesRgb(): boolean;
80
+ get overridesTransparency(): boolean;
81
+ get overridesLinePixels(): boolean;
82
+ get overridesWeight(): boolean;
83
+ get overridesSymbology(): boolean;
84
+ get overridesNonLocatable(): boolean;
85
+ get isFullyTransparent(): boolean;
86
+ /** Returns true if any aspect of the appearance is overridden (i.e., if any member is not undefined). */
87
+ get anyOverridden(): boolean;
88
+ equals(other: FeatureAppearance): boolean;
89
+ toJSON(): FeatureAppearanceProps;
90
+ /** Convert this appearance to JSON, and override any properties explicitly specified by `changedProps` in the result.
91
+ * Example:
92
+ * ```ts
93
+ * const base = FeatureAppearance.fromRgba(ColorDef.white); // transparency=0, rgb=white
94
+ * const clone = base.cloneProps({ transparency: undefined, weight: 5 }); // transparency=undefined, rgb=white, weight=5
95
+ * ```
96
+ * @see [[FeatureAppearance.clone]].
97
+ */
98
+ cloneProps(changedProps: FeatureAppearanceProps): FeatureAppearanceProps;
99
+ /** Create a copy of this appearance, overriding any properties explicitly specified by `changedProps`.
100
+ * Example:
101
+ * ```ts
102
+ * const base = FeatureAppearance.fromRgba(ColorDef.white); // transparency=0, rgb=white
103
+ * const clone = base.clone({ transparency: undefined, weight: 5 }); // transparency=undefined, rgb=white, weight=5
104
+ * ```
105
+ * @see [[FeatureAppearance.cloneProps]].
106
+ */
107
+ clone(changedProps: FeatureAppearanceProps): FeatureAppearance;
108
+ /** Produce a FeatureAppearance from the supplied appearance in which any aspect not defined by the base appearance is overridden by this appearance. */
109
+ extendAppearance(base: FeatureAppearance): FeatureAppearance;
110
+ protected constructor(props: FeatureAppearanceProps);
111
+ private rgbIsEqual;
112
+ private transparencyIsEqual;
113
+ }
114
+ /** Interface adopted by an object that can supply a [[FeatureAppearance]] given a low-level description of a [[Feature]].
115
+ * @see [[FeatureOverrides]] for the commonly-used implementation.
116
+ * @see [[FeatureAppearanceProvider]] to supplement the appearance supplied by this interface.
117
+ * @public
118
+ * @extensions
119
+ */
120
+ export interface FeatureAppearanceSource {
121
+ /** Supplies the desired appearance overrides for the specified [[Feature]], or `undefined` if the feature should not be drawn.
122
+ * The feature is described by its components for efficiency reasons.
123
+ * @param elemLo The lower 32 bits of the feature's element Id.
124
+ * @param elemHi The upper 32 bits of the feature's element Id.
125
+ * @param subcatLo The lower 32 bits of the feature's subcategory Id.
126
+ * @param subcatHi The upper 32 bits of the feature's subcategory Id.
127
+ * @param geomClass The geometry class of the feature.
128
+ * @param modelLo The lower 32 bits of the feature's model Id.
129
+ * @param modelHi The upper 32 bits of the feature's model Id.
130
+ * @param type The type of batch to which the feature belongs.
131
+ * @param animationNodeId The Id of the corresponding node in the [[RenderSchedule]], or `0` if none.
132
+ * @returns The desired appearance overrides, or `undefined` to indicate the feature should not be displayed.
133
+ * @see [Id64.isValidUint32Pair]($core-bentley) to determine if the components of an [Id64String]($core-bentley) represent a valid Id.
134
+ */
135
+ getAppearance(elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined;
136
+ }
137
+ /** Common options for [[FeatureOverrides.override]].
138
+ * @public
139
+ */
140
+ export interface OverrideFeatureAppearanceOptions {
141
+ /** Specifies the aspects of the [[Feature]]'s appearance to be overridden. */
142
+ appearance: FeatureAppearance;
143
+ /** Specifies what to do if a [[FeatureAppearance]] has already been configured for the specified element, model, or subcategory by a previous call to [[FeatureOverrides.override]].
144
+ * - "subsume" (the default): Merge the two appearances using the logic described by [[FeatureAppearance.extendAppearance]] such that any aspect overridden by the existing appearance will be overwritten
145
+ * if also overridden by [[appearance]].
146
+ * - The resulting appearance is computed as `existingAppearance.extendAppearance(newAppearance)`.
147
+ * - "extend": Merge the two appearances using the logic described by [[FeatureAppearance.extendAppearance]] such that any aspect overridden by [[appearance]] will only
148
+ * apply if that aspect is not already overridden by a previous appearance.
149
+ * - The resulting appearance is computed as `newAppearance.extendAppearance(existingAppearance)`.
150
+ * - "replace": Completely replace the existing appearance with [[appearance]].
151
+ * - "skip": Keep the existing appearance.
152
+ */
153
+ onConflict?: "extend" | "subsume" | "replace" | "skip";
154
+ }
155
+ /** Options for using [[FeatureOverrides.override]] to override the appearance of a [GeometricModel]($backend).
156
+ * @public
157
+ */
158
+ export interface OverrideModelAppearanceOptions extends OverrideFeatureAppearanceOptions {
159
+ /** The Id of the model whose appearance is to be overridden. */
160
+ modelId: Id64String;
161
+ /** @internal */
162
+ elementId?: never;
163
+ /** @internal */
164
+ subCategoryId?: never;
165
+ }
166
+ /** Options for using [[FeatureOverrides.override]] to override the appearance of a [GeometricElement]($backend).
167
+ * @public
168
+ */
169
+ export interface OverrideElementAppearanceOptions extends OverrideFeatureAppearanceOptions {
170
+ /** The Id of the element whose appearance is to be overridden. */
171
+ elementId: Id64String;
172
+ /** @internal */
173
+ modelId?: never;
174
+ /** @internal */
175
+ subCategoryId?: never;
176
+ }
177
+ /** Options for using [[FeatureOverrides.override]] to override the appearance of a [SubCategory]($backend).
178
+ * @public
179
+ */
180
+ export interface OverrideSubCategoryAppearanceOptions extends OverrideFeatureAppearanceOptions {
181
+ /** The Id of the subcategory whose appearance is to be overridden. */
182
+ subCategoryId: Id64String;
183
+ /** @internal */
184
+ modelId?: never;
185
+ /** @internal */
186
+ elementId?: never;
187
+ }
188
+ /** Arguments supplied to [[FeatureOverrides.override]].
189
+ * @public
190
+ */
191
+ export declare type OverrideFeatureAppearanceArgs = OverrideElementAppearanceOptions | OverrideModelAppearanceOptions | OverrideSubCategoryAppearanceOptions;
192
+ /** Arguments provided to a function of type [[IgnoreAnimationOverrides]].
193
+ * @see [[FeatureOverrides.ignoreAnimationOverrides]] to register such a function.
194
+ * @public
195
+ */
196
+ export interface IgnoreAnimationOverridesArgs {
197
+ /** The Id of the element under consideration.
198
+ * @see [Id64.fromUint32Pair]($bentley) to convert a Uint32Pair into an [Id64String]($bentley), if needed.
199
+ */
200
+ readonly elementId: Readonly<Id64.Uint32Pair>;
201
+ /** The [[RenderSchedule.ElementTimeline.batchId]] identifying the [[RenderSchedule.ElementTimeline]] to which the element under consideration belongs. */
202
+ readonly animationNodeId: number;
203
+ }
204
+ /** A function that can be supplied to [[FeatureOverrides.ignoreAnimationOverrides]] to indicate whether the color or transparency overrides defined
205
+ * by the view's [[RenderSchedule.Script]] should be ignored. The arguments describe the element under consideration. The function should return true if that
206
+ * element should not have its color or transparency modified by the schedule script.
207
+ * @public
208
+ */
209
+ export declare type IgnoreAnimationOverrides = (args: IgnoreAnimationOverridesArgs) => boolean;
210
+ /** Specifies how to customize the appearance of individual [[Feature]]s, typically within the context of a [Viewport]($frontend).
211
+ * Individual aspects of a feature's appearance - like visibility, color, and transparency - are overridden by supplying a [[FeatureAppearance]].
212
+ * Those overrides can be specified on the basis of the feature's model, element, and/or subcategory. A default set of overrides can also be specified to
213
+ * apply to the appearance of any feature not otherwise overridden.
214
+ *
215
+ * It is possible to override multiple aspects of a feature on different bases. For example, you might specify that all features belonging to subcategory "A" should be drawn in red,
216
+ * and that all features belonging to model "B" should be drawn 50% transparent. In this case, a feature belonging to both subcategory "A" and model "B" will be drawn as 50% transparent red -
217
+ * the separate overrides are combined to produce the feature's overall appearance.
218
+ *
219
+ * In the case of conflicts, there is an order of precedence:
220
+ * - Model overrides take highest precedence.
221
+ * - Element overrides are of higher precedence than subcategory and animation overrides.
222
+ * - Overrides applied by a [[RenderSchedule.Script]]'s [[RenderSchedule.ElementTimeline]] are of higher precedence than subcategory overrides, but can be suppressed on a per-element basis via [[ignoreAnimationOverrides]].
223
+ * - Subcategory overrides have lowest precedence.
224
+ *
225
+ * For example, you might specify that all features belonging to subcategory "A" should be drawn in red, and all those belonging to model "B" should be drawn in green.
226
+ * Then a feature belonging to subcategory "A" and model "B" will be drawn in green, because the model overrides take precedence.
227
+ *
228
+ * Instances of this class are not typically instantiated by an application directly; instead, an application can implement a [FeatureOverrideProvider]($frontend)
229
+ * that augments the overrides supplied by a viewport.
230
+ *
231
+ * @see [FeatureSymbology.Overrides]($frontend) to create overrides specific to a [Viewport]($frontend) or [ViewState]($frontend).
232
+ * @see [FeatureOverrideProvider]($frontend) to customize the appearance of features within a [Viewport]($frontend).
233
+ * @public
234
+ */
235
+ export declare class FeatureOverrides implements FeatureAppearanceSource {
236
+ /** @internal */
237
+ protected readonly _ignoreAnimationOverrides: IgnoreAnimationOverrides[];
238
+ /** Ids of elements that should never be drawn. This takes precedence over [[alwaysDrawn]]. @internal */
239
+ protected readonly _neverDrawn: Id64.Uint32Set;
240
+ /** Ids of elements that should always be drawn. [[neverDrawn]] takes precedence over this set. @internal */
241
+ protected readonly _alwaysDrawn: Id64.Uint32Set;
242
+ /** If true, no elements *except* those defined in the "always drawn" set will be drawn.
243
+ * @see [[setAlwaysDrawn]]
244
+ */
245
+ isAlwaysDrawnExclusive: boolean;
246
+ /** If true, the always-drawn elements are drawn even if their subcategories are not visible.
247
+ * @see [[setAlwaysDrawn]]
248
+ */
249
+ alwaysDrawnIgnoresSubCategory: boolean;
250
+ /** If true, all subcategories are considered visible. This is used for drawing sheets via section callouts in the absence of an actual sheet view.
251
+ * @internal
252
+ */
253
+ ignoreSubCategory: boolean;
254
+ /** Overrides applied to any feature not explicitly overridden. @internal */
255
+ protected _defaultOverrides: FeatureAppearance;
256
+ /** Whether construction geometry should be drawn. @internal */
257
+ protected _constructions: boolean;
258
+ /** Whether dimensions should be drawn. @internal */
259
+ protected _dimensions: boolean;
260
+ /** Whether area patterns should be drawn. @internal */
261
+ protected _patterns: boolean;
262
+ /** Whether line weights should be applied. If false, all lines are rendered 1-pixel wide. @internal */
263
+ protected _lineWeights: boolean;
264
+ /** Overrides applied to all elements belonging to each model. @internal */
265
+ protected readonly _modelOverrides: Id64.Uint32Map<FeatureAppearance>;
266
+ /** Overrides applied to specific elements. @internal */
267
+ protected readonly _elementOverrides: Id64.Uint32Map<FeatureAppearance>;
268
+ /** Overrides applied to geometry belonging to each subcategory. @internal */
269
+ protected readonly _subCategoryOverrides: Id64.Uint32Map<FeatureAppearance>;
270
+ /** The set of displayed subcategories. Geometry belonging to subcategories not included in this set will not be drawn. @internal */
271
+ protected readonly _visibleSubCategories: Id64.Uint32Set;
272
+ /** Display priorities assigned to subcategories, possibly overridden by display style. Only applicable for plan projection models. @internal */
273
+ protected readonly _subCategoryPriorities: Id64.Uint32Map<number>;
274
+ /** Per-model, a set of subcategories whose visibility should be inverted for elements within that model.
275
+ * Populated by Viewport.
276
+ * @internal
277
+ */
278
+ protected readonly _modelSubCategoryOverrides: Id64.Uint32Map<Id64.Uint32Set>;
279
+ /** Ids of animation nodes that should never be drawn.
280
+ * @internal
281
+ */
282
+ readonly neverDrawnAnimationNodes: Set<number>;
283
+ /** Mapping of animation node Ids to overrides applied to the corresponding animation nodes.
284
+ * @internal
285
+ */
286
+ readonly animationNodeOverrides: Map<number, FeatureAppearance>;
287
+ /** Accepts a criterion that determines whether color and transparency overrides originating from the view's [[RenderSchedule.Script]] should be ignored for a given element.
288
+ * The function receives a description of the element in question and returns `true` if the script's overrides should be ignored.
289
+ * Any number of such functions can be registered; if any one of them returns `true`, the script's overrides are not applied to the specified element.
290
+ *
291
+ * For example, applications commonly emphasize a set of elements by applying a [[FeatureAppearance.emphasized]] override to them, and specifying a highly-transparent
292
+ * default appearance to de-emphasize the rest of the elements in the view. If some of the de-emphasized elements' appearances are also being overridden by the schedule script, then
293
+ * they won't appear de-emphasized, making it difficult for the emphasized elements to stand out. In situations like this, [FeatureOverrideProvider]($frontend)s like [EmphasizeElements]($frontend) can register an [[IgnoreAnimationOverrides]] function that returns true if the element in question is not in the set of emphasized elements.
294
+ */
295
+ ignoreAnimationOverrides(ignore: IgnoreAnimationOverrides): void;
296
+ /** Overrides applied to features for which no other overrides are defined */
297
+ get defaultOverrides(): FeatureAppearance;
298
+ /** Whether or not line weights are applied. If false, all lines are drawn with a weight of 1. */
299
+ get lineWeights(): boolean;
300
+ /** @internal */
301
+ get neverDrawn(): Id64.Uint32Set;
302
+ /** @internal */
303
+ get alwaysDrawn(): Id64.Uint32Set;
304
+ /** @internal */
305
+ protected isNeverDrawn(elemIdLo: number, elemIdHi: number, animationNodeId: number): boolean;
306
+ /** @internal */
307
+ protected isAlwaysDrawn(idLo: number, idHi: number): boolean;
308
+ /** Returns true if the [SubCategory]($backend) specified by Id is in the set of visible subcategories. @internal */
309
+ isSubCategoryVisible(idLo: number, idHi: number): boolean;
310
+ /** @internal */
311
+ isSubCategoryVisibleInModel(subcatLo: number, subcatHi: number, modelLo: number, modelHi: number): boolean;
312
+ /** @internal */
313
+ protected getModelOverrides(idLo: number, idHi: number): FeatureAppearance | undefined;
314
+ private getElementAnimationOverrides;
315
+ /** @internal */
316
+ protected getElementOverrides(idLo: number, idHi: number, animationNodeId: number): FeatureAppearance | undefined;
317
+ /** @internal */
318
+ protected getSubCategoryOverrides(idLo: number, idHi: number): FeatureAppearance | undefined;
319
+ /** Add a [SubCategory]($backend) to the set of visible subcategories. */
320
+ setVisibleSubCategory(id: Id64String): void;
321
+ /** Specify the Id of an element that should never be drawn. */
322
+ setNeverDrawn(id: Id64String): void;
323
+ /** Specify the Id of an element that should always be drawn. */
324
+ setAlwaysDrawn(id: Id64String): void;
325
+ /** Specify the Id of a animation node that should never be drawn. */
326
+ setAnimationNodeNeverDrawn(id: number): void;
327
+ /** Specify the Ids of elements that should never be drawn. */
328
+ setNeverDrawnSet(ids: Iterable<Id64String>): void;
329
+ /** Specify the Ids of elements that should always be drawn. */
330
+ setAlwaysDrawnSet(ids: Iterable<Id64String>, exclusive: boolean, ignoreSubCategory?: boolean): void;
331
+ /** Returns the feature's appearance overrides, or undefined if the feature is not visible. */
332
+ getFeatureAppearance(feature: Feature, modelId: Id64String, type?: BatchType, animationNodeId?: number): FeatureAppearance | undefined;
333
+ private static readonly _weight1Appearance;
334
+ /** Returns a feature's appearance overrides, or undefined if the feature is not visible.
335
+ * Takes Id64s as pairs of unsigned 32-bit integers for efficiency, because that is how they are stored by the PackedFeatureTable associated with each batch of graphics.
336
+ * @see [[getFeatureAppearance]] for an equivalent function that accepts [Id64String]($core-bentley)s instead of integer pairs.
337
+ */
338
+ getAppearance(elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined;
339
+ /** Classifiers behave totally differently...in particular they are never invisible unless fully-transparent.
340
+ * @internal
341
+ */
342
+ protected getClassifierAppearance(elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, modelLo: number, modelHi: number, animationNodeId: number): FeatureAppearance | undefined;
343
+ /** Return whether geometry of the specified class should be drawn.
344
+ * @see [[ViewFlags.constructions]], [[ViewFlags.dimensions]], and [[ViewFlags.patterns]].
345
+ */
346
+ isClassVisible(geomClass: GeometryClass): boolean;
347
+ /** Specify overrides for all elements belonging to a specified [GeometricModel]($backend), or all geometry belonging to a specified [GeometricElement]($backend) or [SubCategory]($backend). */
348
+ override(args: OverrideFeatureAppearanceArgs): void;
349
+ /** Specify overrides for all elements within the specified model.
350
+ * @param id The Id of the model.
351
+ * @param app The symbology overrides.
352
+ * @param replaceExisting Specifies whether to replace a pre-existing override for the same model.
353
+ * @note These overrides take priority over all other overrides.
354
+ * @note If [[defaultOverrides]] are defined, they will not apply to any element within this model, even if the supplied appearance overrides nothing.
355
+ * @deprecated in 3.x. Use [[FeatureOverrides.override]].
356
+ */
357
+ overrideModel(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
358
+ /** Specify overrides for all geometry belonging to the specified [SubCategory]($backend).
359
+ * @param id The Id of the subcategory.
360
+ * @param app The symbology overrides.
361
+ * @param replaceExisting Specifies whether to replace a pre-existing override for the same subcategory.
362
+ * @note These overrides have lower priority than element and model overrides.
363
+ * @note If [[defaultOverrides]] are defined, they will not apply to any geometry within this subcategory, even if the supplied appearance overrides nothing.
364
+ * @deprecated in 3.x. Use [[FeatureOverrides.override]].
365
+ */
366
+ overrideSubCategory(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
367
+ /** Specify overrides for all geometry originating from the specified element.
368
+ * @param id The Id of the element.
369
+ * @param app The symbology overrides.
370
+ * @param replaceExisting Specifies whether to replace a pre-existing override for the same element.
371
+ * @note These overrides take precedence over subcategory overrides, but not over model overrides.
372
+ * @note If [[defaultOverrides]] are defined, they will not apply to this element, even if the supplied appearance overrides nothing.
373
+ * @deprecated in 3.x. Use [[FeatureOverrides.override]].
374
+ */
375
+ overrideElement(id: Id64String, app: FeatureAppearance, replaceExisting?: boolean): void;
376
+ /** Specify overrides for all geometry originating from the specified animation node.
377
+ * @param id The Id of the animation node.
378
+ * @param app The symbology overrides.
379
+ * @note These overrides do not take precedence over element overrides.
380
+ */
381
+ overrideAnimationNode(id: number, app: FeatureAppearance): void;
382
+ /** Defines a default appearance to be applied to any [[Feature]] *not* explicitly overridden.
383
+ * @param appearance The symbology overrides.
384
+ * @param replaceExisting Specifies whether to replace the current default overrides if they are already defined.
385
+ */
386
+ setDefaultOverrides(appearance: FeatureAppearance, replaceExisting?: boolean): void;
387
+ /** Get the display priority of a subcategory. This is only relevant when using [[PlanProjectionSettings]].
388
+ * @internal
389
+ */
390
+ getSubCategoryPriority(idLo: number, idHi: number): number;
391
+ /** Construct a new Overrides that overrides nothing.
392
+ * @see [FeatureSymbology.Overrides]($frontend) to construct overrides based on a [ViewState]($frontend) or [Viewport]($frontend).
393
+ */
394
+ constructor();
395
+ /** Returns true if geometry belonging to the specified subcategory will be drawn. */
396
+ isSubCategoryIdVisible(id: Id64String): boolean;
397
+ /** Returns the overrides applied to geometry belonging to the specified model, if any such are defined. */
398
+ getModelOverridesById(id: Id64String): FeatureAppearance | undefined;
399
+ /** Returns the overrides applied to geometry belonging to the specified element, if any such are defined. */
400
+ getElementOverridesById(id: Id64String): FeatureAppearance | undefined;
401
+ /** Returns the overrides applied to geometry belonging to the specified subcategory, if any such are defined. */
402
+ getSubCategoryOverridesById(id: Id64String): FeatureAppearance | undefined;
403
+ /** Returns true if the specified Feature will be drawn. */
404
+ isFeatureVisible(feature: Feature): boolean;
405
+ }
406
+ /** Interface adopted by an object that can supply the [[FeatureAppearance]] supplied by a [[FeatureAppearanceSource]].
407
+ * This is useful for selectively overriding or agumenting a [Viewport]($frontend)'s symbology overrides.
408
+ * A typical implementation will invoke [[FeatureAppearanceSource.getAppeaprance]] and customize the returned appearance.
409
+ * @see [[FeatureAppearanceProvider.chain]] to chain two providers together.
410
+ * @public
411
+ * @extensions
412
+ */
413
+ export interface FeatureAppearanceProvider {
414
+ /** Supply the desired appearance overrides for the specified [[Feature]], or `undefined` if the feature should not be drawn.
415
+ * The feature is described by its components for efficiency reasons.
416
+ * @param source The base symbology overrides, e.g., typically defined by a [Viewport]($frontend).
417
+ * @param elemLo The lower 32 bits of the feature's element Id.
418
+ * @param elemHi The upper 32 bits of the feature's element Id.
419
+ * @param subcatLo The lower 32 bits of the feature's subcategory Id.
420
+ * @param subcatHi The upper 32 bits of the feature's subcategory Id.
421
+ * @param geomClass The geometry class of the feature.
422
+ * @param modelLo The lower 32 bits of the feature's model Id.
423
+ * @param modelHi The upper 32 bits of the feature's model Id.
424
+ * @param type The type of batch to which the feature belongs.
425
+ * @param animationNodeId The Id of the corresponding node in the [[RenderSchedule]], or `0` if none.
426
+ * @returns The desired appearance overrides, or `undefined` to indicate the feature should not be displayed.
427
+ * @see [[FeatureAppearanceSource.getAppearance]] to forward the request to the source.
428
+ * @see [Id64.isValidUint32Pair]($core-bentley) to determine if the components of an [Id64String]($core-bentley) represent a valid Id.
429
+ */
430
+ getFeatureAppearance(source: FeatureAppearanceSource, elemLo: number, elemHi: number, subcatLo: number, subcatHi: number, geomClass: GeometryClass, modelLo: number, modelHi: number, type: BatchType, animationNodeId: number): FeatureAppearance | undefined;
431
+ }
432
+ /** @public */
433
+ export declare namespace FeatureAppearanceProvider {
434
+ /** Create a provider that obtains each feature's appearance from the source, and if the feature is visible, modifies the appearance.
435
+ * @param supplementAppearance A function accepting the feature's base appearance and returning a supplemental appearance.
436
+ * @public
437
+ */
438
+ function supplement(supplementAppearance: (appearance: FeatureAppearance) => FeatureAppearance): FeatureAppearanceProvider;
439
+ /** Chain two FeatureAppearanceProviders together such that `first`'s `getFeatureAppearance` function is applied before `second`'s.
440
+ * If `second` invokes `source.getAppearance()`, the returned appearance will include any modifications applied by `first`.
441
+ * @public
442
+ */
443
+ function chain(first: FeatureAppearanceProvider, second: FeatureAppearanceProvider): FeatureAppearanceProvider;
444
+ }
445
445
  //# sourceMappingURL=FeatureSymbology.d.ts.map