@itwin/core-backend 4.0.0-dev.52 → 4.0.0-dev.55

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