@pilotdev/pilot-web-sdk 26.15.0 → 26.17.0

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 (196) hide show
  1. package/fesm2022/pilotdev-pilot-web-sdk.mjs +25 -6
  2. package/fesm2022/pilotdev-pilot-web-sdk.mjs.map +1 -1
  3. package/package.json +10 -10
  4. package/types/pilotdev-pilot-web-sdk.d.ts +2259 -0
  5. package/esm2022/lib/base/disposable.mjs +0 -14
  6. package/esm2022/lib/base/index.mjs +0 -3
  7. package/esm2022/lib/base/initializable.mjs +0 -14
  8. package/esm2022/lib/commands/command-builder.mjs +0 -2
  9. package/esm2022/lib/commands/index.mjs +0 -2
  10. package/esm2022/lib/contexts/bim-element-panel-context.mjs +0 -16
  11. package/esm2022/lib/contexts/bim-right-panel-context.mjs +0 -16
  12. package/esm2022/lib/contexts/context.mjs +0 -32
  13. package/esm2022/lib/contexts/dialog-context.mjs +0 -10
  14. package/esm2022/lib/contexts/document-annotations-list-context.mjs +0 -16
  15. package/esm2022/lib/contexts/index.mjs +0 -10
  16. package/esm2022/lib/contexts/object-card-context.mjs +0 -63
  17. package/esm2022/lib/contexts/page-context.mjs +0 -3
  18. package/esm2022/lib/contexts/render-context.mjs +0 -24
  19. package/esm2022/lib/contexts/settings-feature-context.mjs +0 -21
  20. package/esm2022/lib/data/access.mjs +0 -26
  21. package/esm2022/lib/data/annotations.mjs +0 -34
  22. package/esm2022/lib/data/attribute.mjs +0 -35
  23. package/esm2022/lib/data/bim-features/bim-compare-diff.mjs +0 -9
  24. package/esm2022/lib/data/bim-features/bim-search-set.mjs +0 -2
  25. package/esm2022/lib/data/bim-features/index.mjs +0 -3
  26. package/esm2022/lib/data/cades-type.mjs +0 -13
  27. package/esm2022/lib/data/certificate.mjs +0 -2
  28. package/esm2022/lib/data/data-object.mjs +0 -19
  29. package/esm2022/lib/data/expected-error.mjs +0 -9
  30. package/esm2022/lib/data/file.mjs +0 -2
  31. package/esm2022/lib/data/files-snapshot.mjs +0 -2
  32. package/esm2022/lib/data/index.mjs +0 -21
  33. package/esm2022/lib/data/organisation-unit.mjs +0 -7
  34. package/esm2022/lib/data/person.mjs +0 -2
  35. package/esm2022/lib/data/relation.mjs +0 -2
  36. package/esm2022/lib/data/signature-custom-state.mjs +0 -2
  37. package/esm2022/lib/data/signature-verification-result.mjs +0 -2
  38. package/esm2022/lib/data/signature-verification-status.mjs +0 -11
  39. package/esm2022/lib/data/subscription-type.mjs +0 -6
  40. package/esm2022/lib/data/theme.mjs +0 -6
  41. package/esm2022/lib/data/user-state-machine.mjs +0 -2
  42. package/esm2022/lib/data/user-state.mjs +0 -12
  43. package/esm2022/lib/icrypto-provider.mjs +0 -96
  44. package/esm2022/lib/idata.plugin.mjs +0 -11
  45. package/esm2022/lib/injectable/bim-features/bim-compare-diff-service.mjs +0 -2
  46. package/esm2022/lib/injectable/bim-features/bim-features.mjs +0 -2
  47. package/esm2022/lib/injectable/bim-features/bim-search-set-service.mjs +0 -2
  48. package/esm2022/lib/injectable/bim-features/index.mjs +0 -4
  49. package/esm2022/lib/injectable/command-builder-provider.mjs +0 -2
  50. package/esm2022/lib/injectable/dialog-service.mjs +0 -2
  51. package/esm2022/lib/injectable/index.mjs +0 -12
  52. package/esm2022/lib/injectable/injection-source.mjs +0 -55
  53. package/esm2022/lib/injectable/ipersonal-settings.mjs +0 -2
  54. package/esm2022/lib/injectable/modifier-provider.mjs +0 -2
  55. package/esm2022/lib/injectable/objects-repository.mjs +0 -2
  56. package/esm2022/lib/injectable/progress-service.mjs +0 -8
  57. package/esm2022/lib/injectable/render-context-provider.mjs +0 -2
  58. package/esm2022/lib/injectable/repository-events.mjs +0 -2
  59. package/esm2022/lib/injectable/theme-service.mjs +0 -2
  60. package/esm2022/lib/menu/checkable-menu.builder.mjs +0 -14
  61. package/esm2022/lib/menu/index.mjs +0 -5
  62. package/esm2022/lib/menu/menu-item.builder.mjs +0 -39
  63. package/esm2022/lib/menu/menu.builder.mjs +0 -68
  64. package/esm2022/lib/menu/menu.mjs +0 -23
  65. package/esm2022/lib/modifier/attribute-modifier.mjs +0 -2
  66. package/esm2022/lib/modifier/index.mjs +0 -5
  67. package/esm2022/lib/modifier/modifier.mjs +0 -2
  68. package/esm2022/lib/modifier/object-builder.mjs +0 -2
  69. package/esm2022/lib/modifier/signature-modifier.mjs +0 -2
  70. package/esm2022/lib/object-card/attribute-value-changed-event-args.mjs +0 -20
  71. package/esm2022/lib/object-card/index.mjs +0 -3
  72. package/esm2022/lib/object-card/object-card-handler.mjs +0 -30
  73. package/esm2022/lib/openspace/index.mjs +0 -2
  74. package/esm2022/lib/openspace/openspace-view.mjs +0 -29
  75. package/esm2022/lib/page-navigation/index.mjs +0 -5
  76. package/esm2022/lib/page-navigation/page-navigation-section-element.builder.mjs +0 -42
  77. package/esm2022/lib/page-navigation/page-navigation-section.builder.mjs +0 -47
  78. package/esm2022/lib/page-navigation/page-navigation.builder.mjs +0 -40
  79. package/esm2022/lib/page-navigation/page-navigation.mjs +0 -15
  80. package/esm2022/lib/personal-settings/index.mjs +0 -4
  81. package/esm2022/lib/personal-settings/isettings-feature.mjs +0 -42
  82. package/esm2022/lib/personal-settings/isettings-value-provider.mjs +0 -27
  83. package/esm2022/lib/personal-settings/system-settings-keys.mjs +0 -83
  84. package/esm2022/lib/tabs/index.mjs +0 -4
  85. package/esm2022/lib/tabs/tab-item.builder.mjs +0 -35
  86. package/esm2022/lib/tabs/tabs.builder.mjs +0 -40
  87. package/esm2022/lib/tabs/tabs.mjs +0 -15
  88. package/esm2022/lib/toolbar/index.mjs +0 -7
  89. package/esm2022/lib/toolbar/toolbar-item-submenu.handler.mjs +0 -11
  90. package/esm2022/lib/toolbar/toolbar-item.builder.mjs +0 -41
  91. package/esm2022/lib/toolbar/toolbar-menu-item.builder.mjs +0 -15
  92. package/esm2022/lib/toolbar/toolbar-toggle-item.builder.mjs +0 -14
  93. package/esm2022/lib/toolbar/toolbar.builder.mjs +0 -88
  94. package/esm2022/lib/toolbar/toolbar.mjs +0 -28
  95. package/esm2022/lib/tools/attribute-permission.info.mjs +0 -45
  96. package/esm2022/lib/tools/guid.mjs +0 -53
  97. package/esm2022/lib/tools/index.mjs +0 -4
  98. package/esm2022/lib/tools/utils.mjs +0 -8
  99. package/esm2022/pilotdev-pilot-web-sdk.mjs +0 -5
  100. package/esm2022/public-api.mjs +0 -20
  101. package/index.d.ts +0 -5
  102. package/lib/base/disposable.d.ts +0 -7
  103. package/lib/base/index.d.ts +0 -2
  104. package/lib/base/initializable.d.ts +0 -8
  105. package/lib/commands/command-builder.d.ts +0 -15
  106. package/lib/commands/index.d.ts +0 -1
  107. package/lib/contexts/bim-element-panel-context.d.ts +0 -8
  108. package/lib/contexts/bim-right-panel-context.d.ts +0 -8
  109. package/lib/contexts/context.d.ts +0 -22
  110. package/lib/contexts/dialog-context.d.ts +0 -5
  111. package/lib/contexts/document-annotations-list-context.d.ts +0 -12
  112. package/lib/contexts/index.d.ts +0 -9
  113. package/lib/contexts/object-card-context.d.ts +0 -41
  114. package/lib/contexts/page-context.d.ts +0 -2
  115. package/lib/contexts/render-context.d.ts +0 -17
  116. package/lib/contexts/settings-feature-context.d.ts +0 -11
  117. package/lib/data/access.d.ts +0 -35
  118. package/lib/data/annotations.d.ts +0 -113
  119. package/lib/data/attribute.d.ts +0 -48
  120. package/lib/data/bim-features/bim-compare-diff.d.ts +0 -15
  121. package/lib/data/bim-features/bim-search-set.d.ts +0 -13
  122. package/lib/data/bim-features/index.d.ts +0 -2
  123. package/lib/data/cades-type.d.ts +0 -11
  124. package/lib/data/certificate.d.ts +0 -29
  125. package/lib/data/data-object.d.ts +0 -77
  126. package/lib/data/expected-error.d.ts +0 -5
  127. package/lib/data/file.d.ts +0 -30
  128. package/lib/data/files-snapshot.d.ts +0 -8
  129. package/lib/data/index.d.ts +0 -20
  130. package/lib/data/organisation-unit.d.ts +0 -20
  131. package/lib/data/person.d.ts +0 -17
  132. package/lib/data/relation.d.ts +0 -8
  133. package/lib/data/signature-custom-state.d.ts +0 -23
  134. package/lib/data/signature-verification-result.d.ts +0 -18
  135. package/lib/data/signature-verification-status.d.ts +0 -9
  136. package/lib/data/subscription-type.d.ts +0 -4
  137. package/lib/data/theme.d.ts +0 -7
  138. package/lib/data/user-state-machine.d.ts +0 -10
  139. package/lib/data/user-state.d.ts +0 -20
  140. package/lib/icrypto-provider.d.ts +0 -82
  141. package/lib/idata.plugin.d.ts +0 -6
  142. package/lib/injectable/bim-features/bim-compare-diff-service.d.ts +0 -4
  143. package/lib/injectable/bim-features/bim-features.d.ts +0 -6
  144. package/lib/injectable/bim-features/bim-search-set-service.d.ts +0 -39
  145. package/lib/injectable/bim-features/index.d.ts +0 -3
  146. package/lib/injectable/command-builder-provider.d.ts +0 -10
  147. package/lib/injectable/dialog-service.d.ts +0 -5
  148. package/lib/injectable/index.d.ts +0 -11
  149. package/lib/injectable/injection-source.d.ts +0 -26
  150. package/lib/injectable/ipersonal-settings.d.ts +0 -48
  151. package/lib/injectable/modifier-provider.d.ts +0 -10
  152. package/lib/injectable/objects-repository.d.ts +0 -87
  153. package/lib/injectable/progress-service.d.ts +0 -18
  154. package/lib/injectable/render-context-provider.d.ts +0 -10
  155. package/lib/injectable/repository-events.d.ts +0 -31
  156. package/lib/injectable/theme-service.d.ts +0 -6
  157. package/lib/menu/checkable-menu.builder.d.ts +0 -11
  158. package/lib/menu/index.d.ts +0 -4
  159. package/lib/menu/menu-item.builder.d.ts +0 -27
  160. package/lib/menu/menu.builder.d.ts +0 -49
  161. package/lib/menu/menu.d.ts +0 -20
  162. package/lib/modifier/attribute-modifier.d.ts +0 -9
  163. package/lib/modifier/index.d.ts +0 -4
  164. package/lib/modifier/modifier.d.ts +0 -30
  165. package/lib/modifier/object-builder.d.ts +0 -140
  166. package/lib/modifier/signature-modifier.d.ts +0 -87
  167. package/lib/object-card/attribute-value-changed-event-args.d.ts +0 -10
  168. package/lib/object-card/index.d.ts +0 -2
  169. package/lib/object-card/object-card-handler.d.ts +0 -25
  170. package/lib/openspace/index.d.ts +0 -1
  171. package/lib/openspace/openspace-view.d.ts +0 -20
  172. package/lib/page-navigation/index.d.ts +0 -4
  173. package/lib/page-navigation/page-navigation-section-element.builder.d.ts +0 -29
  174. package/lib/page-navigation/page-navigation-section.builder.d.ts +0 -33
  175. package/lib/page-navigation/page-navigation.builder.d.ts +0 -28
  176. package/lib/page-navigation/page-navigation.d.ts +0 -9
  177. package/lib/personal-settings/index.d.ts +0 -3
  178. package/lib/personal-settings/isettings-feature.d.ts +0 -31
  179. package/lib/personal-settings/isettings-value-provider.d.ts +0 -17
  180. package/lib/personal-settings/system-settings-keys.d.ts +0 -82
  181. package/lib/tabs/index.d.ts +0 -3
  182. package/lib/tabs/tab-item.builder.d.ts +0 -24
  183. package/lib/tabs/tabs.builder.d.ts +0 -28
  184. package/lib/tabs/tabs.d.ts +0 -14
  185. package/lib/toolbar/index.d.ts +0 -6
  186. package/lib/toolbar/toolbar-item-submenu.handler.d.ts +0 -9
  187. package/lib/toolbar/toolbar-item.builder.d.ts +0 -28
  188. package/lib/toolbar/toolbar-menu-item.builder.d.ts +0 -13
  189. package/lib/toolbar/toolbar-toggle-item.builder.d.ts +0 -11
  190. package/lib/toolbar/toolbar.builder.d.ts +0 -65
  191. package/lib/toolbar/toolbar.d.ts +0 -21
  192. package/lib/tools/attribute-permission.info.d.ts +0 -9
  193. package/lib/tools/guid.d.ts +0 -7
  194. package/lib/tools/index.d.ts +0 -3
  195. package/lib/tools/utils.d.ts +0 -3
  196. package/public-api.d.ts +0 -16
@@ -0,0 +1,2259 @@
1
+ import { Observable } from 'rxjs';
2
+ import { HttpEvent } from '@angular/common/http';
3
+ import { Observable as Observable$1 } from 'rxjs/internal/Observable';
4
+
5
+ declare abstract class IDisposable {
6
+ constructor();
7
+ /**
8
+ * The method is called just before class is disposed
9
+ */
10
+ dispose(): void;
11
+ }
12
+
13
+ declare enum CompareResultType {
14
+ Added = "added",
15
+ Modified = "modified",
16
+ AttributesModified = "attributesModified",
17
+ Deleted = "deleted",
18
+ Unchanged = "unchanged"
19
+ }
20
+ interface IDisplayParam {
21
+ visible: boolean;
22
+ highlight: boolean;
23
+ r: number;
24
+ g: number;
25
+ b: number;
26
+ a: number;
27
+ }
28
+
29
+ interface IBimCompareDiffService {
30
+ updateDiffDisplayParams(type: CompareResultType, func: (old: IDisplayParam) => IDisplayParam): void;
31
+ }
32
+
33
+ declare enum AccessLevel {
34
+ None = 0,
35
+ Create = 1,
36
+ EditAttributes = 2,
37
+ View = 4,
38
+ Freeze = 8,
39
+ Approve = 16,
40
+ Share = 32,
41
+ EditFiles = 64,
42
+ Delete = 128,
43
+ Edit = 194,
44
+ ViewCreate = 5,
45
+ ViewEdit = 199,
46
+ ViewEditAgrement = 215,
47
+ Full = 255
48
+ }
49
+ declare enum AccessType {
50
+ Allow = 0,
51
+ Deny = 1
52
+ }
53
+ declare enum AccessInheritance {
54
+ None = 0,
55
+ InheritUntilSecret = 1,
56
+ InheritWholeSubtree = 2
57
+ }
58
+ interface IAccessRecord {
59
+ get orgUnitId(): number;
60
+ get access(): IAccess;
61
+ get recordOwnerPosition(): number;
62
+ get inheritanceSource(): string;
63
+ }
64
+ interface IAccess {
65
+ get type(): AccessType;
66
+ get accessLevel(): AccessLevel;
67
+ get validThrough(): string;
68
+ get inheritance(): AccessInheritance;
69
+ get typeIds(): number[];
70
+ }
71
+
72
+ interface IAttribute {
73
+ get name(): string;
74
+ get title(): string;
75
+ get obligatory(): boolean;
76
+ get type(): AttributeType;
77
+ get displayHeight(): number;
78
+ get showInTree(): boolean;
79
+ get displaySortOrder(): number;
80
+ get isService(): boolean;
81
+ get configuration(): string;
82
+ get joinWithPrevious(): boolean;
83
+ get isUnique(): boolean;
84
+ get groupTitle(): string;
85
+ get editableForPositionsSource(): string[];
86
+ get uniquenessType(): AttributeUniquenessType;
87
+ }
88
+ declare enum AttributeType {
89
+ Integer = 0,
90
+ Double = 1,
91
+ DateTime = 2,
92
+ String = 3,
93
+ Decimal = 4,
94
+ Numerator = 5,
95
+ Array = 6,
96
+ UserState = 7,
97
+ OrgUnit = 8,
98
+ ElementBook = 9,
99
+ Inherited = 10,
100
+ Boolean = 11,
101
+ ByteArray = 12
102
+ }
103
+ /**
104
+ * Тип проверки уникальности.
105
+ */
106
+ declare enum AttributeUniquenessType {
107
+ /**
108
+ * Не проверять.
109
+ */
110
+ NotUnique = 0,
111
+ /**
112
+ * Показывать предупреждение.
113
+ */
114
+ Warning = 1,
115
+ /**
116
+ * Запрещать создание дубликатов.
117
+ */
118
+ Prohibition = 2
119
+ }
120
+
121
+ declare enum CadesType {
122
+ Unknown = 0,
123
+ NotCades = 1,
124
+ CadesBes = 2,
125
+ CadesEpes = 3,
126
+ CadesT = 4,
127
+ CadesC = 5,
128
+ CadesXLongType1 = 6,
129
+ CadesXLongType2 = 7,
130
+ CadesA = 8
131
+ }
132
+
133
+ interface IFile {
134
+ get body(): IFileBody;
135
+ get name(): string;
136
+ get creatorId(): number;
137
+ get stateId(): string;
138
+ get signatureRequests(): ISignatureRequest[];
139
+ }
140
+ interface IFileBody {
141
+ get id(): string;
142
+ get size(): number;
143
+ get md5Hex(): string;
144
+ get modified(): string;
145
+ get created(): string;
146
+ get accessed(): string;
147
+ }
148
+ interface ISignatureRequest {
149
+ get id(): string;
150
+ /**
151
+ * @deprecated
152
+ */
153
+ readonly databaseId?: string | undefined;
154
+ get positionId(): number;
155
+ get role(): string | undefined;
156
+ get signs(): string[] | undefined;
157
+ get requestedSigner(): string | undefined;
158
+ get objectId(): string | undefined;
159
+ get publicKeyOid(): string | undefined;
160
+ get lastSignCadesType(): CadesType;
161
+ get isAdvancementRequired(): boolean;
162
+ }
163
+
164
+ interface IFileSnapshot {
165
+ get created(): string;
166
+ get creatorId(): number;
167
+ get reason(): string;
168
+ get files(): IFile[];
169
+ get hasAnnotations(): boolean;
170
+ }
171
+
172
+ interface IPerson {
173
+ get id(): number;
174
+ get login(): string;
175
+ get isInactive(): boolean;
176
+ get displayName(): string;
177
+ get positions(): number[];
178
+ get groups(): number[];
179
+ get bossOf(): number[];
180
+ get allOrgUnits(): number[];
181
+ get comment(): string;
182
+ get email(): string;
183
+ get sid(): string;
184
+ get uidDn(): string;
185
+ get isDeleted(): boolean;
186
+ get isAdmin(): boolean;
187
+ get version(): number;
188
+ }
189
+
190
+ interface IRelation {
191
+ get id(): string;
192
+ get targetId(): string;
193
+ get type(): RelationType;
194
+ get name(): string;
195
+ get versionId(): string;
196
+ }
197
+
198
+ declare enum RelationType {
199
+ SourceFiles = 1,
200
+ TaskInitiatorAttachments = 2,
201
+ TaskExecutorAttachments = 3,
202
+ MessageAttachments = 4,
203
+ Custom = 5,
204
+ TaskAttachments = 6
205
+ }
206
+ declare enum ObjectState {
207
+ Alive = 0,
208
+ InRecycleBin = 1,
209
+ DeletedPermanently = 2,
210
+ Frozen = 3,
211
+ LockRequested = 4,
212
+ LockAccepted = 5
213
+ }
214
+ interface IDataObject {
215
+ get id(): string;
216
+ get parentId(): string;
217
+ get title(): string;
218
+ get type(): IType;
219
+ get attributes(): {
220
+ [key: string]: any;
221
+ };
222
+ get children(): IChild[];
223
+ get creator(): IPerson;
224
+ get modifiedBy(): IPerson;
225
+ get created(): string;
226
+ get modifiedDate(): string;
227
+ get actualFileSnapshot(): IFileSnapshot;
228
+ get previousFileSnapshots(): IFileSnapshot[];
229
+ get context(): string[];
230
+ get relations(): IRelation[];
231
+ get access(): IAccessRecord[];
232
+ get accessLevel(): AccessLevel;
233
+ get allowedSubtypes(): number[];
234
+ get stateInfo(): IStateInfo;
235
+ get secretInfo(): ISecretInfo;
236
+ get historyItems(): string[];
237
+ get subscribers(): number[];
238
+ }
239
+ interface IType {
240
+ get id(): number;
241
+ get title(): string;
242
+ get name(): string;
243
+ get icon(): string;
244
+ get sort(): number;
245
+ get hasFiles(): boolean;
246
+ get children(): number[];
247
+ get attributes(): IAttribute[];
248
+ get stateMachineId(): string;
249
+ get isDeleted(): boolean;
250
+ get kind(): number;
251
+ get isMountable(): boolean;
252
+ get isService(): boolean;
253
+ get isProject(): boolean;
254
+ get configuration(): string;
255
+ }
256
+ interface IChild {
257
+ get objectId(): string;
258
+ get typeId(): number;
259
+ }
260
+ interface ISecretInfo {
261
+ get isSecret(): boolean;
262
+ get secretParentId(): string;
263
+ get secretChangedBy(): number;
264
+ }
265
+ interface IStateInfo {
266
+ get state(): ObjectState;
267
+ get date(): string;
268
+ get personId(): number;
269
+ get positionId(): number;
270
+ }
271
+
272
+ interface IUserState {
273
+ get id(): string;
274
+ get name(): string;
275
+ get title(): string;
276
+ get icon(): string;
277
+ get color(): UserStateColors;
278
+ get isDeleted(): boolean;
279
+ get isCompletionState(): boolean;
280
+ get isSystemState(): boolean;
281
+ }
282
+ declare enum UserStateColors {
283
+ None = 0,
284
+ Color1 = 1,
285
+ Color2 = 2,
286
+ Color3 = 3,
287
+ Color4 = 4,
288
+ Color5 = 5,
289
+ Color6 = 6,
290
+ Color7 = 7
291
+ }
292
+
293
+ interface IAnnotationContainerObject {
294
+ get container(): IAnnotationContainer;
295
+ get source(): IDataObject;
296
+ get attributes(): any;
297
+ get markups(): IMarkup[];
298
+ get statesInfo(): IAnnotationStatesInfo;
299
+ }
300
+ interface IAnnotationContainer {
301
+ get annotationId(): string;
302
+ get version(): string;
303
+ get positionX(): number;
304
+ get positionY(): number;
305
+ get pageNumber(): number;
306
+ get data(): string;
307
+ get kind(): string;
308
+ }
309
+ interface IMarkup {
310
+ get annotationId(): string;
311
+ get id(): number;
312
+ get page(): number;
313
+ get style(): IMarkupStyle | undefined;
314
+ get subtype(): MarkupSubtype;
315
+ }
316
+ interface IMarkupStyle {
317
+ get colorRgb(): number | undefined;
318
+ get strokeWidth(): number | undefined;
319
+ get backgroundColorRgb(): number | undefined;
320
+ get lineStyle(): MarkupLineStyle | undefined;
321
+ }
322
+ declare enum MarkupLineStyle {
323
+ Solid = 0,
324
+ Dashed = 1,
325
+ Beveled = 2,
326
+ Inset = 3,
327
+ Underline = 4
328
+ }
329
+ declare enum BorderEffect {
330
+ None = 0,
331
+ Cloud = 1
332
+ }
333
+ interface IAnnotationStatesInfo {
334
+ get states(): Map<string, IUserState>;
335
+ get availableTransitions(): IStateTransitionCommandArg[];
336
+ get metadataVersion(): number;
337
+ }
338
+ interface IStateTransitionCommandArg {
339
+ get stateTo(): IUserState;
340
+ get transitionTitle(): string;
341
+ get attrName(): string;
342
+ }
343
+ interface IEllipseMarkup extends IMarkup {
344
+ get center(): MarkupPoint;
345
+ get radiusX(): number;
346
+ get radiusY(): number;
347
+ }
348
+ interface IRectangleMarkup extends IMarkup {
349
+ get bounds(): MarkupRect;
350
+ }
351
+ interface ILineMarkup extends IMarkup {
352
+ get start(): MarkupPoint;
353
+ get end(): MarkupPoint;
354
+ get startEnding(): MarkupLineEndings;
355
+ get endEnding(): MarkupLineEndings;
356
+ }
357
+ interface IPolylineMarkup extends IMarkup {
358
+ get points(): MarkupPoint[];
359
+ get borderEffect(): BorderEffect;
360
+ }
361
+ interface IPolygonMarkup extends IMarkup {
362
+ get points(): MarkupPoint[];
363
+ get borderEffect(): BorderEffect;
364
+ }
365
+ interface IInkMarkup extends IMarkup {
366
+ get points(): MarkupPoint[];
367
+ }
368
+ interface IFreeTextMarkup extends IMarkup {
369
+ get bounds(): MarkupRect;
370
+ get text(): string;
371
+ }
372
+ interface ITextDecorationMarkup extends IMarkup {
373
+ get quadPoints(): MarkupPoint[];
374
+ get kind(): MarkupTextDecorationKind;
375
+ }
376
+ interface ITextMarkup extends IMarkup {
377
+ get bounds(): MarkupRect;
378
+ }
379
+ declare enum MarkupTextDecorationKind {
380
+ Highlight = 0,
381
+ Underline = 1,
382
+ Squiggly = 2,
383
+ StrikeOut = 3
384
+ }
385
+ type MarkupPoint = {
386
+ x: PilotWeb2D.TextOrNumber;
387
+ y: PilotWeb2D.TextOrNumber;
388
+ };
389
+ type MarkupRect = {
390
+ x: number;
391
+ y: number;
392
+ width: number;
393
+ height: number;
394
+ };
395
+ declare enum MarkupLineEndings {
396
+ None = 0,
397
+ Square = 1,
398
+ Circle = 2,
399
+ Diamond = 3,
400
+ OpenArrow = 4,
401
+ ClosedArrow = 5
402
+ }
403
+ type MarkupSubtype = 'Link' | 'Text' | 'Widget' | 'Popup' | 'FreeText' | 'Line' | 'Arrow' | 'Square' | 'Circle' | 'PolyLine' | 'Polygon' | 'Cloud' | 'Caret' | 'Ink' | 'Highlight' | 'Underline' | 'Squiggly' | 'StrikeOut' | 'Stamp' | 'FileAttachment';
404
+
405
+ /**
406
+ * Represents a certificate with validity dates, issuer, and subject information.
407
+ */
408
+ interface ICertificate {
409
+ /**
410
+ * the thumbprint of the certificate.
411
+ */
412
+ get thumbprint(): string;
413
+ /**
414
+ * Validity end date of the certificate.
415
+ */
416
+ get validToDate(): string;
417
+ /**
418
+ * Validity start date of the certificate.
419
+ */
420
+ get validFromDate(): string;
421
+ /**
422
+ * Issuer of the certificate.
423
+ */
424
+ get issuer(): string;
425
+ /**
426
+ * Subject of the certificate.
427
+ */
428
+ get subject(): string;
429
+ /**
430
+ * The signature algorithm used in the certificate.
431
+ */
432
+ get publicKeyOid(): string;
433
+ }
434
+
435
+ declare class ExpectedError extends Error {
436
+ isSilent: boolean;
437
+ isExpected: boolean;
438
+ constructor(message: string, isSilent?: boolean);
439
+ }
440
+
441
+ interface IOrganisationUnit {
442
+ get id(): number;
443
+ get title(): string;
444
+ get kind(): OrgUnitKind;
445
+ get children(): number[];
446
+ get parentId(): number;
447
+ get isDeleted(): boolean;
448
+ get isBoss(): boolean;
449
+ get version(): number;
450
+ get person(): number;
451
+ get vicePersons(): number[];
452
+ get isCanceled(): boolean;
453
+ get groupPersons(): number[];
454
+ get permanentVicePersons(): number[];
455
+ }
456
+ declare enum OrgUnitKind {
457
+ Department = 0,
458
+ Position = 1,
459
+ Group = 2
460
+ }
461
+
462
+ declare enum SignatureVerificationStatus {
463
+ Unknown = 0,
464
+ Valid = 1,
465
+ ValidWithWarnings = 2,
466
+ CannotBeChecked = 3,
467
+ Duplicate = 4,
468
+ Invalid = 5,
469
+ Error = 6
470
+ }
471
+
472
+ /**
473
+ * Sets for signature the custom icon and title to the tooltip
474
+ * @interface ISignatureCustomState
475
+ *
476
+ * @property { string } icon - base64 string
477
+ * @property { string } iconName - unique icon name with prefix of the plugin name `${unique_prefix}-${icon_name}`
478
+ * @property { string } title - tooltip title
479
+ * @property { string } description - tooltip description
480
+ *
481
+ * @example
482
+ * const customState: ISignatureCustomState = {
483
+ * icon: 'data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQogIC5zdC1yZWR7ZmlsbDogI2ZmYjgyOTt9DQogIC5zdC13aGl0ZXtmaWxsOiNmZmZmZmY7fQ0KPC9zdHlsZT4NCjxjaXJjbGUgY2xhc3M9InN0LXJlZCIgY3g9IjgiIGN5PSI4IiByPSI3Ii8+DQo8cGF0aCBjbGFzcz0ic3Qtd2hpdGUiIGQ9Im01LjcwNyA0LjI5My0xLjQxNDEgMS40MTQxIDIuMjkzIDIuMjkzLTIuMjkzIDIuMjkzIDEuNDE0MSAxLjQxNDEgMi4yOTMtMi4yOTMgMi4yOTMgMi4yOTMgMS40MTQxLTEuNDE0MS0yLjI5My0yLjI5MyAyLjI5My0yLjI5My0xLjQxNDEtMS40MTQxLTIuMjkzIDIuMjkzLTIuMjkzLTIuMjkzeiIvPg0KPC9zdmc+DQo=',
484
+ * iconName: 'cryptoprovider_custom-error',
485
+ * title: 'Custom state error',
486
+ * description: 'Custom state error was thrown',
487
+ * };
488
+ */
489
+ interface ISignatureCustomState {
490
+ icon: string;
491
+ iconName: string;
492
+ title: string;
493
+ description: string;
494
+ }
495
+
496
+ interface ISignatureVerificationResultBase {
497
+ verificationStatus: SignatureVerificationStatus;
498
+ error?: string;
499
+ signerName?: string;
500
+ }
501
+ interface ISignatureVerificationResult extends ISignatureVerificationResultBase {
502
+ issuerName?: string;
503
+ signDate?: string;
504
+ customState?: ISignatureCustomState;
505
+ signerNameForeground?: string;
506
+ }
507
+ interface IImportedSignatureVerificationResult extends ISignatureVerificationResultBase {
508
+ publicKeyOid: string;
509
+ cadesType: CadesType;
510
+ }
511
+
512
+ declare enum SubscriptionType {
513
+ Shallow = 0,
514
+ Deep = 1
515
+ }
516
+
517
+ declare enum Theme {
518
+ Light = 0,
519
+ Dark = 1
520
+ }
521
+ interface Themes {
522
+ get theme(): Theme;
523
+ }
524
+
525
+ interface IBimSearchSetData {
526
+ get id(): string;
527
+ get title(): string;
528
+ get query(): string;
529
+ get source(): IDataObject;
530
+ get isFolder(): boolean;
531
+ get isDeleted(): boolean;
532
+ }
533
+ interface IBimModelSearchResult {
534
+ get globalIdReadable(): string;
535
+ get modelPartId(): string;
536
+ }
537
+
538
+ interface IUserStateMachine {
539
+ get id(): string;
540
+ get title(): string;
541
+ get stateTransitions(): Map<string, ITransition[]>;
542
+ }
543
+ interface ITransition {
544
+ get stateTo(): string;
545
+ get displayName(): string;
546
+ get availableForPositionsSource(): string[];
547
+ }
548
+
549
+ interface IBimSearchSetService {
550
+ /**
551
+ * Get the first-level search sets located directly under the hidden root folder of a model.
552
+ * Does not traverse into subfolders; returns only immediate children.
553
+ * @param {string} id Model identifier whose root search-set folder is queried.
554
+ * @returns {Observable<IBimSearchSetData[]>} Emits the list of search sets at level 1, then completes.
555
+ */
556
+ getFromModel(id: string): Observable<IBimSearchSetData[]>;
557
+ /**
558
+ * Get all search sets from the hidden root folder of a model recursively.
559
+ * Traverses all nested folders and aggregates every search set found.
560
+ * @param {string} id Model identifier whose search sets are retrieved recursively.
561
+ * @returns {Observable<IBimSearchSetData[]>} Emits the flattened list of all search sets from all levels, then completes.
562
+ */
563
+ getRecursivelyFromModel(id: string): Observable<IBimSearchSetData[]>;
564
+ /**
565
+ * Get search sets directly contained in a specific search-set folder by its ID.
566
+ * Does not include items from child folders.
567
+ * @param {string} id Search-set folder identifier to read from.
568
+ * @returns {Observable<IBimSearchSetData[]>} Emits the list of immediate search sets in the folder, then completes.
569
+ */
570
+ getFromFolder(id: string): Observable<IBimSearchSetData[]>;
571
+ /**
572
+ * Execute a stored search set against specified model parts.
573
+ * @param {string} id Identifier of the search set to execute.
574
+ * @param {string[]} modelPartIds Identifiers of model parts to include in the search scope.
575
+ * @returns {Observable<IBimModelSearchResult[]>} Emits matched items for the executed search set, then completes.
576
+ */
577
+ executeSearchSet(id: string, modelPartIds: string[]): Observable<IBimModelSearchResult[]>;
578
+ /**
579
+ * Execute an ad-hoc string-based query against specified model parts.
580
+ * @param {string} query Query expression.
581
+ * @param {string[]} modelPartIds Identifiers of model parts to include in the search scope.
582
+ * @returns {Observable<IBimModelSearchResult[]>} Emits matched items for the query, then completes.
583
+ */
584
+ executeStringQuery(query: string, modelPartIds: string[]): Observable<IBimModelSearchResult[]>;
585
+ }
586
+
587
+ interface IBimFeatures {
588
+ get searchSetService(): IBimSearchSetService;
589
+ get compareDisplayParamsService(): IBimCompareDiffService;
590
+ }
591
+
592
+ interface ICommandBuilder {
593
+ command(name: string): ICommand;
594
+ fileCommand(name: string, arg: string): IFileCommand;
595
+ }
596
+ interface ICommand {
597
+ arg<T>(name: string, value: T): ICommand;
598
+ invoke<T>(): Observable<T>;
599
+ invokeBuffer(): Observable<ArrayBuffer>;
600
+ }
601
+ interface IFileCommand {
602
+ file(file: File): IFileCommand;
603
+ files(files: File[]): IFileCommand;
604
+ invoke<T>(): Observable<HttpEvent<T>>;
605
+ }
606
+
607
+ /**
608
+ *
609
+ */
610
+ interface ICommandBuilderProvider {
611
+ /**
612
+ *
613
+ */
614
+ newCommandBuilder(): ICommandBuilder;
615
+ }
616
+
617
+ declare class InjectionSource {
618
+ private _modifierProvider;
619
+ private _objectsRepository;
620
+ private _renderContextProvider;
621
+ private _repositoryEvents;
622
+ private _progressService;
623
+ private _themeService;
624
+ private _commandBuilderProvider;
625
+ private _personalSettings;
626
+ private _dialogService;
627
+ private _bimFeatures;
628
+ constructor(_modifierProvider: IModifierProvider, _objectsRepository: IObjectsRepository, _renderContextProvider: IRenderContextProvider, _repositoryEvents: IRepositoryEvents, _progressService: IProgressService, _themeService: IThemeService, _commandBuilderProvider: ICommandBuilderProvider, _personalSettings: IPersonalSettings, _dialogService: IDialogService, _bimFeatures: IBimFeatures);
629
+ get modifierProvider(): IModifierProvider;
630
+ get objectsRepository(): IObjectsRepository;
631
+ get renderContextProvider(): IRenderContextProvider;
632
+ get repositoryEvents(): IRepositoryEvents;
633
+ get progressService(): IProgressService;
634
+ get themeService(): IThemeService;
635
+ get personalSettings(): IPersonalSettings;
636
+ get commandBuilderProvider(): ICommandBuilderProvider;
637
+ get dialogService(): IDialogService;
638
+ get bimFeatures(): IBimFeatures;
639
+ }
640
+
641
+ /**
642
+ * Represents the repository that provides access to objects, types, organisation units and people
643
+ */
644
+ interface IObjectsRepository {
645
+ /**
646
+ * Get objects with specified ids
647
+ *
648
+ * @param ids Ids of objects to subsribe
649
+ * @returns
650
+ */
651
+ getObjects(ids: string[]): Observable<IDataObject[]>;
652
+ /**
653
+ * Get object's access for the person
654
+ *
655
+ * @param objectId Object id
656
+ * @param personId Person Id
657
+ * @returns Cold Observable
658
+ */
659
+ getCurrentAccess(objectId: string, personId: number): Observable<AccessLevel>;
660
+ /**
661
+ * Get access records for the object
662
+ *
663
+ * @param objectId Object id
664
+ * @param positions Person position ids
665
+ * @returns Cold Observable
666
+ */
667
+ getAccessRecords(objectId: string, positions: number[]): Observable<IAccessRecord[]>;
668
+ /**
669
+ * Gets the person with specified id
670
+ *
671
+ * @param id Person id
672
+ * @returns Person
673
+ */
674
+ getPerson(id: number): IPerson;
675
+ /**
676
+ * Gets the current person
677
+ *
678
+ * @returns Person
679
+ */
680
+ getCurrentPerson(): IPerson;
681
+ /**
682
+ * Gets all the people registred in database
683
+ *
684
+ * @returns Person[]
685
+ */
686
+ getPeople(): IPerson[];
687
+ /**
688
+ * Gets type by identifier
689
+ *
690
+ * @returns Type
691
+ */
692
+ getType(id: number): IType;
693
+ /**
694
+ * Gets type by name
695
+ *
696
+ * @returns Type
697
+ */
698
+ getTypeByName(name: string): IType;
699
+ /**
700
+ * Gets all the types registered in database
701
+ *
702
+ * @returns Type[]
703
+ */
704
+ getTypes(): IType[];
705
+ /**
706
+ * Gets organisation unit by identifier
707
+ *
708
+ * @returns OrganisationUnit
709
+ */
710
+ getOrganisationUnit(id: number): IOrganisationUnit;
711
+ /**
712
+ * Get all the organisation units registered in database
713
+ *
714
+ * @returns OrganisationUnit
715
+ */
716
+ getOrganisationUnits(): IOrganisationUnit[];
717
+ /**
718
+ * Get user state by identifier
719
+ *
720
+ * @returns IUserState
721
+ */
722
+ getUserState(id: string): IUserState;
723
+ /**
724
+ * Get all user states registered in database
725
+ *
726
+ * @returns IUserState[]
727
+ */
728
+ getUserStates(): IUserState[];
729
+ /**
730
+ * Get user state machine by identifier
731
+ *
732
+ * @returns IUserStateMachine
733
+ */
734
+ getUserStateMachine(id: string): IUserStateMachine;
735
+ /**
736
+ * Get all user state machines registered in database
737
+ *
738
+ * @returns Map<string, IUserStateMachine>
739
+ */
740
+ getUserStateMachines(): Map<string, IUserStateMachine>;
741
+ }
742
+
743
+ /**
744
+ * Context for document render
745
+ */
746
+ declare class RenderContext {
747
+ private readonly _dataObject;
748
+ private readonly _selectedVersion;
749
+ constructor(dataObject: IDataObject, selectedVersion: string);
750
+ /**
751
+ * Target object
752
+ */
753
+ get dataObject(): IDataObject;
754
+ /**
755
+ * Selected version time
756
+ */
757
+ get selectedVersion(): string;
758
+ }
759
+
760
+ /**
761
+ * Provides render context
762
+ */
763
+ interface IRenderContextProvider {
764
+ /**
765
+ *
766
+ */
767
+ getRenderContext(): RenderContext;
768
+ }
769
+
770
+ /**
771
+ * Interface for modifying digital signature requests.
772
+ */
773
+ interface ISignatureModifier {
774
+ /**
775
+ * Creates a new signature request with the given ID.
776
+ *
777
+ * @param signatureRequestId - The ID of the signature request to create.
778
+ * @returns An instance of ISignatureBuilder for further configuration.
779
+ */
780
+ create(signatureRequestId: string): ISignatureBuilder;
781
+ /**
782
+ * Edits an existing signature request with the given ID.
783
+ *
784
+ * @param signatureRequest - The signature request to edit.
785
+ * @returns An instance of ISignatureBuilder for further configuration.
786
+ */
787
+ edit(signatureRequest: ISignatureRequest): ISignatureBuilder;
788
+ /**
789
+ * Removes an existing signature request with the given ID.
790
+ *
791
+ * @param signatureRequestId - The ID of the signature request to remove.
792
+ */
793
+ remove(signatureRequestId: string): void;
794
+ }
795
+ /**
796
+ * Interface for building digital signature requests.
797
+ */
798
+ interface ISignatureBuilder {
799
+ /**
800
+ * Sets the position ID for the signature.
801
+ *
802
+ * @param positionId - The ID of the person position associated with the request.
803
+ * @returns This instance of ISignatureBuilder for method chaining.
804
+ */
805
+ withPositionId(positionId: number): ISignatureBuilder;
806
+ /**
807
+ * Sets the role for the signature.
808
+ *
809
+ * @param role - The role associated with the signature.
810
+ * @returns This instance of ISignatureBuilder for method chaining.
811
+ */
812
+ withRole(role: string): ISignatureBuilder;
813
+ /**
814
+ * Sets the flag sign for the signature.
815
+ *
816
+ * @param sign - The sign associated with the signature.
817
+ * @returns This instance of ISignatureBuilder for method chaining.
818
+ */
819
+ withSign(sign: string): ISignatureBuilder;
820
+ /**
821
+ * Sets the request signer for the signature.
822
+ *
823
+ * @param requestSigner - The request signer associated with the signature.
824
+ * @returns This instance of ISignatureBuilder for method chaining.
825
+ */
826
+ withRequestSigner(requestSigner: string): ISignatureBuilder;
827
+ /**
828
+ * Sets the object ID for the signature.
829
+ *
830
+ * @param objectId - The ID of the object associated with the signature.
831
+ * @returns This instance of ISignatureBuilder for method chaining.
832
+ */
833
+ withObjectId(objectId: string): ISignatureBuilder;
834
+ /**
835
+ * Set certificate's public key oid for the signature.
836
+ *
837
+ * @param publicKeyOid - certificate's public key oid.
838
+ * @returns This instance of ISignatureBuilder for method chaining.
839
+ */
840
+ withPublicKeyOid(publicKeyOid: string): ISignatureBuilder;
841
+ /**
842
+ * Set cades type of last signature.
843
+ *
844
+ * @param cadesType - cades type.
845
+ * @returns This instance of ISignatureBuilder for method chaining.
846
+ */
847
+ withLastSignCadesType(cadesType: CadesType): ISignatureBuilder;
848
+ /**
849
+ * Set requirement property for advancement of the signature.
850
+ *
851
+ * @param needAdvancement - signature needs advancement.
852
+ * @returns This instance of ISignatureBuilder for method chaining.
853
+ */
854
+ withIsAdvancementRequired(needAdvancement: boolean): ISignatureBuilder;
855
+ }
856
+
857
+ /**
858
+ * Fluent interface that enables you to modify the associated object
859
+ */
860
+ interface IObjectBuilder {
861
+ /**
862
+ * Sets the string attribute value
863
+ *
864
+ * @param name Attribute name
865
+ * @param value Attribute value
866
+ * @returns Self
867
+ */
868
+ setAttribute(name: string, value: any, type: AttributeType): IObjectBuilder;
869
+ /**
870
+ * Adds access record to an object
871
+ *
872
+ * @param record Access record
873
+ * @returns Self
874
+ */
875
+ setAccess(record: IAccessRecord): IObjectBuilder;
876
+ /**
877
+ * Removes access record
878
+ *
879
+ * @param record Access record
880
+ * @returns Self
881
+ */
882
+ removeAccess(record: IAccessRecord): IObjectBuilder;
883
+ /**
884
+ * Adds a relation
885
+ *
886
+ * @param relation Relation
887
+ * @returns Self
888
+ */
889
+ addRelation(relation: IRelation): IObjectBuilder;
890
+ /**
891
+ * Removes relation
892
+ *
893
+ * @param relationId Relation id
894
+ * @returns Self
895
+ */
896
+ removeRelation(relationId: string): IObjectBuilder;
897
+ /**
898
+ * Sets new type. It is recommended to use this method only for recovering permanently deleted objects. In other cases, this can lead to system malfunction.
899
+ *
900
+ * @param typeId Type id
901
+ * @returns Self
902
+ */
903
+ setTypeId(typeId: number): IObjectBuilder;
904
+ /**
905
+ * Sets new parent
906
+ *
907
+ * @param parentId Parent id
908
+ * @returns Self
909
+ */
910
+ setParentId(parentId: string): IObjectBuilder;
911
+ /**
912
+ * Adds children to the associated object.
913
+ *
914
+ * The child must also reference this object as its parent in the same changeset.
915
+ *
916
+ * @param children Child object identifiers and types
917
+ * @returns Self
918
+ */
919
+ addChildren(children: IChild[]): IObjectBuilder;
920
+ /**
921
+ * Removes children from the associated object.
922
+ *
923
+ * @param children Child object identifiers and types
924
+ * @returns Self
925
+ */
926
+ removeChildren(children: IChild[]): IObjectBuilder;
927
+ /**
928
+ * Adds file snapshot
929
+ *
930
+ * @param reason Reason
931
+ * @returns Self
932
+ */
933
+ createSnapshot(reason: string): IObjectBuilder;
934
+ /**
935
+ * Makes file snapshot actual
936
+ *
937
+ * @param version Version of file snapshot to make actual
938
+ * @param reason Reason
939
+ * @returns Self
940
+ */
941
+ createSnapshotFrom(version: string, reason: string): IObjectBuilder;
942
+ /**
943
+ * Adds a new file to the associated object
944
+ *
945
+ * @param file File identificator
946
+ * @param file File interface
947
+ * @param creationTime File creation time
948
+ * @param lastAccessTime File last access time
949
+ * @param lastWriteTime File last write time
950
+ * @returns Fluent interface that enables you to modify the associated object
951
+ */
952
+ addFile(fileId: string, file: File, creationTime: Date, lastAccessTime: Date, lastWriteTime: Date): IObjectBuilder;
953
+ /**
954
+ * Removes file from actual file snapshot by identifier
955
+ * @param fileId file identificator
956
+ * @returns Fluent interface that enables you to modify the associated object
957
+ */
958
+ removeFile(fileId: string): IObjectBuilder;
959
+ /**
960
+ * Sets permanently deleted flag
961
+ *
962
+ * @param isDeleted Value
963
+ * @returns Self
964
+ */
965
+ setIsDeleted(isDeleted: boolean): IObjectBuilder;
966
+ /**
967
+ * Set flag in recycle bin
968
+ *
969
+ * @param isInRecycleBin Value
970
+ * @returns Self
971
+ */
972
+ setIsInRecycleBin(isInRecycleBin: boolean): IObjectBuilder;
973
+ /**
974
+ * Sets frozen flag
975
+ *
976
+ * @param isFreezed Value
977
+ * @returns Self
978
+ */
979
+ setIsFreezed(isFreezed: boolean): IObjectBuilder;
980
+ /**
981
+ * Sets object's secret info
982
+ *
983
+ * @param isSecret Value
984
+ * @returns Self
985
+ */
986
+ setIsSecret(isSecret: boolean): IObjectBuilder;
987
+ /**
988
+ * Adds or changes a annotation
989
+ *
990
+ * @param container Annotation container
991
+ * @param attrbutes Annotation attributes
992
+ * @returns Self
993
+ */
994
+ addAnnotationContainer(container: IAnnotationContainer, attrbutes: any): IObjectBuilder;
995
+ /**
996
+ *
997
+ * @param markups
998
+ */
999
+ addMarkups(markups: IMarkup[]): IObjectBuilder;
1000
+ /**
1001
+ * Sets new signature requests to the selected file
1002
+ *
1003
+ * @param fileId file id
1004
+ * @returns Fluent interface that enables you to modify the signatures of the filtered files
1005
+ */
1006
+ setSignatures(fileId: string): ISignatureModifier;
1007
+ }
1008
+
1009
+ /**
1010
+ * Creates, modifies and deletes objects
1011
+ */
1012
+ interface IModifier {
1013
+ /**
1014
+ * Creates a new object
1015
+ *
1016
+ * @param id New object id
1017
+ * @param parentId Parent id
1018
+ * @param typeId Creating object's type id
1019
+ * @return Fluent interface that enables you to modify created object
1020
+ */
1021
+ create(id: string, parentId: string, typeId: number): IObjectBuilder;
1022
+ /**
1023
+ * Edits existing object
1024
+ *
1025
+ * @param id Id of object to modify
1026
+ * @returns Fluent interface that enables you to modify created object
1027
+ */
1028
+ edit(id: string): IObjectBuilder;
1029
+ /**
1030
+ * Applies all the changes have been made in modifier
1031
+ *
1032
+ * @returns Created and edited objects wrapped in cold Observable
1033
+ */
1034
+ apply(): Observable$1<IDataObject[]>;
1035
+ }
1036
+
1037
+ /**
1038
+ * Provides modifier
1039
+ */
1040
+ interface IModifierProvider {
1041
+ /**
1042
+ *
1043
+ */
1044
+ newModifier(): IModifier;
1045
+ }
1046
+
1047
+ /**
1048
+ * Notifies on change events
1049
+ */
1050
+ interface IRepositoryEvents {
1051
+ /**
1052
+ * Subsribes to changes in objects with specified identifiers
1053
+ *
1054
+ * @returns Hot observable
1055
+ */
1056
+ subscribeObjects(ids: string[]): Observable<IDataObject>;
1057
+ /**
1058
+ * Subsribes to changes in people
1059
+ *
1060
+ * @returns Hot observable
1061
+ */
1062
+ subscribePeople(): Observable<IPerson>;
1063
+ /**
1064
+ * Subsribes to changes in types
1065
+ *
1066
+ * @returns Hot observable
1067
+ */
1068
+ subscribeTypes(): Observable<IType>;
1069
+ /**
1070
+ * Subsribes to changes in organisation units
1071
+ *
1072
+ * @returns Hot observable
1073
+ */
1074
+ subscribeOrganisationUnits(): Observable<IOrganisationUnit>;
1075
+ }
1076
+
1077
+ /**
1078
+ *
1079
+ */
1080
+ interface IProgressService {
1081
+ get percentage(): Observable<number>;
1082
+ get isOpen(): boolean;
1083
+ open(mode: ProgressBarMode): void;
1084
+ update(percentage: number): void;
1085
+ reset(): void;
1086
+ close(): void;
1087
+ }
1088
+ declare enum ProgressBarMode {
1089
+ Determinate = 0,
1090
+ Indeterminate = 1,
1091
+ Buffer = 2,
1092
+ Query = 3
1093
+ }
1094
+
1095
+ interface IThemeService {
1096
+ get themes(): Themes;
1097
+ get change(): Observable<Themes>;
1098
+ }
1099
+
1100
+ /**
1101
+ * Interface for personal settings
1102
+ * @interface IPersonalSettings
1103
+ */
1104
+ interface IPersonalSettings {
1105
+ /**
1106
+ * Retrieves the personal setting value for a given key
1107
+ * @method getPersonalSettingValue
1108
+ * @param {string} key - The key of the setting to retrieve
1109
+ * @returns {Observable<string | undefined>} An observable containing the setting value or undefined
1110
+ * @memberof IPersonalSettings
1111
+ */
1112
+ getPersonalSettingValue(key: string): Observable<string | undefined>;
1113
+ /**
1114
+ * Subscribes to the personal setting value changes for a given key
1115
+ * @method subscribePersonalSettingValueChange
1116
+ * @param {string} key - The key of the setting to retrieve
1117
+ * @returns {Observable<string | undefined>} An observable containing the setting value or undefined
1118
+ * @memberof IPersonalSettings
1119
+ */
1120
+ subscribePersonalSettingValueChange(key: string): Observable<string | undefined>;
1121
+ /**
1122
+ * Retrieves the common setting value for a given key
1123
+ * @method getCommonSettingValue
1124
+ * @param {string} key - The key of the setting to retrieve
1125
+ * @returns {Observable<string[]>} An observable containing the array of common setting values
1126
+ * @memberof IPersonalSettings
1127
+ */
1128
+ getCommonSettingValue(key: string): Observable<string[]>;
1129
+ /**
1130
+ * Subscribes to the common setting value changes for a given key
1131
+ * @method subscribeCommonSettingValueChange
1132
+ * @param {string} key - The key of the setting to retrieve
1133
+ * @returns {Observable<string[]>} An observable containing the setting value or undefined
1134
+ * @memberof IPersonalSettings
1135
+ */
1136
+ subscribeCommonSettingValueChange(key: string): Observable<string[]>;
1137
+ /**
1138
+ * Changes the value of a setting
1139
+ * @method changeSettingValue
1140
+ * @param {string} key - The key of the setting to change
1141
+ * @param {string} value - The new value of the setting
1142
+ * @returns {Observable<void>}
1143
+ * @memberof IPersonalSettings
1144
+ */
1145
+ changeSettingValue(key: string, value: string): Observable<void>;
1146
+ }
1147
+
1148
+ interface IBaseDialogOptions {
1149
+ /** Кастомный заголовок диалогового окна. */
1150
+ title?: string;
1151
+ /** Ширина диалога */
1152
+ width?: string;
1153
+ /** Высота диалога */
1154
+ height?: string;
1155
+ }
1156
+ /**
1157
+ * Свойства конфигурации диалогового окна выбора документов.
1158
+ */
1159
+ interface IDocumentExplorerDialogProperties extends IBaseDialogOptions {
1160
+ /** Настройки кнопки подтверждения. */
1161
+ confirm: {
1162
+ /** Текст на кнопке подтверждения (например, "Выбрать" или "Сохранить"). */
1163
+ title: string;
1164
+ /** Всплывающая подсказка при наведении на кнопку. */
1165
+ tooltip?: string;
1166
+ };
1167
+ /** Разрешить ли выбор нескольких документов одновременно. */
1168
+ multiselect: boolean;
1169
+ /** Список разрешенных расширений или типов файлов (например, `['.pdf', '.docx']`). Если не указан, разрешены все типы. */
1170
+ allowedTypes?: string[];
1171
+ }
1172
+ /**
1173
+ * Свойства конфигурации диалогового окна выбора организационных единиц.
1174
+ */
1175
+ interface IOrgUnitDialogProperties extends IBaseDialogOptions {
1176
+ /** Разрешить ли выбор нескольких элементов одновременно. */
1177
+ allowMultiSelect: boolean;
1178
+ /** Отображать ли группы в дереве организационной структуры. */
1179
+ showGroups?: boolean;
1180
+ /** Идентификаторы (ID) элементов, которые должны быть выбраны по умолчанию при открытии. */
1181
+ selected?: number[];
1182
+ /** Идентификаторы (ID) элементов, доступных только для чтения (пользователь не сможет снять с них выбор). */
1183
+ readonly?: number[];
1184
+ /** Идентификатор корневого подразделения, с которого начинается построение дерева. */
1185
+ rootDepartmentId?: number;
1186
+ /** Разрешить ли пользователю выбирать конкретные должности (позиции). */
1187
+ isPositionCheckable?: boolean;
1188
+ /** Разрешить ли пользователю выбирать подразделения (департаменты). */
1189
+ isDepartmentCheckable?: boolean;
1190
+ }
1191
+ interface IPilotDialogOptions extends IBaseDialogOptions {
1192
+ checkedNodes?: string[];
1193
+ }
1194
+ type PltBalloonHorizontalPosition = 'start' | 'center' | 'end' | 'left' | 'right';
1195
+ type PltBalloonVerticalPosition = 'top' | 'bottom';
1196
+ /**
1197
+ * Конфигурация свойств для отображения всплывающего уведомления (балуна).
1198
+ */
1199
+ type PltBalloonProperties = {
1200
+ /** Текст сообщения или описание уведомления. Поддерживает многострочный текст. */
1201
+ message: string;
1202
+ /**
1203
+ * Иконка для отображения слева от текста.
1204
+ * Может принимать:
1205
+ * - Имя стандартного глифа Angular Material (например, `'check_circle'`, `'error'`)
1206
+ * - Строку в формате Base64 (как с префиксом `data:image/...`, так и чистый код)
1207
+ * - `null` или `undefined`, если иконку выводить не нужно
1208
+ */
1209
+ icon?: string | undefined | null;
1210
+ /**
1211
+ * Идентификатор или имя действия (экшена) при клике на уведомление.
1212
+ * Используется для обработки интерактивных событий (например, `'retry'`, `'open_link'`).
1213
+ * Если действие не предусмотрено, передается `null` или `undefined`.
1214
+ */
1215
+ action?: string | undefined | null;
1216
+ /**
1217
+ * Определяет, нужно ли отображать кнопку закрытия («крестик»).
1218
+ * @default false
1219
+ */
1220
+ showClose?: boolean;
1221
+ /** Время в миллисекундах, которое необходимо подождать, прежде чем всплывающее уведомление автоматически закроется. */
1222
+ duration?: number;
1223
+ /** Горизонтальное положение для размещения всплывающего уведомления. */
1224
+ horizontalPosition?: PltBalloonHorizontalPosition;
1225
+ /** Вертикальное положение для размещения всплывающего уведомления. */
1226
+ verticalPosition?: PltBalloonVerticalPosition;
1227
+ };
1228
+
1229
+ interface ICustomDialogContext {
1230
+ data: unknown | undefined;
1231
+ }
1232
+ declare class DialogContext implements ICustomDialogContext {
1233
+ private readonly _data;
1234
+ constructor(_data: unknown | undefined);
1235
+ get data(): unknown | undefined;
1236
+ }
1237
+
1238
+ declare const DialogType: {
1239
+ readonly PositionSelector: "position-selector";
1240
+ readonly DocumentSelector: "document-selector";
1241
+ readonly ReferenceBook: "reference-book";
1242
+ readonly ElementBook: "element-book";
1243
+ readonly ObjectEditor: "object-editor";
1244
+ readonly ObjectCreator: "object-creator";
1245
+ readonly Custom: "custom-dialog";
1246
+ };
1247
+ /**
1248
+ *
1249
+ */
1250
+ type DialogType = typeof DialogType[keyof typeof DialogType];
1251
+ /**
1252
+ * Контексты каждого диалога с входными и выходными параметрами
1253
+ */
1254
+ interface IDialogSpecification {
1255
+ [DialogType.PositionSelector]: {
1256
+ context: {
1257
+ properties?: IOrgUnitDialogProperties;
1258
+ };
1259
+ result: IOrganisationUnit[];
1260
+ };
1261
+ [DialogType.DocumentSelector]: {
1262
+ context: {
1263
+ id: string;
1264
+ properties?: IDocumentExplorerDialogProperties;
1265
+ };
1266
+ result: IDataObject[];
1267
+ };
1268
+ [DialogType.ReferenceBook]: {
1269
+ context: {
1270
+ configuration: string;
1271
+ options?: IPilotDialogOptions;
1272
+ };
1273
+ result: IDataObject[];
1274
+ };
1275
+ [DialogType.ElementBook]: {
1276
+ context: {
1277
+ configuration: string;
1278
+ options?: IPilotDialogOptions;
1279
+ };
1280
+ result: IDataObject[];
1281
+ };
1282
+ [DialogType.Custom]: {
1283
+ context: {
1284
+ viewId: string;
1285
+ dialogContext: ICustomDialogContext;
1286
+ options?: IBaseDialogOptions;
1287
+ };
1288
+ result: unknown;
1289
+ };
1290
+ [DialogType.ObjectEditor]: {
1291
+ context: {
1292
+ objectId: string;
1293
+ showPreview?: boolean;
1294
+ };
1295
+ result: boolean;
1296
+ };
1297
+ [DialogType.ObjectCreator]: {
1298
+ context: {
1299
+ parentId: string;
1300
+ typeId: number;
1301
+ showPreview?: boolean;
1302
+ };
1303
+ result: boolean;
1304
+ };
1305
+ }
1306
+ type DialogTypeMap = {
1307
+ [K in DialogType]: IDialogSpecification[K]['context'];
1308
+ };
1309
+ type DialogResultMap = {
1310
+ [K in DialogType]: IDialogSpecification[K]['result'];
1311
+ };
1312
+
1313
+ /**
1314
+ * Сервис для управления модальными окнами, диалогами выбора данных и системными уведомлениями.
1315
+ *
1316
+ * Обеспечивает единую строго типизированную точку входа для открытия коробочных
1317
+ * и кастомных диалогов плагинов, а также ленивую загрузку (lazy loading) их UI-компонентов.
1318
+ */
1319
+ interface IDialogService {
1320
+ /**
1321
+ * Открывает строго типизированное диалоговое окно на основе его типа.
1322
+ *
1323
+ * @template T Тип открываемого диалога, ограниченный доступными значениями из `DialogType`.
1324
+ * @param type Уникальный идентификатор диалога (константа из `DialogType`).
1325
+ * @param context Входной контекст с данными, структура которого жестко привязана к выбранному типу диалога.
1326
+ * @returns Observable, который эмитит результат работы диалога (`DialogResultMap[T]`) при его успешном подтверждении и завершается (complete).
1327
+ *
1328
+ * @example
1329
+ * // Пример 1: Открытие селектора документов с автокомплитом типов
1330
+ * dialogService.openDialog(DialogType.DocumentSelector, {
1331
+ * id: 'session-123',
1332
+ * title: 'Выберите отчеты',
1333
+ * properties: { allowMultiSelect: true, objectTypeIds: [1, 2] }
1334
+ * }).subscribe((documents) => {
1335
+ * // TypeScript автоматически знает, что documents — это IDataObject[]
1336
+ * console.log(`Пользователь выбрал ${documents.length} элементов.`);
1337
+ * });
1338
+ *
1339
+ * @example
1340
+ * // Пример 2: Вызов диалога-редактора, который ничего не возвращает (void)
1341
+ * dialogService.openDialog(DialogType.TaskEditor, {
1342
+ * taskId: 'guid-string',
1343
+ * title: 'Редактирование задания',
1344
+ * isReadonly: false
1345
+ * }).subscribe(() => {
1346
+ * console.log('Редактор задачи успешно закрыт.');
1347
+ * });
1348
+ */
1349
+ openDialog<T extends DialogType>(type: T, context: DialogTypeMap[T]): Observable<DialogResultMap[T]>;
1350
+ /**
1351
+ * Отображает всплывающее немодальное уведомление (балун) на основе предоставленной конфигурации.
1352
+ *
1353
+ * Метод автоматически определяет тип иконки (Material Icon, SVG или растровая картинка в Base64).
1354
+ *
1355
+ * @param properties Объект конфигурации балуна (сообщение, заголовок, иконка, кнопка действия).
1356
+ * @returns Observable<void>, который генерирует событие при клике пользователя на кнопку действия (action) или закрывается.
1357
+ *
1358
+ * @example
1359
+ * // Пример 1: Простое информационное уведомление с кнопкой закрытия
1360
+ * dialogService.showBalloon({
1361
+ * message: 'Изменения успешно сохранены в системе',
1362
+ * icon: 'about',
1363
+ * showClose: true
1364
+ * });
1365
+ *
1366
+ * @example
1367
+ * // Пример 2: Подписка на интерактивное действие внутри балуна (Action)
1368
+ * dialogService.showBalloon({
1369
+ * message: 'Доступна новая версия веб-клиента Pilot',
1370
+ * icon: 'update',
1371
+ * action: 'Обновить страницу'
1372
+ * }).subscribe(() => {
1373
+ * console.log('Пользователь кликнул на кнопку действия. Перезагружаем интерфейс...');
1374
+ * window.location.reload();
1375
+ * });
1376
+ */
1377
+ showBalloon(properties: PltBalloonProperties): Observable<void>;
1378
+ }
1379
+
1380
+ declare class BimElementPanelContext {
1381
+ private readonly _modelId;
1382
+ private readonly _viewer;
1383
+ constructor(modelId: string, viewer: PilotWeb3D.Viewer3D);
1384
+ get modelId(): string;
1385
+ get viewer(): PilotWeb3D.Viewer3D;
1386
+ }
1387
+
1388
+ declare class BimRightPanelContext {
1389
+ private readonly _modelId;
1390
+ private readonly _viewer;
1391
+ constructor(modelId: string, viewer: PilotWeb3D.Viewer3D);
1392
+ get modelId(): string;
1393
+ get viewer(): PilotWeb3D.Viewer3D;
1394
+ }
1395
+
1396
+ /**
1397
+ * Contex for objects view
1398
+ */
1399
+ declare class ObjectsViewContext {
1400
+ private readonly _selectedObjects;
1401
+ private readonly _shortcuts;
1402
+ private readonly _context;
1403
+ constructor(selectedObjects: IDataObject[], context: IDataObject, shortcuts?: IDataObject[]);
1404
+ /**
1405
+ *
1406
+ */
1407
+ get selectedObjects(): IDataObject[];
1408
+ /**
1409
+ *
1410
+ */
1411
+ get contextObject(): IDataObject;
1412
+ /**
1413
+ *
1414
+ */
1415
+ get shortcuts(): IDataObject[];
1416
+ }
1417
+
1418
+ /**
1419
+ * Context for document annotations list
1420
+ */
1421
+ declare class DocumentAnnotationsListContext {
1422
+ private readonly _selectedAnnotations;
1423
+ constructor(selectedAnnotations: IAnnotationContainerObject[]);
1424
+ /**
1425
+ *
1426
+ */
1427
+ get selectedAnnotations(): IAnnotationContainerObject[];
1428
+ }
1429
+
1430
+ declare class ObjectCardContext {
1431
+ private readonly _currentObjectId;
1432
+ private readonly _displayAttributes;
1433
+ private readonly _attributesValues;
1434
+ private readonly _type;
1435
+ private readonly _editedObject;
1436
+ private readonly _parentId;
1437
+ private readonly _isReadOnly;
1438
+ constructor(currentObjectId: string, displayAttributes: IAttribute[], attributesValues: Map<string, unknown>, type: IType, editedObject: IDataObject | null, parentId: string, isReadOnly: boolean);
1439
+ /**
1440
+ * Current object id for which the card is shown.
1441
+ *
1442
+ * It's an existing object id or a generated id that will be assigned to a new object.
1443
+ */
1444
+ get currentObjectId(): string;
1445
+ /**
1446
+ * List of all visible attributes in object's card
1447
+ */
1448
+ get displayAttributes(): IAttribute[];
1449
+ /**
1450
+ * The set of current attributes values
1451
+ */
1452
+ get attributesValues(): Map<string, unknown>;
1453
+ /**
1454
+ * Type of current object
1455
+ */
1456
+ get type(): IType;
1457
+ /**
1458
+ * Current object the card is shown for. Null if card is shown to create a new object
1459
+ */
1460
+ get editedObject(): IDataObject | null;
1461
+ /**
1462
+ * ParentId of the current object
1463
+ */
1464
+ get parentId(): string;
1465
+ /**
1466
+ * True if the card is shown in read only mode and not available for modification
1467
+ */
1468
+ get isReadOnly(): boolean;
1469
+ }
1470
+
1471
+ declare class PageContext {
1472
+ }
1473
+
1474
+ /**
1475
+ * Extension interface that enables you to register the view on settings dialog
1476
+ * @interface ISettingsFeature
1477
+ * @exposedInterface
1478
+ */
1479
+ declare abstract class ISettingsFeature {
1480
+ constructor();
1481
+ /**
1482
+ * Gets the unique id of the settings item
1483
+ * @readonly
1484
+ * @type {string}
1485
+ * @memberof ISettingsFeature
1486
+ */
1487
+ get key(): string;
1488
+ /**
1489
+ * Gets the display title of the settings item
1490
+ * @readonly
1491
+ * @type {string}
1492
+ * @memberof ISettingsFeature
1493
+ */
1494
+ get title(): string;
1495
+ /**
1496
+ * Gets the value editor view id for the settings feature item
1497
+ *
1498
+ * Is matched with corresponding IOpenspaceView's `getViewId(): string`
1499
+ * @readonly
1500
+ * @type {string}
1501
+ * @memberof ISettingsFeature
1502
+ */
1503
+ get editorViewId(): string;
1504
+ }
1505
+
1506
+ /**
1507
+ * Interface for a personal setting value provider
1508
+ * @interface ISettingValueProvider
1509
+ */
1510
+ declare abstract class ISettingValueProvider {
1511
+ constructor();
1512
+ /**
1513
+ * Gets the current setting value.
1514
+ * @returns {string} The current setting value.
1515
+ */
1516
+ getValue(): string;
1517
+ /**
1518
+ * Sets the setting value.
1519
+ * @param {string} value - The new setting value.
1520
+ */
1521
+ setValue(value: string): void;
1522
+ }
1523
+
1524
+ declare class SystemSettingsKeys {
1525
+ /**
1526
+ * Get's favorites feature key
1527
+ */
1528
+ static readonly favoritesFeatureKey = "Favorites-880e609e-54f9-4463-9c5e-f2b742a944dc";
1529
+ /**
1530
+ * Get's pilot storage drive letter feature key
1531
+ */
1532
+ static readonly pilotStorageDriveLetter = "PilotStorageDriveLetter-880e609e-54f9-4463-9c5e-f2b742a944dc";
1533
+ /**
1534
+ * Get's agreement roles feature key
1535
+ */
1536
+ static readonly agreementRolesFeatureKey = "AgreementRoles-0a782ccd-adb3-484f-8fb2-a6c58fc5a61d";
1537
+ /**
1538
+ * Get's tasks filters feature key
1539
+ */
1540
+ static readonly tasksFiltersFeatureKey = "TasksFilters-deab09c1-2276-457b-a59b-5682baec43c7";
1541
+ /**
1542
+ * Get's tasks groupings feature key
1543
+ */
1544
+ static readonly tasksGroupingsFeatureKey = "TasksGroupings-B66B65E3-8B6D-4468-BF07-869B03E7D62B";
1545
+ /**
1546
+ * Get's annotation filter feature key
1547
+ */
1548
+ static readonly annotationFilterFeatureKey = "AnnotationFilter-F151E782-6CEB-44AF-ADF1-AFB0A0FAB95E";
1549
+ /**
1550
+ * Get's annotation filter feature key
1551
+ */
1552
+ static readonly personalAnnotationFilterFeatureKey = "PersonalAnnotationFilter-9382f499-c1b9-433f-95bb-d83195d52121";
1553
+ /**
1554
+ * Get's mounted on Pilot-Storage items feature key
1555
+ */
1556
+ static readonly mountedItemsList = "MountedItems-29eff31a-8bd2-40a2-bdac-c020db132c8b";
1557
+ /**
1558
+ * Get's Pilot-Storage work folders feature key
1559
+ */
1560
+ static readonly workfoldersList = "Workfolders-C4A424C8-AE20-4277-9CA5-94629CEB1B86";
1561
+ /**
1562
+ * Get's selection path of the DocumentsExplorer
1563
+ */
1564
+ static readonly tabsState = "TabsState-9b9e6a36-013a-423c-9599-c6edc32a5b4f";
1565
+ /**
1566
+ * Get's auto blocking file extensions feature key
1567
+ */
1568
+ static readonly autoBlockingFileExtensionsFeatureKey = "AutoBlockingFileExtensions-1bb027f4-7dd0-4aec-8c0d-cffe63bfcbb3";
1569
+ /**
1570
+ * Get's auto commiting file extensions feature key
1571
+ */
1572
+ static readonly autoCommitingFileExtensionsFeatureKey = " AutoCommitingFileExtensions-2d0de5a1-f6c1-426e-b3e6-610dfb4b2666";
1573
+ /**
1574
+ * Get's auto updating files feature key
1575
+ */
1576
+ static readonly autoUpdatingFilesFeatureKey = "AutoUpdatingFileExtensions-6FB5DE6C-96B2-4F84-8650-7A2EB102EAC5";
1577
+ /**
1578
+ * Get's auto publishing settings feature key
1579
+ */
1580
+ static readonly autoPublishingExtensionsFeatureKey = "AutoPublishingExtensions-F6FF1869-DBC2-4253-A5AA-7B225D69E416";
1581
+ /**
1582
+ * Get's eml attributes dictionary feature key
1583
+ */
1584
+ static readonly emlAttributesDictionaryKeyFeatureKey = "EmlAttributesDictionary-354AB75D-A421-4836-A343-16FEC3014A4F";
1585
+ /**
1586
+ * Get's documents autofill feature key
1587
+ */
1588
+ static readonly docsAutoFillFeatureKey = "DocsAutoFillFeatureKey-d19b557b-2109-4221-8970-794372039186";
1589
+ /**
1590
+ * User-defined temp files regex masks
1591
+ */
1592
+ static readonly tempFileMasksFeatureKey = "TempFileMasksFeatureKey-388BD8A4-E7C0-48DD-B235-8C05030CFCF3";
1593
+ /**
1594
+ * User-defined Export/Import settings
1595
+ */
1596
+ static readonly exportImportFeatureKey = "ExportImportFeatureKey-4697EA6F-E018-4989-929D-992D1176CC3C";
1597
+ /**
1598
+ * User-defined digital signature title
1599
+ */
1600
+ static readonly digitalSignatureTitleFeatureKey = "DigitalSignatureTitleFeatureKey-481EFA14-B116-434A-BAD6-F90DB883DEC9";
1601
+ /**
1602
+ * Enhanced signature service settings
1603
+ */
1604
+ static readonly advancedSignatureFeatureKey = "AdvancedSignatureFeatureKey-D267127C-DCED-4DEC-B1A8-6E7A919E383D";
1605
+ /**
1606
+ * Get's document observer filters feature key
1607
+ */
1608
+ static readonly documentObserverFiltersFeatureKey = "DocumentObserverFiltersFeatureKey-1CC77FB1-E262-483F-9A2F-AA251E28E374";
1609
+ }
1610
+
1611
+ declare class SettingsFeatureContext {
1612
+ private readonly _valueProvider;
1613
+ private _isValidSubject;
1614
+ constructor(_valueProvider: ISettingValueProvider);
1615
+ get valueProvider(): ISettingValueProvider;
1616
+ set isValid(state: boolean);
1617
+ get isValid(): boolean;
1618
+ get isValidSubscription(): Observable<boolean>;
1619
+ }
1620
+
1621
+ declare module "./pilotdev-pilot-web-sdk" {
1622
+ interface IDialogService {
1623
+ /**
1624
+ * Открывает диалоговое окно проводника для выбора документов.
1625
+ *
1626
+ * @param id - Уникальный идентификатор сессии проводника или целевого объекта.
1627
+ * @param properties - Параметры конфигурации интерфейса и ограничений выбора документов.
1628
+ * @returns Observable со списком объектов выбранных данных `IDataObject[]`.
1629
+ *
1630
+ * @deprecated Используйте `openDialog(DialogType.DocumentSelector, ...)`
1631
+ */
1632
+ openDocumentExplorer(id: string, properties: IDocumentExplorerDialogProperties): Observable<IDataObject[]>;
1633
+ /**
1634
+ * Открывает диалоговое окно для выбора элементов организационной структуры (подразделений, должностей).
1635
+ *
1636
+ * @param properties - Настройки фильтрации, отображения и предустановленного выбора в дереве оргструктуры.
1637
+ * @returns Observable со списком выбранных организационных единиц `IOrganisationUnit[]`.
1638
+ *
1639
+ * @deprecated Используйте `openDialog(DialogType.PositionSelector, ...)`
1640
+ */
1641
+ openOrgUnitSelector(properties: IOrgUnitDialogProperties): Observable<IOrganisationUnit[]>;
1642
+ /**
1643
+ * @deprecated Используйте `openDialog(DialogType.Custom, ...)`
1644
+ *
1645
+ * Открывает нетипизированное/кастомное диалоговое окно на основе строкового идентификатора представления.
1646
+ *
1647
+ * _Используется как мост для миграции или для динамических сценариев, где структуры данных не определены заранее._
1648
+ *
1649
+ * @param viewId Уникальный текстовый идентификатор регистрируемого представления (компонента) диалога.
1650
+ * @param context Свободный контекст с данными, передаваемый внутрь диалогового окна.
1651
+ * @param title Заголовок модального окна.
1652
+ * @returns Observable, который эмитит данные произвольного типа (`unknown`) при закрытии диалога.
1653
+ *
1654
+ * @example
1655
+ * dialogService.openDialogWithExit('legacy-custom-view', myContext, 'Старое окно')
1656
+ * .subscribe((result) => {
1657
+ * // Требуется ручное приведение типов, так как возвращается unknown
1658
+ * const data = result as MyExpectedType;
1659
+ * console.log('Диалог закрыт с результатом:', data);
1660
+ * });
1661
+ */
1662
+ openDialogWithExit(viewId: string, context: ICustomDialogContext, title: string): Observable<unknown>;
1663
+ }
1664
+ }
1665
+
1666
+ declare abstract class IInitializable {
1667
+ constructor();
1668
+ /**
1669
+ * The method is called after field injection is complete.
1670
+ */
1671
+ initialize(injectionSource: InjectionSource): void;
1672
+ }
1673
+
1674
+ /**
1675
+ * @exposedInterface
1676
+ */
1677
+ declare abstract class IDataPlugin {
1678
+ constructor();
1679
+ }
1680
+
1681
+ /**
1682
+ * Represents a cryptographic provider interface for signing, verifying, and retrieving certificates.
1683
+ * @exposedInterface
1684
+ */
1685
+ declare abstract class ICryptoProvider {
1686
+ constructor();
1687
+ /**
1688
+ * Signs a file with a digital signature using the provided certificate.
1689
+ *
1690
+ * @param documentId The documentId, represented as string.
1691
+ * @param actualFile The actualFile for additional information, represented as an IFile.
1692
+ * @param arrayBuffer The file to be signed, represented as an ArrayBuffer.
1693
+ * @param certificate The digital certificate to use for signing, represented as an ArrayBuffer.
1694
+ * @param signatureRequestIds An array of IDs for the signature requests.
1695
+ * @returns An observable that resolves to the digital signature as a string.
1696
+ */
1697
+ sign(documentId: string, actualFile: IFile, arrayBuffer: ArrayBuffer, certificate: ICertificate, signatureRequestIds: string[]): Observable<string>;
1698
+ /**
1699
+ * Verifies the digital signature of a file.
1700
+ *
1701
+ * @param file - The file data to be verified. This should be the raw binary data of the file.
1702
+ * @param sign - The digital signature to be verified against the file. This should be the raw binary data of the signature.
1703
+ * @param signatureRequest - Description of signature's request.
1704
+ * @returns - An observable that emits the result of the verification process. The result will indicate whether the signature is valid, and may include additional information such as error messages.
1705
+ *
1706
+ * @example
1707
+ const fileData = new ArrayBuffer(1024);
1708
+ const signatureData = new ArrayBuffer(256);
1709
+ verify(fileData, signatureData, signatureRequest).subscribe(result => {
1710
+ if (result.verificationStatus === F.Valid) {
1711
+ console.log("Signature is valid");
1712
+ } else {
1713
+ console.log(`Signature is invalid: ${result.error}`);
1714
+ }
1715
+ });
1716
+ */
1717
+ verify(file: ArrayBuffer, sign: ArrayBuffer, signatureRequest: ISignatureRequest): Observable<ISignatureVerificationResult>;
1718
+ /**
1719
+ * Verifies the digital signature that being imported.
1720
+ *
1721
+ * @param file - The file data to be verified. This should be the raw binary data of the file.
1722
+ * @param sign - The digital signature to be verified against the file. This should be the raw binary data of the signature.
1723
+ * @returns - An observable that emits the result of the verification process. The result will indicate whether the signature is valid, and may include additional information such as error messages.
1724
+ *
1725
+ * @example
1726
+ const fileData = new ArrayBuffer(1024);
1727
+ const signatureData = new ArrayBuffer(256);
1728
+ verifyImportedSignature(fileData, signatureData).subscribe(result => {
1729
+ if (result.verificationStatus === F.Valid) {
1730
+ console.log("Signature is valid");
1731
+ } else {
1732
+ console.log(`Signature is invalid: ${result.error}`);
1733
+ }
1734
+ });
1735
+ */
1736
+ verifyImportedSignature(file: ArrayBuffer, sign: ArrayBuffer): Observable<IImportedSignatureVerificationResult>;
1737
+ /**
1738
+ * Retrieves a list of digital certificates.
1739
+ *
1740
+ * @returns An observable that resolves to an array of ICertificate objects.
1741
+ */
1742
+ getCertificates(): Observable<ICertificate[]>;
1743
+ /** Determines whether the cryptoprovider can process the specified algorithm(s).
1744
+ *
1745
+ * @param publicKeyOid public key's oid used to create digital signature.
1746
+ * @returns {boolean} True if the cryptoprovider can process the algorithm(s), false otherwise.
1747
+ *
1748
+ * @example
1749
+ * // When the client tries to determine if this provider can process algorithm
1750
+ * const can = canProcessAlgorithms("1.2.840.113549.1.1.1");
1751
+ */
1752
+ canProcessAlgorithms(publicKeyOid: string): boolean;
1753
+ /** Determines whether the cryptoprovider can process signature. The method is needed when the signature is being imported and the signature algorithm is unknown.
1754
+ *
1755
+ * @param signatureFile signature file.
1756
+ * @returns {boolean} True if the cryptoprovider can process the signature, false otherwise.
1757
+ */
1758
+ canProcessSignature(signatureFile: ArrayBuffer): boolean;
1759
+ }
1760
+
1761
+ /**
1762
+ * Represents a toolbar button and enables to set parametres to it
1763
+ */
1764
+ declare abstract class IToolbarButtonItemBuilder {
1765
+ constructor();
1766
+ /**
1767
+ * Item's name to be displayed
1768
+ * @param header - value
1769
+ * @returns instance of IToolbarButtonItemBuilder
1770
+ */
1771
+ withHeader(header: string): IToolbarButtonItemBuilder;
1772
+ /**
1773
+ * Item's icon in SVG format
1774
+ * @param name - icon name
1775
+ * @param svg - url icon or base64 string
1776
+ */
1777
+ withIcon(name: string, svg: string): IToolbarButtonItemBuilder;
1778
+ /**
1779
+ * Enabled the item
1780
+ * @param value - value
1781
+ */
1782
+ withIsEnabled(value: boolean): IToolbarButtonItemBuilder;
1783
+ /**
1784
+ * Item's hint
1785
+ * @param hint - value
1786
+ */
1787
+ withHint(hint: string): IToolbarButtonItemBuilder;
1788
+ }
1789
+
1790
+ declare abstract class IToolbarItemSubmenuHandler {
1791
+ /**
1792
+ * Build a submenu
1793
+ * @param builder - toolbar builder
1794
+ * @returns
1795
+ */
1796
+ onSubmenuRequested(builder: IToolbarBuilder): void;
1797
+ }
1798
+
1799
+ /**
1800
+ * Represents a toolbar menu button and enables to set parametres to it
1801
+ */
1802
+ declare abstract class IToolbarMenuButtonItemBuilder extends IToolbarButtonItemBuilder {
1803
+ /**
1804
+ * Build a dropdown menu
1805
+ * @param itemSubmenuHandler - toolbar submenu handler
1806
+ * @returns The toolbar button menu builder
1807
+ */
1808
+ withMenu(itemSubmenuHandler: IToolbarItemSubmenuHandler): IToolbarMenuButtonItemBuilder;
1809
+ }
1810
+
1811
+ /**
1812
+ * Represents a toolbar toggle button and enables to set parametres to it
1813
+ */
1814
+ declare abstract class IToolbarToggleButtonItemBuilder extends IToolbarButtonItemBuilder {
1815
+ /**
1816
+ *
1817
+ * @param value
1818
+ */
1819
+ withIsChecked(value: boolean): IToolbarToggleButtonItemBuilder;
1820
+ }
1821
+
1822
+ declare abstract class IToolbarBuilder {
1823
+ constructor();
1824
+ /**
1825
+ * Adds a new separator to the associated toolbar
1826
+ * @param index - The index to put the new item at
1827
+ */
1828
+ addSeparator(index: number): void;
1829
+ /**
1830
+ * Adds a new button to the associated toolbar
1831
+ * @param name - Internal item's name
1832
+ * @param index - The index to put the new item at
1833
+ */
1834
+ addButtonItem(name: string, index: number): IToolbarButtonItemBuilder;
1835
+ /**
1836
+ * Adds a new menu button to the associated toolbar
1837
+ * @param name - Internal item's name
1838
+ * @param index - The index to put the new item at
1839
+ */
1840
+ addMenuButtonItem(name: string, index: number): IToolbarMenuButtonItemBuilder;
1841
+ /**
1842
+ * Adds a new toggle button to the associated toolbar
1843
+ * @param name - Internal item's name
1844
+ * @param index - The index to put the new item at
1845
+ */
1846
+ addToggleButtonItem(name: string, index: number): IToolbarToggleButtonItemBuilder;
1847
+ /**
1848
+ * Replaces the item from the associated toolbar on button
1849
+ * @param name - The name of toolbar button to replace
1850
+ */
1851
+ replaceButtonItem(name: string): IToolbarButtonItemBuilder;
1852
+ /**
1853
+ * Replace the item from the associated toolbar on menu button
1854
+ * @param name - The name of toolbar menu button to replace
1855
+ */
1856
+ replaceMenuButtonItem(name: string): IToolbarMenuButtonItemBuilder;
1857
+ /**
1858
+ * Enables to set parametres to menu button item submenu
1859
+ * @param name - Item's internal name
1860
+ * @param itemSubmenuHandler - The toolbar button menu builder
1861
+ */
1862
+ handleMenuButtonItemSubmenu(name: string, itemSubmenuHandler: IToolbarItemSubmenuHandler): void;
1863
+ /**
1864
+ * Replaces the item from the associated toolbar on toggle button
1865
+ * @param name - The name of toolbar toggle button to replace
1866
+ */
1867
+ replaceToggleButtonItem(name: string): IToolbarToggleButtonItemBuilder;
1868
+ /**
1869
+ * Gets the list of existing item names of associated toolbar
1870
+ * @returns - Existing toolbar item names
1871
+ */
1872
+ get itemNames(): string[];
1873
+ /**
1874
+ * Gets count of toolbar items
1875
+ */
1876
+ get count(): number;
1877
+ /**
1878
+ * Removes specified item
1879
+ * @param itemName - Item's internal name
1880
+ */
1881
+ removeItem(itemName: string): void;
1882
+ }
1883
+
1884
+ /**
1885
+ * Interface that allows to add new items to the toolbar
1886
+ * @exposedInterface
1887
+ */
1888
+ declare abstract class IToolbar<TToolbarContext extends ObjectsViewContext | DocumentAnnotationsListContext> {
1889
+ constructor();
1890
+ /**
1891
+ * The method is called just before the toolbar is created
1892
+ * @param builder - the toolbar builder object of associated toolbar
1893
+ * @param context - context
1894
+ */
1895
+ build(builder: IToolbarBuilder, context: TToolbarContext): void;
1896
+ /**
1897
+ *
1898
+ * @param name
1899
+ * @param context
1900
+ */
1901
+ onToolbarItemClick(name: string, context: TToolbarContext): void;
1902
+ }
1903
+
1904
+ declare class AttributeValueChangedEventArgs {
1905
+ private readonly _oldValue;
1906
+ private readonly _newValue;
1907
+ private readonly _context;
1908
+ constructor(oldValue: unknown, newValue: unknown, context: ObjectCardContext);
1909
+ get oldValue(): unknown;
1910
+ get newValue(): unknown;
1911
+ get context(): ObjectCardContext;
1912
+ }
1913
+
1914
+ interface IAttributeModifier {
1915
+ /**
1916
+ * Sets new value for attribute
1917
+ *
1918
+ * @param name - Attribute name
1919
+ * @param value - New value
1920
+ */
1921
+ setValue(name: string, value: unknown): void;
1922
+ }
1923
+
1924
+ /**
1925
+ * Enables support for handling changing object attributes in object card
1926
+ * @exposedInterface
1927
+ */
1928
+ declare abstract class IObjectCardHandler {
1929
+ constructor();
1930
+ /**
1931
+ * Handle show object card
1932
+ *
1933
+ * @param modifier - Attribute modifier
1934
+ * @param context - Context
1935
+ */
1936
+ handle(modifier: IAttributeModifier, context: ObjectCardContext): void;
1937
+ /**
1938
+ * The method called when attribute value has changed
1939
+ * @param sender - Changed attribute
1940
+ * @param args - Attribute change event args
1941
+ * @param modifier - Attribute modifier
1942
+ */
1943
+ onValueChanged(sender: IAttribute, args: AttributeValueChangedEventArgs, modifier: IAttributeModifier): void;
1944
+ }
1945
+
1946
+ /**
1947
+ * Class that allows to declare the view for the openspace container
1948
+ * @exposedInterface
1949
+ */
1950
+ declare abstract class IOpenspaceView<TOpenspaceViewContext extends BimElementPanelContext | BimRightPanelContext | ObjectsViewContext | PageContext | SettingsFeatureContext | DialogContext> {
1951
+ constructor();
1952
+ /**
1953
+ * The method is called to match this View to the corresponding openspace container
1954
+ *
1955
+ * Should be identical with corresponding container's `withViewId(id: string)`
1956
+ * @returns {string}
1957
+ */
1958
+ getViewId(): string;
1959
+ /**
1960
+ * The method is called just before the openspace container's view is shown
1961
+ * @param context - context
1962
+ */
1963
+ getView(context: TOpenspaceViewContext): HTMLElement | undefined;
1964
+ }
1965
+
1966
+ /**
1967
+ * Represents a builder for navigation window section's element
1968
+ */
1969
+ declare abstract class IPageNavigationSectionElementBuilder {
1970
+ constructor();
1971
+ /**
1972
+ * Element's title to be displayed
1973
+ * @param title value
1974
+ */
1975
+ withTitle(title: string): IPageNavigationSectionElementBuilder;
1976
+ /**
1977
+ * Element's title to be displayed
1978
+ * @param description value
1979
+ */
1980
+ withDescription(description: string): IPageNavigationSectionElementBuilder;
1981
+ /**
1982
+ * Element's icon
1983
+ * @param name Icon name
1984
+ * @param iconSvg Url of icon or base64 string
1985
+ */
1986
+ withIcon(name: string, iconSvg: string): IPageNavigationSectionElementBuilder;
1987
+ /**
1988
+ * Element's view id
1989
+ *
1990
+ * Is matched with corresponding IOpenspaceView's `getViewId(): string`
1991
+ * @param value - View Id
1992
+ */
1993
+ withViewId(value: string): IPageNavigationSectionElementBuilder;
1994
+ }
1995
+
1996
+ /**
1997
+ * Represents a builder for the navigation window's section
1998
+ */
1999
+ declare abstract class IPageNavigationSectionBuilder {
2000
+ constructor();
2001
+ /**
2002
+ * Section's title to be displayed
2003
+ * @param title value
2004
+ */
2005
+ withTitle(title: string): IPageNavigationSectionBuilder;
2006
+ /**
2007
+ * Gets the list of existing element ids of the section
2008
+ * @returns Existing element ids
2009
+ */
2010
+ get elementIds(): string[];
2011
+ /**
2012
+ * Gets count of section's elements
2013
+ */
2014
+ get count(): number;
2015
+ /**
2016
+ * Adds a new element to the section
2017
+ * @param id Element's internal id
2018
+ * @param index The index to put the new element at
2019
+ */
2020
+ addElement(id: string, index: number): IPageNavigationSectionElementBuilder;
2021
+ /**
2022
+ * Replaces the element of the section
2023
+ * If element does not exist - creates it
2024
+ * @param id Elements's internal id
2025
+ */
2026
+ replaceElement(id: string): IPageNavigationSectionElementBuilder;
2027
+ }
2028
+
2029
+ /**
2030
+ * Represents a builder for navigation window
2031
+ */
2032
+ declare abstract class IPageNavigationBuilder {
2033
+ constructor();
2034
+ /**
2035
+ * Gets the list of existing section ids of the navigation window
2036
+ * @returns Existing section ids
2037
+ */
2038
+ get sectionIds(): string[];
2039
+ /**
2040
+ * Gets count of navigation window's elements
2041
+ */
2042
+ get count(): number;
2043
+ /**
2044
+ * Adds a new section to the navigation window
2045
+ * @param id Sections's internal id
2046
+ * @param index The index to put the new section at
2047
+ */
2048
+ addSection(id: string, index: number): IPageNavigationSectionBuilder;
2049
+ /**
2050
+ * Replaces the section of the navigation window
2051
+ * If element does not exist - creates it
2052
+ * @param id Elements's internal id
2053
+ */
2054
+ replaceSection(id: string): IPageNavigationSectionBuilder;
2055
+ }
2056
+
2057
+ /**
2058
+ * Interface that allows to add new sections and elements to navigation window
2059
+ * @exposedInterface
2060
+ */
2061
+ declare abstract class IPageNavigation {
2062
+ constructor();
2063
+ build(builder: IPageNavigationBuilder): void;
2064
+ }
2065
+
2066
+ /**
2067
+ * Enables to set parameters to the tab-group's item
2068
+ */
2069
+ declare abstract class ITabItemBuilder {
2070
+ constructor();
2071
+ /**
2072
+ * Item's title to be displayed
2073
+ * @param title value
2074
+ */
2075
+ withTitle(title: string): ITabItemBuilder;
2076
+ /**
2077
+ * Item's icon
2078
+ * @param name Icon name
2079
+ * @param iconSvg Url of icon or base64 string
2080
+ */
2081
+ withIcon(name: string, iconSvg: string): ITabItemBuilder;
2082
+ /**
2083
+ * Item's view id
2084
+ *
2085
+ * Is matched with corresponding IOpenspaceView's `getViewId(): string`
2086
+ * @param value - View Id
2087
+ */
2088
+ withViewId(value: string): ITabItemBuilder;
2089
+ }
2090
+
2091
+ /**
2092
+ * Represents a builder for tab groups
2093
+ */
2094
+ declare abstract class ITabsBuilder {
2095
+ constructor();
2096
+ /**
2097
+ * Gets the list of existing items of a tab group
2098
+ * @returns Existing menu item names
2099
+ */
2100
+ get itemNames(): string[];
2101
+ /**
2102
+ * Gets count of tab group items
2103
+ */
2104
+ get count(): number;
2105
+ /**
2106
+ * Adds a new item to the associated tab group
2107
+ * @param id Item's internal id
2108
+ * @param index The index to put the new item at
2109
+ */
2110
+ addItem(id: string, index: number): ITabItemBuilder;
2111
+ /**
2112
+ * Replaces the item for the tab group.
2113
+ * If Item does not exist - creates it.
2114
+ * @param id Item's internal id
2115
+ */
2116
+ replaceItem(id: string): ITabItemBuilder;
2117
+ }
2118
+
2119
+ /**
2120
+ * Interface that allows to add new items to the tabs
2121
+ * @exposedInterface
2122
+ */
2123
+ declare abstract class ITabs<TTabsContext extends BimElementPanelContext | BimRightPanelContext | ObjectsViewContext> {
2124
+ /**
2125
+ * The method is called just before the tabs are shown
2126
+ * @param builder The tab group builder object of associated tab group
2127
+ * @param context Context
2128
+ */
2129
+ build(builder: ITabsBuilder, context: TTabsContext): void;
2130
+ }
2131
+
2132
+ /**
2133
+ * Represents a menu item and enables to set parametres to it
2134
+ */
2135
+ declare abstract class IMenuItemBuilder {
2136
+ constructor();
2137
+ /**
2138
+ * Item's name to be displayed
2139
+ * @param header value
2140
+ */
2141
+ withHeader(header: string): IMenuItemBuilder;
2142
+ /**
2143
+ * Item's icon
2144
+ * @param name Icon name
2145
+ * @param iconSvg Url of icon or base64 string
2146
+ */
2147
+ withIcon(name: string, iconSvg: string): IMenuItemBuilder;
2148
+ /**
2149
+ * Enabled the item
2150
+ * @param value value
2151
+ */
2152
+ withIsEnabled(value: boolean): IMenuItemBuilder;
2153
+ /**
2154
+ * Item's submenu
2155
+ */
2156
+ withSubmenu(): IMenuBuilder;
2157
+ }
2158
+
2159
+ /**
2160
+ *
2161
+ */
2162
+ declare abstract class ICheckableMenuItemBuilder extends IMenuItemBuilder {
2163
+ /**
2164
+ *
2165
+ * @param value
2166
+ */
2167
+ withIsChecked(value: boolean): ICheckableMenuItemBuilder;
2168
+ }
2169
+
2170
+ /**
2171
+ * Represents a menu and enables to add new items to it
2172
+ */
2173
+ declare abstract class IMenuBuilder {
2174
+ constructor();
2175
+ /**
2176
+ * Gets the list of existing items of associated menu or subitems of an item
2177
+ * @returns Existing menu item names
2178
+ */
2179
+ get itemNames(): string[];
2180
+ /**
2181
+ * Gets count of menu items
2182
+ */
2183
+ get count(): number;
2184
+ /**
2185
+ * Adds a new separator to the associated menu
2186
+ * @param index The index to put the new item at
2187
+ */
2188
+ addSeparator(index: number): void;
2189
+ /**
2190
+ * Adds a new item to the associated menu
2191
+ * @param name Item's internal name
2192
+ * @param index The index to put the new item at
2193
+ */
2194
+ addItem(name: string, index: number): IMenuItemBuilder;
2195
+ /**
2196
+ * Adds a new checkable item to the associated menu
2197
+ * @param name Item's internal name
2198
+ * @param index The index to put the new item at
2199
+ */
2200
+ addCheckableItem(name: string, index: number): ICheckableMenuItemBuilder;
2201
+ /**
2202
+ * Replaces the item to the associated menu
2203
+ * @param name Item's internal name
2204
+ */
2205
+ replaceItem(name: string): IMenuItemBuilder;
2206
+ /**
2207
+ * Removes the item with the specified name
2208
+ * @param name Item's internal name
2209
+ */
2210
+ removeItem(name: string): void;
2211
+ /**
2212
+ * Gets the item
2213
+ * @param name Item's internal name
2214
+ */
2215
+ getItem(name: string): IMenuBuilder;
2216
+ }
2217
+
2218
+ /**
2219
+ * Interface that allows to add new items to the menu and context menus
2220
+ * @exposedInterface
2221
+ */
2222
+ declare abstract class IMenu<TMenuContext extends ObjectsViewContext | DocumentAnnotationsListContext> {
2223
+ /**
2224
+ * The method is called just before the menu is shown
2225
+ * @param builder The menu builder object of associated menu
2226
+ * @param context Context
2227
+ */
2228
+ build(builder: IMenuBuilder, context: TMenuContext): void;
2229
+ /**
2230
+ *
2231
+ * @param name
2232
+ * @param context
2233
+ */
2234
+ onMenuItemClick(name: string, context: TMenuContext): void;
2235
+ }
2236
+
2237
+ declare class AttributePermissionInfo {
2238
+ private ATTRIBUTE_NAME_MARKER;
2239
+ orgUnits: number[];
2240
+ orgUnitAttributes: string[];
2241
+ constructor(editableForPositionsSource: string[]);
2242
+ extractAllOrgUnits(obj: IDataObject): number[];
2243
+ extractAllOrgUnitsByAttributes(attributes: Map<string, any>): number[];
2244
+ }
2245
+
2246
+ declare function objectToMap<T>(objectMap: {
2247
+ [key: string]: any;
2248
+ }): Map<string, T>;
2249
+
2250
+ declare class Guid {
2251
+ private static readonly regex;
2252
+ static readonly EMPTY = "00000000-0000-0000-0000-000000000000";
2253
+ static newGuid(): string;
2254
+ static isGuid(str: string): boolean;
2255
+ private static stringify;
2256
+ }
2257
+
2258
+ export { AccessInheritance, AccessLevel, AccessType, AttributePermissionInfo, AttributeType, AttributeUniquenessType, AttributeValueChangedEventArgs, BimElementPanelContext, BimRightPanelContext, BorderEffect, CadesType, CompareResultType, DialogContext, DialogType, DocumentAnnotationsListContext, ExpectedError, Guid, ICheckableMenuItemBuilder, ICryptoProvider, IDataPlugin, IDisposable, IInitializable, IMenu, IMenuBuilder, IMenuItemBuilder, IObjectCardHandler, IOpenspaceView, IPageNavigation, IPageNavigationBuilder, IPageNavigationSectionBuilder, IPageNavigationSectionElementBuilder, ISettingValueProvider, ISettingsFeature, ITabItemBuilder, ITabs, ITabsBuilder, IToolbar, IToolbarBuilder, IToolbarButtonItemBuilder, IToolbarItemSubmenuHandler, IToolbarMenuButtonItemBuilder, IToolbarToggleButtonItemBuilder, InjectionSource, MarkupLineEndings, MarkupLineStyle, MarkupTextDecorationKind, ObjectCardContext, ObjectState, ObjectsViewContext, OrgUnitKind, PageContext, ProgressBarMode, RelationType, RenderContext, SettingsFeatureContext, SignatureVerificationStatus, SubscriptionType, SystemSettingsKeys, Theme, UserStateColors, objectToMap };
2259
+ export type { DialogResultMap, DialogTypeMap, IAccess, IAccessRecord, IAnnotationContainer, IAnnotationContainerObject, IAnnotationStatesInfo, IAttribute, IAttributeModifier, IBaseDialogOptions, IBimCompareDiffService, IBimFeatures, IBimModelSearchResult, IBimSearchSetData, IBimSearchSetService, ICertificate, IChild, ICommand, ICommandBuilder, ICommandBuilderProvider, ICustomDialogContext, IDataObject, IDialogService, IDialogSpecification, IDisplayParam, IDocumentExplorerDialogProperties, IEllipseMarkup, IFile, IFileBody, IFileCommand, IFileSnapshot, IFreeTextMarkup, IImportedSignatureVerificationResult, IInkMarkup, ILineMarkup, IMarkup, IMarkupStyle, IModifier, IModifierProvider, IObjectBuilder, IObjectsRepository, IOrgUnitDialogProperties, IOrganisationUnit, IPerson, IPersonalSettings, IPilotDialogOptions, IPolygonMarkup, IPolylineMarkup, IProgressService, IRectangleMarkup, IRelation, IRenderContextProvider, IRepositoryEvents, ISecretInfo, ISignatureBuilder, ISignatureCustomState, ISignatureModifier, ISignatureRequest, ISignatureVerificationResult, ISignatureVerificationResultBase, IStateInfo, IStateTransitionCommandArg, ITextDecorationMarkup, ITextMarkup, IThemeService, ITransition, IType, IUserState, IUserStateMachine, MarkupPoint, MarkupRect, MarkupSubtype, PltBalloonHorizontalPosition, PltBalloonProperties, PltBalloonVerticalPosition, Themes };