@azure-rest/iot-device-update 1.0.0-beta.1

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.
@@ -0,0 +1,1665 @@
1
+ import { Client } from '@azure-rest/core-client';
2
+ import { ClientOptions } from '@azure-rest/core-client';
3
+ import { HttpResponse } from '@azure-rest/core-client';
4
+ import { LroEngineOptions } from '@azure/core-lro';
5
+ import { PagedAsyncIterableIterator } from '@azure/core-paging';
6
+ import { PathUncheckedResponse } from '@azure-rest/core-client';
7
+ import { PollerLike } from '@azure/core-lro';
8
+ import { PollOperationState } from '@azure/core-lro';
9
+ import { RawHttpHeaders } from '@azure/core-rest-pipeline';
10
+ import { RawHttpHeadersInput } from '@azure/core-rest-pipeline';
11
+ import { RequestParameters } from '@azure-rest/core-client';
12
+ import { TokenCredential } from '@azure/core-auth';
13
+
14
+ export declare interface Deployment {
15
+ /** The deployment identifier. */
16
+ deploymentId: string;
17
+ /** The deployment start datetime. */
18
+ startDateTime: string;
19
+ /** Update identity. */
20
+ updateId: UpdateId;
21
+ /** The group identity */
22
+ groupId: string;
23
+ /** Boolean flag indicating whether the deployment was canceled. */
24
+ isCanceled?: boolean;
25
+ /** Boolean flag indicating whether the deployment has been retried. */
26
+ isRetried?: boolean;
27
+ }
28
+
29
+ export declare interface DeploymentDeviceStateOutput {
30
+ /** Device identity. */
31
+ deviceId: string;
32
+ /** Device module identity. */
33
+ moduleId?: string;
34
+ /** The number of times this deployment has been retried on this device. */
35
+ retryCount: number;
36
+ /** Boolean flag indicating whether this device is in a newer deployment and can no longer retry this deployment. */
37
+ movedOnToNewDeployment: boolean;
38
+ /** Deployment device state. */
39
+ deviceState: "Succeeded" | "InProgress" | "Failed" | "Canceled" | "Incompatible";
40
+ }
41
+
42
+ export declare interface DeploymentDeviceStatesListOutput {
43
+ /** The collection of pageable items. */
44
+ value: Array<DeploymentDeviceStateOutput>;
45
+ /** The link to the next page of items. */
46
+ nextLink?: string;
47
+ }
48
+
49
+ export declare interface DeploymentOutput {
50
+ /** The deployment identifier. */
51
+ deploymentId: string;
52
+ /** The deployment start datetime. */
53
+ startDateTime: string;
54
+ /** Update identity. */
55
+ updateId: UpdateIdOutput;
56
+ /** The group identity */
57
+ groupId: string;
58
+ /** Boolean flag indicating whether the deployment was canceled. */
59
+ isCanceled?: boolean;
60
+ /** Boolean flag indicating whether the deployment has been retried. */
61
+ isRetried?: boolean;
62
+ }
63
+
64
+ export declare interface DeploymentsListOutput {
65
+ /** The collection of pageable items. */
66
+ value: Array<DeploymentOutput>;
67
+ /** The link to the next page of items. */
68
+ nextLink?: string;
69
+ }
70
+
71
+ export declare interface DeploymentStatusOutput {
72
+ /** The state of the deployment. */
73
+ deploymentState: "Active" | "Inactive" | "Canceled";
74
+ /** The total number of devices in the deployment. */
75
+ totalDevices?: number;
76
+ /** The number of devices that are currently in deployment. */
77
+ devicesInProgressCount?: number;
78
+ /** The number of devices that have completed deployment with a failure. */
79
+ devicesCompletedFailedCount?: number;
80
+ /** The number of devices which have successfully completed deployment. */
81
+ devicesCompletedSucceededCount?: number;
82
+ /** The number of devices which have had their deployment canceled. */
83
+ devicesCanceledCount?: number;
84
+ }
85
+
86
+ export declare interface DeviceClassesListOutput {
87
+ /** The collection of pageable items. */
88
+ value: Array<DeviceClassOutput>;
89
+ /** The link to the next page of items. */
90
+ nextLink?: string;
91
+ }
92
+
93
+ export declare interface DeviceClassOutput {
94
+ /** The device class identifier. */
95
+ deviceClassId: string;
96
+ /** The compat properties of the device class. This object can be thought of as a set of key-value pairs where the key is the name of the compatibility property and the value is the value of the compatibility property. There will always be at least 1 compat property */
97
+ compatProperties: Record<string, string>;
98
+ /** Update identity. */
99
+ bestCompatibleUpdateId: UpdateIdOutput;
100
+ }
101
+
102
+ export declare interface DeviceManagementCollectLogs {
103
+ /** Start the device diagnostics log collection operation on specified devices. */
104
+ put(options: DeviceManagementCollectLogsParameters): Promise<DeviceManagementCollectLogs201Response | DeviceManagementCollectLogsdefaultResponse>;
105
+ /** Get the device diagnostics log collection operation */
106
+ get(options?: DeviceManagementGetLogCollectionOperationParameters): Promise<DeviceManagementGetLogCollectionOperation200Response | DeviceManagementGetLogCollectionOperationdefaultResponse>;
107
+ }
108
+
109
+ /** Start the device diagnostics log collection operation on specified devices. */
110
+ export declare interface DeviceManagementCollectLogs201Response extends HttpResponse {
111
+ status: "201";
112
+ body: LogCollectionOperationOutput;
113
+ }
114
+
115
+ export declare interface DeviceManagementCollectLogsBodyParam {
116
+ /** The deployment properties. */
117
+ body: LogCollectionOperation;
118
+ }
119
+
120
+ /** Start the device diagnostics log collection operation on specified devices. */
121
+ export declare interface DeviceManagementCollectLogsdefaultResponse extends HttpResponse {
122
+ status: "500";
123
+ body: ErrorResponseOutput;
124
+ }
125
+
126
+ export declare interface DeviceManagementCollectLogsMediaTypesParam {
127
+ /** Request content type */
128
+ contentType?: "application/json";
129
+ }
130
+
131
+ export declare type DeviceManagementCollectLogsParameters = DeviceManagementCollectLogsMediaTypesParam & DeviceManagementCollectLogsBodyParam & RequestParameters;
132
+
133
+ /** Creates or updates a deployment. */
134
+ export declare interface DeviceManagementCreateOrUpdateDeployment200Response extends HttpResponse {
135
+ status: "200";
136
+ body: DeploymentOutput;
137
+ }
138
+
139
+ export declare interface DeviceManagementCreateOrUpdateDeploymentBodyParam {
140
+ /** The deployment properties. */
141
+ body: Deployment;
142
+ }
143
+
144
+ /** Creates or updates a deployment. */
145
+ export declare interface DeviceManagementCreateOrUpdateDeploymentdefaultResponse extends HttpResponse {
146
+ status: "500";
147
+ body: ErrorResponseOutput;
148
+ }
149
+
150
+ export declare interface DeviceManagementCreateOrUpdateDeploymentMediaTypesParam {
151
+ /** Request content type */
152
+ contentType?: "application/json";
153
+ }
154
+
155
+ export declare type DeviceManagementCreateOrUpdateDeploymentParameters = DeviceManagementCreateOrUpdateDeploymentMediaTypesParam & DeviceManagementCreateOrUpdateDeploymentBodyParam & RequestParameters;
156
+
157
+ /** Create or update a device group. */
158
+ export declare interface DeviceManagementCreateOrUpdateGroup200Response extends HttpResponse {
159
+ status: "200";
160
+ body: GroupOutput;
161
+ }
162
+
163
+ export declare interface DeviceManagementCreateOrUpdateGroupBodyParam {
164
+ /** The group properties. */
165
+ body: Group;
166
+ }
167
+
168
+ /** Create or update a device group. */
169
+ export declare interface DeviceManagementCreateOrUpdateGroupdefaultResponse extends HttpResponse {
170
+ status: "500";
171
+ body: ErrorResponseOutput;
172
+ }
173
+
174
+ export declare interface DeviceManagementCreateOrUpdateGroupMediaTypesParam {
175
+ /** Request content type */
176
+ contentType?: "application/json";
177
+ }
178
+
179
+ export declare type DeviceManagementCreateOrUpdateGroupParameters = DeviceManagementCreateOrUpdateGroupMediaTypesParam & DeviceManagementCreateOrUpdateGroupBodyParam & RequestParameters;
180
+
181
+ /** Deletes a deployment. */
182
+ export declare interface DeviceManagementDeleteDeployment204Response extends HttpResponse {
183
+ status: "204";
184
+ body: Record<string, unknown>;
185
+ }
186
+
187
+ /** Deletes a deployment. */
188
+ export declare interface DeviceManagementDeleteDeploymentdefaultResponse extends HttpResponse {
189
+ status: "500";
190
+ body: ErrorResponseOutput;
191
+ }
192
+
193
+ export declare type DeviceManagementDeleteDeploymentParameters = RequestParameters;
194
+
195
+ /** Deletes a device group. */
196
+ export declare interface DeviceManagementDeleteGroup204Response extends HttpResponse {
197
+ status: "204";
198
+ body: Record<string, unknown>;
199
+ }
200
+
201
+ /** Deletes a device group. */
202
+ export declare interface DeviceManagementDeleteGroupdefaultResponse extends HttpResponse {
203
+ status: "500";
204
+ body: ErrorResponseOutput;
205
+ }
206
+
207
+ export declare type DeviceManagementDeleteGroupParameters = RequestParameters;
208
+
209
+ export declare interface DeviceManagementGetDeployment {
210
+ /** Gets the properties of a deployment. */
211
+ get(options?: DeviceManagementGetDeploymentParameters): Promise<DeviceManagementGetDeployment200Response | DeviceManagementGetDeploymentdefaultResponse>;
212
+ /** Creates or updates a deployment. */
213
+ put(options: DeviceManagementCreateOrUpdateDeploymentParameters): Promise<DeviceManagementCreateOrUpdateDeployment200Response | DeviceManagementCreateOrUpdateDeploymentdefaultResponse>;
214
+ /** Deletes a deployment. */
215
+ delete(options?: DeviceManagementDeleteDeploymentParameters): Promise<DeviceManagementDeleteDeployment204Response | DeviceManagementDeleteDeploymentdefaultResponse>;
216
+ /** Stops a deployment. */
217
+ post(options: DeviceManagementStopDeploymentParameters | DeviceManagementRetryDeploymentParameters): Promise<DeviceManagementStopDeployment200Response | DeviceManagementStopDeploymentdefaultResponse> | Promise<DeviceManagementRetryDeployment200Response | DeviceManagementRetryDeploymentdefaultResponse>;
218
+ }
219
+
220
+ /** Gets the properties of a deployment. */
221
+ export declare interface DeviceManagementGetDeployment200Response extends HttpResponse {
222
+ status: "200";
223
+ body: DeploymentOutput;
224
+ }
225
+
226
+ /** Gets the properties of a deployment. */
227
+ export declare interface DeviceManagementGetDeploymentdefaultResponse extends HttpResponse {
228
+ status: "500";
229
+ body: ErrorResponseOutput;
230
+ }
231
+
232
+ export declare type DeviceManagementGetDeploymentParameters = RequestParameters;
233
+
234
+ export declare interface DeviceManagementGetDeploymentStatus {
235
+ /** Gets the status of a deployment including a breakdown of how many devices in the deployment are in progress, completed, or failed. */
236
+ get(options?: DeviceManagementGetDeploymentStatusParameters): Promise<DeviceManagementGetDeploymentStatus200Response | DeviceManagementGetDeploymentStatusdefaultResponse>;
237
+ }
238
+
239
+ /** Gets the status of a deployment including a breakdown of how many devices in the deployment are in progress, completed, or failed. */
240
+ export declare interface DeviceManagementGetDeploymentStatus200Response extends HttpResponse {
241
+ status: "200";
242
+ body: DeploymentStatusOutput;
243
+ }
244
+
245
+ /** Gets the status of a deployment including a breakdown of how many devices in the deployment are in progress, completed, or failed. */
246
+ export declare interface DeviceManagementGetDeploymentStatusdefaultResponse extends HttpResponse {
247
+ status: "500";
248
+ body: ErrorResponseOutput;
249
+ }
250
+
251
+ export declare type DeviceManagementGetDeploymentStatusParameters = RequestParameters;
252
+
253
+ export declare interface DeviceManagementGetDevice {
254
+ /** Gets the device properties and latest deployment status for a device connected to Device Update for IoT Hub. */
255
+ get(options?: DeviceManagementGetDeviceParameters): Promise<DeviceManagementGetDevice200Response | DeviceManagementGetDevicedefaultResponse>;
256
+ }
257
+
258
+ /** Gets the device properties and latest deployment status for a device connected to Device Update for IoT Hub. */
259
+ export declare interface DeviceManagementGetDevice200Response extends HttpResponse {
260
+ status: "200";
261
+ body: DeviceOutput;
262
+ }
263
+
264
+ export declare interface DeviceManagementGetDeviceClass {
265
+ /** Gets the properties of a device class. */
266
+ get(options?: DeviceManagementGetDeviceClassParameters): Promise<DeviceManagementGetDeviceClass200Response | DeviceManagementGetDeviceClassdefaultResponse>;
267
+ }
268
+
269
+ /** Gets the properties of a device class. */
270
+ export declare interface DeviceManagementGetDeviceClass200Response extends HttpResponse {
271
+ status: "200";
272
+ body: DeviceClassOutput;
273
+ }
274
+
275
+ /** Gets the properties of a device class. */
276
+ export declare interface DeviceManagementGetDeviceClassdefaultResponse extends HttpResponse {
277
+ status: "500";
278
+ body: ErrorResponseOutput;
279
+ }
280
+
281
+ export declare type DeviceManagementGetDeviceClassParameters = RequestParameters;
282
+
283
+ /** Gets the device properties and latest deployment status for a device connected to Device Update for IoT Hub. */
284
+ export declare interface DeviceManagementGetDevicedefaultResponse extends HttpResponse {
285
+ status: "500";
286
+ body: ErrorResponseOutput;
287
+ }
288
+
289
+ export declare interface DeviceManagementGetDeviceModule {
290
+ /** Gets the device module properties and latest deployment status for a device module connected to Device Update for IoT Hub. */
291
+ get(options?: DeviceManagementGetDeviceModuleParameters): Promise<DeviceManagementGetDeviceModule200Response | DeviceManagementGetDeviceModuledefaultResponse>;
292
+ }
293
+
294
+ /** Gets the device module properties and latest deployment status for a device module connected to Device Update for IoT Hub. */
295
+ export declare interface DeviceManagementGetDeviceModule200Response extends HttpResponse {
296
+ status: "200";
297
+ body: DeviceOutput;
298
+ }
299
+
300
+ /** Gets the device module properties and latest deployment status for a device module connected to Device Update for IoT Hub. */
301
+ export declare interface DeviceManagementGetDeviceModuledefaultResponse extends HttpResponse {
302
+ status: "500";
303
+ body: ErrorResponseOutput;
304
+ }
305
+
306
+ export declare type DeviceManagementGetDeviceModuleParameters = RequestParameters;
307
+
308
+ export declare type DeviceManagementGetDeviceParameters = RequestParameters;
309
+
310
+ export declare interface DeviceManagementGetDeviceTag {
311
+ /** Gets a count of how many devices have a device tag. */
312
+ get(options?: DeviceManagementGetDeviceTagParameters): Promise<DeviceManagementGetDeviceTag200Response | DeviceManagementGetDeviceTagdefaultResponse>;
313
+ }
314
+
315
+ /** Gets a count of how many devices have a device tag. */
316
+ export declare interface DeviceManagementGetDeviceTag200Response extends HttpResponse {
317
+ status: "200";
318
+ body: DeviceTagOutput;
319
+ }
320
+
321
+ /** Gets a count of how many devices have a device tag. */
322
+ export declare interface DeviceManagementGetDeviceTagdefaultResponse extends HttpResponse {
323
+ status: "500";
324
+ body: ErrorResponseOutput;
325
+ }
326
+
327
+ export declare type DeviceManagementGetDeviceTagParameters = RequestParameters;
328
+
329
+ export declare interface DeviceManagementGetGroup {
330
+ /** Gets the properties of a group. */
331
+ get(options?: DeviceManagementGetGroupParameters): Promise<DeviceManagementGetGroup200Response | DeviceManagementGetGroupdefaultResponse>;
332
+ /** Create or update a device group. */
333
+ put(options: DeviceManagementCreateOrUpdateGroupParameters): Promise<DeviceManagementCreateOrUpdateGroup200Response | DeviceManagementCreateOrUpdateGroupdefaultResponse>;
334
+ /** Deletes a device group. */
335
+ delete(options?: DeviceManagementDeleteGroupParameters): Promise<DeviceManagementDeleteGroup204Response | DeviceManagementDeleteGroupdefaultResponse>;
336
+ }
337
+
338
+ /** Gets the properties of a group. */
339
+ export declare interface DeviceManagementGetGroup200Response extends HttpResponse {
340
+ status: "200";
341
+ body: GroupOutput;
342
+ }
343
+
344
+ /** Gets the properties of a group. */
345
+ export declare interface DeviceManagementGetGroupdefaultResponse extends HttpResponse {
346
+ status: "500";
347
+ body: ErrorResponseOutput;
348
+ }
349
+
350
+ export declare type DeviceManagementGetGroupParameters = RequestParameters;
351
+
352
+ export declare interface DeviceManagementGetGroupUpdateCompliance {
353
+ /** Get group update compliance information such as how many devices are on their latest update, how many need new updates, and how many are in progress on receiving a new update. */
354
+ get(options?: DeviceManagementGetGroupUpdateComplianceParameters): Promise<DeviceManagementGetGroupUpdateCompliance200Response | DeviceManagementGetGroupUpdateCompliancedefaultResponse>;
355
+ }
356
+
357
+ /** Get group update compliance information such as how many devices are on their latest update, how many need new updates, and how many are in progress on receiving a new update. */
358
+ export declare interface DeviceManagementGetGroupUpdateCompliance200Response extends HttpResponse {
359
+ status: "200";
360
+ body: UpdateComplianceOutput;
361
+ }
362
+
363
+ /** Get group update compliance information such as how many devices are on their latest update, how many need new updates, and how many are in progress on receiving a new update. */
364
+ export declare interface DeviceManagementGetGroupUpdateCompliancedefaultResponse extends HttpResponse {
365
+ status: "500";
366
+ body: ErrorResponseOutput;
367
+ }
368
+
369
+ export declare type DeviceManagementGetGroupUpdateComplianceParameters = RequestParameters;
370
+
371
+ /** Get the device diagnostics log collection operation */
372
+ export declare interface DeviceManagementGetLogCollectionOperation200Response extends HttpResponse {
373
+ status: "200";
374
+ body: LogCollectionOperationOutput;
375
+ }
376
+
377
+ /** Get the device diagnostics log collection operation */
378
+ export declare interface DeviceManagementGetLogCollectionOperationdefaultResponse extends HttpResponse {
379
+ status: "500";
380
+ body: ErrorResponseOutput;
381
+ }
382
+
383
+ export declare interface DeviceManagementGetLogCollectionOperationDetailedStatus {
384
+ /** Get device diagnostics log collection operation with detailed status */
385
+ get(options?: DeviceManagementGetLogCollectionOperationDetailedStatusParameters): Promise<DeviceManagementGetLogCollectionOperationDetailedStatus200Response | DeviceManagementGetLogCollectionOperationDetailedStatusdefaultResponse>;
386
+ }
387
+
388
+ /** Get device diagnostics log collection operation with detailed status */
389
+ export declare interface DeviceManagementGetLogCollectionOperationDetailedStatus200Response extends HttpResponse {
390
+ status: "200";
391
+ body: LogCollectionOperationDetailedStatusOutput;
392
+ }
393
+
394
+ /** Get device diagnostics log collection operation with detailed status */
395
+ export declare interface DeviceManagementGetLogCollectionOperationDetailedStatusdefaultResponse extends HttpResponse {
396
+ status: "500";
397
+ body: ErrorResponseOutput;
398
+ }
399
+
400
+ export declare type DeviceManagementGetLogCollectionOperationDetailedStatusParameters = RequestParameters;
401
+
402
+ export declare type DeviceManagementGetLogCollectionOperationParameters = RequestParameters;
403
+
404
+ export declare interface DeviceManagementGetOperation {
405
+ /** Retrieve operation status. */
406
+ get(options?: DeviceManagementGetOperationParameters): Promise<DeviceManagementGetOperation200Response | DeviceManagementGetOperation304Response | DeviceManagementGetOperationdefaultResponse>;
407
+ }
408
+
409
+ export declare interface DeviceManagementGetOperation200Headers {
410
+ /** Number of seconds to wait before checking the operation status again. */
411
+ "retry-after"?: string;
412
+ }
413
+
414
+ /** Retrieve operation status. */
415
+ export declare interface DeviceManagementGetOperation200Response extends HttpResponse {
416
+ status: "200";
417
+ body: DeviceOperationOutput;
418
+ headers: RawHttpHeaders & DeviceManagementGetOperation200Headers;
419
+ }
420
+
421
+ /** Retrieve operation status. */
422
+ export declare interface DeviceManagementGetOperation304Response extends HttpResponse {
423
+ status: "304";
424
+ body: Record<string, unknown>;
425
+ }
426
+
427
+ /** Retrieve operation status. */
428
+ export declare interface DeviceManagementGetOperationdefaultResponse extends HttpResponse {
429
+ status: "500";
430
+ body: ErrorResponseOutput;
431
+ }
432
+
433
+ export declare interface DeviceManagementGetOperationHeaderParam {
434
+ headers: RawHttpHeadersInput & DeviceManagementGetOperationHeaders;
435
+ }
436
+
437
+ export declare interface DeviceManagementGetOperationHeaders {
438
+ /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */
439
+ "If-None-Match"?: string;
440
+ }
441
+
442
+ export declare type DeviceManagementGetOperationParameters = DeviceManagementGetOperationHeaderParam & RequestParameters;
443
+
444
+ export declare interface DeviceManagementGetUpdateCompliance {
445
+ /** Gets the breakdown of how many devices are on their latest update, have new updates available, or are in progress receiving new updates. */
446
+ get(options?: DeviceManagementGetUpdateComplianceParameters): Promise<DeviceManagementGetUpdateCompliance200Response | DeviceManagementGetUpdateCompliancedefaultResponse>;
447
+ }
448
+
449
+ /** Gets the breakdown of how many devices are on their latest update, have new updates available, or are in progress receiving new updates. */
450
+ export declare interface DeviceManagementGetUpdateCompliance200Response extends HttpResponse {
451
+ status: "200";
452
+ body: UpdateComplianceOutput;
453
+ }
454
+
455
+ /** Gets the breakdown of how many devices are on their latest update, have new updates available, or are in progress receiving new updates. */
456
+ export declare interface DeviceManagementGetUpdateCompliancedefaultResponse extends HttpResponse {
457
+ status: "500";
458
+ body: ErrorResponseOutput;
459
+ }
460
+
461
+ export declare type DeviceManagementGetUpdateComplianceParameters = RequestParameters;
462
+
463
+ export declare interface DeviceManagementImportDevices202Headers {
464
+ /** Url to retrieve the device import operation status. */
465
+ "operation-location"?: string;
466
+ }
467
+
468
+ /** Import existing devices from IoT Hub. */
469
+ export declare interface DeviceManagementImportDevices202Response extends HttpResponse {
470
+ status: "202";
471
+ body: Record<string, unknown>;
472
+ headers: RawHttpHeaders & DeviceManagementImportDevices202Headers;
473
+ }
474
+
475
+ export declare interface DeviceManagementImportDevicesBodyParam {
476
+ /** The types of devices to import. */
477
+ body: "Devices" | "Modules" | "All";
478
+ }
479
+
480
+ /** Import existing devices from IoT Hub. */
481
+ export declare interface DeviceManagementImportDevicesdefaultResponse extends HttpResponse {
482
+ status: "500";
483
+ body: ErrorResponseOutput;
484
+ }
485
+
486
+ export declare interface DeviceManagementImportDevicesMediaTypesParam {
487
+ /** Request content type */
488
+ contentType?: "application/json";
489
+ }
490
+
491
+ export declare type DeviceManagementImportDevicesParameters = DeviceManagementImportDevicesQueryParam & DeviceManagementImportDevicesMediaTypesParam & DeviceManagementImportDevicesBodyParam & RequestParameters;
492
+
493
+ export declare interface DeviceManagementImportDevicesQueryParam {
494
+ queryParameters: DeviceManagementImportDevicesQueryParamProperties;
495
+ }
496
+
497
+ export declare interface DeviceManagementImportDevicesQueryParamProperties {
498
+ /** Devices action. */
499
+ action: "import";
500
+ }
501
+
502
+ export declare interface DeviceManagementListBestUpdatesForGroup {
503
+ /** Get the best available updates for a group and a count of how many devices need each update. */
504
+ get(options?: DeviceManagementListBestUpdatesForGroupParameters): Promise<DeviceManagementListBestUpdatesForGroup200Response | DeviceManagementListBestUpdatesForGroupdefaultResponse>;
505
+ }
506
+
507
+ /** Get the best available updates for a group and a count of how many devices need each update. */
508
+ export declare interface DeviceManagementListBestUpdatesForGroup200Response extends HttpResponse {
509
+ status: "200";
510
+ body: UpdatableDevicesListOutput;
511
+ }
512
+
513
+ /** Get the best available updates for a group and a count of how many devices need each update. */
514
+ export declare interface DeviceManagementListBestUpdatesForGroupdefaultResponse extends HttpResponse {
515
+ status: "500";
516
+ body: ErrorResponseOutput;
517
+ }
518
+
519
+ export declare type DeviceManagementListBestUpdatesForGroupParameters = DeviceManagementListBestUpdatesForGroupQueryParam & RequestParameters;
520
+
521
+ export declare interface DeviceManagementListBestUpdatesForGroupQueryParam {
522
+ queryParameters?: DeviceManagementListBestUpdatesForGroupQueryParamProperties;
523
+ }
524
+
525
+ export declare interface DeviceManagementListBestUpdatesForGroupQueryParamProperties {
526
+ /** Restricts the set of bestUpdates returned. You can filter on update Provider, Name and Version property. */
527
+ $filter?: string;
528
+ }
529
+
530
+ export declare interface DeviceManagementListDeploymentDevices {
531
+ /** Gets a list of devices in a deployment along with their state. Useful for getting a list of failed devices. */
532
+ get(options?: DeviceManagementListDeploymentDevicesParameters): Promise<DeviceManagementListDeploymentDevices200Response | DeviceManagementListDeploymentDevicesdefaultResponse>;
533
+ }
534
+
535
+ /** Gets a list of devices in a deployment along with their state. Useful for getting a list of failed devices. */
536
+ export declare interface DeviceManagementListDeploymentDevices200Response extends HttpResponse {
537
+ status: "200";
538
+ body: DeploymentDeviceStatesListOutput;
539
+ }
540
+
541
+ /** Gets a list of devices in a deployment along with their state. Useful for getting a list of failed devices. */
542
+ export declare interface DeviceManagementListDeploymentDevicesdefaultResponse extends HttpResponse {
543
+ status: "500";
544
+ body: ErrorResponseOutput;
545
+ }
546
+
547
+ export declare type DeviceManagementListDeploymentDevicesParameters = DeviceManagementListDeploymentDevicesQueryParam & RequestParameters;
548
+
549
+ export declare interface DeviceManagementListDeploymentDevicesQueryParam {
550
+ queryParameters?: DeviceManagementListDeploymentDevicesQueryParamProperties;
551
+ }
552
+
553
+ export declare interface DeviceManagementListDeploymentDevicesQueryParamProperties {
554
+ /** Restricts the set of deployment device states returned. You can filter on deviceId and moduleId and/or deviceState. */
555
+ $filter?: string;
556
+ }
557
+
558
+ export declare interface DeviceManagementListDeploymentsForGroup {
559
+ /** Gets a list of deployments for a group. */
560
+ get(options?: DeviceManagementListDeploymentsForGroupParameters): Promise<DeviceManagementListDeploymentsForGroup200Response | DeviceManagementListDeploymentsForGroupdefaultResponse>;
561
+ }
562
+
563
+ /** Gets a list of deployments for a group. */
564
+ export declare interface DeviceManagementListDeploymentsForGroup200Response extends HttpResponse {
565
+ status: "200";
566
+ body: DeploymentsListOutput;
567
+ }
568
+
569
+ /** Gets a list of deployments for a group. */
570
+ export declare interface DeviceManagementListDeploymentsForGroupdefaultResponse extends HttpResponse {
571
+ status: "500";
572
+ body: ErrorResponseOutput;
573
+ }
574
+
575
+ export declare type DeviceManagementListDeploymentsForGroupParameters = DeviceManagementListDeploymentsForGroupQueryParam & RequestParameters;
576
+
577
+ export declare interface DeviceManagementListDeploymentsForGroupQueryParam {
578
+ queryParameters?: DeviceManagementListDeploymentsForGroupQueryParamProperties;
579
+ }
580
+
581
+ export declare interface DeviceManagementListDeploymentsForGroupQueryParamProperties {
582
+ /** Restricts the set of deployments returned. You can filter on update Provider, Name and Version property. */
583
+ $filter?: string;
584
+ }
585
+
586
+ export declare interface DeviceManagementListDeviceClasses {
587
+ /** Gets a list of all device classes (unique combinations of device manufacturer and model) for all devices connected to Device Update for IoT Hub. */
588
+ get(options?: DeviceManagementListDeviceClassesParameters): Promise<DeviceManagementListDeviceClasses200Response | DeviceManagementListDeviceClassesdefaultResponse>;
589
+ }
590
+
591
+ /** Gets a list of all device classes (unique combinations of device manufacturer and model) for all devices connected to Device Update for IoT Hub. */
592
+ export declare interface DeviceManagementListDeviceClasses200Response extends HttpResponse {
593
+ status: "200";
594
+ body: DeviceClassesListOutput;
595
+ }
596
+
597
+ /** Gets a list of all device classes (unique combinations of device manufacturer and model) for all devices connected to Device Update for IoT Hub. */
598
+ export declare interface DeviceManagementListDeviceClassesdefaultResponse extends HttpResponse {
599
+ status: "500";
600
+ body: ErrorResponseOutput;
601
+ }
602
+
603
+ export declare type DeviceManagementListDeviceClassesParameters = RequestParameters;
604
+
605
+ export declare interface DeviceManagementListDevices {
606
+ /** Gets a list of devices connected to Device Update for IoT Hub. */
607
+ get(options?: DeviceManagementListDevicesParameters): Promise<DeviceManagementListDevices200Response | DeviceManagementListDevicesdefaultResponse>;
608
+ /** Import existing devices from IoT Hub. */
609
+ post(options: DeviceManagementImportDevicesParameters): Promise<DeviceManagementImportDevices202Response | DeviceManagementImportDevicesdefaultResponse>;
610
+ }
611
+
612
+ /** Gets a list of devices connected to Device Update for IoT Hub. */
613
+ export declare interface DeviceManagementListDevices200Response extends HttpResponse {
614
+ status: "200";
615
+ body: DevicesListOutput;
616
+ }
617
+
618
+ /** Gets a list of devices connected to Device Update for IoT Hub. */
619
+ export declare interface DeviceManagementListDevicesdefaultResponse extends HttpResponse {
620
+ status: "500";
621
+ body: ErrorResponseOutput;
622
+ }
623
+
624
+ export declare type DeviceManagementListDevicesParameters = DeviceManagementListDevicesQueryParam & RequestParameters;
625
+
626
+ export declare interface DeviceManagementListDevicesQueryParam {
627
+ queryParameters?: DeviceManagementListDevicesQueryParamProperties;
628
+ }
629
+
630
+ export declare interface DeviceManagementListDevicesQueryParamProperties {
631
+ /** Restricts the set of devices returned. You can filter on device GroupId or DeviceClassId. */
632
+ $filter?: string;
633
+ }
634
+
635
+ export declare interface DeviceManagementListDeviceTags {
636
+ /** Gets a list of available group device tags for all devices connected to Device Update for IoT Hub. */
637
+ get(options?: DeviceManagementListDeviceTagsParameters): Promise<DeviceManagementListDeviceTags200Response | DeviceManagementListDeviceTagsdefaultResponse>;
638
+ }
639
+
640
+ /** Gets a list of available group device tags for all devices connected to Device Update for IoT Hub. */
641
+ export declare interface DeviceManagementListDeviceTags200Response extends HttpResponse {
642
+ status: "200";
643
+ body: DeviceTagsListOutput;
644
+ }
645
+
646
+ /** Gets a list of available group device tags for all devices connected to Device Update for IoT Hub. */
647
+ export declare interface DeviceManagementListDeviceTagsdefaultResponse extends HttpResponse {
648
+ status: "500";
649
+ body: ErrorResponseOutput;
650
+ }
651
+
652
+ export declare type DeviceManagementListDeviceTagsParameters = RequestParameters;
653
+
654
+ export declare interface DeviceManagementListGroups {
655
+ /** Gets a list of all device groups. */
656
+ get(options?: DeviceManagementListGroupsParameters): Promise<DeviceManagementListGroups200Response | DeviceManagementListGroupsdefaultResponse>;
657
+ }
658
+
659
+ /** Gets a list of all device groups. */
660
+ export declare interface DeviceManagementListGroups200Response extends HttpResponse {
661
+ status: "200";
662
+ body: GroupsListOutput;
663
+ }
664
+
665
+ /** Gets a list of all device groups. */
666
+ export declare interface DeviceManagementListGroupsdefaultResponse extends HttpResponse {
667
+ status: "500";
668
+ body: ErrorResponseOutput;
669
+ }
670
+
671
+ export declare type DeviceManagementListGroupsParameters = RequestParameters;
672
+
673
+ export declare interface DeviceManagementListInstallableUpdatesForDeviceClass {
674
+ /** Gets a list of installable updates for a device class. */
675
+ get(options?: DeviceManagementListInstallableUpdatesForDeviceClassParameters): Promise<DeviceManagementListInstallableUpdatesForDeviceClass200Response | DeviceManagementListInstallableUpdatesForDeviceClassdefaultResponse>;
676
+ }
677
+
678
+ /** Gets a list of installable updates for a device class. */
679
+ export declare interface DeviceManagementListInstallableUpdatesForDeviceClass200Response extends HttpResponse {
680
+ status: "200";
681
+ body: UpdateIdsListOutput;
682
+ }
683
+
684
+ /** Gets a list of installable updates for a device class. */
685
+ export declare interface DeviceManagementListInstallableUpdatesForDeviceClassdefaultResponse extends HttpResponse {
686
+ status: "500";
687
+ body: ErrorResponseOutput;
688
+ }
689
+
690
+ export declare type DeviceManagementListInstallableUpdatesForDeviceClassParameters = RequestParameters;
691
+
692
+ export declare interface DeviceManagementListLogCollectionOperations {
693
+ /** Get all device diagnostics log collection operations */
694
+ get(options?: DeviceManagementListLogCollectionOperationsParameters): Promise<DeviceManagementListLogCollectionOperations200Response | DeviceManagementListLogCollectionOperationsdefaultResponse>;
695
+ }
696
+
697
+ /** Get all device diagnostics log collection operations */
698
+ export declare interface DeviceManagementListLogCollectionOperations200Response extends HttpResponse {
699
+ status: "200";
700
+ body: LogCollectionOperationListOutput;
701
+ }
702
+
703
+ /** Get all device diagnostics log collection operations */
704
+ export declare interface DeviceManagementListLogCollectionOperationsdefaultResponse extends HttpResponse {
705
+ status: "500";
706
+ body: ErrorResponseOutput;
707
+ }
708
+
709
+ export declare type DeviceManagementListLogCollectionOperationsParameters = RequestParameters;
710
+
711
+ export declare interface DeviceManagementListOperations {
712
+ /** Get a list of all device import operations. Completed operations are kept for 7 days before auto-deleted. */
713
+ get(options?: DeviceManagementListOperationsParameters): Promise<DeviceManagementListOperations200Response | DeviceManagementListOperationsdefaultResponse>;
714
+ }
715
+
716
+ /** Get a list of all device import operations. Completed operations are kept for 7 days before auto-deleted. */
717
+ export declare interface DeviceManagementListOperations200Response extends HttpResponse {
718
+ status: "200";
719
+ body: DeviceOperationsListOutput;
720
+ }
721
+
722
+ /** Get a list of all device import operations. Completed operations are kept for 7 days before auto-deleted. */
723
+ export declare interface DeviceManagementListOperationsdefaultResponse extends HttpResponse {
724
+ status: "500";
725
+ body: ErrorResponseOutput;
726
+ }
727
+
728
+ export declare type DeviceManagementListOperationsParameters = DeviceManagementListOperationsQueryParam & RequestParameters;
729
+
730
+ export declare interface DeviceManagementListOperationsQueryParam {
731
+ queryParameters?: DeviceManagementListOperationsQueryParamProperties;
732
+ }
733
+
734
+ export declare interface DeviceManagementListOperationsQueryParamProperties {
735
+ /** Restricts the set of operations returned. Only one specific filter is supported: "status eq 'NotStarted' or status eq 'Running'" */
736
+ $filter?: string;
737
+ /** Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n. */
738
+ $top?: number;
739
+ }
740
+
741
+ /** Retries a deployment with failed devices. */
742
+ export declare interface DeviceManagementRetryDeployment200Response extends HttpResponse {
743
+ status: "200";
744
+ body: DeploymentOutput;
745
+ }
746
+
747
+ /** Retries a deployment with failed devices. */
748
+ export declare interface DeviceManagementRetryDeploymentdefaultResponse extends HttpResponse {
749
+ status: "500";
750
+ body: ErrorResponseOutput;
751
+ }
752
+
753
+ export declare type DeviceManagementRetryDeploymentParameters = DeviceManagementRetryDeploymentQueryParam & RequestParameters;
754
+
755
+ export declare interface DeviceManagementRetryDeploymentQueryParam {
756
+ queryParameters: DeviceManagementRetryDeploymentQueryParamProperties;
757
+ }
758
+
759
+ export declare interface DeviceManagementRetryDeploymentQueryParamProperties {
760
+ /** Retry deployment action. */
761
+ action: "retry";
762
+ }
763
+
764
+ /** Stops a deployment. */
765
+ export declare interface DeviceManagementStopDeployment200Response extends HttpResponse {
766
+ status: "200";
767
+ body: DeploymentOutput;
768
+ }
769
+
770
+ /** Stops a deployment. */
771
+ export declare interface DeviceManagementStopDeploymentdefaultResponse extends HttpResponse {
772
+ status: "500";
773
+ body: ErrorResponseOutput;
774
+ }
775
+
776
+ export declare type DeviceManagementStopDeploymentParameters = DeviceManagementStopDeploymentQueryParam & RequestParameters;
777
+
778
+ export declare interface DeviceManagementStopDeploymentQueryParam {
779
+ queryParameters: DeviceManagementStopDeploymentQueryParamProperties;
780
+ }
781
+
782
+ export declare interface DeviceManagementStopDeploymentQueryParamProperties {
783
+ /** Cancel deployment action. */
784
+ action: "cancel";
785
+ }
786
+
787
+ export declare interface DeviceOperationOutput {
788
+ /** Operation Id. */
789
+ operationId: string;
790
+ /** Operation status. */
791
+ status: "Undefined" | "NotStarted" | "Running" | "Succeeded" | "Failed";
792
+ /** Operation error encountered, if any. */
793
+ error?: ErrorModelOutput;
794
+ /** Operation correlation identity that can used by Microsoft Support for troubleshooting. */
795
+ traceId?: string;
796
+ /** Date and time in UTC when the operation status was last updated. */
797
+ lastActionDateTime: string;
798
+ /** Date and time in UTC when the operation was created. */
799
+ createdDateTime: string;
800
+ /** Operation ETag. */
801
+ etag?: string;
802
+ }
803
+
804
+ export declare interface DeviceOperationsListOutput {
805
+ /** The collection of pageable items. */
806
+ value: Array<DeviceOperationOutput>;
807
+ /** The link to the next page of items. */
808
+ nextLink?: string;
809
+ }
810
+
811
+ export declare interface DeviceOutput {
812
+ /** Device identity. */
813
+ deviceId: string;
814
+ /** Device module identity. */
815
+ moduleId?: string;
816
+ /** Device class identity. */
817
+ deviceClassId: string;
818
+ /** Device manufacturer. */
819
+ manufacturer: string;
820
+ /** Device model. */
821
+ model: string;
822
+ /** Device group identity. */
823
+ groupId?: string;
824
+ /** Update identity. */
825
+ lastAttemptedUpdateId?: UpdateIdOutput;
826
+ /** State of the device in its last deployment. */
827
+ deploymentStatus?: "Succeeded" | "InProgress" | "Failed" | "Canceled" | "Incompatible";
828
+ /** Update identity. */
829
+ installedUpdateId?: UpdateIdOutput;
830
+ /** Boolean flag indicating whether the latest update is installed on the device */
831
+ onLatestUpdate: boolean;
832
+ /** The deployment identifier for the last deployment to the device */
833
+ lastDeploymentId?: string;
834
+ /** Last install result. */
835
+ lastInstallResult?: InstallResultOutput;
836
+ }
837
+
838
+ export declare interface DevicesListOutput {
839
+ /** The collection of pageable items. */
840
+ value: Array<DeviceOutput>;
841
+ /** The link to the next page of items. */
842
+ nextLink?: string;
843
+ }
844
+
845
+ export declare interface DeviceTagOutput {
846
+ /** Tag name. */
847
+ tagName: string;
848
+ /** Number of devices with this tag. */
849
+ deviceCount: number;
850
+ }
851
+
852
+ export declare interface DeviceTagsListOutput {
853
+ /** The collection of pageable items. */
854
+ value: Array<DeviceTagOutput>;
855
+ /** The link to the next page of items. */
856
+ nextLink?: string;
857
+ }
858
+
859
+ declare function DeviceUpdate(endpoint: string, credentials: TokenCredential, options?: ClientOptions): DeviceUpdateRestClient;
860
+ export default DeviceUpdate;
861
+
862
+ export declare interface DeviceUpdateAgentId {
863
+ /** Device Id */
864
+ deviceId: string;
865
+ /** Module Id */
866
+ moduleId?: string;
867
+ }
868
+
869
+ export declare interface DeviceUpdateAgentIdOutput {
870
+ /** Device Id */
871
+ deviceId: string;
872
+ /** Module Id */
873
+ moduleId?: string;
874
+ }
875
+
876
+ export declare interface DeviceUpdateDeleteUpdate202Headers {
877
+ /** Url to retrieve the operation status */
878
+ "operation-location"?: string;
879
+ }
880
+
881
+ /** Delete a specific update version. */
882
+ export declare interface DeviceUpdateDeleteUpdate202Response extends HttpResponse {
883
+ status: "202";
884
+ body: Record<string, unknown>;
885
+ headers: RawHttpHeaders & DeviceUpdateDeleteUpdate202Headers;
886
+ }
887
+
888
+ /** Delete a specific update version. */
889
+ export declare interface DeviceUpdateDeleteUpdatedefaultResponse extends HttpResponse {
890
+ status: "500";
891
+ body: ErrorResponseOutput;
892
+ }
893
+
894
+ export declare type DeviceUpdateDeleteUpdateParameters = RequestParameters;
895
+
896
+ export declare interface DeviceUpdateGetFile {
897
+ /** Get a specific update file from the version. */
898
+ get(options?: DeviceUpdateGetFileParameters): Promise<DeviceUpdateGetFile200Response | DeviceUpdateGetFile304Response | DeviceUpdateGetFiledefaultResponse>;
899
+ }
900
+
901
+ /** Get a specific update file from the version. */
902
+ export declare interface DeviceUpdateGetFile200Response extends HttpResponse {
903
+ status: "200";
904
+ body: UpdateFileOutput;
905
+ }
906
+
907
+ /** Get a specific update file from the version. */
908
+ export declare interface DeviceUpdateGetFile304Response extends HttpResponse {
909
+ status: "304";
910
+ body: Record<string, unknown>;
911
+ }
912
+
913
+ /** Get a specific update file from the version. */
914
+ export declare interface DeviceUpdateGetFiledefaultResponse extends HttpResponse {
915
+ status: "500";
916
+ body: ErrorResponseOutput;
917
+ }
918
+
919
+ export declare interface DeviceUpdateGetFileHeaderParam {
920
+ headers: RawHttpHeadersInput & DeviceUpdateGetFileHeaders;
921
+ }
922
+
923
+ export declare interface DeviceUpdateGetFileHeaders {
924
+ /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */
925
+ "If-None-Match"?: string;
926
+ }
927
+
928
+ export declare type DeviceUpdateGetFileParameters = DeviceUpdateGetFileHeaderParam & RequestParameters;
929
+
930
+ export declare interface DeviceUpdateGetOperation {
931
+ /** Retrieve operation status. */
932
+ get(options?: DeviceUpdateGetOperationParameters): Promise<DeviceUpdateGetOperation200Response | DeviceUpdateGetOperation304Response | DeviceUpdateGetOperationdefaultResponse>;
933
+ }
934
+
935
+ export declare interface DeviceUpdateGetOperation200Headers {
936
+ /** Number of seconds to wait before checking the operation status again. */
937
+ "retry-after"?: string;
938
+ }
939
+
940
+ /** Retrieve operation status. */
941
+ export declare interface DeviceUpdateGetOperation200Response extends HttpResponse {
942
+ status: "200";
943
+ body: UpdateOperationOutput;
944
+ headers: RawHttpHeaders & DeviceUpdateGetOperation200Headers;
945
+ }
946
+
947
+ /** Retrieve operation status. */
948
+ export declare interface DeviceUpdateGetOperation304Response extends HttpResponse {
949
+ status: "304";
950
+ body: Record<string, unknown>;
951
+ }
952
+
953
+ /** Retrieve operation status. */
954
+ export declare interface DeviceUpdateGetOperationdefaultResponse extends HttpResponse {
955
+ status: "500";
956
+ body: ErrorResponseOutput;
957
+ }
958
+
959
+ export declare interface DeviceUpdateGetOperationHeaderParam {
960
+ headers: RawHttpHeadersInput & DeviceUpdateGetOperationHeaders;
961
+ }
962
+
963
+ export declare interface DeviceUpdateGetOperationHeaders {
964
+ /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */
965
+ "If-None-Match"?: string;
966
+ }
967
+
968
+ export declare type DeviceUpdateGetOperationParameters = DeviceUpdateGetOperationHeaderParam & RequestParameters;
969
+
970
+ export declare interface DeviceUpdateGetUpdate {
971
+ /** Get a specific update version. */
972
+ get(options?: DeviceUpdateGetUpdateParameters): Promise<DeviceUpdateGetUpdate200Response | DeviceUpdateGetUpdate304Response | DeviceUpdateGetUpdatedefaultResponse>;
973
+ /** Delete a specific update version. */
974
+ delete(options?: DeviceUpdateDeleteUpdateParameters): Promise<DeviceUpdateDeleteUpdate202Response | DeviceUpdateDeleteUpdatedefaultResponse>;
975
+ }
976
+
977
+ /** Get a specific update version. */
978
+ export declare interface DeviceUpdateGetUpdate200Response extends HttpResponse {
979
+ status: "200";
980
+ body: UpdateOutput;
981
+ }
982
+
983
+ /** Get a specific update version. */
984
+ export declare interface DeviceUpdateGetUpdate304Response extends HttpResponse {
985
+ status: "304";
986
+ body: Record<string, unknown>;
987
+ }
988
+
989
+ /** Get a specific update version. */
990
+ export declare interface DeviceUpdateGetUpdatedefaultResponse extends HttpResponse {
991
+ status: "500";
992
+ body: ErrorResponseOutput;
993
+ }
994
+
995
+ export declare interface DeviceUpdateGetUpdateHeaderParam {
996
+ headers: RawHttpHeadersInput & DeviceUpdateGetUpdateHeaders;
997
+ }
998
+
999
+ export declare interface DeviceUpdateGetUpdateHeaders {
1000
+ /** Defines the If-None-Match condition. The operation will be performed only if the ETag on the server does not match this value. */
1001
+ "If-None-Match"?: string;
1002
+ }
1003
+
1004
+ export declare type DeviceUpdateGetUpdateParameters = DeviceUpdateGetUpdateHeaderParam & RequestParameters;
1005
+
1006
+ export declare interface DeviceUpdateImportUpdate {
1007
+ /** Import new update version. */
1008
+ post(options: DeviceUpdateImportUpdateParameters): Promise<DeviceUpdateImportUpdate202Response | DeviceUpdateImportUpdatedefaultResponse>;
1009
+ /** Get a list of all updates that have been imported to Device Update for IoT Hub. */
1010
+ get(options?: DeviceUpdateListUpdatesParameters): Promise<DeviceUpdateListUpdates200Response | DeviceUpdateListUpdatesdefaultResponse>;
1011
+ }
1012
+
1013
+ export declare interface DeviceUpdateImportUpdate202Headers {
1014
+ /** Url to retrieve the import operation status. */
1015
+ "operation-location"?: string;
1016
+ }
1017
+
1018
+ /** Import new update version. */
1019
+ export declare interface DeviceUpdateImportUpdate202Response extends HttpResponse {
1020
+ status: "202";
1021
+ body: UpdateOutput;
1022
+ headers: RawHttpHeaders & DeviceUpdateImportUpdate202Headers;
1023
+ }
1024
+
1025
+ export declare interface DeviceUpdateImportUpdateBodyParam {
1026
+ /** The update to be imported. */
1027
+ body: Array<ImportUpdateInputItem>;
1028
+ }
1029
+
1030
+ /** Import new update version. */
1031
+ export declare interface DeviceUpdateImportUpdatedefaultResponse extends HttpResponse {
1032
+ status: "500";
1033
+ body: ErrorResponseOutput;
1034
+ }
1035
+
1036
+ export declare interface DeviceUpdateImportUpdateMediaTypesParam {
1037
+ /** Request content type */
1038
+ contentType?: "application/json";
1039
+ }
1040
+
1041
+ export declare type DeviceUpdateImportUpdateParameters = DeviceUpdateImportUpdateQueryParam & DeviceUpdateImportUpdateMediaTypesParam & DeviceUpdateImportUpdateBodyParam & RequestParameters;
1042
+
1043
+ export declare interface DeviceUpdateImportUpdateQueryParam {
1044
+ queryParameters: DeviceUpdateImportUpdateQueryParamProperties;
1045
+ }
1046
+
1047
+ export declare interface DeviceUpdateImportUpdateQueryParamProperties {
1048
+ /** Import update action. */
1049
+ action: "import";
1050
+ }
1051
+
1052
+ export declare interface DeviceUpdateListFiles {
1053
+ /** Get a list of all update file identifiers for the specified version. */
1054
+ get(options?: DeviceUpdateListFilesParameters): Promise<DeviceUpdateListFiles200Response | DeviceUpdateListFilesdefaultResponse>;
1055
+ }
1056
+
1057
+ /** Get a list of all update file identifiers for the specified version. */
1058
+ export declare interface DeviceUpdateListFiles200Response extends HttpResponse {
1059
+ status: "200";
1060
+ body: StringsListOutput;
1061
+ }
1062
+
1063
+ /** Get a list of all update file identifiers for the specified version. */
1064
+ export declare interface DeviceUpdateListFilesdefaultResponse extends HttpResponse {
1065
+ status: "500";
1066
+ body: ErrorResponseOutput;
1067
+ }
1068
+
1069
+ export declare type DeviceUpdateListFilesParameters = RequestParameters;
1070
+
1071
+ export declare interface DeviceUpdateListNames {
1072
+ /** Get a list of all update names that match the specified provider. */
1073
+ get(options?: DeviceUpdateListNamesParameters): Promise<DeviceUpdateListNames200Response | DeviceUpdateListNamesdefaultResponse>;
1074
+ }
1075
+
1076
+ /** Get a list of all update names that match the specified provider. */
1077
+ export declare interface DeviceUpdateListNames200Response extends HttpResponse {
1078
+ status: "200";
1079
+ body: StringsListOutput;
1080
+ }
1081
+
1082
+ /** Get a list of all update names that match the specified provider. */
1083
+ export declare interface DeviceUpdateListNamesdefaultResponse extends HttpResponse {
1084
+ status: "500";
1085
+ body: ErrorResponseOutput;
1086
+ }
1087
+
1088
+ export declare type DeviceUpdateListNamesParameters = RequestParameters;
1089
+
1090
+ export declare interface DeviceUpdateListOperations {
1091
+ /** Get a list of all import update operations. Completed operations are kept for 7 days before auto-deleted. Delete operations are not returned by this API version. */
1092
+ get(options?: DeviceUpdateListOperationsParameters): Promise<DeviceUpdateListOperations200Response | DeviceUpdateListOperationsdefaultResponse>;
1093
+ }
1094
+
1095
+ /** Get a list of all import update operations. Completed operations are kept for 7 days before auto-deleted. Delete operations are not returned by this API version. */
1096
+ export declare interface DeviceUpdateListOperations200Response extends HttpResponse {
1097
+ status: "200";
1098
+ body: UpdateOperationsListOutput;
1099
+ }
1100
+
1101
+ /** Get a list of all import update operations. Completed operations are kept for 7 days before auto-deleted. Delete operations are not returned by this API version. */
1102
+ export declare interface DeviceUpdateListOperationsdefaultResponse extends HttpResponse {
1103
+ status: "500";
1104
+ body: ErrorResponseOutput;
1105
+ }
1106
+
1107
+ export declare type DeviceUpdateListOperationsParameters = DeviceUpdateListOperationsQueryParam & RequestParameters;
1108
+
1109
+ export declare interface DeviceUpdateListOperationsQueryParam {
1110
+ queryParameters?: DeviceUpdateListOperationsQueryParamProperties;
1111
+ }
1112
+
1113
+ export declare interface DeviceUpdateListOperationsQueryParamProperties {
1114
+ /** Restricts the set of operations returned. Only one specific filter is supported: "status eq 'NotStarted' or status eq 'Running'" */
1115
+ $filter?: string;
1116
+ /** Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n. */
1117
+ $top?: number;
1118
+ }
1119
+
1120
+ export declare interface DeviceUpdateListProviders {
1121
+ /** Get a list of all update providers that have been imported to Device Update for IoT Hub. */
1122
+ get(options?: DeviceUpdateListProvidersParameters): Promise<DeviceUpdateListProviders200Response | DeviceUpdateListProvidersdefaultResponse>;
1123
+ }
1124
+
1125
+ /** Get a list of all update providers that have been imported to Device Update for IoT Hub. */
1126
+ export declare interface DeviceUpdateListProviders200Response extends HttpResponse {
1127
+ status: "200";
1128
+ body: StringsListOutput;
1129
+ }
1130
+
1131
+ /** Get a list of all update providers that have been imported to Device Update for IoT Hub. */
1132
+ export declare interface DeviceUpdateListProvidersdefaultResponse extends HttpResponse {
1133
+ status: "500";
1134
+ body: ErrorResponseOutput;
1135
+ }
1136
+
1137
+ export declare type DeviceUpdateListProvidersParameters = RequestParameters;
1138
+
1139
+ /** Get a list of all updates that have been imported to Device Update for IoT Hub. */
1140
+ export declare interface DeviceUpdateListUpdates200Response extends HttpResponse {
1141
+ status: "200";
1142
+ body: UpdateListOutput;
1143
+ }
1144
+
1145
+ /** Get a list of all updates that have been imported to Device Update for IoT Hub. */
1146
+ export declare interface DeviceUpdateListUpdatesdefaultResponse extends HttpResponse {
1147
+ status: "500";
1148
+ body: ErrorResponseOutput;
1149
+ }
1150
+
1151
+ export declare type DeviceUpdateListUpdatesParameters = DeviceUpdateListUpdatesQueryParam & RequestParameters;
1152
+
1153
+ export declare interface DeviceUpdateListUpdatesQueryParam {
1154
+ queryParameters?: DeviceUpdateListUpdatesQueryParamProperties;
1155
+ }
1156
+
1157
+ export declare interface DeviceUpdateListUpdatesQueryParamProperties {
1158
+ /** Request updates matching a free-text search expression. */
1159
+ $search?: string;
1160
+ /** Filter updates by its properties. */
1161
+ $filter?: string;
1162
+ }
1163
+
1164
+ export declare interface DeviceUpdateListVersions {
1165
+ /** Get a list of all update versions that match the specified provider and name. */
1166
+ get(options?: DeviceUpdateListVersionsParameters): Promise<DeviceUpdateListVersions200Response | DeviceUpdateListVersionsdefaultResponse>;
1167
+ }
1168
+
1169
+ /** Get a list of all update versions that match the specified provider and name. */
1170
+ export declare interface DeviceUpdateListVersions200Response extends HttpResponse {
1171
+ status: "200";
1172
+ body: StringsListOutput;
1173
+ }
1174
+
1175
+ /** Get a list of all update versions that match the specified provider and name. */
1176
+ export declare interface DeviceUpdateListVersionsdefaultResponse extends HttpResponse {
1177
+ status: "500";
1178
+ body: ErrorResponseOutput;
1179
+ }
1180
+
1181
+ export declare type DeviceUpdateListVersionsParameters = DeviceUpdateListVersionsQueryParam & RequestParameters;
1182
+
1183
+ export declare interface DeviceUpdateListVersionsQueryParam {
1184
+ queryParameters?: DeviceUpdateListVersionsQueryParamProperties;
1185
+ }
1186
+
1187
+ export declare interface DeviceUpdateListVersionsQueryParamProperties {
1188
+ /** Filter updates by its properties. */
1189
+ $filter?: string;
1190
+ }
1191
+
1192
+ export declare type DeviceUpdateRestClient = Client & {
1193
+ path: Routes;
1194
+ };
1195
+
1196
+ export declare interface ErrorModelOutput {
1197
+ /** Server defined error code. */
1198
+ code: string;
1199
+ /** A human-readable representation of the error. */
1200
+ message: string;
1201
+ /** The target of the error. */
1202
+ target?: string;
1203
+ /** An array of errors that led to the reported error. */
1204
+ details?: Array<ErrorModelOutput>;
1205
+ /** An object containing more specific information than the current object about the error. */
1206
+ innererror?: InnerErrorOutput;
1207
+ /** Date and time in UTC when the error occurred. */
1208
+ occurredDateTime?: string;
1209
+ }
1210
+
1211
+ export declare interface ErrorResponseOutput {
1212
+ /** The error details. */
1213
+ error: ErrorModelOutput;
1214
+ }
1215
+
1216
+ export declare interface FileImportMetadata {
1217
+ /** Update file name as specified inside import manifest. */
1218
+ filename: string;
1219
+ /** Azure Blob location from which the update file can be downloaded by Device Update for IoT Hub. This is typically a read-only SAS-protected blob URL with an expiration set to at least 4 hours. */
1220
+ url: string;
1221
+ }
1222
+
1223
+ /**
1224
+ * Helper type to extract the type of an array
1225
+ */
1226
+ export declare type GetArrayType<T> = T extends Array<infer TData> ? TData : never;
1227
+
1228
+ /**
1229
+ * Helper function that builds a Poller object to help polling a long running operation.
1230
+ * @param client - Client to use for sending the request to get additional pages.
1231
+ * @param initialResponse - The initial response.
1232
+ * @param options - Options to set a resume state or custom polling interval.
1233
+ * @returns - A poller object to poll for operation state updates and eventually get the final response.
1234
+ */
1235
+ export declare function getLongRunningPoller<TResult extends HttpResponse>(client: Client, initialResponse: TResult, options?: LroEngineOptions<TResult, PollOperationState<TResult>>): PollerLike<PollOperationState<TResult>, TResult>;
1236
+
1237
+ /**
1238
+ * The type of a custom function that defines how to get a page and a link to the next one if any.
1239
+ */
1240
+ export declare type GetPage<TPage> = (pageLink: string, maxPageSize?: number) => Promise<{
1241
+ page: TPage;
1242
+ nextPageLink?: string;
1243
+ }>;
1244
+
1245
+ export declare interface Group {
1246
+ /** Group identity. */
1247
+ groupId: string;
1248
+ /** Group type. */
1249
+ groupType: "DeviceClassIdAndIoTHubTag" | "InvalidDeviceClassIdAndIoTHubTag" | "DefaultDeviceClassId";
1250
+ /** IoT Hub tags. */
1251
+ tags: Array<string>;
1252
+ /** Date and time when the update was created. */
1253
+ createdDateTime: string;
1254
+ /** The number of devices in the group. */
1255
+ deviceCount?: number;
1256
+ /** The deployment Id for the group. */
1257
+ deploymentId?: string;
1258
+ /** The device class Id for the group. */
1259
+ deviceClassId?: string;
1260
+ }
1261
+
1262
+ export declare interface GroupOutput {
1263
+ /** Group identity. */
1264
+ groupId: string;
1265
+ /** Group type. */
1266
+ groupType: "DeviceClassIdAndIoTHubTag" | "InvalidDeviceClassIdAndIoTHubTag" | "DefaultDeviceClassId";
1267
+ /** IoT Hub tags. */
1268
+ tags: Array<string>;
1269
+ /** Date and time when the update was created. */
1270
+ createdDateTime: string;
1271
+ /** The number of devices in the group. */
1272
+ deviceCount?: number;
1273
+ /** The deployment Id for the group. */
1274
+ deploymentId?: string;
1275
+ /** The device class Id for the group. */
1276
+ deviceClassId?: string;
1277
+ }
1278
+
1279
+ export declare interface GroupsListOutput {
1280
+ /** The collection of pageable items. */
1281
+ value: Array<GroupOutput>;
1282
+ /** The link to the next page of items. */
1283
+ nextLink?: string;
1284
+ }
1285
+
1286
+ export declare interface ImportManifestMetadata {
1287
+ /** Azure Blob location from which the import manifest can be downloaded by Device Update for IoT Hub. This is typically a read-only SAS-protected blob URL with an expiration set to at least 4 hours. */
1288
+ url: string;
1289
+ /** File size in number of bytes. */
1290
+ sizeInBytes: number;
1291
+ /** A JSON object containing the hash(es) of the file. At least SHA256 hash is required. This object can be thought of as a set of key-value pairs where the key is the hash algorithm, and the value is the hash of the file calculated using that algorithm. */
1292
+ hashes: Record<string, string>;
1293
+ }
1294
+
1295
+ export declare interface ImportUpdateInputItem {
1296
+ /** Import manifest metadata like source URL, file size/hashes, etc. */
1297
+ importManifest: ImportManifestMetadata;
1298
+ /** Friendly update name. */
1299
+ friendlyName?: string;
1300
+ /** One or more update file properties like filename and source URL. */
1301
+ files?: Array<FileImportMetadata>;
1302
+ }
1303
+
1304
+ export declare interface InnerErrorOutput {
1305
+ /** A more specific error code than what was provided by the containing error. */
1306
+ code: string;
1307
+ /** A human-readable representation of the error. */
1308
+ message?: string;
1309
+ /** The internal error or exception message. */
1310
+ errorDetail?: string;
1311
+ /** An object containing more specific information than the current object about the error. */
1312
+ innerError?: InnerErrorOutput;
1313
+ }
1314
+
1315
+ export declare interface InstallResultOutput {
1316
+ /** Install result code. */
1317
+ resultCode: number;
1318
+ /** Install extended result code */
1319
+ extendedResultCode: number;
1320
+ /** A string containing further details about the install result */
1321
+ resultDetails?: string;
1322
+ /** Array of step results */
1323
+ stepResults?: Array<StepResultOutput>;
1324
+ }
1325
+
1326
+ export declare interface InstructionsOutput {
1327
+ /** Collection of installation steps. */
1328
+ steps: Array<StepOutput>;
1329
+ }
1330
+
1331
+ export declare interface LogCollectionOperation {
1332
+ /** The diagnostics operation id. */
1333
+ operationId?: string;
1334
+ /** Array of Device Update agent ids */
1335
+ deviceList: Array<DeviceUpdateAgentId>;
1336
+ /** Description of the diagnostics operation. */
1337
+ description?: string;
1338
+ /** The timestamp when the operation was created. */
1339
+ createdDateTime?: string;
1340
+ /** A timestamp for when the current state was entered. */
1341
+ lastActionDateTime?: string;
1342
+ /** Operation status. */
1343
+ status?: "Undefined" | "NotStarted" | "Running" | "Succeeded" | "Failed";
1344
+ }
1345
+
1346
+ export declare interface LogCollectionOperationDetailedStatusOutput {
1347
+ /** The device diagnostics operation id. */
1348
+ operationId?: string;
1349
+ /** The timestamp when the operation was created. */
1350
+ createdDateTime?: string;
1351
+ /** A timestamp for when the current state was entered. */
1352
+ lastActionDateTime?: string;
1353
+ /** Operation status. */
1354
+ status?: "Undefined" | "NotStarted" | "Running" | "Succeeded" | "Failed";
1355
+ /** Status of the devices in the operation */
1356
+ deviceStatus?: Array<LogCollectionOperationDeviceStatusOutput>;
1357
+ /** Device diagnostics operation description. */
1358
+ description?: string;
1359
+ }
1360
+
1361
+ export declare interface LogCollectionOperationDeviceStatusOutput {
1362
+ /** Device id */
1363
+ deviceId: string;
1364
+ /** Module id. */
1365
+ moduleId?: string;
1366
+ /** Log upload status */
1367
+ status: "Undefined" | "NotStarted" | "Running" | "Succeeded" | "Failed";
1368
+ /** Log upload result code */
1369
+ resultCode?: string;
1370
+ /** Log upload extended result code */
1371
+ extendedResultCode?: string;
1372
+ /** Log upload location */
1373
+ logLocation?: string;
1374
+ }
1375
+
1376
+ export declare interface LogCollectionOperationListOutput {
1377
+ /** The collection of pageable items. */
1378
+ value: Array<LogCollectionOperationOutput>;
1379
+ /** The link to the next page of items. */
1380
+ nextLink?: string;
1381
+ }
1382
+
1383
+ export declare interface LogCollectionOperationOutput {
1384
+ /** The diagnostics operation id. */
1385
+ operationId?: string;
1386
+ /** Array of Device Update agent ids */
1387
+ deviceList: Array<DeviceUpdateAgentIdOutput>;
1388
+ /** Description of the diagnostics operation. */
1389
+ description?: string;
1390
+ /** The timestamp when the operation was created. */
1391
+ createdDateTime?: string;
1392
+ /** A timestamp for when the current state was entered. */
1393
+ lastActionDateTime?: string;
1394
+ /** Operation status. */
1395
+ status?: "Undefined" | "NotStarted" | "Running" | "Succeeded" | "Failed";
1396
+ }
1397
+
1398
+ /**
1399
+ * Helper to paginate results from an initial response that follows the specification of Autorest `x-ms-pageable` extension
1400
+ * @param client - Client to use for sending the next page requests
1401
+ * @param initialResponse - Initial response containing the nextLink and current page of elements
1402
+ * @param customGetPage - Optional - Function to define how to extract the page and next link to be used to paginate the results
1403
+ * @returns - PagedAsyncIterableIterator to iterate the elements
1404
+ */
1405
+ export declare function paginate<TResponse extends PathUncheckedResponse>(client: Client, initialResponse: TResponse, options?: PagingOptions<TResponse>): PagedAsyncIterableIterator<PaginateReturn<TResponse>>;
1406
+
1407
+ /**
1408
+ * Helper type to infer the Type of the paged elements from the response type
1409
+ * This type is generated based on the swagger information for x-ms-pageable
1410
+ * specifically on the itemName property which indicates the property of the response
1411
+ * where the page items are found. The default value is `value`.
1412
+ * This type will allow us to provide strongly typed Iterator based on the response we get as second parameter
1413
+ */
1414
+ export declare type PaginateReturn<TResult> = TResult extends {
1415
+ body: {
1416
+ value?: infer TPage;
1417
+ };
1418
+ } ? GetArrayType<TPage> : Array<unknown>;
1419
+
1420
+ /**
1421
+ * Options for the paging helper
1422
+ */
1423
+ export declare interface PagingOptions<TResponse> {
1424
+ /**
1425
+ * Custom function to extract pagination details for crating the PagedAsyncIterableIterator
1426
+ */
1427
+ customGetPage?: GetPage<PaginateReturn<TResponse>[]>;
1428
+ }
1429
+
1430
+ export declare interface Routes {
1431
+ /** Resource for '/deviceupdate/\{instanceId\}/updates' has methods for the following verbs: post, get */
1432
+ (path: "/deviceupdate/{instanceId}/updates", instanceId: string): DeviceUpdateImportUpdate;
1433
+ /** Resource for '/deviceupdate/\{instanceId\}/updates/providers/\{provider\}/names/\{name\}/versions/\{version\}' has methods for the following verbs: get, delete */
1434
+ (path: "/deviceupdate/{instanceId}/updates/providers/{provider}/names/{name}/versions/{version}", instanceId: string, provider: string, name: string, version: string): DeviceUpdateGetUpdate;
1435
+ /** Resource for '/deviceupdate/\{instanceId\}/updates/providers' has methods for the following verbs: get */
1436
+ (path: "/deviceupdate/{instanceId}/updates/providers", instanceId: string): DeviceUpdateListProviders;
1437
+ /** Resource for '/deviceupdate/\{instanceId\}/updates/providers/\{provider\}/names' has methods for the following verbs: get */
1438
+ (path: "/deviceupdate/{instanceId}/updates/providers/{provider}/names", instanceId: string, provider: string): DeviceUpdateListNames;
1439
+ /** Resource for '/deviceupdate/\{instanceId\}/updates/providers/\{provider\}/names/\{name\}/versions' has methods for the following verbs: get */
1440
+ (path: "/deviceupdate/{instanceId}/updates/providers/{provider}/names/{name}/versions", instanceId: string, provider: string, name: string): DeviceUpdateListVersions;
1441
+ /** Resource for '/deviceupdate/\{instanceId\}/updates/providers/\{provider\}/names/\{name\}/versions/\{version\}/files' has methods for the following verbs: get */
1442
+ (path: "/deviceupdate/{instanceId}/updates/providers/{provider}/names/{name}/versions/{version}/files", instanceId: string, provider: string, name: string, version: string): DeviceUpdateListFiles;
1443
+ /** Resource for '/deviceupdate/\{instanceId\}/updates/providers/\{provider\}/names/\{name\}/versions/\{version\}/files/\{fileId\}' has methods for the following verbs: get */
1444
+ (path: "/deviceupdate/{instanceId}/updates/providers/{provider}/names/{name}/versions/{version}/files/{fileId}", instanceId: string, provider: string, name: string, version: string, fileId: string): DeviceUpdateGetFile;
1445
+ /** Resource for '/deviceupdate/\{instanceId\}/updates/operations' has methods for the following verbs: get */
1446
+ (path: "/deviceupdate/{instanceId}/updates/operations", instanceId: string): DeviceUpdateListOperations;
1447
+ /** Resource for '/deviceupdate/\{instanceId\}/updates/operations/\{operationId\}' has methods for the following verbs: get */
1448
+ (path: "/deviceupdate/{instanceId}/updates/operations/{operationId}", instanceId: string, operationId: string): DeviceUpdateGetOperation;
1449
+ /** Resource for '/deviceupdate/\{instanceId\}/management/deviceclasses' has methods for the following verbs: get */
1450
+ (path: "/deviceupdate/{instanceId}/management/deviceclasses", instanceId: string): DeviceManagementListDeviceClasses;
1451
+ /** Resource for '/deviceupdate/\{instanceId\}/management/deviceclasses/\{deviceClassId\}' has methods for the following verbs: get */
1452
+ (path: "/deviceupdate/{instanceId}/management/deviceclasses/{deviceClassId}", instanceId: string, deviceClassId: string): DeviceManagementGetDeviceClass;
1453
+ /** Resource for '/deviceupdate/\{instanceId\}/management/deviceclasses/\{deviceClassId\}/installableupdates' has methods for the following verbs: get */
1454
+ (path: "/deviceupdate/{instanceId}/management/deviceclasses/{deviceClassId}/installableupdates", instanceId: string, deviceClassId: string): DeviceManagementListInstallableUpdatesForDeviceClass;
1455
+ /** Resource for '/deviceupdate/\{instanceId\}/management/devices' has methods for the following verbs: get, post */
1456
+ (path: "/deviceupdate/{instanceId}/management/devices", instanceId: string): DeviceManagementListDevices;
1457
+ /** Resource for '/deviceupdate/\{instanceId\}/management/devices/\{deviceId\}' has methods for the following verbs: get */
1458
+ (path: "/deviceupdate/{instanceId}/management/devices/{deviceId}", instanceId: string, deviceId: string): DeviceManagementGetDevice;
1459
+ /** Resource for '/deviceupdate/\{instanceId\}/management/devices/\{deviceId\}/modules/\{moduleId\}' has methods for the following verbs: get */
1460
+ (path: "/deviceupdate/{instanceId}/management/devices/{deviceId}/modules/{moduleId}", instanceId: string, deviceId: string, moduleId: string): DeviceManagementGetDeviceModule;
1461
+ /** Resource for '/deviceupdate/\{instanceId\}/management/updatecompliance' has methods for the following verbs: get */
1462
+ (path: "/deviceupdate/{instanceId}/management/updatecompliance", instanceId: string): DeviceManagementGetUpdateCompliance;
1463
+ /** Resource for '/deviceupdate/\{instanceId\}/management/devicetags' has methods for the following verbs: get */
1464
+ (path: "/deviceupdate/{instanceId}/management/devicetags", instanceId: string): DeviceManagementListDeviceTags;
1465
+ /** Resource for '/deviceupdate/\{instanceId\}/management/devicetags/\{tagName\}' has methods for the following verbs: get */
1466
+ (path: "/deviceupdate/{instanceId}/management/devicetags/{tagName}", instanceId: string, tagName: string): DeviceManagementGetDeviceTag;
1467
+ /** Resource for '/deviceupdate/\{instanceId\}/management/groups' has methods for the following verbs: get */
1468
+ (path: "/deviceupdate/{instanceId}/management/groups", instanceId: string): DeviceManagementListGroups;
1469
+ /** Resource for '/deviceupdate/\{instanceId\}/management/groups/\{groupId\}' has methods for the following verbs: get, put, delete */
1470
+ (path: "/deviceupdate/{instanceId}/management/groups/{groupId}", instanceId: string, groupId: string): DeviceManagementGetGroup;
1471
+ /** Resource for '/deviceupdate/\{instanceId\}/management/groups/\{groupId\}/updateCompliance' has methods for the following verbs: get */
1472
+ (path: "/deviceupdate/{instanceId}/management/groups/{groupId}/updateCompliance", instanceId: string, groupId: string): DeviceManagementGetGroupUpdateCompliance;
1473
+ /** Resource for '/deviceupdate/\{instanceId\}/management/groups/\{groupId\}/bestUpdates' has methods for the following verbs: get */
1474
+ (path: "/deviceupdate/{instanceId}/management/groups/{groupId}/bestUpdates", instanceId: string, groupId: string): DeviceManagementListBestUpdatesForGroup;
1475
+ /** Resource for '/deviceupdate/\{instanceId\}/management/groups/\{groupId\}/deployments' has methods for the following verbs: get */
1476
+ (path: "/deviceupdate/{instanceId}/management/groups/{groupId}/deployments", instanceId: string, groupId: string): DeviceManagementListDeploymentsForGroup;
1477
+ /** Resource for '/deviceupdate/\{instanceId\}/management/groups/\{groupId\}/deployments/\{deploymentId\}' has methods for the following verbs: get, put, delete, post */
1478
+ (path: "/deviceupdate/{instanceId}/management/groups/{groupId}/deployments/{deploymentId}", instanceId: string, groupId: string, deploymentId: string): DeviceManagementGetDeployment;
1479
+ /** Resource for '/deviceupdate/\{instanceId\}/management/groups/\{groupId\}/deployments/\{deploymentId\}/status' has methods for the following verbs: get */
1480
+ (path: "/deviceupdate/{instanceId}/management/groups/{groupId}/deployments/{deploymentId}/status", instanceId: string, groupId: string, deploymentId: string): DeviceManagementGetDeploymentStatus;
1481
+ /** Resource for '/deviceupdate/\{instanceId\}/management/groups/\{groupId\}/deployments/\{deploymentId\}/devicestates' has methods for the following verbs: get */
1482
+ (path: "/deviceupdate/{instanceId}/management/groups/{groupId}/deployments/{deploymentId}/devicestates", instanceId: string, groupId: string, deploymentId: string): DeviceManagementListDeploymentDevices;
1483
+ /** Resource for '/deviceupdate/\{instanceId\}/management/operations/\{operationId\}' has methods for the following verbs: get */
1484
+ (path: "/deviceupdate/{instanceId}/management/operations/{operationId}", instanceId: string, operationId: string): DeviceManagementGetOperation;
1485
+ /** Resource for '/deviceupdate/\{instanceId\}/management/operations' has methods for the following verbs: get */
1486
+ (path: "/deviceupdate/{instanceId}/management/operations", instanceId: string): DeviceManagementListOperations;
1487
+ /** Resource for '/deviceupdate/\{instanceId\}/management/deviceDiagnostics/logCollections/\{operationId\}' has methods for the following verbs: put, get */
1488
+ (path: "/deviceupdate/{instanceId}/management/deviceDiagnostics/logCollections/{operationId}", instanceId: string, operationId: string): DeviceManagementCollectLogs;
1489
+ /** Resource for '/deviceupdate/\{instanceId\}/management/deviceDiagnostics/logCollections' has methods for the following verbs: get */
1490
+ (path: "/deviceupdate/{instanceId}/management/deviceDiagnostics/logCollections", instanceId: string): DeviceManagementListLogCollectionOperations;
1491
+ /** Resource for '/deviceupdate/\{instanceId\}/management/deviceDiagnostics/logCollections/\{operationId\}/detailedStatus' has methods for the following verbs: get */
1492
+ (path: "/deviceupdate/{instanceId}/management/deviceDiagnostics/logCollections/{operationId}/detailedStatus", instanceId: string, operationId: string): DeviceManagementGetLogCollectionOperationDetailedStatus;
1493
+ }
1494
+
1495
+ export declare interface StepOutput {
1496
+ /** Step type. */
1497
+ type?: "Inline" | "Reference";
1498
+ /** Step description. */
1499
+ description?: string;
1500
+ /** Identity of handler that will execute this step. Required if step type is inline. */
1501
+ handler?: string;
1502
+ /** Parameters to be passed to handler during execution. */
1503
+ handlerProperties?: Record<string, unknown>;
1504
+ /** Collection of file names to be passed to handler during execution. Required if step type is inline. */
1505
+ files?: Array<string>;
1506
+ /** Referenced child update identity. Required if step type is reference. */
1507
+ updateId?: UpdateIdOutput;
1508
+ }
1509
+
1510
+ export declare interface StepResultOutput {
1511
+ /** It is update id for update steps; otherwise it is null. */
1512
+ updateId?: UpdateIdOutput;
1513
+ /** Step description. It might be null for update steps. */
1514
+ description?: string;
1515
+ /** Install result code. */
1516
+ resultCode: number;
1517
+ /** Install extended result code */
1518
+ extendedResultCode: number;
1519
+ /** A string containing further details about the install result */
1520
+ resultDetails?: string;
1521
+ }
1522
+
1523
+ export declare interface StringsListOutput {
1524
+ /** The collection of pageable items. */
1525
+ value: Array<string>;
1526
+ /** The link to the next page of items. */
1527
+ nextLink?: string;
1528
+ }
1529
+
1530
+ export declare interface UpdatableDevicesListOutput {
1531
+ /** The collection of pageable items. */
1532
+ value: Array<UpdatableDevicesOutput>;
1533
+ /** The link to the next page of items. */
1534
+ nextLink?: string;
1535
+ }
1536
+
1537
+ export declare interface UpdatableDevicesOutput {
1538
+ /** Update identity. */
1539
+ updateId: UpdateIdOutput;
1540
+ /** Total number of devices for which the update is applicable. */
1541
+ deviceCount: number;
1542
+ }
1543
+
1544
+ export declare interface UpdateComplianceOutput {
1545
+ /** Total number of devices. */
1546
+ totalDeviceCount: number;
1547
+ /** Number of devices on the latest update. */
1548
+ onLatestUpdateDeviceCount: number;
1549
+ /** Number of devices with a newer update available. */
1550
+ newUpdatesAvailableDeviceCount: number;
1551
+ /** Number of devices with update in-progress. */
1552
+ updatesInProgressDeviceCount: number;
1553
+ }
1554
+
1555
+ export declare interface UpdateFileOutput {
1556
+ /** File identity, generated by server at import time. */
1557
+ fileId: string;
1558
+ /** File name. */
1559
+ fileName: string;
1560
+ /** File size in number of bytes. */
1561
+ sizeInBytes: number;
1562
+ /** Mapping of hashing algorithm to base64 encoded hash values. */
1563
+ hashes: Record<string, string>;
1564
+ /** File MIME type. */
1565
+ mimeType?: string;
1566
+ /** Anti-malware scan result. */
1567
+ scanResult?: string;
1568
+ /** Anti-malware scan details. */
1569
+ scanDetails?: string;
1570
+ /** File ETag. */
1571
+ etag?: string;
1572
+ }
1573
+
1574
+ export declare interface UpdateId {
1575
+ /** Update provider. */
1576
+ provider: string;
1577
+ /** Update name. */
1578
+ name: string;
1579
+ /** Update version. */
1580
+ version: string;
1581
+ }
1582
+
1583
+ export declare interface UpdateIdOutput {
1584
+ /** Update provider. */
1585
+ provider: string;
1586
+ /** Update name. */
1587
+ name: string;
1588
+ /** Update version. */
1589
+ version: string;
1590
+ }
1591
+
1592
+ export declare interface UpdateIdsListOutput {
1593
+ /** The collection of pageable items. */
1594
+ value: Array<UpdateIdOutput>;
1595
+ /** The link to the next page of items. */
1596
+ nextLink?: string;
1597
+ }
1598
+
1599
+ export declare interface UpdateListOutput {
1600
+ /** The collection of pageable items. */
1601
+ value: Array<UpdateOutput>;
1602
+ /** The link to the next page of items. */
1603
+ nextLink?: string;
1604
+ }
1605
+
1606
+ export declare interface UpdateOperationOutput {
1607
+ /** Operation Id. */
1608
+ operationId: string;
1609
+ /** Operation status. */
1610
+ status: "Undefined" | "NotStarted" | "Running" | "Succeeded" | "Failed";
1611
+ /** The identity of update being imported or deleted. For import, this property will only be populated after import manifest is processed successfully. */
1612
+ updateId?: UpdateIdOutput;
1613
+ /** Location of the imported update when operation is successful. */
1614
+ resourceLocation?: string;
1615
+ /** Operation error encountered, if any. */
1616
+ error?: ErrorModelOutput;
1617
+ /** Operation correlation identity that can used by Microsoft Support for troubleshooting. */
1618
+ traceId?: string;
1619
+ /** Date and time in UTC when the operation status was last updated. */
1620
+ lastActionDateTime: string;
1621
+ /** Date and time in UTC when the operation was created. */
1622
+ createdDateTime: string;
1623
+ /** Operation ETag. */
1624
+ etag?: string;
1625
+ }
1626
+
1627
+ export declare interface UpdateOperationsListOutput {
1628
+ /** The collection of pageable items. */
1629
+ value: Array<UpdateOperationOutput>;
1630
+ /** The link to the next page of items. */
1631
+ nextLink?: string;
1632
+ }
1633
+
1634
+ export declare interface UpdateOutput {
1635
+ /** Update identity. */
1636
+ updateId: UpdateIdOutput;
1637
+ /** Update description specified by creator. */
1638
+ description?: string;
1639
+ /** Friendly update name specified by importer. */
1640
+ friendlyName?: string;
1641
+ /** Whether the update can be deployed to a device on its own. */
1642
+ isDeployable?: boolean;
1643
+ /** Update type. Deprecated in latest import manifest schema. */
1644
+ updateType?: string;
1645
+ /** String interpreted by Device Update client to determine if the update is installed on the device. Deprecated in latest import manifest schema. */
1646
+ installedCriteria?: string;
1647
+ /** List of update compatibility information. */
1648
+ compatibility: Array<Record<string, string>>;
1649
+ /** Update install instructions. */
1650
+ instructions?: InstructionsOutput;
1651
+ /** List of update identities that reference this update. */
1652
+ referencedBy?: Array<UpdateIdOutput>;
1653
+ /** Update aggregate scan result (calculated from payload file scan results). */
1654
+ scanResult?: string;
1655
+ /** Schema version of manifest used to import the update. */
1656
+ manifestVersion: string;
1657
+ /** Date and time in UTC when the update was imported. */
1658
+ importedDateTime: string;
1659
+ /** Date and time in UTC when the update was created. */
1660
+ createdDateTime: string;
1661
+ /** Update ETag. */
1662
+ etag?: string;
1663
+ }
1664
+
1665
+ export { }