@itwin/core-backend 4.0.0-dev.1 → 4.0.0-dev.100

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 (270) 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/BlobContainerService.d.ts +120 -0
  13. package/lib/cjs/BlobContainerService.d.ts.map +1 -0
  14. package/lib/cjs/BlobContainerService.js +18 -0
  15. package/lib/cjs/BlobContainerService.js.map +1 -0
  16. package/lib/cjs/BriefcaseManager.d.ts +184 -170
  17. package/lib/cjs/BriefcaseManager.d.ts.map +1 -1
  18. package/lib/cjs/BriefcaseManager.js +421 -414
  19. package/lib/cjs/BriefcaseManager.js.map +1 -1
  20. package/lib/cjs/Category.d.ts +153 -153
  21. package/lib/cjs/Category.js +243 -243
  22. package/lib/cjs/Category.js.map +1 -1
  23. package/lib/cjs/ChangeSummaryManager.d.ts +187 -187
  24. package/lib/cjs/ChangeSummaryManager.js +444 -445
  25. package/lib/cjs/ChangeSummaryManager.js.map +1 -1
  26. package/lib/cjs/ChangedElementsDb.d.ts +99 -99
  27. package/lib/cjs/ChangedElementsDb.js +165 -165
  28. package/lib/cjs/ChangedElementsManager.d.ts +39 -39
  29. package/lib/cjs/ChangedElementsManager.js +88 -88
  30. package/lib/cjs/ChannelControl.d.ts +70 -0
  31. package/lib/cjs/ChannelControl.d.ts.map +1 -0
  32. package/lib/cjs/ChannelControl.js +89 -0
  33. package/lib/cjs/ChannelControl.js.map +1 -0
  34. package/lib/cjs/CheckpointManager.d.ts +121 -121
  35. package/lib/cjs/CheckpointManager.d.ts.map +1 -1
  36. package/lib/cjs/CheckpointManager.js +351 -349
  37. package/lib/cjs/CheckpointManager.js.map +1 -1
  38. package/lib/cjs/ClassRegistry.d.ts +79 -79
  39. package/lib/cjs/ClassRegistry.js +249 -245
  40. package/lib/cjs/ClassRegistry.js.map +1 -1
  41. package/lib/cjs/CloudSqlite.d.ts +572 -350
  42. package/lib/cjs/CloudSqlite.d.ts.map +1 -1
  43. package/lib/cjs/CloudSqlite.js +374 -153
  44. package/lib/cjs/CloudSqlite.js.map +1 -1
  45. package/lib/cjs/CodeService.d.ts +399 -396
  46. package/lib/cjs/CodeService.d.ts.map +1 -1
  47. package/lib/cjs/CodeService.js +63 -63
  48. package/lib/cjs/CodeService.js.map +1 -1
  49. package/lib/cjs/CodeSpecs.d.ts +58 -55
  50. package/lib/cjs/CodeSpecs.d.ts.map +1 -1
  51. package/lib/cjs/CodeSpecs.js +154 -124
  52. package/lib/cjs/CodeSpecs.js.map +1 -1
  53. package/lib/cjs/ConcurrentQuery.d.ts +13 -13
  54. package/lib/cjs/ConcurrentQuery.d.ts.map +1 -1
  55. package/lib/cjs/ConcurrentQuery.js +36 -36
  56. package/lib/cjs/CustomViewState3dCreator.d.ts +21 -21
  57. package/lib/cjs/CustomViewState3dCreator.d.ts.map +1 -1
  58. package/lib/cjs/CustomViewState3dCreator.js +80 -81
  59. package/lib/cjs/CustomViewState3dCreator.js.map +1 -1
  60. package/lib/cjs/DevTools.d.ts +74 -71
  61. package/lib/cjs/DevTools.d.ts.map +1 -1
  62. package/lib/cjs/DevTools.js +156 -154
  63. package/lib/cjs/DevTools.js.map +1 -1
  64. package/lib/cjs/DisplayStyle.d.ts +104 -106
  65. package/lib/cjs/DisplayStyle.d.ts.map +1 -1
  66. package/lib/cjs/DisplayStyle.js +251 -256
  67. package/lib/cjs/DisplayStyle.js.map +1 -1
  68. package/lib/cjs/ECDb.d.ts +194 -191
  69. package/lib/cjs/ECDb.d.ts.map +1 -1
  70. package/lib/cjs/ECDb.js +351 -350
  71. package/lib/cjs/ECDb.js.map +1 -1
  72. package/lib/cjs/ECSchemaXmlContext.d.ts +18 -18
  73. package/lib/cjs/ECSchemaXmlContext.d.ts.map +1 -1
  74. package/lib/cjs/ECSchemaXmlContext.js +41 -41
  75. package/lib/cjs/ECSqlStatement.d.ts +473 -473
  76. package/lib/cjs/ECSqlStatement.js +791 -791
  77. package/lib/cjs/Element.d.ts +1105 -1109
  78. package/lib/cjs/Element.d.ts.map +1 -1
  79. package/lib/cjs/Element.js +1416 -1427
  80. package/lib/cjs/Element.js.map +1 -1
  81. package/lib/cjs/ElementAspect.d.ts +175 -179
  82. package/lib/cjs/ElementAspect.d.ts.map +1 -1
  83. package/lib/cjs/ElementAspect.js +202 -211
  84. package/lib/cjs/ElementAspect.js.map +1 -1
  85. package/lib/cjs/ElementGraphics.d.ts +9 -9
  86. package/lib/cjs/ElementGraphics.js +41 -41
  87. package/lib/cjs/ElementGraphics.js.map +1 -1
  88. package/lib/cjs/ElementTreeWalker.d.ts +162 -162
  89. package/lib/cjs/ElementTreeWalker.d.ts.map +1 -1
  90. package/lib/cjs/ElementTreeWalker.js +409 -409
  91. package/lib/cjs/ElementTreeWalker.js.map +1 -1
  92. package/lib/cjs/Entity.d.ts +102 -106
  93. package/lib/cjs/Entity.d.ts.map +1 -1
  94. package/lib/cjs/Entity.js +118 -134
  95. package/lib/cjs/Entity.js.map +1 -1
  96. package/lib/cjs/EntityReferences.d.ts +49 -49
  97. package/lib/cjs/EntityReferences.d.ts.map +1 -1
  98. package/lib/cjs/EntityReferences.js +95 -95
  99. package/lib/cjs/ExportGraphics.d.ts +317 -317
  100. package/lib/cjs/ExportGraphics.d.ts.map +1 -1
  101. package/lib/cjs/ExportGraphics.js +208 -208
  102. package/lib/cjs/ExternalSource.d.ts +95 -96
  103. package/lib/cjs/ExternalSource.d.ts.map +1 -1
  104. package/lib/cjs/ExternalSource.js +130 -131
  105. package/lib/cjs/ExternalSource.js.map +1 -1
  106. package/lib/cjs/GeoCoordConfig.d.ts +19 -19
  107. package/lib/cjs/GeoCoordConfig.js +85 -85
  108. package/lib/cjs/GeoCoordConfig.js.map +1 -1
  109. package/lib/cjs/GeometrySummary.d.ts +4 -4
  110. package/lib/cjs/GeometrySummary.js +333 -333
  111. package/lib/cjs/GeometrySummary.js.map +1 -1
  112. package/lib/cjs/HubMock.d.ts +94 -94
  113. package/lib/cjs/HubMock.js +220 -222
  114. package/lib/cjs/HubMock.js.map +1 -1
  115. package/lib/cjs/IModelCloneContext.d.ts +8 -8
  116. package/lib/cjs/IModelCloneContext.d.ts.map +1 -1
  117. package/lib/cjs/IModelCloneContext.js +15 -15
  118. package/lib/cjs/IModelDb.d.ts +1222 -1196
  119. package/lib/cjs/IModelDb.d.ts.map +1 -1
  120. package/lib/cjs/IModelDb.js +2389 -2392
  121. package/lib/cjs/IModelDb.js.map +1 -1
  122. package/lib/cjs/IModelElementCloneContext.d.ts +89 -89
  123. package/lib/cjs/IModelElementCloneContext.js +159 -159
  124. package/lib/cjs/IModelHost.d.ts +370 -369
  125. package/lib/cjs/IModelHost.d.ts.map +1 -1
  126. package/lib/cjs/IModelHost.js +476 -496
  127. package/lib/cjs/IModelHost.js.map +1 -1
  128. package/lib/cjs/IModelJsFs.d.ts +62 -62
  129. package/lib/cjs/IModelJsFs.js +139 -140
  130. package/lib/cjs/IModelJsFs.js.map +1 -1
  131. package/lib/cjs/IpcHost.d.ts +104 -104
  132. package/lib/cjs/IpcHost.js +276 -278
  133. package/lib/cjs/IpcHost.js.map +1 -1
  134. package/lib/cjs/LineStyle.d.ts +311 -311
  135. package/lib/cjs/LineStyle.js +295 -295
  136. package/lib/cjs/LocalHub.d.ts +162 -162
  137. package/lib/cjs/LocalHub.d.ts.map +1 -1
  138. package/lib/cjs/LocalHub.js +579 -584
  139. package/lib/cjs/LocalHub.js.map +1 -1
  140. package/lib/cjs/LocalhostIpcHost.d.ts +21 -20
  141. package/lib/cjs/LocalhostIpcHost.d.ts.map +1 -1
  142. package/lib/cjs/LocalhostIpcHost.js +79 -81
  143. package/lib/cjs/LocalhostIpcHost.js.map +1 -1
  144. package/lib/cjs/Material.d.ts +131 -131
  145. package/lib/cjs/Material.d.ts.map +1 -1
  146. package/lib/cjs/Material.js +185 -181
  147. package/lib/cjs/Material.js.map +1 -1
  148. package/lib/cjs/Model.d.ts +391 -392
  149. package/lib/cjs/Model.d.ts.map +1 -1
  150. package/lib/cjs/Model.js +487 -485
  151. package/lib/cjs/Model.js.map +1 -1
  152. package/lib/cjs/NativeAppStorage.d.ts +51 -51
  153. package/lib/cjs/NativeAppStorage.js +202 -202
  154. package/lib/cjs/NativeAppStorage.js.map +1 -1
  155. package/lib/cjs/NativeHost.d.ts +52 -52
  156. package/lib/cjs/NativeHost.d.ts.map +1 -1
  157. package/lib/cjs/NativeHost.js +158 -163
  158. package/lib/cjs/NativeHost.js.map +1 -1
  159. package/lib/cjs/NavigationRelationship.d.ts +156 -156
  160. package/lib/cjs/NavigationRelationship.js +225 -225
  161. package/lib/cjs/NavigationRelationship.js.map +1 -1
  162. package/lib/cjs/PromiseMemoizer.d.ts +51 -51
  163. package/lib/cjs/PromiseMemoizer.d.ts.map +1 -1
  164. package/lib/cjs/PromiseMemoizer.js +101 -101
  165. package/lib/cjs/PromiseMemoizer.js.map +1 -1
  166. package/lib/cjs/PropertyStore.d.ts +123 -132
  167. package/lib/cjs/PropertyStore.d.ts.map +1 -1
  168. package/lib/cjs/PropertyStore.js +179 -11
  169. package/lib/cjs/PropertyStore.js.map +1 -1
  170. package/lib/cjs/Relationship.d.ts +413 -416
  171. package/lib/cjs/Relationship.d.ts.map +1 -1
  172. package/lib/cjs/Relationship.js +491 -494
  173. package/lib/cjs/Relationship.js.map +1 -1
  174. package/lib/cjs/RpcBackend.d.ts +5 -5
  175. package/lib/cjs/RpcBackend.js +32 -32
  176. package/lib/cjs/SQLiteDb.d.ts +317 -219
  177. package/lib/cjs/SQLiteDb.d.ts.map +1 -1
  178. package/lib/cjs/SQLiteDb.js +318 -214
  179. package/lib/cjs/SQLiteDb.js.map +1 -1
  180. package/lib/cjs/Schema.d.ts +55 -55
  181. package/lib/cjs/Schema.js +83 -83
  182. package/lib/cjs/Schema.js.map +1 -1
  183. package/lib/cjs/ServerBasedLocks.d.ts +57 -57
  184. package/lib/cjs/ServerBasedLocks.js +168 -168
  185. package/lib/cjs/ServerBasedLocks.js.map +1 -1
  186. package/lib/cjs/SqliteStatement.d.ts +360 -360
  187. package/lib/cjs/SqliteStatement.d.ts.map +1 -1
  188. package/lib/cjs/SqliteStatement.js +586 -586
  189. package/lib/cjs/Texture.d.ts +58 -58
  190. package/lib/cjs/Texture.js +82 -82
  191. package/lib/cjs/Texture.js.map +1 -1
  192. package/lib/cjs/TileStorage.d.ts +44 -18
  193. package/lib/cjs/TileStorage.d.ts.map +1 -1
  194. package/lib/cjs/TileStorage.js +109 -90
  195. package/lib/cjs/TileStorage.js.map +1 -1
  196. package/lib/cjs/TxnManager.d.ts +202 -202
  197. package/lib/cjs/TxnManager.d.ts.map +1 -1
  198. package/lib/cjs/TxnManager.js +356 -356
  199. package/lib/cjs/TxnManager.js.map +1 -1
  200. package/lib/cjs/ViewDefinition.d.ts +429 -439
  201. package/lib/cjs/ViewDefinition.d.ts.map +1 -1
  202. package/lib/cjs/ViewDefinition.js +640 -646
  203. package/lib/cjs/ViewDefinition.js.map +1 -1
  204. package/lib/cjs/ViewStateHydrator.d.ts +13 -13
  205. package/lib/cjs/ViewStateHydrator.js +103 -103
  206. package/lib/cjs/core-backend.d.ts +181 -184
  207. package/lib/cjs/core-backend.d.ts.map +1 -1
  208. package/lib/cjs/core-backend.js +205 -204
  209. package/lib/cjs/core-backend.js.map +1 -1
  210. package/lib/cjs/domains/FunctionalElements.d.ts +101 -101
  211. package/lib/cjs/domains/FunctionalElements.js +145 -145
  212. package/lib/cjs/domains/FunctionalElements.js.map +1 -1
  213. package/lib/cjs/domains/FunctionalSchema.d.ts +13 -13
  214. package/lib/cjs/domains/FunctionalSchema.d.ts.map +1 -1
  215. package/lib/cjs/domains/FunctionalSchema.js +39 -40
  216. package/lib/cjs/domains/FunctionalSchema.js.map +1 -1
  217. package/lib/cjs/domains/GenericElements.d.ts +177 -177
  218. package/lib/cjs/domains/GenericElements.js +263 -263
  219. package/lib/cjs/domains/GenericSchema.d.ts +10 -10
  220. package/lib/cjs/domains/GenericSchema.js +28 -28
  221. package/lib/cjs/rpc/multipart.d.ts +11 -11
  222. package/lib/cjs/rpc/multipart.js +71 -71
  223. package/lib/cjs/rpc/tracing.d.ts +28 -28
  224. package/lib/cjs/rpc/tracing.js +73 -74
  225. package/lib/cjs/rpc/tracing.js.map +1 -1
  226. package/lib/cjs/rpc/web/logging.d.ts +9 -9
  227. package/lib/cjs/rpc/web/logging.js +43 -43
  228. package/lib/cjs/rpc/web/request.d.ts +6 -6
  229. package/lib/cjs/rpc/web/request.js +73 -74
  230. package/lib/cjs/rpc/web/request.js.map +1 -1
  231. package/lib/cjs/rpc/web/response.d.ts +6 -6
  232. package/lib/cjs/rpc/web/response.js +105 -106
  233. package/lib/cjs/rpc/web/response.js.map +1 -1
  234. package/lib/cjs/rpc-impl/DevToolsRpcImpl.d.ts +15 -15
  235. package/lib/cjs/rpc-impl/DevToolsRpcImpl.js +32 -32
  236. package/lib/cjs/rpc-impl/IModelReadRpcImpl.d.ts +47 -47
  237. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js +293 -294
  238. package/lib/cjs/rpc-impl/IModelReadRpcImpl.js.map +1 -1
  239. package/lib/cjs/rpc-impl/IModelTileRpcImpl.d.ts +20 -22
  240. package/lib/cjs/rpc-impl/IModelTileRpcImpl.d.ts.map +1 -1
  241. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js +193 -205
  242. package/lib/cjs/rpc-impl/IModelTileRpcImpl.js.map +1 -1
  243. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.d.ts +36 -36
  244. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js +166 -168
  245. package/lib/cjs/rpc-impl/RpcBriefcaseUtility.js.map +1 -1
  246. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.d.ts +16 -16
  247. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js +42 -43
  248. package/lib/cjs/rpc-impl/SnapshotIModelRpcImpl.js.map +1 -1
  249. package/lib/cjs/rpc-impl/WipRpcImpl.d.ts +15 -15
  250. package/lib/cjs/rpc-impl/WipRpcImpl.js +37 -37
  251. package/lib/cjs/workspace/Settings.d.ts +186 -186
  252. package/lib/cjs/workspace/Settings.d.ts.map +1 -1
  253. package/lib/cjs/workspace/Settings.js +155 -155
  254. package/lib/cjs/workspace/Settings.js.map +1 -1
  255. package/lib/cjs/workspace/SettingsSchemas.d.ts +75 -75
  256. package/lib/cjs/workspace/SettingsSchemas.js +190 -191
  257. package/lib/cjs/workspace/SettingsSchemas.js.map +1 -1
  258. package/lib/cjs/workspace/Workspace.d.ts +411 -414
  259. package/lib/cjs/workspace/Workspace.d.ts.map +1 -1
  260. package/lib/cjs/workspace/Workspace.js +521 -543
  261. package/lib/cjs/workspace/Workspace.js.map +1 -1
  262. package/package.json +25 -28
  263. package/lib/cjs/AliCloudStorageService.d.ts +0 -24
  264. package/lib/cjs/AliCloudStorageService.d.ts.map +0 -1
  265. package/lib/cjs/AliCloudStorageService.js +0 -72
  266. package/lib/cjs/AliCloudStorageService.js.map +0 -1
  267. package/lib/cjs/CloudStorageBackend.d.ts +0 -59
  268. package/lib/cjs/CloudStorageBackend.d.ts.map +0 -1
  269. package/lib/cjs/CloudStorageBackend.js +0 -174
  270. 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