@itwin/core-common 3.5.0-dev.5 → 3.5.0-dev.51

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 (984) hide show
  1. package/CHANGELOG.md +60 -1
  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 +11 -11
  9. package/lib/cjs/AuthorizationClient.js +9 -9
  10. package/lib/cjs/AuthorizationClient.js.map +1 -1
  11. package/lib/cjs/BackendTypes.d.ts +13 -0
  12. package/lib/cjs/BackendTypes.d.ts.map +1 -0
  13. package/lib/cjs/BackendTypes.js +10 -0
  14. package/lib/cjs/BackendTypes.js.map +1 -0
  15. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  16. package/lib/cjs/BackgroundMapProvider.js +68 -68
  17. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  18. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  19. package/lib/cjs/BackgroundMapSettings.js +156 -156
  20. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  21. package/lib/cjs/Base64EncodedString.d.ts +32 -30
  22. package/lib/cjs/Base64EncodedString.d.ts.map +1 -1
  23. package/lib/cjs/Base64EncodedString.js +66 -56
  24. package/lib/cjs/Base64EncodedString.js.map +1 -1
  25. package/lib/cjs/BlobReader.d.ts +31 -31
  26. package/lib/cjs/BlobReader.js +84 -84
  27. package/lib/cjs/BlobReader.js.map +1 -1
  28. package/lib/cjs/BriefcaseTypes.d.ts +189 -189
  29. package/lib/cjs/BriefcaseTypes.js +95 -95
  30. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  31. package/lib/cjs/Camera.d.ts +42 -42
  32. package/lib/cjs/Camera.js +62 -62
  33. package/lib/cjs/Camera.js.map +1 -1
  34. package/lib/cjs/ChangedElements.d.ts +83 -83
  35. package/lib/cjs/ChangedElements.js +21 -21
  36. package/lib/cjs/ChangedElements.js.map +1 -1
  37. package/lib/cjs/ChangedEntities.d.ts +45 -45
  38. package/lib/cjs/ChangedEntities.js +9 -9
  39. package/lib/cjs/ChangedEntities.js.map +1 -1
  40. package/lib/cjs/ChangesetProps.d.ts +98 -98
  41. package/lib/cjs/ChangesetProps.js +22 -22
  42. package/lib/cjs/ChangesetProps.js.map +1 -1
  43. package/lib/cjs/ClipStyle.d.ts +89 -89
  44. package/lib/cjs/ClipStyle.js +123 -123
  45. package/lib/cjs/ClipStyle.js.map +1 -1
  46. package/lib/cjs/CloudStorage.d.ts +62 -62
  47. package/lib/cjs/CloudStorage.js +113 -113
  48. package/lib/cjs/CloudStorage.js.map +1 -1
  49. package/lib/cjs/CloudStorageTileCache.d.ts +27 -27
  50. package/lib/cjs/CloudStorageTileCache.js +66 -66
  51. package/lib/cjs/CloudStorageTileCache.js.map +1 -1
  52. package/lib/cjs/Code.d.ts +256 -256
  53. package/lib/cjs/Code.js +281 -281
  54. package/lib/cjs/Code.js.map +1 -1
  55. package/lib/cjs/ColorByName.d.ts +161 -161
  56. package/lib/cjs/ColorByName.js +169 -169
  57. package/lib/cjs/ColorByName.js.map +1 -1
  58. package/lib/cjs/ColorDef.d.ts +208 -208
  59. package/lib/cjs/ColorDef.js +571 -571
  60. package/lib/cjs/ColorDef.js.map +1 -1
  61. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  62. package/lib/cjs/CommonLoggerCategory.js +26 -26
  63. package/lib/cjs/CommonLoggerCategory.js.map +1 -1
  64. package/lib/cjs/ConcurrentQuery.d.ts +241 -241
  65. package/lib/cjs/ConcurrentQuery.js +380 -380
  66. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  67. package/lib/cjs/ContextRealityModel.d.ts +276 -276
  68. package/lib/cjs/ContextRealityModel.js +358 -358
  69. package/lib/cjs/ContextRealityModel.js.map +1 -1
  70. package/lib/cjs/DisplayStyleSettings.d.ts +584 -584
  71. package/lib/cjs/DisplayStyleSettings.js +981 -981
  72. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  73. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  74. package/lib/cjs/ECSchemaProps.js +9 -9
  75. package/lib/cjs/ECSchemaProps.js.map +1 -1
  76. package/lib/cjs/ECSqlReader.d.ts +70 -70
  77. package/lib/cjs/ECSqlReader.js +280 -280
  78. package/lib/cjs/ECSqlReader.js.map +1 -1
  79. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  80. package/lib/cjs/ECSqlTypes.js +189 -189
  81. package/lib/cjs/ECSqlTypes.js.map +1 -1
  82. package/lib/cjs/ElementProps.d.ts +479 -476
  83. package/lib/cjs/ElementProps.d.ts.map +1 -1
  84. package/lib/cjs/ElementProps.js +99 -99
  85. package/lib/cjs/ElementProps.js.map +1 -1
  86. package/lib/cjs/EmphasizeElementsProps.d.ts +55 -55
  87. package/lib/cjs/EmphasizeElementsProps.js +25 -25
  88. package/lib/cjs/EmphasizeElementsProps.js.map +1 -1
  89. package/lib/cjs/EntityProps.d.ts +176 -176
  90. package/lib/cjs/EntityProps.js +112 -112
  91. package/lib/cjs/EntityProps.js.map +1 -1
  92. package/lib/cjs/EntityReference.d.ts +52 -0
  93. package/lib/cjs/EntityReference.d.ts.map +1 -0
  94. package/lib/cjs/EntityReference.js +57 -0
  95. package/lib/cjs/EntityReference.js.map +1 -0
  96. package/lib/cjs/Environment.d.ts +61 -61
  97. package/lib/cjs/Environment.js +73 -73
  98. package/lib/cjs/Environment.js.map +1 -1
  99. package/lib/cjs/FeatureGates.d.ts +31 -31
  100. package/lib/cjs/FeatureGates.js +55 -55
  101. package/lib/cjs/FeatureGates.js.map +1 -1
  102. package/lib/cjs/FeatureIndex.d.ts +39 -39
  103. package/lib/cjs/FeatureIndex.js +63 -63
  104. package/lib/cjs/FeatureIndex.js.map +1 -1
  105. package/lib/cjs/FeatureSymbology.d.ts +444 -444
  106. package/lib/cjs/FeatureSymbology.js +614 -614
  107. package/lib/cjs/FeatureSymbology.js.map +1 -1
  108. package/lib/cjs/FeatureTable.d.ts +141 -141
  109. package/lib/cjs/FeatureTable.js +278 -278
  110. package/lib/cjs/FeatureTable.js.map +1 -1
  111. package/lib/cjs/Fonts.d.ts +51 -51
  112. package/lib/cjs/Fonts.js +53 -53
  113. package/lib/cjs/Fonts.js.map +1 -1
  114. package/lib/cjs/Frustum.d.ts +114 -114
  115. package/lib/cjs/Frustum.js +292 -292
  116. package/lib/cjs/Frustum.js.map +1 -1
  117. package/lib/cjs/GeoCoordinateServices.d.ts +119 -119
  118. package/lib/cjs/GeoCoordinateServices.js +80 -80
  119. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  120. package/lib/cjs/GeometryContainment.d.ts +28 -28
  121. package/lib/cjs/GeometryContainment.js +9 -9
  122. package/lib/cjs/GeometryContainment.js.map +1 -1
  123. package/lib/cjs/GeometryParams.d.ts +130 -130
  124. package/lib/cjs/GeometryParams.js +174 -174
  125. package/lib/cjs/GeometryParams.js.map +1 -1
  126. package/lib/cjs/GeometrySummary.d.ts +45 -45
  127. package/lib/cjs/GeometrySummary.js +23 -23
  128. package/lib/cjs/GeometrySummary.js.map +1 -1
  129. package/lib/cjs/Gradient.d.ts +139 -139
  130. package/lib/cjs/Gradient.js +455 -455
  131. package/lib/cjs/Gradient.js.map +1 -1
  132. package/lib/cjs/GraphicParams.d.ts +58 -58
  133. package/lib/cjs/GraphicParams.js +85 -85
  134. package/lib/cjs/GraphicParams.js.map +1 -1
  135. package/lib/cjs/GroundPlane.d.ts +52 -52
  136. package/lib/cjs/GroundPlane.js +64 -64
  137. package/lib/cjs/GroundPlane.js.map +1 -1
  138. package/lib/cjs/HSLColor.d.ts +20 -20
  139. package/lib/cjs/HSLColor.js +32 -32
  140. package/lib/cjs/HSLColor.js.map +1 -1
  141. package/lib/cjs/HSVColor.d.ts +30 -30
  142. package/lib/cjs/HSVColor.js +59 -59
  143. package/lib/cjs/HSVColor.js.map +1 -1
  144. package/lib/cjs/HiddenLine.d.ts +97 -97
  145. package/lib/cjs/HiddenLine.js +162 -162
  146. package/lib/cjs/HiddenLine.js.map +1 -1
  147. package/lib/cjs/Hilite.d.ts +50 -50
  148. package/lib/cjs/Hilite.js +64 -64
  149. package/lib/cjs/Hilite.js.map +1 -1
  150. package/lib/cjs/IModel.d.ts +359 -359
  151. package/lib/cjs/IModel.js +347 -347
  152. package/lib/cjs/IModel.js.map +1 -1
  153. package/lib/cjs/IModelError.d.ts +36 -36
  154. package/lib/cjs/IModelError.js +72 -72
  155. package/lib/cjs/IModelError.js.map +1 -1
  156. package/lib/cjs/IModelVersion.d.ts +68 -68
  157. package/lib/cjs/IModelVersion.js +79 -79
  158. package/lib/cjs/IModelVersion.js.map +1 -1
  159. package/lib/cjs/Image.d.ts +86 -86
  160. package/lib/cjs/Image.js +128 -128
  161. package/lib/cjs/Image.js.map +1 -1
  162. package/lib/cjs/IpcAppProps.d.ts +141 -124
  163. package/lib/cjs/IpcAppProps.d.ts.map +1 -1
  164. package/lib/cjs/IpcAppProps.js +23 -18
  165. package/lib/cjs/IpcAppProps.js.map +1 -1
  166. package/lib/cjs/LightSettings.d.ts +224 -224
  167. package/lib/cjs/LightSettings.js +309 -309
  168. package/lib/cjs/LightSettings.js.map +1 -1
  169. package/lib/cjs/LinePixels.d.ts +34 -34
  170. package/lib/cjs/LinePixels.js +42 -42
  171. package/lib/cjs/LinePixels.js.map +1 -1
  172. package/lib/cjs/Localization.d.ts +111 -111
  173. package/lib/cjs/Localization.js +26 -26
  174. package/lib/cjs/Localization.js.map +1 -1
  175. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  176. package/lib/cjs/MapImagerySettings.js +80 -80
  177. package/lib/cjs/MapImagerySettings.js.map +1 -1
  178. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  179. package/lib/cjs/MapLayerSettings.js +411 -411
  180. package/lib/cjs/MapLayerSettings.js.map +1 -1
  181. package/lib/cjs/MassProperties.d.ts +64 -64
  182. package/lib/cjs/MassProperties.js +23 -23
  183. package/lib/cjs/MassProperties.js.map +1 -1
  184. package/lib/cjs/MaterialProps.d.ts +118 -118
  185. package/lib/cjs/MaterialProps.js +23 -23
  186. package/lib/cjs/MaterialProps.js.map +1 -1
  187. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  188. package/lib/cjs/ModelClipGroup.js +98 -98
  189. package/lib/cjs/ModelClipGroup.js.map +1 -1
  190. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  191. package/lib/cjs/ModelGeometryChanges.js +83 -83
  192. package/lib/cjs/ModelGeometryChanges.js.map +1 -1
  193. package/lib/cjs/ModelProps.d.ts +67 -66
  194. package/lib/cjs/ModelProps.d.ts.map +1 -1
  195. package/lib/cjs/ModelProps.js +9 -9
  196. package/lib/cjs/ModelProps.js.map +1 -1
  197. package/lib/cjs/NativeAppProps.d.ts +122 -122
  198. package/lib/cjs/NativeAppProps.js +30 -30
  199. package/lib/cjs/NativeAppProps.js.map +1 -1
  200. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  201. package/lib/cjs/OctEncodedNormal.js +98 -98
  202. package/lib/cjs/OctEncodedNormal.js.map +1 -1
  203. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  204. package/lib/cjs/PlanProjectionSettings.js +63 -63
  205. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  206. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  207. package/lib/cjs/PlanarClipMask.js +136 -136
  208. package/lib/cjs/PlanarClipMask.js.map +1 -1
  209. package/lib/cjs/QPoint.d.ts +479 -479
  210. package/lib/cjs/QPoint.js +826 -826
  211. package/lib/cjs/QPoint.js.map +1 -1
  212. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  213. package/lib/cjs/RealityDataAccessProps.js +19 -19
  214. package/lib/cjs/RealityDataAccessProps.js.map +1 -1
  215. package/lib/cjs/RealityModelDisplaySettings.d.ts +118 -118
  216. package/lib/cjs/RealityModelDisplaySettings.js +114 -114
  217. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  218. package/lib/cjs/Render.d.ts +89 -89
  219. package/lib/cjs/Render.js +177 -177
  220. package/lib/cjs/Render.js.map +1 -1
  221. package/lib/cjs/RenderMaterial.d.ts +58 -58
  222. package/lib/cjs/RenderMaterial.js +76 -76
  223. package/lib/cjs/RenderMaterial.js.map +1 -1
  224. package/lib/cjs/RenderSchedule.d.ts +543 -540
  225. package/lib/cjs/RenderSchedule.d.ts.map +1 -1
  226. package/lib/cjs/RenderSchedule.js +1002 -1000
  227. package/lib/cjs/RenderSchedule.js.map +1 -1
  228. package/lib/cjs/RenderTexture.d.ts +70 -70
  229. package/lib/cjs/RenderTexture.js +59 -59
  230. package/lib/cjs/RenderTexture.js.map +1 -1
  231. package/lib/cjs/RgbColor.d.ts +47 -47
  232. package/lib/cjs/RgbColor.js +77 -77
  233. package/lib/cjs/RgbColor.js.map +1 -1
  234. package/lib/cjs/RpcInterface.d.ts +33 -33
  235. package/lib/cjs/RpcInterface.js +137 -137
  236. package/lib/cjs/RpcInterface.js.map +1 -1
  237. package/lib/cjs/RpcManager.d.ts +40 -40
  238. package/lib/cjs/RpcManager.js +55 -55
  239. package/lib/cjs/RpcManager.js.map +1 -1
  240. package/lib/cjs/SessionProps.d.ts +16 -16
  241. package/lib/cjs/SessionProps.js +9 -9
  242. package/lib/cjs/SessionProps.js.map +1 -1
  243. package/lib/cjs/SkyBox.d.ts +215 -215
  244. package/lib/cjs/SkyBox.js +210 -210
  245. package/lib/cjs/SkyBox.js.map +1 -1
  246. package/lib/cjs/Snapping.d.ts +49 -49
  247. package/lib/cjs/Snapping.js +9 -9
  248. package/lib/cjs/Snapping.js.map +1 -1
  249. package/lib/cjs/SolarCalculate.d.ts +27 -27
  250. package/lib/cjs/SolarCalculate.js +211 -211
  251. package/lib/cjs/SolarCalculate.js.map +1 -1
  252. package/lib/cjs/SolarShadows.d.ts +35 -35
  253. package/lib/cjs/SolarShadows.js +62 -62
  254. package/lib/cjs/SolarShadows.js.map +1 -1
  255. package/lib/cjs/SpatialClassification.d.ts +208 -208
  256. package/lib/cjs/SpatialClassification.js +340 -340
  257. package/lib/cjs/SpatialClassification.js.map +1 -1
  258. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  259. package/lib/cjs/SubCategoryAppearance.js +96 -96
  260. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  261. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  262. package/lib/cjs/SubCategoryOverride.js +104 -104
  263. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  264. package/lib/cjs/TerrainSettings.d.ts +82 -82
  265. package/lib/cjs/TerrainSettings.js +102 -102
  266. package/lib/cjs/TerrainSettings.js.map +1 -1
  267. package/lib/cjs/TextureMapping.d.ts +101 -101
  268. package/lib/cjs/TextureMapping.js +174 -174
  269. package/lib/cjs/TextureMapping.js.map +1 -1
  270. package/lib/cjs/TextureProps.d.ts +65 -65
  271. package/lib/cjs/TextureProps.js +28 -28
  272. package/lib/cjs/TextureProps.js.map +1 -1
  273. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  274. package/lib/cjs/ThematicDisplay.js +344 -344
  275. package/lib/cjs/ThematicDisplay.js.map +1 -1
  276. package/lib/cjs/Thumbnail.d.ts +26 -26
  277. package/lib/cjs/Thumbnail.js +9 -9
  278. package/lib/cjs/Thumbnail.js.map +1 -1
  279. package/lib/cjs/TileProps.d.ts +82 -82
  280. package/lib/cjs/TileProps.js +29 -29
  281. package/lib/cjs/TileProps.js.map +1 -1
  282. package/lib/cjs/Tween.d.ts +191 -191
  283. package/lib/cjs/Tween.js +570 -570
  284. package/lib/cjs/Tween.js.map +1 -1
  285. package/lib/cjs/TxnAction.d.ts +21 -21
  286. package/lib/cjs/TxnAction.js +29 -29
  287. package/lib/cjs/TxnAction.js.map +1 -1
  288. package/lib/cjs/ViewDetails.d.ts +125 -125
  289. package/lib/cjs/ViewDetails.js +158 -158
  290. package/lib/cjs/ViewDetails.js.map +1 -1
  291. package/lib/cjs/ViewFlags.d.ts +291 -291
  292. package/lib/cjs/ViewFlags.js +368 -368
  293. package/lib/cjs/ViewFlags.js.map +1 -1
  294. package/lib/cjs/ViewProps.d.ts +205 -205
  295. package/lib/cjs/ViewProps.js +9 -9
  296. package/lib/cjs/ViewProps.js.map +1 -1
  297. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  298. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  299. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  300. package/lib/cjs/core-common.d.ts +244 -241
  301. package/lib/cjs/core-common.d.ts.map +1 -1
  302. package/lib/cjs/core-common.js +260 -257
  303. package/lib/cjs/core-common.js.map +1 -1
  304. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  305. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  306. package/lib/cjs/domains/FunctionalElementProps.js.map +1 -1
  307. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  308. package/lib/cjs/domains/GenericElementProps.js +9 -9
  309. package/lib/cjs/domains/GenericElementProps.js.map +1 -1
  310. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  311. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  312. package/lib/cjs/geometry/AdditionalTransform.js.map +1 -1
  313. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  314. package/lib/cjs/geometry/AreaPattern.js +204 -204
  315. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  316. package/lib/cjs/geometry/BoundingSphere.d.ts +14 -14
  317. package/lib/cjs/geometry/BoundingSphere.js +30 -30
  318. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  319. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  320. package/lib/cjs/geometry/Cartographic.js +345 -345
  321. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  322. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  323. package/lib/cjs/geometry/CoordinateReferenceSystem.js +261 -261
  324. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  325. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  326. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  327. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  328. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  329. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  330. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  331. package/lib/cjs/geometry/FrustumPlanes.d.ts +32 -32
  332. package/lib/cjs/geometry/FrustumPlanes.js +132 -132
  333. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  334. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  335. package/lib/cjs/geometry/GeodeticDatum.js +401 -401
  336. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  337. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  338. package/lib/cjs/geometry/GeodeticEllipsoid.js +72 -72
  339. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  340. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  341. package/lib/cjs/geometry/GeometryStream.js +469 -469
  342. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  343. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  344. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  345. package/lib/cjs/geometry/ImageGraphic.js.map +1 -1
  346. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  347. package/lib/cjs/geometry/LineStyle.js +129 -129
  348. package/lib/cjs/geometry/LineStyle.js.map +1 -1
  349. package/lib/cjs/geometry/Placement.d.ts +95 -95
  350. package/lib/cjs/geometry/Placement.js +131 -131
  351. package/lib/cjs/geometry/Placement.js.map +1 -1
  352. package/lib/cjs/geometry/Projection.d.ts +251 -251
  353. package/lib/cjs/geometry/Projection.js +198 -198
  354. package/lib/cjs/geometry/Projection.js.map +1 -1
  355. package/lib/cjs/geometry/TextString.d.ts +55 -55
  356. package/lib/cjs/geometry/TextString.js +65 -65
  357. package/lib/cjs/geometry/TextString.js.map +1 -1
  358. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  359. package/lib/cjs/ipc/IpcSession.js +27 -27
  360. package/lib/cjs/ipc/IpcSession.js.map +1 -1
  361. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  362. package/lib/cjs/ipc/IpcSocket.js +16 -16
  363. package/lib/cjs/ipc/IpcSocket.js.map +1 -1
  364. package/lib/cjs/ipc/IpcWebSocket.d.ts +61 -61
  365. package/lib/cjs/ipc/IpcWebSocket.js +151 -151
  366. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  367. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  368. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts.map +1 -1
  369. package/lib/cjs/ipc/IpcWebSocketTransport.js +160 -158
  370. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  371. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  372. package/lib/cjs/rpc/DevToolsRpcInterface.js +48 -48
  373. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  374. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +97 -75
  375. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts.map +1 -1
  376. package/lib/cjs/rpc/IModelReadRpcInterface.js +119 -115
  377. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  378. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +61 -61
  379. package/lib/cjs/rpc/IModelTileRpcInterface.js +96 -96
  380. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  381. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  382. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  383. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  384. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  385. package/lib/cjs/rpc/TestRpcManager.js +39 -39
  386. package/lib/cjs/rpc/TestRpcManager.js.map +1 -1
  387. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  388. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  389. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  390. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  391. package/lib/cjs/rpc/core/RpcConfiguration.d.ts.map +1 -1
  392. package/lib/cjs/rpc/core/RpcConfiguration.js +191 -192
  393. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  394. package/lib/cjs/rpc/core/RpcConstants.d.ts +85 -85
  395. package/lib/cjs/rpc/core/RpcConstants.js +103 -103
  396. package/lib/cjs/rpc/core/RpcConstants.js.map +1 -1
  397. package/lib/cjs/rpc/core/RpcControl.d.ts +54 -52
  398. package/lib/cjs/rpc/core/RpcControl.d.ts.map +1 -1
  399. package/lib/cjs/rpc/core/RpcControl.js +144 -149
  400. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  401. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  402. package/lib/cjs/rpc/core/RpcInvocation.d.ts.map +1 -1
  403. package/lib/cjs/rpc/core/RpcInvocation.js +258 -257
  404. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  405. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +35 -36
  406. package/lib/cjs/rpc/core/RpcMarshaling.d.ts.map +1 -1
  407. package/lib/cjs/rpc/core/RpcMarshaling.js +156 -153
  408. package/lib/cjs/rpc/core/RpcMarshaling.js.map +1 -1
  409. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  410. package/lib/cjs/rpc/core/RpcOperation.js +133 -133
  411. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  412. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  413. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -94
  414. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  415. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  416. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  417. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  418. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  419. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  420. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  421. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  422. package/lib/cjs/rpc/core/RpcRegistry.js +198 -198
  423. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  424. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  425. package/lib/cjs/rpc/core/RpcRequest.js +477 -477
  426. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  427. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  428. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  429. package/lib/cjs/rpc/core/RpcRequestContext.js.map +1 -1
  430. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  431. package/lib/cjs/rpc/core/RpcRoutingToken.js +23 -23
  432. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  433. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  434. package/lib/cjs/rpc/core/RpcSessionInvocation.js +59 -59
  435. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  436. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  437. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +73 -73
  438. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  439. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  440. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +142 -142
  441. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  442. package/lib/cjs/rpc/web/OpenAPI.d.ts +139 -139
  443. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  444. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  445. package/lib/cjs/rpc/web/RpcMultipart.d.ts +35 -31
  446. package/lib/cjs/rpc/web/RpcMultipart.d.ts.map +1 -1
  447. package/lib/cjs/rpc/web/RpcMultipart.js +50 -45
  448. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  449. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +28 -17
  450. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts.map +1 -1
  451. package/lib/cjs/rpc/web/WebAppRpcLogging.js +139 -140
  452. package/lib/cjs/rpc/web/WebAppRpcLogging.js.map +1 -1
  453. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +87 -86
  454. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  455. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  456. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  457. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +67 -71
  458. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  459. package/lib/cjs/rpc/web/WebAppRpcRequest.js +239 -374
  460. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  461. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +32 -33
  462. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  463. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +372 -359
  464. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  465. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  466. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  467. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  468. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  469. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  470. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  471. package/lib/cjs/tile/ElementGraphics.d.ts +145 -134
  472. package/lib/cjs/tile/ElementGraphics.d.ts.map +1 -1
  473. package/lib/cjs/tile/ElementGraphics.js +9 -9
  474. package/lib/cjs/tile/ElementGraphics.js.map +1 -1
  475. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  476. package/lib/cjs/tile/GltfTileIO.js +109 -109
  477. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  478. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  479. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  480. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  481. package/lib/cjs/tile/IModelTileIO.d.ts +75 -75
  482. package/lib/cjs/tile/IModelTileIO.js +95 -95
  483. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  484. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  485. package/lib/cjs/tile/PntsTileIO.js +26 -26
  486. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  487. package/lib/cjs/tile/TileIO.d.ts +66 -66
  488. package/lib/cjs/tile/TileIO.js +118 -118
  489. package/lib/cjs/tile/TileIO.js.map +1 -1
  490. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  491. package/lib/cjs/tile/TileMetadata.js +676 -676
  492. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  493. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  494. package/lib/esm/AmbientOcclusion.js +52 -52
  495. package/lib/esm/AmbientOcclusion.js.map +1 -1
  496. package/lib/esm/AnalysisStyle.d.ts +134 -134
  497. package/lib/esm/AnalysisStyle.js +159 -159
  498. package/lib/esm/AnalysisStyle.js.map +1 -1
  499. package/lib/esm/AuthorizationClient.d.ts +11 -11
  500. package/lib/esm/AuthorizationClient.js +8 -8
  501. package/lib/esm/AuthorizationClient.js.map +1 -1
  502. package/lib/esm/BackendTypes.d.ts +13 -0
  503. package/lib/esm/BackendTypes.d.ts.map +1 -0
  504. package/lib/esm/BackendTypes.js +9 -0
  505. package/lib/esm/BackendTypes.js.map +1 -0
  506. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  507. package/lib/esm/BackgroundMapProvider.js +64 -64
  508. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  509. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  510. package/lib/esm/BackgroundMapSettings.js +152 -152
  511. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  512. package/lib/esm/Base64EncodedString.d.ts +32 -30
  513. package/lib/esm/Base64EncodedString.d.ts.map +1 -1
  514. package/lib/esm/Base64EncodedString.js +63 -53
  515. package/lib/esm/Base64EncodedString.js.map +1 -1
  516. package/lib/esm/BlobReader.d.ts +31 -31
  517. package/lib/esm/BlobReader.js +79 -79
  518. package/lib/esm/BlobReader.js.map +1 -1
  519. package/lib/esm/BriefcaseTypes.d.ts +189 -189
  520. package/lib/esm/BriefcaseTypes.js +92 -92
  521. package/lib/esm/BriefcaseTypes.js.map +1 -1
  522. package/lib/esm/Camera.d.ts +42 -42
  523. package/lib/esm/Camera.js +58 -58
  524. package/lib/esm/Camera.js.map +1 -1
  525. package/lib/esm/ChangedElements.d.ts +83 -83
  526. package/lib/esm/ChangedElements.js +18 -18
  527. package/lib/esm/ChangedElements.js.map +1 -1
  528. package/lib/esm/ChangedEntities.d.ts +45 -45
  529. package/lib/esm/ChangedEntities.js +8 -8
  530. package/lib/esm/ChangedEntities.js.map +1 -1
  531. package/lib/esm/ChangesetProps.d.ts +98 -98
  532. package/lib/esm/ChangesetProps.js +19 -19
  533. package/lib/esm/ChangesetProps.js.map +1 -1
  534. package/lib/esm/ClipStyle.d.ts +89 -89
  535. package/lib/esm/ClipStyle.js +118 -118
  536. package/lib/esm/ClipStyle.js.map +1 -1
  537. package/lib/esm/CloudStorage.d.ts +62 -62
  538. package/lib/esm/CloudStorage.js +109 -109
  539. package/lib/esm/CloudStorage.js.map +1 -1
  540. package/lib/esm/CloudStorageTileCache.d.ts +27 -27
  541. package/lib/esm/CloudStorageTileCache.js +62 -62
  542. package/lib/esm/CloudStorageTileCache.js.map +1 -1
  543. package/lib/esm/Code.d.ts +256 -256
  544. package/lib/esm/Code.js +276 -276
  545. package/lib/esm/Code.js.map +1 -1
  546. package/lib/esm/ColorByName.d.ts +161 -161
  547. package/lib/esm/ColorByName.js +166 -166
  548. package/lib/esm/ColorByName.js.map +1 -1
  549. package/lib/esm/ColorDef.d.ts +208 -208
  550. package/lib/esm/ColorDef.js +567 -567
  551. package/lib/esm/ColorDef.js.map +1 -1
  552. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  553. package/lib/esm/CommonLoggerCategory.js +23 -23
  554. package/lib/esm/CommonLoggerCategory.js.map +1 -1
  555. package/lib/esm/ConcurrentQuery.d.ts +241 -241
  556. package/lib/esm/ConcurrentQuery.js +373 -373
  557. package/lib/esm/ConcurrentQuery.js.map +1 -1
  558. package/lib/esm/ContextRealityModel.d.ts +276 -276
  559. package/lib/esm/ContextRealityModel.js +353 -353
  560. package/lib/esm/ContextRealityModel.js.map +1 -1
  561. package/lib/esm/DisplayStyleSettings.d.ts +584 -584
  562. package/lib/esm/DisplayStyleSettings.js +976 -976
  563. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  564. package/lib/esm/ECSchemaProps.d.ts +39 -39
  565. package/lib/esm/ECSchemaProps.js +8 -8
  566. package/lib/esm/ECSchemaProps.js.map +1 -1
  567. package/lib/esm/ECSqlReader.d.ts +70 -70
  568. package/lib/esm/ECSqlReader.js +275 -275
  569. package/lib/esm/ECSqlReader.js.map +1 -1
  570. package/lib/esm/ECSqlTypes.d.ts +128 -128
  571. package/lib/esm/ECSqlTypes.js +185 -185
  572. package/lib/esm/ECSqlTypes.js.map +1 -1
  573. package/lib/esm/ElementProps.d.ts +479 -476
  574. package/lib/esm/ElementProps.d.ts.map +1 -1
  575. package/lib/esm/ElementProps.js +92 -92
  576. package/lib/esm/ElementProps.js.map +1 -1
  577. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  578. package/lib/esm/EmphasizeElementsProps.js +22 -22
  579. package/lib/esm/EmphasizeElementsProps.js.map +1 -1
  580. package/lib/esm/EntityProps.d.ts +176 -176
  581. package/lib/esm/EntityProps.js +107 -107
  582. package/lib/esm/EntityProps.js.map +1 -1
  583. package/lib/esm/EntityReference.d.ts +52 -0
  584. package/lib/esm/EntityReference.d.ts.map +1 -0
  585. package/lib/esm/EntityReference.js +53 -0
  586. package/lib/esm/EntityReference.js.map +1 -0
  587. package/lib/esm/Environment.d.ts +61 -61
  588. package/lib/esm/Environment.js +69 -69
  589. package/lib/esm/Environment.js.map +1 -1
  590. package/lib/esm/FeatureGates.d.ts +31 -31
  591. package/lib/esm/FeatureGates.js +51 -51
  592. package/lib/esm/FeatureGates.js.map +1 -1
  593. package/lib/esm/FeatureIndex.d.ts +39 -39
  594. package/lib/esm/FeatureIndex.js +57 -57
  595. package/lib/esm/FeatureIndex.js.map +1 -1
  596. package/lib/esm/FeatureSymbology.d.ts +444 -444
  597. package/lib/esm/FeatureSymbology.js +609 -609
  598. package/lib/esm/FeatureSymbology.js.map +1 -1
  599. package/lib/esm/FeatureTable.d.ts +141 -141
  600. package/lib/esm/FeatureTable.js +272 -272
  601. package/lib/esm/FeatureTable.js.map +1 -1
  602. package/lib/esm/Fonts.d.ts +51 -51
  603. package/lib/esm/Fonts.js +49 -49
  604. package/lib/esm/Fonts.js.map +1 -1
  605. package/lib/esm/Frustum.d.ts +114 -114
  606. package/lib/esm/Frustum.js +288 -288
  607. package/lib/esm/Frustum.js.map +1 -1
  608. package/lib/esm/GeoCoordinateServices.d.ts +119 -119
  609. package/lib/esm/GeoCoordinateServices.js +76 -76
  610. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  611. package/lib/esm/GeometryContainment.d.ts +28 -28
  612. package/lib/esm/GeometryContainment.js +8 -8
  613. package/lib/esm/GeometryContainment.js.map +1 -1
  614. package/lib/esm/GeometryParams.d.ts +130 -130
  615. package/lib/esm/GeometryParams.js +170 -170
  616. package/lib/esm/GeometryParams.js.map +1 -1
  617. package/lib/esm/GeometrySummary.d.ts +45 -45
  618. package/lib/esm/GeometrySummary.js +20 -20
  619. package/lib/esm/GeometrySummary.js.map +1 -1
  620. package/lib/esm/Gradient.d.ts +139 -139
  621. package/lib/esm/Gradient.js +452 -452
  622. package/lib/esm/Gradient.js.map +1 -1
  623. package/lib/esm/GraphicParams.d.ts +58 -58
  624. package/lib/esm/GraphicParams.js +81 -81
  625. package/lib/esm/GraphicParams.js.map +1 -1
  626. package/lib/esm/GroundPlane.d.ts +52 -52
  627. package/lib/esm/GroundPlane.js +60 -60
  628. package/lib/esm/GroundPlane.js.map +1 -1
  629. package/lib/esm/HSLColor.d.ts +20 -20
  630. package/lib/esm/HSLColor.js +28 -28
  631. package/lib/esm/HSLColor.js.map +1 -1
  632. package/lib/esm/HSVColor.d.ts +30 -30
  633. package/lib/esm/HSVColor.js +55 -55
  634. package/lib/esm/HSVColor.js.map +1 -1
  635. package/lib/esm/HiddenLine.d.ts +97 -97
  636. package/lib/esm/HiddenLine.js +159 -159
  637. package/lib/esm/HiddenLine.js.map +1 -1
  638. package/lib/esm/Hilite.d.ts +50 -50
  639. package/lib/esm/Hilite.js +61 -61
  640. package/lib/esm/Hilite.js.map +1 -1
  641. package/lib/esm/IModel.d.ts +359 -359
  642. package/lib/esm/IModel.js +342 -342
  643. package/lib/esm/IModel.js.map +1 -1
  644. package/lib/esm/IModelError.d.ts +36 -36
  645. package/lib/esm/IModelError.js +55 -55
  646. package/lib/esm/IModelError.js.map +1 -1
  647. package/lib/esm/IModelVersion.d.ts +68 -68
  648. package/lib/esm/IModelVersion.js +75 -75
  649. package/lib/esm/IModelVersion.js.map +1 -1
  650. package/lib/esm/Image.d.ts +86 -86
  651. package/lib/esm/Image.js +120 -120
  652. package/lib/esm/Image.js.map +1 -1
  653. package/lib/esm/IpcAppProps.d.ts +141 -124
  654. package/lib/esm/IpcAppProps.d.ts.map +1 -1
  655. package/lib/esm/IpcAppProps.js +19 -15
  656. package/lib/esm/IpcAppProps.js.map +1 -1
  657. package/lib/esm/LightSettings.d.ts +224 -224
  658. package/lib/esm/LightSettings.js +301 -301
  659. package/lib/esm/LightSettings.js.map +1 -1
  660. package/lib/esm/LinePixels.d.ts +34 -34
  661. package/lib/esm/LinePixels.js +39 -39
  662. package/lib/esm/LinePixels.js.map +1 -1
  663. package/lib/esm/Localization.d.ts +111 -111
  664. package/lib/esm/Localization.js +22 -22
  665. package/lib/esm/Localization.js.map +1 -1
  666. package/lib/esm/MapImagerySettings.d.ts +62 -62
  667. package/lib/esm/MapImagerySettings.js +76 -76
  668. package/lib/esm/MapImagerySettings.js.map +1 -1
  669. package/lib/esm/MapLayerSettings.d.ts +272 -272
  670. package/lib/esm/MapLayerSettings.js +403 -403
  671. package/lib/esm/MapLayerSettings.js.map +1 -1
  672. package/lib/esm/MassProperties.d.ts +64 -64
  673. package/lib/esm/MassProperties.js +20 -20
  674. package/lib/esm/MassProperties.js.map +1 -1
  675. package/lib/esm/MaterialProps.d.ts +118 -118
  676. package/lib/esm/MaterialProps.js +20 -20
  677. package/lib/esm/MaterialProps.js.map +1 -1
  678. package/lib/esm/ModelClipGroup.d.ts +67 -67
  679. package/lib/esm/ModelClipGroup.js +93 -93
  680. package/lib/esm/ModelClipGroup.js.map +1 -1
  681. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  682. package/lib/esm/ModelGeometryChanges.js +80 -80
  683. package/lib/esm/ModelGeometryChanges.js.map +1 -1
  684. package/lib/esm/ModelProps.d.ts +67 -66
  685. package/lib/esm/ModelProps.d.ts.map +1 -1
  686. package/lib/esm/ModelProps.js +8 -8
  687. package/lib/esm/ModelProps.js.map +1 -1
  688. package/lib/esm/NativeAppProps.d.ts +122 -122
  689. package/lib/esm/NativeAppProps.js +27 -27
  690. package/lib/esm/NativeAppProps.js.map +1 -1
  691. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  692. package/lib/esm/OctEncodedNormal.js +93 -93
  693. package/lib/esm/OctEncodedNormal.js.map +1 -1
  694. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  695. package/lib/esm/PlanProjectionSettings.js +59 -59
  696. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  697. package/lib/esm/PlanarClipMask.d.ts +177 -177
  698. package/lib/esm/PlanarClipMask.js +132 -132
  699. package/lib/esm/PlanarClipMask.js.map +1 -1
  700. package/lib/esm/QPoint.d.ts +479 -479
  701. package/lib/esm/QPoint.js +815 -815
  702. package/lib/esm/QPoint.js.map +1 -1
  703. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  704. package/lib/esm/RealityDataAccessProps.js +16 -16
  705. package/lib/esm/RealityDataAccessProps.js.map +1 -1
  706. package/lib/esm/RealityModelDisplaySettings.d.ts +118 -118
  707. package/lib/esm/RealityModelDisplaySettings.js +109 -109
  708. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  709. package/lib/esm/Render.d.ts +89 -89
  710. package/lib/esm/Render.js +165 -165
  711. package/lib/esm/Render.js.map +1 -1
  712. package/lib/esm/RenderMaterial.d.ts +58 -58
  713. package/lib/esm/RenderMaterial.js +72 -72
  714. package/lib/esm/RenderMaterial.js.map +1 -1
  715. package/lib/esm/RenderSchedule.d.ts +543 -540
  716. package/lib/esm/RenderSchedule.d.ts.map +1 -1
  717. package/lib/esm/RenderSchedule.js +999 -997
  718. package/lib/esm/RenderSchedule.js.map +1 -1
  719. package/lib/esm/RenderTexture.d.ts +70 -70
  720. package/lib/esm/RenderTexture.js +55 -55
  721. package/lib/esm/RenderTexture.js.map +1 -1
  722. package/lib/esm/RgbColor.d.ts +47 -47
  723. package/lib/esm/RgbColor.js +73 -73
  724. package/lib/esm/RgbColor.js.map +1 -1
  725. package/lib/esm/RpcInterface.d.ts +33 -33
  726. package/lib/esm/RpcInterface.js +133 -133
  727. package/lib/esm/RpcInterface.js.map +1 -1
  728. package/lib/esm/RpcManager.d.ts +40 -40
  729. package/lib/esm/RpcManager.js +51 -51
  730. package/lib/esm/RpcManager.js.map +1 -1
  731. package/lib/esm/SessionProps.d.ts +16 -16
  732. package/lib/esm/SessionProps.js +8 -8
  733. package/lib/esm/SessionProps.js.map +1 -1
  734. package/lib/esm/SkyBox.d.ts +215 -215
  735. package/lib/esm/SkyBox.js +203 -203
  736. package/lib/esm/SkyBox.js.map +1 -1
  737. package/lib/esm/Snapping.d.ts +49 -49
  738. package/lib/esm/Snapping.js +8 -8
  739. package/lib/esm/Snapping.js.map +1 -1
  740. package/lib/esm/SolarCalculate.d.ts +27 -27
  741. package/lib/esm/SolarCalculate.js +204 -204
  742. package/lib/esm/SolarCalculate.js.map +1 -1
  743. package/lib/esm/SolarShadows.d.ts +35 -35
  744. package/lib/esm/SolarShadows.js +58 -58
  745. package/lib/esm/SolarShadows.js.map +1 -1
  746. package/lib/esm/SpatialClassification.d.ts +208 -208
  747. package/lib/esm/SpatialClassification.js +334 -334
  748. package/lib/esm/SpatialClassification.js.map +1 -1
  749. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  750. package/lib/esm/SubCategoryAppearance.js +92 -92
  751. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  752. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  753. package/lib/esm/SubCategoryOverride.js +100 -100
  754. package/lib/esm/SubCategoryOverride.js.map +1 -1
  755. package/lib/esm/TerrainSettings.d.ts +82 -82
  756. package/lib/esm/TerrainSettings.js +98 -98
  757. package/lib/esm/TerrainSettings.js.map +1 -1
  758. package/lib/esm/TextureMapping.d.ts +101 -101
  759. package/lib/esm/TextureMapping.js +170 -170
  760. package/lib/esm/TextureMapping.js.map +1 -1
  761. package/lib/esm/TextureProps.d.ts +65 -65
  762. package/lib/esm/TextureProps.js +25 -25
  763. package/lib/esm/TextureProps.js.map +1 -1
  764. package/lib/esm/ThematicDisplay.d.ts +230 -230
  765. package/lib/esm/ThematicDisplay.js +337 -337
  766. package/lib/esm/ThematicDisplay.js.map +1 -1
  767. package/lib/esm/Thumbnail.d.ts +26 -26
  768. package/lib/esm/Thumbnail.js +8 -8
  769. package/lib/esm/Thumbnail.js.map +1 -1
  770. package/lib/esm/TileProps.d.ts +82 -82
  771. package/lib/esm/TileProps.js +25 -25
  772. package/lib/esm/TileProps.js.map +1 -1
  773. package/lib/esm/Tween.d.ts +191 -191
  774. package/lib/esm/Tween.js +565 -565
  775. package/lib/esm/Tween.js.map +1 -1
  776. package/lib/esm/TxnAction.d.ts +21 -21
  777. package/lib/esm/TxnAction.js +26 -26
  778. package/lib/esm/TxnAction.js.map +1 -1
  779. package/lib/esm/ViewDetails.d.ts +125 -125
  780. package/lib/esm/ViewDetails.js +153 -153
  781. package/lib/esm/ViewDetails.js.map +1 -1
  782. package/lib/esm/ViewFlags.d.ts +291 -291
  783. package/lib/esm/ViewFlags.js +364 -364
  784. package/lib/esm/ViewFlags.js.map +1 -1
  785. package/lib/esm/ViewProps.d.ts +205 -205
  786. package/lib/esm/ViewProps.js +8 -8
  787. package/lib/esm/ViewProps.js.map +1 -1
  788. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  789. package/lib/esm/WhiteOnWhiteReversalSettings.js +33 -33
  790. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  791. package/lib/esm/core-common.d.ts +244 -241
  792. package/lib/esm/core-common.d.ts.map +1 -1
  793. package/lib/esm/core-common.js +248 -245
  794. package/lib/esm/core-common.js.map +1 -1
  795. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  796. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  797. package/lib/esm/domains/FunctionalElementProps.js.map +1 -1
  798. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  799. package/lib/esm/domains/GenericElementProps.js +8 -8
  800. package/lib/esm/domains/GenericElementProps.js.map +1 -1
  801. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  802. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  803. package/lib/esm/geometry/AdditionalTransform.js.map +1 -1
  804. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  805. package/lib/esm/geometry/AreaPattern.js +201 -201
  806. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  807. package/lib/esm/geometry/BoundingSphere.d.ts +14 -14
  808. package/lib/esm/geometry/BoundingSphere.js +26 -26
  809. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  810. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  811. package/lib/esm/geometry/Cartographic.js +340 -340
  812. package/lib/esm/geometry/Cartographic.js.map +1 -1
  813. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  814. package/lib/esm/geometry/CoordinateReferenceSystem.js +254 -254
  815. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  816. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  817. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  818. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  819. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  820. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  821. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  822. package/lib/esm/geometry/FrustumPlanes.d.ts +32 -32
  823. package/lib/esm/geometry/FrustumPlanes.js +128 -128
  824. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  825. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  826. package/lib/esm/geometry/GeodeticDatum.js +390 -390
  827. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  828. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  829. package/lib/esm/geometry/GeodeticEllipsoid.js +68 -68
  830. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  831. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  832. package/lib/esm/geometry/GeometryStream.js +464 -464
  833. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  834. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  835. package/lib/esm/geometry/ImageGraphic.js +93 -93
  836. package/lib/esm/geometry/ImageGraphic.js.map +1 -1
  837. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  838. package/lib/esm/geometry/LineStyle.js +126 -126
  839. package/lib/esm/geometry/LineStyle.js.map +1 -1
  840. package/lib/esm/geometry/Placement.d.ts +95 -95
  841. package/lib/esm/geometry/Placement.js +126 -126
  842. package/lib/esm/geometry/Placement.js.map +1 -1
  843. package/lib/esm/geometry/Projection.d.ts +251 -251
  844. package/lib/esm/geometry/Projection.js +192 -192
  845. package/lib/esm/geometry/Projection.js.map +1 -1
  846. package/lib/esm/geometry/TextString.d.ts +55 -55
  847. package/lib/esm/geometry/TextString.js +61 -61
  848. package/lib/esm/geometry/TextString.js.map +1 -1
  849. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  850. package/lib/esm/ipc/IpcSession.js +23 -23
  851. package/lib/esm/ipc/IpcSession.js.map +1 -1
  852. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  853. package/lib/esm/ipc/IpcSocket.js +12 -12
  854. package/lib/esm/ipc/IpcSocket.js.map +1 -1
  855. package/lib/esm/ipc/IpcWebSocket.d.ts +61 -61
  856. package/lib/esm/ipc/IpcWebSocket.js +145 -145
  857. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  858. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  859. package/lib/esm/ipc/IpcWebSocketTransport.d.ts.map +1 -1
  860. package/lib/esm/ipc/IpcWebSocketTransport.js +156 -154
  861. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  862. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  863. package/lib/esm/rpc/DevToolsRpcInterface.js +44 -44
  864. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  865. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +97 -75
  866. package/lib/esm/rpc/IModelReadRpcInterface.d.ts.map +1 -1
  867. package/lib/esm/rpc/IModelReadRpcInterface.js +114 -110
  868. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  869. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +61 -61
  870. package/lib/esm/rpc/IModelTileRpcInterface.js +92 -92
  871. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  872. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  873. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +44 -44
  874. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  875. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  876. package/lib/esm/rpc/TestRpcManager.js +35 -35
  877. package/lib/esm/rpc/TestRpcManager.js.map +1 -1
  878. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  879. package/lib/esm/rpc/WipRpcInterface.js +36 -36
  880. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  881. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  882. package/lib/esm/rpc/core/RpcConfiguration.d.ts.map +1 -1
  883. package/lib/esm/rpc/core/RpcConfiguration.js +184 -185
  884. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  885. package/lib/esm/rpc/core/RpcConstants.d.ts +85 -85
  886. package/lib/esm/rpc/core/RpcConstants.js +100 -100
  887. package/lib/esm/rpc/core/RpcConstants.js.map +1 -1
  888. package/lib/esm/rpc/core/RpcControl.d.ts +54 -52
  889. package/lib/esm/rpc/core/RpcControl.d.ts.map +1 -1
  890. package/lib/esm/rpc/core/RpcControl.js +137 -142
  891. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  892. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  893. package/lib/esm/rpc/core/RpcInvocation.d.ts.map +1 -1
  894. package/lib/esm/rpc/core/RpcInvocation.js +254 -253
  895. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  896. package/lib/esm/rpc/core/RpcMarshaling.d.ts +35 -36
  897. package/lib/esm/rpc/core/RpcMarshaling.d.ts.map +1 -1
  898. package/lib/esm/rpc/core/RpcMarshaling.js +152 -149
  899. package/lib/esm/rpc/core/RpcMarshaling.js.map +1 -1
  900. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  901. package/lib/esm/rpc/core/RpcOperation.js +128 -128
  902. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  903. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  904. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -90
  905. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  906. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  907. package/lib/esm/rpc/core/RpcProtocol.js +123 -123
  908. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  909. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  910. package/lib/esm/rpc/core/RpcPush.js +119 -119
  911. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  912. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  913. package/lib/esm/rpc/core/RpcRegistry.js +194 -194
  914. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  915. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  916. package/lib/esm/rpc/core/RpcRequest.js +472 -472
  917. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  918. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  919. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  920. package/lib/esm/rpc/core/RpcRequestContext.js.map +1 -1
  921. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  922. package/lib/esm/rpc/core/RpcRoutingToken.js +19 -19
  923. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  924. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  925. package/lib/esm/rpc/core/RpcSessionInvocation.js +55 -55
  926. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  927. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +46 -46
  928. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +68 -68
  929. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  930. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  931. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +138 -138
  932. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  933. package/lib/esm/rpc/web/OpenAPI.d.ts +139 -139
  934. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  935. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  936. package/lib/esm/rpc/web/RpcMultipart.d.ts +35 -31
  937. package/lib/esm/rpc/web/RpcMultipart.d.ts.map +1 -1
  938. package/lib/esm/rpc/web/RpcMultipart.js +46 -41
  939. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  940. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +28 -17
  941. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts.map +1 -1
  942. package/lib/esm/rpc/web/WebAppRpcLogging.js +135 -136
  943. package/lib/esm/rpc/web/WebAppRpcLogging.js.map +1 -1
  944. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +87 -86
  945. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts.map +1 -1
  946. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  947. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  948. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +67 -71
  949. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  950. package/lib/esm/rpc/web/WebAppRpcRequest.js +235 -370
  951. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  952. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +32 -33
  953. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts.map +1 -1
  954. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +368 -355
  955. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js.map +1 -1
  956. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  957. package/lib/esm/tile/B3dmTileIO.js +62 -62
  958. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  959. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  960. package/lib/esm/tile/CompositeTileIO.js +22 -22
  961. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  962. package/lib/esm/tile/ElementGraphics.d.ts +145 -134
  963. package/lib/esm/tile/ElementGraphics.d.ts.map +1 -1
  964. package/lib/esm/tile/ElementGraphics.js +8 -8
  965. package/lib/esm/tile/ElementGraphics.js.map +1 -1
  966. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  967. package/lib/esm/tile/GltfTileIO.js +105 -105
  968. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  969. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  970. package/lib/esm/tile/I3dmTileIO.js +36 -36
  971. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  972. package/lib/esm/tile/IModelTileIO.d.ts +75 -75
  973. package/lib/esm/tile/IModelTileIO.js +90 -90
  974. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  975. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  976. package/lib/esm/tile/PntsTileIO.js +22 -22
  977. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  978. package/lib/esm/tile/TileIO.d.ts +66 -66
  979. package/lib/esm/tile/TileIO.js +110 -110
  980. package/lib/esm/tile/TileIO.js.map +1 -1
  981. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  982. package/lib/esm/tile/TileMetadata.js +661 -661
  983. package/lib/esm/tile/TileMetadata.js.map +1 -1
  984. package/package.json +8 -10
@@ -1,541 +1,544 @@
1
- /** @packageDocumentation
2
- * @module DisplayStyles
3
- */
4
- import { CompressedId64Set, Constructor, Id64Set, Id64String } from "@itwin/core-bentley";
5
- import { ClipVector, Plane3dByOriginAndUnitNormal, Point4d, Range1d, Transform, Vector3d, XYAndZ } from "@itwin/core-geometry";
6
- import { RgbColor } from "./RgbColor";
7
- import { FeatureAppearance, FeatureOverrides } from "./FeatureSymbology";
8
- /** Namespace containing types that collectively define a script that animates the contents of a view by adjusting the visibility, position,
9
- * and/or symbology of groups of elements over time. A [[RenderSchedule.Script]] is hosted by a [RenderTimeline]($backend) element. The script
10
- * can be associated with a [DisplayStyleState]($frontend) by way of its [[DisplayStyleSettings.renderTimeline]] property.
11
- * @public
12
- */
13
- export declare namespace RenderSchedule {
14
- /** Defines how two interpolate between two entries in a [[RenderSchedule.Timeline]].
15
- * @note Currently only Linear and Step are supported. Any other value is treated as Step.
16
- * @see [[RenderSchedule.TimelineEntry]].
17
- */
18
- enum Interpolation {
19
- /** Each timeline entry's value is discrete - the timeline jumps from one entry's value directly to another. */
20
- Step = 1,
21
- /** Given two entries on the timeline and a timepoint in between them, linearly interpolate based on the timepoint's distance between the
22
- * two entries.
23
- */
24
- Linear = 2
25
- }
26
- /** JSON representation of a [[RenderSchedule.TimelineEntry]]. */
27
- interface TimelineEntryProps {
28
- /** The time point in seconds in the [Unix Epoch](https://en.wikipedia.org/wiki/Unix_time). */
29
- time: number;
30
- /** How to interpolate from this entry to the next entry in the timeline.
31
- * Currently, anything other than [[RenderSchedule.Interpolation.Linear]] is treated as [[RenderSchedule.Interpolation.Step]].
32
- * Additional interpolation modes may become supported in the future.
33
- */
34
- interpolation?: Interpolation;
35
- }
36
- /** JSON representation of a [[RenderSchedule.VisibilityEntry]]. */
37
- interface VisibilityEntryProps extends TimelineEntryProps {
38
- /** Visibility of the geometry from 0 (invisible) to 100 (fully visible), with intermediate values appearing increasingly less transparent.
39
- * Default: 100 (fully visible).
40
- */
41
- value?: number;
42
- }
43
- /** JSON representation of a [[RenderSchedule.ColorEntry]]. */
44
- interface ColorEntryProps extends TimelineEntryProps {
45
- /** The color applied to the geometry, with each component specified as an integer in [0, 255].
46
- * e.g., (0, 0, 0) represents black and (255, 255, 255) represents white.
47
- * If `undefined`, the geometry is displayed in its actual color.
48
- */
49
- value?: {
50
- red: number;
51
- green: number;
52
- blue: number;
53
- };
54
- }
55
- /** JSON representation of a [[RenderSchedule.CuttingPlane]]. */
56
- interface CuttingPlaneProps {
57
- /** (x,y,z) of a point on the plane. */
58
- position: number[];
59
- /** (x, y, z) of the plane direction (towards the clip) */
60
- direction: number[];
61
- /** If true, the clip plane is ignored and the geometry is displayed unclipped. */
62
- visible?: boolean;
63
- /** If true, the clip plane is ignored and the geometry is not displayed. */
64
- hidden?: boolean;
65
- }
66
- /** JSON representation of a [[RenderSchedule.CuttingPlaneEntry]]. */
67
- interface CuttingPlaneEntryProps extends TimelineEntryProps {
68
- /** The clip plane, or undefined if the geometry is not clipped. */
69
- value?: CuttingPlaneProps;
70
- }
71
- /** JSON representation of a [[RenderSchedule.TransformComponents]]. */
72
- interface TransformComponentsProps {
73
- /** (x, y, z) of position - applied after rotation. */
74
- position?: number[];
75
- /** Quaternion representing rotation. */
76
- orientation?: number[];
77
- /** (x, y, z) of pivot - applied before rotation. */
78
- pivot?: number[];
79
- }
80
- /** JSON representation of a [Transform]($core-geometry) associated with a [[RenderSchedule.TransformEntryProps]]. */
81
- interface TransformProps extends TransformComponentsProps {
82
- /** 3 X 4 transformation matrix containing 3 arrays of matrix rows consisting of 4 numbers each: [qx qy qz ax]
83
- * where the fourth columnn in each row holds the translation.
84
- * `undefined` is equivalent to an identity transform.
85
- * This transform is only used if position, orientation, and/or pivot are undefined.
86
- */
87
- transform?: number[][];
88
- }
89
- /** JSON representation of a [[RenderSchedule.TransformEntry]]. */
90
- interface TransformEntryProps extends TimelineEntryProps {
91
- /** The transformation matrix, with `undefined` corresponding to an identity matrix. */
92
- value?: TransformProps;
93
- }
94
- /** JSON representation of a [[RenderSchedule.Timeline]]. */
95
- interface TimelineProps {
96
- /** Timeline controlling the visibility of the associated geometry. */
97
- visibilityTimeline?: VisibilityEntryProps[];
98
- /** Timeline controlling the colors of the associated geometry. */
99
- colorTimeline?: ColorEntryProps[];
100
- /** Timeline applying transforms to the associated geometry. */
101
- transformTimeline?: TransformEntryProps[];
102
- /** Timeline applying [ClipVector]($core-geometry)s to the associated geometry. */
103
- cuttingPlaneTimeline?: CuttingPlaneEntryProps[];
104
- }
105
- /** JSON representation of an [[RenderSchedule.ElementTimeline]]. */
106
- interface ElementTimelineProps extends TimelineProps {
107
- /** A positive integer that uniquely identifies this timeline among all element timelines in the [[RenderSchedule.Script]]. */
108
- batchId: number;
109
- /** The Ids of the elements to which this timeline applies.
110
- * @note Prefer the compressed representation - lists of element Ids can be comparatively enormous.
111
- * @note For a [[DisplayStyleSettingsProps]] associated with a [DisplayStyleState]($frontend) obtained via [IModelConnection.Views.load]($frontend),
112
- * this property will be an empty `CompressedId64Set`. They are omitted to conserve bandwidth and memory because they are not needed for display on the frontend.
113
- */
114
- elementIds: Id64String[] | CompressedId64Set;
115
- }
116
- /** JSON representation of a [[RenderSchedule.ModelTimeline]]. */
117
- interface ModelTimelineProps extends TimelineProps {
118
- /** The Id of the [GeometricModelState]($frontend) to which the timeline applies. */
119
- modelId: Id64String;
120
- /** @alpha */
121
- realityModelUrl?: string;
122
- /** Timelines affecting groups of elements. */
123
- elementTimelines: ElementTimelineProps[];
124
- }
125
- /** JSON representation of a [[RenderSchedule.Script]]. */
126
- type ScriptProps = ModelTimelineProps[];
127
- /** Describes the value of some property at a specific point along a [[RenderSchedule.Timeline]].
128
- * @see [[RenderSchedule.VisibilityEntry]]
129
- * @see [[RenderSchedule.ColorEntry]]
130
- * @see [[RenderSchedule.TransformEntry]]
131
- * @see [[RenderSchedule.CuttingPlaneEntry]]
132
- */
133
- class TimelineEntry {
134
- /** The time point in seconds in the [Unix Epoch](https://en.wikipedia.org/wiki/Unix_time). */
135
- readonly time: number;
136
- /** How to interpolate from this entry to the next entry in the timeline. */
137
- readonly interpolation: Interpolation;
138
- constructor(props: TimelineEntryProps);
139
- toJSON(): TimelineEntryProps;
140
- compareTo(other: TimelineEntry): number;
141
- equals(other: TimelineEntry): boolean;
142
- }
143
- /** A timeline entry that controls the visibility of the associated geometry. */
144
- class VisibilityEntry extends TimelineEntry {
145
- /** The visibility of the geometry at this point on the timeline, in the range [0, 100] where 0 is completely invisible, 100 is completely visible,
146
- * and values in between indicate increasing opacity.
147
- */
148
- readonly value: number;
149
- constructor(props: VisibilityEntryProps);
150
- toJSON(): VisibilityEntryProps;
151
- compareTo(other: VisibilityEntry): number;
152
- }
153
- /** A timeline entry controlling the color of the affected geometry. */
154
- class ColorEntry extends TimelineEntry {
155
- /** If defined, the color in which to draw the geometry. If undefined, the geometry is drawn in its actual color. */
156
- readonly value: RgbColor | undefined;
157
- constructor(props: ColorEntryProps);
158
- toJSON(): ColorEntryProps;
159
- compareTo(other: ColorEntry): number;
160
- }
161
- /** Describes the components of a [[RenderSchedule.TransformEntry]] as a rotation around a pivot point followed by a translation. */
162
- class TransformComponents {
163
- /** Pivot point - applied before rotation. */
164
- readonly pivot: Vector3d;
165
- /** Quaternion rotation. */
166
- readonly orientation: Point4d;
167
- /** Translation - applied after rotation. */
168
- readonly position: Vector3d;
169
- constructor(position: Vector3d, pivot: Vector3d, orientation: Point4d);
170
- static fromJSON(props: TransformComponentsProps): TransformComponents | undefined;
171
- toJSON(): TransformComponentsProps;
172
- compareTo(other: TransformComponents): number;
173
- equals(other: TransformComponents): boolean;
174
- }
175
- /** A timeline entry that applies rotation, scaling, and/or translation to the affected geometry. */
176
- class TransformEntry extends TimelineEntry {
177
- /** The transform matrix to be applied to the geometry, used only if [[components]] is not defined. */
178
- readonly value: Readonly<Transform>;
179
- /** The transform represented as a rotation about a pivot point followed by a translation. If undefined, [[value]] is used instead. */
180
- readonly components?: TransformComponents;
181
- constructor(props: TransformEntryProps);
182
- toJSON(): TransformEntryProps;
183
- compareTo(other: TransformEntry): number;
184
- }
185
- /** Defines a [ClipPlane]($core-geometry) associated with a [[RenderSchedule.CuttingPlaneEntry]]. */
186
- class CuttingPlane {
187
- /** A point on the plane. */
188
- readonly position: XYAndZ;
189
- /** The direction perpendicular to the plane pointing toward the clip. */
190
- readonly direction: XYAndZ;
191
- /** If true, the clip plane is ignored and the geometry is never clipped. */
192
- readonly visible: boolean;
193
- /** If true, the clip plane is ignored and the geometry is always clipped. */
194
- readonly hidden: boolean;
195
- constructor(props: CuttingPlaneProps);
196
- toJSON(): CuttingPlaneProps;
197
- compareTo(other: CuttingPlane): number;
198
- equals(other: CuttingPlane): boolean;
199
- }
200
- /** A timeline entry that applies a [ClipPlane]($core-geometry) to the affected geometry. */
201
- class CuttingPlaneEntry extends TimelineEntry {
202
- /** The definition of the [ClipPlane]($core-geometry), or undefined if this entry applies no clipping. */
203
- readonly value: CuttingPlane | undefined;
204
- constructor(props: CuttingPlaneEntryProps);
205
- toJSON(): CuttingPlaneEntryProps;
206
- compareTo(other: CuttingPlaneEntry): number;
207
- }
208
- /** Identifies a fractional position along a [[RenderSchedule.Timeline]] between any two [[RenderSchedule.TimelineEntry]]'s within a [[RenderSchedule.TimelineEntryList]].
209
- * @internal
210
- */
211
- class Interval {
212
- /** The index of the first timeline entry within the list. */
213
- lowerIndex: number;
214
- /** The index of the second timeline entry within the list. */
215
- upperIndex: number;
216
- /** The normalized distance between the two timeline entries. */
217
- fraction: number;
218
- constructor(lower?: number, upper?: number, fraction?: number);
219
- init(lower?: number, upper?: number, fraction?: number): void;
220
- }
221
- /** A list of the [[RenderSchedule.TimelineEntry]] objects within a [[RenderSchedule.Timeline]]. The type parameters are:
222
- * - T, a subclass of TimelineEntry with a `value` property specifying the value of the property controlled by the timeline at that entry's time point.
223
- * - P, the JSON representation from which T is to be constructed.
224
- * - V, the type of `T.value`.
225
- */
226
- class TimelineEntryList<T extends TimelineEntry & {
227
- readonly value: V;
228
- }, P extends TimelineEntryProps, V> implements Iterable<T> {
229
- private readonly _entries;
230
- /** The total time period represented by the entries in this list. */
231
- readonly duration: Range1d;
232
- constructor(props: P[], ctor: Constructor<T>);
233
- /** The number of entries in the list. */
234
- get length(): number;
235
- /** An iterator over the entries in the list. */
236
- [Symbol.iterator](): Iterator<T>;
237
- /** Look up an entry by its position in the list. */
238
- getEntry(index: number): T | undefined;
239
- /** Look up the value of an entry by its position in the list. */
240
- getValue(index: number): V | undefined;
241
- toJSON(): P[];
242
- compareTo(other: TimelineEntryList<T, P, V>): number;
243
- equals(other: TimelineEntryList<T, P, V>): boolean;
244
- /** @internal */
245
- findInterval(time: number, interval?: Interval): Interval | undefined;
246
- }
247
- /** A list of [[RenderSchedule.VisibilityEntry]]s within a [[RenderSchedule.Timeline]]. */
248
- class VisibilityTimelineEntries extends TimelineEntryList<VisibilityEntry, VisibilityEntryProps, number> {
249
- /** Returns the visibility value for the entry at the specified position in the list, or 100 (fully-visible) if no such entry exists. */
250
- getValue(index: number): number;
251
- }
252
- /** A list of [[RenderSchedule.TransformEntry]]s within a [[RenderSchedule.Timeline]]. */
253
- class TransformTimelineEntries extends TimelineEntryList<TransformEntry, TransformEntryProps, Readonly<Transform>> {
254
- /** Returns the transform for the entry at the specified position in the list, or an identity transform if no such entry exists. */
255
- getValue(index: number): Readonly<Transform>;
256
- }
257
- /** Specifies how to animate a set of geometry over time within a [[RenderSchedule.Script]].
258
- * A [[RenderSchedule.Script]] can contain any number of [[RenderSchedule.Timeline]]s, each affecting different sets of geometry.
259
- * @see [[RenderSchedule.ElementTimeline]] and [[RenderSchedule.ModelTimeline]].
260
- */
261
- class Timeline {
262
- /** Sequence controlling the visibility of the geometry. */
263
- readonly visibility?: VisibilityTimelineEntries;
264
- /** Sequence controlling the color of the geometry. */
265
- readonly color?: TimelineEntryList<ColorEntry, ColorEntryProps, RgbColor | undefined>;
266
- /** Sequence controlling the position, orientation, and/or scale of the geometry. */
267
- readonly transform?: TransformTimelineEntries;
268
- /** Sequence controlling how the geometry is clipped. */
269
- readonly cuttingPlane?: TimelineEntryList<CuttingPlaneEntry, CuttingPlaneEntryProps, CuttingPlane | undefined>;
270
- /** The total time period represented by this timeline. */
271
- readonly duration: Range1d;
272
- constructor(props: TimelineProps);
273
- toJSON(): TimelineProps;
274
- compareTo(other: Timeline): number;
275
- equals(other: Timeline): boolean;
276
- /** Get the visibility of the geometry at the specified time point. */
277
- getVisibility(time: number): number;
278
- /** Get the color of the geometry at the specified time point, or undefined if the color is not overridden at that time point. */
279
- getColor(time: number): RgbColor | undefined;
280
- /** Get the transform applied to the geometry at the specified time point. */
281
- getAnimationTransform(time: number): Readonly<Transform>;
282
- /** Get the clipping plane applied to the geometry at the specified time point, or undefined if the geometry is unclipped at that time point. */
283
- getCuttingPlane(time: number): Plane3dByOriginAndUnitNormal | undefined;
284
- /** Create a ClipVector from the [[RenderSchedule.CuttingPlane]] applied to the geometry at the specified time point, if any. */
285
- getClipVector(time: number): ClipVector | undefined;
286
- /** @internal */
287
- protected getFeatureAppearance(visibility: number, time: number): FeatureAppearance | undefined;
288
- }
289
- /** Specifies how to animate the geometry belonging to a set of [GeometricElement]($backend)s as part of a [[RenderSchedule.Script]]. */
290
- class ElementTimeline extends Timeline {
291
- /** A positive integer that uniquely identififes this timeline among all ElementTimelines in the [[RenderSchedule.Script]]. */
292
- readonly batchId: number;
293
- private readonly _elementIds;
294
- private constructor();
295
- static fromJSON(props?: ElementTimelineProps): ElementTimeline;
296
- toJSON(): ElementTimelineProps;
297
- get containsElementIds(): boolean;
298
- private compareElementIds;
299
- compareTo(other: ElementTimeline): number;
300
- /** @internal */
301
- static getElementIds(ids: Id64String[] | CompressedId64Set): Iterable<Id64String>;
302
- /** The Ids of the elements controlled by this timeline. */
303
- get elementIds(): Iterable<Id64String>;
304
- /** True if this timeline affects the color or transparency of the elements. */
305
- get containsFeatureOverrides(): boolean;
306
- /** If true, applying this timeline requires special tiles to be generated in which groups of elements are batched into nodes.
307
- * @internal
308
- */
309
- get requiresBatching(): boolean;
310
- /** True if this timeline affects the position, orientation, or scale of the elements. */
311
- get containsTransform(): boolean;
312
- /** @internal */
313
- addSymbologyOverrides(overrides: FeatureOverrides, time: number): void;
314
- }
315
- /** Specifies how to animate the geometry within a [GeometricModel]($backend) as part of a [[RenderSchedule.Script]]. */
316
- class ModelTimeline extends Timeline {
317
- /** The Id of the [GeometricModel]($backend) to be animated. */
318
- readonly modelId: Id64String;
319
- /** @internal */
320
- readonly realityModelUrl?: string;
321
- /** Timelines specifying how to animate groups of [GeometricElement]($backend)s within the model. */
322
- readonly elementTimelines: ReadonlyArray<ElementTimeline>;
323
- /** @internal */
324
- readonly transformBatchIds: ReadonlyArray<number>;
325
- /** True if this timeline affects the color or transparency of the geometry. */
326
- readonly containsFeatureOverrides: boolean;
327
- /** True if this timeline applies clipping to the model. */
328
- readonly containsModelClipping: boolean;
329
- /** If true, applying this timeline requires special tiles to be generated in which groups of elements are batched into nodes.
330
- * @internal
331
- */
332
- readonly requiresBatching: boolean;
333
- /** True if this timeline affects the position, orientation, or scale of the geometry. */
334
- readonly containsTransform: boolean;
335
- /** True if any [[RenderSchedule.ElementTimeline]]s exist and none of them contain any element Ids. This generally indicates that
336
- * the backend was instructed to omit the Ids to save space when supplying the script.
337
- */
338
- readonly omitsElementIds: boolean;
339
- private _maxBatchId?;
340
- /** Tile tree suppliers perform **very** frequent ordered comparisons of ModelTimelines. They need to be fast. */
341
- private readonly _cachedComparisons;
342
- /** When loading tiles we need to quickly map element Ids to batch Ids. This map is initialized on first call to [[getTimelineForElement]] to facilitate that lookup. */
343
- private _idPairToElementTimeline?;
344
- private _discreteBatchIds?;
345
- private constructor();
346
- static fromJSON(props?: ModelTimelineProps): ModelTimeline;
347
- toJSON(): ModelTimelineProps;
348
- compareTo(other: ModelTimeline): number;
349
- /** Look up the element timeline with the specified batch Id. */
350
- findByBatchId(batchId: number): ElementTimeline | undefined;
351
- /** @internal */
352
- addSymbologyOverrides(overrides: FeatureOverrides, time: number): void;
353
- /** Obtain the transform applied to the model at the specified time point, if any. */
354
- getTransform(batchId: number, time: number): Readonly<Transform> | undefined;
355
- /** Get the highest batchId of any ElementTimeline in this timeline. */
356
- get maxBatchId(): number;
357
- /** Given the two halves of an [Id64]($bentley) return the [[ElementTimeline]] containing the corresponding element.
358
- * @note The first call to this method populates a mapping for fast lookup.
359
- * @alpha
360
- */
361
- getTimelineForElement(idLo: number, idHi: number): ElementTimeline | undefined;
362
- /** The batch Ids of the subset of [[elementTimelines]] that apply a transform and/or cutting plane.
363
- * @alpha
364
- */
365
- get discreteBatchIds(): Set<number>;
366
- }
367
- /** Specifies how to animate the contents of a [ViewState]($frontend) over time. The script contains any number of [[RenderSchedule.ModelTimeline]]s, each describing how
368
- * to animate one of the models in the view.
369
- * @see [RenderTimeline]($backend) to create an [Element]($backend) to host a script.
370
- * @see [[DisplayStyleSettings.renderTimeline]] to associate a [RenderTimeline]($backend)'s script with a [DisplayStyle]($backend).
371
- * @see [DisplayStyleState.scheduleScript]($frontend) to obtain the script associated with a display style.
372
- * @see [[RenderSchedule.ScriptBuilder]] to define a new script.
373
- */
374
- class Script {
375
- /** Timelines specifying how to animate individual models within the view. */
376
- readonly modelTimelines: ReadonlyArray<ModelTimeline>;
377
- /** True if this script applies clipping to any models. */
378
- readonly containsModelClipping: boolean;
379
- /** If true, applying this timeline requires special tiles to be generated in which groups of elements are batched into nodes.
380
- * @internal
381
- */
382
- readonly requiresBatching: boolean;
383
- /** True if this script affects the position, orientation, or scale of the geometry. */
384
- readonly containsTransform: boolean;
385
- /** True if this script affects the color or transparency of the geometry. */
386
- readonly containsFeatureOverrides: boolean;
387
- /** The total time period over which this script animates. */
388
- readonly duration: Range1d;
389
- /** The batchIds of all nodes in all timelines that apply a transform.
390
- * @internal
391
- */
392
- readonly transformBatchIds: ReadonlySet<number>;
393
- /** Tile tree references perform **very** frequent ordered comparisons of Scripts. They need to be fast. */
394
- private readonly _cachedComparisons;
395
- compareTo(other: Script): number;
396
- equals(other: Script): boolean;
397
- protected constructor(props: Readonly<ScriptProps>);
398
- static fromJSON(props: Readonly<ScriptProps>): Script | undefined;
399
- toJSON(): ScriptProps;
400
- /** Look up the timeline that animates the specified model, if any. */
401
- find(modelId: Id64String): ModelTimeline | undefined;
402
- /** @internal */
403
- getTransformBatchIds(modelId: Id64String): ReadonlyArray<number> | undefined;
404
- /** @internal */
405
- getTransform(modelId: Id64String, batchId: number, time: number): Readonly<Transform> | undefined;
406
- /** @internal */
407
- addSymbologyOverrides(overrides: FeatureOverrides, time: number): void;
408
- /** Used by the [Element.collectReferenceIds]($backend) method overrides in RenderTimeline and DisplayStyle.
409
- * @internal
410
- */
411
- discloseIds(ids: Id64Set): void;
412
- /** @internal */
413
- modelRequiresBatching(modelId: Id64String): boolean;
414
- }
415
- /** A reference to a [[RenderSchedule.Script]], optionally identifying the source of the script.
416
- * @see [DisplayStyle.loadScheduleScript]($backend) and [DisplayStyleState.scheduleScript]($frontend) to obtain the script reference for a display style on the frontend
417
- * and backend respectively.
418
- * @see [DisplayStyleState.scheduleScript]($frontend) or [DisplayStyleState.changeRenderTimeline]($frontend) to change a display style's script on the frontend.
419
- */
420
- class ScriptReference {
421
- /** The Id of the element - if any - from which the script originated.
422
- * A schedule script may originate from one of the following sources:
423
- * - A [RenderTimeline]($backend) element stored in the iModel; or
424
- * - The `scheduleScript` JSON property of a [DisplayStyle]($backend) element stored in the iModel; or
425
- * - Any other source outside of the iModel, such as code that generates the script on the frontend, a script obtained from some server, etc.
426
- *
427
- * The [[sourceId]] property identifies the Id of the element from which the script originated; an empty or invalid [Id64String]($bentley) indicates the script did not
428
- * originate from any persistent element. If the Id is valid, the contents of [[script]] are assumed to match those stored on the source element.
429
- */
430
- readonly sourceId: Id64String;
431
- /** The script defining the rendering timelines to be applied. */
432
- readonly script: Script;
433
- /** Create a reference to a [[script]] with no [[sourceId]]. */
434
- constructor(script: Script);
435
- /** Create a reference to a [[script]] with the specified [[sourceId]]. */
436
- constructor(sourceId: Id64String, script: Script);
437
- /** @internal Use one of the public constructor overloads which forward to this one. */
438
- constructor(sourceIdOrScript: Id64String | Script, scriptIfSourceId?: Script);
439
- }
440
- /** Used as part of a [[RenderSchedule.ScriptBuilder]] to define a [[RenderSchedule.Timeline]].
441
- * @see [[RenderSchedule.ElementTimelineBuilder]] and [[RenderSchedule.ModelTimelineBuilder]].
442
- */
443
- class TimelineBuilder {
444
- /** Timeline controlling visibility. */
445
- visibility?: VisibilityEntryProps[];
446
- /** Timeline controlling color. */
447
- color?: ColorEntryProps[];
448
- /** Timeline controlling position and orientation. */
449
- transform?: TransformEntryProps[];
450
- /** Timeline controlling clipping. */
451
- cuttingPlane?: CuttingPlaneEntryProps[];
452
- /** Append a new [[RenderSchedule.VisibilityEntry]] to the timeline. */
453
- addVisibility(time: number, visibility: number | undefined, interpolation?: Interpolation): void;
454
- /** Append a new [[RenderSchedule.ColorEntry]] to the timeline. */
455
- addColor(time: number, color: RgbColor | {
456
- red: number;
457
- green: number;
458
- blue: number;
459
- } | undefined, interpolation?: Interpolation): void;
460
- /** Append a new [[RenderSchedule.CuttingPlaneEntry]] to the timeline. */
461
- addCuttingPlane(time: number, plane: {
462
- position: XYAndZ;
463
- direction: XYAndZ;
464
- visible?: boolean;
465
- hidden?: boolean;
466
- } | undefined, interpolation?: Interpolation): void;
467
- /** Append a new [[RenderSchedule.TransformEntry]] to the timeline. */
468
- addTransform(time: number, transform: Readonly<Transform> | undefined, components?: {
469
- pivot: XYAndZ;
470
- orientation: Point4d;
471
- position: XYAndZ;
472
- }, interpolation?: Interpolation): void;
473
- /** Obtain the JSON representation of the [[RenderSchedule.Timeline]] produced by this builder.
474
- * @see [[RenderSchedule.ScriptBuilder.finish]] to obtain the JSON for the entire [[RenderSchedule.Script]].
475
- */
476
- finish(): TimelineProps;
477
- }
478
- /** As part of a [[RenderSchedule.ScriptBuilder]], assembles a [[RenderSchedule.ElementTimeline]].
479
- * @see [[RenderSchedule.ModelTimelineBuilder.addElementTimeline]].
480
- */
481
- class ElementTimelineBuilder extends TimelineBuilder {
482
- /** A positive integer that uniquely identifies this timeline among all element timelines in the [[RenderSchedule.Script]].
483
- * [[RenderSchedule.ScriptBuilder]] ensures each ElementTimelineBuilder receives a unique batch Id.
484
- */
485
- readonly batchId: number;
486
- /** The compressed set of Ids of the elements affected by this timeline. */
487
- readonly elementIds: CompressedId64Set;
488
- /** Constructor - typically not used directly.
489
- * @see [[RenderSchedule.ModelTimelineBuilder.addElementTimeline]] to create an ElementTimelineBuilder.
490
- */
491
- constructor(batchId: number, elementIds: CompressedId64Set);
492
- /** Obtain the JSON representation of the [[RenderSchedule.ElementTimeline]] produced by this builder.
493
- * @see [[RenderSchedule.ScriptBuilder.finish]] to obtain the JSON for the entire [[RenderSchedule.Script]].
494
- */
495
- finish(): ElementTimelineProps;
496
- }
497
- /** As part of a [[RenderSchedule.ScriptBuilder, assembles a [[RenderSchedule.ModelTimeline]].
498
- * @see [[RenderSchedule.ScriptBuilder.addModelTimeline]].
499
- */
500
- class ModelTimelineBuilder extends TimelineBuilder {
501
- /** The Id of the model affected by this timeline. */
502
- readonly modelId: Id64String;
503
- /** @internal */
504
- realityModelUrl?: string;
505
- private readonly _obtainNextBatchId;
506
- private readonly _elements;
507
- /** Constructor - typically not used directly.
508
- * @see [[RenderSchedule.ScriptBuilder.addModelTimeline]] to create a ModelTimelineBuilder.
509
- */
510
- constructor(modelId: Id64String, obtainNextBatchId: () => number);
511
- /** Add a new [[RenderSchedule.ElementTimeline]] to be applied to the specified elements.
512
- * This function will sort and compress the Ids if they are not already compressed.
513
- *
514
- */
515
- addElementTimeline(elementIds: CompressedId64Set | Iterable<Id64String>): ElementTimelineBuilder;
516
- /** Obtain the JSON representation of the [[RenderSchedule.ModelTimeline]] produced by this builder.
517
- * @see [[RenderSchedule.ScriptBuilder.finish]] to obtain the JSON for the entire [[RenderSchedule.Script]].
518
- */
519
- finish(): ModelTimelineProps;
520
- }
521
- /** Assembles the JSON representation for a new [[RenderSchedule.Script]]. As an extremely simple example, the following code produces a script that changes the color of a single element:
522
- * ```ts
523
- * const script = new ScriptBuilder();
524
- * const model = script.addModelTimeline("0x123");
525
- * const element = model.addElementTimeline([ "0x456" ]);
526
- * element.addColor(Date.now(), new RgbColor(0xff, 0x7f, 0));
527
- * const scriptProps = script.finish();
528
- * ```
529
- */
530
- class ScriptBuilder {
531
- private _nextBatchId;
532
- private readonly _models;
533
- /** Add a new [[RenderSchedule.ModelTimeline]] to be applied to the specified model. */
534
- addModelTimeline(modelId: Id64String): ModelTimelineBuilder;
535
- /** Obtain the JSON representation of the [[RenderSchedule.Script]] produced by this builder.
536
- * @see [RenderTimeline.scriptProps]($backend) to assign the new script to a RenderTimeline element.
537
- */
538
- finish(): ScriptProps;
539
- }
540
- }
1
+ /** @packageDocumentation
2
+ * @module DisplayStyles
3
+ */
4
+ import { CompressedId64Set, Constructor, Id64String } from "@itwin/core-bentley";
5
+ import { EntityReferenceSet } from "./EntityReference";
6
+ import { ClipVector, Plane3dByOriginAndUnitNormal, Point4d, Range1d, Transform, Vector3d, XYAndZ } from "@itwin/core-geometry";
7
+ import { RgbColor } from "./RgbColor";
8
+ import { FeatureAppearance, FeatureOverrides } from "./FeatureSymbology";
9
+ /** Namespace containing types that collectively define a script that animates the contents of a view by adjusting the visibility, position,
10
+ * and/or symbology of groups of elements over time. A [[RenderSchedule.Script]] is hosted by a [RenderTimeline]($backend) element. The script
11
+ * can be associated with a [DisplayStyleState]($frontend) by way of its [[DisplayStyleSettings.renderTimeline]] property.
12
+ * @public
13
+ */
14
+ export declare namespace RenderSchedule {
15
+ /** Defines how two interpolate between two entries in a [[RenderSchedule.Timeline]].
16
+ * @note Currently only Linear and Step are supported. Any other value is treated as Step.
17
+ * @see [[RenderSchedule.TimelineEntry]].
18
+ */
19
+ enum Interpolation {
20
+ /** Each timeline entry's value is discrete - the timeline jumps from one entry's value directly to another. */
21
+ Step = 1,
22
+ /** Given two entries on the timeline and a timepoint in between them, linearly interpolate based on the timepoint's distance between the
23
+ * two entries.
24
+ */
25
+ Linear = 2
26
+ }
27
+ /** JSON representation of a [[RenderSchedule.TimelineEntry]]. */
28
+ interface TimelineEntryProps {
29
+ /** The time point in seconds in the [Unix Epoch](https://en.wikipedia.org/wiki/Unix_time). */
30
+ time: number;
31
+ /** How to interpolate from this entry to the next entry in the timeline.
32
+ * Currently, anything other than [[RenderSchedule.Interpolation.Linear]] is treated as [[RenderSchedule.Interpolation.Step]].
33
+ * Additional interpolation modes may become supported in the future.
34
+ */
35
+ interpolation?: Interpolation;
36
+ }
37
+ /** JSON representation of a [[RenderSchedule.VisibilityEntry]]. */
38
+ interface VisibilityEntryProps extends TimelineEntryProps {
39
+ /** Visibility of the geometry from 0 (invisible) to 100 (fully visible), with intermediate values appearing increasingly less transparent.
40
+ * Default: 100 (fully visible).
41
+ */
42
+ value?: number;
43
+ }
44
+ /** JSON representation of a [[RenderSchedule.ColorEntry]]. */
45
+ interface ColorEntryProps extends TimelineEntryProps {
46
+ /** The color applied to the geometry, with each component specified as an integer in [0, 255].
47
+ * e.g., (0, 0, 0) represents black and (255, 255, 255) represents white.
48
+ * If `undefined`, the geometry is displayed in its actual color.
49
+ */
50
+ value?: {
51
+ red: number;
52
+ green: number;
53
+ blue: number;
54
+ };
55
+ }
56
+ /** JSON representation of a [[RenderSchedule.CuttingPlane]]. */
57
+ interface CuttingPlaneProps {
58
+ /** (x,y,z) of a point on the plane. */
59
+ position: number[];
60
+ /** (x, y, z) of the plane direction (towards the clip) */
61
+ direction: number[];
62
+ /** If true, the clip plane is ignored and the geometry is displayed unclipped. */
63
+ visible?: boolean;
64
+ /** If true, the clip plane is ignored and the geometry is not displayed. */
65
+ hidden?: boolean;
66
+ }
67
+ /** JSON representation of a [[RenderSchedule.CuttingPlaneEntry]]. */
68
+ interface CuttingPlaneEntryProps extends TimelineEntryProps {
69
+ /** The clip plane, or undefined if the geometry is not clipped. */
70
+ value?: CuttingPlaneProps;
71
+ }
72
+ /** JSON representation of a [[RenderSchedule.TransformComponents]]. */
73
+ interface TransformComponentsProps {
74
+ /** (x, y, z) of position - applied after rotation. */
75
+ position?: number[];
76
+ /** Quaternion representing rotation. */
77
+ orientation?: number[];
78
+ /** (x, y, z) of pivot - applied before rotation. */
79
+ pivot?: number[];
80
+ }
81
+ /** JSON representation of a [Transform]($core-geometry) associated with a [[RenderSchedule.TransformEntryProps]]. */
82
+ interface TransformProps extends TransformComponentsProps {
83
+ /** 3 X 4 transformation matrix containing 3 arrays of matrix rows consisting of 4 numbers each: [qx qy qz ax]
84
+ * where the fourth columnn in each row holds the translation.
85
+ * `undefined` is equivalent to an identity transform.
86
+ * This transform is only used if position, orientation, and/or pivot are undefined.
87
+ */
88
+ transform?: number[][];
89
+ }
90
+ /** JSON representation of a [[RenderSchedule.TransformEntry]]. */
91
+ interface TransformEntryProps extends TimelineEntryProps {
92
+ /** The transformation matrix, with `undefined` corresponding to an identity matrix. */
93
+ value?: TransformProps;
94
+ }
95
+ /** JSON representation of a [[RenderSchedule.Timeline]]. */
96
+ interface TimelineProps {
97
+ /** Timeline controlling the visibility of the associated geometry. */
98
+ visibilityTimeline?: VisibilityEntryProps[];
99
+ /** Timeline controlling the colors of the associated geometry. */
100
+ colorTimeline?: ColorEntryProps[];
101
+ /** Timeline applying transforms to the associated geometry. */
102
+ transformTimeline?: TransformEntryProps[];
103
+ /** Timeline applying [ClipVector]($core-geometry)s to the associated geometry. */
104
+ cuttingPlaneTimeline?: CuttingPlaneEntryProps[];
105
+ }
106
+ /** JSON representation of an [[RenderSchedule.ElementTimeline]]. */
107
+ interface ElementTimelineProps extends TimelineProps {
108
+ /** A positive integer that uniquely identifies this timeline among all element timelines in the [[RenderSchedule.Script]]. */
109
+ batchId: number;
110
+ /** The Ids of the elements to which this timeline applies.
111
+ * @note Prefer the compressed representation - lists of element Ids can be comparatively enormous.
112
+ * @note For a [[DisplayStyleSettingsProps]] associated with a [DisplayStyleState]($frontend) obtained via [IModelConnection.Views.load]($frontend),
113
+ * this property will be an empty `CompressedId64Set`. They are omitted to conserve bandwidth and memory because they are not needed for display on the frontend.
114
+ */
115
+ elementIds: Id64String[] | CompressedId64Set;
116
+ }
117
+ /** JSON representation of a [[RenderSchedule.ModelTimeline]]. */
118
+ interface ModelTimelineProps extends TimelineProps {
119
+ /** The Id of the [GeometricModelState]($frontend) to which the timeline applies. */
120
+ modelId: Id64String;
121
+ /** @alpha */
122
+ realityModelUrl?: string;
123
+ /** Timelines affecting groups of elements. */
124
+ elementTimelines: ElementTimelineProps[];
125
+ }
126
+ /** JSON representation of a [[RenderSchedule.Script]]. */
127
+ type ScriptProps = ModelTimelineProps[];
128
+ /** Describes the value of some property at a specific point along a [[RenderSchedule.Timeline]].
129
+ * @see [[RenderSchedule.VisibilityEntry]]
130
+ * @see [[RenderSchedule.ColorEntry]]
131
+ * @see [[RenderSchedule.TransformEntry]]
132
+ * @see [[RenderSchedule.CuttingPlaneEntry]]
133
+ */
134
+ class TimelineEntry {
135
+ /** The time point in seconds in the [Unix Epoch](https://en.wikipedia.org/wiki/Unix_time). */
136
+ readonly time: number;
137
+ /** How to interpolate from this entry to the next entry in the timeline. */
138
+ readonly interpolation: Interpolation;
139
+ constructor(props: TimelineEntryProps);
140
+ toJSON(): TimelineEntryProps;
141
+ compareTo(other: TimelineEntry): number;
142
+ equals(other: TimelineEntry): boolean;
143
+ }
144
+ /** A timeline entry that controls the visibility of the associated geometry. */
145
+ class VisibilityEntry extends TimelineEntry {
146
+ /** The visibility of the geometry at this point on the timeline, in the range [0, 100] where 0 is completely invisible, 100 is completely visible,
147
+ * and values in between indicate increasing opacity.
148
+ */
149
+ readonly value: number;
150
+ constructor(props: VisibilityEntryProps);
151
+ toJSON(): VisibilityEntryProps;
152
+ compareTo(other: VisibilityEntry): number;
153
+ }
154
+ /** A timeline entry controlling the color of the affected geometry. */
155
+ class ColorEntry extends TimelineEntry {
156
+ /** If defined, the color in which to draw the geometry. If undefined, the geometry is drawn in its actual color. */
157
+ readonly value: RgbColor | undefined;
158
+ constructor(props: ColorEntryProps);
159
+ toJSON(): ColorEntryProps;
160
+ compareTo(other: ColorEntry): number;
161
+ }
162
+ /** Describes the components of a [[RenderSchedule.TransformEntry]] as a rotation around a pivot point followed by a translation. */
163
+ class TransformComponents {
164
+ /** Pivot point - applied before rotation. */
165
+ readonly pivot: Vector3d;
166
+ /** Quaternion rotation. */
167
+ readonly orientation: Point4d;
168
+ /** Translation - applied after rotation. */
169
+ readonly position: Vector3d;
170
+ constructor(position: Vector3d, pivot: Vector3d, orientation: Point4d);
171
+ static fromJSON(props: TransformComponentsProps): TransformComponents | undefined;
172
+ toJSON(): TransformComponentsProps;
173
+ compareTo(other: TransformComponents): number;
174
+ equals(other: TransformComponents): boolean;
175
+ }
176
+ /** A timeline entry that applies rotation, scaling, and/or translation to the affected geometry. */
177
+ class TransformEntry extends TimelineEntry {
178
+ /** The transform matrix to be applied to the geometry, used only if [[components]] is not defined. */
179
+ readonly value: Readonly<Transform>;
180
+ /** The transform represented as a rotation about a pivot point followed by a translation. If undefined, [[value]] is used instead. */
181
+ readonly components?: TransformComponents;
182
+ constructor(props: TransformEntryProps);
183
+ toJSON(): TransformEntryProps;
184
+ compareTo(other: TransformEntry): number;
185
+ }
186
+ /** Defines a [ClipPlane]($core-geometry) associated with a [[RenderSchedule.CuttingPlaneEntry]]. */
187
+ class CuttingPlane {
188
+ /** A point on the plane. */
189
+ readonly position: XYAndZ;
190
+ /** The direction perpendicular to the plane pointing toward the clip. */
191
+ readonly direction: XYAndZ;
192
+ /** If true, the clip plane is ignored and the geometry is never clipped. */
193
+ readonly visible: boolean;
194
+ /** If true, the clip plane is ignored and the geometry is always clipped. */
195
+ readonly hidden: boolean;
196
+ constructor(props: CuttingPlaneProps);
197
+ toJSON(): CuttingPlaneProps;
198
+ compareTo(other: CuttingPlane): number;
199
+ equals(other: CuttingPlane): boolean;
200
+ }
201
+ /** A timeline entry that applies a [ClipPlane]($core-geometry) to the affected geometry. */
202
+ class CuttingPlaneEntry extends TimelineEntry {
203
+ /** The definition of the [ClipPlane]($core-geometry), or undefined if this entry applies no clipping. */
204
+ readonly value: CuttingPlane | undefined;
205
+ constructor(props: CuttingPlaneEntryProps);
206
+ toJSON(): CuttingPlaneEntryProps;
207
+ compareTo(other: CuttingPlaneEntry): number;
208
+ }
209
+ /** Identifies a fractional position along a [[RenderSchedule.Timeline]] between any two [[RenderSchedule.TimelineEntry]]'s within a [[RenderSchedule.TimelineEntryList]].
210
+ * @internal
211
+ */
212
+ class Interval {
213
+ /** The index of the first timeline entry within the list. */
214
+ lowerIndex: number;
215
+ /** The index of the second timeline entry within the list. */
216
+ upperIndex: number;
217
+ /** The normalized distance between the two timeline entries. */
218
+ fraction: number;
219
+ constructor(lower?: number, upper?: number, fraction?: number);
220
+ init(lower?: number, upper?: number, fraction?: number): void;
221
+ }
222
+ /** A list of the [[RenderSchedule.TimelineEntry]] objects within a [[RenderSchedule.Timeline]]. The type parameters are:
223
+ * - T, a subclass of TimelineEntry with a `value` property specifying the value of the property controlled by the timeline at that entry's time point.
224
+ * - P, the JSON representation from which T is to be constructed.
225
+ * - V, the type of `T.value`.
226
+ */
227
+ class TimelineEntryList<T extends TimelineEntry & {
228
+ readonly value: V;
229
+ }, P extends TimelineEntryProps, V> implements Iterable<T> {
230
+ private readonly _entries;
231
+ /** The total time period represented by the entries in this list. */
232
+ readonly duration: Range1d;
233
+ constructor(props: P[], ctor: Constructor<T>);
234
+ /** The number of entries in the list. */
235
+ get length(): number;
236
+ /** An iterator over the entries in the list. */
237
+ [Symbol.iterator](): Iterator<T>;
238
+ /** Look up an entry by its position in the list. */
239
+ getEntry(index: number): T | undefined;
240
+ /** Look up the value of an entry by its position in the list. */
241
+ getValue(index: number): V | undefined;
242
+ toJSON(): P[];
243
+ compareTo(other: TimelineEntryList<T, P, V>): number;
244
+ equals(other: TimelineEntryList<T, P, V>): boolean;
245
+ /** @internal */
246
+ findInterval(time: number, interval?: Interval): Interval | undefined;
247
+ }
248
+ /** A list of [[RenderSchedule.VisibilityEntry]]s within a [[RenderSchedule.Timeline]]. */
249
+ class VisibilityTimelineEntries extends TimelineEntryList<VisibilityEntry, VisibilityEntryProps, number> {
250
+ /** Returns the visibility value for the entry at the specified position in the list, or 100 (fully-visible) if no such entry exists. */
251
+ getValue(index: number): number;
252
+ }
253
+ /** A list of [[RenderSchedule.TransformEntry]]s within a [[RenderSchedule.Timeline]]. */
254
+ class TransformTimelineEntries extends TimelineEntryList<TransformEntry, TransformEntryProps, Readonly<Transform>> {
255
+ /** Returns the transform for the entry at the specified position in the list, or an identity transform if no such entry exists. */
256
+ getValue(index: number): Readonly<Transform>;
257
+ }
258
+ /** Specifies how to animate a set of geometry over time within a [[RenderSchedule.Script]].
259
+ * A [[RenderSchedule.Script]] can contain any number of [[RenderSchedule.Timeline]]s, each affecting different sets of geometry.
260
+ * @see [[RenderSchedule.ElementTimeline]] and [[RenderSchedule.ModelTimeline]].
261
+ */
262
+ class Timeline {
263
+ /** Sequence controlling the visibility of the geometry. */
264
+ readonly visibility?: VisibilityTimelineEntries;
265
+ /** Sequence controlling the color of the geometry. */
266
+ readonly color?: TimelineEntryList<ColorEntry, ColorEntryProps, RgbColor | undefined>;
267
+ /** Sequence controlling the position, orientation, and/or scale of the geometry. */
268
+ readonly transform?: TransformTimelineEntries;
269
+ /** Sequence controlling how the geometry is clipped. */
270
+ readonly cuttingPlane?: TimelineEntryList<CuttingPlaneEntry, CuttingPlaneEntryProps, CuttingPlane | undefined>;
271
+ /** The total time period represented by this timeline. */
272
+ readonly duration: Range1d;
273
+ constructor(props: TimelineProps);
274
+ toJSON(): TimelineProps;
275
+ compareTo(other: Timeline): number;
276
+ equals(other: Timeline): boolean;
277
+ /** Get the visibility of the geometry at the specified time point. */
278
+ getVisibility(time: number): number;
279
+ /** Get the color of the geometry at the specified time point, or undefined if the color is not overridden at that time point. */
280
+ getColor(time: number): RgbColor | undefined;
281
+ /** Get the transform applied to the geometry at the specified time point. */
282
+ getAnimationTransform(time: number): Readonly<Transform>;
283
+ /** Get the clipping plane applied to the geometry at the specified time point, or undefined if the geometry is unclipped at that time point. */
284
+ getCuttingPlane(time: number): Plane3dByOriginAndUnitNormal | undefined;
285
+ /** Create a ClipVector from the [[RenderSchedule.CuttingPlane]] applied to the geometry at the specified time point, if any. */
286
+ getClipVector(time: number): ClipVector | undefined;
287
+ /** @internal */
288
+ protected getFeatureAppearance(visibility: number, time: number): FeatureAppearance | undefined;
289
+ }
290
+ /** Specifies how to animate the geometry belonging to a set of [GeometricElement]($backend)s as part of a [[RenderSchedule.Script]]. */
291
+ class ElementTimeline extends Timeline {
292
+ /** A positive integer that uniquely identififes this timeline among all ElementTimelines in the [[RenderSchedule.Script]]. */
293
+ readonly batchId: number;
294
+ private readonly _elementIds;
295
+ private constructor();
296
+ static fromJSON(props?: ElementTimelineProps): ElementTimeline;
297
+ toJSON(): ElementTimelineProps;
298
+ get containsElementIds(): boolean;
299
+ private compareElementIds;
300
+ compareTo(other: ElementTimeline): number;
301
+ /** @internal */
302
+ static getElementIds(ids: Id64String[] | CompressedId64Set): Iterable<Id64String>;
303
+ /** The Ids of the elements controlled by this timeline. */
304
+ get elementIds(): Iterable<Id64String>;
305
+ /** True if this timeline affects the color or transparency of the elements. */
306
+ get containsFeatureOverrides(): boolean;
307
+ /** If true, applying this timeline requires special tiles to be generated in which groups of elements are batched into nodes.
308
+ * @internal
309
+ */
310
+ get requiresBatching(): boolean;
311
+ /** True if this timeline affects the position, orientation, or scale of the elements. */
312
+ get containsTransform(): boolean;
313
+ /** @internal */
314
+ addSymbologyOverrides(overrides: FeatureOverrides, time: number): void;
315
+ }
316
+ /** Specifies how to animate the geometry within a [GeometricModel]($backend) as part of a [[RenderSchedule.Script]]. */
317
+ class ModelTimeline extends Timeline {
318
+ /** The Id of the [GeometricModel]($backend) to be animated. */
319
+ readonly modelId: Id64String;
320
+ /** @internal */
321
+ readonly realityModelUrl?: string;
322
+ /** Timelines specifying how to animate groups of [GeometricElement]($backend)s within the model. */
323
+ readonly elementTimelines: ReadonlyArray<ElementTimeline>;
324
+ /** @internal */
325
+ readonly transformBatchIds: ReadonlyArray<number>;
326
+ /** True if this timeline affects the color or transparency of the geometry. */
327
+ readonly containsFeatureOverrides: boolean;
328
+ /** True if this timeline applies clipping to the model. */
329
+ readonly containsModelClipping: boolean;
330
+ /** If true, applying this timeline requires special tiles to be generated in which groups of elements are batched into nodes.
331
+ * @internal
332
+ */
333
+ readonly requiresBatching: boolean;
334
+ /** True if this timeline affects the position, orientation, or scale of the geometry. */
335
+ readonly containsTransform: boolean;
336
+ /** True if any [[RenderSchedule.ElementTimeline]]s exist and none of them contain any element Ids. This generally indicates that
337
+ * the backend was instructed to omit the Ids to save space when supplying the script.
338
+ */
339
+ readonly omitsElementIds: boolean;
340
+ private _maxBatchId?;
341
+ /** Tile tree suppliers perform **very** frequent ordered comparisons of ModelTimelines. They need to be fast. */
342
+ private readonly _cachedComparisons;
343
+ /** When loading tiles we need to quickly map element Ids to batch Ids. This map is initialized on first call to [[getTimelineForElement]] to facilitate that lookup. */
344
+ private _idPairToElementTimeline?;
345
+ private _discreteBatchIds?;
346
+ private constructor();
347
+ static fromJSON(props?: ModelTimelineProps): ModelTimeline;
348
+ toJSON(): ModelTimelineProps;
349
+ compareTo(other: ModelTimeline): number;
350
+ /** Look up the element timeline with the specified batch Id. */
351
+ findByBatchId(batchId: number): ElementTimeline | undefined;
352
+ /** @internal */
353
+ addSymbologyOverrides(overrides: FeatureOverrides, time: number): void;
354
+ /** Obtain the transform applied to the model at the specified time point, if any. */
355
+ getTransform(batchId: number, time: number): Readonly<Transform> | undefined;
356
+ /** Get the highest batchId of any ElementTimeline in this timeline. */
357
+ get maxBatchId(): number;
358
+ /** Given the two halves of an [Id64]($bentley) return the [[ElementTimeline]] containing the corresponding element.
359
+ * @note The first call to this method populates a mapping for fast lookup.
360
+ * @alpha
361
+ */
362
+ getTimelineForElement(idLo: number, idHi: number): ElementTimeline | undefined;
363
+ /** The batch Ids of the subset of [[elementTimelines]] that apply a transform and/or cutting plane.
364
+ * @alpha
365
+ */
366
+ get discreteBatchIds(): Set<number>;
367
+ }
368
+ /** Specifies how to animate the contents of a [ViewState]($frontend) over time. The script contains any number of [[RenderSchedule.ModelTimeline]]s, each describing how
369
+ * to animate one of the models in the view.
370
+ * @see [RenderTimeline]($backend) to create an [Element]($backend) to host a script.
371
+ * @see [[DisplayStyleSettings.renderTimeline]] to associate a [RenderTimeline]($backend)'s script with a [DisplayStyle]($backend).
372
+ * @see [DisplayStyleState.scheduleScript]($frontend) to obtain the script associated with a display style.
373
+ * @see [[RenderSchedule.ScriptBuilder]] to define a new script.
374
+ */
375
+ class Script {
376
+ /** Timelines specifying how to animate individual models within the view. */
377
+ readonly modelTimelines: ReadonlyArray<ModelTimeline>;
378
+ /** True if this script applies clipping to any models. */
379
+ readonly containsModelClipping: boolean;
380
+ /** If true, applying this timeline requires special tiles to be generated in which groups of elements are batched into nodes.
381
+ * @internal
382
+ */
383
+ readonly requiresBatching: boolean;
384
+ /** True if this script affects the position, orientation, or scale of the geometry. */
385
+ readonly containsTransform: boolean;
386
+ /** True if this script affects the color or transparency of the geometry. */
387
+ readonly containsFeatureOverrides: boolean;
388
+ /** The total time period over which this script animates. */
389
+ readonly duration: Range1d;
390
+ /** The batchIds of all nodes in all timelines that apply a transform.
391
+ * @internal
392
+ */
393
+ readonly transformBatchIds: ReadonlySet<number>;
394
+ /** Tile tree references perform **very** frequent ordered comparisons of Scripts. They need to be fast. */
395
+ private readonly _cachedComparisons;
396
+ compareTo(other: Script): number;
397
+ equals(other: Script): boolean;
398
+ protected constructor(props: Readonly<ScriptProps>);
399
+ static fromJSON(props: Readonly<ScriptProps>): Script | undefined;
400
+ toJSON(): ScriptProps;
401
+ /** Look up the timeline that animates the specified model, if any. */
402
+ find(modelId: Id64String): ModelTimeline | undefined;
403
+ /** @internal */
404
+ getTransformBatchIds(modelId: Id64String): ReadonlyArray<number> | undefined;
405
+ /** @internal */
406
+ getTransform(modelId: Id64String, batchId: number, time: number): Readonly<Transform> | undefined;
407
+ /** @internal */
408
+ addSymbologyOverrides(overrides: FeatureOverrides, time: number): void;
409
+ /** Used by the [Entity.collectReferenceIds]($backend) method overrides in RenderTimeline and DisplayStyle.
410
+ * @internal
411
+ */
412
+ discloseIds(ids: EntityReferenceSet): void;
413
+ /** @internal */
414
+ modelRequiresBatching(modelId: Id64String): boolean;
415
+ }
416
+ /** A reference to a [[RenderSchedule.Script]], optionally identifying the source of the script.
417
+ * @see [DisplayStyle.loadScheduleScript]($backend) and [DisplayStyleState.scheduleScript]($frontend) to obtain the script reference for a display style on the frontend
418
+ * and backend respectively.
419
+ * @see [DisplayStyleState.scheduleScript]($frontend) or [DisplayStyleState.changeRenderTimeline]($frontend) to change a display style's script on the frontend.
420
+ */
421
+ class ScriptReference {
422
+ /** The Id of the element - if any - from which the script originated.
423
+ * A schedule script may originate from one of the following sources:
424
+ * - A [RenderTimeline]($backend) element stored in the iModel; or
425
+ * - The `scheduleScript` JSON property of a [DisplayStyle]($backend) element stored in the iModel; or
426
+ * - Any other source outside of the iModel, such as code that generates the script on the frontend, a script obtained from some server, etc.
427
+ *
428
+ * The [[sourceId]] property identifies the Id of the element from which the script originated; an empty or invalid [Id64String]($bentley) indicates the script did not
429
+ * originate from any persistent element. If the Id is valid, the contents of [[script]] are assumed to match those stored on the source element.
430
+ */
431
+ readonly sourceId: Id64String;
432
+ /** The script defining the rendering timelines to be applied. */
433
+ readonly script: Script;
434
+ /** Create a reference to a [[script]] with no [[sourceId]]. */
435
+ constructor(script: Script);
436
+ /** Create a reference to a [[script]] with the specified [[sourceId]]. */
437
+ constructor(sourceId: Id64String, script: Script);
438
+ /** @internal Use one of the public constructor overloads which forward to this one. */
439
+ constructor(sourceIdOrScript: Id64String | Script, scriptIfSourceId?: Script);
440
+ }
441
+ /** Used as part of a [[RenderSchedule.ScriptBuilder]] to define a [[RenderSchedule.Timeline]]. Functions that append
442
+ * to the timeline expect entries to be appended in chronological order - i.e., you cannot append an entry that is earlier
443
+ * than a previously appended entry.
444
+ * @see [[RenderSchedule.ElementTimelineBuilder]] and [[RenderSchedule.ModelTimelineBuilder]].
445
+ */
446
+ class TimelineBuilder {
447
+ /** Timeline controlling visibility. */
448
+ visibility?: VisibilityEntryProps[];
449
+ /** Timeline controlling color. */
450
+ color?: ColorEntryProps[];
451
+ /** Timeline controlling position and orientation. */
452
+ transform?: TransformEntryProps[];
453
+ /** Timeline controlling clipping. */
454
+ cuttingPlane?: CuttingPlaneEntryProps[];
455
+ /** Append a new [[RenderSchedule.VisibilityEntry]] to the timeline. `time` must be more recent than any previously-appended visibility entries. */
456
+ addVisibility(time: number, visibility: number | undefined, interpolation?: Interpolation): void;
457
+ /** Append a new [[RenderSchedule.ColorEntry]] to the timeline. `time` must be more recent than any previously-appended color entries. */
458
+ addColor(time: number, color: RgbColor | {
459
+ red: number;
460
+ green: number;
461
+ blue: number;
462
+ } | undefined, interpolation?: Interpolation): void;
463
+ /** Append a new [[RenderSchedule.CuttingPlaneEntry]] to the timeline. `time` must be more recent than any previously-appended cutting plane entries. */
464
+ addCuttingPlane(time: number, plane: {
465
+ position: XYAndZ;
466
+ direction: XYAndZ;
467
+ visible?: boolean;
468
+ hidden?: boolean;
469
+ } | undefined, interpolation?: Interpolation): void;
470
+ /** Append a new [[RenderSchedule.TransformEntry]] to the timeline. `time` must be more recent than any previously-appended transform entries. */
471
+ addTransform(time: number, transform: Readonly<Transform> | undefined, components?: {
472
+ pivot: XYAndZ;
473
+ orientation: Point4d;
474
+ position: XYAndZ;
475
+ }, interpolation?: Interpolation): void;
476
+ /** Obtain the JSON representation of the [[RenderSchedule.Timeline]] produced by this builder.
477
+ * @see [[RenderSchedule.ScriptBuilder.finish]] to obtain the JSON for the entire [[RenderSchedule.Script]].
478
+ */
479
+ finish(): TimelineProps;
480
+ }
481
+ /** As part of a [[RenderSchedule.ScriptBuilder]], assembles a [[RenderSchedule.ElementTimeline]].
482
+ * @see [[RenderSchedule.ModelTimelineBuilder.addElementTimeline]].
483
+ */
484
+ class ElementTimelineBuilder extends TimelineBuilder {
485
+ /** A positive integer that uniquely identifies this timeline among all element timelines in the [[RenderSchedule.Script]].
486
+ * [[RenderSchedule.ScriptBuilder]] ensures each ElementTimelineBuilder receives a unique batch Id.
487
+ */
488
+ readonly batchId: number;
489
+ /** The compressed set of Ids of the elements affected by this timeline. */
490
+ readonly elementIds: CompressedId64Set;
491
+ /** Constructor - typically not used directly.
492
+ * @see [[RenderSchedule.ModelTimelineBuilder.addElementTimeline]] to create an ElementTimelineBuilder.
493
+ */
494
+ constructor(batchId: number, elementIds: CompressedId64Set);
495
+ /** Obtain the JSON representation of the [[RenderSchedule.ElementTimeline]] produced by this builder.
496
+ * @see [[RenderSchedule.ScriptBuilder.finish]] to obtain the JSON for the entire [[RenderSchedule.Script]].
497
+ */
498
+ finish(): ElementTimelineProps;
499
+ }
500
+ /** As part of a [[RenderSchedule.ScriptBuilder, assembles a [[RenderSchedule.ModelTimeline]].
501
+ * @see [[RenderSchedule.ScriptBuilder.addModelTimeline]].
502
+ */
503
+ class ModelTimelineBuilder extends TimelineBuilder {
504
+ /** The Id of the model affected by this timeline. */
505
+ readonly modelId: Id64String;
506
+ /** @internal */
507
+ realityModelUrl?: string;
508
+ private readonly _obtainNextBatchId;
509
+ private readonly _elements;
510
+ /** Constructor - typically not used directly.
511
+ * @see [[RenderSchedule.ScriptBuilder.addModelTimeline]] to create a ModelTimelineBuilder.
512
+ */
513
+ constructor(modelId: Id64String, obtainNextBatchId: () => number);
514
+ /** Add a new [[RenderSchedule.ElementTimeline]] to be applied to the specified elements.
515
+ * This function will sort and compress the Ids if they are not already compressed.
516
+ *
517
+ */
518
+ addElementTimeline(elementIds: CompressedId64Set | Iterable<Id64String>): ElementTimelineBuilder;
519
+ /** Obtain the JSON representation of the [[RenderSchedule.ModelTimeline]] produced by this builder.
520
+ * @see [[RenderSchedule.ScriptBuilder.finish]] to obtain the JSON for the entire [[RenderSchedule.Script]].
521
+ */
522
+ finish(): ModelTimelineProps;
523
+ }
524
+ /** Assembles the JSON representation for a new [[RenderSchedule.Script]]. Ensure that entries on any given element timeline are added chronologically. As an extremely simple example, the following code produces a script that changes the color of a single element:
525
+ * ```ts
526
+ * const script = new ScriptBuilder();
527
+ * const model = script.addModelTimeline("0x123");
528
+ * const element = model.addElementTimeline([ "0x456" ]);
529
+ * element.addColor(Date.now(), new RgbColor(0xff, 0x7f, 0));
530
+ * const scriptProps = script.finish();
531
+ * ```
532
+ */
533
+ class ScriptBuilder {
534
+ private _nextBatchId;
535
+ private readonly _models;
536
+ /** Add a new [[RenderSchedule.ModelTimeline]] to be applied to the specified model. */
537
+ addModelTimeline(modelId: Id64String): ModelTimelineBuilder;
538
+ /** Obtain the JSON representation of the [[RenderSchedule.Script]] produced by this builder.
539
+ * @see [RenderTimeline.scriptProps]($backend) to assign the new script to a RenderTimeline element.
540
+ */
541
+ finish(): ScriptProps;
542
+ }
543
+ }
541
544
  //# sourceMappingURL=RenderSchedule.d.ts.map