@itwin/core-backend 4.0.0-dev.10 → 4.0.0-dev.101

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 (295) hide show
  1. package/CHANGELOG.md +68 -1
  2. package/lib/cjs/BackendHubAccess.d.ts +226 -224
  3. package/lib/cjs/BackendHubAccess.d.ts.map +1 -1
  4. package/lib/cjs/BackendHubAccess.js +41 -41
  5. package/lib/cjs/BackendHubAccess.js.map +1 -1
  6. package/lib/cjs/BackendLoggerCategory.d.ts +90 -91
  7. package/lib/cjs/BackendLoggerCategory.d.ts.map +1 -1
  8. package/lib/cjs/BackendLoggerCategory.js +98 -99
  9. package/lib/cjs/BackendLoggerCategory.js.map +1 -1
  10. package/lib/cjs/BisCoreSchema.d.ts +21 -21
  11. package/lib/cjs/BisCoreSchema.js +60 -60
  12. package/lib/cjs/BisCoreSchema.js.map +1 -1
  13. package/lib/cjs/BlobContainerService.d.ts +120 -0
  14. package/lib/cjs/BlobContainerService.d.ts.map +1 -0
  15. package/lib/cjs/BlobContainerService.js +18 -0
  16. package/lib/cjs/BlobContainerService.js.map +1 -0
  17. package/lib/cjs/BriefcaseManager.d.ts +184 -170
  18. package/lib/cjs/BriefcaseManager.d.ts.map +1 -1
  19. package/lib/cjs/BriefcaseManager.js +421 -414
  20. package/lib/cjs/BriefcaseManager.js.map +1 -1
  21. package/lib/cjs/Category.d.ts +153 -153
  22. package/lib/cjs/Category.js +243 -243
  23. package/lib/cjs/Category.js.map +1 -1
  24. package/lib/cjs/ChangeSummaryManager.d.ts +187 -187
  25. package/lib/cjs/ChangeSummaryManager.js +446 -447
  26. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  27. package/lib/cjs/ChangedElementsDb.d.ts +99 -99
  28. package/lib/cjs/ChangedElementsDb.js +165 -165
  29. package/lib/cjs/ChangedElementsDb.js.map +1 -1
  30. package/lib/cjs/ChangedElementsManager.d.ts +39 -39
  31. package/lib/cjs/ChangedElementsManager.js +88 -88
  32. package/lib/cjs/ChangedElementsManager.js.map +1 -1
  33. package/lib/cjs/ChannelControl.d.ts +70 -0
  34. package/lib/cjs/ChannelControl.d.ts.map +1 -0
  35. package/lib/cjs/ChannelControl.js +89 -0
  36. package/lib/cjs/ChannelControl.js.map +1 -0
  37. package/lib/cjs/CheckpointManager.d.ts +121 -121
  38. package/lib/cjs/CheckpointManager.d.ts.map +1 -1
  39. package/lib/cjs/CheckpointManager.js +351 -349
  40. package/lib/cjs/CheckpointManager.js.map +1 -1
  41. package/lib/cjs/ClassRegistry.d.ts +79 -79
  42. package/lib/cjs/ClassRegistry.js +254 -250
  43. package/lib/cjs/ClassRegistry.js.map +1 -1
  44. package/lib/cjs/CloudSqlite.d.ts +572 -350
  45. package/lib/cjs/CloudSqlite.d.ts.map +1 -1
  46. package/lib/cjs/CloudSqlite.js +374 -153
  47. package/lib/cjs/CloudSqlite.js.map +1 -1
  48. package/lib/cjs/CodeService.d.ts +399 -396
  49. package/lib/cjs/CodeService.d.ts.map +1 -1
  50. package/lib/cjs/CodeService.js +63 -63
  51. package/lib/cjs/CodeService.js.map +1 -1
  52. package/lib/cjs/CodeSpecs.d.ts +58 -55
  53. package/lib/cjs/CodeSpecs.d.ts.map +1 -1
  54. package/lib/cjs/CodeSpecs.js +154 -124
  55. package/lib/cjs/CodeSpecs.js.map +1 -1
  56. package/lib/cjs/ConcurrentQuery.d.ts +13 -13
  57. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  58. package/lib/cjs/ConcurrentQuery.js +36 -36
  59. package/lib/cjs/ConcurrentQuery.js.map +1 -1
  60. package/lib/cjs/CustomViewState3dCreator.d.ts +21 -21
  61. package/lib/cjs/CustomViewState3dCreator.d.ts.map +1 -1
  62. package/lib/cjs/CustomViewState3dCreator.js +80 -81
  63. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  64. package/lib/cjs/DevTools.d.ts +74 -71
  65. package/lib/cjs/DevTools.d.ts.map +1 -1
  66. package/lib/cjs/DevTools.js +156 -154
  67. package/lib/cjs/DevTools.js.map +1 -1
  68. package/lib/cjs/DisplayStyle.d.ts +104 -106
  69. package/lib/cjs/DisplayStyle.d.ts.map +1 -1
  70. package/lib/cjs/DisplayStyle.js +251 -256
  71. package/lib/cjs/DisplayStyle.js.map +1 -1
  72. package/lib/cjs/ECDb.d.ts +194 -191
  73. package/lib/cjs/ECDb.d.ts.map +1 -1
  74. package/lib/cjs/ECDb.js +351 -350
  75. package/lib/cjs/ECDb.js.map +1 -1
  76. package/lib/cjs/ECSchemaXmlContext.d.ts +18 -18
  77. package/lib/cjs/ECSchemaXmlContext.d.ts.map +1 -1
  78. package/lib/cjs/ECSchemaXmlContext.js +41 -41
  79. package/lib/cjs/ECSchemaXmlContext.js.map +1 -1
  80. package/lib/cjs/ECSqlStatement.d.ts +473 -473
  81. package/lib/cjs/ECSqlStatement.js +791 -791
  82. package/lib/cjs/ECSqlStatement.js.map +1 -1
  83. package/lib/cjs/Element.d.ts +1105 -1109
  84. package/lib/cjs/Element.d.ts.map +1 -1
  85. package/lib/cjs/Element.js +1416 -1427
  86. package/lib/cjs/Element.js.map +1 -1
  87. package/lib/cjs/ElementAspect.d.ts +175 -179
  88. package/lib/cjs/ElementAspect.d.ts.map +1 -1
  89. package/lib/cjs/ElementAspect.js +202 -211
  90. package/lib/cjs/ElementAspect.js.map +1 -1
  91. package/lib/cjs/ElementGraphics.d.ts +9 -9
  92. package/lib/cjs/ElementGraphics.js +41 -41
  93. package/lib/cjs/ElementGraphics.js.map +1 -1
  94. package/lib/cjs/ElementTreeWalker.d.ts +162 -162
  95. package/lib/cjs/ElementTreeWalker.d.ts.map +1 -1
  96. package/lib/cjs/ElementTreeWalker.js +409 -409
  97. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  98. package/lib/cjs/Entity.d.ts +102 -106
  99. package/lib/cjs/Entity.d.ts.map +1 -1
  100. package/lib/cjs/Entity.js +118 -134
  101. package/lib/cjs/Entity.js.map +1 -1
  102. package/lib/cjs/EntityReferences.d.ts +49 -49
  103. package/lib/cjs/EntityReferences.d.ts.map +1 -1
  104. package/lib/cjs/EntityReferences.js +95 -95
  105. package/lib/cjs/EntityReferences.js.map +1 -1
  106. package/lib/cjs/ExportGraphics.d.ts +317 -317
  107. package/lib/cjs/ExportGraphics.d.ts.map +1 -1
  108. package/lib/cjs/ExportGraphics.js +208 -208
  109. package/lib/cjs/ExportGraphics.js.map +1 -1
  110. package/lib/cjs/ExternalSource.d.ts +95 -96
  111. package/lib/cjs/ExternalSource.d.ts.map +1 -1
  112. package/lib/cjs/ExternalSource.js +130 -131
  113. package/lib/cjs/ExternalSource.js.map +1 -1
  114. package/lib/cjs/GeoCoordConfig.d.ts +19 -19
  115. package/lib/cjs/GeoCoordConfig.js +85 -85
  116. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  117. package/lib/cjs/GeometrySummary.d.ts +4 -4
  118. package/lib/cjs/GeometrySummary.js +380 -380
  119. package/lib/cjs/GeometrySummary.js.map +1 -1
  120. package/lib/cjs/HubMock.d.ts +94 -94
  121. package/lib/cjs/HubMock.js +220 -222
  122. package/lib/cjs/HubMock.js.map +1 -1
  123. package/lib/cjs/IModelCloneContext.d.ts +8 -8
  124. package/lib/cjs/IModelCloneContext.d.ts.map +1 -1
  125. package/lib/cjs/IModelCloneContext.js +15 -15
  126. package/lib/cjs/IModelCloneContext.js.map +1 -1
  127. package/lib/cjs/IModelDb.d.ts +1222 -1196
  128. package/lib/cjs/IModelDb.d.ts.map +1 -1
  129. package/lib/cjs/IModelDb.js +2389 -2392
  130. package/lib/cjs/IModelDb.js.map +1 -1
  131. package/lib/cjs/IModelElementCloneContext.d.ts +89 -89
  132. package/lib/cjs/IModelElementCloneContext.js +159 -159
  133. package/lib/cjs/IModelElementCloneContext.js.map +1 -1
  134. package/lib/cjs/IModelHost.d.ts +370 -369
  135. package/lib/cjs/IModelHost.d.ts.map +1 -1
  136. package/lib/cjs/IModelHost.js +476 -496
  137. package/lib/cjs/IModelHost.js.map +1 -1
  138. package/lib/cjs/IModelJsFs.d.ts +62 -62
  139. package/lib/cjs/IModelJsFs.js +139 -140
  140. package/lib/cjs/IModelJsFs.js.map +1 -1
  141. package/lib/cjs/IpcHost.d.ts +104 -104
  142. package/lib/cjs/IpcHost.js +276 -278
  143. package/lib/cjs/IpcHost.js.map +1 -1
  144. package/lib/cjs/LineStyle.d.ts +311 -311
  145. package/lib/cjs/LineStyle.js +295 -295
  146. package/lib/cjs/LineStyle.js.map +1 -1
  147. package/lib/cjs/LocalHub.d.ts +162 -162
  148. package/lib/cjs/LocalHub.d.ts.map +1 -1
  149. package/lib/cjs/LocalHub.js +580 -585
  150. package/lib/cjs/LocalHub.js.map +1 -1
  151. package/lib/cjs/LocalhostIpcHost.d.ts +21 -20
  152. package/lib/cjs/LocalhostIpcHost.d.ts.map +1 -1
  153. package/lib/cjs/LocalhostIpcHost.js +79 -81
  154. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  155. package/lib/cjs/Material.d.ts +131 -131
  156. package/lib/cjs/Material.d.ts.map +1 -1
  157. package/lib/cjs/Material.js +185 -181
  158. package/lib/cjs/Material.js.map +1 -1
  159. package/lib/cjs/Model.d.ts +391 -392
  160. package/lib/cjs/Model.d.ts.map +1 -1
  161. package/lib/cjs/Model.js +487 -485
  162. package/lib/cjs/Model.js.map +1 -1
  163. package/lib/cjs/NativeAppStorage.d.ts +51 -51
  164. package/lib/cjs/NativeAppStorage.js +202 -202
  165. package/lib/cjs/NativeAppStorage.js.map +1 -1
  166. package/lib/cjs/NativeHost.d.ts +52 -52
  167. package/lib/cjs/NativeHost.d.ts.map +1 -1
  168. package/lib/cjs/NativeHost.js +158 -163
  169. package/lib/cjs/NativeHost.js.map +1 -1
  170. package/lib/cjs/NavigationRelationship.d.ts +156 -156
  171. package/lib/cjs/NavigationRelationship.js +225 -225
  172. package/lib/cjs/NavigationRelationship.js.map +1 -1
  173. package/lib/cjs/PromiseMemoizer.d.ts +51 -51
  174. package/lib/cjs/PromiseMemoizer.d.ts.map +1 -1
  175. package/lib/cjs/PromiseMemoizer.js +101 -101
  176. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  177. package/lib/cjs/PropertyStore.d.ts +123 -132
  178. package/lib/cjs/PropertyStore.d.ts.map +1 -1
  179. package/lib/cjs/PropertyStore.js +179 -11
  180. package/lib/cjs/PropertyStore.js.map +1 -1
  181. package/lib/cjs/Relationship.d.ts +413 -416
  182. package/lib/cjs/Relationship.d.ts.map +1 -1
  183. package/lib/cjs/Relationship.js +491 -494
  184. package/lib/cjs/Relationship.js.map +1 -1
  185. package/lib/cjs/RpcBackend.d.ts +5 -5
  186. package/lib/cjs/RpcBackend.js +32 -32
  187. package/lib/cjs/RpcBackend.js.map +1 -1
  188. package/lib/cjs/SQLiteDb.d.ts +317 -219
  189. package/lib/cjs/SQLiteDb.d.ts.map +1 -1
  190. package/lib/cjs/SQLiteDb.js +318 -214
  191. package/lib/cjs/SQLiteDb.js.map +1 -1
  192. package/lib/cjs/Schema.d.ts +55 -55
  193. package/lib/cjs/Schema.js +83 -83
  194. package/lib/cjs/Schema.js.map +1 -1
  195. package/lib/cjs/ServerBasedLocks.d.ts +57 -57
  196. package/lib/cjs/ServerBasedLocks.js +168 -168
  197. package/lib/cjs/ServerBasedLocks.js.map +1 -1
  198. package/lib/cjs/SqliteStatement.d.ts +360 -360
  199. package/lib/cjs/SqliteStatement.d.ts.map +1 -1
  200. package/lib/cjs/SqliteStatement.js +586 -586
  201. package/lib/cjs/SqliteStatement.js.map +1 -1
  202. package/lib/cjs/Texture.d.ts +58 -58
  203. package/lib/cjs/Texture.js +82 -82
  204. package/lib/cjs/Texture.js.map +1 -1
  205. package/lib/cjs/TileStorage.d.ts +44 -18
  206. package/lib/cjs/TileStorage.d.ts.map +1 -1
  207. package/lib/cjs/TileStorage.js +109 -90
  208. package/lib/cjs/TileStorage.js.map +1 -1
  209. package/lib/cjs/TxnManager.d.ts +202 -202
  210. package/lib/cjs/TxnManager.d.ts.map +1 -1
  211. package/lib/cjs/TxnManager.js +356 -356
  212. package/lib/cjs/TxnManager.js.map +1 -1
  213. package/lib/cjs/ViewDefinition.d.ts +429 -439
  214. package/lib/cjs/ViewDefinition.d.ts.map +1 -1
  215. package/lib/cjs/ViewDefinition.js +640 -646
  216. package/lib/cjs/ViewDefinition.js.map +1 -1
  217. package/lib/cjs/ViewStateHydrator.d.ts +13 -13
  218. package/lib/cjs/ViewStateHydrator.js +103 -103
  219. package/lib/cjs/ViewStateHydrator.js.map +1 -1
  220. package/lib/cjs/assets/IModelChange.02.00.00.ecschema.xml +90 -90
  221. package/lib/cjs/assets/Settings/Schemas/Cloud.Schema.json +67 -67
  222. package/lib/cjs/assets/Settings/Schemas/Gcs.schema.json +31 -31
  223. package/lib/cjs/assets/Settings/Schemas/Workspace.Schema.json +52 -52
  224. package/lib/cjs/assets/Settings/backend.setting.json5 +138 -138
  225. package/lib/cjs/core-backend.d.ts +181 -184
  226. package/lib/cjs/core-backend.d.ts.map +1 -1
  227. package/lib/cjs/core-backend.js +205 -204
  228. package/lib/cjs/core-backend.js.map +1 -1
  229. package/lib/cjs/domains/FunctionalElements.d.ts +101 -101
  230. package/lib/cjs/domains/FunctionalElements.js +145 -145
  231. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  232. package/lib/cjs/domains/FunctionalSchema.d.ts +13 -13
  233. package/lib/cjs/domains/FunctionalSchema.d.ts.map +1 -1
  234. package/lib/cjs/domains/FunctionalSchema.js +39 -40
  235. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  236. package/lib/cjs/domains/GenericElements.d.ts +177 -177
  237. package/lib/cjs/domains/GenericElements.js +263 -263
  238. package/lib/cjs/domains/GenericElements.js.map +1 -1
  239. package/lib/cjs/domains/GenericSchema.d.ts +10 -10
  240. package/lib/cjs/domains/GenericSchema.js +28 -28
  241. package/lib/cjs/domains/GenericSchema.js.map +1 -1
  242. package/lib/cjs/rpc/multipart.d.ts +11 -11
  243. package/lib/cjs/rpc/multipart.js +71 -71
  244. package/lib/cjs/rpc/multipart.js.map +1 -1
  245. package/lib/cjs/rpc/tracing.d.ts +28 -28
  246. package/lib/cjs/rpc/tracing.js +73 -74
  247. package/lib/cjs/rpc/tracing.js.map +1 -1
  248. package/lib/cjs/rpc/web/logging.d.ts +9 -9
  249. package/lib/cjs/rpc/web/logging.js +43 -43
  250. package/lib/cjs/rpc/web/logging.js.map +1 -1
  251. package/lib/cjs/rpc/web/request.d.ts +6 -6
  252. package/lib/cjs/rpc/web/request.js +73 -74
  253. package/lib/cjs/rpc/web/request.js.map +1 -1
  254. package/lib/cjs/rpc/web/response.d.ts +6 -6
  255. package/lib/cjs/rpc/web/response.js +105 -106
  256. package/lib/cjs/rpc/web/response.js.map +1 -1
  257. package/lib/cjs/rpc-impl/DevToolsRpcImpl.d.ts +15 -15
  258. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js +32 -32
  259. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js.map +1 -1
  260. package/lib/cjs/rpc-impl/IModelReadRpcImpl.d.ts +47 -47
  261. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js +293 -294
  262. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  263. package/lib/cjs/rpc-impl/IModelTileRpcImpl.d.ts +20 -22
  264. package/lib/cjs/rpc-impl/IModelTileRpcImpl.d.ts.map +1 -1
  265. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js +193 -205
  266. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  267. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.d.ts +36 -36
  268. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js +166 -168
  269. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  270. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.d.ts +16 -16
  271. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js +42 -43
  272. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  273. package/lib/cjs/rpc-impl/WipRpcImpl.d.ts +15 -15
  274. package/lib/cjs/rpc-impl/WipRpcImpl.js +37 -37
  275. package/lib/cjs/rpc-impl/WipRpcImpl.js.map +1 -1
  276. package/lib/cjs/workspace/Settings.d.ts +186 -186
  277. package/lib/cjs/workspace/Settings.d.ts.map +1 -1
  278. package/lib/cjs/workspace/Settings.js +155 -155
  279. package/lib/cjs/workspace/Settings.js.map +1 -1
  280. package/lib/cjs/workspace/SettingsSchemas.d.ts +75 -75
  281. package/lib/cjs/workspace/SettingsSchemas.js +190 -191
  282. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  283. package/lib/cjs/workspace/Workspace.d.ts +411 -414
  284. package/lib/cjs/workspace/Workspace.d.ts.map +1 -1
  285. package/lib/cjs/workspace/Workspace.js +521 -543
  286. package/lib/cjs/workspace/Workspace.js.map +1 -1
  287. package/package.json +25 -28
  288. package/lib/cjs/AliCloudStorageService.d.ts +0 -24
  289. package/lib/cjs/AliCloudStorageService.d.ts.map +0 -1
  290. package/lib/cjs/AliCloudStorageService.js +0 -72
  291. package/lib/cjs/AliCloudStorageService.js.map +0 -1
  292. package/lib/cjs/CloudStorageBackend.d.ts +0 -59
  293. package/lib/cjs/CloudStorageBackend.d.ts.map +0 -1
  294. package/lib/cjs/CloudStorageBackend.js +0 -174
  295. package/lib/cjs/CloudStorageBackend.js.map +0 -1
@@ -1,440 +1,430 @@
1
- /** @packageDocumentation
2
- * @module ViewDefinitions
3
- */
4
- import { Id64Array, Id64String } from "@itwin/core-bentley";
5
- import { Angle, Point2d, Point3d, Range2d, Range3d, StandardViewIndex, Vector3d, YawPitchRollAngles } from "@itwin/core-geometry";
6
- import { AuxCoordSystem2dProps, AuxCoordSystem3dProps, AuxCoordSystemProps, Camera, CategorySelectorProps, Code, CodeScopeProps, ConcreteEntityTypes, EntityReferenceSet, LightLocationProps, ModelSelectorProps, RelatedElement, SpatialViewDefinitionProps, ViewAttachmentProps, ViewDefinition2dProps, ViewDefinition3dProps, ViewDefinitionProps, ViewDetails, ViewDetails3d } from "@itwin/core-common";
7
- import { DefinitionElement, GraphicalElement2d, SpatialLocationElement } from "./Element";
8
- import { IModelDb } from "./IModelDb";
9
- import { DisplayStyle, DisplayStyle2d, DisplayStyle3d } from "./DisplayStyle";
10
- import { IModelElementCloneContext } from "./IModelElementCloneContext";
11
- /** Holds the list of Ids of GeometricModels displayed by a [[SpatialViewDefinition]]. Multiple SpatialViewDefinitions may point to the same ModelSelector.
12
- * @see [ModelSelectorState]($frontend)
13
- * See [how to create a ModelSelector]$(docs/learning/backend/CreateElements.md#ModelSelector).
14
- * @public
15
- */
16
- export declare class ModelSelector extends DefinitionElement {
17
- /** @internal */
18
- static get className(): string;
19
- /** The array of modelIds of the GeometricModels displayed by this ModelSelector */
20
- models: Id64String[];
21
- /** @internal */
22
- constructor(props: ModelSelectorProps, iModel: IModelDb);
23
- /** @internal */
24
- toJSON(): ModelSelectorProps;
25
- /** @internal */
26
- protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
27
- /** Create a Code for a ModelSelector given a name that is meant to be unique within the scope of the specified DefinitionModel.
28
- * @param iModel The IModelDb
29
- * @param scopeModelId The Id of the DefinitionModel that contains the ModelSelector and provides the scope for its name.
30
- * @param codeValue The ModelSelector name
31
- */
32
- static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
33
- /**
34
- * Create a ModelSelector to select which Models are displayed by a ViewDefinition.
35
- * @param iModelDb The iModel
36
- * @param definitionModelId The [[DefinitionModel]]
37
- * @param name The name/CodeValue of the ModelSelector
38
- * @param models Array of models to select for display
39
- * @returns The newly constructed ModelSelector element.
40
- * @throws [[IModelError]] if unable to create the element.
41
- */
42
- static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, models: Id64Array): ModelSelector;
43
- /**
44
- * Insert a ModelSelector to select which Models are displayed by a ViewDefinition.
45
- * @param iModelDb Insert into this iModel
46
- * @param definitionModelId Insert the new ModelSelector into this DefinitionModel
47
- * @param name The name/CodeValue of the ModelSelector
48
- * @param models Array of models to select for display
49
- * @returns The Id of the newly inserted ModelSelector element.
50
- * @throws [[IModelError]] if unable to insert the element.
51
- */
52
- static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, models: Id64Array): Id64String;
53
- }
54
- /** Holds a list of Ids of Categories to be displayed in a view.
55
- * @see [CategorySelectorState]($frontend)
56
- * See [how to create a CategorySelector]$(docs/learning/backend/CreateElements.md#CategorySelector).
57
- * @public
58
- */
59
- export declare class CategorySelector extends DefinitionElement {
60
- /** @internal */
61
- static get className(): string;
62
- /** The array of element Ids of the Categories selected by this CategorySelector */
63
- categories: Id64String[];
64
- /** @internal */
65
- constructor(props: CategorySelectorProps, iModel: IModelDb);
66
- /** @internal */
67
- toJSON(): CategorySelectorProps;
68
- /** @internal */
69
- protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
70
- /** Create a Code for a CategorySelector given a name that is meant to be unique within the scope of the specified DefinitionModel.
71
- * @param iModel The IModelDb
72
- * @param scopeModelId The Id of the DefinitionModel that contains the CategorySelector and provides the scope for its name.
73
- * @param codeValue The CategorySelector name
74
- */
75
- static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
76
- /**
77
- * Create a CategorySelector to select which categories are displayed by a ViewDefinition.
78
- * @param iModelDb The iModel
79
- * @param definitionModelId The [[DefinitionModel]]
80
- * @param name The name of the CategorySelector
81
- * @param categories Array of categories to select for display
82
- * @returns The newly constructed CategorySelector element.
83
- * @throws [[IModelError]] if unable to create the element.
84
- */
85
- static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, categories: Id64Array): CategorySelector;
86
- /**
87
- * Insert a CategorySelector to select which categories are displayed by a ViewDefinition.
88
- * @param iModelDb Insert into this iModel
89
- * @param definitionModelId Insert the new CategorySelector into this DefinitionModel
90
- * @param name The name of the CategorySelector
91
- * @param categories Array of categories to select for display
92
- * @returns The Id of the newly inserted CategorySelector element.
93
- * @throws [[IModelError]] if unable to insert the element.
94
- */
95
- static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, categories: Id64Array): Id64String;
96
- }
97
- /**
98
- * The definition element for a view. ViewDefinitions specify the area/volume that is viewed, the Ids of a DisplayStyle and a CategorySelector,
99
- * plus additional view-specific parameters in their [[Element.jsonProperties]].
100
- *
101
- * Subclasses of ViewDefinition determine which model(s) are viewed.
102
- *
103
- * **Example: Obtaining the background color for a view**
104
- * ``` ts
105
- * [[include:ViewDefinition.getBackgroundColor]]
106
- * ```
107
- *
108
- * @note ViewDefinition is only available in the backend. See [ViewState]($frontend) for usage in the frontend.
109
- * @public
110
- */
111
- export declare abstract class ViewDefinition extends DefinitionElement {
112
- /** @internal */
113
- static get className(): string;
114
- /** The element Id of the [[CategorySelector]] for this ViewDefinition */
115
- categorySelectorId: Id64String;
116
- /** The element Id of the [[DisplayStyle]] for this ViewDefinition */
117
- displayStyleId: Id64String;
118
- /** @internal */
119
- protected constructor(props: ViewDefinitionProps, iModel: IModelDb);
120
- /** @internal */
121
- toJSON(): ViewDefinitionProps;
122
- /** @internal */
123
- protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
124
- /** @beta */
125
- static readonly requiredReferenceKeys: ReadonlyArray<string>;
126
- /** @alpha */
127
- static readonly requiredReferenceKeyTypeMap: Record<string, ConcreteEntityTypes>;
128
- /** @internal */
129
- protected static onCloned(context: IModelElementCloneContext, sourceElementProps: ViewDefinitionProps, targetElementProps: ViewDefinitionProps): void;
130
- /** Type guard for `instanceof ViewDefinition3d` */
131
- isView3d(): this is ViewDefinition3d;
132
- /** Type guard for 'instanceof ViewDefinition2d` */
133
- isView2d(): this is ViewDefinition2d;
134
- /** Type guard for `instanceof SpatialViewDefinition` */
135
- isSpatialView(): this is SpatialViewDefinition;
136
- /** Type guard for 'instanceof DrawingViewDefinition' */
137
- isDrawingView(): this is DrawingViewDefinition;
138
- /** Load this view's DisplayStyle from the IModelDb. */
139
- loadDisplayStyle(): DisplayStyle;
140
- /** Load this view's CategorySelector from the IModelDb. */
141
- loadCategorySelector(): CategorySelector;
142
- /** Provides access to optional detail settings for this view. */
143
- abstract get details(): ViewDetails;
144
- /** The Id of the AuxiliaryCoordinateSystem for this ViewDefinition, or an invalid Id if no ACS is defined. */
145
- getAuxiliaryCoordinateSystemId(): Id64String;
146
- /** Set or clear the AuxiliaryCoordinateSystem for this ViewDefinition.
147
- * @param acsId The Id of the new AuxiliaryCoordinateSystem. If `Id64.invalid` is passed, then no AuxiliaryCoordinateSystem will be used.
148
- */
149
- setAuxiliaryCoordinateSystemId(acsId: Id64String): void;
150
- /** Create a Code for a ViewDefinition given a name that is meant to be unique within the scope of the specified DefinitionModel.
151
- * @param iModel The IModelDb
152
- * @param scopeModelId The Id of the DefinitionModel to contain the ViewDefinition and provides the scope for its name.
153
- * @param codeValue The ViewDefinition name
154
- */
155
- static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
156
- }
157
- /** Defines a view of one or more 3d models.
158
- * @public
159
- */
160
- export declare abstract class ViewDefinition3d extends ViewDefinition {
161
- private readonly _details;
162
- /** @internal */
163
- static get className(): string;
164
- /** If true, camera is used. Otherwise, use an orthographic projection. */
165
- cameraOn: boolean;
166
- /** The lower left back corner of the view frustum. */
167
- origin: Point3d;
168
- /** The extent (size) of the view frustum, in meters, along its x,y,z axes. */
169
- extents: Vector3d;
170
- /** Rotation from world coordinates to view coordinates. */
171
- angles: YawPitchRollAngles;
172
- /** The camera used for this view, if `cameraOn` is true. */
173
- camera: Camera;
174
- /** @internal */
175
- constructor(props: ViewDefinition3dProps, iModel: IModelDb);
176
- /** @internal */
177
- toJSON(): ViewDefinition3dProps;
178
- /** Provides access to optional detail settings for this view. */
179
- get details(): ViewDetails3d;
180
- /** Load this view's DisplayStyle3d from the IModelDb. */
181
- loadDisplayStyle3d(): DisplayStyle3d;
182
- }
183
- /** Defines a view of one or more SpatialModels.
184
- * The list of viewed models is stored by the ModelSelector.
185
- *
186
- * This is how a SpatialViewDefinition selects the elements to display:
187
- *
188
- * SpatialViewDefinition
189
- * * ModelSelector
190
- * * ModelIds -------> SpatialModels <----------GeometricElement3d.Model
191
- * * CategorySelector
192
- * * CategoryIds -----> SpatialCategories <----------GeometricElement3d.Category
193
- * @public
194
- */
195
- export declare class SpatialViewDefinition extends ViewDefinition3d {
196
- /** @internal */
197
- static get className(): string;
198
- /** The Id of the [[ModelSelector]] for this SpatialViewDefinition. */
199
- modelSelectorId: Id64String;
200
- /** @internal */
201
- constructor(props: SpatialViewDefinitionProps, iModel: IModelDb);
202
- /** @internal */
203
- toJSON(): SpatialViewDefinitionProps;
204
- /** @internal */
205
- protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
206
- /** @beta */
207
- static readonly requiredReferenceKeys: ReadonlyArray<string>;
208
- /** @alpha */
209
- static readonly requiredReferenceKeyTypeMap: Record<string, ConcreteEntityTypes>;
210
- /** Load this view's ModelSelector from the IModelDb. */
211
- loadModelSelector(): ModelSelector;
212
- /**
213
- * Create an SpatialViewDefinition with camera.
214
- * @param iModelDb The iModel
215
- * @param definitionModelId The [[DefinitionModel]]
216
- * @param name The name/CodeValue of the view
217
- * @param modelSelectorId The [[ModelSelector]] that this view should use
218
- * @param categorySelectorId The [[CategorySelector]] that this view should use
219
- * @param displayStyleId The [[DisplayStyle3d]] that this view should use
220
- * @param range Defines the view origin and extents
221
- * @param standardView Optionally defines the view's rotation
222
- * @param cameraAngle Camera angle in radians.
223
- * @returns The newly constructed OrthographicViewDefinition element
224
- * @throws [[IModelError]] if there is a problem creating the view
225
- */
226
- static createWithCamera(iModelDb: IModelDb, definitionModelId: Id64String, name: string, modelSelectorId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range3d, standardView?: StandardViewIndex, cameraAngle?: number): SpatialViewDefinition;
227
- /**
228
- * Insert an SpatialViewDefinition with camera On
229
- * @param iModelDb Insert into this iModel
230
- * @param definitionModelId Insert the new OrthographicViewDefinition into this DefinitionModel
231
- * @param name The name/CodeValue of the view
232
- * @param modelSelectorId The [[ModelSelector]] that this view should use
233
- * @param categorySelectorId The [[CategorySelector]] that this view should use
234
- * @param displayStyleId The [[DisplayStyle3d]] that this view should use
235
- * @param range Defines the view origin and extents
236
- * @param standardView Optionally defines the view's rotation
237
- * @param cameraAngle Camera angle in radians.
238
- * @returns The Id of the newly inserted OrthographicViewDefinition element
239
- * @throws [[IModelError]] if there is an insert problem.
240
- */
241
- static insertWithCamera(iModelDb: IModelDb, definitionModelId: Id64String, name: string, modelSelectorId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range3d, standardView?: StandardViewIndex, cameraAngle?: number): Id64String;
242
- }
243
- /** Defines a spatial view that displays geometry on the image plane using a parallel orthographic projection.
244
- * See [how to create a OrthographicViewDefinition]$(docs/learning/backend/CreateElements.md#OrthographicViewDefinition).
245
- * @public
246
- */
247
- export declare class OrthographicViewDefinition extends SpatialViewDefinition {
248
- /** @internal */
249
- static get className(): string;
250
- constructor(props: SpatialViewDefinitionProps, iModel: IModelDb);
251
- /**
252
- * Create an OrthographicViewDefinition
253
- * @param iModelDb The iModel
254
- * @param definitionModelId The [[DefinitionModel]]
255
- * @param name The name/CodeValue of the view
256
- * @param modelSelectorId The [[ModelSelector]] that this view should use
257
- * @param categorySelectorId The [[CategorySelector]] that this view should use
258
- * @param displayStyleId The [[DisplayStyle3d]] that this view should use
259
- * @param range Defines the view origin and extents
260
- * @param standardView Optionally defines the view's rotation
261
- * @returns The newly constructed OrthographicViewDefinition element
262
- * @throws [[IModelError]] if there is a problem creating the view
263
- */
264
- static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, modelSelectorId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range3d, standardView?: StandardViewIndex): OrthographicViewDefinition;
265
- /**
266
- * Insert an OrthographicViewDefinition
267
- * @param iModelDb Insert into this iModel
268
- * @param definitionModelId Insert the new OrthographicViewDefinition into this DefinitionModel
269
- * @param name The name/CodeValue of the view
270
- * @param modelSelectorId The [[ModelSelector]] that this view should use
271
- * @param categorySelectorId The [[CategorySelector]] that this view should use
272
- * @param displayStyleId The [[DisplayStyle3d]] that this view should use
273
- * @param range Defines the view origin and extents
274
- * @param standardView Optionally defines the view's rotation
275
- * @returns The Id of the newly inserted OrthographicViewDefinition element
276
- * @throws [[IModelError]] if there is an insert problem.
277
- */
278
- static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, modelSelectorId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range3d, standardView?: StandardViewIndex): Id64String;
279
- /** Set a new viewed range without changing the rotation or any other properties. */
280
- setRange(range: Range3d): void;
281
- }
282
- /** Defines a view of a single 2d model. Each 2d model has its own coordinate system, so only one may appear per view.
283
- * @public
284
- */
285
- export declare class ViewDefinition2d extends ViewDefinition {
286
- private readonly _details;
287
- /** @internal */
288
- static get className(): string;
289
- /** The Id of the Model displayed by this view. */
290
- baseModelId: Id64String;
291
- /** The lower-left corner of this view in Model coordinates. */
292
- origin: Point2d;
293
- /** The delta (size) of this view, in meters, aligned with view x,y. */
294
- delta: Point2d;
295
- /** The rotation of this view. */
296
- angle: Angle;
297
- /** @internal */
298
- constructor(props: ViewDefinition2dProps, iModel: IModelDb);
299
- /** @internal */
300
- toJSON(): ViewDefinition2dProps;
301
- /** @internal */
302
- protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
303
- /** Provides access to optional detail settings for this view. */
304
- get details(): ViewDetails;
305
- /** Load this view's DisplayStyle2d from the IModelDb. */
306
- loadDisplayStyle2d(): DisplayStyle2d;
307
- }
308
- /** Defines a view of a [[DrawingModel]].
309
- * @public
310
- */
311
- export declare class DrawingViewDefinition extends ViewDefinition2d {
312
- /** @internal */
313
- static get className(): string;
314
- /** @internal */
315
- constructor(props: ViewDefinition2dProps, iModel: IModelDb);
316
- /** Create a DrawingViewDefinition
317
- * @param iModelDb The iModel
318
- * @param definitionModelId The [[DefinitionModel]]
319
- * @param name The name/CodeValue of the view
320
- * @param baseModelId The base [[DrawingModel]]
321
- * @param categorySelectorId The [[CategorySelector]] that this view should use
322
- * @param displayStyleId The [[DisplayStyle2d]] that this view should use
323
- * @param range Defines the view origin and extents
324
- * @throws [[IModelError]] if there is a problem creating the element.
325
- */
326
- static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, baseModelId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range2d): DrawingViewDefinition;
327
- /** Insert a DrawingViewDefinition
328
- * @param iModelDb Insert into this iModel
329
- * @param definitionModelId Insert the new DrawingViewDefinition into this [[DefinitionModel]]
330
- * @param name The name/CodeValue of the view
331
- * @param baseModelId The base [[DrawingModel]]
332
- * @param categorySelectorId The [[CategorySelector]] that this view should use
333
- * @param displayStyleId The [[DisplayStyle2d]] that this view should use
334
- * @param range Defines the view origin and extents
335
- * @throws [[IModelError]] if there is an insert problem.
336
- */
337
- static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, baseModelId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range2d): Id64String;
338
- }
339
- /** Defines a view of a [[SheetModel]].
340
- * @public
341
- */
342
- export declare class SheetViewDefinition extends ViewDefinition2d {
343
- /** @internal */
344
- static get className(): string;
345
- }
346
- /** A ViewDefinition used to display a 2d template model.
347
- * @internal
348
- */
349
- export declare class TemplateViewDefinition2d extends ViewDefinition2d {
350
- /** @internal */
351
- static get className(): string;
352
- }
353
- /** A ViewDefinition used to display a 3d template model.
354
- * @internal
355
- */
356
- export declare class TemplateViewDefinition3d extends ViewDefinition3d {
357
- /** @internal */
358
- static get className(): string;
359
- }
360
- /** An auxiliary coordinate system element. Auxiliary coordinate systems can be used by views to show
361
- * coordinate information in different units and/or orientations.
362
- * @public
363
- */
364
- export declare abstract class AuxCoordSystem extends DefinitionElement {
365
- /** @internal */
366
- static get className(): string;
367
- type: number;
368
- description?: string;
369
- constructor(props: AuxCoordSystemProps, iModel: IModelDb);
370
- }
371
- /** A 2d auxiliary coordinate system.
372
- * @public
373
- */
374
- export declare class AuxCoordSystem2d extends AuxCoordSystem {
375
- /** @internal */
376
- static get className(): string;
377
- origin?: Point2d;
378
- angle: number;
379
- constructor(props: AuxCoordSystem2dProps, iModel: IModelDb);
380
- /** Create a Code for a AuxCoordSystem2d element given a name that is meant to be unique within the scope of the specified DefinitionModel.
381
- * @param iModel The IModelDb
382
- * @param scopeModelId The Id of the DefinitionModel that contains the AuxCoordSystem2d element and provides the scope for its name.
383
- * @param codeValue The AuxCoordSystem2d name
384
- */
385
- static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
386
- }
387
- /** A 3d auxiliary coordinate system.
388
- * @public
389
- */
390
- export declare class AuxCoordSystem3d extends AuxCoordSystem {
391
- /** @internal */
392
- static get className(): string;
393
- origin?: Point3d;
394
- yaw: number;
395
- pitch: number;
396
- roll: number;
397
- constructor(props: AuxCoordSystem3dProps, iModel: IModelDb);
398
- /** Create a Code for a AuxCoordSystem3d element given a name that is meant to be unique within the scope of the specified DefinitionModel.
399
- * @param iModel The IModelDb
400
- * @param scopeModelId The Id of the DefinitionModel that contains the AuxCoordSystem3d element and provides the scope for its name.
401
- * @param codeValue The AuxCoordSystem3d name
402
- */
403
- static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
404
- }
405
- /** A spatial auxiliary coordinate system.
406
- * @public
407
- */
408
- export declare class AuxCoordSystemSpatial extends AuxCoordSystem3d {
409
- /** @internal */
410
- static get className(): string;
411
- /** Create a Code for a AuxCoordSystemSpatial element given a name that is meant to be unique within the scope of the specified DefinitionModel.
412
- * @param iModel The IModelDb
413
- * @param scopeModelId The Id of the DefinitionModel that contains the AuxCoordSystemSpatial element and provides the scope for its name.
414
- * @param codeValue The AuxCoordSystemSpatial name
415
- */
416
- static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
417
- }
418
- /** Represents an *attachment* of a [[ViewDefinition]] to a [[Sheet]].
419
- * @public
420
- */
421
- export declare class ViewAttachment extends GraphicalElement2d {
422
- /** @internal */
423
- static get className(): string;
424
- view: RelatedElement;
425
- constructor(props: ViewAttachmentProps, iModel: IModelDb);
426
- /** @internal */
427
- protected collectReferenceConcreteIds(referenceIds: EntityReferenceSet): void;
428
- }
429
- /** The position in space of a Light.
430
- * @internal
431
- */
432
- export declare class LightLocation extends SpatialLocationElement {
433
- /** @internal */
434
- static get className(): string;
435
- /** Whether this light is currently turned on. */
436
- enabled: boolean;
437
- /** @internal */
438
- constructor(props: LightLocationProps, iModel: IModelDb);
439
- }
1
+ /** @packageDocumentation
2
+ * @module ViewDefinitions
3
+ */
4
+ import { Id64Array, Id64String } from "@itwin/core-bentley";
5
+ import { Angle, Point2d, Point3d, Range2d, Range3d, StandardViewIndex, Vector3d, YawPitchRollAngles } from "@itwin/core-geometry";
6
+ import { AuxCoordSystem2dProps, AuxCoordSystem3dProps, AuxCoordSystemProps, Camera, CategorySelectorProps, Code, CodeScopeProps, ConcreteEntityTypes, EntityReferenceSet, LightLocationProps, ModelSelectorProps, RelatedElement, SpatialViewDefinitionProps, ViewAttachmentProps, ViewDefinition2dProps, ViewDefinition3dProps, ViewDefinitionProps, ViewDetails, ViewDetails3d } from "@itwin/core-common";
7
+ import { DefinitionElement, GraphicalElement2d, SpatialLocationElement } from "./Element";
8
+ import { IModelDb } from "./IModelDb";
9
+ import { DisplayStyle, DisplayStyle2d, DisplayStyle3d } from "./DisplayStyle";
10
+ import { IModelElementCloneContext } from "./IModelElementCloneContext";
11
+ /** Holds the list of Ids of GeometricModels displayed by a [[SpatialViewDefinition]]. Multiple SpatialViewDefinitions may point to the same ModelSelector.
12
+ * @see [ModelSelectorState]($frontend)
13
+ * See [how to create a ModelSelector]$(docs/learning/backend/CreateElements.md#ModelSelector).
14
+ * @public
15
+ */
16
+ export declare class ModelSelector extends DefinitionElement {
17
+ /** @internal */
18
+ static get className(): string;
19
+ /** The array of modelIds of the GeometricModels displayed by this ModelSelector */
20
+ models: Id64String[];
21
+ /** @internal */
22
+ constructor(props: ModelSelectorProps, iModel: IModelDb);
23
+ /** @internal */
24
+ toJSON(): ModelSelectorProps;
25
+ protected collectReferenceIds(referenceIds: EntityReferenceSet): void;
26
+ /** Create a Code for a ModelSelector given a name that is meant to be unique within the scope of the specified DefinitionModel.
27
+ * @param iModel The IModelDb
28
+ * @param scopeModelId The Id of the DefinitionModel that contains the ModelSelector and provides the scope for its name.
29
+ * @param codeValue The ModelSelector name
30
+ */
31
+ static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
32
+ /**
33
+ * Create a ModelSelector to select which Models are displayed by a ViewDefinition.
34
+ * @param iModelDb The iModel
35
+ * @param definitionModelId The [[DefinitionModel]]
36
+ * @param name The name/CodeValue of the ModelSelector
37
+ * @param models Array of models to select for display
38
+ * @returns The newly constructed ModelSelector element.
39
+ * @throws [[IModelError]] if unable to create the element.
40
+ */
41
+ static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, models: Id64Array): ModelSelector;
42
+ /**
43
+ * Insert a ModelSelector to select which Models are displayed by a ViewDefinition.
44
+ * @param iModelDb Insert into this iModel
45
+ * @param definitionModelId Insert the new ModelSelector into this DefinitionModel
46
+ * @param name The name/CodeValue of the ModelSelector
47
+ * @param models Array of models to select for display
48
+ * @returns The Id of the newly inserted ModelSelector element.
49
+ * @throws [[IModelError]] if unable to insert the element.
50
+ */
51
+ static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, models: Id64Array): Id64String;
52
+ }
53
+ /** Holds a list of Ids of Categories to be displayed in a view.
54
+ * @see [CategorySelectorState]($frontend)
55
+ * See [how to create a CategorySelector]$(docs/learning/backend/CreateElements.md#CategorySelector).
56
+ * @public
57
+ */
58
+ export declare class CategorySelector extends DefinitionElement {
59
+ /** @internal */
60
+ static get className(): string;
61
+ /** The array of element Ids of the Categories selected by this CategorySelector */
62
+ categories: Id64String[];
63
+ /** @internal */
64
+ constructor(props: CategorySelectorProps, iModel: IModelDb);
65
+ /** @internal */
66
+ toJSON(): CategorySelectorProps;
67
+ protected collectReferenceIds(referenceIds: EntityReferenceSet): void;
68
+ /** Create a Code for a CategorySelector given a name that is meant to be unique within the scope of the specified DefinitionModel.
69
+ * @param iModel The IModelDb
70
+ * @param scopeModelId The Id of the DefinitionModel that contains the CategorySelector and provides the scope for its name.
71
+ * @param codeValue The CategorySelector name
72
+ */
73
+ static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
74
+ /**
75
+ * Create a CategorySelector to select which categories are displayed by a ViewDefinition.
76
+ * @param iModelDb The iModel
77
+ * @param definitionModelId The [[DefinitionModel]]
78
+ * @param name The name of the CategorySelector
79
+ * @param categories Array of categories to select for display
80
+ * @returns The newly constructed CategorySelector element.
81
+ * @throws [[IModelError]] if unable to create the element.
82
+ */
83
+ static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, categories: Id64Array): CategorySelector;
84
+ /**
85
+ * Insert a CategorySelector to select which categories are displayed by a ViewDefinition.
86
+ * @param iModelDb Insert into this iModel
87
+ * @param definitionModelId Insert the new CategorySelector into this DefinitionModel
88
+ * @param name The name of the CategorySelector
89
+ * @param categories Array of categories to select for display
90
+ * @returns The Id of the newly inserted CategorySelector element.
91
+ * @throws [[IModelError]] if unable to insert the element.
92
+ */
93
+ static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, categories: Id64Array): Id64String;
94
+ }
95
+ /**
96
+ * The definition element for a view. ViewDefinitions specify the area/volume that is viewed, the Ids of a DisplayStyle and a CategorySelector,
97
+ * plus additional view-specific parameters in their [[Element.jsonProperties]].
98
+ *
99
+ * Subclasses of ViewDefinition determine which model(s) are viewed.
100
+ *
101
+ * **Example: Obtaining the background color for a view**
102
+ * ``` ts
103
+ * [[include:ViewDefinition.getBackgroundColor]]
104
+ * ```
105
+ *
106
+ * @note ViewDefinition is only available in the backend. See [ViewState]($frontend) for usage in the frontend.
107
+ * @public
108
+ */
109
+ export declare abstract class ViewDefinition extends DefinitionElement {
110
+ /** @internal */
111
+ static get className(): string;
112
+ /** The element Id of the [[CategorySelector]] for this ViewDefinition */
113
+ categorySelectorId: Id64String;
114
+ /** The element Id of the [[DisplayStyle]] for this ViewDefinition */
115
+ displayStyleId: Id64String;
116
+ /** @internal */
117
+ protected constructor(props: ViewDefinitionProps, iModel: IModelDb);
118
+ /** @internal */
119
+ toJSON(): ViewDefinitionProps;
120
+ protected collectReferenceIds(referenceIds: EntityReferenceSet): void;
121
+ /** @beta */
122
+ static readonly requiredReferenceKeys: ReadonlyArray<string>;
123
+ /** @alpha */
124
+ static readonly requiredReferenceKeyTypeMap: Record<string, ConcreteEntityTypes>;
125
+ /** @internal */
126
+ protected static onCloned(context: IModelElementCloneContext, sourceElementProps: ViewDefinitionProps, targetElementProps: ViewDefinitionProps): void;
127
+ /** Type guard for `instanceof ViewDefinition3d` */
128
+ isView3d(): this is ViewDefinition3d;
129
+ /** Type guard for 'instanceof ViewDefinition2d` */
130
+ isView2d(): this is ViewDefinition2d;
131
+ /** Type guard for `instanceof SpatialViewDefinition` */
132
+ isSpatialView(): this is SpatialViewDefinition;
133
+ /** Type guard for 'instanceof DrawingViewDefinition' */
134
+ isDrawingView(): this is DrawingViewDefinition;
135
+ /** Load this view's DisplayStyle from the IModelDb. */
136
+ loadDisplayStyle(): DisplayStyle;
137
+ /** Load this view's CategorySelector from the IModelDb. */
138
+ loadCategorySelector(): CategorySelector;
139
+ /** Provides access to optional detail settings for this view. */
140
+ abstract get details(): ViewDetails;
141
+ /** The Id of the AuxiliaryCoordinateSystem for this ViewDefinition, or an invalid Id if no ACS is defined. */
142
+ getAuxiliaryCoordinateSystemId(): Id64String;
143
+ /** Set or clear the AuxiliaryCoordinateSystem for this ViewDefinition.
144
+ * @param acsId The Id of the new AuxiliaryCoordinateSystem. If `Id64.invalid` is passed, then no AuxiliaryCoordinateSystem will be used.
145
+ */
146
+ setAuxiliaryCoordinateSystemId(acsId: Id64String): void;
147
+ /** Create a Code for a ViewDefinition given a name that is meant to be unique within the scope of the specified DefinitionModel.
148
+ * @param iModel The IModelDb
149
+ * @param scopeModelId The Id of the DefinitionModel to contain the ViewDefinition and provides the scope for its name.
150
+ * @param codeValue The ViewDefinition name
151
+ */
152
+ static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
153
+ }
154
+ /** Defines a view of one or more 3d models.
155
+ * @public
156
+ */
157
+ export declare abstract class ViewDefinition3d extends ViewDefinition {
158
+ private readonly _details;
159
+ /** @internal */
160
+ static get className(): string;
161
+ /** If true, camera is used. Otherwise, use an orthographic projection. */
162
+ cameraOn: boolean;
163
+ /** The lower left back corner of the view frustum. */
164
+ origin: Point3d;
165
+ /** The extent (size) of the view frustum, in meters, along its x,y,z axes. */
166
+ extents: Vector3d;
167
+ /** Rotation from world coordinates to view coordinates. */
168
+ angles: YawPitchRollAngles;
169
+ /** The camera used for this view, if `cameraOn` is true. */
170
+ camera: Camera;
171
+ /** @internal */
172
+ constructor(props: ViewDefinition3dProps, iModel: IModelDb);
173
+ /** @internal */
174
+ toJSON(): ViewDefinition3dProps;
175
+ /** Provides access to optional detail settings for this view. */
176
+ get details(): ViewDetails3d;
177
+ /** Load this view's DisplayStyle3d from the IModelDb. */
178
+ loadDisplayStyle3d(): DisplayStyle3d;
179
+ }
180
+ /** Defines a view of one or more SpatialModels.
181
+ * The list of viewed models is stored by the ModelSelector.
182
+ *
183
+ * This is how a SpatialViewDefinition selects the elements to display:
184
+ *
185
+ * SpatialViewDefinition
186
+ * * ModelSelector
187
+ * * ModelIds -------> SpatialModels <----------GeometricElement3d.Model
188
+ * * CategorySelector
189
+ * * CategoryIds -----> SpatialCategories <----------GeometricElement3d.Category
190
+ * @public
191
+ */
192
+ export declare class SpatialViewDefinition extends ViewDefinition3d {
193
+ /** @internal */
194
+ static get className(): string;
195
+ /** The Id of the [[ModelSelector]] for this SpatialViewDefinition. */
196
+ modelSelectorId: Id64String;
197
+ /** @internal */
198
+ constructor(props: SpatialViewDefinitionProps, iModel: IModelDb);
199
+ /** Construct a SpatialViewDefinition from its JSON representation. */
200
+ static fromJSON(props: Omit<SpatialViewDefinitionProps, "classFullName">, iModel: IModelDb): SpatialViewDefinition;
201
+ /** Convert this view to its JSON representation. */
202
+ toJSON(): SpatialViewDefinitionProps;
203
+ protected collectReferenceIds(referenceIds: EntityReferenceSet): void;
204
+ /** @beta */
205
+ static readonly requiredReferenceKeys: ReadonlyArray<string>;
206
+ /** @alpha */
207
+ static readonly requiredReferenceKeyTypeMap: Record<string, ConcreteEntityTypes>;
208
+ /** Load this view's ModelSelector from the IModelDb. */
209
+ loadModelSelector(): ModelSelector;
210
+ /**
211
+ * Create a SpatialViewDefinition with the camera turned on.
212
+ * @param iModelDb The iModel
213
+ * @param definitionModelId The [[DefinitionModel]]
214
+ * @param name The name/CodeValue of the view
215
+ * @param modelSelectorId The [[ModelSelector]] that this view should use
216
+ * @param categorySelectorId The [[CategorySelector]] that this view should use
217
+ * @param displayStyleId The [[DisplayStyle3d]] that this view should use
218
+ * @param range Defines the view origin and extents
219
+ * @param standardView Optionally defines the view's rotation
220
+ * @param cameraAngle Camera angle in radians.
221
+ * @returns The newly constructed SpatialViewDefinition element
222
+ * @throws [[IModelError]] if there is a problem creating the view
223
+ */
224
+ static createWithCamera(iModelDb: IModelDb, definitionModelId: Id64String, name: string, modelSelectorId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range3d, standardView?: StandardViewIndex, cameraAngle?: number): SpatialViewDefinition;
225
+ /**
226
+ * Insert an SpatialViewDefinition with the camera turned on.
227
+ * @see [[createWithCamera]] for details.
228
+ * @returns The Id of the newly inserted SpatialViewDefinition element
229
+ * @throws [[IModelError]] if there is an insert problem.
230
+ */
231
+ static insertWithCamera(iModelDb: IModelDb, definitionModelId: Id64String, name: string, modelSelectorId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range3d, standardView?: StandardViewIndex, cameraAngle?: number): Id64String;
232
+ }
233
+ /** Defines a spatial view that displays geometry on the image plane using a parallel orthographic projection.
234
+ * See [how to create a OrthographicViewDefinition]$(docs/learning/backend/CreateElements.md#OrthographicViewDefinition).
235
+ * @public
236
+ */
237
+ export declare class OrthographicViewDefinition extends SpatialViewDefinition {
238
+ /** @internal */
239
+ static get className(): string;
240
+ constructor(props: SpatialViewDefinitionProps, iModel: IModelDb);
241
+ /**
242
+ * Create an OrthographicViewDefinition
243
+ * @param iModelDb The iModel
244
+ * @param definitionModelId The [[DefinitionModel]]
245
+ * @param name The name/CodeValue of the view
246
+ * @param modelSelectorId The [[ModelSelector]] that this view should use
247
+ * @param categorySelectorId The [[CategorySelector]] that this view should use
248
+ * @param displayStyleId The [[DisplayStyle3d]] that this view should use
249
+ * @param range Defines the view origin and extents
250
+ * @param standardView Optionally defines the view's rotation
251
+ * @returns The newly constructed OrthographicViewDefinition element
252
+ * @throws [[IModelError]] if there is a problem creating the view
253
+ */
254
+ static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, modelSelectorId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range3d, standardView?: StandardViewIndex): OrthographicViewDefinition;
255
+ /**
256
+ * Insert an OrthographicViewDefinition
257
+ * @param iModelDb Insert into this iModel
258
+ * @param definitionModelId Insert the new OrthographicViewDefinition into this DefinitionModel
259
+ * @param name The name/CodeValue of the view
260
+ * @param modelSelectorId The [[ModelSelector]] that this view should use
261
+ * @param categorySelectorId The [[CategorySelector]] that this view should use
262
+ * @param displayStyleId The [[DisplayStyle3d]] that this view should use
263
+ * @param range Defines the view origin and extents
264
+ * @param standardView Optionally defines the view's rotation
265
+ * @returns The Id of the newly inserted OrthographicViewDefinition element
266
+ * @throws [[IModelError]] if there is an insert problem.
267
+ */
268
+ static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, modelSelectorId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range3d, standardView?: StandardViewIndex): Id64String;
269
+ /** Set a new viewed range without changing the rotation or any other properties. */
270
+ setRange(range: Range3d): void;
271
+ }
272
+ /** Defines a view of a single 2d model. Each 2d model has its own coordinate system, so only one may appear per view.
273
+ * @public
274
+ */
275
+ export declare class ViewDefinition2d extends ViewDefinition {
276
+ private readonly _details;
277
+ /** @internal */
278
+ static get className(): string;
279
+ /** The Id of the Model displayed by this view. */
280
+ baseModelId: Id64String;
281
+ /** The lower-left corner of this view in Model coordinates. */
282
+ origin: Point2d;
283
+ /** The delta (size) of this view, in meters, aligned with view x,y. */
284
+ delta: Point2d;
285
+ /** The rotation of this view. */
286
+ angle: Angle;
287
+ /** @internal */
288
+ constructor(props: ViewDefinition2dProps, iModel: IModelDb);
289
+ /** @internal */
290
+ toJSON(): ViewDefinition2dProps;
291
+ protected collectReferenceIds(referenceIds: EntityReferenceSet): void;
292
+ /** Provides access to optional detail settings for this view. */
293
+ get details(): ViewDetails;
294
+ /** Load this view's DisplayStyle2d from the IModelDb. */
295
+ loadDisplayStyle2d(): DisplayStyle2d;
296
+ }
297
+ /** Defines a view of a [[DrawingModel]].
298
+ * @public
299
+ */
300
+ export declare class DrawingViewDefinition extends ViewDefinition2d {
301
+ /** @internal */
302
+ static get className(): string;
303
+ /** @internal */
304
+ constructor(props: ViewDefinition2dProps, iModel: IModelDb);
305
+ /** Create a DrawingViewDefinition
306
+ * @param iModelDb The iModel
307
+ * @param definitionModelId The [[DefinitionModel]]
308
+ * @param name The name/CodeValue of the view
309
+ * @param baseModelId The base [[DrawingModel]]
310
+ * @param categorySelectorId The [[CategorySelector]] that this view should use
311
+ * @param displayStyleId The [[DisplayStyle2d]] that this view should use
312
+ * @param range Defines the view origin and extents
313
+ * @throws [[IModelError]] if there is a problem creating the element.
314
+ */
315
+ static create(iModelDb: IModelDb, definitionModelId: Id64String, name: string, baseModelId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range2d): DrawingViewDefinition;
316
+ /** Construct a DrawingViewDefinition from its JSON representation. */
317
+ static fromJSON(props: Omit<ViewDefinition2dProps, "classFullName">, iModel: IModelDb): DrawingViewDefinition;
318
+ /** Insert a DrawingViewDefinition
319
+ * @param iModelDb Insert into this iModel
320
+ * @param definitionModelId Insert the new DrawingViewDefinition into this [[DefinitionModel]]
321
+ * @param name The name/CodeValue of the view
322
+ * @param baseModelId The base [[DrawingModel]]
323
+ * @param categorySelectorId The [[CategorySelector]] that this view should use
324
+ * @param displayStyleId The [[DisplayStyle2d]] that this view should use
325
+ * @param range Defines the view origin and extents
326
+ * @throws [[IModelError]] if there is an insert problem.
327
+ */
328
+ static insert(iModelDb: IModelDb, definitionModelId: Id64String, name: string, baseModelId: Id64String, categorySelectorId: Id64String, displayStyleId: Id64String, range: Range2d): Id64String;
329
+ }
330
+ /** Defines a view of a [[SheetModel]].
331
+ * @public
332
+ */
333
+ export declare class SheetViewDefinition extends ViewDefinition2d {
334
+ /** @internal */
335
+ static get className(): string;
336
+ }
337
+ /** A ViewDefinition used to display a 2d template model.
338
+ * @internal
339
+ */
340
+ export declare class TemplateViewDefinition2d extends ViewDefinition2d {
341
+ /** @internal */
342
+ static get className(): string;
343
+ }
344
+ /** A ViewDefinition used to display a 3d template model.
345
+ * @internal
346
+ */
347
+ export declare class TemplateViewDefinition3d extends ViewDefinition3d {
348
+ /** @internal */
349
+ static get className(): string;
350
+ }
351
+ /** An auxiliary coordinate system element. Auxiliary coordinate systems can be used by views to show
352
+ * coordinate information in different units and/or orientations.
353
+ * @public
354
+ */
355
+ export declare abstract class AuxCoordSystem extends DefinitionElement {
356
+ /** @internal */
357
+ static get className(): string;
358
+ type: number;
359
+ description?: string;
360
+ constructor(props: AuxCoordSystemProps, iModel: IModelDb);
361
+ }
362
+ /** A 2d auxiliary coordinate system.
363
+ * @public
364
+ */
365
+ export declare class AuxCoordSystem2d extends AuxCoordSystem {
366
+ /** @internal */
367
+ static get className(): string;
368
+ origin?: Point2d;
369
+ angle: number;
370
+ constructor(props: AuxCoordSystem2dProps, iModel: IModelDb);
371
+ /** Create a Code for a AuxCoordSystem2d element given a name that is meant to be unique within the scope of the specified DefinitionModel.
372
+ * @param iModel The IModelDb
373
+ * @param scopeModelId The Id of the DefinitionModel that contains the AuxCoordSystem2d element and provides the scope for its name.
374
+ * @param codeValue The AuxCoordSystem2d name
375
+ */
376
+ static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
377
+ }
378
+ /** A 3d auxiliary coordinate system.
379
+ * @public
380
+ */
381
+ export declare class AuxCoordSystem3d extends AuxCoordSystem {
382
+ /** @internal */
383
+ static get className(): string;
384
+ origin?: Point3d;
385
+ yaw: number;
386
+ pitch: number;
387
+ roll: number;
388
+ constructor(props: AuxCoordSystem3dProps, iModel: IModelDb);
389
+ /** Create a Code for a AuxCoordSystem3d element given a name that is meant to be unique within the scope of the specified DefinitionModel.
390
+ * @param iModel The IModelDb
391
+ * @param scopeModelId The Id of the DefinitionModel that contains the AuxCoordSystem3d element and provides the scope for its name.
392
+ * @param codeValue The AuxCoordSystem3d name
393
+ */
394
+ static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
395
+ }
396
+ /** A spatial auxiliary coordinate system.
397
+ * @public
398
+ */
399
+ export declare class AuxCoordSystemSpatial extends AuxCoordSystem3d {
400
+ /** @internal */
401
+ static get className(): string;
402
+ /** Create a Code for a AuxCoordSystemSpatial element given a name that is meant to be unique within the scope of the specified DefinitionModel.
403
+ * @param iModel The IModelDb
404
+ * @param scopeModelId The Id of the DefinitionModel that contains the AuxCoordSystemSpatial element and provides the scope for its name.
405
+ * @param codeValue The AuxCoordSystemSpatial name
406
+ */
407
+ static createCode(iModel: IModelDb, scopeModelId: CodeScopeProps, codeValue: string): Code;
408
+ }
409
+ /** Represents an *attachment* of a [[ViewDefinition]] to a [[Sheet]].
410
+ * @public
411
+ */
412
+ export declare class ViewAttachment extends GraphicalElement2d {
413
+ /** @internal */
414
+ static get className(): string;
415
+ view: RelatedElement;
416
+ constructor(props: ViewAttachmentProps, iModel: IModelDb);
417
+ protected collectReferenceIds(referenceIds: EntityReferenceSet): void;
418
+ }
419
+ /** The position in space of a Light.
420
+ * @internal
421
+ */
422
+ export declare class LightLocation extends SpatialLocationElement {
423
+ /** @internal */
424
+ static get className(): string;
425
+ /** Whether this light is currently turned on. */
426
+ enabled: boolean;
427
+ /** @internal */
428
+ constructor(props: LightLocationProps, iModel: IModelDb);
429
+ }
440
430
  //# sourceMappingURL=ViewDefinition.d.ts.map