@itwin/core-backend 5.0.0-dev.11 → 5.0.0-dev.111

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 (1102) hide show
  1. package/CHANGELOG.md +90 -1
  2. package/lib/cjs/BackendHubAccess.d.ts +15 -35
  3. package/lib/cjs/BackendHubAccess.d.ts.map +1 -1
  4. package/lib/cjs/BackendHubAccess.js +2 -0
  5. package/lib/cjs/BackendHubAccess.js.map +1 -1
  6. package/lib/cjs/BackendLoggerCategory.js.map +1 -1
  7. package/lib/cjs/BisCoreSchema.d.ts.map +1 -1
  8. package/lib/cjs/BisCoreSchema.js +2 -0
  9. package/lib/cjs/BisCoreSchema.js.map +1 -1
  10. package/lib/cjs/BlobContainerService.d.ts +4 -4
  11. package/lib/cjs/BlobContainerService.d.ts.map +1 -1
  12. package/lib/cjs/BlobContainerService.js.map +1 -1
  13. package/lib/cjs/BriefcaseManager.d.ts +10 -0
  14. package/lib/cjs/BriefcaseManager.d.ts.map +1 -1
  15. package/lib/cjs/BriefcaseManager.js +63 -20
  16. package/lib/cjs/BriefcaseManager.js.map +1 -1
  17. package/lib/cjs/CatalogDb.d.ts +103 -0
  18. package/lib/cjs/CatalogDb.d.ts.map +1 -0
  19. package/lib/cjs/CatalogDb.js +271 -0
  20. package/lib/cjs/CatalogDb.js.map +1 -0
  21. package/lib/cjs/Category.d.ts +37 -0
  22. package/lib/cjs/Category.d.ts.map +1 -1
  23. package/lib/cjs/Category.js +79 -1
  24. package/lib/cjs/Category.js.map +1 -1
  25. package/lib/cjs/ChangeSummaryManager.d.ts.map +1 -1
  26. package/lib/cjs/ChangeSummaryManager.js +104 -29
  27. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  28. package/lib/cjs/ChangedElementsDb.d.ts +3 -3
  29. package/lib/cjs/ChangedElementsDb.d.ts.map +1 -1
  30. package/lib/cjs/ChangedElementsDb.js +8 -7
  31. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  32. package/lib/cjs/ChangesetECAdaptor.d.ts +3 -3
  33. package/lib/cjs/ChangesetECAdaptor.d.ts.map +1 -1
  34. package/lib/cjs/ChangesetECAdaptor.js +274 -261
  35. package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
  36. package/lib/cjs/ChannelControl.js.map +1 -1
  37. package/lib/cjs/CheckpointManager.d.ts +12 -17
  38. package/lib/cjs/CheckpointManager.d.ts.map +1 -1
  39. package/lib/cjs/CheckpointManager.js +40 -92
  40. package/lib/cjs/CheckpointManager.js.map +1 -1
  41. package/lib/cjs/ClassRegistry.d.ts +46 -2
  42. package/lib/cjs/ClassRegistry.d.ts.map +1 -1
  43. package/lib/cjs/ClassRegistry.js +98 -42
  44. package/lib/cjs/ClassRegistry.js.map +1 -1
  45. package/lib/cjs/CloudSqlite.d.ts +104 -20
  46. package/lib/cjs/CloudSqlite.d.ts.map +1 -1
  47. package/lib/cjs/CloudSqlite.js +172 -54
  48. package/lib/cjs/CloudSqlite.js.map +1 -1
  49. package/lib/cjs/CodeService.d.ts +2 -0
  50. package/lib/cjs/CodeService.d.ts.map +1 -1
  51. package/lib/cjs/CodeService.js +4 -0
  52. package/lib/cjs/CodeService.js.map +1 -1
  53. package/lib/cjs/CodeSpecs.js +3 -2
  54. package/lib/cjs/CodeSpecs.js.map +1 -1
  55. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  56. package/lib/cjs/CustomViewState3dCreator.js +7 -6
  57. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  58. package/lib/cjs/DevTools.js +16 -16
  59. package/lib/cjs/DevTools.js.map +1 -1
  60. package/lib/cjs/DisplayStyle.d.ts +5 -0
  61. package/lib/cjs/DisplayStyle.d.ts.map +1 -1
  62. package/lib/cjs/DisplayStyle.js +29 -0
  63. package/lib/cjs/DisplayStyle.js.map +1 -1
  64. package/lib/cjs/ECDb.d.ts +53 -60
  65. package/lib/cjs/ECDb.d.ts.map +1 -1
  66. package/lib/cjs/ECDb.js +115 -73
  67. package/lib/cjs/ECDb.js.map +1 -1
  68. package/lib/cjs/ECSchemaXmlContext.d.ts +1 -1
  69. package/lib/cjs/ECSchemaXmlContext.js +2 -1
  70. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  71. package/lib/cjs/ECSqlStatement.d.ts +185 -4
  72. package/lib/cjs/ECSqlStatement.d.ts.map +1 -1
  73. package/lib/cjs/ECSqlStatement.js +237 -9
  74. package/lib/cjs/ECSqlStatement.js.map +1 -1
  75. package/lib/cjs/Element.d.ts +194 -35
  76. package/lib/cjs/Element.d.ts.map +1 -1
  77. package/lib/cjs/Element.js +683 -57
  78. package/lib/cjs/Element.js.map +1 -1
  79. package/lib/cjs/ElementAspect.d.ts +0 -5
  80. package/lib/cjs/ElementAspect.d.ts.map +1 -1
  81. package/lib/cjs/ElementAspect.js +25 -16
  82. package/lib/cjs/ElementAspect.js.map +1 -1
  83. package/lib/cjs/ElementGraphics.js.map +1 -1
  84. package/lib/cjs/ElementTreeWalker.d.ts.map +1 -1
  85. package/lib/cjs/ElementTreeWalker.js +17 -12
  86. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  87. package/lib/cjs/Entity.d.ts +91 -11
  88. package/lib/cjs/Entity.d.ts.map +1 -1
  89. package/lib/cjs/Entity.js +137 -16
  90. package/lib/cjs/Entity.js.map +1 -1
  91. package/lib/cjs/EntityReferences.js.map +1 -1
  92. package/lib/cjs/ExportGraphics.js +4 -0
  93. package/lib/cjs/ExportGraphics.js.map +1 -1
  94. package/lib/cjs/ExternalSource.js +22 -0
  95. package/lib/cjs/ExternalSource.js.map +1 -1
  96. package/lib/cjs/FontFile.d.ts +68 -0
  97. package/lib/cjs/FontFile.d.ts.map +1 -0
  98. package/lib/cjs/FontFile.js +36 -0
  99. package/lib/cjs/FontFile.js.map +1 -0
  100. package/lib/cjs/GeoCoordConfig.js +8 -8
  101. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  102. package/lib/cjs/GeographicCRSServices.js.map +1 -1
  103. package/lib/cjs/GeometrySummary.js +53 -50
  104. package/lib/cjs/GeometrySummary.js.map +1 -1
  105. package/lib/cjs/IModelDb.d.ts +231 -108
  106. package/lib/cjs/IModelDb.d.ts.map +1 -1
  107. package/lib/cjs/IModelDb.js +516 -249
  108. package/lib/cjs/IModelDb.js.map +1 -1
  109. package/lib/cjs/IModelDbFonts.d.ts +54 -0
  110. package/lib/cjs/IModelDbFonts.d.ts.map +1 -0
  111. package/lib/cjs/{IModelCloneContext.js → IModelDbFonts.js} +2 -7
  112. package/lib/cjs/IModelDbFonts.js.map +1 -0
  113. package/lib/cjs/IModelElementCloneContext.d.ts +2 -0
  114. package/lib/cjs/IModelElementCloneContext.d.ts.map +1 -1
  115. package/lib/cjs/IModelElementCloneContext.js +12 -1
  116. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  117. package/lib/cjs/IModelHost.d.ts +28 -15
  118. package/lib/cjs/IModelHost.d.ts.map +1 -1
  119. package/lib/cjs/IModelHost.js +82 -43
  120. package/lib/cjs/IModelHost.js.map +1 -1
  121. package/lib/cjs/IModelJsFs.d.ts.map +1 -1
  122. package/lib/cjs/IModelJsFs.js +17 -1
  123. package/lib/cjs/IModelJsFs.js.map +1 -1
  124. package/lib/cjs/ImageSourceConversion.d.ts +49 -0
  125. package/lib/cjs/ImageSourceConversion.d.ts.map +1 -0
  126. package/lib/cjs/ImageSourceConversion.js +37 -0
  127. package/lib/cjs/ImageSourceConversion.js.map +1 -0
  128. package/lib/cjs/IpcHost.d.ts.map +1 -1
  129. package/lib/cjs/IpcHost.js +19 -33
  130. package/lib/cjs/IpcHost.js.map +1 -1
  131. package/lib/cjs/LineStyle.js.map +1 -1
  132. package/lib/cjs/LocalHub.js +9 -3
  133. package/lib/cjs/LocalHub.js.map +1 -1
  134. package/lib/cjs/LocalhostIpcHost.js +5 -6
  135. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  136. package/lib/cjs/LockControl.js.map +1 -1
  137. package/lib/cjs/Material.d.ts +19 -0
  138. package/lib/cjs/Material.d.ts.map +1 -1
  139. package/lib/cjs/Material.js +69 -0
  140. package/lib/cjs/Material.js.map +1 -1
  141. package/lib/cjs/Model.d.ts +43 -7
  142. package/lib/cjs/Model.d.ts.map +1 -1
  143. package/lib/cjs/Model.js +120 -7
  144. package/lib/cjs/Model.js.map +1 -1
  145. package/lib/cjs/NativeAppStorage.js +5 -3
  146. package/lib/cjs/NativeAppStorage.js.map +1 -1
  147. package/lib/cjs/NativeHost.d.ts.map +1 -1
  148. package/lib/cjs/NativeHost.js +10 -4
  149. package/lib/cjs/NativeHost.js.map +1 -1
  150. package/lib/cjs/NavigationRelationship.js +25 -25
  151. package/lib/cjs/NavigationRelationship.js.map +1 -1
  152. package/lib/cjs/PromiseMemoizer.d.ts +2 -3
  153. package/lib/cjs/PromiseMemoizer.d.ts.map +1 -1
  154. package/lib/cjs/PromiseMemoizer.js +12 -5
  155. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  156. package/lib/cjs/PropertyStore.js +1 -4
  157. package/lib/cjs/PropertyStore.js.map +1 -1
  158. package/lib/cjs/Relationship.d.ts.map +1 -1
  159. package/lib/cjs/Relationship.js +15 -1
  160. package/lib/cjs/Relationship.js.map +1 -1
  161. package/lib/cjs/RpcBackend.js.map +1 -1
  162. package/lib/cjs/SQLiteDb.d.ts +6 -4
  163. package/lib/cjs/SQLiteDb.d.ts.map +1 -1
  164. package/lib/cjs/SQLiteDb.js +79 -19
  165. package/lib/cjs/SQLiteDb.js.map +1 -1
  166. package/lib/cjs/Schema.d.ts +25 -1
  167. package/lib/cjs/Schema.d.ts.map +1 -1
  168. package/lib/cjs/Schema.js +44 -8
  169. package/lib/cjs/Schema.js.map +1 -1
  170. package/lib/cjs/SchemaSync.js +1 -4
  171. package/lib/cjs/SchemaSync.js.map +1 -1
  172. package/lib/cjs/SchemaUtils.js.map +1 -1
  173. package/lib/cjs/SheetIndex.js +6 -0
  174. package/lib/cjs/SheetIndex.js.map +1 -1
  175. package/lib/cjs/SqliteChangesetReader.d.ts +11 -3
  176. package/lib/cjs/SqliteChangesetReader.d.ts.map +1 -1
  177. package/lib/cjs/SqliteChangesetReader.js +21 -5
  178. package/lib/cjs/SqliteChangesetReader.js.map +1 -1
  179. package/lib/cjs/SqliteStatement.d.ts +4 -2
  180. package/lib/cjs/SqliteStatement.d.ts.map +1 -1
  181. package/lib/cjs/SqliteStatement.js +13 -1
  182. package/lib/cjs/SqliteStatement.js.map +1 -1
  183. package/lib/cjs/TextAnnotationElement.js.map +1 -1
  184. package/lib/cjs/TextAnnotationGeometry.d.ts.map +1 -1
  185. package/lib/cjs/TextAnnotationGeometry.js +38 -11
  186. package/lib/cjs/TextAnnotationGeometry.js.map +1 -1
  187. package/lib/cjs/TextAnnotationLayout.d.ts +10 -3
  188. package/lib/cjs/TextAnnotationLayout.d.ts.map +1 -1
  189. package/lib/cjs/TextAnnotationLayout.js +56 -18
  190. package/lib/cjs/TextAnnotationLayout.js.map +1 -1
  191. package/lib/cjs/Texture.js +3 -0
  192. package/lib/cjs/Texture.js.map +1 -1
  193. package/lib/cjs/TileStorage.js +6 -1
  194. package/lib/cjs/TileStorage.js.map +1 -1
  195. package/lib/cjs/TxnManager.d.ts +55 -4
  196. package/lib/cjs/TxnManager.d.ts.map +1 -1
  197. package/lib/cjs/TxnManager.js +235 -58
  198. package/lib/cjs/TxnManager.js.map +1 -1
  199. package/lib/cjs/ViewDefinition.d.ts +106 -6
  200. package/lib/cjs/ViewDefinition.d.ts.map +1 -1
  201. package/lib/cjs/ViewDefinition.js +289 -26
  202. package/lib/cjs/ViewDefinition.js.map +1 -1
  203. package/lib/cjs/ViewStateHydrator.d.ts +0 -1
  204. package/lib/cjs/ViewStateHydrator.d.ts.map +1 -1
  205. package/lib/cjs/ViewStateHydrator.js +4 -14
  206. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  207. package/lib/cjs/ViewStore.d.ts.map +1 -1
  208. package/lib/cjs/ViewStore.js +32 -29
  209. package/lib/cjs/ViewStore.js.map +1 -1
  210. package/lib/cjs/assets/IModelChange.02.00.00.ecschema.xml +90 -90
  211. package/lib/cjs/assets/Settings/Schemas/Base.Schema.json +32 -32
  212. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +27 -27
  213. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +94 -94
  214. package/lib/cjs/assets/Settings/backend.setting.json5 +21 -21
  215. package/lib/cjs/core-backend.d.ts +8 -2
  216. package/lib/cjs/core-backend.d.ts.map +1 -1
  217. package/lib/cjs/core-backend.js +8 -2
  218. package/lib/cjs/core-backend.js.map +1 -1
  219. package/lib/cjs/domains/FunctionalElements.js +1 -1
  220. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  221. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  222. package/lib/cjs/domains/GenericElements.js.map +1 -1
  223. package/lib/cjs/domains/GenericSchema.js.map +1 -1
  224. package/lib/cjs/internal/ChangesetConflictArgs.d.ts +40 -2
  225. package/lib/cjs/internal/ChangesetConflictArgs.d.ts.map +1 -1
  226. package/lib/cjs/internal/ChangesetConflictArgs.js +101 -0
  227. package/lib/cjs/internal/ChangesetConflictArgs.js.map +1 -1
  228. package/lib/cjs/internal/ChannelAdmin.d.ts +1 -1
  229. package/lib/cjs/internal/ChannelAdmin.d.ts.map +1 -1
  230. package/lib/cjs/internal/ChannelAdmin.js +16 -13
  231. package/lib/cjs/internal/ChannelAdmin.js.map +1 -1
  232. package/lib/cjs/internal/ElementLRUCache.d.ts +28 -0
  233. package/lib/cjs/internal/ElementLRUCache.d.ts.map +1 -0
  234. package/lib/cjs/internal/ElementLRUCache.js +120 -0
  235. package/lib/cjs/internal/ElementLRUCache.js.map +1 -0
  236. package/lib/cjs/internal/FontFileImpl.d.ts +34 -0
  237. package/lib/cjs/internal/FontFileImpl.d.ts.map +1 -0
  238. package/lib/cjs/internal/FontFileImpl.js +143 -0
  239. package/lib/cjs/internal/FontFileImpl.js.map +1 -0
  240. package/lib/cjs/{HubMock.d.ts → internal/HubMock.d.ts} +6 -7
  241. package/lib/cjs/internal/HubMock.d.ts.map +1 -0
  242. package/lib/cjs/{HubMock.js → internal/HubMock.js} +40 -15
  243. package/lib/cjs/internal/HubMock.js.map +1 -0
  244. package/lib/cjs/internal/IModelDbFontsImpl.d.ts +7 -0
  245. package/lib/cjs/internal/IModelDbFontsImpl.d.ts.map +1 -0
  246. package/lib/cjs/internal/IModelDbFontsImpl.js +186 -0
  247. package/lib/cjs/internal/IModelDbFontsImpl.js.map +1 -0
  248. package/lib/cjs/internal/NativePlatform.js.map +1 -1
  249. package/lib/cjs/internal/NoLocks.js +2 -5
  250. package/lib/cjs/internal/NoLocks.js.map +1 -1
  251. package/lib/cjs/internal/ServerBasedLocks.d.ts.map +1 -1
  252. package/lib/cjs/internal/ServerBasedLocks.js +6 -6
  253. package/lib/cjs/internal/ServerBasedLocks.js.map +1 -1
  254. package/lib/cjs/internal/Symbols.d.ts +9 -0
  255. package/lib/cjs/internal/Symbols.d.ts.map +1 -1
  256. package/lib/cjs/internal/Symbols.js +10 -1
  257. package/lib/cjs/internal/Symbols.js.map +1 -1
  258. package/lib/cjs/internal/cross-package.js.map +1 -1
  259. package/lib/cjs/internal/workspace/SettingsImpl.js +6 -9
  260. package/lib/cjs/internal/workspace/SettingsImpl.js.map +1 -1
  261. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js +8 -12
  262. package/lib/cjs/internal/workspace/SettingsSchemasImpl.js.map +1 -1
  263. package/lib/cjs/internal/workspace/WorkspaceImpl.d.ts +2 -16
  264. package/lib/cjs/internal/workspace/WorkspaceImpl.d.ts.map +1 -1
  265. package/lib/cjs/internal/workspace/WorkspaceImpl.js +57 -121
  266. package/lib/cjs/internal/workspace/WorkspaceImpl.js.map +1 -1
  267. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js +1 -4
  268. package/lib/cjs/internal/workspace/WorkspaceSqliteDb.js.map +1 -1
  269. package/lib/cjs/rpc/multipart.d.ts.map +1 -1
  270. package/lib/cjs/rpc/multipart.js +2 -1
  271. package/lib/cjs/rpc/multipart.js.map +1 -1
  272. package/lib/cjs/rpc/tracing.js +2 -2
  273. package/lib/cjs/rpc/tracing.js.map +1 -1
  274. package/lib/cjs/rpc/web/logging.js.map +1 -1
  275. package/lib/cjs/rpc/web/request.d.ts.map +1 -1
  276. package/lib/cjs/rpc/web/request.js +2 -1
  277. package/lib/cjs/rpc/web/request.js.map +1 -1
  278. package/lib/cjs/rpc/web/response.js.map +1 -1
  279. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  280. package/lib/cjs/rpc-impl/IModelReadRpcImpl.d.ts.map +1 -1
  281. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js +8 -4
  282. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  283. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js +5 -3
  284. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  285. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.d.ts.map +1 -1
  286. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js +15 -25
  287. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  288. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  289. package/lib/cjs/workspace/Settings.js.map +1 -1
  290. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  291. package/lib/cjs/workspace/Workspace.d.ts +6 -13
  292. package/lib/cjs/workspace/Workspace.d.ts.map +1 -1
  293. package/lib/cjs/workspace/Workspace.js.map +1 -1
  294. package/lib/cjs/workspace/WorkspaceEditor.d.ts +2 -7
  295. package/lib/cjs/workspace/WorkspaceEditor.d.ts.map +1 -1
  296. package/lib/cjs/workspace/WorkspaceEditor.js.map +1 -1
  297. package/lib/esm/BackendHubAccess.d.ts +209 -0
  298. package/lib/esm/BackendHubAccess.d.ts.map +1 -0
  299. package/lib/esm/BackendHubAccess.js +41 -0
  300. package/lib/esm/BackendHubAccess.js.map +1 -0
  301. package/lib/esm/BackendLoggerCategory.d.ts +88 -0
  302. package/lib/esm/BackendLoggerCategory.d.ts.map +1 -0
  303. package/lib/esm/BackendLoggerCategory.js +93 -0
  304. package/lib/esm/BackendLoggerCategory.js.map +1 -0
  305. package/lib/esm/BisCoreSchema.d.ts +22 -0
  306. package/lib/esm/BisCoreSchema.d.ts.map +1 -0
  307. package/lib/esm/BisCoreSchema.js +61 -0
  308. package/lib/esm/BisCoreSchema.js.map +1 -0
  309. package/lib/esm/BlobContainerService.d.ts +159 -0
  310. package/lib/esm/BlobContainerService.d.ts.map +1 -0
  311. package/lib/esm/BlobContainerService.js +15 -0
  312. package/lib/esm/BlobContainerService.js.map +1 -0
  313. package/lib/esm/BriefcaseManager.d.ts +213 -0
  314. package/lib/esm/BriefcaseManager.d.ts.map +1 -0
  315. package/lib/esm/BriefcaseManager.js +520 -0
  316. package/lib/esm/BriefcaseManager.js.map +1 -0
  317. package/lib/esm/CatalogDb.d.ts +103 -0
  318. package/lib/esm/CatalogDb.d.ts.map +1 -0
  319. package/lib/esm/CatalogDb.js +267 -0
  320. package/lib/esm/CatalogDb.js.map +1 -0
  321. package/lib/esm/Category.d.ts +173 -0
  322. package/lib/esm/Category.d.ts.map +1 -0
  323. package/lib/esm/Category.js +297 -0
  324. package/lib/esm/Category.js.map +1 -0
  325. package/lib/esm/ChangeSummaryManager.d.ts +161 -0
  326. package/lib/esm/ChangeSummaryManager.d.ts.map +1 -0
  327. package/lib/esm/ChangeSummaryManager.js +421 -0
  328. package/lib/esm/ChangeSummaryManager.js.map +1 -0
  329. package/lib/esm/ChangedElementsDb.d.ts +101 -0
  330. package/lib/esm/ChangedElementsDb.d.ts.map +1 -0
  331. package/lib/esm/ChangedElementsDb.js +165 -0
  332. package/lib/esm/ChangedElementsDb.js.map +1 -0
  333. package/lib/esm/ChangesetECAdaptor.d.ts +203 -0
  334. package/lib/esm/ChangesetECAdaptor.d.ts.map +1 -0
  335. package/lib/esm/ChangesetECAdaptor.js +815 -0
  336. package/lib/esm/ChangesetECAdaptor.js.map +1 -0
  337. package/lib/esm/ChannelControl.d.ts +68 -0
  338. package/lib/esm/ChannelControl.d.ts.map +1 -0
  339. package/lib/esm/ChannelControl.js +15 -0
  340. package/lib/esm/ChannelControl.js.map +1 -0
  341. package/lib/esm/CheckpointManager.d.ts +118 -0
  342. package/lib/esm/CheckpointManager.d.ts.map +1 -0
  343. package/lib/esm/CheckpointManager.js +321 -0
  344. package/lib/esm/CheckpointManager.js.map +1 -0
  345. package/lib/esm/ClassRegistry.d.ts +134 -0
  346. package/lib/esm/ClassRegistry.d.ts.map +1 -0
  347. package/lib/esm/ClassRegistry.js +324 -0
  348. package/lib/esm/ClassRegistry.js.map +1 -0
  349. package/lib/esm/CloudSqlite.d.ts +766 -0
  350. package/lib/esm/CloudSqlite.d.ts.map +1 -0
  351. package/lib/esm/CloudSqlite.js +622 -0
  352. package/lib/esm/CloudSqlite.js.map +1 -0
  353. package/lib/esm/CodeService.d.ts +402 -0
  354. package/lib/esm/CodeService.d.ts.map +1 -0
  355. package/lib/esm/CodeService.js +65 -0
  356. package/lib/esm/CodeService.js.map +1 -0
  357. package/lib/esm/CodeSpecs.d.ts +59 -0
  358. package/lib/esm/CodeSpecs.d.ts.map +1 -0
  359. package/lib/esm/CodeSpecs.js +152 -0
  360. package/lib/esm/CodeSpecs.js.map +1 -0
  361. package/lib/esm/ConcurrentQuery.d.ts +14 -0
  362. package/lib/esm/ConcurrentQuery.d.ts.map +1 -0
  363. package/lib/esm/ConcurrentQuery.js +33 -0
  364. package/lib/esm/ConcurrentQuery.js.map +1 -0
  365. package/lib/esm/CustomViewState3dCreator.d.ts +22 -0
  366. package/lib/esm/CustomViewState3dCreator.d.ts.map +1 -0
  367. package/lib/esm/CustomViewState3dCreator.js +78 -0
  368. package/lib/esm/CustomViewState3dCreator.js.map +1 -0
  369. package/lib/esm/DevTools.d.ts +73 -0
  370. package/lib/esm/DevTools.d.ts.map +1 -0
  371. package/lib/esm/DevTools.js +153 -0
  372. package/lib/esm/DevTools.js.map +1 -0
  373. package/lib/esm/DisplayStyle.d.ts +104 -0
  374. package/lib/esm/DisplayStyle.d.ts.map +1 -0
  375. package/lib/esm/DisplayStyle.js +291 -0
  376. package/lib/esm/DisplayStyle.js.map +1 -0
  377. package/lib/esm/ECDb.d.ts +206 -0
  378. package/lib/esm/ECDb.d.ts.map +1 -0
  379. package/lib/esm/ECDb.js +410 -0
  380. package/lib/esm/ECDb.js.map +1 -0
  381. package/lib/esm/ECSchemaXmlContext.d.ts +46 -0
  382. package/lib/esm/ECSchemaXmlContext.d.ts.map +1 -0
  383. package/lib/esm/ECSchemaXmlContext.js +66 -0
  384. package/lib/esm/ECSchemaXmlContext.js.map +1 -0
  385. package/lib/esm/ECSqlStatement.d.ts +671 -0
  386. package/lib/esm/ECSqlStatement.d.ts.map +1 -0
  387. package/lib/esm/ECSqlStatement.js +1028 -0
  388. package/lib/esm/ECSqlStatement.js.map +1 -0
  389. package/lib/esm/Element.d.ts +1155 -0
  390. package/lib/esm/Element.d.ts.map +1 -0
  391. package/lib/esm/Element.js +1876 -0
  392. package/lib/esm/Element.js.map +1 -0
  393. package/lib/esm/ElementAspect.d.ts +164 -0
  394. package/lib/esm/ElementAspect.d.ts.map +1 -0
  395. package/lib/esm/ElementAspect.js +205 -0
  396. package/lib/esm/ElementAspect.js.map +1 -0
  397. package/lib/esm/ElementGraphics.d.ts +7 -0
  398. package/lib/esm/ElementGraphics.d.ts.map +1 -0
  399. package/lib/esm/ElementGraphics.js +36 -0
  400. package/lib/esm/ElementGraphics.js.map +1 -0
  401. package/lib/esm/ElementTreeWalker.d.ts +182 -0
  402. package/lib/esm/ElementTreeWalker.d.ts.map +1 -0
  403. package/lib/esm/ElementTreeWalker.js +425 -0
  404. package/lib/esm/ElementTreeWalker.js.map +1 -0
  405. package/lib/esm/Entity.d.ts +186 -0
  406. package/lib/esm/Entity.d.ts.map +1 -0
  407. package/lib/esm/Entity.js +244 -0
  408. package/lib/esm/Entity.js.map +1 -0
  409. package/lib/esm/EntityReferences.d.ts +50 -0
  410. package/lib/esm/EntityReferences.d.ts.map +1 -0
  411. package/lib/esm/EntityReferences.js +92 -0
  412. package/lib/esm/EntityReferences.js.map +1 -0
  413. package/lib/esm/ExportGraphics.d.ts +318 -0
  414. package/lib/esm/ExportGraphics.d.ts.map +1 -0
  415. package/lib/esm/ExportGraphics.js +209 -0
  416. package/lib/esm/ExportGraphics.js.map +1 -0
  417. package/lib/esm/ExternalSource.d.ts +89 -0
  418. package/lib/esm/ExternalSource.d.ts.map +1 -0
  419. package/lib/esm/ExternalSource.js +139 -0
  420. package/lib/esm/ExternalSource.js.map +1 -0
  421. package/lib/esm/FontFile.d.ts +68 -0
  422. package/lib/esm/FontFile.d.ts.map +1 -0
  423. package/lib/esm/FontFile.js +33 -0
  424. package/lib/esm/FontFile.js.map +1 -0
  425. package/lib/esm/GeoCoordConfig.d.ts +30 -0
  426. package/lib/esm/GeoCoordConfig.d.ts.map +1 -0
  427. package/lib/esm/GeoCoordConfig.js +78 -0
  428. package/lib/esm/GeoCoordConfig.js.map +1 -0
  429. package/lib/esm/GeographicCRSServices.d.ts +40 -0
  430. package/lib/esm/GeographicCRSServices.d.ts.map +1 -0
  431. package/lib/esm/GeographicCRSServices.js +17 -0
  432. package/lib/esm/GeographicCRSServices.js.map +1 -0
  433. package/lib/esm/GeometrySummary.d.ts +5 -0
  434. package/lib/esm/GeometrySummary.d.ts.map +1 -0
  435. package/lib/esm/GeometrySummary.js +381 -0
  436. package/lib/esm/GeometrySummary.js.map +1 -0
  437. package/lib/esm/IModelDb.d.ts +1390 -0
  438. package/lib/esm/IModelDb.d.ts.map +1 -0
  439. package/lib/esm/IModelDb.js +3327 -0
  440. package/lib/esm/IModelDb.js.map +1 -0
  441. package/lib/esm/IModelDbFonts.d.ts +54 -0
  442. package/lib/esm/IModelDbFonts.d.ts.map +1 -0
  443. package/lib/esm/IModelDbFonts.js +9 -0
  444. package/lib/esm/IModelDbFonts.js.map +1 -0
  445. package/lib/esm/IModelElementCloneContext.d.ts +92 -0
  446. package/lib/esm/IModelElementCloneContext.d.ts.map +1 -0
  447. package/lib/esm/IModelElementCloneContext.js +168 -0
  448. package/lib/esm/IModelElementCloneContext.js.map +1 -0
  449. package/lib/esm/IModelHost.d.ts +400 -0
  450. package/lib/esm/IModelHost.d.ts.map +1 -0
  451. package/lib/esm/IModelHost.js +508 -0
  452. package/lib/esm/IModelHost.js.map +1 -0
  453. package/lib/esm/IModelJsFs.d.ts +62 -0
  454. package/lib/esm/IModelJsFs.d.ts.map +1 -0
  455. package/lib/esm/IModelJsFs.js +151 -0
  456. package/lib/esm/IModelJsFs.js.map +1 -0
  457. package/lib/esm/ImageSourceConversion.d.ts +49 -0
  458. package/lib/esm/ImageSourceConversion.d.ts.map +1 -0
  459. package/lib/esm/ImageSourceConversion.js +33 -0
  460. package/lib/esm/ImageSourceConversion.js.map +1 -0
  461. package/lib/esm/IpcHost.d.ts +111 -0
  462. package/lib/esm/IpcHost.d.ts.map +1 -0
  463. package/lib/esm/IpcHost.js +292 -0
  464. package/lib/esm/IpcHost.js.map +1 -0
  465. package/lib/esm/LineStyle.d.ts +312 -0
  466. package/lib/esm/LineStyle.d.ts.map +1 -0
  467. package/lib/esm/LineStyle.js +293 -0
  468. package/lib/esm/LineStyle.js.map +1 -0
  469. package/lib/esm/LocalHub.d.ts +163 -0
  470. package/lib/esm/LocalHub.d.ts.map +1 -0
  471. package/lib/esm/LocalHub.js +583 -0
  472. package/lib/esm/LocalHub.js.map +1 -0
  473. package/lib/esm/LocalhostIpcHost.d.ts +22 -0
  474. package/lib/esm/LocalhostIpcHost.d.ts.map +1 -0
  475. package/lib/esm/LocalhostIpcHost.js +74 -0
  476. package/lib/esm/LocalhostIpcHost.js.map +1 -0
  477. package/lib/esm/LockControl.d.ts +73 -0
  478. package/lib/esm/LockControl.d.ts.map +1 -0
  479. package/lib/esm/LockControl.js +9 -0
  480. package/lib/esm/LockControl.js.map +1 -0
  481. package/lib/esm/Material.d.ts +150 -0
  482. package/lib/esm/Material.d.ts.map +1 -0
  483. package/lib/esm/Material.js +264 -0
  484. package/lib/esm/Material.js.map +1 -0
  485. package/lib/esm/Model.d.ts +411 -0
  486. package/lib/esm/Model.d.ts.map +1 -0
  487. package/lib/esm/Model.js +572 -0
  488. package/lib/esm/Model.js.map +1 -0
  489. package/lib/esm/NativeAppStorage.d.ts +52 -0
  490. package/lib/esm/NativeAppStorage.d.ts.map +1 -0
  491. package/lib/esm/NativeAppStorage.js +205 -0
  492. package/lib/esm/NativeAppStorage.js.map +1 -0
  493. package/lib/esm/NativeHost.d.ts +53 -0
  494. package/lib/esm/NativeHost.d.ts.map +1 -0
  495. package/lib/esm/NativeHost.js +161 -0
  496. package/lib/esm/NativeHost.js.map +1 -0
  497. package/lib/esm/NavigationRelationship.d.ts +185 -0
  498. package/lib/esm/NavigationRelationship.d.ts.map +1 -0
  499. package/lib/esm/NavigationRelationship.js +238 -0
  500. package/lib/esm/NavigationRelationship.js.map +1 -0
  501. package/lib/esm/PromiseMemoizer.d.ts +48 -0
  502. package/lib/esm/PromiseMemoizer.d.ts.map +1 -0
  503. package/lib/esm/PromiseMemoizer.js +101 -0
  504. package/lib/esm/PromiseMemoizer.js.map +1 -0
  505. package/lib/esm/PropertyStore.d.ts +134 -0
  506. package/lib/esm/PropertyStore.d.ts.map +1 -0
  507. package/lib/esm/PropertyStore.js +177 -0
  508. package/lib/esm/PropertyStore.js.map +1 -0
  509. package/lib/esm/Relationship.d.ts +399 -0
  510. package/lib/esm/Relationship.d.ts.map +1 -0
  511. package/lib/esm/Relationship.js +476 -0
  512. package/lib/esm/Relationship.js.map +1 -0
  513. package/lib/esm/RpcBackend.d.ts +6 -0
  514. package/lib/esm/RpcBackend.d.ts.map +1 -0
  515. package/lib/esm/RpcBackend.js +28 -0
  516. package/lib/esm/RpcBackend.js.map +1 -0
  517. package/lib/esm/SQLiteDb.d.ts +324 -0
  518. package/lib/esm/SQLiteDb.d.ts.map +1 -0
  519. package/lib/esm/SQLiteDb.js +380 -0
  520. package/lib/esm/SQLiteDb.js.map +1 -0
  521. package/lib/esm/Schema.d.ts +79 -0
  522. package/lib/esm/Schema.d.ts.map +1 -0
  523. package/lib/esm/Schema.js +113 -0
  524. package/lib/esm/Schema.js.map +1 -0
  525. package/lib/esm/SchemaSync.d.ts +47 -0
  526. package/lib/esm/SchemaSync.d.ts.map +1 -0
  527. package/lib/esm/SchemaSync.js +148 -0
  528. package/lib/esm/SchemaSync.js.map +1 -0
  529. package/lib/esm/SchemaUtils.d.ts +19 -0
  530. package/lib/esm/SchemaUtils.d.ts.map +1 -0
  531. package/lib/esm/SchemaUtils.js +37 -0
  532. package/lib/esm/SchemaUtils.js.map +1 -0
  533. package/lib/esm/SheetIndex.d.ts +148 -0
  534. package/lib/esm/SheetIndex.d.ts.map +1 -0
  535. package/lib/esm/SheetIndex.js +228 -0
  536. package/lib/esm/SheetIndex.js.map +1 -0
  537. package/lib/esm/SqliteChangesetReader.d.ts +278 -0
  538. package/lib/esm/SqliteChangesetReader.d.ts.map +1 -0
  539. package/lib/esm/SqliteChangesetReader.js +337 -0
  540. package/lib/esm/SqliteChangesetReader.js.map +1 -0
  541. package/lib/esm/SqliteStatement.d.ts +375 -0
  542. package/lib/esm/SqliteStatement.d.ts.map +1 -0
  543. package/lib/esm/SqliteStatement.js +615 -0
  544. package/lib/esm/SqliteStatement.js.map +1 -0
  545. package/lib/esm/TextAnnotationElement.d.ts +54 -0
  546. package/lib/esm/TextAnnotationElement.d.ts.map +1 -0
  547. package/lib/esm/TextAnnotationElement.js +89 -0
  548. package/lib/esm/TextAnnotationElement.js.map +1 -0
  549. package/lib/esm/TextAnnotationGeometry.d.ts +32 -0
  550. package/lib/esm/TextAnnotationGeometry.d.ts.map +1 -0
  551. package/lib/esm/TextAnnotationGeometry.js +181 -0
  552. package/lib/esm/TextAnnotationGeometry.js.map +1 -0
  553. package/lib/esm/TextAnnotationLayout.d.ts +177 -0
  554. package/lib/esm/TextAnnotationLayout.d.ts.map +1 -0
  555. package/lib/esm/TextAnnotationLayout.js +513 -0
  556. package/lib/esm/TextAnnotationLayout.js.map +1 -0
  557. package/lib/esm/Texture.d.ts +58 -0
  558. package/lib/esm/Texture.d.ts.map +1 -0
  559. package/lib/esm/Texture.js +81 -0
  560. package/lib/esm/Texture.js.map +1 -0
  561. package/lib/esm/TileStorage.d.ts +59 -0
  562. package/lib/esm/TileStorage.d.ts.map +1 -0
  563. package/lib/esm/TileStorage.js +158 -0
  564. package/lib/esm/TileStorage.js.map +1 -0
  565. package/lib/esm/TxnManager.d.ts +296 -0
  566. package/lib/esm/TxnManager.d.ts.map +1 -0
  567. package/lib/esm/TxnManager.js +620 -0
  568. package/lib/esm/TxnManager.js.map +1 -0
  569. package/lib/esm/ViewDefinition.d.ts +492 -0
  570. package/lib/esm/ViewDefinition.d.ts.map +1 -0
  571. package/lib/esm/ViewDefinition.js +846 -0
  572. package/lib/esm/ViewDefinition.js.map +1 -0
  573. package/lib/esm/ViewStateHydrator.d.ts +14 -0
  574. package/lib/esm/ViewStateHydrator.d.ts.map +1 -0
  575. package/lib/esm/ViewStateHydrator.js +89 -0
  576. package/lib/esm/ViewStateHydrator.js.map +1 -0
  577. package/lib/esm/ViewStore.d.ts +502 -0
  578. package/lib/esm/ViewStore.d.ts.map +1 -0
  579. package/lib/esm/ViewStore.js +1260 -0
  580. package/lib/esm/ViewStore.js.map +1 -0
  581. package/lib/esm/core-backend.d.ts +183 -0
  582. package/lib/esm/core-backend.d.ts.map +1 -0
  583. package/lib/esm/core-backend.js +187 -0
  584. package/lib/esm/core-backend.js.map +1 -0
  585. package/lib/esm/domains/FunctionalElements.d.ts +86 -0
  586. package/lib/esm/domains/FunctionalElements.d.ts.map +1 -0
  587. package/lib/esm/domains/FunctionalElements.js +117 -0
  588. package/lib/esm/domains/FunctionalElements.js.map +1 -0
  589. package/lib/esm/domains/FunctionalSchema.d.ts +14 -0
  590. package/lib/esm/domains/FunctionalSchema.d.ts.map +1 -0
  591. package/lib/esm/domains/FunctionalSchema.js +37 -0
  592. package/lib/esm/domains/FunctionalSchema.js.map +1 -0
  593. package/lib/esm/domains/GenericElements.d.ts +160 -0
  594. package/lib/esm/domains/GenericElements.d.ts.map +1 -0
  595. package/lib/esm/domains/GenericElements.js +225 -0
  596. package/lib/esm/domains/GenericElements.js.map +1 -0
  597. package/lib/esm/domains/GenericSchema.d.ts +11 -0
  598. package/lib/esm/domains/GenericSchema.d.ts.map +1 -0
  599. package/lib/esm/domains/GenericSchema.js +25 -0
  600. package/lib/esm/domains/GenericSchema.js.map +1 -0
  601. package/lib/esm/internal/ChangesetConflictArgs.d.ts +62 -0
  602. package/lib/esm/internal/ChangesetConflictArgs.d.ts.map +1 -0
  603. package/lib/esm/internal/ChangesetConflictArgs.js +104 -0
  604. package/lib/esm/internal/ChangesetConflictArgs.js.map +1 -0
  605. package/lib/esm/internal/ChannelAdmin.d.ts +34 -0
  606. package/lib/esm/internal/ChannelAdmin.d.ts.map +1 -0
  607. package/lib/esm/internal/ChannelAdmin.js +116 -0
  608. package/lib/esm/internal/ChannelAdmin.js.map +1 -0
  609. package/lib/esm/internal/ElementLRUCache.d.ts +28 -0
  610. package/lib/esm/internal/ElementLRUCache.d.ts.map +1 -0
  611. package/lib/esm/internal/ElementLRUCache.js +116 -0
  612. package/lib/esm/internal/ElementLRUCache.js.map +1 -0
  613. package/lib/esm/internal/FontFileImpl.d.ts +34 -0
  614. package/lib/esm/internal/FontFileImpl.d.ts.map +1 -0
  615. package/lib/esm/internal/FontFileImpl.js +135 -0
  616. package/lib/esm/internal/FontFileImpl.js.map +1 -0
  617. package/lib/esm/internal/HubMock.d.ts +94 -0
  618. package/lib/esm/internal/HubMock.d.ts.map +1 -0
  619. package/lib/esm/internal/HubMock.js +242 -0
  620. package/lib/esm/internal/HubMock.js.map +1 -0
  621. package/lib/esm/internal/IModelDbFontsImpl.d.ts +7 -0
  622. package/lib/esm/internal/IModelDbFontsImpl.d.ts.map +1 -0
  623. package/lib/esm/internal/IModelDbFontsImpl.js +183 -0
  624. package/lib/esm/internal/IModelDbFontsImpl.js.map +1 -0
  625. package/lib/esm/internal/NativePlatform.d.ts +15 -0
  626. package/lib/esm/internal/NativePlatform.d.ts.map +1 -0
  627. package/lib/esm/internal/NativePlatform.js +43 -0
  628. package/lib/esm/internal/NativePlatform.js.map +1 -0
  629. package/lib/esm/internal/NoLocks.d.ts +6 -0
  630. package/lib/esm/internal/NoLocks.d.ts.map +1 -0
  631. package/lib/esm/internal/NoLocks.js +24 -0
  632. package/lib/esm/internal/NoLocks.js.map +1 -0
  633. package/lib/esm/internal/ServerBasedLocks.d.ts +52 -0
  634. package/lib/esm/internal/ServerBasedLocks.d.ts.map +1 -0
  635. package/lib/esm/internal/ServerBasedLocks.js +175 -0
  636. package/lib/esm/internal/ServerBasedLocks.js.map +1 -0
  637. package/lib/esm/internal/Symbols.d.ts +20 -0
  638. package/lib/esm/internal/Symbols.d.ts.map +1 -0
  639. package/lib/esm/internal/Symbols.js +27 -0
  640. package/lib/esm/internal/Symbols.js.map +1 -0
  641. package/lib/esm/internal/cross-package.d.ts +4 -0
  642. package/lib/esm/internal/cross-package.d.ts.map +1 -0
  643. package/lib/esm/internal/cross-package.js +8 -0
  644. package/lib/esm/internal/cross-package.js.map +1 -0
  645. package/lib/esm/internal/workspace/SettingsImpl.d.ts +43 -0
  646. package/lib/esm/internal/workspace/SettingsImpl.d.ts.map +1 -0
  647. package/lib/esm/internal/workspace/SettingsImpl.js +154 -0
  648. package/lib/esm/internal/workspace/SettingsImpl.js.map +1 -0
  649. package/lib/esm/internal/workspace/SettingsSchemasImpl.d.ts +6 -0
  650. package/lib/esm/internal/workspace/SettingsSchemasImpl.d.ts.map +1 -0
  651. package/lib/esm/internal/workspace/SettingsSchemasImpl.js +268 -0
  652. package/lib/esm/internal/workspace/SettingsSchemasImpl.js.map +1 -0
  653. package/lib/esm/internal/workspace/WorkspaceImpl.d.ts +27 -0
  654. package/lib/esm/internal/workspace/WorkspaceImpl.d.ts.map +1 -0
  655. package/lib/esm/internal/workspace/WorkspaceImpl.js +627 -0
  656. package/lib/esm/internal/workspace/WorkspaceImpl.js.map +1 -0
  657. package/lib/esm/internal/workspace/WorkspaceSqliteDb.d.ts +10 -0
  658. package/lib/esm/internal/workspace/WorkspaceSqliteDb.d.ts.map +1 -0
  659. package/lib/esm/internal/workspace/WorkspaceSqliteDb.js +35 -0
  660. package/lib/esm/internal/workspace/WorkspaceSqliteDb.js.map +1 -0
  661. package/lib/esm/rpc/multipart.d.ts +12 -0
  662. package/lib/esm/rpc/multipart.d.ts.map +1 -0
  663. package/lib/esm/rpc/multipart.js +67 -0
  664. package/lib/esm/rpc/multipart.js.map +1 -0
  665. package/lib/esm/rpc/tracing.d.ts +29 -0
  666. package/lib/esm/rpc/tracing.d.ts.map +1 -0
  667. package/lib/esm/rpc/tracing.js +71 -0
  668. package/lib/esm/rpc/tracing.js.map +1 -0
  669. package/lib/esm/rpc/web/logging.d.ts +10 -0
  670. package/lib/esm/rpc/web/logging.d.ts.map +1 -0
  671. package/lib/esm/rpc/web/logging.js +41 -0
  672. package/lib/esm/rpc/web/logging.js.map +1 -0
  673. package/lib/esm/rpc/web/request.d.ts +7 -0
  674. package/lib/esm/rpc/web/request.d.ts.map +1 -0
  675. package/lib/esm/rpc/web/request.js +71 -0
  676. package/lib/esm/rpc/web/request.js.map +1 -0
  677. package/lib/esm/rpc/web/response.d.ts +7 -0
  678. package/lib/esm/rpc/web/response.d.ts.map +1 -0
  679. package/lib/esm/rpc/web/response.js +136 -0
  680. package/lib/esm/rpc/web/response.js.map +1 -0
  681. package/lib/esm/rpc-impl/DevToolsRpcImpl.d.ts +16 -0
  682. package/lib/esm/rpc-impl/DevToolsRpcImpl.d.ts.map +1 -0
  683. package/lib/esm/rpc-impl/DevToolsRpcImpl.js +29 -0
  684. package/lib/esm/rpc-impl/DevToolsRpcImpl.js.map +1 -0
  685. package/lib/esm/rpc-impl/IModelReadRpcImpl.d.ts +51 -0
  686. package/lib/esm/rpc-impl/IModelReadRpcImpl.d.ts.map +1 -0
  687. package/lib/esm/rpc-impl/IModelReadRpcImpl.js +314 -0
  688. package/lib/esm/rpc-impl/IModelReadRpcImpl.js.map +1 -0
  689. package/lib/esm/rpc-impl/IModelTileRpcImpl.d.ts +21 -0
  690. package/lib/esm/rpc-impl/IModelTileRpcImpl.d.ts.map +1 -0
  691. package/lib/esm/rpc-impl/IModelTileRpcImpl.js +193 -0
  692. package/lib/esm/rpc-impl/IModelTileRpcImpl.js.map +1 -0
  693. package/lib/esm/rpc-impl/RpcBriefcaseUtility.d.ts +45 -0
  694. package/lib/esm/rpc-impl/RpcBriefcaseUtility.d.ts.map +1 -0
  695. package/lib/esm/rpc-impl/RpcBriefcaseUtility.js +155 -0
  696. package/lib/esm/rpc-impl/RpcBriefcaseUtility.js.map +1 -0
  697. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.d.ts +18 -0
  698. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.d.ts.map +1 -0
  699. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.js +41 -0
  700. package/lib/esm/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -0
  701. package/lib/esm/test/AdvancedEqual.d.ts +38 -0
  702. package/lib/esm/test/AdvancedEqual.d.ts.map +1 -0
  703. package/lib/esm/test/AdvancedEqual.js +67 -0
  704. package/lib/esm/test/AdvancedEqual.js.map +1 -0
  705. package/lib/esm/test/AttachDb.test.d.ts +2 -0
  706. package/lib/esm/test/AttachDb.test.d.ts.map +1 -0
  707. package/lib/esm/test/AttachDb.test.js +157 -0
  708. package/lib/esm/test/AttachDb.test.js.map +1 -0
  709. package/lib/esm/test/ElementLRUCache.test.d.ts +2 -0
  710. package/lib/esm/test/ElementLRUCache.test.d.ts.map +1 -0
  711. package/lib/esm/test/ElementLRUCache.test.js +212 -0
  712. package/lib/esm/test/ElementLRUCache.test.js.map +1 -0
  713. package/lib/esm/test/GeometryTestUtil.d.ts +7 -0
  714. package/lib/esm/test/GeometryTestUtil.d.ts.map +1 -0
  715. package/lib/esm/test/GeometryTestUtil.js +25 -0
  716. package/lib/esm/test/GeometryTestUtil.js.map +1 -0
  717. package/lib/esm/test/IModelHost.test.d.ts +2 -0
  718. package/lib/esm/test/IModelHost.test.d.ts.map +1 -0
  719. package/lib/esm/test/IModelHost.test.js +187 -0
  720. package/lib/esm/test/IModelHost.test.js.map +1 -0
  721. package/lib/esm/test/IModelTestUtils.d.ts +177 -0
  722. package/lib/esm/test/IModelTestUtils.d.ts.map +1 -0
  723. package/lib/esm/test/IModelTestUtils.js +1146 -0
  724. package/lib/esm/test/IModelTestUtils.js.map +1 -0
  725. package/lib/esm/test/ImageSourceConversion.test.d.ts +2 -0
  726. package/lib/esm/test/ImageSourceConversion.test.d.ts.map +1 -0
  727. package/lib/esm/test/ImageSourceConversion.test.js +171 -0
  728. package/lib/esm/test/ImageSourceConversion.test.js.map +1 -0
  729. package/lib/esm/test/IpcHost.test.d.ts +2 -0
  730. package/lib/esm/test/IpcHost.test.d.ts.map +1 -0
  731. package/lib/esm/test/IpcHost.test.js +55 -0
  732. package/lib/esm/test/IpcHost.test.js.map +1 -0
  733. package/lib/esm/test/KnownTestLocations.d.ts +7 -0
  734. package/lib/esm/test/KnownTestLocations.d.ts.map +1 -0
  735. package/lib/esm/test/KnownTestLocations.js +27 -0
  736. package/lib/esm/test/KnownTestLocations.js.map +1 -0
  737. package/lib/esm/test/PrintElementTree.d.ts +7 -0
  738. package/lib/esm/test/PrintElementTree.d.ts.map +1 -0
  739. package/lib/esm/test/PrintElementTree.js +36 -0
  740. package/lib/esm/test/PrintElementTree.js.map +1 -0
  741. package/lib/esm/test/PropertyDb.test.d.ts +2 -0
  742. package/lib/esm/test/PropertyDb.test.d.ts.map +1 -0
  743. package/lib/esm/test/PropertyDb.test.js +71 -0
  744. package/lib/esm/test/PropertyDb.test.js.map +1 -0
  745. package/lib/esm/test/RevisionUtility.d.ts +33 -0
  746. package/lib/esm/test/RevisionUtility.d.ts.map +1 -0
  747. package/lib/esm/test/RevisionUtility.js +52 -0
  748. package/lib/esm/test/RevisionUtility.js.map +1 -0
  749. package/lib/esm/test/SchemaUtils.test.d.ts +2 -0
  750. package/lib/esm/test/SchemaUtils.test.d.ts.map +1 -0
  751. package/lib/esm/test/SchemaUtils.test.js +99 -0
  752. package/lib/esm/test/SchemaUtils.test.js.map +1 -0
  753. package/lib/esm/test/SequentialLogMatcher.d.ts +35 -0
  754. package/lib/esm/test/SequentialLogMatcher.d.ts.map +1 -0
  755. package/lib/esm/test/SequentialLogMatcher.js +130 -0
  756. package/lib/esm/test/SequentialLogMatcher.js.map +1 -0
  757. package/lib/esm/test/TestChangeSetUtility.d.ts +23 -0
  758. package/lib/esm/test/TestChangeSetUtility.d.ts.map +1 -0
  759. package/lib/esm/test/TestChangeSetUtility.js +65 -0
  760. package/lib/esm/test/TestChangeSetUtility.js.map +1 -0
  761. package/lib/esm/test/TestUtils.d.ts +38 -0
  762. package/lib/esm/test/TestUtils.d.ts.map +1 -0
  763. package/lib/esm/test/TestUtils.js +99 -0
  764. package/lib/esm/test/TestUtils.js.map +1 -0
  765. package/lib/esm/test/annotations/TextAnnotation.test.d.ts +2 -0
  766. package/lib/esm/test/annotations/TextAnnotation.test.d.ts.map +1 -0
  767. package/lib/esm/test/annotations/TextAnnotation.test.js +1135 -0
  768. package/lib/esm/test/annotations/TextAnnotation.test.js.map +1 -0
  769. package/lib/esm/test/categories/Category.test.d.ts +2 -0
  770. package/lib/esm/test/categories/Category.test.d.ts.map +1 -0
  771. package/lib/esm/test/categories/Category.test.js +51 -0
  772. package/lib/esm/test/categories/Category.test.js.map +1 -0
  773. package/lib/esm/test/codespec/CodeSpec.test.d.ts +2 -0
  774. package/lib/esm/test/codespec/CodeSpec.test.d.ts.map +1 -0
  775. package/lib/esm/test/codespec/CodeSpec.test.js +51 -0
  776. package/lib/esm/test/codespec/CodeSpec.test.js.map +1 -0
  777. package/lib/esm/test/ecdb/CTE.test.d.ts +2 -0
  778. package/lib/esm/test/ecdb/CTE.test.d.ts.map +1 -0
  779. package/lib/esm/test/ecdb/CTE.test.js +177 -0
  780. package/lib/esm/test/ecdb/CTE.test.js.map +1 -0
  781. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.d.ts +2 -0
  782. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.d.ts.map +1 -0
  783. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js +167 -0
  784. package/lib/esm/test/ecdb/ConcurrentQueryLoad.test.js.map +1 -0
  785. package/lib/esm/test/ecdb/ECDb.test.d.ts +2 -0
  786. package/lib/esm/test/ecdb/ECDb.test.d.ts.map +1 -0
  787. package/lib/esm/test/ecdb/ECDb.test.js +653 -0
  788. package/lib/esm/test/ecdb/ECDb.test.js.map +1 -0
  789. package/lib/esm/test/ecdb/ECDbTestHelper.d.ts +5 -0
  790. package/lib/esm/test/ecdb/ECDbTestHelper.d.ts.map +1 -0
  791. package/lib/esm/test/ecdb/ECDbTestHelper.js +28 -0
  792. package/lib/esm/test/ecdb/ECDbTestHelper.js.map +1 -0
  793. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.d.ts +2 -0
  794. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.d.ts.map +1 -0
  795. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.js +63 -0
  796. package/lib/esm/test/ecdb/ECSchemaXmlContext.test.js.map +1 -0
  797. package/lib/esm/test/ecdb/ECSqlAst.test.d.ts +5 -0
  798. package/lib/esm/test/ecdb/ECSqlAst.test.d.ts.map +1 -0
  799. package/lib/esm/test/ecdb/ECSqlAst.test.js +972 -0
  800. package/lib/esm/test/ecdb/ECSqlAst.test.js.map +1 -0
  801. package/lib/esm/test/ecdb/ECSqlQuery.test.d.ts +2 -0
  802. package/lib/esm/test/ecdb/ECSqlQuery.test.d.ts.map +1 -0
  803. package/lib/esm/test/ecdb/ECSqlQuery.test.js +753 -0
  804. package/lib/esm/test/ecdb/ECSqlQuery.test.js.map +1 -0
  805. package/lib/esm/test/ecdb/ECSqlReader.test.d.ts +2 -0
  806. package/lib/esm/test/ecdb/ECSqlReader.test.d.ts.map +1 -0
  807. package/lib/esm/test/ecdb/ECSqlReader.test.js +669 -0
  808. package/lib/esm/test/ecdb/ECSqlReader.test.js.map +1 -0
  809. package/lib/esm/test/ecdb/ECSqlStatement.test.d.ts +2 -0
  810. package/lib/esm/test/ecdb/ECSqlStatement.test.d.ts.map +1 -0
  811. package/lib/esm/test/ecdb/ECSqlStatement.test.js +3329 -0
  812. package/lib/esm/test/ecdb/ECSqlStatement.test.js.map +1 -0
  813. package/lib/esm/test/ecdb/SqliteStatement.test.d.ts +2 -0
  814. package/lib/esm/test/ecdb/SqliteStatement.test.d.ts.map +1 -0
  815. package/lib/esm/test/ecdb/SqliteStatement.test.js +510 -0
  816. package/lib/esm/test/ecdb/SqliteStatement.test.js.map +1 -0
  817. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.d.ts +4 -0
  818. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.d.ts.map +1 -0
  819. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js +127 -0
  820. package/lib/esm/test/ecsql/dataset/ECSqlDatasets.js.map +1 -0
  821. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.d.ts +2 -0
  822. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.d.ts.map +1 -0
  823. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js +197 -0
  824. package/lib/esm/test/ecsql/src/ECSqlTestGenerator.js.map +1 -0
  825. package/lib/esm/test/ecsql/src/ECSqlTestParser.d.ts +66 -0
  826. package/lib/esm/test/ecsql/src/ECSqlTestParser.d.ts.map +1 -0
  827. package/lib/esm/test/ecsql/src/ECSqlTestParser.js +420 -0
  828. package/lib/esm/test/ecsql/src/ECSqlTestParser.js.map +1 -0
  829. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.d.ts +2 -0
  830. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.d.ts.map +1 -0
  831. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js +369 -0
  832. package/lib/esm/test/ecsql/src/ECSqlTestRunner.test.js.map +1 -0
  833. package/lib/esm/test/element/DeleteDefinitionElements.test.d.ts +2 -0
  834. package/lib/esm/test/element/DeleteDefinitionElements.test.d.ts.map +1 -0
  835. package/lib/esm/test/element/DeleteDefinitionElements.test.js +208 -0
  836. package/lib/esm/test/element/DeleteDefinitionElements.test.js.map +1 -0
  837. package/lib/esm/test/element/ElementAspect.test.d.ts +2 -0
  838. package/lib/esm/test/element/ElementAspect.test.d.ts.map +1 -0
  839. package/lib/esm/test/element/ElementAspect.test.js +363 -0
  840. package/lib/esm/test/element/ElementAspect.test.js.map +1 -0
  841. package/lib/esm/test/element/ElementDependencyGraph.test.d.ts +2 -0
  842. package/lib/esm/test/element/ElementDependencyGraph.test.d.ts.map +1 -0
  843. package/lib/esm/test/element/ElementDependencyGraph.test.js +383 -0
  844. package/lib/esm/test/element/ElementDependencyGraph.test.js.map +1 -0
  845. package/lib/esm/test/element/ElementRoundTrip.test.d.ts +2 -0
  846. package/lib/esm/test/element/ElementRoundTrip.test.d.ts.map +1 -0
  847. package/lib/esm/test/element/ElementRoundTrip.test.js +926 -0
  848. package/lib/esm/test/element/ElementRoundTrip.test.js.map +1 -0
  849. package/lib/esm/test/element/ExcludedElements.test.d.ts +2 -0
  850. package/lib/esm/test/element/ExcludedElements.test.d.ts.map +1 -0
  851. package/lib/esm/test/element/ExcludedElements.test.js +57 -0
  852. package/lib/esm/test/element/ExcludedElements.test.js.map +1 -0
  853. package/lib/esm/test/element/ExternalSource.test.d.ts +2 -0
  854. package/lib/esm/test/element/ExternalSource.test.d.ts.map +1 -0
  855. package/lib/esm/test/element/ExternalSource.test.js +107 -0
  856. package/lib/esm/test/element/ExternalSource.test.js.map +1 -0
  857. package/lib/esm/test/element/NullStructArray.test.d.ts +2 -0
  858. package/lib/esm/test/element/NullStructArray.test.d.ts.map +1 -0
  859. package/lib/esm/test/element/NullStructArray.test.js +77 -0
  860. package/lib/esm/test/element/NullStructArray.test.js.map +1 -0
  861. package/lib/esm/test/element/UrlLink.test.d.ts +2 -0
  862. package/lib/esm/test/element/UrlLink.test.d.ts.map +1 -0
  863. package/lib/esm/test/element/UrlLink.test.js +36 -0
  864. package/lib/esm/test/element/UrlLink.test.js.map +1 -0
  865. package/lib/esm/test/font/FontFile.test.d.ts +2 -0
  866. package/lib/esm/test/font/FontFile.test.d.ts.map +1 -0
  867. package/lib/esm/test/font/FontFile.test.js +139 -0
  868. package/lib/esm/test/font/FontFile.test.js.map +1 -0
  869. package/lib/esm/test/font/IModelDbFonts.test.d.ts +2 -0
  870. package/lib/esm/test/font/IModelDbFonts.test.d.ts.map +1 -0
  871. package/lib/esm/test/font/IModelDbFonts.test.js +266 -0
  872. package/lib/esm/test/font/IModelDbFonts.test.js.map +1 -0
  873. package/lib/esm/test/hubaccess/BriefcaseManager.test.d.ts +2 -0
  874. package/lib/esm/test/hubaccess/BriefcaseManager.test.d.ts.map +1 -0
  875. package/lib/esm/test/hubaccess/BriefcaseManager.test.js +176 -0
  876. package/lib/esm/test/hubaccess/BriefcaseManager.test.js.map +1 -0
  877. package/lib/esm/test/hubaccess/CheckpointManager.test.d.ts +2 -0
  878. package/lib/esm/test/hubaccess/CheckpointManager.test.d.ts.map +1 -0
  879. package/lib/esm/test/hubaccess/CheckpointManager.test.js +52 -0
  880. package/lib/esm/test/hubaccess/CheckpointManager.test.js.map +1 -0
  881. package/lib/esm/test/imageData.d.ts +9 -0
  882. package/lib/esm/test/imageData.d.ts.map +1 -0
  883. package/lib/esm/test/imageData.js +16 -0
  884. package/lib/esm/test/imageData.js.map +1 -0
  885. package/lib/esm/test/imodel/ElementTreeWalker.test.d.ts +2 -0
  886. package/lib/esm/test/imodel/ElementTreeWalker.test.d.ts.map +1 -0
  887. package/lib/esm/test/imodel/ElementTreeWalker.test.js +383 -0
  888. package/lib/esm/test/imodel/ElementTreeWalker.test.js.map +1 -0
  889. package/lib/esm/test/imodel/GetTextureImage.test.d.ts +2 -0
  890. package/lib/esm/test/imodel/GetTextureImage.test.d.ts.map +1 -0
  891. package/lib/esm/test/imodel/GetTextureImage.test.js +29 -0
  892. package/lib/esm/test/imodel/GetTextureImage.test.js.map +1 -0
  893. package/lib/esm/test/imodel/IModel.test.d.ts +2 -0
  894. package/lib/esm/test/imodel/IModel.test.d.ts.map +1 -0
  895. package/lib/esm/test/imodel/IModel.test.js +2626 -0
  896. package/lib/esm/test/imodel/IModel.test.js.map +1 -0
  897. package/lib/esm/test/imodel/ProjectExtents.test.d.ts +2 -0
  898. package/lib/esm/test/imodel/ProjectExtents.test.d.ts.map +1 -0
  899. package/lib/esm/test/imodel/ProjectExtents.test.js +66 -0
  900. package/lib/esm/test/imodel/ProjectExtents.test.js.map +1 -0
  901. package/lib/esm/test/imodel/SchemaXmlImport.test.d.ts +2 -0
  902. package/lib/esm/test/imodel/SchemaXmlImport.test.d.ts.map +1 -0
  903. package/lib/esm/test/imodel/SchemaXmlImport.test.js +74 -0
  904. package/lib/esm/test/imodel/SchemaXmlImport.test.js.map +1 -0
  905. package/lib/esm/test/index.d.ts +7 -0
  906. package/lib/esm/test/index.d.ts.map +1 -0
  907. package/lib/esm/test/index.js +11 -0
  908. package/lib/esm/test/index.js.map +1 -0
  909. package/lib/esm/test/misc/DevTools.test.d.ts +2 -0
  910. package/lib/esm/test/misc/DevTools.test.d.ts.map +1 -0
  911. package/lib/esm/test/misc/DevTools.test.js +72 -0
  912. package/lib/esm/test/misc/DevTools.test.js.map +1 -0
  913. package/lib/esm/test/misc/EntitySubClasses.test.d.ts +2 -0
  914. package/lib/esm/test/misc/EntitySubClasses.test.d.ts.map +1 -0
  915. package/lib/esm/test/misc/EntitySubClasses.test.js +106 -0
  916. package/lib/esm/test/misc/EntitySubClasses.test.js.map +1 -0
  917. package/lib/esm/test/misc/GeoServices.test.d.ts +2 -0
  918. package/lib/esm/test/misc/GeoServices.test.d.ts.map +1 -0
  919. package/lib/esm/test/misc/GeoServices.test.js +850 -0
  920. package/lib/esm/test/misc/GeoServices.test.js.map +1 -0
  921. package/lib/esm/test/misc/PromiseMemoizer.test.d.ts +2 -0
  922. package/lib/esm/test/misc/PromiseMemoizer.test.d.ts.map +1 -0
  923. package/lib/esm/test/misc/PromiseMemoizer.test.js +111 -0
  924. package/lib/esm/test/misc/PromiseMemoizer.test.js.map +1 -0
  925. package/lib/esm/test/native/DgnDbWorker.test.d.ts +2 -0
  926. package/lib/esm/test/native/DgnDbWorker.test.d.ts.map +1 -0
  927. package/lib/esm/test/native/DgnDbWorker.test.js +159 -0
  928. package/lib/esm/test/native/DgnDbWorker.test.js.map +1 -0
  929. package/lib/esm/test/rpc/response.test.d.ts +2 -0
  930. package/lib/esm/test/rpc/response.test.d.ts.map +1 -0
  931. package/lib/esm/test/rpc/response.test.js +112 -0
  932. package/lib/esm/test/rpc/response.test.js.map +1 -0
  933. package/lib/esm/test/schema/ClassRegistry.test.d.ts +2 -0
  934. package/lib/esm/test/schema/ClassRegistry.test.d.ts.map +1 -0
  935. package/lib/esm/test/schema/ClassRegistry.test.js +679 -0
  936. package/lib/esm/test/schema/ClassRegistry.test.js.map +1 -0
  937. package/lib/esm/test/schema/FunctionalDomain.test.d.ts +2 -0
  938. package/lib/esm/test/schema/FunctionalDomain.test.d.ts.map +1 -0
  939. package/lib/esm/test/schema/FunctionalDomain.test.js +490 -0
  940. package/lib/esm/test/schema/FunctionalDomain.test.js.map +1 -0
  941. package/lib/esm/test/schema/GenericDomain.test.d.ts +2 -0
  942. package/lib/esm/test/schema/GenericDomain.test.d.ts.map +1 -0
  943. package/lib/esm/test/schema/GenericDomain.test.js +133 -0
  944. package/lib/esm/test/schema/GenericDomain.test.js.map +1 -0
  945. package/lib/esm/test/schema/IModelSchemaContext.test.d.ts +2 -0
  946. package/lib/esm/test/schema/IModelSchemaContext.test.d.ts.map +1 -0
  947. package/lib/esm/test/schema/IModelSchemaContext.test.js +95 -0
  948. package/lib/esm/test/schema/IModelSchemaContext.test.js.map +1 -0
  949. package/lib/esm/test/sheetindex/SheetIndex.test.d.ts +4 -0
  950. package/lib/esm/test/sheetindex/SheetIndex.test.d.ts.map +1 -0
  951. package/lib/esm/test/sheetindex/SheetIndex.test.js +312 -0
  952. package/lib/esm/test/sheetindex/SheetIndex.test.js.map +1 -0
  953. package/lib/esm/test/standalone/ChangeMerge.test.d.ts +2 -0
  954. package/lib/esm/test/standalone/ChangeMerge.test.d.ts.map +1 -0
  955. package/lib/esm/test/standalone/ChangeMerge.test.js +409 -0
  956. package/lib/esm/test/standalone/ChangeMerge.test.js.map +1 -0
  957. package/lib/esm/test/standalone/ChangesetReader.test.d.ts +2 -0
  958. package/lib/esm/test/standalone/ChangesetReader.test.d.ts.map +1 -0
  959. package/lib/esm/test/standalone/ChangesetReader.test.js +891 -0
  960. package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -0
  961. package/lib/esm/test/standalone/CustomViewState3dCreator.test.d.ts +2 -0
  962. package/lib/esm/test/standalone/CustomViewState3dCreator.test.d.ts.map +1 -0
  963. package/lib/esm/test/standalone/CustomViewState3dCreator.test.js +49 -0
  964. package/lib/esm/test/standalone/CustomViewState3dCreator.test.js.map +1 -0
  965. package/lib/esm/test/standalone/DisplayStyle.test.d.ts +2 -0
  966. package/lib/esm/test/standalone/DisplayStyle.test.d.ts.map +1 -0
  967. package/lib/esm/test/standalone/DisplayStyle.test.js +136 -0
  968. package/lib/esm/test/standalone/DisplayStyle.test.js.map +1 -0
  969. package/lib/esm/test/standalone/Drawing.test.d.ts +2 -0
  970. package/lib/esm/test/standalone/Drawing.test.d.ts.map +1 -0
  971. package/lib/esm/test/standalone/Drawing.test.js +120 -0
  972. package/lib/esm/test/standalone/Drawing.test.js.map +1 -0
  973. package/lib/esm/test/standalone/ElementGraphics.test.d.ts +2 -0
  974. package/lib/esm/test/standalone/ElementGraphics.test.d.ts.map +1 -0
  975. package/lib/esm/test/standalone/ElementGraphics.test.js +127 -0
  976. package/lib/esm/test/standalone/ElementGraphics.test.js.map +1 -0
  977. package/lib/esm/test/standalone/ElementMesh.test.d.ts +2 -0
  978. package/lib/esm/test/standalone/ElementMesh.test.d.ts.map +1 -0
  979. package/lib/esm/test/standalone/ElementMesh.test.js +142 -0
  980. package/lib/esm/test/standalone/ElementMesh.test.js.map +1 -0
  981. package/lib/esm/test/standalone/ExportGraphics.test.d.ts +2 -0
  982. package/lib/esm/test/standalone/ExportGraphics.test.d.ts.map +1 -0
  983. package/lib/esm/test/standalone/ExportGraphics.test.js +1005 -0
  984. package/lib/esm/test/standalone/ExportGraphics.test.js.map +1 -0
  985. package/lib/esm/test/standalone/GeometryChangeEvents.test.d.ts +2 -0
  986. package/lib/esm/test/standalone/GeometryChangeEvents.test.d.ts.map +1 -0
  987. package/lib/esm/test/standalone/GeometryChangeEvents.test.js +139 -0
  988. package/lib/esm/test/standalone/GeometryChangeEvents.test.js.map +1 -0
  989. package/lib/esm/test/standalone/GeometryStream.test.d.ts +2 -0
  990. package/lib/esm/test/standalone/GeometryStream.test.d.ts.map +1 -0
  991. package/lib/esm/test/standalone/GeometryStream.test.js +2869 -0
  992. package/lib/esm/test/standalone/GeometryStream.test.js.map +1 -0
  993. package/lib/esm/test/standalone/HubMock.test.d.ts +2 -0
  994. package/lib/esm/test/standalone/HubMock.test.d.ts.map +1 -0
  995. package/lib/esm/test/standalone/HubMock.test.js +343 -0
  996. package/lib/esm/test/standalone/HubMock.test.js.map +1 -0
  997. package/lib/esm/test/standalone/IModelWrite.test.d.ts +7 -0
  998. package/lib/esm/test/standalone/IModelWrite.test.d.ts.map +1 -0
  999. package/lib/esm/test/standalone/IModelWrite.test.js +907 -0
  1000. package/lib/esm/test/standalone/IModelWrite.test.js.map +1 -0
  1001. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.d.ts +2 -0
  1002. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.d.ts.map +1 -0
  1003. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js +417 -0
  1004. package/lib/esm/test/standalone/InlineGeometryPartReferences.test.js.map +1 -0
  1005. package/lib/esm/test/standalone/MergeConflict.test.d.ts +7 -0
  1006. package/lib/esm/test/standalone/MergeConflict.test.d.ts.map +1 -0
  1007. package/lib/esm/test/standalone/MergeConflict.test.js +345 -0
  1008. package/lib/esm/test/standalone/MergeConflict.test.js.map +1 -0
  1009. package/lib/esm/test/standalone/NativeAppStorage.test.d.ts +2 -0
  1010. package/lib/esm/test/standalone/NativeAppStorage.test.d.ts.map +1 -0
  1011. package/lib/esm/test/standalone/NativeAppStorage.test.js +121 -0
  1012. package/lib/esm/test/standalone/NativeAppStorage.test.js.map +1 -0
  1013. package/lib/esm/test/standalone/RenderMaterialElement.test.d.ts +2 -0
  1014. package/lib/esm/test/standalone/RenderMaterialElement.test.d.ts.map +1 -0
  1015. package/lib/esm/test/standalone/RenderMaterialElement.test.js +399 -0
  1016. package/lib/esm/test/standalone/RenderMaterialElement.test.js.map +1 -0
  1017. package/lib/esm/test/standalone/RenderTimeline.test.d.ts +2 -0
  1018. package/lib/esm/test/standalone/RenderTimeline.test.d.ts.map +1 -0
  1019. package/lib/esm/test/standalone/RenderTimeline.test.js +71 -0
  1020. package/lib/esm/test/standalone/RenderTimeline.test.js.map +1 -0
  1021. package/lib/esm/test/standalone/SQLiteDb.test.d.ts +2 -0
  1022. package/lib/esm/test/standalone/SQLiteDb.test.d.ts.map +1 -0
  1023. package/lib/esm/test/standalone/SQLiteDb.test.js +63 -0
  1024. package/lib/esm/test/standalone/SQLiteDb.test.js.map +1 -0
  1025. package/lib/esm/test/standalone/SchemaUtils.test.d.ts +2 -0
  1026. package/lib/esm/test/standalone/SchemaUtils.test.d.ts.map +1 -0
  1027. package/lib/esm/test/standalone/SchemaUtils.test.js +25 -0
  1028. package/lib/esm/test/standalone/SchemaUtils.test.js.map +1 -0
  1029. package/lib/esm/test/standalone/SectionDrawing.test.d.ts +2 -0
  1030. package/lib/esm/test/standalone/SectionDrawing.test.d.ts.map +1 -0
  1031. package/lib/esm/test/standalone/SectionDrawing.test.js +83 -0
  1032. package/lib/esm/test/standalone/SectionDrawing.test.js.map +1 -0
  1033. package/lib/esm/test/standalone/ServerBasedLocks.test.d.ts +2 -0
  1034. package/lib/esm/test/standalone/ServerBasedLocks.test.d.ts.map +1 -0
  1035. package/lib/esm/test/standalone/ServerBasedLocks.test.js +279 -0
  1036. package/lib/esm/test/standalone/ServerBasedLocks.test.js.map +1 -0
  1037. package/lib/esm/test/standalone/Setting.test.d.ts +2 -0
  1038. package/lib/esm/test/standalone/Setting.test.d.ts.map +1 -0
  1039. package/lib/esm/test/standalone/Setting.test.js +76 -0
  1040. package/lib/esm/test/standalone/Setting.test.js.map +1 -0
  1041. package/lib/esm/test/standalone/Settings.test.d.ts +2 -0
  1042. package/lib/esm/test/standalone/Settings.test.d.ts.map +1 -0
  1043. package/lib/esm/test/standalone/Settings.test.js +349 -0
  1044. package/lib/esm/test/standalone/Settings.test.js.map +1 -0
  1045. package/lib/esm/test/standalone/SettingsSchemas.test.d.ts +2 -0
  1046. package/lib/esm/test/standalone/SettingsSchemas.test.d.ts.map +1 -0
  1047. package/lib/esm/test/standalone/SettingsSchemas.test.js +31 -0
  1048. package/lib/esm/test/standalone/SettingsSchemas.test.js.map +1 -0
  1049. package/lib/esm/test/standalone/SnapshotDb.test.d.ts +2 -0
  1050. package/lib/esm/test/standalone/SnapshotDb.test.d.ts.map +1 -0
  1051. package/lib/esm/test/standalone/SnapshotDb.test.js +156 -0
  1052. package/lib/esm/test/standalone/SnapshotDb.test.js.map +1 -0
  1053. package/lib/esm/test/standalone/Texture.test.d.ts +2 -0
  1054. package/lib/esm/test/standalone/Texture.test.d.ts.map +1 -0
  1055. package/lib/esm/test/standalone/Texture.test.js +90 -0
  1056. package/lib/esm/test/standalone/Texture.test.js.map +1 -0
  1057. package/lib/esm/test/standalone/TileCache.test.d.ts +9 -0
  1058. package/lib/esm/test/standalone/TileCache.test.d.ts.map +1 -0
  1059. package/lib/esm/test/standalone/TileCache.test.js +127 -0
  1060. package/lib/esm/test/standalone/TileCache.test.js.map +1 -0
  1061. package/lib/esm/test/standalone/TileTree.test.d.ts +2 -0
  1062. package/lib/esm/test/standalone/TileTree.test.d.ts.map +1 -0
  1063. package/lib/esm/test/standalone/TileTree.test.js +241 -0
  1064. package/lib/esm/test/standalone/TileTree.test.js.map +1 -0
  1065. package/lib/esm/test/standalone/TxnManager.test.d.ts +2 -0
  1066. package/lib/esm/test/standalone/TxnManager.test.d.ts.map +1 -0
  1067. package/lib/esm/test/standalone/TxnManager.test.js +878 -0
  1068. package/lib/esm/test/standalone/TxnManager.test.js.map +1 -0
  1069. package/lib/esm/test/standalone/ViewDefinition.test.d.ts +2 -0
  1070. package/lib/esm/test/standalone/ViewDefinition.test.d.ts.map +1 -0
  1071. package/lib/esm/test/standalone/ViewDefinition.test.js +279 -0
  1072. package/lib/esm/test/standalone/ViewDefinition.test.js.map +1 -0
  1073. package/lib/esm/test/standalone/ViewStoreDb.test.d.ts +2 -0
  1074. package/lib/esm/test/standalone/ViewStoreDb.test.d.ts.map +1 -0
  1075. package/lib/esm/test/standalone/ViewStoreDb.test.js +288 -0
  1076. package/lib/esm/test/standalone/ViewStoreDb.test.js.map +1 -0
  1077. package/lib/esm/test/standalone/Workspace.test.d.ts +2 -0
  1078. package/lib/esm/test/standalone/Workspace.test.d.ts.map +1 -0
  1079. package/lib/esm/test/standalone/Workspace.test.js +162 -0
  1080. package/lib/esm/test/standalone/Workspace.test.js.map +1 -0
  1081. package/lib/esm/workspace/Settings.d.ts +216 -0
  1082. package/lib/esm/workspace/Settings.d.ts.map +1 -0
  1083. package/lib/esm/workspace/Settings.js +83 -0
  1084. package/lib/esm/workspace/Settings.js.map +1 -0
  1085. package/lib/esm/workspace/SettingsSchemas.d.ts +135 -0
  1086. package/lib/esm/workspace/SettingsSchemas.d.ts.map +1 -0
  1087. package/lib/esm/workspace/SettingsSchemas.js +9 -0
  1088. package/lib/esm/workspace/SettingsSchemas.js.map +1 -0
  1089. package/lib/esm/workspace/Workspace.d.ts +500 -0
  1090. package/lib/esm/workspace/Workspace.d.ts.map +1 -0
  1091. package/lib/esm/workspace/Workspace.js +97 -0
  1092. package/lib/esm/workspace/Workspace.js.map +1 -0
  1093. package/lib/esm/workspace/WorkspaceEditor.d.ts +240 -0
  1094. package/lib/esm/workspace/WorkspaceEditor.d.ts.map +1 -0
  1095. package/lib/esm/workspace/WorkspaceEditor.js +31 -0
  1096. package/lib/esm/workspace/WorkspaceEditor.js.map +1 -0
  1097. package/package.json +37 -29
  1098. package/lib/cjs/HubMock.d.ts.map +0 -1
  1099. package/lib/cjs/HubMock.js.map +0 -1
  1100. package/lib/cjs/IModelCloneContext.d.ts +0 -9
  1101. package/lib/cjs/IModelCloneContext.d.ts.map +0 -1
  1102. package/lib/cjs/IModelCloneContext.js.map +0 -1
@@ -0,0 +1,1390 @@
1
+ /** @packageDocumentation
2
+ * @module iModels
3
+ */
4
+ import { IModelJsNative } from "@bentley/imodeljs-native";
5
+ import { AccessToken, BeEvent, BentleyStatus, DbResult, GuidString, Id64Arg, Id64Array, Id64Set, Id64String, IModelStatus, LRUMap, OpenMode } from "@itwin/core-bentley";
6
+ import { AxisAlignedBox3d, BRepGeometryCreate, BriefcaseId, ChangesetIdWithIndex, Code, CodeProps, CreateEmptySnapshotIModelProps, CreateEmptyStandaloneIModelProps, CreateSnapshotIModelProps, EcefLocation, ECSchemaProps, ECSqlReader, ElementAspectProps, ElementGeometryCacheOperationRequestProps, ElementGeometryCacheRequestProps, ElementGeometryCacheResponseProps, ElementGeometryRequest, ElementGraphicsRequestProps, ElementLoadProps, ElementProps, EntityMetaData, EntityProps, EntityQueryParams, FilePropertyProps, FontMap, GeoCoordinatesRequestProps, GeoCoordinatesResponseProps, GeometryContainmentRequestProps, GeometryContainmentResponseProps, IModel, IModelCoordinatesRequestProps, IModelCoordinatesResponseProps, IModelTileTreeProps, LocalFileName, MassPropertiesRequestProps, MassPropertiesResponseProps, ModelExtentsProps, ModelProps, OpenBriefcaseProps, OpenCheckpointArgs, OpenSqliteArgs, PropertyCallback, QueryBinder, QueryOptions, SchemaState, SnapRequestProps, SnapResponseProps, SnapshotOpenOptions, SubCategoryResultRow, TextureData, TextureLoadProps, ThumbnailProps, UpgradeOptions, ViewDefinitionProps, ViewIdString, ViewQueryParams, ViewStateLoadProps, ViewStateProps } from "@itwin/core-common";
7
+ import { Range3d } from "@itwin/core-geometry";
8
+ import { PullChangesArgs, PushChangesArgs, RevertChangesArgs } from "./BriefcaseManager";
9
+ import { ChannelControl } from "./ChannelControl";
10
+ import { CheckpointProps } from "./CheckpointManager";
11
+ import { EntityJsClassMap, MetaDataRegistry } from "./ClassRegistry";
12
+ import { CloudSqlite } from "./CloudSqlite";
13
+ import { CodeService } from "./CodeService";
14
+ import { CodeSpecs } from "./CodeSpecs";
15
+ import { ECSchemaXmlContext } from "./ECSchemaXmlContext";
16
+ import { ECSqlStatement } from "./ECSqlStatement";
17
+ import { Element, Subject } from "./Element";
18
+ import { ElementAspect } from "./ElementAspect";
19
+ import { Entity, EntityClassType } from "./Entity";
20
+ import { ExportGraphicsOptions, ExportPartGraphicsOptions } from "./ExportGraphics";
21
+ import { Model } from "./Model";
22
+ import { Relationships } from "./Relationship";
23
+ import { SqliteStatement } from "./SqliteStatement";
24
+ import { ComputeRangesForTextLayoutArgs, TextLayoutRanges } from "./TextAnnotationLayout";
25
+ import { TxnManager } from "./TxnManager";
26
+ import { ViewDefinition } from "./ViewDefinition";
27
+ import { ViewStore } from "./ViewStore";
28
+ import { SettingsContainer } from "./workspace/Settings";
29
+ import { Workspace } from "./workspace/Workspace";
30
+ import { LockControl } from "./LockControl";
31
+ import type { BlobContainer } from "./BlobContainerService";
32
+ import { IModelDbFonts } from "./IModelDbFonts";
33
+ import { _cache, _nativeDb } from "./internal/Symbols";
34
+ import { SchemaContext } from "@itwin/ecschema-metadata";
35
+ import { SchemaMap } from "./Schema";
36
+ import { ElementLRUCache } from "./internal/ElementLRUCache";
37
+ /** Options for [[IModelDb.Models.updateModel]]
38
+ * @note To mark *only* the geometry as changed, use [[IModelDb.Models.updateGeometryGuid]] instead.
39
+ * @public
40
+ */
41
+ export interface UpdateModelOptions extends ModelProps {
42
+ /** If defined, update the last modify time of the Model */
43
+ updateLastMod?: boolean;
44
+ /** If defined, update the GeometryGuid of the Model */
45
+ geometryChanged?: boolean;
46
+ }
47
+ /** Options supposed to [[IModelDb.Elements.insertElement]].
48
+ * @public
49
+ */
50
+ export interface InsertElementOptions {
51
+ /** If true, instead of assigning a new, unique Id to the inserted element, the inserted element will use the Id specified by the supplied [ElementProps]($common).
52
+ * This is chiefly useful when applying a filtering transformation - i.e., copying some elements from a source iModel to a target iModel and adding no new elements.
53
+ * If this option is `true` then [ElementProps.id]($common) must be a valid Id that is not already used by an element in the iModel.
54
+ * @beta
55
+ */
56
+ forceUseId?: boolean;
57
+ }
58
+ /** Options supplied to [[IModelDb.computeProjectExtents]].
59
+ * @public
60
+ */
61
+ export interface ComputeProjectExtentsOptions {
62
+ /** If true, the result will include `extentsWithOutliers`. */
63
+ reportExtentsWithOutliers?: boolean;
64
+ /** If true, the result will include `outliers`. */
65
+ reportOutliers?: boolean;
66
+ }
67
+ /** The result of [[IModelDb.computeProjectExtents]].
68
+ * @public
69
+ */
70
+ export interface ComputedProjectExtents {
71
+ /** The computed extents, excluding any outlier elements. */
72
+ extents: Range3d;
73
+ /** If requested by caller, the computed extents, *including* any outlier elements. */
74
+ extentsWithOutliers?: Range3d;
75
+ /** If requested by caller, the Ids of outlier elements excluded from the computed extents. */
76
+ outliers?: Id64Array;
77
+ }
78
+ /**
79
+ * Options for the importing of schemas
80
+ * @public
81
+ */
82
+ export interface SchemaImportOptions {
83
+ /**
84
+ * An [[ECSchemaXmlContext]] to use instead of building a default one.
85
+ * This can be useful in rare cases where custom schema location logic is necessary
86
+ * @internal
87
+ */
88
+ ecSchemaXmlContext?: ECSchemaXmlContext;
89
+ }
90
+ /** @internal */
91
+ export declare enum BriefcaseLocalValue {
92
+ StandaloneEdit = "StandaloneEdit",
93
+ NoLocking = "NoLocking"
94
+ }
95
+ /** Arguments supplied to [[IModelDb.exportSchema]] specifying which ECSchema to write to what location on the local file system.
96
+ * @beta
97
+ */
98
+ export interface ExportSchemaArgs {
99
+ /** The name of the ECSchema to export. */
100
+ schemaName: string;
101
+ /** The directory in which to place the created schema file. */
102
+ outputDirectory: LocalFileName;
103
+ /** Optionally, the name of the file to create in [[outputDirectory]].
104
+ * Defaults to <SchemaName>.<SchemaVersion>.ecschema.xml
105
+ */
106
+ outputFileName?: string;
107
+ }
108
+ /** Arguments supplied to [[IModelDb.simplifyElementGeometry]].
109
+ * @beta
110
+ */
111
+ export interface SimplifyElementGeometryArgs {
112
+ /** The Id of the [[GeometricElement]] or [[GeometryPart]] whose geometry is to be simplified. */
113
+ id: Id64String;
114
+ /** If true, simplify by converting each [BRepEntity]($common) in the element's geometry stream to a high-resolution
115
+ * mesh or curve geometry.
116
+ */
117
+ convertBReps?: boolean;
118
+ }
119
+ /** The output of [[IModelDb.inlineGeometryParts]].
120
+ * If [[numCandidateParts]], [[numRefsInlined]], and [[numPartsDeleted ]] are all the same, the operation was fully successful.
121
+ * Otherwise, some errors occurred inlining and/or deleting one or more parts.
122
+ * A part will not be deleted unless it is first successfully inlined.
123
+ * @beta
124
+ */
125
+ export interface InlineGeometryPartsResult {
126
+ /** The number of parts that were determined to have exactly one reference, making them candidates for inlining. */
127
+ numCandidateParts: number;
128
+ /** The number of part references successfully inlined. */
129
+ numRefsInlined: number;
130
+ /** The number of candidate parts that were successfully deleted after inlining. */
131
+ numPartsDeleted: number;
132
+ }
133
+ /** An iModel database file. The database file can either be a briefcase or a snapshot.
134
+ * @see [Accessing iModels]($docs/learning/backend/AccessingIModels.md)
135
+ * @see [About IModelDb]($docs/learning/backend/IModelDb.md)
136
+ * @public
137
+ */
138
+ export declare abstract class IModelDb extends IModel {
139
+ private _initialized;
140
+ /** Keep track of open imodels to support `tryFind` for RPC purposes */
141
+ private static readonly _openDbs;
142
+ static readonly defaultLimit = 1000;
143
+ static readonly maxLimit = 10000;
144
+ readonly models: IModelDb.Models;
145
+ readonly elements: IModelDb.Elements;
146
+ readonly views: IModelDb.Views;
147
+ readonly tiles: IModelDb.Tiles;
148
+ /** @beta */
149
+ readonly channels: ChannelControl;
150
+ private _relationships?;
151
+ private readonly _statementCache;
152
+ private readonly _sqliteStatementCache;
153
+ private _codeSpecs?;
154
+ private _classMetaDataRegistry?;
155
+ private _jsClassMap?;
156
+ private _schemaMap?;
157
+ private _schemaContext?;
158
+ /** @deprecated in 5.0.0. Use [[fonts]]. */
159
+ protected _fontMap?: FontMap;
160
+ private readonly _fonts;
161
+ private _workspace?;
162
+ private readonly _snaps;
163
+ private static _shutdownListener;
164
+ /** @internal */
165
+ protected _locks?: LockControl;
166
+ /** @internal */
167
+ protected _codeService?: CodeService;
168
+ /** @alpha */
169
+ get codeService(): CodeService | undefined;
170
+ /** The [[LockControl]] that orchestrates [concurrent editing]($docs/learning/backend/ConcurrencyControl.md) of this iModel. */
171
+ get locks(): LockControl;
172
+ /** Provides methods for interacting with [font-related information]($docs/learning/backend/Fonts.md) stored in this iModel.
173
+ * @beta
174
+ */
175
+ get fonts(): IModelDbFonts;
176
+ /**
177
+ * Get the [[Workspace]] for this iModel.
178
+ * @beta
179
+ */
180
+ get workspace(): Workspace;
181
+ /**
182
+ * get the cloud container for this iModel, if it was opened from one
183
+ * @beta
184
+ */
185
+ get cloudContainer(): CloudSqlite.CloudContainer | undefined;
186
+ /** Acquire the exclusive schema lock on this iModel.
187
+ * @note: To acquire the schema lock, all other briefcases must first release *all* their locks. No other briefcases
188
+ * will be able to acquire *any* locks while the schema lock is held.
189
+ */
190
+ acquireSchemaLock(): Promise<void>;
191
+ /** determine whether the schema lock is currently held for this iModel. */
192
+ get holdsSchemaLock(): boolean;
193
+ /** Event called after a changeset is applied to this IModelDb. */
194
+ readonly onChangesetApplied: BeEvent<() => void>;
195
+ /** @internal */
196
+ notifyChangesetApplied(): void;
197
+ /** @internal */
198
+ restartDefaultTxn(): void;
199
+ /** @deprecated in 5.0.0. Use [[fonts]]. */
200
+ get fontMap(): FontMap;
201
+ /** @internal */
202
+ clearFontMap(): void;
203
+ /** Check if this iModel has been opened read-only or not. */
204
+ get isReadonly(): boolean;
205
+ /** The Guid that identifies this iModel. */
206
+ get iModelId(): GuidString;
207
+ /** @internal*/
208
+ readonly [_nativeDb]: IModelJsNative.DgnDb;
209
+ /** Get the full path fileName of this iModelDb
210
+ * @note this member is only valid while the iModel is opened.
211
+ */
212
+ get pathName(): LocalFileName;
213
+ /** Get the full path to this iModel's "watch file".
214
+ * A read-only briefcase opened with `watchForChanges: true` creates this file next to the briefcase file on open, if it doesn't already exist.
215
+ * A writable briefcase "touches" this file if it exists whenever it commits changes to the briefcase.
216
+ * The read-only briefcase can use a file watcher to react when the writable briefcase makes changes to the briefcase.
217
+ * This is more reliable than watching the sqlite WAL file.
218
+ * @internal
219
+ */
220
+ get watchFilePathName(): LocalFileName;
221
+ /** @internal */
222
+ protected constructor(args: {
223
+ nativeDb: IModelJsNative.DgnDb;
224
+ key: string;
225
+ changeset?: ChangesetIdWithIndex;
226
+ });
227
+ /**
228
+ * Attach an iModel file to this connection and load and register its schemas.
229
+ * @note There are some reserve tablespace names that cannot be used. They are 'main', 'schema_sync_db', 'ecchange' & 'temp'
230
+ * @param fileName IModel file name
231
+ * @param alias identifier for the attached file. This identifer is used to access schema from the attached file. e.g. if alias is 'abc' then schema can be accessed using 'abc.MySchema.MyClass'
232
+ *
233
+ * *Example:*
234
+ * ``` ts
235
+ * [[include:IModelDb_attachDb.code]]
236
+ * ```
237
+ */
238
+ attachDb(fileName: string, alias: string): void;
239
+ /**
240
+ * Detach the attached file from this connection. The attached file is closed and its schemas are unregistered.
241
+ * @note There are some reserve tablespace names that cannot be used. They are 'main', 'schema_sync_db', 'ecchange' & 'temp'
242
+ * @param alias identifer that was used in the call to [[attachDb]]
243
+ *
244
+ * *Example:*
245
+ * ``` ts
246
+ * [[include:IModelDb_attachDb.code]]
247
+ * ```
248
+ */
249
+ detachDb(alias: string): void;
250
+ /** Close this IModel, if it is currently open, and save changes if it was opened in ReadWrite mode. */
251
+ close(): void;
252
+ /** @internal */
253
+ refreshContainerForRpc(_userAccessToken: AccessToken): Promise<void>;
254
+ /** Event called when the iModel is about to be closed. */
255
+ readonly onBeforeClose: BeEvent<() => void>;
256
+ /**
257
+ * Called by derived classes before closing the connection
258
+ * @internal
259
+ */
260
+ protected beforeClose(): void;
261
+ /** @internal */
262
+ protected initializeIModelDb(when?: "pullMerge"): void;
263
+ /** Returns true if this is a BriefcaseDb
264
+ * @see [[BriefcaseDb.open]]
265
+ */
266
+ get isBriefcase(): boolean;
267
+ /** Type guard for instanceof [[BriefcaseDb]] */
268
+ isBriefcaseDb(): this is BriefcaseDb;
269
+ /** Returns true if this is a SnapshotDb
270
+ * @see [[SnapshotDb.open]]
271
+ */
272
+ get isSnapshot(): boolean;
273
+ /** Type guard for instanceof [[SnapshotDb]] */
274
+ isSnapshotDb(): this is SnapshotDb;
275
+ /** Returns true if this is a *standalone* iModel
276
+ * @see [[StandaloneDb.open]]
277
+ * @internal
278
+ */
279
+ get isStandalone(): boolean;
280
+ /** Type guard for instanceof [[StandaloneDb]]. */
281
+ isStandaloneDb(): this is StandaloneDb;
282
+ /** Return `true` if the underlying nativeDb is open and valid.
283
+ * @internal
284
+ */
285
+ get isOpen(): boolean;
286
+ /** Get the briefcase Id of this iModel */
287
+ getBriefcaseId(): BriefcaseId;
288
+ /**
289
+ * Use a prepared ECSQL statement, potentially from the statement cache. If the requested statement doesn't exist
290
+ * in the statement cache, a new statement is prepared. After the callback completes, the statement is reset and saved
291
+ * in the statement cache so it can be reused in the future. Use this method for ECSQL statements that will be
292
+ * reused often and are expensive to prepare. The statement cache holds the most recently used statements, discarding
293
+ * the oldest statements as it fills. For statements you don't intend to reuse, instead use [[withStatement]].
294
+ * @param sql The SQLite SQL statement to execute
295
+ * @param callback the callback to invoke on the prepared statement
296
+ * @param logErrors Determines if error will be logged if statement fail to prepare
297
+ * @returns the value returned by `callback`.
298
+ * @see [[withStatement]]
299
+ * @public
300
+ * @deprecated in 4.11. Use [[createQueryReader]] instead.
301
+ */
302
+ withPreparedStatement<T>(ecsql: string, callback: (stmt: ECSqlStatement) => T, logErrors?: boolean): T;
303
+ /**
304
+ * Prepared and execute a callback on an ECSQL statement. After the callback completes the statement is disposed.
305
+ * Use this method for ECSQL statements are either not expected to be reused, or are not expensive to prepare.
306
+ * For statements that will be reused often, instead use [[withPreparedStatement]].
307
+ * @param sql The SQLite SQL statement to execute
308
+ * @param callback the callback to invoke on the prepared statement
309
+ * @param logErrors Determines if error will be logged if statement fail to prepare
310
+ * @returns the value returned by `callback`.
311
+ * @see [[withPreparedStatement]]
312
+ * @public
313
+ * @deprecated in 4.11. Use [[createQueryReader]] instead.
314
+ */
315
+ withStatement<T>(ecsql: string, callback: (stmt: ECSqlStatement) => T, logErrors?: boolean): T;
316
+ /** Allow to execute query and read results along with meta data. The result are streamed.
317
+ *
318
+ * See also:
319
+ * - [ECSQL Overview]($docs/learning/backend/ExecutingECSQL)
320
+ * - [Code Examples]($docs/learning/backend/ECSQLCodeExamples)
321
+ * - [ECSQL Row Format]($docs/learning/ECSQLRowFormat)
322
+ *
323
+ * @param params The values to bind to the parameters (if the ECSQL has any).
324
+ * @param config Allow to specify certain flags which control how query is executed.
325
+ * @returns Returns an [ECSqlReader]($common) which helps iterate over the result set and also give access to metadata.
326
+ * @public
327
+ * */
328
+ createQueryReader(ecsql: string, params?: QueryBinder, config?: QueryOptions): ECSqlReader;
329
+ /**
330
+ * Use a prepared SQL statement, potentially from the statement cache. If the requested statement doesn't exist
331
+ * in the statement cache, a new statement is prepared. After the callback completes, the statement is reset and saved
332
+ * in the statement cache so it can be reused in the future. Use this method for SQL statements that will be
333
+ * reused often and are expensive to prepare. The statement cache holds the most recently used statements, discarding
334
+ * the oldest statements as it fills. For statements you don't intend to reuse, instead use [[withSqliteStatement]].
335
+ * @param sql The SQLite SQL statement to execute
336
+ * @param callback the callback to invoke on the prepared statement
337
+ * @param logErrors Determine if errors are logged or not
338
+ * @returns the value returned by `callback`.
339
+ * @see [[withPreparedStatement]]
340
+ * @public
341
+ */
342
+ withPreparedSqliteStatement<T>(sql: string, callback: (stmt: SqliteStatement) => T, logErrors?: boolean): T;
343
+ /**
344
+ * Prepared and execute a callback on a SQL statement. After the callback completes the statement is disposed.
345
+ * Use this method for SQL statements are either not expected to be reused, or are not expensive to prepare.
346
+ * For statements that will be reused often, instead use [[withPreparedSqliteStatement]].
347
+ * @param sql The SQLite SQL statement to execute
348
+ * @param callback the callback to invoke on the prepared statement
349
+ * @param logErrors Determine if errors are logged or not
350
+ * @returns the value returned by `callback`.
351
+ * @public
352
+ */
353
+ withSqliteStatement<T>(sql: string, callback: (stmt: SqliteStatement) => T, logErrors?: boolean): T;
354
+ /** Prepare an SQL statement.
355
+ * @param sql The SQL statement to prepare
356
+ * @throws [[IModelError]] if there is a problem preparing the statement.
357
+ * @internal
358
+ */
359
+ prepareSqliteStatement(sql: string, logErrors?: boolean): SqliteStatement;
360
+ /**
361
+ * queries the BisCore.SubCategory table for entries that are children of used spatial categories and 3D elements.
362
+ * @returns array of SubCategoryResultRow
363
+ * @internal
364
+ */
365
+ queryAllUsedSpatialSubCategories(): Promise<SubCategoryResultRow[]>;
366
+ /**
367
+ * queries the BisCore.SubCategory table for the entries that are children of the passed categoryIds.
368
+ * @param categoryIds categoryIds to query
369
+ * @returns array of SubCategoryResultRow
370
+ * @internal
371
+ */
372
+ querySubCategories(categoryIds: Iterable<Id64String>): Promise<SubCategoryResultRow[]>;
373
+ /** Query for a set of entity ids, given an EntityQueryParams
374
+ * @param params The query parameters. The `limit` and `offset` members should be used to page results.
375
+ * @returns an Id64Set with results of query
376
+ * @throws [[IModelError]] if the generated statement is invalid or [IModelDb.maxLimit]($backend) exceeded when collecting ids.
377
+ *
378
+ * *Example:*
379
+ * ``` ts
380
+ * [[include:ECSQL-backend-queries.select-element-by-code-value-using-queryEntityIds]]
381
+ * ```
382
+ */
383
+ queryEntityIds(params: EntityQueryParams): Id64Set;
384
+ /** Clear all in-memory caches held in this IModelDb. */
385
+ clearCaches(): void;
386
+ /** Update the project extents for this iModel.
387
+ * <p><em>Example:</em>
388
+ * ``` ts
389
+ * [[include:IModelDb.updateProjectExtents]]
390
+ * ```
391
+ */
392
+ updateProjectExtents(newExtents: AxisAlignedBox3d): void;
393
+ /** Compute an appropriate project extents for this iModel based on the ranges of all spatial elements.
394
+ * Typically, the result is simply the union of the ranges of all spatial elements. However, the algorithm also detects "outlier elements",
395
+ * whose placements locate them so far from the rest of the spatial geometry that they are considered statistically insignificant. The
396
+ * range of an outlier element does not contribute to the computed extents.
397
+ * @param options Specifies the level of detail desired in the return value.
398
+ * @returns the computed extents.
399
+ * @note This method does not modify the IModel's stored project extents. @see [[updateProjectExtents]].
400
+ */
401
+ computeProjectExtents(options?: ComputeProjectExtentsOptions): ComputedProjectExtents;
402
+ /** Update the [EcefLocation]($docs/learning/glossary#eceflocation) of this iModel. */
403
+ updateEcefLocation(ecef: EcefLocation): void;
404
+ /** Update the IModelProps of this iModel in the database. */
405
+ updateIModelProps(): void;
406
+ /** Commit unsaved changes in memory as a Txn to this iModelDb.
407
+ * @param description Optional description of the changes
408
+ * @throws [[IModelError]] if there is a problem saving changes or if there are pending, un-processed lock or code requests.
409
+ * @note This will not push changes to the iModelHub.
410
+ * @see [[IModelDb.pushChanges]] to push changes to the iModelHub.
411
+ */
412
+ saveChanges(description?: string): void;
413
+ /** Abandon changes in memory that have not been saved as a Txn to this iModelDb.
414
+ * @note This will not delete Txns that have already been saved, even if they have not yet been pushed.
415
+ */
416
+ abandonChanges(): void;
417
+ /**
418
+ * Save all changes and perform a [checkpoint](https://www.sqlite.org/c3ref/wal_checkpoint_v2.html) on this IModelDb.
419
+ * This ensures that all changes to the database since it was opened are saved to its file and the WAL file is truncated.
420
+ * @note Checkpoint automatically happens when IModelDbs are closed. However, the checkpoint
421
+ * operation itself can take some time. It may be useful to call this method prior to closing so that the checkpoint "penalty" is paid earlier.
422
+ * @note Another use for this function is to permit the file to be copied while it is open for write. iModel files should
423
+ * rarely be copied, and even less so while they're opened. But this scenario is sometimes encountered for tests.
424
+ */
425
+ performCheckpoint(): void;
426
+ /** @internal
427
+ * @deprecated in 4.8. Use `txns.reverseTxns`.
428
+ */
429
+ reverseTxns(numOperations: number): IModelStatus;
430
+ /** @internal */
431
+ reinstateTxn(): IModelStatus;
432
+ /** @internal */
433
+ restartTxnSession(): void;
434
+ /** Import an ECSchema. On success, the schema definition is stored in the iModel.
435
+ * This method is asynchronous (must be awaited) because, in the case where this IModelDb is a briefcase, this method first obtains the schema lock from the iModel server.
436
+ * You must import a schema into an iModel before you can insert instances of the classes in that schema. See [[Element]]
437
+ * @param schemaFileName array of Full paths to ECSchema.xml files to be imported.
438
+ * @param {SchemaImportOptions} options - options during schema import.
439
+ * @throws [[IModelError]] if the schema lock cannot be obtained or there is a problem importing the schema.
440
+ * @note Changes are saved if importSchemas is successful and abandoned if not successful.
441
+ * - You can use NativeLoggerCategory to turn on the native logs. You can also control [what exactly is logged by the loggers](https://www.itwinjs.org/learning/common/logging/#controlling-what-is-logged).
442
+ * - See [Schema Versioning]($docs/bis/guide/schema-evolution/schema-versioning-and-generations.md) for more information on acceptable changes to schemas.
443
+ * @see querySchemaVersion
444
+ */
445
+ importSchemas(schemaFileNames: LocalFileName[], options?: SchemaImportOptions): Promise<void>;
446
+ /** Import ECSchema(s) serialized to XML. On success, the schema definition is stored in the iModel.
447
+ * This method is asynchronous (must be awaited) because, in the case where this IModelDb is a briefcase, this method first obtains the schema lock from the iModel server.
448
+ * You must import a schema into an iModel before you can insert instances of the classes in that schema. See [[Element]]
449
+ * @param serializedXmlSchemas The xml string(s) created from a serialized ECSchema.
450
+ * @throws [[IModelError]] if the schema lock cannot be obtained or there is a problem importing the schema.
451
+ * @note Changes are saved if importSchemaStrings is successful and abandoned if not successful.
452
+ * @see querySchemaVersion
453
+ * @alpha
454
+ */
455
+ importSchemaStrings(serializedXmlSchemas: string[]): Promise<void>;
456
+ /** Find an opened instance of any subclass of IModelDb, by filename
457
+ * @note this method returns an IModelDb if the filename is open for *any* subclass of IModelDb
458
+ */
459
+ static findByFilename(fileName: LocalFileName): IModelDb | undefined;
460
+ /** Find an open IModelDb by its key.
461
+ * @note This method is mainly for use by RPC implementations.
462
+ * @throws [[IModelNotFoundResponse]] if an open IModelDb matching the key is not found.
463
+ * @see [IModel.key]($common)
464
+ */
465
+ static findByKey(key: string): IModelDb;
466
+ /** Attempt to find an open IModelDb by key.
467
+ * @returns The matching IModelDb or `undefined`.
468
+ */
469
+ static tryFindByKey(key: string): IModelDb | undefined;
470
+ /** @internal */
471
+ static openDgnDb(file: {
472
+ path: LocalFileName;
473
+ key?: string;
474
+ }, openMode: OpenMode, upgradeOptions?: UpgradeOptions, props?: SnapshotOpenOptions & CloudContainerArgs & OpenSqliteArgs): IModelJsNative.DgnDb;
475
+ /**
476
+ * Determines if the schemas in the Db must or can be upgraded by comparing them with those included in the
477
+ * current version of the software.
478
+ * @param filePath Full name of the briefcase including path
479
+ * @param forReadWrite Pass true if validating for read-write scenarios - note that the schema version requirements
480
+ * for opening the DgnDb read-write is more stringent than when opening the database read-only
481
+ * @throws [[IModelError]] If the Db was in an invalid state and that causes a problem with validating schemas
482
+ * @see [[BriefcaseDb.upgradeSchemas]] or [[StandaloneDb.upgradeSchemas]]
483
+ * @see ($docs/learning/backend/IModelDb.md#upgrading-schemas-in-an-imodel)
484
+ */
485
+ static validateSchemas(filePath: LocalFileName, forReadWrite: boolean): SchemaState;
486
+ /** The registry of entity metadata for this iModel.
487
+ * @internal
488
+ * @deprecated in 5.0. Please use `schemaContext` from the `iModel` instead.
489
+ *
490
+ * @example
491
+ * ```typescript
492
+ * // Current usage:
493
+ * const classMetaData: EntityMetaData | undefined = iModel.classMetaDataRegistry.find("SchemaName:ClassName");
494
+ *
495
+ * // Replacement:
496
+ * const metaData: EntityClass | undefined = imodel.schemaContext.getSchemaItemSync("SchemaName.ClassName", EntityClass);
497
+ * ```
498
+ */
499
+ get classMetaDataRegistry(): MetaDataRegistry;
500
+ /**
501
+ * Allows registering js classes mapped to ECClasses
502
+ */
503
+ get jsClassMap(): EntityJsClassMap;
504
+ /**
505
+ * Allows locally registering a schema for this imodel, in constrast to [Schemas.registerSchema] which is a global operation
506
+ */
507
+ get schemaMap(): SchemaMap;
508
+ /**
509
+ * Gets the context that allows accessing the metadata (ecschema-metadata package) of this iModel
510
+ * @public @preview
511
+ */
512
+ get schemaContext(): SchemaContext;
513
+ /** Get the linkTableRelationships for this IModel */
514
+ get relationships(): Relationships;
515
+ /** Get the CodeSpecs in this IModel. */
516
+ get codeSpecs(): CodeSpecs;
517
+ /** Prepare an ECSQL statement.
518
+ * @param sql The ECSQL statement to prepare
519
+ * @param logErrors Determines if error will be logged if statement fail to prepare
520
+ * @throws [[IModelError]] if there is a problem preparing the statement.
521
+ * @deprecated in 4.11. Use [IModelDb.createQueryReader]($backend) or [ECDb.createQueryReader]($backend) to query.
522
+ */
523
+ prepareStatement(sql: string, logErrors?: boolean): ECSqlStatement;
524
+ /** Prepare an ECSQL statement.
525
+ * @param sql The ECSQL statement to prepare
526
+ * @returns `undefined` if there is a problem preparing the statement.
527
+ * @deprecated in 4.11. Use [IModelDb.createQueryReader]($backend) or [ECDb.createQueryReader]($backend) to query.
528
+ */
529
+ tryPrepareStatement(sql: string): ECSqlStatement | undefined;
530
+ /** Construct an entity (Element or Model) from an iModel.
531
+ * @throws [[IModelError]] if the entity cannot be constructed.
532
+ */
533
+ constructEntity<T extends Entity, P extends EntityProps = EntityProps>(props: P): T;
534
+ /** Get the JavaScript class that handles a given entity class. */
535
+ getJsClass<T extends typeof Entity>(classFullName: string): T;
536
+ /** Constructs a ResolveInstanceKeyArgs from given parameters
537
+ * @throws [[IModelError]] if the combination of supplied parameters is invalid.
538
+ * @internal
539
+ */
540
+ getInstanceArgs(instanceId?: Id64String, baseClassName?: string, federationGuid?: GuidString, code?: CodeProps): IModelJsNative.ResolveInstanceKeyArgs;
541
+ /** Get metadata for a class. This method will load the metadata from the iModel into the cache as a side-effect, if necessary.
542
+ * @throws [[IModelError]] if the metadata cannot be found nor loaded.
543
+ * @deprecated in 5.0. Please use `getSchemaItem` from `SchemaContext` class instead.
544
+ *
545
+ * @example
546
+ * * ```typescript
547
+ * // Current usage:
548
+ * const metaData: EntityMetaData = imodel.getMetaData("SchemaName:ClassName");
549
+ *
550
+ * // Replacement:
551
+ * const metaData: EntityClass | undefined = imodel.schemaContext.getSchemaItemSync("SchemaName", "ClassName", EntityClass);
552
+ * ```
553
+ */
554
+ getMetaData(classFullName: string): EntityMetaData;
555
+ /** Identical to [[getMetaData]], except it returns `undefined` instead of throwing an error if the metadata cannot be found nor loaded.
556
+ * @deprecated in 5.0. Please use `getSchemaItem` from `SchemaContext` class instead.
557
+ *
558
+ * @example
559
+ * * ```typescript
560
+ * // Current usage:
561
+ * const metaData: EntityMetaData | undefined = imodel.tryGetMetaData("SchemaName:ClassName");
562
+ *
563
+ * // Replacement:
564
+ * const metaData: EntityClass | undefined = imodel.schemaContext.getSchemaItemSync("SchemaName.ClassName", EntityClass);
565
+ * ```
566
+ */
567
+ tryGetMetaData(classFullName: string): EntityMetaData | undefined;
568
+ /** Invoke a callback on each property of the specified class, optionally including superclass properties.
569
+ * @param iModel The IModel that contains the schema
570
+ * @param classFullName The full class name to load the metadata, if necessary
571
+ * @param wantSuper If true, superclass properties will also be processed
572
+ * @param func The callback to be invoked on each property
573
+ * @param includeCustom If true (default), include custom-handled properties in the iteration. Otherwise, skip custom-handled properties.
574
+ * @note Custom-handled properties are core properties that have behavior enforced by C++ handlers.
575
+ * @deprecated in 5.0. Please use `forEachProperty` instead.
576
+ *
577
+ * @example
578
+ * ```typescript
579
+ * // Current usage:
580
+ * IModelDb.forEachMetaData(imodel, "BisCore:Element", true, (name: string, propMetaData: PropertyMetaData) => {
581
+ * console.log(`Property name: ${name}, Property type: ${propMetaData.primitiveType}`);
582
+ * }, false);
583
+ *
584
+ * // Replacement:
585
+ * await IModelDb.forEachProperty(imodel, "TestDomain.TestDomainClass", true, (propName: string, property: Property) => {
586
+ * console.log(`Property name: ${propName}, Property type: ${property.propertyType}`);
587
+ * }, false);
588
+ * ```
589
+ */
590
+ static forEachMetaData(iModel: IModelDb, classFullName: string, wantSuper: boolean, func: PropertyCallback, includeCustom?: boolean): void;
591
+ /** Invoke a callback on each property of the specified class, optionally including superclass properties.
592
+ * @param classFullName The full class name to load the metadata, if necessary
593
+ * @param wantSuper If true, superclass properties will also be processed
594
+ * @param func The callback to be invoked on each property
595
+ * @param includeCustom If true (default), include custom-handled properties in the iteration. Otherwise, skip custom-handled properties.
596
+ * @note Custom-handled properties are core properties that have behavior enforced by C++ handlers.
597
+ * @deprecated in 5.0. Use `forEachProperty` from `SchemaContext` class instead.
598
+ *
599
+ * @example
600
+ * ```typescript
601
+ * // Current usage:
602
+ * iModel.forEachMetaData("BisCore:Element", true, (name: string, propMetaData: PropertyMetaData) => {
603
+ * console.log(`Property name: ${name}, Property type: ${propMetaData.primitiveType}`);
604
+ * });
605
+ *
606
+ * // Replacement:
607
+ * imodel.schemaContext.forEachProperty("BisCore:Element", true, (propName: string, property: Property) => {
608
+ * console.log(`Property name: ${propName}, Property type: ${property.propertyType}`);
609
+ * });
610
+ * ```
611
+ */
612
+ forEachMetaData(classFullName: string, wantSuper: boolean, func: PropertyCallback, includeCustom?: boolean): void;
613
+ /**
614
+ * @internal
615
+ * @deprecated in 5.0. Please use `schemaContext` from `iModel` instead to get metadata.
616
+ */
617
+ private loadMetaData;
618
+ /** Returns the full schema for the input name.
619
+ * @param name The name of the schema e.g. 'BisCore'
620
+ * @returns The SchemaProps for the requested schema
621
+ * @throws if the schema can not be found or loaded.
622
+ */
623
+ getSchemaProps(name: string): ECSchemaProps;
624
+ /** Query if this iModel contains the definition of the specified class.
625
+ * @param classFullName The full name of the class, for example, SomeSchema:SomeClass
626
+ * @returns true if the iModel contains the class definition or false if not.
627
+ * @see querySchemaVersion
628
+ * @see importSchema
629
+ */
630
+ containsClass(classFullName: string): boolean;
631
+ /** Query for a schema of the specified name in this iModel.
632
+ * @returns The schema version as a semver-compatible string or `undefined` if the schema has not been imported.
633
+ */
634
+ querySchemaVersion(schemaName: string): string | undefined;
635
+ /** Retrieve a named texture image from this iModel, as a TextureData.
636
+ * @param props the texture load properties which must include the name of the texture to load
637
+ * @returns the TextureData or undefined if the texture image is not present.
638
+ * @alpha
639
+ */
640
+ queryTextureData(props: TextureLoadProps): Promise<TextureData | undefined>;
641
+ /** Query a "file property" from this iModel, as a string.
642
+ * @returns the property string or undefined if the property is not present.
643
+ */
644
+ queryFilePropertyString(prop: FilePropertyProps): string | undefined;
645
+ /** Query a "file property" from this iModel, as a blob.
646
+ * @returns the property blob or undefined if the property is not present.
647
+ */
648
+ queryFilePropertyBlob(prop: FilePropertyProps): Uint8Array | undefined;
649
+ /** Save a "file property" to this iModel
650
+ * @param prop the FilePropertyProps that describes the new property
651
+ * @param value either a string or a blob to save as the file property
652
+ */
653
+ saveFileProperty(prop: FilePropertyProps, strValue: string | undefined, blobVal?: Uint8Array): void;
654
+ /** delete a "file property" from this iModel
655
+ * @param prop the FilePropertyProps that describes the property
656
+ */
657
+ deleteFileProperty(prop: FilePropertyProps): void;
658
+ /** Query for the next available major id for a "file property" from this iModel.
659
+ * @param prop the FilePropertyProps that describes the property
660
+ * @returns the next available (that is, an unused) id for prop. If none are present, will return 0.
661
+ */
662
+ queryNextAvailableFileProperty(prop: FilePropertyProps): number;
663
+ /** @internal */
664
+ requestSnap(sessionId: string, props: SnapRequestProps): Promise<SnapResponseProps>;
665
+ /** Cancel a previously requested snap.
666
+ * @internal
667
+ */
668
+ cancelSnap(sessionId: string): void;
669
+ /** Get the clip containment status for the supplied elements. */
670
+ getGeometryContainment(props: GeometryContainmentRequestProps): Promise<GeometryContainmentResponseProps>;
671
+ /** Get the mass properties for the supplied elements. */
672
+ getMassProperties(props: MassPropertiesRequestProps): Promise<MassPropertiesResponseProps>;
673
+ /** Get the IModel coordinate corresponding to each GeoCoordinate point in the input */
674
+ getIModelCoordinatesFromGeoCoordinates(props: IModelCoordinatesRequestProps): Promise<IModelCoordinatesResponseProps>;
675
+ /** Get the GeoCoordinate (longitude, latitude, elevation) corresponding to each IModel Coordinate point in the input */
676
+ getGeoCoordinatesFromIModelCoordinates(props: GeoCoordinatesRequestProps): Promise<GeoCoordinatesResponseProps>;
677
+ /** Export meshes suitable for graphics APIs from arbitrary geometry in elements in this IModelDb.
678
+ * * Requests can be slow when processing many elements so it is expected that this function be used on a dedicated backend,
679
+ * or that shared backends export a limited number of elements at a time.
680
+ * * Vertices are exported in the IModelDb's world coordinate system, which is right-handed with Z pointing up.
681
+ * * The results of changing [ExportGraphicsOptions]($core-backend) during the [ExportGraphicsOptions.onGraphics]($core-backend) callback are not defined.
682
+ *
683
+ * Example that prints the mesh for element 1 to stdout in [OBJ format](https://en.wikipedia.org/wiki/Wavefront_.obj_file)
684
+ * ```ts
685
+ * const onGraphics: ExportGraphicsFunction = (info: ExportGraphicsInfo) => {
686
+ * const mesh: ExportGraphicsMesh = info.mesh;
687
+ * for (let i = 0; i < mesh.points.length; i += 3) {
688
+ * process.stdout.write(`v ${mesh.points[i]} ${mesh.points[i + 1]} ${mesh.points[i + 2]}\n`);
689
+ * process.stdout.write(`vn ${mesh.normals[i]} ${mesh.normals[i + 1]} ${mesh.normals[i + 2]}\n`);
690
+ * }
691
+ *
692
+ * for (let i = 0; i < mesh.params.length; i += 2) {
693
+ * process.stdout.write(`vt ${mesh.params[i]} ${mesh.params[i + 1]}\n`);
694
+ * }
695
+ *
696
+ * for (let i = 0; i < mesh.indices.length; i += 3) {
697
+ * const p1 = mesh.indices[i];
698
+ * const p2 = mesh.indices[i + 1];
699
+ * const p3 = mesh.indices[i + 2];
700
+ * process.stdout.write(`f ${p1}/${p1}/${p1} ${p2}/${p2}/${p2} ${p3}/${p3}/${p3}\n`);
701
+ * }
702
+ * };
703
+ *
704
+ * iModel.exportGraphics(({ onGraphics, elementIdArray: ["0x1"] }));
705
+ * ```
706
+ * @returns 0 if successful, status otherwise
707
+ * @public
708
+ */
709
+ exportGraphics(exportProps: ExportGraphicsOptions): DbResult;
710
+ /**
711
+ * Exports meshes suitable for graphics APIs from a specified [GeometryPart]($core-backend)
712
+ * in this IModelDb.
713
+ * The expected use case is to call [IModelDb.exportGraphics]($core-backend) and supply the
714
+ * optional partInstanceArray argument, then call this function for each unique GeometryPart from
715
+ * that list.
716
+ * * The results of changing [ExportPartGraphicsOptions]($core-backend) during the
717
+ * [ExportPartGraphicsOptions.onPartGraphics]($core-backend) callback are not defined.
718
+ * * See export-gltf under test-apps in the iTwin.js monorepo for a working reference.
719
+ * @returns 0 is successful, status otherwise
720
+ * @public
721
+ */
722
+ exportPartGraphics(exportProps: ExportPartGraphicsOptions): DbResult;
723
+ /** Request geometry stream information from an element in binary format instead of json.
724
+ * @returns IModelStatus.Success if successful
725
+ * @beta
726
+ */
727
+ elementGeometryRequest(requestProps: ElementGeometryRequest): IModelStatus;
728
+ /** Request the creation of a backend geometry cache for the specified geometric element.
729
+ * @returns ElementGeometryCacheResponseProps
730
+ * @beta
731
+ */
732
+ updateElementGeometryCache(requestProps: ElementGeometryCacheRequestProps): Promise<ElementGeometryCacheResponseProps>;
733
+ /** Request operation using the backend geometry cache populated by first calling elementGeometryRequest.
734
+ * @returns SUCCESS if requested operation could be applied.
735
+ * @beta
736
+ */
737
+ elementGeometryCacheOperation(requestProps: ElementGeometryCacheOperationRequestProps): BentleyStatus;
738
+ /** Create brep geometry for inclusion in an element's geometry stream.
739
+ * @returns IModelStatus.Success if successful
740
+ * @throws [[IModelError]] to report issues with input geometry or parameters
741
+ * @alpha
742
+ */
743
+ createBRepGeometry(createProps: BRepGeometryCreate): IModelStatus;
744
+ /** Generate graphics for an element or geometry stream.
745
+ * @see [readElementGraphics]($frontend) to convert the result to a [RenderGraphic]($frontend) for display.
746
+ */
747
+ generateElementGraphics(request: ElementGraphicsRequestProps): Promise<Uint8Array | undefined>;
748
+ private static _settingPropNamespace;
749
+ /** Save a `SettingDictionary` in this iModel that will be loaded into [[workspace.settings]] every time this iModel is opened in future sessions.
750
+ * @param name The name for the SettingDictionary. If a dictionary by that name already exists in the iModel, its value is replaced.
751
+ * @param dict The SettingDictionary object to stringify and save.
752
+ * @note All saved `SettingDictionary`s are loaded into [[workspace.settings]] every time an iModel is opened.
753
+ * @beta
754
+ */
755
+ saveSettingDictionary(name: string, dict: SettingsContainer): void;
756
+ /** Delete a SettingDictionary, previously added with [[saveSettingDictionary]], from this iModel.
757
+ * @param name The name of the dictionary to delete.
758
+ * @beta
759
+ */
760
+ deleteSettingDictionary(name: string): void;
761
+ /** Load all setting dictionaries in this iModel into `this.workspace.settings` */
762
+ private loadIModelSettings;
763
+ /** @internal */
764
+ protected loadWorkspaceSettings(): Promise<void>;
765
+ /**
766
+ * Controls how [Code]($common)s are copied from this iModel into another iModel, to work around problems with iModels
767
+ * created by older connectors. The [imodel-transformer](https://github.com/iTwin/imodel-transformer) sets this appropriately
768
+ * on your behalf - you should never need to set or interrogate this property yourself.
769
+ * @public
770
+ */
771
+ get codeValueBehavior(): "exact" | "trim-unicode-whitespace";
772
+ set codeValueBehavior(newBehavior: "exact" | "trim-unicode-whitespace");
773
+ /** @internal */
774
+ computeRangesForText(args: ComputeRangesForTextLayoutArgs): TextLayoutRanges;
775
+ /** Writes the contents of a single ECSchema to a file on the local file system.
776
+ * @beta
777
+ */
778
+ exportSchema(args: ExportSchemaArgs): void;
779
+ /** Writes the contents of all ECSchemas in this iModel to files in a directory on the local file system.
780
+ * @beta
781
+ */
782
+ exportSchemas(outputDirectory: LocalFileName): void;
783
+ /** Attempt to simplify the geometry stream of a single [[GeometricElement]] or [[GeometryPart]] as specified by `args`.
784
+ * @beta
785
+ */
786
+ simplifyElementGeometry(args: SimplifyElementGeometryArgs): IModelStatus;
787
+ /** Attempts to optimize all of the geometry in this iModel by identifying [[GeometryPart]]s that are referenced by exactly one
788
+ * element's geometry stream. Each such reference is replaced by inserting the part's geometry directly into the element's geometry stream.
789
+ * Then, the no-longer-used geometry part is deleted.
790
+ * This can improve performance when a connector inadvertently creates large numbers of parts that are each only used once.
791
+ * @beta
792
+ */
793
+ inlineGeometryParts(): InlineGeometryPartsResult;
794
+ /** Returns a string representation of the error that most recently arose during an operation on the underlying SQLite database.
795
+ * If no errors have occurred, an empty string is returned.
796
+ * Otherwise, a string of the format `message (code)` is returned, where `message` is a human-readable diagnostic string and `code` is an integer status code.
797
+ * See [SQLite error codes and messages](https://www.sqlite.org/c3ref/errcode.html)
798
+ * @note Do not rely upon this value or its specific contents in error handling logic. It is only intended for use in debugging.
799
+ */
800
+ getLastError(): string;
801
+ }
802
+ /** @public */
803
+ export declare namespace IModelDb {
804
+ /** The collection of models in an [[IModelDb]].
805
+ * @public
806
+ */
807
+ class Models {
808
+ private _iModel;
809
+ /** @internal */
810
+ readonly [_cache]: LRUMap<string, ModelProps>;
811
+ /** @internal */
812
+ constructor(_iModel: IModelDb);
813
+ /** Get the ModelProps with the specified identifier.
814
+ * @param modelId The Model identifier.
815
+ * @throws [[IModelError]] if the model is not found or cannot be loaded.
816
+ * @see tryGetModelProps
817
+ */
818
+ getModelProps<T extends ModelProps>(id: Id64String): T;
819
+ /** Get the ModelProps with the specified identifier.
820
+ * @param modelId The Model identifier.
821
+ * @returns The ModelProps or `undefined` if the model is not found.
822
+ * @throws [[IModelError]] if the model cannot be loaded.
823
+ * @note Useful for cases when a model may or may not exist and throwing an `Error` would be overkill.
824
+ * @see getModelProps
825
+ */
826
+ tryGetModelProps<T extends ModelProps>(id: Id64String): T | undefined;
827
+ /** Query for the last modified time for a [[Model]].
828
+ * @param modelId The Id of the model.
829
+ * @throws IModelError if `modelId` does not identify a model in the iModel.
830
+ */
831
+ queryLastModifiedTime(modelId: Id64String): string;
832
+ /** Get the Model with the specified identifier.
833
+ * @param modelId The Model identifier.
834
+ * @param modelClass Optional class to validate instance against. This parameter can accept abstract or concrete classes, but should be the same as the template (`T`) parameter.
835
+ * @throws [[IModelError]] if the model is not found, cannot be loaded, or fails validation when `modelClass` is specified.
836
+ * @see tryGetModel
837
+ */
838
+ getModel<T extends Model>(modelId: Id64String, modelClass?: EntityClassType<Model>): T;
839
+ /** Get the Model with the specified identifier.
840
+ * @param modelId The Model identifier.
841
+ * @param modelClass Optional class to validate instance against. This parameter can accept abstract or concrete classes, but should be the same as the template (`T`) parameter.
842
+ * @returns The Model or `undefined` if the model is not found or fails validation when `modelClass` is specified.
843
+ * @throws [[IModelError]] if the model cannot be loaded.
844
+ * @note Useful for cases when a model may or may not exist and throwing an `Error` would be overkill.
845
+ * @see getModel
846
+ */
847
+ tryGetModel<T extends Model>(modelId: Id64String, modelClass?: EntityClassType<Model>): T | undefined;
848
+ private resolveModelKey;
849
+ /** Get the sub-model of the specified Element.
850
+ * See [[IModelDb.Elements.queryElementIdByCode]] for more on how to find an element by Code.
851
+ * @param modeledElementId Identifies the modeled element.
852
+ * @param modelClass Optional class to validate instance against. This parameter can accept abstract or concrete classes, but should be the same as the template (`T`) parameter.
853
+ * @throws [[IModelError]] if the sub-model is not found, cannot be loaded, or fails validation when `modelClass` is specified.
854
+ * @see tryGetSubModel
855
+ */
856
+ getSubModel<T extends Model>(modeledElementId: Id64String | GuidString | Code, modelClass?: EntityClassType<Model>): T;
857
+ /** Get the sub-model of the specified Element.
858
+ * See [[IModelDb.Elements.queryElementIdByCode]] for more on how to find an element by Code.
859
+ * @param modeledElementId Identifies the modeled element.
860
+ * @param modelClass Optional class to validate instance against. This parameter can accept abstract or concrete classes, but should be the same as the template (`T`) parameter.
861
+ * @returns The sub-model or `undefined` if the specified element does not have a sub-model or fails validation when `modelClass` is specified.
862
+ * @see getSubModel
863
+ */
864
+ tryGetSubModel<T extends Model>(modeledElementId: Id64String | GuidString | Code, modelClass?: EntityClassType<Model>): T | undefined;
865
+ /** Create a new model in memory.
866
+ * See the example in [[InformationPartitionElement]].
867
+ * @param modelProps The properties to use when creating the model.
868
+ * @throws [[IModelError]] if there is a problem creating the model.
869
+ */
870
+ createModel<T extends Model>(modelProps: ModelProps): T;
871
+ /** Insert a new model.
872
+ * @param props The data for the new model.
873
+ * @returns The newly inserted model's Id.
874
+ * @throws [[IModelError]] if unable to insert the model.
875
+ */
876
+ insertModel(props: ModelProps): Id64String;
877
+ /** Update an existing model.
878
+ * @param props the properties of the model to change
879
+ * @throws [[IModelError]] if unable to update the model.
880
+ */
881
+ updateModel(props: UpdateModelOptions): void;
882
+ /** Mark the geometry of [[GeometricModel]] as having changed, by recording an indirect change to its GeometryGuid property.
883
+ * Typically the GeometryGuid changes automatically when [[GeometricElement]]s within the model are modified, but
884
+ * explicitly updating it is occasionally useful after modifying definition elements like line styles or materials that indirectly affect the appearance of
885
+ * [[GeometricElement]]s that reference those definition elements in their geometry streams.
886
+ * Cached [Tile]($frontend)s are only invalidated after the geometry guid of the model changes.
887
+ * @note This will throw IModelError with [IModelStatus.VersionTooOld]($core-bentley) if a version of the BisCore schema older than 1.0.11 is present in the iModel.
888
+ * @throws IModelError if unable to update the geometry guid.
889
+ * @see [[TxnManager.onModelGeometryChanged]] for the event emitted in response to such a change.
890
+ */
891
+ updateGeometryGuid(modelId: Id64String): void;
892
+ /** Delete one or more existing models.
893
+ * @param ids The Ids of the models to be deleted
894
+ * @throws [[IModelError]]
895
+ */
896
+ deleteModel(ids: Id64Arg): void;
897
+ /** For each specified [[GeometricModel]], attempts to obtain the union of the volumes of all geometric elements within that model.
898
+ * @param ids The Id or Ids of the [[GeometricModel]]s for which to obtain the extents.
899
+ * @returns An array of results, one per supplied Id, in the order in which the Ids were supplied. If the extents could not be obtained, the
900
+ * corresponding results entry's `extents` will be a "null" range (@see [Range3d.isNull]($geometry)) and its `status` will indicate
901
+ * why the extents could not be obtained (e.g., because the Id did not identify a [[GeometricModel]]).
902
+ * @see [[queryRange]] to obtain the union of all of the models' extents.
903
+ */
904
+ queryExtents(ids: Id64String | Id64String[]): Promise<ModelExtentsProps[]>;
905
+ /** Computes the union of the volumes of all geometric elements within one or more [[GeometricModel]]s, specified by model Id.
906
+ * @see [[queryExtents]] to obtain discrete volumes for each model.
907
+ */
908
+ queryRange(ids: Id64String | Id64String[]): Promise<AxisAlignedBox3d>;
909
+ }
910
+ interface GuidMapper {
911
+ getFederationGuidFromId(id: Id64String): GuidString | undefined;
912
+ getIdFromFederationGuid(guid?: GuidString): Id64String | undefined;
913
+ }
914
+ /** The collection of elements in an [[IModelDb]].
915
+ * @public
916
+ */
917
+ class Elements implements GuidMapper {
918
+ private _iModel;
919
+ /** @internal */
920
+ readonly [_cache]: ElementLRUCache;
921
+ /** @internal */
922
+ constructor(_iModel: IModelDb);
923
+ getFederationGuidFromId(id: Id64String): GuidString | undefined;
924
+ getIdFromFederationGuid(guid?: GuidString): Id64String | undefined;
925
+ /** Get properties of an Element by Id, FederationGuid, or Code
926
+ * @throws [[IModelError]] if the element is not found or cannot be loaded.
927
+ * @see tryGetElementProps
928
+ */
929
+ getElementProps<T extends ElementProps>(props: Id64String | GuidString | Code | ElementLoadProps): T;
930
+ private resolveElementKey;
931
+ /** Get properties of an Element by Id, FederationGuid, or Code
932
+ * @returns The properties of the element or `undefined` if the element is not found.
933
+ * @throws [[IModelError]] if the element exists, but cannot be loaded.
934
+ * @note Useful for cases when an element may or may not exist and throwing an `Error` would be overkill.
935
+ * @see getElementProps
936
+ */
937
+ tryGetElementProps<T extends ElementProps>(props: Id64String | GuidString | Code | ElementLoadProps): T | undefined;
938
+ /** Get an element by Id, FederationGuid, or Code
939
+ * @param elementId either the element's Id, Code, or FederationGuid, or an ElementLoadProps
940
+ * @param elementClass Optional class to validate instance against. This parameter can accept abstract or concrete classes, but should be the same as the template (`T`) parameter.
941
+ * @throws [[IModelError]] if the element is not found, cannot be loaded, or fails validation when `elementClass` is specified.
942
+ * @see tryGetElement
943
+ */
944
+ getElement<T extends Element>(elementId: Id64String | GuidString | Code | ElementLoadProps, elementClass?: EntityClassType<Element>): T;
945
+ /** Get an element by Id, FederationGuid, or Code
946
+ * @param elementId either the element's Id, Code, or FederationGuid, or an ElementLoadProps
947
+ * @param elementClass Optional class to validate instance against. This parameter can accept abstract or concrete classes, but should be the same as the template (`T`) parameter.
948
+ * @returns The element or `undefined` if the element is not found or fails validation when `elementClass` is specified.
949
+ * @throws [[IModelError]] if the element exists, but cannot be loaded.
950
+ * @note Useful for cases when an element may or may not exist and throwing an `Error` would be overkill.
951
+ * @see getElement
952
+ */
953
+ tryGetElement<T extends Element>(elementId: Id64String | GuidString | Code | ElementLoadProps, elementClass?: EntityClassType<Element>): T | undefined;
954
+ /** Query for the Id of the element that has a specified code.
955
+ * This method is for the case where you know the element's Code.
956
+ * If you only know the code *value*, then in the simplest case, you can query on that
957
+ * and filter the results.
958
+ * In the simple case, call [[IModelDb.queryEntityIds]], specifying the code value in the where clause of the query params.
959
+ * Or, you can execute an ECSQL select statement. See
960
+ * [frequently used ECSQL queries]($docs/learning/backend/ECSQL-queries.md) for an example.
961
+ * @param code The code to look for
962
+ * @returns The element that uses the code or undefined if the code is not used.
963
+ * @throws IModelError if the code is invalid
964
+ */
965
+ queryElementIdByCode(code: Required<CodeProps>): Id64String | undefined;
966
+ /** Query for an [[Element]]'s last modified time.
967
+ * @param elementId The Id of the element.
968
+ * @throws IModelError if `elementId` does not identify an element in the iModel.
969
+ */
970
+ queryLastModifiedTime(elementId: Id64String): string;
971
+ /** Create a new instance of an element.
972
+ * @param elProps The properties of the new element.
973
+ * @throws [[IModelError]] if there is a problem creating the element.
974
+ */
975
+ createElement<T extends Element>(elProps: ElementProps): T;
976
+ /** Insert a new element into the iModel.
977
+ * @param elProps The properties of the new element.
978
+ * @returns The newly inserted element's Id.
979
+ * @throws [[IModelError]] if unable to insert the element.
980
+ * @note For convenience, the value of `elProps.id` is updated to reflect the resultant element's id.
981
+ * However when `elProps.federationGuid` is not present or undefined, a new Guid will be generated and stored on the resultant element. But
982
+ * the value of `elProps.federationGuid` is *not* updated. Generally, it is best to re-read the element after inserting (e.g. via [[getElementProps]])
983
+ * if you intend to continue working with it. That will ensure its values reflect the persistent state.
984
+ */
985
+ insertElement(elProps: ElementProps, options?: InsertElementOptions): Id64String;
986
+ /**
987
+ * Update some properties of an existing element.
988
+ * All parts of `elProps` are optional *other than* `id`. If id is missing, an exception is thrown.
989
+ *
990
+ * To support clearing a property value, every property name that is present in the `elProps` object will be updated even if the value is `undefined`.
991
+ * To keep an individual element property unchanged, it should either be excluded from the `elProps` parameter or set to its current value.
992
+ * @param elProps the properties of the element to update.
993
+ * @note The values of `classFullName` and `model` *may not be changed* by this method. Further, it will permute the `elProps` object by adding or
994
+ * overwriting their values to the correct values.
995
+ * @throws [[IModelError]] if unable to update the element.
996
+ */
997
+ updateElement<T extends ElementProps>(elProps: Partial<T>): void;
998
+ /** Delete one or more elements from this iModel.
999
+ * @param ids The set of Ids of the element(s) to be deleted
1000
+ * @throws [[IModelError]]
1001
+ * @see deleteDefinitionElements
1002
+ */
1003
+ deleteElement(ids: Id64Arg): void;
1004
+ /** DefinitionElements can only be deleted if it can be determined that they are not referenced by other Elements.
1005
+ * This *usage query* can be expensive since it may involve scanning the GeometryStreams of all GeometricElements.
1006
+ * Since [[deleteElement]] does not perform these additional checks, it fails in order to prevent potentially referenced DefinitionElements from being deleted.
1007
+ * This method performs those expensive checks and then calls *delete* if not referenced.
1008
+ * @param ids The Ids of the DefinitionElements to attempt to delete. To prevent multiple passes over the same GeometricElements, it is best to pass in the entire array of
1009
+ * DefinitionElements rather than calling this method separately for each one. Ids that are not valid DefinitionElements will be ignored.
1010
+ * @returns An IdSet of the DefinitionElements that are used and were therefore not deleted.
1011
+ * @see deleteElement
1012
+ * @beta
1013
+ */
1014
+ deleteDefinitionElements(definitionElementIds: Id64Array): Id64Set;
1015
+ /** Query for the child elements of the specified element.
1016
+ * @returns Returns an array of child element identifiers.
1017
+ * @throws [[IModelError]]
1018
+ */
1019
+ queryChildren(elementId: Id64String): Id64String[];
1020
+ /** Query for the parent of the specified element.
1021
+ * @param elementId The element to check for a parent
1022
+ * @returns The identifier of the element's parent or undefined if the element has no parent
1023
+ * @throws [[IModelError]] if the element does not exist
1024
+ */
1025
+ queryParent(elementId: Id64String): Id64String | undefined;
1026
+ /** Returns true if the specified Element has a sub-model.
1027
+ * @see [[IModelDb.Models.getSubModel]]
1028
+ */
1029
+ hasSubModel(elementId: Id64String): boolean;
1030
+ /** Get the root subject element. */
1031
+ getRootSubject(): Subject;
1032
+ /** Query for aspects of a particular class (polymorphically) associated with this element.
1033
+ * @throws [[IModelError]]
1034
+ * @note Most cases should use the [[getAspects]] wrapper rather than calling this method directly.
1035
+ * @internal
1036
+ */
1037
+ _queryAspects(elementId: Id64String, fromClassFullName: string, excludedClassFullNames?: Set<string>): ElementAspect[];
1038
+ /** Query for aspect by ECInstanceId
1039
+ * @throws [[IModelError]]
1040
+ */
1041
+ private _queryAspect;
1042
+ /** Get a single ElementAspect by its instance Id.
1043
+ * @throws [[IModelError]]
1044
+ */
1045
+ getAspect(aspectInstanceId: Id64String): ElementAspect;
1046
+ private static classMap;
1047
+ private runInstanceQuery;
1048
+ /** Get the ElementAspect instances that are owned by the specified element.
1049
+ * @param elementId Get ElementAspects associated with this Element
1050
+ * @param aspectClassFullName Optionally filter ElementAspects polymorphically by this class name
1051
+ * @param excludedClassFullNames Optional filter to exclude aspects from classes in the given set.
1052
+ * @throws [[IModelError]]
1053
+ */
1054
+ getAspects(elementId: Id64String, aspectClassFullName?: string, excludedClassFullNames?: Set<string>): ElementAspect[];
1055
+ /** Insert a new ElementAspect into the iModel.
1056
+ * @param aspectProps The properties of the new ElementAspect.
1057
+ * @throws [[IModelError]] if unable to insert the ElementAspect.
1058
+ * @returns the id of the newly inserted aspect.
1059
+ * @note Aspect Ids may collide with element Ids, so don't put both in a container like Set or Map
1060
+ * use [EntityReference]($common) for that instead.
1061
+ */
1062
+ insertAspect(aspectProps: ElementAspectProps): Id64String;
1063
+ /** Update an exist ElementAspect within the iModel.
1064
+ * @param aspectProps The properties to use to update the ElementAspect.
1065
+ * @throws [[IModelError]] if unable to update the ElementAspect.
1066
+ */
1067
+ updateAspect(aspectProps: ElementAspectProps): void;
1068
+ /** Delete one or more ElementAspects from this iModel.
1069
+ * @param aspectInstanceIds The set of instance Ids of the ElementAspect(s) to be deleted
1070
+ * @throws [[IModelError]] if unable to delete the ElementAspect.
1071
+ */
1072
+ deleteAspect(aspectInstanceIds: Id64Arg): void;
1073
+ }
1074
+ /** The collection of views in an [[IModelDb]].
1075
+ * @public
1076
+ */
1077
+ class Views {
1078
+ private _iModel;
1079
+ /** @internal */
1080
+ constructor(_iModel: IModelDb);
1081
+ private static viewStoreProperty;
1082
+ private _viewStore?;
1083
+ get hasViewStore(): boolean;
1084
+ /** @beta */
1085
+ get viewStore(): ViewStore.CloudAccess;
1086
+ set viewStore(viewStore: ViewStore.CloudAccess);
1087
+ /** @beta */
1088
+ accessViewStore(args: {
1089
+ props?: CloudSqlite.ContainerProps;
1090
+ accessLevel?: BlobContainer.RequestAccessLevel;
1091
+ }): Promise<ViewStore.CloudAccess>;
1092
+ /** @beta */
1093
+ saveDefaultViewStore(arg: CloudSqlite.ContainerProps): void;
1094
+ /** Query for the array of ViewDefinitionProps of the specified class and matching the specified IsPrivate setting.
1095
+ * @param className Query for view definitions of this class.
1096
+ * @param wantPrivate If true, include private view definitions.
1097
+ */
1098
+ queryViewDefinitionProps(className?: string, limit?: number, offset?: number, wantPrivate?: boolean): ViewDefinitionProps[];
1099
+ /** Default parameters for iterating/querying ViewDefinitions. Includes all subclasses of ViewDefinition, excluding only those marked 'private'. */
1100
+ static readonly defaultQueryParams: ViewQueryParams;
1101
+ /** Iterate all ViewDefinitions matching the supplied query.
1102
+ * @param params Specifies the query by which views are selected.
1103
+ * @param callback Function invoked for each ViewDefinition matching the query. Return false to terminate iteration, true to continue.
1104
+ * @returns true if all views were iterated, false if iteration was terminated early due to callback returning false.
1105
+ */
1106
+ iterateViews(params: ViewQueryParams, callback: (view: ViewDefinition) => boolean): boolean;
1107
+ private loadViewData;
1108
+ /** Obtain a [ViewStateProps]($common) for a [[ViewDefinition]] specified by ViewIdString. */
1109
+ getViewStateProps(viewDefinitionId: ViewIdString, options?: ViewStateLoadProps): Promise<ViewStateProps>;
1110
+ private getViewThumbnailArg;
1111
+ /** Get the thumbnail for a view.
1112
+ * @param viewDefinitionId The Id of the view for thumbnail
1113
+ * @returns the ThumbnailProps, or undefined if no thumbnail exists.
1114
+ */
1115
+ getThumbnail(viewDefinitionId: Id64String): ThumbnailProps | undefined;
1116
+ /** Save a thumbnail for a view.
1117
+ * @param viewDefinitionId The Id of the view for thumbnail
1118
+ * @param thumbnail The thumbnail data.
1119
+ * @returns 0 if successful
1120
+ */
1121
+ saveThumbnail(viewDefinitionId: Id64String, thumbnail: ThumbnailProps): number;
1122
+ /** Set the default view property the iModel.
1123
+ * @param viewId The Id of the ViewDefinition to use as the default
1124
+ * @deprecated in 4.2.x. Avoid setting this property - it is not practical for one single view to serve the needs of the many applications
1125
+ * that might wish to view the contents of the iModel.
1126
+ */
1127
+ setDefaultViewId(viewId: Id64String): void;
1128
+ }
1129
+ /** Represents the current state of a pollable tile content request.
1130
+ * Note: lack of a "completed" state because polling a completed request returns the content as a Uint8Array.
1131
+ * @internal
1132
+ */
1133
+ enum TileContentState {
1134
+ New = 0,// Request was just created and enqueued.
1135
+ Pending = 1,// Request is enqueued but not yet being processed.
1136
+ Loading = 2
1137
+ }
1138
+ /** @internal */
1139
+ class Tiles {
1140
+ private _iModel;
1141
+ /** @internal */
1142
+ constructor(_iModel: IModelDb);
1143
+ /** @internal */
1144
+ requestTileTreeProps(id: string): Promise<IModelTileTreeProps>;
1145
+ private pollTileContent;
1146
+ /** @internal */
1147
+ requestTileContent(treeId: string, tileId: string): Promise<IModelJsNative.TileContent>;
1148
+ /** @internal */
1149
+ getTileContent(treeId: string, tileId: string): Promise<Uint8Array>;
1150
+ }
1151
+ }
1152
+ /**
1153
+ * Argument to a function that can accept a valid access token.
1154
+ * @public
1155
+ */
1156
+ export interface TokenArg {
1157
+ /** If present, the access token for the requested operation. If not present, use [[IModelHost.getAccessToken]] */
1158
+ readonly accessToken?: AccessToken;
1159
+ }
1160
+ /** Augments a [[SnapshotDbOpenArgs]] or [[OpenBriefcaseArgs]] with a [CloudContainer]($docs/learning/backend/Workspace.md).
1161
+ * The properties are this interface are reserved for internal use only.
1162
+ * @public
1163
+ */
1164
+ export interface CloudContainerArgs {
1165
+ /** @internal */
1166
+ container?: CloudSqlite.CloudContainer;
1167
+ }
1168
+ /** Options to open a [SnapshotDb]($backend).
1169
+ * @public
1170
+ */
1171
+ export type SnapshotDbOpenArgs = SnapshotOpenOptions & CloudContainerArgs & OpenSqliteArgs;
1172
+ /**
1173
+ * Arguments to open a BriefcaseDb
1174
+ * @public
1175
+ */
1176
+ export type OpenBriefcaseArgs = OpenBriefcaseProps & CloudContainerArgs & OpenSqliteArgs;
1177
+ /**
1178
+ * A local copy of an iModel from iModelHub that can pull and potentially push changesets.
1179
+ * BriefcaseDb raises a set of events to allow apps and subsystems to track its object life cycle, including [[onOpen]] and [[onOpened]].
1180
+ * @public
1181
+ */
1182
+ export declare class BriefcaseDb extends IModelDb {
1183
+ /** Manages local changes to this briefcase. */
1184
+ readonly txns: TxnManager;
1185
+ /** override superclass method */
1186
+ get isBriefcase(): boolean;
1187
+ readonly briefcaseId: BriefcaseId;
1188
+ private _skipSyncSchemasOnPullAndPush?;
1189
+ /** @internal */
1190
+ get skipSyncSchemasOnPullAndPush(): boolean;
1191
+ /**
1192
+ * Event raised just before a BriefcaseDb is opened. Supplies the arguments that will be used to open the BriefcaseDb.
1193
+ * Throw an exception to stop the open.
1194
+ *
1195
+ * **Example:**
1196
+ * ``` ts
1197
+ * [[include:BriefcaseDb.onOpen]]
1198
+ * ```
1199
+ */
1200
+ static readonly onOpen: BeEvent<(_args: OpenBriefcaseArgs) => void>;
1201
+ /**
1202
+ * Event raised just after a BriefcaseDb is opened. Supplies the newly opened BriefcaseDb and the arguments that were used to open it.
1203
+ *
1204
+ * **Example:**
1205
+ * ``` ts
1206
+ * [[include:BriefcaseDb.onOpened]]
1207
+ * ```
1208
+ */
1209
+ static readonly onOpened: BeEvent<(_iModelDb: BriefcaseDb, _args: OpenBriefcaseArgs) => void>;
1210
+ /** Event raised after a BriefcaseDb has been closed. */
1211
+ readonly onClosed: BeEvent<() => void>;
1212
+ /** @alpha */
1213
+ static readonly onCodeServiceCreated: BeEvent<(briefcase: BriefcaseDb) => void>;
1214
+ static findByKey(key: string): BriefcaseDb;
1215
+ static tryFindByKey(key: string): BriefcaseDb | undefined;
1216
+ /**
1217
+ * The Guid that identifies the *context* that owns this iModel.
1218
+ * GuidString | undefined for the superclass, but required for BriefcaseDb
1219
+ * */
1220
+ get iTwinId(): GuidString;
1221
+ /**
1222
+ * Determine whether this BriefcaseDb should use a lock server.
1223
+ * All must be true:
1224
+ * - file is open for write
1225
+ * - has an assigned briefcaseId
1226
+ * - the "no locking" flag is not present. This is a property of an iModel, established when the iModel is created in IModelHub.
1227
+ */
1228
+ protected get useLockServer(): boolean;
1229
+ protected makeLockControl(): void;
1230
+ protected constructor(args: {
1231
+ nativeDb: IModelJsNative.DgnDb;
1232
+ key: string;
1233
+ openMode: OpenMode;
1234
+ briefcaseId: number;
1235
+ });
1236
+ /** Upgrades the profile or domain schemas. File must be closed before this call and is always left closed. */
1237
+ private static doUpgrade;
1238
+ /** Upgrades the schemas in the iModel based on the current version of the software. Follows a sequence of operations -
1239
+ * * Acquires a schema lock to prevent other users from making any other changes while upgrade is happening
1240
+ * * Updates the local briefcase with the schema changes.
1241
+ * * Pushes the resulting changeset(s) to iModelHub.
1242
+ * Note that the upgrade requires that the local briefcase be closed, and may result in one or two change sets depending on whether both
1243
+ * profile and domain schemas need to get upgraded.
1244
+ * @see ($docs/learning/backend/IModelDb.md#upgrading-schemas-in-an-imodel)
1245
+ */
1246
+ static upgradeSchemas(briefcase: OpenBriefcaseArgs): Promise<void>;
1247
+ /** Open a briefcase file and return a new BriefcaseDb to interact with it.
1248
+ * @param args parameters that specify the file name, and options for opening the briefcase file
1249
+ */
1250
+ static open(args: OpenBriefcaseArgs): Promise<BriefcaseDb>;
1251
+ /** This is called by native code when applying a changeset */
1252
+ private onChangesetConflict;
1253
+ /** If the briefcase is read-only, reopen the native briefcase for writing.
1254
+ * Execute the supplied function.
1255
+ * If the briefcase was read-only, reopen the native briefcase as read-only.
1256
+ * @note this._openMode is not changed from its initial value.
1257
+ * @internal Exported strictly for tests
1258
+ */
1259
+ executeWritable(func: () => Promise<void>): Promise<void>;
1260
+ private closeAndReopen;
1261
+ /** Pull and apply changesets from iModelHub */
1262
+ pullChanges(arg?: PullChangesArgs): Promise<void>;
1263
+ /** Revert timeline changes and then push resulting changeset */
1264
+ revertAndPushChanges(arg: RevertChangesArgs): Promise<void>;
1265
+ /** Push changes to iModelHub. */
1266
+ pushChanges(arg: PushChangesArgs): Promise<void>;
1267
+ close(): void;
1268
+ }
1269
+ /** A *snapshot* iModel database file that is used for archival and data transfer purposes.
1270
+ * @see [Snapshot iModels]($docs/learning/backend/AccessingIModels.md#snapshot-imodels)
1271
+ * @see [About IModelDb]($docs/learning/backend/IModelDb.md)
1272
+ * @public
1273
+ */
1274
+ export declare class SnapshotDb extends IModelDb {
1275
+ get isSnapshot(): boolean;
1276
+ private _refreshSas;
1277
+ /** Timer used to restart the default txn on the SnapshotDb after some inactivity. This is only used for checkpoints.
1278
+ * Restarting the default txn lets CloudSqlite know that any blocks that may have been read may now be ejected.
1279
+ * Without restarting the default txn, CloudSQLite can get into a state where it can not evict any blocks to make space for more blocks.
1280
+ */
1281
+ private _restartDefaultTxnTimer?;
1282
+ private _createClassViewsOnClose?;
1283
+ static readonly onOpen: BeEvent<(path: LocalFileName, opts?: SnapshotDbOpenArgs) => void>;
1284
+ static readonly onOpened: BeEvent<(_iModelDb: SnapshotDb) => void>;
1285
+ private constructor();
1286
+ static findByKey(key: string): SnapshotDb;
1287
+ static tryFindByKey(key: string): SnapshotDb | undefined;
1288
+ /** Create an *empty* local [Snapshot]($docs/learning/backend/AccessingIModels.md#snapshot-imodels) iModel file.
1289
+ * Snapshots are not synchronized with iModelHub, so do not have a change timeline.
1290
+ * @note: A *snapshot* cannot be modified after [[close]] is called.
1291
+ * @param filePath The file that will contain the new iModel *snapshot*
1292
+ * @param options The parameters that define the new iModel *snapshot*
1293
+ * @returns A writeable SnapshotDb
1294
+ * @see [Snapshot iModels]($docs/learning/backend/AccessingIModels.md#snapshot-imodels)
1295
+ */
1296
+ static createEmpty(filePath: LocalFileName, options: CreateEmptySnapshotIModelProps): SnapshotDb;
1297
+ /** Create a local [Snapshot]($docs/learning/backend/AccessingIModels.md#snapshot-imodels) iModel file, using this iModel as a *seed* or starting point.
1298
+ * Snapshots are not synchronized with iModelHub, so do not have a change timeline.
1299
+ * @note: A *snapshot* cannot be modified after [[close]] is called.
1300
+ * @param iModelDb The snapshot will be initialized from the current contents of this iModelDb
1301
+ * @param snapshotFile The file that will contain the new iModel *snapshot*
1302
+ * @param options Optional properties that determine how the snapshot iModel is created.
1303
+ * @returns A writeable SnapshotDb
1304
+ * @see [Snapshot iModels]($docs/learning/backend/AccessingIModels.md#snapshot-imodels)
1305
+ */
1306
+ static createFrom(iModelDb: IModelDb, snapshotFile: string, options?: CreateSnapshotIModelProps): SnapshotDb;
1307
+ /** open this SnapshotDb read/write, strictly to apply incoming changesets. Used for creating new checkpoints.
1308
+ * @internal
1309
+ */
1310
+ static openForApplyChangesets(path: LocalFileName, props?: SnapshotDbOpenArgs): SnapshotDb;
1311
+ /** Open a read-only iModel *snapshot*.
1312
+ * @param path the full path of the snapshot iModel file to open.
1313
+ * @param props options for opening snapshot
1314
+ * @see [[close]]
1315
+ * @throws [[IModelError]] If the file is not found or is not a valid *snapshot*.
1316
+ */
1317
+ static openFile(path: LocalFileName, opts?: SnapshotDbOpenArgs): SnapshotDb;
1318
+ private static attachAndOpenCheckpoint;
1319
+ /** @internal */
1320
+ static openCheckpointFromRpc(checkpoint: CheckpointProps): Promise<SnapshotDb>;
1321
+ /**
1322
+ * Open a Checkpoint directly from its cloud container.
1323
+ * @beta
1324
+ */
1325
+ static openCheckpoint(args: OpenCheckpointArgs): Promise<SnapshotDb>;
1326
+ /** Used to refresh the container sasToken using the current user's accessToken.
1327
+ * Also restarts the timer which causes the default txn to be restarted on db if the timer activates.
1328
+ * @internal
1329
+ */
1330
+ refreshContainerForRpc(userAccessToken: AccessToken): Promise<void>;
1331
+ /** @internal */
1332
+ beforeClose(): void;
1333
+ }
1334
+ /**
1335
+ * Standalone iModels are read/write files that are not associated with an iTwin or managed by iModelHub.
1336
+ * They are relevant only for testing, or for small-scale single-user scenarios.
1337
+ * Standalone iModels are designed such that the API for Standalone iModels and Briefcase
1338
+ * iModels (those synchronized with iModelHub) are as similar and consistent as possible.
1339
+ * This leads to a straightforward process where the a user starts with StandaloneDb and can
1340
+ * optionally choose to upgrade to an iTwin.
1341
+ *
1342
+ * Some additional details. Standalone iModels:
1343
+ * - always have [Guid.empty]($bentley) for their iTwinId (they are "unassociated" files)
1344
+ * - always have BriefcaseId === [BriefcaseIdValue.Unassigned]($common)
1345
+ * - are connected to the frontend via [BriefcaseConnection.openStandalone]($frontend)
1346
+ * - may be opened without supplying any user credentials
1347
+ * - may be opened read/write
1348
+ * - cannot apply a changeset to nor generate a changesets (since there is no timeline from which to get/push changesets)
1349
+ * @public
1350
+ */
1351
+ export declare class StandaloneDb extends BriefcaseDb {
1352
+ get isStandalone(): boolean;
1353
+ protected get useLockServer(): boolean;
1354
+ static findByKey(key: string): StandaloneDb;
1355
+ static tryFindByKey(key: string): StandaloneDb | undefined;
1356
+ /** Create an *empty* standalone iModel.
1357
+ * @param filePath The file path for the iModel
1358
+ * @param args The parameters that define the new iModel
1359
+ */
1360
+ static createEmpty(filePath: LocalFileName, args: CreateEmptyStandaloneIModelProps): StandaloneDb;
1361
+ /**
1362
+ * Upgrades the schemas in the standalone iModel file.
1363
+ * Note that the upgrade requires that the file be closed, and will leave it back in the closed state.
1364
+ * @param filePath Full path name of the standalone iModel file.
1365
+ * @see ($docs/learning/backend/IModelDb.md#upgrading-schemas-in-an-imodel)
1366
+ * @see [[StandaloneDb.validateSchemas]]
1367
+ */
1368
+ static upgradeStandaloneSchemas(filePath: LocalFileName): void;
1369
+ /** Creates or updates views in the iModel to permit visualizing the EC content as ECClasses and ECProperties rather than raw database tables and columns.
1370
+ * This can be helpful when debugging the EC data, especially when the raw tables make use of shared columns or spread data across multiple tables.
1371
+ * @throws IModelError if view creation failed.
1372
+ * @note The views are strictly intended for developers and debugging purposes only - they should not be used in application code.
1373
+ * @beta
1374
+ */
1375
+ createClassViews(): void;
1376
+ /** Open a standalone iModel file.
1377
+ * @param filePath The path of the standalone iModel file.
1378
+ * @param openMode Optional open mode for the standalone iModel. The default is read/write.
1379
+ * @throws [[IModelError]] if the file is not a standalone iModel.
1380
+ * @see [BriefcaseConnection.openStandalone]($frontend) to open a StandaloneDb from the frontend
1381
+ */
1382
+ static openFile(filePath: LocalFileName, openMode?: OpenMode, options?: SnapshotDbOpenArgs): StandaloneDb;
1383
+ /** Convert an iModel stored on the local file system into a StandaloneDb, chiefly for testing purposes.
1384
+ * The file must not be open in any application.
1385
+ * @param iModelFileName the path to the iModel on the local file system.
1386
+ * @beta
1387
+ */
1388
+ static convertToStandalone(iModelFileName: LocalFileName): void;
1389
+ }
1390
+ //# sourceMappingURL=IModelDb.d.ts.map