@itwin/core-common 4.0.0-dev.8 → 4.0.0-dev.80

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 +52 -1
  2. package/lib/cjs/AmbientOcclusion.d.ts +49 -49
  3. package/lib/cjs/AmbientOcclusion.js +55 -55
  4. package/lib/cjs/AnalysisStyle.d.ts +134 -134
  5. package/lib/cjs/AnalysisStyle.js +165 -165
  6. package/lib/cjs/AnalysisStyle.js.map +1 -1
  7. package/lib/cjs/Atmosphere.d.ts +99 -0
  8. package/lib/cjs/Atmosphere.d.ts.map +1 -0
  9. package/lib/cjs/Atmosphere.js +134 -0
  10. package/lib/cjs/Atmosphere.js.map +1 -0
  11. package/lib/cjs/AuthorizationClient.d.ts +17 -17
  12. package/lib/cjs/AuthorizationClient.js +9 -9
  13. package/lib/cjs/BackendTypes.d.ts +13 -12
  14. package/lib/cjs/BackendTypes.d.ts.map +1 -1
  15. package/lib/cjs/BackendTypes.js +9 -9
  16. package/lib/cjs/BackendTypes.js.map +1 -1
  17. package/lib/cjs/BackgroundMapProvider.d.ts +51 -51
  18. package/lib/cjs/BackgroundMapProvider.d.ts.map +1 -1
  19. package/lib/cjs/BackgroundMapProvider.js +67 -68
  20. package/lib/cjs/BackgroundMapProvider.js.map +1 -1
  21. package/lib/cjs/BackgroundMapSettings.d.ts +136 -136
  22. package/lib/cjs/BackgroundMapSettings.d.ts.map +1 -1
  23. package/lib/cjs/BackgroundMapSettings.js +154 -156
  24. package/lib/cjs/BackgroundMapSettings.js.map +1 -1
  25. package/lib/cjs/Base64EncodedString.d.ts +32 -32
  26. package/lib/cjs/Base64EncodedString.d.ts.map +1 -1
  27. package/lib/cjs/Base64EncodedString.js +66 -66
  28. package/lib/cjs/Base64EncodedString.js.map +1 -1
  29. package/lib/cjs/BlobReader.d.ts +31 -31
  30. package/lib/cjs/BlobReader.js +84 -84
  31. package/lib/cjs/BriefcaseTypes.d.ts +191 -189
  32. package/lib/cjs/BriefcaseTypes.d.ts.map +1 -1
  33. package/lib/cjs/BriefcaseTypes.js +95 -95
  34. package/lib/cjs/BriefcaseTypes.js.map +1 -1
  35. package/lib/cjs/Camera.d.ts +42 -42
  36. package/lib/cjs/Camera.js +62 -62
  37. package/lib/cjs/Camera.js.map +1 -1
  38. package/lib/cjs/ChangedElements.d.ts +85 -85
  39. package/lib/cjs/ChangedElements.js +23 -23
  40. package/lib/cjs/ChangedEntities.d.ts +45 -45
  41. package/lib/cjs/ChangedEntities.d.ts.map +1 -1
  42. package/lib/cjs/ChangedEntities.js +9 -9
  43. package/lib/cjs/ChangesetProps.d.ts +98 -98
  44. package/lib/cjs/ChangesetProps.d.ts.map +1 -1
  45. package/lib/cjs/ChangesetProps.js +22 -22
  46. package/lib/cjs/ClipStyle.d.ts +89 -89
  47. package/lib/cjs/ClipStyle.js +121 -123
  48. package/lib/cjs/ClipStyle.js.map +1 -1
  49. package/lib/cjs/Code.d.ts +277 -277
  50. package/lib/cjs/Code.d.ts.map +1 -1
  51. package/lib/cjs/Code.js +268 -269
  52. package/lib/cjs/Code.js.map +1 -1
  53. package/lib/cjs/ColorByName.d.ts +161 -161
  54. package/lib/cjs/ColorByName.js +169 -169
  55. package/lib/cjs/ColorDef.d.ts +210 -208
  56. package/lib/cjs/ColorDef.d.ts.map +1 -1
  57. package/lib/cjs/ColorDef.js +572 -571
  58. package/lib/cjs/ColorDef.js.map +1 -1
  59. package/lib/cjs/CommonLoggerCategory.d.ts +18 -18
  60. package/lib/cjs/CommonLoggerCategory.js +26 -26
  61. package/lib/cjs/ConcurrentQuery.d.ts +421 -421
  62. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  63. package/lib/cjs/ConcurrentQuery.js +552 -552
  64. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  65. package/lib/cjs/ContextRealityModel.d.ts +303 -303
  66. package/lib/cjs/ContextRealityModel.js +371 -373
  67. package/lib/cjs/ContextRealityModel.js.map +1 -1
  68. package/lib/cjs/DisplayStyleSettings.d.ts +593 -588
  69. package/lib/cjs/DisplayStyleSettings.d.ts.map +1 -1
  70. package/lib/cjs/DisplayStyleSettings.js +990 -985
  71. package/lib/cjs/DisplayStyleSettings.js.map +1 -1
  72. package/lib/cjs/ECSchemaProps.d.ts +39 -39
  73. package/lib/cjs/ECSchemaProps.js +9 -9
  74. package/lib/cjs/ECSqlReader.d.ts +72 -70
  75. package/lib/cjs/ECSqlReader.d.ts.map +1 -1
  76. package/lib/cjs/ECSqlReader.js +297 -280
  77. package/lib/cjs/ECSqlReader.js.map +1 -1
  78. package/lib/cjs/ECSqlTypes.d.ts +128 -128
  79. package/lib/cjs/ECSqlTypes.js +189 -189
  80. package/lib/cjs/ElementMesh.d.ts +39 -39
  81. package/lib/cjs/ElementMesh.js +56 -56
  82. package/lib/cjs/ElementProps.d.ts +483 -483
  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/EntityProps.d.ts +177 -177
  89. package/lib/cjs/EntityProps.d.ts.map +1 -1
  90. package/lib/cjs/EntityProps.js +113 -113
  91. package/lib/cjs/EntityReference.d.ts +51 -51
  92. package/lib/cjs/EntityReference.d.ts.map +1 -1
  93. package/lib/cjs/EntityReference.js +56 -56
  94. package/lib/cjs/Environment.d.ts +74 -61
  95. package/lib/cjs/Environment.d.ts.map +1 -1
  96. package/lib/cjs/Environment.js +78 -73
  97. package/lib/cjs/Environment.js.map +1 -1
  98. package/lib/cjs/FeatureIndex.d.ts +39 -39
  99. package/lib/cjs/FeatureIndex.js +63 -63
  100. package/lib/cjs/FeatureIndex.js.map +1 -1
  101. package/lib/cjs/FeatureSymbology.d.ts +449 -444
  102. package/lib/cjs/FeatureSymbology.d.ts.map +1 -1
  103. package/lib/cjs/FeatureSymbology.js +618 -614
  104. package/lib/cjs/FeatureSymbology.js.map +1 -1
  105. package/lib/cjs/FeatureTable.d.ts +248 -141
  106. package/lib/cjs/FeatureTable.d.ts.map +1 -1
  107. package/lib/cjs/FeatureTable.js +470 -278
  108. package/lib/cjs/FeatureTable.js.map +1 -1
  109. package/lib/cjs/Fonts.d.ts +51 -51
  110. package/lib/cjs/Fonts.d.ts.map +1 -1
  111. package/lib/cjs/Fonts.js +53 -53
  112. package/lib/cjs/Frustum.d.ts +114 -114
  113. package/lib/cjs/Frustum.js +292 -292
  114. package/lib/cjs/GeoCoordinateServices.d.ts +123 -119
  115. package/lib/cjs/GeoCoordinateServices.d.ts.map +1 -1
  116. package/lib/cjs/GeoCoordinateServices.js +81 -80
  117. package/lib/cjs/GeoCoordinateServices.js.map +1 -1
  118. package/lib/cjs/GeometryContainment.d.ts +28 -28
  119. package/lib/cjs/GeometryContainment.js +9 -9
  120. package/lib/cjs/GeometryParams.d.ts +130 -130
  121. package/lib/cjs/GeometryParams.js +174 -174
  122. package/lib/cjs/GeometrySummary.d.ts +45 -45
  123. package/lib/cjs/GeometrySummary.js +23 -23
  124. package/lib/cjs/Gradient.d.ts +139 -139
  125. package/lib/cjs/Gradient.js +453 -455
  126. package/lib/cjs/Gradient.js.map +1 -1
  127. package/lib/cjs/GraphicParams.d.ts +58 -58
  128. package/lib/cjs/GraphicParams.js +85 -85
  129. package/lib/cjs/GraphicParams.js.map +1 -1
  130. package/lib/cjs/GroundPlane.d.ts +52 -52
  131. package/lib/cjs/GroundPlane.d.ts.map +1 -1
  132. package/lib/cjs/GroundPlane.js +63 -64
  133. package/lib/cjs/GroundPlane.js.map +1 -1
  134. package/lib/cjs/HSLColor.d.ts +20 -20
  135. package/lib/cjs/HSLColor.js +32 -32
  136. package/lib/cjs/HSLColor.js.map +1 -1
  137. package/lib/cjs/HSVColor.d.ts +30 -30
  138. package/lib/cjs/HSVColor.js +59 -59
  139. package/lib/cjs/HSVColor.js.map +1 -1
  140. package/lib/cjs/HiddenLine.d.ts +97 -97
  141. package/lib/cjs/HiddenLine.js +160 -162
  142. package/lib/cjs/HiddenLine.js.map +1 -1
  143. package/lib/cjs/Hilite.d.ts +50 -50
  144. package/lib/cjs/Hilite.js +64 -64
  145. package/lib/cjs/Hilite.js.map +1 -1
  146. package/lib/cjs/IModel.d.ts +358 -359
  147. package/lib/cjs/IModel.d.ts.map +1 -1
  148. package/lib/cjs/IModel.js +347 -347
  149. package/lib/cjs/IModel.js.map +1 -1
  150. package/lib/cjs/IModelError.d.ts +42 -42
  151. package/lib/cjs/IModelError.d.ts.map +1 -1
  152. package/lib/cjs/IModelError.js +71 -71
  153. package/lib/cjs/IModelVersion.d.ts +68 -68
  154. package/lib/cjs/IModelVersion.d.ts.map +1 -1
  155. package/lib/cjs/IModelVersion.js +79 -79
  156. package/lib/cjs/Image.d.ts +86 -86
  157. package/lib/cjs/Image.js +128 -128
  158. package/lib/cjs/Image.js.map +1 -1
  159. package/lib/cjs/IpcAppProps.d.ts +141 -141
  160. package/lib/cjs/IpcAppProps.js +23 -23
  161. package/lib/cjs/LightSettings.d.ts +224 -224
  162. package/lib/cjs/LightSettings.js +304 -309
  163. package/lib/cjs/LightSettings.js.map +1 -1
  164. package/lib/cjs/LinePixels.d.ts +34 -34
  165. package/lib/cjs/LinePixels.js +42 -42
  166. package/lib/cjs/Localization.d.ts +117 -113
  167. package/lib/cjs/Localization.d.ts.map +1 -1
  168. package/lib/cjs/Localization.js +33 -33
  169. package/lib/cjs/Localization.js.map +1 -1
  170. package/lib/cjs/MapImagerySettings.d.ts +62 -62
  171. package/lib/cjs/MapImagerySettings.d.ts.map +1 -1
  172. package/lib/cjs/MapImagerySettings.js +80 -80
  173. package/lib/cjs/MapImagerySettings.js.map +1 -1
  174. package/lib/cjs/MapLayerSettings.d.ts +272 -272
  175. package/lib/cjs/MapLayerSettings.d.ts.map +1 -1
  176. package/lib/cjs/MapLayerSettings.js +407 -411
  177. package/lib/cjs/MapLayerSettings.js.map +1 -1
  178. package/lib/cjs/MassProperties.d.ts +64 -64
  179. package/lib/cjs/MassProperties.js +23 -23
  180. package/lib/cjs/MaterialProps.d.ts +153 -153
  181. package/lib/cjs/MaterialProps.d.ts.map +1 -1
  182. package/lib/cjs/MaterialProps.js +35 -35
  183. package/lib/cjs/ModelClipGroup.d.ts +67 -67
  184. package/lib/cjs/ModelClipGroup.js +96 -98
  185. package/lib/cjs/ModelClipGroup.js.map +1 -1
  186. package/lib/cjs/ModelGeometryChanges.d.ts +107 -107
  187. package/lib/cjs/ModelGeometryChanges.d.ts.map +1 -1
  188. package/lib/cjs/ModelGeometryChanges.js +83 -83
  189. package/lib/cjs/ModelProps.d.ts +67 -67
  190. package/lib/cjs/ModelProps.js +9 -9
  191. package/lib/cjs/NativeAppProps.d.ts +122 -122
  192. package/lib/cjs/NativeAppProps.d.ts.map +1 -1
  193. package/lib/cjs/NativeAppProps.js +30 -30
  194. package/lib/cjs/OctEncodedNormal.d.ts +33 -33
  195. package/lib/cjs/OctEncodedNormal.js +98 -98
  196. package/lib/cjs/PlanProjectionSettings.d.ts +47 -47
  197. package/lib/cjs/PlanProjectionSettings.js +63 -63
  198. package/lib/cjs/PlanProjectionSettings.js.map +1 -1
  199. package/lib/cjs/PlanarClipMask.d.ts +177 -177
  200. package/lib/cjs/PlanarClipMask.js +136 -136
  201. package/lib/cjs/PlanarClipMask.js.map +1 -1
  202. package/lib/cjs/QPoint.d.ts +479 -479
  203. package/lib/cjs/QPoint.js +824 -826
  204. package/lib/cjs/QPoint.js.map +1 -1
  205. package/lib/cjs/RealityDataAccessProps.d.ts +41 -41
  206. package/lib/cjs/RealityDataAccessProps.js +19 -19
  207. package/lib/cjs/RealityModelDisplaySettings.d.ts +183 -183
  208. package/lib/cjs/RealityModelDisplaySettings.d.ts.map +1 -1
  209. package/lib/cjs/RealityModelDisplaySettings.js +141 -142
  210. package/lib/cjs/RealityModelDisplaySettings.js.map +1 -1
  211. package/lib/cjs/Render.d.ts +89 -89
  212. package/lib/cjs/Render.js +177 -177
  213. package/lib/cjs/RenderMaterial.d.ts +58 -58
  214. package/lib/cjs/RenderMaterial.js +75 -76
  215. package/lib/cjs/RenderMaterial.js.map +1 -1
  216. package/lib/cjs/RenderSchedule.d.ts +543 -543
  217. package/lib/cjs/RenderSchedule.js +992 -1002
  218. package/lib/cjs/RenderSchedule.js.map +1 -1
  219. package/lib/cjs/RenderTexture.d.ts +70 -70
  220. package/lib/cjs/RenderTexture.d.ts.map +1 -1
  221. package/lib/cjs/RenderTexture.js +59 -59
  222. package/lib/cjs/RenderTexture.js.map +1 -1
  223. package/lib/cjs/RgbColor.d.ts +47 -47
  224. package/lib/cjs/RgbColor.js +77 -77
  225. package/lib/cjs/RpcInterface.d.ts +40 -33
  226. package/lib/cjs/RpcInterface.d.ts.map +1 -1
  227. package/lib/cjs/RpcInterface.js +137 -137
  228. package/lib/cjs/RpcInterface.js.map +1 -1
  229. package/lib/cjs/RpcManager.d.ts +40 -40
  230. package/lib/cjs/RpcManager.js +55 -55
  231. package/lib/cjs/RpcManager.js.map +1 -1
  232. package/lib/cjs/SessionProps.d.ts +16 -16
  233. package/lib/cjs/SessionProps.js +9 -9
  234. package/lib/cjs/SkyBox.d.ts +217 -215
  235. package/lib/cjs/SkyBox.d.ts.map +1 -1
  236. package/lib/cjs/SkyBox.js +209 -210
  237. package/lib/cjs/SkyBox.js.map +1 -1
  238. package/lib/cjs/Snapping.d.ts +49 -49
  239. package/lib/cjs/Snapping.js +9 -9
  240. package/lib/cjs/SolarCalculate.d.ts +27 -27
  241. package/lib/cjs/SolarCalculate.js +211 -211
  242. package/lib/cjs/SolarShadows.d.ts +35 -35
  243. package/lib/cjs/SolarShadows.js +61 -62
  244. package/lib/cjs/SolarShadows.js.map +1 -1
  245. package/lib/cjs/SpatialClassification.d.ts +208 -208
  246. package/lib/cjs/SpatialClassification.js +339 -340
  247. package/lib/cjs/SpatialClassification.js.map +1 -1
  248. package/lib/cjs/SubCategoryAppearance.d.ts +91 -91
  249. package/lib/cjs/SubCategoryAppearance.js +96 -96
  250. package/lib/cjs/SubCategoryAppearance.js.map +1 -1
  251. package/lib/cjs/SubCategoryOverride.d.ts +46 -46
  252. package/lib/cjs/SubCategoryOverride.js +104 -104
  253. package/lib/cjs/SubCategoryOverride.js.map +1 -1
  254. package/lib/cjs/TerrainSettings.d.ts +82 -82
  255. package/lib/cjs/TerrainSettings.d.ts.map +1 -1
  256. package/lib/cjs/TerrainSettings.js +100 -102
  257. package/lib/cjs/TerrainSettings.js.map +1 -1
  258. package/lib/cjs/TextureMapping.d.ts +151 -118
  259. package/lib/cjs/TextureMapping.d.ts.map +1 -1
  260. package/lib/cjs/TextureMapping.js +180 -174
  261. package/lib/cjs/TextureMapping.js.map +1 -1
  262. package/lib/cjs/TextureProps.d.ts +65 -65
  263. package/lib/cjs/TextureProps.js +28 -28
  264. package/lib/cjs/ThematicDisplay.d.ts +230 -230
  265. package/lib/cjs/ThematicDisplay.js +343 -344
  266. package/lib/cjs/ThematicDisplay.js.map +1 -1
  267. package/lib/cjs/Thumbnail.d.ts +26 -26
  268. package/lib/cjs/Thumbnail.js +9 -9
  269. package/lib/cjs/TileProps.d.ts +88 -82
  270. package/lib/cjs/TileProps.d.ts.map +1 -1
  271. package/lib/cjs/TileProps.js +29 -29
  272. package/lib/cjs/TileProps.js.map +1 -1
  273. package/lib/cjs/Tween.d.ts +191 -191
  274. package/lib/cjs/Tween.d.ts.map +1 -1
  275. package/lib/cjs/Tween.js +570 -570
  276. package/lib/cjs/TxnAction.d.ts +21 -21
  277. package/lib/cjs/TxnAction.js +29 -29
  278. package/lib/cjs/ViewDetails.d.ts +125 -125
  279. package/lib/cjs/ViewDetails.js +166 -166
  280. package/lib/cjs/ViewDetails.js.map +1 -1
  281. package/lib/cjs/ViewFlags.d.ts +287 -287
  282. package/lib/cjs/ViewFlags.d.ts.map +1 -1
  283. package/lib/cjs/ViewFlags.js +367 -368
  284. package/lib/cjs/ViewFlags.js.map +1 -1
  285. package/lib/cjs/ViewProps.d.ts +205 -205
  286. package/lib/cjs/ViewProps.js +9 -9
  287. package/lib/cjs/WhiteOnWhiteReversalSettings.d.ts +36 -36
  288. package/lib/cjs/WhiteOnWhiteReversalSettings.js +37 -37
  289. package/lib/cjs/WhiteOnWhiteReversalSettings.js.map +1 -1
  290. package/lib/cjs/core-common.d.ts +244 -244
  291. package/lib/cjs/core-common.d.ts.map +1 -1
  292. package/lib/cjs/core-common.js +264 -260
  293. package/lib/cjs/core-common.js.map +1 -1
  294. package/lib/cjs/domains/FunctionalElementProps.d.ts +11 -11
  295. package/lib/cjs/domains/FunctionalElementProps.js +9 -9
  296. package/lib/cjs/domains/GenericElementProps.d.ts +18 -18
  297. package/lib/cjs/domains/GenericElementProps.js +9 -9
  298. package/lib/cjs/geometry/AdditionalTransform.d.ts +84 -84
  299. package/lib/cjs/geometry/AdditionalTransform.js +85 -85
  300. package/lib/cjs/geometry/AreaPattern.d.ts +82 -82
  301. package/lib/cjs/geometry/AreaPattern.js +203 -204
  302. package/lib/cjs/geometry/AreaPattern.js.map +1 -1
  303. package/lib/cjs/geometry/BoundingSphere.d.ts +27 -27
  304. package/lib/cjs/geometry/BoundingSphere.js +44 -44
  305. package/lib/cjs/geometry/BoundingSphere.js.map +1 -1
  306. package/lib/cjs/geometry/Cartographic.d.ts +137 -137
  307. package/lib/cjs/geometry/Cartographic.js +345 -345
  308. package/lib/cjs/geometry/Cartographic.js.map +1 -1
  309. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts +269 -269
  310. package/lib/cjs/geometry/CoordinateReferenceSystem.d.ts.map +1 -1
  311. package/lib/cjs/geometry/CoordinateReferenceSystem.js +260 -261
  312. package/lib/cjs/geometry/CoordinateReferenceSystem.js.map +1 -1
  313. package/lib/cjs/geometry/ElementGeometry.d.ts +402 -402
  314. package/lib/cjs/geometry/ElementGeometry.d.ts.map +1 -1
  315. package/lib/cjs/geometry/ElementGeometry.js +1719 -1719
  316. package/lib/cjs/geometry/ElementGeometry.js.map +1 -1
  317. package/lib/cjs/geometry/ElementGeometryFB.d.ts +2372 -2372
  318. package/lib/cjs/geometry/ElementGeometryFB.js +3814 -3814
  319. package/lib/cjs/geometry/ElementGeometryFB.js.map +1 -1
  320. package/lib/cjs/geometry/FrustumPlanes.d.ts +83 -81
  321. package/lib/cjs/geometry/FrustumPlanes.d.ts.map +1 -1
  322. package/lib/cjs/geometry/FrustumPlanes.js +227 -193
  323. package/lib/cjs/geometry/FrustumPlanes.js.map +1 -1
  324. package/lib/cjs/geometry/GeodeticDatum.d.ts +409 -409
  325. package/lib/cjs/geometry/GeodeticDatum.d.ts.map +1 -1
  326. package/lib/cjs/geometry/GeodeticDatum.js +400 -401
  327. package/lib/cjs/geometry/GeodeticDatum.js.map +1 -1
  328. package/lib/cjs/geometry/GeodeticEllipsoid.d.ts +72 -72
  329. package/lib/cjs/geometry/GeodeticEllipsoid.js +71 -72
  330. package/lib/cjs/geometry/GeodeticEllipsoid.js.map +1 -1
  331. package/lib/cjs/geometry/GeometryStream.d.ts +347 -347
  332. package/lib/cjs/geometry/GeometryStream.d.ts.map +1 -1
  333. package/lib/cjs/geometry/GeometryStream.js +468 -469
  334. package/lib/cjs/geometry/GeometryStream.js.map +1 -1
  335. package/lib/cjs/geometry/ImageGraphic.d.ts +74 -74
  336. package/lib/cjs/geometry/ImageGraphic.d.ts.map +1 -1
  337. package/lib/cjs/geometry/ImageGraphic.js +98 -98
  338. package/lib/cjs/geometry/LineStyle.d.ts +71 -71
  339. package/lib/cjs/geometry/LineStyle.js +129 -129
  340. package/lib/cjs/geometry/Placement.d.ts +95 -95
  341. package/lib/cjs/geometry/Placement.d.ts.map +1 -1
  342. package/lib/cjs/geometry/Placement.js +131 -131
  343. package/lib/cjs/geometry/Projection.d.ts +251 -251
  344. package/lib/cjs/geometry/Projection.d.ts.map +1 -1
  345. package/lib/cjs/geometry/Projection.js +198 -198
  346. package/lib/cjs/geometry/Projection.js.map +1 -1
  347. package/lib/cjs/geometry/TextString.d.ts +55 -55
  348. package/lib/cjs/geometry/TextString.js +65 -65
  349. package/lib/cjs/geometry/TextString.js.map +1 -1
  350. package/lib/cjs/ipc/IpcSession.d.ts +23 -23
  351. package/lib/cjs/ipc/IpcSession.js +27 -27
  352. package/lib/cjs/ipc/IpcSocket.d.ts +96 -96
  353. package/lib/cjs/ipc/IpcSocket.d.ts.map +1 -1
  354. package/lib/cjs/ipc/IpcSocket.js +16 -16
  355. package/lib/cjs/ipc/IpcWebSocket.d.ts +60 -61
  356. package/lib/cjs/ipc/IpcWebSocket.d.ts.map +1 -1
  357. package/lib/cjs/ipc/IpcWebSocket.js +148 -151
  358. package/lib/cjs/ipc/IpcWebSocket.js.map +1 -1
  359. package/lib/cjs/ipc/IpcWebSocketTransport.d.ts +15 -15
  360. package/lib/cjs/ipc/IpcWebSocketTransport.js +160 -160
  361. package/lib/cjs/ipc/IpcWebSocketTransport.js.map +1 -1
  362. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts +32 -32
  363. package/lib/cjs/rpc/DevToolsRpcInterface.d.ts.map +1 -1
  364. package/lib/cjs/rpc/DevToolsRpcInterface.js +52 -48
  365. package/lib/cjs/rpc/DevToolsRpcInterface.js.map +1 -1
  366. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts +99 -99
  367. package/lib/cjs/rpc/IModelReadRpcInterface.d.ts.map +1 -1
  368. package/lib/cjs/rpc/IModelReadRpcInterface.js +122 -122
  369. package/lib/cjs/rpc/IModelReadRpcInterface.js.map +1 -1
  370. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts +49 -61
  371. package/lib/cjs/rpc/IModelTileRpcInterface.d.ts.map +1 -1
  372. package/lib/cjs/rpc/IModelTileRpcInterface.js +79 -96
  373. package/lib/cjs/rpc/IModelTileRpcInterface.js.map +1 -1
  374. package/lib/cjs/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  375. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js +48 -48
  376. package/lib/cjs/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  377. package/lib/cjs/rpc/TestRpcManager.d.ts +20 -20
  378. package/lib/cjs/rpc/TestRpcManager.js +40 -40
  379. package/lib/cjs/rpc/WipRpcInterface.d.ts +29 -29
  380. package/lib/cjs/rpc/WipRpcInterface.js +40 -40
  381. package/lib/cjs/rpc/WipRpcInterface.js.map +1 -1
  382. package/lib/cjs/rpc/core/RpcConfiguration.d.ts +111 -111
  383. package/lib/cjs/rpc/core/RpcConfiguration.d.ts.map +1 -1
  384. package/lib/cjs/rpc/core/RpcConfiguration.js +191 -191
  385. package/lib/cjs/rpc/core/RpcConfiguration.js.map +1 -1
  386. package/lib/cjs/rpc/core/RpcConstants.d.ts +90 -90
  387. package/lib/cjs/rpc/core/RpcConstants.js +109 -109
  388. package/lib/cjs/rpc/core/RpcControl.d.ts +54 -54
  389. package/lib/cjs/rpc/core/RpcControl.js +150 -145
  390. package/lib/cjs/rpc/core/RpcControl.js.map +1 -1
  391. package/lib/cjs/rpc/core/RpcInvocation.d.ts +89 -89
  392. package/lib/cjs/rpc/core/RpcInvocation.d.ts.map +1 -1
  393. package/lib/cjs/rpc/core/RpcInvocation.js +256 -258
  394. package/lib/cjs/rpc/core/RpcInvocation.js.map +1 -1
  395. package/lib/cjs/rpc/core/RpcMarshaling.d.ts +35 -35
  396. package/lib/cjs/rpc/core/RpcMarshaling.js +156 -156
  397. package/lib/cjs/rpc/core/RpcOperation.d.ts +67 -67
  398. package/lib/cjs/rpc/core/RpcOperation.d.ts.map +1 -1
  399. package/lib/cjs/rpc/core/RpcOperation.js +135 -134
  400. package/lib/cjs/rpc/core/RpcOperation.js.map +1 -1
  401. package/lib/cjs/rpc/core/RpcPendingQueue.d.ts +21 -21
  402. package/lib/cjs/rpc/core/RpcPendingQueue.js +94 -95
  403. package/lib/cjs/rpc/core/RpcPendingQueue.js.map +1 -1
  404. package/lib/cjs/rpc/core/RpcProtocol.d.ts +132 -132
  405. package/lib/cjs/rpc/core/RpcProtocol.d.ts.map +1 -1
  406. package/lib/cjs/rpc/core/RpcProtocol.js +127 -127
  407. package/lib/cjs/rpc/core/RpcProtocol.js.map +1 -1
  408. package/lib/cjs/rpc/core/RpcPush.d.ts +68 -68
  409. package/lib/cjs/rpc/core/RpcPush.d.ts.map +1 -1
  410. package/lib/cjs/rpc/core/RpcPush.js +127 -127
  411. package/lib/cjs/rpc/core/RpcPush.js.map +1 -1
  412. package/lib/cjs/rpc/core/RpcRegistry.d.ts +48 -48
  413. package/lib/cjs/rpc/core/RpcRegistry.js +198 -199
  414. package/lib/cjs/rpc/core/RpcRegistry.js.map +1 -1
  415. package/lib/cjs/rpc/core/RpcRequest.d.ts +186 -186
  416. package/lib/cjs/rpc/core/RpcRequest.d.ts.map +1 -1
  417. package/lib/cjs/rpc/core/RpcRequest.js +478 -478
  418. package/lib/cjs/rpc/core/RpcRequest.js.map +1 -1
  419. package/lib/cjs/rpc/core/RpcRequestContext.d.ts +14 -14
  420. package/lib/cjs/rpc/core/RpcRequestContext.js +2 -2
  421. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts +12 -12
  422. package/lib/cjs/rpc/core/RpcRoutingToken.d.ts.map +1 -1
  423. package/lib/cjs/rpc/core/RpcRoutingToken.js +24 -24
  424. package/lib/cjs/rpc/core/RpcRoutingToken.js.map +1 -1
  425. package/lib/cjs/rpc/core/RpcSessionInvocation.d.ts +10 -10
  426. package/lib/cjs/rpc/core/RpcSessionInvocation.js +60 -60
  427. package/lib/cjs/rpc/core/RpcSessionInvocation.js.map +1 -1
  428. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts +48 -46
  429. package/lib/cjs/rpc/web/BentleyCloudRpcManager.d.ts.map +1 -1
  430. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js +76 -73
  431. package/lib/cjs/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  432. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  433. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js +141 -143
  434. package/lib/cjs/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  435. package/lib/cjs/rpc/web/OpenAPI.d.ts +140 -140
  436. package/lib/cjs/rpc/web/OpenAPI.js +60 -60
  437. package/lib/cjs/rpc/web/OpenAPI.js.map +1 -1
  438. package/lib/cjs/rpc/web/RpcMultipart.d.ts +35 -35
  439. package/lib/cjs/rpc/web/RpcMultipart.js +50 -50
  440. package/lib/cjs/rpc/web/RpcMultipart.js.map +1 -1
  441. package/lib/cjs/rpc/web/WebAppRpcLogging.d.ts +28 -28
  442. package/lib/cjs/rpc/web/WebAppRpcLogging.js +140 -140
  443. package/lib/cjs/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  444. package/lib/cjs/rpc/web/WebAppRpcProtocol.js +116 -116
  445. package/lib/cjs/rpc/web/WebAppRpcProtocol.js.map +1 -1
  446. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts +67 -67
  447. package/lib/cjs/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  448. package/lib/cjs/rpc/web/WebAppRpcRequest.js +239 -239
  449. package/lib/cjs/rpc/web/WebAppRpcRequest.js.map +1 -1
  450. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  451. package/lib/cjs/rpc/web/multipart/RpcMultipartParser.js +373 -373
  452. package/lib/cjs/tile/B3dmTileIO.d.ts +19 -19
  453. package/lib/cjs/tile/B3dmTileIO.js +66 -66
  454. package/lib/cjs/tile/B3dmTileIO.js.map +1 -1
  455. package/lib/cjs/tile/CompositeTileIO.d.ts +15 -15
  456. package/lib/cjs/tile/CompositeTileIO.js +26 -26
  457. package/lib/cjs/tile/CompositeTileIO.js.map +1 -1
  458. package/lib/cjs/tile/ElementGraphics.d.ts +145 -145
  459. package/lib/cjs/tile/ElementGraphics.d.ts.map +1 -1
  460. package/lib/cjs/tile/ElementGraphics.js +9 -9
  461. package/lib/cjs/tile/GltfTileIO.d.ts +45 -45
  462. package/lib/cjs/tile/GltfTileIO.d.ts.map +1 -1
  463. package/lib/cjs/tile/GltfTileIO.js +109 -109
  464. package/lib/cjs/tile/GltfTileIO.js.map +1 -1
  465. package/lib/cjs/tile/I3dmTileIO.d.ts +20 -20
  466. package/lib/cjs/tile/I3dmTileIO.js +40 -40
  467. package/lib/cjs/tile/I3dmTileIO.js.map +1 -1
  468. package/lib/cjs/tile/IModelTileIO.d.ts +77 -75
  469. package/lib/cjs/tile/IModelTileIO.d.ts.map +1 -1
  470. package/lib/cjs/tile/IModelTileIO.js +97 -95
  471. package/lib/cjs/tile/IModelTileIO.js.map +1 -1
  472. package/lib/cjs/tile/PntsTileIO.d.ts +17 -17
  473. package/lib/cjs/tile/PntsTileIO.js +26 -26
  474. package/lib/cjs/tile/PntsTileIO.js.map +1 -1
  475. package/lib/cjs/tile/TileIO.d.ts +66 -66
  476. package/lib/cjs/tile/TileIO.js +118 -118
  477. package/lib/cjs/tile/TileMetadata.d.ts +228 -228
  478. package/lib/cjs/tile/TileMetadata.d.ts.map +1 -1
  479. package/lib/cjs/tile/TileMetadata.js +675 -676
  480. package/lib/cjs/tile/TileMetadata.js.map +1 -1
  481. package/lib/cjs/tile/Tileset3dSchema.d.ts +97 -0
  482. package/lib/cjs/tile/Tileset3dSchema.d.ts.map +1 -0
  483. package/lib/cjs/tile/Tileset3dSchema.js +10 -0
  484. package/lib/cjs/tile/Tileset3dSchema.js.map +1 -0
  485. package/lib/esm/AmbientOcclusion.d.ts +49 -49
  486. package/lib/esm/AmbientOcclusion.js +52 -52
  487. package/lib/esm/AnalysisStyle.d.ts +134 -134
  488. package/lib/esm/AnalysisStyle.js +160 -159
  489. package/lib/esm/AnalysisStyle.js.map +1 -1
  490. package/lib/esm/Atmosphere.d.ts +99 -0
  491. package/lib/esm/Atmosphere.d.ts.map +1 -0
  492. package/lib/esm/Atmosphere.js +131 -0
  493. package/lib/esm/Atmosphere.js.map +1 -0
  494. package/lib/esm/AuthorizationClient.d.ts +17 -17
  495. package/lib/esm/AuthorizationClient.js +8 -8
  496. package/lib/esm/BackendTypes.d.ts +13 -12
  497. package/lib/esm/BackendTypes.d.ts.map +1 -1
  498. package/lib/esm/BackendTypes.js +8 -8
  499. package/lib/esm/BackendTypes.js.map +1 -1
  500. package/lib/esm/BackgroundMapProvider.d.ts +51 -51
  501. package/lib/esm/BackgroundMapProvider.d.ts.map +1 -1
  502. package/lib/esm/BackgroundMapProvider.js +63 -64
  503. package/lib/esm/BackgroundMapProvider.js.map +1 -1
  504. package/lib/esm/BackgroundMapSettings.d.ts +136 -136
  505. package/lib/esm/BackgroundMapSettings.d.ts.map +1 -1
  506. package/lib/esm/BackgroundMapSettings.js +150 -152
  507. package/lib/esm/BackgroundMapSettings.js.map +1 -1
  508. package/lib/esm/Base64EncodedString.d.ts +32 -32
  509. package/lib/esm/Base64EncodedString.d.ts.map +1 -1
  510. package/lib/esm/Base64EncodedString.js +63 -63
  511. package/lib/esm/Base64EncodedString.js.map +1 -1
  512. package/lib/esm/BlobReader.d.ts +31 -31
  513. package/lib/esm/BlobReader.js +79 -79
  514. package/lib/esm/BriefcaseTypes.d.ts +191 -189
  515. package/lib/esm/BriefcaseTypes.d.ts.map +1 -1
  516. package/lib/esm/BriefcaseTypes.js +92 -92
  517. package/lib/esm/BriefcaseTypes.js.map +1 -1
  518. package/lib/esm/Camera.d.ts +42 -42
  519. package/lib/esm/Camera.js +58 -58
  520. package/lib/esm/Camera.js.map +1 -1
  521. package/lib/esm/ChangedElements.d.ts +85 -85
  522. package/lib/esm/ChangedElements.js +20 -20
  523. package/lib/esm/ChangedEntities.d.ts +45 -45
  524. package/lib/esm/ChangedEntities.d.ts.map +1 -1
  525. package/lib/esm/ChangedEntities.js +8 -8
  526. package/lib/esm/ChangesetProps.d.ts +98 -98
  527. package/lib/esm/ChangesetProps.d.ts.map +1 -1
  528. package/lib/esm/ChangesetProps.js +19 -19
  529. package/lib/esm/ClipStyle.d.ts +89 -89
  530. package/lib/esm/ClipStyle.js +118 -118
  531. package/lib/esm/ClipStyle.js.map +1 -1
  532. package/lib/esm/Code.d.ts +277 -277
  533. package/lib/esm/Code.d.ts.map +1 -1
  534. package/lib/esm/Code.js +263 -264
  535. package/lib/esm/Code.js.map +1 -1
  536. package/lib/esm/ColorByName.d.ts +161 -161
  537. package/lib/esm/ColorByName.js +166 -166
  538. package/lib/esm/ColorDef.d.ts +210 -208
  539. package/lib/esm/ColorDef.d.ts.map +1 -1
  540. package/lib/esm/ColorDef.js +569 -567
  541. package/lib/esm/ColorDef.js.map +1 -1
  542. package/lib/esm/CommonLoggerCategory.d.ts +18 -18
  543. package/lib/esm/CommonLoggerCategory.js +23 -23
  544. package/lib/esm/ConcurrentQuery.d.ts +421 -421
  545. package/lib/esm/ConcurrentQuery.d.ts.map +1 -1
  546. package/lib/esm/ConcurrentQuery.js +545 -545
  547. package/lib/esm/ConcurrentQuery.js.map +1 -1
  548. package/lib/esm/ContextRealityModel.d.ts +303 -303
  549. package/lib/esm/ContextRealityModel.js +366 -368
  550. package/lib/esm/ContextRealityModel.js.map +1 -1
  551. package/lib/esm/DisplayStyleSettings.d.ts +593 -588
  552. package/lib/esm/DisplayStyleSettings.d.ts.map +1 -1
  553. package/lib/esm/DisplayStyleSettings.js +985 -980
  554. package/lib/esm/DisplayStyleSettings.js.map +1 -1
  555. package/lib/esm/ECSchemaProps.d.ts +39 -39
  556. package/lib/esm/ECSchemaProps.js +8 -8
  557. package/lib/esm/ECSqlReader.d.ts +72 -70
  558. package/lib/esm/ECSqlReader.d.ts.map +1 -1
  559. package/lib/esm/ECSqlReader.js +293 -275
  560. package/lib/esm/ECSqlReader.js.map +1 -1
  561. package/lib/esm/ECSqlTypes.d.ts +128 -128
  562. package/lib/esm/ECSqlTypes.js +185 -185
  563. package/lib/esm/ElementMesh.d.ts +39 -39
  564. package/lib/esm/ElementMesh.js +52 -52
  565. package/lib/esm/ElementProps.d.ts +483 -483
  566. package/lib/esm/ElementProps.d.ts.map +1 -1
  567. package/lib/esm/ElementProps.js +93 -92
  568. package/lib/esm/ElementProps.js.map +1 -1
  569. package/lib/esm/EmphasizeElementsProps.d.ts +55 -55
  570. package/lib/esm/EmphasizeElementsProps.js +22 -22
  571. package/lib/esm/EntityProps.d.ts +177 -177
  572. package/lib/esm/EntityProps.d.ts.map +1 -1
  573. package/lib/esm/EntityProps.js +108 -108
  574. package/lib/esm/EntityReference.d.ts +51 -51
  575. package/lib/esm/EntityReference.d.ts.map +1 -1
  576. package/lib/esm/EntityReference.js +52 -52
  577. package/lib/esm/Environment.d.ts +74 -61
  578. package/lib/esm/Environment.d.ts.map +1 -1
  579. package/lib/esm/Environment.js +75 -69
  580. package/lib/esm/Environment.js.map +1 -1
  581. package/lib/esm/FeatureIndex.d.ts +39 -39
  582. package/lib/esm/FeatureIndex.js +57 -57
  583. package/lib/esm/FeatureIndex.js.map +1 -1
  584. package/lib/esm/FeatureSymbology.d.ts +449 -444
  585. package/lib/esm/FeatureSymbology.d.ts.map +1 -1
  586. package/lib/esm/FeatureSymbology.js +615 -609
  587. package/lib/esm/FeatureSymbology.js.map +1 -1
  588. package/lib/esm/FeatureTable.d.ts +248 -141
  589. package/lib/esm/FeatureTable.d.ts.map +1 -1
  590. package/lib/esm/FeatureTable.js +462 -272
  591. package/lib/esm/FeatureTable.js.map +1 -1
  592. package/lib/esm/Fonts.d.ts +51 -51
  593. package/lib/esm/Fonts.d.ts.map +1 -1
  594. package/lib/esm/Fonts.js +49 -49
  595. package/lib/esm/Frustum.d.ts +114 -114
  596. package/lib/esm/Frustum.js +288 -288
  597. package/lib/esm/GeoCoordinateServices.d.ts +123 -119
  598. package/lib/esm/GeoCoordinateServices.d.ts.map +1 -1
  599. package/lib/esm/GeoCoordinateServices.js +77 -76
  600. package/lib/esm/GeoCoordinateServices.js.map +1 -1
  601. package/lib/esm/GeometryContainment.d.ts +28 -28
  602. package/lib/esm/GeometryContainment.js +8 -8
  603. package/lib/esm/GeometryParams.d.ts +130 -130
  604. package/lib/esm/GeometryParams.js +170 -170
  605. package/lib/esm/GeometrySummary.d.ts +45 -45
  606. package/lib/esm/GeometrySummary.js +20 -20
  607. package/lib/esm/Gradient.d.ts +139 -139
  608. package/lib/esm/Gradient.js +450 -452
  609. package/lib/esm/Gradient.js.map +1 -1
  610. package/lib/esm/GraphicParams.d.ts +58 -58
  611. package/lib/esm/GraphicParams.js +81 -81
  612. package/lib/esm/GraphicParams.js.map +1 -1
  613. package/lib/esm/GroundPlane.d.ts +52 -52
  614. package/lib/esm/GroundPlane.d.ts.map +1 -1
  615. package/lib/esm/GroundPlane.js +60 -60
  616. package/lib/esm/GroundPlane.js.map +1 -1
  617. package/lib/esm/HSLColor.d.ts +20 -20
  618. package/lib/esm/HSLColor.js +28 -28
  619. package/lib/esm/HSLColor.js.map +1 -1
  620. package/lib/esm/HSVColor.d.ts +30 -30
  621. package/lib/esm/HSVColor.js +55 -55
  622. package/lib/esm/HSVColor.js.map +1 -1
  623. package/lib/esm/HiddenLine.d.ts +97 -97
  624. package/lib/esm/HiddenLine.js +157 -159
  625. package/lib/esm/HiddenLine.js.map +1 -1
  626. package/lib/esm/Hilite.d.ts +50 -50
  627. package/lib/esm/Hilite.js +61 -61
  628. package/lib/esm/Hilite.js.map +1 -1
  629. package/lib/esm/IModel.d.ts +358 -359
  630. package/lib/esm/IModel.d.ts.map +1 -1
  631. package/lib/esm/IModel.js +343 -342
  632. package/lib/esm/IModel.js.map +1 -1
  633. package/lib/esm/IModelError.d.ts +42 -42
  634. package/lib/esm/IModelError.d.ts.map +1 -1
  635. package/lib/esm/IModelError.js +56 -56
  636. package/lib/esm/IModelVersion.d.ts +68 -68
  637. package/lib/esm/IModelVersion.d.ts.map +1 -1
  638. package/lib/esm/IModelVersion.js +75 -75
  639. package/lib/esm/Image.d.ts +86 -86
  640. package/lib/esm/Image.js +120 -120
  641. package/lib/esm/Image.js.map +1 -1
  642. package/lib/esm/IpcAppProps.d.ts +141 -141
  643. package/lib/esm/IpcAppProps.js +19 -19
  644. package/lib/esm/LightSettings.d.ts +224 -224
  645. package/lib/esm/LightSettings.js +297 -301
  646. package/lib/esm/LightSettings.js.map +1 -1
  647. package/lib/esm/LinePixels.d.ts +34 -34
  648. package/lib/esm/LinePixels.js +39 -39
  649. package/lib/esm/Localization.d.ts +117 -113
  650. package/lib/esm/Localization.d.ts.map +1 -1
  651. package/lib/esm/Localization.js +29 -29
  652. package/lib/esm/Localization.js.map +1 -1
  653. package/lib/esm/MapImagerySettings.d.ts +62 -62
  654. package/lib/esm/MapImagerySettings.d.ts.map +1 -1
  655. package/lib/esm/MapImagerySettings.js +76 -76
  656. package/lib/esm/MapImagerySettings.js.map +1 -1
  657. package/lib/esm/MapLayerSettings.d.ts +272 -272
  658. package/lib/esm/MapLayerSettings.d.ts.map +1 -1
  659. package/lib/esm/MapLayerSettings.js +399 -403
  660. package/lib/esm/MapLayerSettings.js.map +1 -1
  661. package/lib/esm/MassProperties.d.ts +64 -64
  662. package/lib/esm/MassProperties.js +20 -20
  663. package/lib/esm/MaterialProps.d.ts +153 -153
  664. package/lib/esm/MaterialProps.d.ts.map +1 -1
  665. package/lib/esm/MaterialProps.js +32 -32
  666. package/lib/esm/ModelClipGroup.d.ts +67 -67
  667. package/lib/esm/ModelClipGroup.js +91 -93
  668. package/lib/esm/ModelClipGroup.js.map +1 -1
  669. package/lib/esm/ModelGeometryChanges.d.ts +107 -107
  670. package/lib/esm/ModelGeometryChanges.d.ts.map +1 -1
  671. package/lib/esm/ModelGeometryChanges.js +80 -80
  672. package/lib/esm/ModelProps.d.ts +67 -67
  673. package/lib/esm/ModelProps.js +8 -8
  674. package/lib/esm/NativeAppProps.d.ts +122 -122
  675. package/lib/esm/NativeAppProps.d.ts.map +1 -1
  676. package/lib/esm/NativeAppProps.js +27 -27
  677. package/lib/esm/OctEncodedNormal.d.ts +33 -33
  678. package/lib/esm/OctEncodedNormal.js +93 -93
  679. package/lib/esm/PlanProjectionSettings.d.ts +47 -47
  680. package/lib/esm/PlanProjectionSettings.js +59 -59
  681. package/lib/esm/PlanProjectionSettings.js.map +1 -1
  682. package/lib/esm/PlanarClipMask.d.ts +177 -177
  683. package/lib/esm/PlanarClipMask.js +133 -132
  684. package/lib/esm/PlanarClipMask.js.map +1 -1
  685. package/lib/esm/QPoint.d.ts +479 -479
  686. package/lib/esm/QPoint.js +813 -815
  687. package/lib/esm/QPoint.js.map +1 -1
  688. package/lib/esm/RealityDataAccessProps.d.ts +41 -41
  689. package/lib/esm/RealityDataAccessProps.js +16 -16
  690. package/lib/esm/RealityModelDisplaySettings.d.ts +183 -183
  691. package/lib/esm/RealityModelDisplaySettings.d.ts.map +1 -1
  692. package/lib/esm/RealityModelDisplaySettings.js +138 -137
  693. package/lib/esm/RealityModelDisplaySettings.js.map +1 -1
  694. package/lib/esm/Render.d.ts +89 -89
  695. package/lib/esm/Render.js +165 -165
  696. package/lib/esm/RenderMaterial.d.ts +58 -58
  697. package/lib/esm/RenderMaterial.js +71 -72
  698. package/lib/esm/RenderMaterial.js.map +1 -1
  699. package/lib/esm/RenderSchedule.d.ts +543 -543
  700. package/lib/esm/RenderSchedule.js +989 -999
  701. package/lib/esm/RenderSchedule.js.map +1 -1
  702. package/lib/esm/RenderTexture.d.ts +70 -70
  703. package/lib/esm/RenderTexture.d.ts.map +1 -1
  704. package/lib/esm/RenderTexture.js +55 -55
  705. package/lib/esm/RenderTexture.js.map +1 -1
  706. package/lib/esm/RgbColor.d.ts +47 -47
  707. package/lib/esm/RgbColor.js +73 -73
  708. package/lib/esm/RpcInterface.d.ts +40 -33
  709. package/lib/esm/RpcInterface.d.ts.map +1 -1
  710. package/lib/esm/RpcInterface.js +133 -133
  711. package/lib/esm/RpcInterface.js.map +1 -1
  712. package/lib/esm/RpcManager.d.ts +40 -40
  713. package/lib/esm/RpcManager.js +51 -51
  714. package/lib/esm/RpcManager.js.map +1 -1
  715. package/lib/esm/SessionProps.d.ts +16 -16
  716. package/lib/esm/SessionProps.js +8 -8
  717. package/lib/esm/SkyBox.d.ts +217 -215
  718. package/lib/esm/SkyBox.d.ts.map +1 -1
  719. package/lib/esm/SkyBox.js +204 -203
  720. package/lib/esm/SkyBox.js.map +1 -1
  721. package/lib/esm/Snapping.d.ts +49 -49
  722. package/lib/esm/Snapping.js +8 -8
  723. package/lib/esm/SolarCalculate.d.ts +27 -27
  724. package/lib/esm/SolarCalculate.js +204 -204
  725. package/lib/esm/SolarShadows.d.ts +35 -35
  726. package/lib/esm/SolarShadows.js +58 -58
  727. package/lib/esm/SolarShadows.js.map +1 -1
  728. package/lib/esm/SpatialClassification.d.ts +208 -208
  729. package/lib/esm/SpatialClassification.js +333 -334
  730. package/lib/esm/SpatialClassification.js.map +1 -1
  731. package/lib/esm/SubCategoryAppearance.d.ts +91 -91
  732. package/lib/esm/SubCategoryAppearance.js +93 -92
  733. package/lib/esm/SubCategoryAppearance.js.map +1 -1
  734. package/lib/esm/SubCategoryOverride.d.ts +46 -46
  735. package/lib/esm/SubCategoryOverride.js +101 -100
  736. package/lib/esm/SubCategoryOverride.js.map +1 -1
  737. package/lib/esm/TerrainSettings.d.ts +82 -82
  738. package/lib/esm/TerrainSettings.d.ts.map +1 -1
  739. package/lib/esm/TerrainSettings.js +96 -98
  740. package/lib/esm/TerrainSettings.js.map +1 -1
  741. package/lib/esm/TextureMapping.d.ts +151 -118
  742. package/lib/esm/TextureMapping.d.ts.map +1 -1
  743. package/lib/esm/TextureMapping.js +176 -170
  744. package/lib/esm/TextureMapping.js.map +1 -1
  745. package/lib/esm/TextureProps.d.ts +65 -65
  746. package/lib/esm/TextureProps.js +25 -25
  747. package/lib/esm/ThematicDisplay.d.ts +230 -230
  748. package/lib/esm/ThematicDisplay.js +337 -337
  749. package/lib/esm/ThematicDisplay.js.map +1 -1
  750. package/lib/esm/Thumbnail.d.ts +26 -26
  751. package/lib/esm/Thumbnail.js +8 -8
  752. package/lib/esm/TileProps.d.ts +88 -82
  753. package/lib/esm/TileProps.d.ts.map +1 -1
  754. package/lib/esm/TileProps.js +25 -25
  755. package/lib/esm/TileProps.js.map +1 -1
  756. package/lib/esm/Tween.d.ts +191 -191
  757. package/lib/esm/Tween.d.ts.map +1 -1
  758. package/lib/esm/Tween.js +565 -565
  759. package/lib/esm/TxnAction.d.ts +21 -21
  760. package/lib/esm/TxnAction.js +26 -26
  761. package/lib/esm/ViewDetails.d.ts +125 -125
  762. package/lib/esm/ViewDetails.js +162 -161
  763. package/lib/esm/ViewDetails.js.map +1 -1
  764. package/lib/esm/ViewFlags.d.ts +287 -287
  765. package/lib/esm/ViewFlags.d.ts.map +1 -1
  766. package/lib/esm/ViewFlags.js +364 -364
  767. package/lib/esm/ViewFlags.js.map +1 -1
  768. package/lib/esm/ViewProps.d.ts +205 -205
  769. package/lib/esm/ViewProps.js +8 -8
  770. package/lib/esm/WhiteOnWhiteReversalSettings.d.ts +36 -36
  771. package/lib/esm/WhiteOnWhiteReversalSettings.js +34 -33
  772. package/lib/esm/WhiteOnWhiteReversalSettings.js.map +1 -1
  773. package/lib/esm/core-common.d.ts +244 -244
  774. package/lib/esm/core-common.d.ts.map +1 -1
  775. package/lib/esm/core-common.js +248 -248
  776. package/lib/esm/core-common.js.map +1 -1
  777. package/lib/esm/domains/FunctionalElementProps.d.ts +11 -11
  778. package/lib/esm/domains/FunctionalElementProps.js +8 -8
  779. package/lib/esm/domains/GenericElementProps.d.ts +18 -18
  780. package/lib/esm/domains/GenericElementProps.js +8 -8
  781. package/lib/esm/geometry/AdditionalTransform.d.ts +84 -84
  782. package/lib/esm/geometry/AdditionalTransform.js +80 -80
  783. package/lib/esm/geometry/AreaPattern.d.ts +82 -82
  784. package/lib/esm/geometry/AreaPattern.js +200 -201
  785. package/lib/esm/geometry/AreaPattern.js.map +1 -1
  786. package/lib/esm/geometry/BoundingSphere.d.ts +27 -27
  787. package/lib/esm/geometry/BoundingSphere.js +40 -40
  788. package/lib/esm/geometry/BoundingSphere.js.map +1 -1
  789. package/lib/esm/geometry/Cartographic.d.ts +137 -137
  790. package/lib/esm/geometry/Cartographic.js +341 -340
  791. package/lib/esm/geometry/Cartographic.js.map +1 -1
  792. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts +269 -269
  793. package/lib/esm/geometry/CoordinateReferenceSystem.d.ts.map +1 -1
  794. package/lib/esm/geometry/CoordinateReferenceSystem.js +253 -254
  795. package/lib/esm/geometry/CoordinateReferenceSystem.js.map +1 -1
  796. package/lib/esm/geometry/ElementGeometry.d.ts +402 -402
  797. package/lib/esm/geometry/ElementGeometry.d.ts.map +1 -1
  798. package/lib/esm/geometry/ElementGeometry.js +1716 -1716
  799. package/lib/esm/geometry/ElementGeometry.js.map +1 -1
  800. package/lib/esm/geometry/ElementGeometryFB.d.ts +2372 -2372
  801. package/lib/esm/geometry/ElementGeometryFB.js +3811 -3811
  802. package/lib/esm/geometry/ElementGeometryFB.js.map +1 -1
  803. package/lib/esm/geometry/FrustumPlanes.d.ts +83 -81
  804. package/lib/esm/geometry/FrustumPlanes.d.ts.map +1 -1
  805. package/lib/esm/geometry/FrustumPlanes.js +223 -189
  806. package/lib/esm/geometry/FrustumPlanes.js.map +1 -1
  807. package/lib/esm/geometry/GeodeticDatum.d.ts +409 -409
  808. package/lib/esm/geometry/GeodeticDatum.d.ts.map +1 -1
  809. package/lib/esm/geometry/GeodeticDatum.js +389 -390
  810. package/lib/esm/geometry/GeodeticDatum.js.map +1 -1
  811. package/lib/esm/geometry/GeodeticEllipsoid.d.ts +72 -72
  812. package/lib/esm/geometry/GeodeticEllipsoid.js +67 -68
  813. package/lib/esm/geometry/GeodeticEllipsoid.js.map +1 -1
  814. package/lib/esm/geometry/GeometryStream.d.ts +347 -347
  815. package/lib/esm/geometry/GeometryStream.d.ts.map +1 -1
  816. package/lib/esm/geometry/GeometryStream.js +463 -464
  817. package/lib/esm/geometry/GeometryStream.js.map +1 -1
  818. package/lib/esm/geometry/ImageGraphic.d.ts +74 -74
  819. package/lib/esm/geometry/ImageGraphic.d.ts.map +1 -1
  820. package/lib/esm/geometry/ImageGraphic.js +93 -93
  821. package/lib/esm/geometry/LineStyle.d.ts +71 -71
  822. package/lib/esm/geometry/LineStyle.js +126 -126
  823. package/lib/esm/geometry/Placement.d.ts +95 -95
  824. package/lib/esm/geometry/Placement.d.ts.map +1 -1
  825. package/lib/esm/geometry/Placement.js +126 -126
  826. package/lib/esm/geometry/Projection.d.ts +251 -251
  827. package/lib/esm/geometry/Projection.d.ts.map +1 -1
  828. package/lib/esm/geometry/Projection.js +192 -192
  829. package/lib/esm/geometry/Projection.js.map +1 -1
  830. package/lib/esm/geometry/TextString.d.ts +55 -55
  831. package/lib/esm/geometry/TextString.js +61 -61
  832. package/lib/esm/geometry/TextString.js.map +1 -1
  833. package/lib/esm/ipc/IpcSession.d.ts +23 -23
  834. package/lib/esm/ipc/IpcSession.js +23 -23
  835. package/lib/esm/ipc/IpcSocket.d.ts +96 -96
  836. package/lib/esm/ipc/IpcSocket.d.ts.map +1 -1
  837. package/lib/esm/ipc/IpcSocket.js +12 -12
  838. package/lib/esm/ipc/IpcWebSocket.d.ts +60 -61
  839. package/lib/esm/ipc/IpcWebSocket.d.ts.map +1 -1
  840. package/lib/esm/ipc/IpcWebSocket.js +143 -145
  841. package/lib/esm/ipc/IpcWebSocket.js.map +1 -1
  842. package/lib/esm/ipc/IpcWebSocketTransport.d.ts +15 -15
  843. package/lib/esm/ipc/IpcWebSocketTransport.js +156 -156
  844. package/lib/esm/ipc/IpcWebSocketTransport.js.map +1 -1
  845. package/lib/esm/rpc/DevToolsRpcInterface.d.ts +32 -32
  846. package/lib/esm/rpc/DevToolsRpcInterface.d.ts.map +1 -1
  847. package/lib/esm/rpc/DevToolsRpcInterface.js +49 -44
  848. package/lib/esm/rpc/DevToolsRpcInterface.js.map +1 -1
  849. package/lib/esm/rpc/IModelReadRpcInterface.d.ts +99 -99
  850. package/lib/esm/rpc/IModelReadRpcInterface.d.ts.map +1 -1
  851. package/lib/esm/rpc/IModelReadRpcInterface.js +118 -117
  852. package/lib/esm/rpc/IModelReadRpcInterface.js.map +1 -1
  853. package/lib/esm/rpc/IModelTileRpcInterface.d.ts +49 -61
  854. package/lib/esm/rpc/IModelTileRpcInterface.d.ts.map +1 -1
  855. package/lib/esm/rpc/IModelTileRpcInterface.js +76 -92
  856. package/lib/esm/rpc/IModelTileRpcInterface.js.map +1 -1
  857. package/lib/esm/rpc/SnapshotIModelRpcInterface.d.ts +23 -23
  858. package/lib/esm/rpc/SnapshotIModelRpcInterface.js +45 -44
  859. package/lib/esm/rpc/SnapshotIModelRpcInterface.js.map +1 -1
  860. package/lib/esm/rpc/TestRpcManager.d.ts +20 -20
  861. package/lib/esm/rpc/TestRpcManager.js +36 -36
  862. package/lib/esm/rpc/WipRpcInterface.d.ts +29 -29
  863. package/lib/esm/rpc/WipRpcInterface.js +37 -36
  864. package/lib/esm/rpc/WipRpcInterface.js.map +1 -1
  865. package/lib/esm/rpc/core/RpcConfiguration.d.ts +111 -111
  866. package/lib/esm/rpc/core/RpcConfiguration.d.ts.map +1 -1
  867. package/lib/esm/rpc/core/RpcConfiguration.js +185 -184
  868. package/lib/esm/rpc/core/RpcConfiguration.js.map +1 -1
  869. package/lib/esm/rpc/core/RpcConstants.d.ts +90 -90
  870. package/lib/esm/rpc/core/RpcConstants.js +106 -106
  871. package/lib/esm/rpc/core/RpcControl.d.ts +54 -54
  872. package/lib/esm/rpc/core/RpcControl.js +144 -138
  873. package/lib/esm/rpc/core/RpcControl.js.map +1 -1
  874. package/lib/esm/rpc/core/RpcInvocation.d.ts +89 -89
  875. package/lib/esm/rpc/core/RpcInvocation.d.ts.map +1 -1
  876. package/lib/esm/rpc/core/RpcInvocation.js +253 -254
  877. package/lib/esm/rpc/core/RpcInvocation.js.map +1 -1
  878. package/lib/esm/rpc/core/RpcMarshaling.d.ts +35 -35
  879. package/lib/esm/rpc/core/RpcMarshaling.js +152 -152
  880. package/lib/esm/rpc/core/RpcOperation.d.ts +67 -67
  881. package/lib/esm/rpc/core/RpcOperation.d.ts.map +1 -1
  882. package/lib/esm/rpc/core/RpcOperation.js +130 -129
  883. package/lib/esm/rpc/core/RpcOperation.js.map +1 -1
  884. package/lib/esm/rpc/core/RpcPendingQueue.d.ts +21 -21
  885. package/lib/esm/rpc/core/RpcPendingQueue.js +90 -91
  886. package/lib/esm/rpc/core/RpcPendingQueue.js.map +1 -1
  887. package/lib/esm/rpc/core/RpcProtocol.d.ts +132 -132
  888. package/lib/esm/rpc/core/RpcProtocol.d.ts.map +1 -1
  889. package/lib/esm/rpc/core/RpcProtocol.js +124 -123
  890. package/lib/esm/rpc/core/RpcProtocol.js.map +1 -1
  891. package/lib/esm/rpc/core/RpcPush.d.ts +68 -68
  892. package/lib/esm/rpc/core/RpcPush.d.ts.map +1 -1
  893. package/lib/esm/rpc/core/RpcPush.js +121 -119
  894. package/lib/esm/rpc/core/RpcPush.js.map +1 -1
  895. package/lib/esm/rpc/core/RpcRegistry.d.ts +48 -48
  896. package/lib/esm/rpc/core/RpcRegistry.js +194 -195
  897. package/lib/esm/rpc/core/RpcRegistry.js.map +1 -1
  898. package/lib/esm/rpc/core/RpcRequest.d.ts +186 -186
  899. package/lib/esm/rpc/core/RpcRequest.d.ts.map +1 -1
  900. package/lib/esm/rpc/core/RpcRequest.js +474 -473
  901. package/lib/esm/rpc/core/RpcRequest.js.map +1 -1
  902. package/lib/esm/rpc/core/RpcRequestContext.d.ts +14 -14
  903. package/lib/esm/rpc/core/RpcRequestContext.js +1 -1
  904. package/lib/esm/rpc/core/RpcRoutingToken.d.ts +12 -12
  905. package/lib/esm/rpc/core/RpcRoutingToken.d.ts.map +1 -1
  906. package/lib/esm/rpc/core/RpcRoutingToken.js +21 -20
  907. package/lib/esm/rpc/core/RpcRoutingToken.js.map +1 -1
  908. package/lib/esm/rpc/core/RpcSessionInvocation.d.ts +10 -10
  909. package/lib/esm/rpc/core/RpcSessionInvocation.js +56 -56
  910. package/lib/esm/rpc/core/RpcSessionInvocation.js.map +1 -1
  911. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts +48 -46
  912. package/lib/esm/rpc/web/BentleyCloudRpcManager.d.ts.map +1 -1
  913. package/lib/esm/rpc/web/BentleyCloudRpcManager.js +72 -68
  914. package/lib/esm/rpc/web/BentleyCloudRpcManager.js.map +1 -1
  915. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.d.ts +33 -33
  916. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js +137 -139
  917. package/lib/esm/rpc/web/BentleyCloudRpcProtocol.js.map +1 -1
  918. package/lib/esm/rpc/web/OpenAPI.d.ts +140 -140
  919. package/lib/esm/rpc/web/OpenAPI.js +56 -56
  920. package/lib/esm/rpc/web/OpenAPI.js.map +1 -1
  921. package/lib/esm/rpc/web/RpcMultipart.d.ts +35 -35
  922. package/lib/esm/rpc/web/RpcMultipart.js +47 -46
  923. package/lib/esm/rpc/web/RpcMultipart.js.map +1 -1
  924. package/lib/esm/rpc/web/WebAppRpcLogging.d.ts +28 -28
  925. package/lib/esm/rpc/web/WebAppRpcLogging.js +136 -136
  926. package/lib/esm/rpc/web/WebAppRpcProtocol.d.ts +89 -89
  927. package/lib/esm/rpc/web/WebAppRpcProtocol.js +112 -112
  928. package/lib/esm/rpc/web/WebAppRpcProtocol.js.map +1 -1
  929. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts +67 -67
  930. package/lib/esm/rpc/web/WebAppRpcRequest.d.ts.map +1 -1
  931. package/lib/esm/rpc/web/WebAppRpcRequest.js +236 -235
  932. package/lib/esm/rpc/web/WebAppRpcRequest.js.map +1 -1
  933. package/lib/esm/rpc/web/multipart/RpcMultipartParser.d.ts +32 -32
  934. package/lib/esm/rpc/web/multipart/RpcMultipartParser.js +369 -369
  935. package/lib/esm/tile/B3dmTileIO.d.ts +19 -19
  936. package/lib/esm/tile/B3dmTileIO.js +62 -62
  937. package/lib/esm/tile/B3dmTileIO.js.map +1 -1
  938. package/lib/esm/tile/CompositeTileIO.d.ts +15 -15
  939. package/lib/esm/tile/CompositeTileIO.js +22 -22
  940. package/lib/esm/tile/CompositeTileIO.js.map +1 -1
  941. package/lib/esm/tile/ElementGraphics.d.ts +145 -145
  942. package/lib/esm/tile/ElementGraphics.d.ts.map +1 -1
  943. package/lib/esm/tile/ElementGraphics.js +8 -8
  944. package/lib/esm/tile/GltfTileIO.d.ts +45 -45
  945. package/lib/esm/tile/GltfTileIO.d.ts.map +1 -1
  946. package/lib/esm/tile/GltfTileIO.js +105 -105
  947. package/lib/esm/tile/GltfTileIO.js.map +1 -1
  948. package/lib/esm/tile/I3dmTileIO.d.ts +20 -20
  949. package/lib/esm/tile/I3dmTileIO.js +36 -36
  950. package/lib/esm/tile/I3dmTileIO.js.map +1 -1
  951. package/lib/esm/tile/IModelTileIO.d.ts +77 -75
  952. package/lib/esm/tile/IModelTileIO.d.ts.map +1 -1
  953. package/lib/esm/tile/IModelTileIO.js +93 -90
  954. package/lib/esm/tile/IModelTileIO.js.map +1 -1
  955. package/lib/esm/tile/PntsTileIO.d.ts +17 -17
  956. package/lib/esm/tile/PntsTileIO.js +22 -22
  957. package/lib/esm/tile/PntsTileIO.js.map +1 -1
  958. package/lib/esm/tile/TileIO.d.ts +66 -66
  959. package/lib/esm/tile/TileIO.js +110 -110
  960. package/lib/esm/tile/TileMetadata.d.ts +228 -228
  961. package/lib/esm/tile/TileMetadata.d.ts.map +1 -1
  962. package/lib/esm/tile/TileMetadata.js +660 -661
  963. package/lib/esm/tile/TileMetadata.js.map +1 -1
  964. package/lib/esm/tile/Tileset3dSchema.d.ts +97 -0
  965. package/lib/esm/tile/Tileset3dSchema.d.ts.map +1 -0
  966. package/lib/esm/tile/Tileset3dSchema.js +9 -0
  967. package/lib/esm/tile/Tileset3dSchema.js.map +1 -0
  968. package/package.json +14 -14
  969. package/lib/cjs/CloudStorage.d.ts +0 -63
  970. package/lib/cjs/CloudStorage.d.ts.map +0 -1
  971. package/lib/cjs/CloudStorage.js +0 -114
  972. package/lib/cjs/CloudStorage.js.map +0 -1
  973. package/lib/cjs/CloudStorageTileCache.d.ts +0 -28
  974. package/lib/cjs/CloudStorageTileCache.d.ts.map +0 -1
  975. package/lib/cjs/CloudStorageTileCache.js +0 -67
  976. package/lib/cjs/CloudStorageTileCache.js.map +0 -1
  977. package/lib/esm/CloudStorage.d.ts +0 -63
  978. package/lib/esm/CloudStorage.d.ts.map +0 -1
  979. package/lib/esm/CloudStorage.js +0 -110
  980. package/lib/esm/CloudStorage.js.map +0 -1
  981. package/lib/esm/CloudStorageTileCache.d.ts +0 -28
  982. package/lib/esm/CloudStorageTileCache.d.ts.map +0 -1
  983. package/lib/esm/CloudStorageTileCache.js +0 -63
  984. package/lib/esm/CloudStorageTileCache.js.map +0 -1
@@ -1,544 +1,544 @@
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
- }
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
+ }
544
544
  //# sourceMappingURL=RenderSchedule.d.ts.map