@azure/arm-databox 5.0.0-beta.2 → 5.0.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 (104) hide show
  1. package/CHANGELOG.md +2 -2
  2. package/LICENSE +1 -1
  3. package/README.md +2 -2
  4. package/dist/index.js +973 -182
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.min.js +1 -1
  7. package/dist/index.min.js.map +1 -1
  8. package/dist-esm/samples-dev/jobsBookShipmentPickUpSample.js +12 -5
  9. package/dist-esm/samples-dev/jobsBookShipmentPickUpSample.js.map +1 -1
  10. package/dist-esm/samples-dev/jobsCancelSample.js +12 -5
  11. package/dist-esm/samples-dev/jobsCancelSample.js.map +1 -1
  12. package/dist-esm/samples-dev/jobsCreateSample.js +93 -86
  13. package/dist-esm/samples-dev/jobsCreateSample.js.map +1 -1
  14. package/dist-esm/samples-dev/jobsDeleteSample.js +12 -5
  15. package/dist-esm/samples-dev/jobsDeleteSample.js.map +1 -1
  16. package/dist-esm/samples-dev/jobsGetSample.js +32 -25
  17. package/dist-esm/samples-dev/jobsGetSample.js.map +1 -1
  18. package/dist-esm/samples-dev/jobsListByResourceGroupSample.js +23 -9
  19. package/dist-esm/samples-dev/jobsListByResourceGroupSample.js.map +1 -1
  20. package/dist-esm/samples-dev/jobsListCredentialsSample.js +24 -10
  21. package/dist-esm/samples-dev/jobsListCredentialsSample.js.map +1 -1
  22. package/dist-esm/samples-dev/jobsListSample.js +22 -8
  23. package/dist-esm/samples-dev/jobsListSample.js.map +1 -1
  24. package/dist-esm/samples-dev/jobsMarkDevicesShippedSample.js +16 -6
  25. package/dist-esm/samples-dev/jobsMarkDevicesShippedSample.js.map +1 -1
  26. package/dist-esm/samples-dev/jobsUpdateSample.js +39 -32
  27. package/dist-esm/samples-dev/jobsUpdateSample.js.map +1 -1
  28. package/dist-esm/samples-dev/mitigateSample.js +16 -6
  29. package/dist-esm/samples-dev/mitigateSample.js.map +1 -1
  30. package/dist-esm/samples-dev/operationsListSample.js +23 -8
  31. package/dist-esm/samples-dev/operationsListSample.js.map +1 -1
  32. package/dist-esm/samples-dev/serviceListAvailableSkusByResourceGroupSample.js +24 -10
  33. package/dist-esm/samples-dev/serviceListAvailableSkusByResourceGroupSample.js.map +1 -1
  34. package/dist-esm/samples-dev/serviceRegionConfigurationByResourceGroupSample.js +11 -4
  35. package/dist-esm/samples-dev/serviceRegionConfigurationByResourceGroupSample.js.map +1 -1
  36. package/dist-esm/samples-dev/serviceRegionConfigurationSample.js +10 -3
  37. package/dist-esm/samples-dev/serviceRegionConfigurationSample.js.map +1 -1
  38. package/dist-esm/samples-dev/serviceValidateAddressSample.js +17 -10
  39. package/dist-esm/samples-dev/serviceValidateAddressSample.js.map +1 -1
  40. package/dist-esm/samples-dev/serviceValidateInputsByResourceGroupSample.js +20 -13
  41. package/dist-esm/samples-dev/serviceValidateInputsByResourceGroupSample.js.map +1 -1
  42. package/dist-esm/samples-dev/serviceValidateInputsSample.js +19 -12
  43. package/dist-esm/samples-dev/serviceValidateInputsSample.js.map +1 -1
  44. package/dist-esm/src/dataBoxManagementClient.d.ts +2 -0
  45. package/dist-esm/src/dataBoxManagementClient.d.ts.map +1 -1
  46. package/dist-esm/src/dataBoxManagementClient.js +50 -19
  47. package/dist-esm/src/dataBoxManagementClient.js.map +1 -1
  48. package/dist-esm/src/index.d.ts +1 -0
  49. package/dist-esm/src/index.d.ts.map +1 -1
  50. package/dist-esm/src/index.js +1 -0
  51. package/dist-esm/src/index.js.map +1 -1
  52. package/dist-esm/src/lroImpl.d.ts +6 -11
  53. package/dist-esm/src/lroImpl.d.ts.map +1 -1
  54. package/dist-esm/src/lroImpl.js +12 -20
  55. package/dist-esm/src/lroImpl.js.map +1 -1
  56. package/dist-esm/src/models/index.d.ts +479 -145
  57. package/dist-esm/src/models/index.d.ts.map +1 -1
  58. package/dist-esm/src/models/index.js +69 -1
  59. package/dist-esm/src/models/index.js.map +1 -1
  60. package/dist-esm/src/models/mappers.d.ts +11 -0
  61. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  62. package/dist-esm/src/models/mappers.js +614 -46
  63. package/dist-esm/src/models/mappers.js.map +1 -1
  64. package/dist-esm/src/models/parameters.js +1 -1
  65. package/dist-esm/src/models/parameters.js.map +1 -1
  66. package/dist-esm/src/operations/jobs.d.ts +4 -4
  67. package/dist-esm/src/operations/jobs.d.ts.map +1 -1
  68. package/dist-esm/src/operations/jobs.js +107 -49
  69. package/dist-esm/src/operations/jobs.js.map +1 -1
  70. package/dist-esm/src/operations/operations.d.ts.map +1 -1
  71. package/dist-esm/src/operations/operations.js +31 -13
  72. package/dist-esm/src/operations/operations.js.map +1 -1
  73. package/dist-esm/src/operations/service.d.ts.map +1 -1
  74. package/dist-esm/src/operations/service.js +31 -13
  75. package/dist-esm/src/operations/service.js.map +1 -1
  76. package/dist-esm/src/operationsInterfaces/jobs.d.ts +4 -4
  77. package/dist-esm/src/operationsInterfaces/jobs.d.ts.map +1 -1
  78. package/dist-esm/src/pagingHelper.d.ts +13 -0
  79. package/dist-esm/src/pagingHelper.d.ts.map +1 -0
  80. package/dist-esm/src/pagingHelper.js +32 -0
  81. package/dist-esm/src/pagingHelper.js.map +1 -0
  82. package/dist-esm/test/databox_operations_test.spec.d.ts +4 -0
  83. package/dist-esm/test/databox_operations_test.spec.d.ts.map +1 -0
  84. package/dist-esm/test/databox_operations_test.spec.js +78 -0
  85. package/dist-esm/test/databox_operations_test.spec.js.map +1 -0
  86. package/package.json +21 -16
  87. package/review/arm-databox.api.md +255 -189
  88. package/src/dataBoxManagementClient.ts +61 -21
  89. package/src/index.ts +1 -0
  90. package/src/lroImpl.ts +31 -23
  91. package/src/models/index.ts +468 -98
  92. package/src/models/mappers.ts +634 -42
  93. package/src/models/parameters.ts +1 -1
  94. package/src/operations/jobs.ts +96 -57
  95. package/src/operations/operations.ts +21 -9
  96. package/src/operations/service.ts +27 -14
  97. package/src/operationsInterfaces/jobs.ts +4 -4
  98. package/src/pagingHelper.ts +39 -0
  99. package/types/arm-databox.d.ts +457 -99
  100. package/types/tsdoc-metadata.json +1 -1
  101. package/dist-esm/test/sampleTest.d.ts +0 -2
  102. package/dist-esm/test/sampleTest.d.ts.map +0 -1
  103. package/dist-esm/test/sampleTest.js +0 -40
  104. package/dist-esm/test/sampleTest.js.map +0 -1
@@ -1,8 +1,8 @@
1
1
  import * as coreAuth from '@azure/core-auth';
2
2
  import * as coreClient from '@azure/core-client';
3
+ import { OperationState } from '@azure/core-lro';
3
4
  import { PagedAsyncIterableIterator } from '@azure/core-paging';
4
- import { PollerLike } from '@azure/core-lro';
5
- import { PollOperationState } from '@azure/core-lro';
5
+ import { SimplePollerLike } from '@azure/core-lro';
6
6
 
7
7
  /** Defines values for AccessProtocol. */
8
8
  export declare type AccessProtocol = "SMB" | "NFS";
@@ -31,12 +31,12 @@ export declare interface AccountCredentialDetails {
31
31
  readonly shareCredentialDetails?: ShareCredentialDetails[];
32
32
  }
33
33
 
34
- /** Additional error info. */
34
+ /** This class represents additional info which Resource Providers pass when an error occurs. */
35
35
  export declare interface AdditionalErrorInfo {
36
- /** Additional error type. */
37
- type?: string;
38
- /** Additional error info. */
36
+ /** Additional information of the type of error. */
39
37
  info?: Record<string, unknown>;
38
+ /** Type of error (e.g. CustomerIntervention, PolicyViolation, SecurityViolation). */
39
+ type?: string;
40
40
  }
41
41
 
42
42
  /** Defines values for AddressType. */
@@ -64,7 +64,7 @@ export declare interface AddressValidationOutput {
64
64
  }
65
65
 
66
66
  /** The address validation output. */
67
- export declare type AddressValidationProperties = ValidationInputResponse & {
67
+ export declare interface AddressValidationProperties extends ValidationInputResponse {
68
68
  /** Polymorphic discriminator, which specifies the different types this object can be */
69
69
  validationType: "ValidateAddress";
70
70
  /**
@@ -77,7 +77,7 @@ export declare type AddressValidationProperties = ValidationInputResponse & {
77
77
  * NOTE: This property will not be serialized. It can only be populated by the server.
78
78
  */
79
79
  readonly alternateAddresses?: ShippingAddress[];
80
- };
80
+ }
81
81
 
82
82
  /** Defines values for AddressValidationStatus. */
83
83
  export declare type AddressValidationStatus = "Valid" | "Invalid" | "Ambiguous";
@@ -171,24 +171,24 @@ export declare interface CancellationReason {
171
171
  /** Defines values for ClassDiscriminator. */
172
172
  export declare type ClassDiscriminator = "DataBox" | "DataBoxDisk" | "DataBoxHeavy" | "DataBoxCustomerDisk";
173
173
 
174
- /** Cloud error. */
174
+ /** Provides additional information about an http error response. */
175
175
  export declare interface CloudError {
176
- /** Cloud error code. */
177
- code?: string;
178
- /** Cloud error message. */
179
- message?: string;
180
- /** Cloud error target. */
181
- target?: string;
182
176
  /**
183
- * Cloud error details.
177
+ * Gets or sets additional error info.
184
178
  * NOTE: This property will not be serialized. It can only be populated by the server.
185
179
  */
186
- readonly details?: CloudError[];
180
+ readonly additionalInfo?: AdditionalErrorInfo[];
181
+ /** Error code. */
182
+ code?: string;
187
183
  /**
188
- * Cloud error additional info.
184
+ * Gets or sets details for the error.
189
185
  * NOTE: This property will not be serialized. It can only be populated by the server.
190
186
  */
191
- readonly additionalInfo?: AdditionalErrorInfo[];
187
+ readonly details?: CloudError[];
188
+ /** The error message parsed from the body of the http error response. */
189
+ message?: string;
190
+ /** Gets or sets the target of the error. */
191
+ target?: string;
192
192
  }
193
193
 
194
194
  /** Contact Details. */
@@ -207,6 +207,18 @@ export declare interface ContactDetails {
207
207
  notificationPreference?: NotificationPreference[];
208
208
  }
209
209
 
210
+ /** Contact Info. */
211
+ export declare interface ContactInfo {
212
+ /** Contact name of the person. */
213
+ contactName: string;
214
+ /** Phone number of the contact person. */
215
+ phone: string;
216
+ /** Phone extension number of the contact person. */
217
+ phoneExtension?: string;
218
+ /** Mobile number of the contact person. */
219
+ mobile?: string;
220
+ }
221
+
210
222
  /** Details for log generated during copy. */
211
223
  export declare interface CopyLogDetails {
212
224
  /** Polymorphic discriminator, which specifies the different types this object can be */
@@ -293,6 +305,16 @@ export declare interface CopyProgress {
293
305
  * NOTE: This property will not be serialized. It can only be populated by the server.
294
306
  */
295
307
  readonly isEnumerationInProgress?: boolean;
308
+ /**
309
+ * Error, if any, in the stage
310
+ * NOTE: This property will not be serialized. It can only be populated by the server.
311
+ */
312
+ readonly error?: CloudError;
313
+ /**
314
+ * Available actions on the job.
315
+ * NOTE: This property will not be serialized. It can only be populated by the server.
316
+ */
317
+ readonly actions?: CustomerResolutionCode[];
296
318
  }
297
319
 
298
320
  /**
@@ -317,26 +339,26 @@ export declare interface CopyProgress {
317
339
  * **OtherUserError**: Copy failed due to user error. \
318
340
  * **DriveNotDetected**: Copy failed due to disk detection error. \
319
341
  * **DriveCorrupted**: Copy failed due to corrupted drive. \
320
- * **MetadataFilesModifiedOrRemoved**: Copy failed due to modified or removed metadata files.
342
+ * **MetadataFilesModifiedOrRemoved**: Copy failed due to modified or removed metadata files.
321
343
  */
322
344
  export declare type CopyStatus = string;
323
345
 
324
346
  /** It does all pre-job creation validations. */
325
- export declare type CreateJobValidations = ValidationRequest & {
347
+ export declare interface CreateJobValidations extends ValidationRequest {
326
348
  /** Polymorphic discriminator, which specifies the different types this object can be */
327
349
  validationCategory: "JobCreationValidation";
328
- };
350
+ }
329
351
 
330
352
  /** Request to validate create order limit for current subscription. */
331
- export declare type CreateOrderLimitForSubscriptionValidationRequest = ValidationInputRequest & {
353
+ export declare interface CreateOrderLimitForSubscriptionValidationRequest extends ValidationInputRequest {
332
354
  /** Polymorphic discriminator, which specifies the different types this object can be */
333
355
  validationType: "ValidateCreateOrderLimit";
334
356
  /** Device type to be used for the job. */
335
357
  deviceType: SkuName;
336
- };
358
+ }
337
359
 
338
360
  /** Properties of create order limit for subscription validation response. */
339
- export declare type CreateOrderLimitForSubscriptionValidationResponseProperties = ValidationInputResponse & {
361
+ export declare interface CreateOrderLimitForSubscriptionValidationResponseProperties extends ValidationInputResponse {
340
362
  /** Polymorphic discriminator, which specifies the different types this object can be */
341
363
  validationType: "ValidateCreateOrderLimit";
342
364
  /**
@@ -344,10 +366,10 @@ export declare type CreateOrderLimitForSubscriptionValidationResponseProperties
344
366
  * NOTE: This property will not be serialized. It can only be populated by the server.
345
367
  */
346
368
  readonly status?: ValidationStatus;
347
- };
369
+ }
348
370
 
349
371
  /** The secrets related to customer disk job. */
350
- export declare type CustomerDiskJobSecrets = JobSecrets & {
372
+ export declare interface CustomerDiskJobSecrets extends JobSecrets {
351
373
  /** Polymorphic discriminator, which specifies the different types this object can be */
352
374
  jobSecretsType: "DataBoxCustomerDisk";
353
375
  /**
@@ -360,10 +382,10 @@ export declare type CustomerDiskJobSecrets = JobSecrets & {
360
382
  * NOTE: This property will not be serialized. It can only be populated by the server.
361
383
  */
362
384
  readonly carrierAccountNumber?: string;
363
- };
385
+ }
364
386
 
365
387
  /** Defines values for CustomerResolutionCode. */
366
- export declare type CustomerResolutionCode = "None" | "MoveToCleanUpDevice" | "Resume";
388
+ export declare type CustomerResolutionCode = "None" | "MoveToCleanUpDevice" | "Resume" | "Restart" | "ReachOutToOperation";
367
389
 
368
390
  /** Account details of the data to be transferred */
369
391
  export declare interface DataAccountDetails {
@@ -379,7 +401,7 @@ export declare type DataAccountDetailsUnion = DataAccountDetails | ManagedDiskDe
379
401
  export declare type DataAccountType = "StorageAccount" | "ManagedDisk";
380
402
 
381
403
  /** Copy log details for a storage account of a DataBox job */
382
- export declare type DataBoxAccountCopyLogDetails = CopyLogDetails & {
404
+ export declare interface DataBoxAccountCopyLogDetails extends CopyLogDetails {
383
405
  /** Polymorphic discriminator, which specifies the different types this object can be */
384
406
  copyLogDetailsType: "DataBox";
385
407
  /**
@@ -397,10 +419,10 @@ export declare type DataBoxAccountCopyLogDetails = CopyLogDetails & {
397
419
  * NOTE: This property will not be serialized. It can only be populated by the server.
398
420
  */
399
421
  readonly copyVerboseLogLink?: string;
400
- };
422
+ }
401
423
 
402
424
  /** Copy Log Details for customer disk */
403
- export declare type DataBoxCustomerDiskCopyLogDetails = CopyLogDetails & {
425
+ export declare interface DataBoxCustomerDiskCopyLogDetails extends CopyLogDetails {
404
426
  /** Polymorphic discriminator, which specifies the different types this object can be */
405
427
  copyLogDetailsType: "DataBoxCustomerDisk";
406
428
  /**
@@ -418,10 +440,10 @@ export declare type DataBoxCustomerDiskCopyLogDetails = CopyLogDetails & {
418
440
  * NOTE: This property will not be serialized. It can only be populated by the server.
419
441
  */
420
442
  readonly verboseLogLink?: string;
421
- };
443
+ }
422
444
 
423
445
  /** DataBox CustomerDisk Copy Progress */
424
- export declare type DataBoxCustomerDiskCopyProgress = CopyProgress & {
446
+ export declare interface DataBoxCustomerDiskCopyProgress extends CopyProgress {
425
447
  /**
426
448
  * Disk Serial Number.
427
449
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -432,10 +454,10 @@ export declare type DataBoxCustomerDiskCopyProgress = CopyProgress & {
432
454
  * NOTE: This property will not be serialized. It can only be populated by the server.
433
455
  */
434
456
  readonly copyStatus?: CopyStatus;
435
- };
457
+ }
436
458
 
437
459
  /** Customer disk job details. */
438
- export declare type DataBoxCustomerDiskJobDetails = JobDetails & {
460
+ export declare interface DataBoxCustomerDiskJobDetails extends JobDetails {
439
461
  /** Polymorphic discriminator, which specifies the different types this object can be */
440
462
  jobDetailsType: "DataBoxCustomerDisk";
441
463
  /** Contains the map of disk serial number to the disk details for import jobs. */
@@ -463,10 +485,10 @@ export declare type DataBoxCustomerDiskJobDetails = JobDetails & {
463
485
  returnToCustomerPackageDetails: PackageCarrierDetails;
464
486
  /** Flag to indicate if disk manifest should be backed-up in the Storage Account. */
465
487
  enableManifestBackup?: boolean;
466
- };
488
+ }
467
489
 
468
490
  /** Copy Log Details for a disk */
469
- export declare type DataBoxDiskCopyLogDetails = CopyLogDetails & {
491
+ export declare interface DataBoxDiskCopyLogDetails extends CopyLogDetails {
470
492
  /** Polymorphic discriminator, which specifies the different types this object can be */
471
493
  copyLogDetailsType: "DataBoxDisk";
472
494
  /**
@@ -484,7 +506,7 @@ export declare type DataBoxDiskCopyLogDetails = CopyLogDetails & {
484
506
  * NOTE: This property will not be serialized. It can only be populated by the server.
485
507
  */
486
508
  readonly verboseLogLink?: string;
487
- };
509
+ }
488
510
 
489
511
  /** DataBox Disk Copy Progress */
490
512
  export declare interface DataBoxDiskCopyProgress {
@@ -508,10 +530,60 @@ export declare interface DataBoxDiskCopyProgress {
508
530
  * NOTE: This property will not be serialized. It can only be populated by the server.
509
531
  */
510
532
  readonly status?: CopyStatus;
533
+ /**
534
+ * Error, if any, in the stage
535
+ * NOTE: This property will not be serialized. It can only be populated by the server.
536
+ */
537
+ readonly error?: CloudError;
538
+ /**
539
+ * Available actions on the job.
540
+ * NOTE: This property will not be serialized. It can only be populated by the server.
541
+ */
542
+ readonly actions?: CustomerResolutionCode[];
543
+ }
544
+
545
+ /** Granular Copy Log Details for customer disk */
546
+ export declare interface DataBoxDiskGranularCopyLogDetails extends GranularCopyLogDetails {
547
+ /** Polymorphic discriminator, which specifies the different types this object can be */
548
+ copyLogDetailsType: "DataBoxCustomerDisk";
549
+ /**
550
+ * Disk Serial Number.
551
+ * NOTE: This property will not be serialized. It can only be populated by the server.
552
+ */
553
+ readonly serialNumber?: string;
554
+ /**
555
+ * Account id.
556
+ * NOTE: This property will not be serialized. It can only be populated by the server.
557
+ */
558
+ readonly accountId?: string;
559
+ /**
560
+ * Link for copy error logs.
561
+ * NOTE: This property will not be serialized. It can only be populated by the server.
562
+ */
563
+ readonly errorLogLink?: string;
564
+ /**
565
+ * Link for copy verbose logs.
566
+ * NOTE: This property will not be serialized. It can only be populated by the server.
567
+ */
568
+ readonly verboseLogLink?: string;
569
+ }
570
+
571
+ /** DataBox Disk Granular Copy Progress */
572
+ export declare interface DataBoxDiskGranularCopyProgress extends GranularCopyProgress {
573
+ /**
574
+ * Disk Serial Number.
575
+ * NOTE: This property will not be serialized. It can only be populated by the server.
576
+ */
577
+ readonly serialNumber?: string;
578
+ /**
579
+ * The Status of the copy
580
+ * NOTE: This property will not be serialized. It can only be populated by the server.
581
+ */
582
+ readonly copyStatus?: CopyStatus;
511
583
  }
512
584
 
513
585
  /** DataBox Disk Job Details. */
514
- export declare type DataBoxDiskJobDetails = JobDetails & {
586
+ export declare interface DataBoxDiskJobDetails extends JobDetails {
515
587
  /** Polymorphic discriminator, which specifies the different types this object can be */
516
588
  jobDetailsType: "DataBoxDisk";
517
589
  /** User preference on what size disks are needed for the job. The map is from the disk size in TB to the count. Eg. {2,5} means 5 disks of 2 TB size. Key is string but will be checked against an int. */
@@ -523,6 +595,16 @@ export declare type DataBoxDiskJobDetails = JobDetails & {
523
595
  * NOTE: This property will not be serialized. It can only be populated by the server.
524
596
  */
525
597
  readonly copyProgress?: DataBoxDiskCopyProgress[];
598
+ /**
599
+ * Copy progress per disk.
600
+ * NOTE: This property will not be serialized. It can only be populated by the server.
601
+ */
602
+ readonly granularCopyProgress?: DataBoxDiskGranularCopyProgress[];
603
+ /**
604
+ * Copy progress per disk.
605
+ * NOTE: This property will not be serialized. It can only be populated by the server.
606
+ */
607
+ readonly granularCopyLogDetails?: DataBoxDiskGranularCopyLogDetails[];
526
608
  /**
527
609
  * Contains the map of disk serial number to the disk size being used for the job. Is returned only after the disks are shipped to the customer.
528
610
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -532,10 +614,10 @@ export declare type DataBoxDiskJobDetails = JobDetails & {
532
614
  };
533
615
  /** User entered passkey for DataBox Disk job. */
534
616
  passkey?: string;
535
- };
617
+ }
536
618
 
537
619
  /** The secrets related to disk job. */
538
- export declare type DataBoxDiskJobSecrets = JobSecrets & {
620
+ export declare interface DataBoxDiskJobSecrets extends JobSecrets {
539
621
  /** Polymorphic discriminator, which specifies the different types this object can be */
540
622
  jobSecretsType: "DataBoxDisk";
541
623
  /**
@@ -553,10 +635,10 @@ export declare type DataBoxDiskJobSecrets = JobSecrets & {
553
635
  * NOTE: This property will not be serialized. It can only be populated by the server.
554
636
  */
555
637
  readonly isPasskeyUserDefined?: boolean;
556
- };
638
+ }
557
639
 
558
640
  /** Copy log details for a storage account for Databox heavy */
559
- export declare type DataBoxHeavyAccountCopyLogDetails = CopyLogDetails & {
641
+ export declare interface DataBoxHeavyAccountCopyLogDetails extends CopyLogDetails {
560
642
  /** Polymorphic discriminator, which specifies the different types this object can be */
561
643
  copyLogDetailsType: "DataBoxHeavy";
562
644
  /**
@@ -574,10 +656,10 @@ export declare type DataBoxHeavyAccountCopyLogDetails = CopyLogDetails & {
574
656
  * NOTE: This property will not be serialized. It can only be populated by the server.
575
657
  */
576
658
  readonly copyVerboseLogLink?: string[];
577
- };
659
+ }
578
660
 
579
661
  /** Databox Heavy Device Job Details */
580
- export declare type DataBoxHeavyJobDetails = JobDetails & {
662
+ export declare interface DataBoxHeavyJobDetails extends JobDetails {
581
663
  /** Polymorphic discriminator, which specifies the different types this object can be */
582
664
  jobDetailsType: "DataBoxHeavy";
583
665
  /**
@@ -587,10 +669,10 @@ export declare type DataBoxHeavyJobDetails = JobDetails & {
587
669
  readonly copyProgress?: CopyProgress[];
588
670
  /** Set Device password for unlocking Databox Heavy. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\-$%^!+=;:_()]+ */
589
671
  devicePassword?: string;
590
- };
672
+ }
591
673
 
592
674
  /** The secrets related to a databox heavy job. */
593
- export declare type DataBoxHeavyJobSecrets = JobSecrets & {
675
+ export declare interface DataBoxHeavyJobSecrets extends JobSecrets {
594
676
  /** Polymorphic discriminator, which specifies the different types this object can be */
595
677
  jobSecretsType: "DataBoxHeavy";
596
678
  /**
@@ -598,7 +680,7 @@ export declare type DataBoxHeavyJobSecrets = JobSecrets & {
598
680
  * NOTE: This property will not be serialized. It can only be populated by the server.
599
681
  */
600
682
  readonly cabinetPodSecrets?: DataBoxHeavySecret[];
601
- };
683
+ }
602
684
 
603
685
  /** The secrets related to a databox heavy. */
604
686
  export declare interface DataBoxHeavySecret {
@@ -630,7 +712,7 @@ export declare interface DataBoxHeavySecret {
630
712
  }
631
713
 
632
714
  /** Databox Job Details */
633
- export declare type DataBoxJobDetails = JobDetails & {
715
+ export declare interface DataBoxJobDetails extends JobDetails {
634
716
  /** Polymorphic discriminator, which specifies the different types this object can be */
635
717
  jobDetailsType: "DataBox";
636
718
  /**
@@ -640,15 +722,15 @@ export declare type DataBoxJobDetails = JobDetails & {
640
722
  readonly copyProgress?: CopyProgress[];
641
723
  /** Set Device password for unlocking Databox. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\-$%^!+=;:_()]+ */
642
724
  devicePassword?: string;
643
- };
725
+ }
644
726
 
645
727
  /** The secrets related to a databox job. */
646
- export declare type DataboxJobSecrets = JobSecrets & {
728
+ export declare interface DataboxJobSecrets extends JobSecrets {
647
729
  /** Polymorphic discriminator, which specifies the different types this object can be */
648
730
  jobSecretsType: "DataBox";
649
731
  /** Contains the list of secret objects for a job. */
650
732
  podSecrets?: DataBoxSecret[];
651
- };
733
+ }
652
734
 
653
735
  export declare class DataBoxManagementClient extends coreClient.ServiceClient {
654
736
  $host: string;
@@ -661,6 +743,8 @@ export declare class DataBoxManagementClient extends coreClient.ServiceClient {
661
743
  * @param options The parameter options
662
744
  */
663
745
  constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: DataBoxManagementClientOptionalParams);
746
+ /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */
747
+ private addCustomApiVersionPolicy;
664
748
  /**
665
749
  * Request to mitigate for a given job
666
750
  * @param jobName The name of the job Resource within the specified resource group. job names must be
@@ -686,10 +770,10 @@ export declare interface DataBoxManagementClientOptionalParams extends coreClien
686
770
  }
687
771
 
688
772
  /** Request body to get the availability for scheduling data box orders orders. */
689
- export declare type DataBoxScheduleAvailabilityRequest = ScheduleAvailabilityRequest & {
773
+ export declare interface DataBoxScheduleAvailabilityRequest extends ScheduleAvailabilityRequest {
690
774
  /** Polymorphic discriminator, which specifies the different types this object can be */
691
775
  skuName: "DataBox";
692
- };
776
+ }
693
777
 
694
778
  /** The secrets related to a DataBox. */
695
779
  export declare interface DataBoxSecret {
@@ -721,7 +805,7 @@ export declare interface DataBoxSecret {
721
805
  }
722
806
 
723
807
  /** Datacenter instruction for given storage location. */
724
- export declare type DatacenterAddressInstructionResponse = DatacenterAddressResponse & {
808
+ export declare interface DatacenterAddressInstructionResponse extends DatacenterAddressResponse {
725
809
  /** Polymorphic discriminator, which specifies the different types this object can be */
726
810
  datacenterAddressType: "DatacenterAddressInstruction";
727
811
  /**
@@ -729,10 +813,10 @@ export declare type DatacenterAddressInstructionResponse = DatacenterAddressResp
729
813
  * NOTE: This property will not be serialized. It can only be populated by the server.
730
814
  */
731
815
  readonly communicationInstruction?: string;
732
- };
816
+ }
733
817
 
734
818
  /** Datacenter address for given storage location. */
735
- export declare type DatacenterAddressLocationResponse = DatacenterAddressResponse & {
819
+ export declare interface DatacenterAddressLocationResponse extends DatacenterAddressResponse {
736
820
  /** Polymorphic discriminator, which specifies the different types this object can be */
737
821
  datacenterAddressType: "DatacenterAddressLocation";
738
822
  /**
@@ -800,7 +884,7 @@ export declare type DatacenterAddressLocationResponse = DatacenterAddressRespons
800
884
  * NOTE: This property will not be serialized. It can only be populated by the server.
801
885
  */
802
886
  readonly additionalShippingInformation?: string;
803
- };
887
+ }
804
888
 
805
889
  /** Request body to get the datacenter address. */
806
890
  export declare interface DatacenterAddressRequest {
@@ -885,7 +969,16 @@ export declare type DatacenterAddressType = "DatacenterAddressLocation" | "Datac
885
969
  * **PUS20** \
886
970
  * **AdHoc** \
887
971
  * **CH1** \
888
- * **DSM05**
972
+ * **DSM05** \
973
+ * **DUB07** \
974
+ * **PNQ01** \
975
+ * **SVG20** \
976
+ * **OSA02** \
977
+ * **OSA22** \
978
+ * **PAR22** \
979
+ * **BN7** \
980
+ * **SN6** \
981
+ * **BJS20**
889
982
  */
890
983
  export declare type DataCenterCode = string;
891
984
 
@@ -922,7 +1015,7 @@ export declare interface DataLocationToServiceLocationMap {
922
1015
  }
923
1016
 
924
1017
  /** Request to validate export and import data details. */
925
- export declare type DataTransferDetailsValidationRequest = ValidationInputRequest & {
1018
+ export declare interface DataTransferDetailsValidationRequest extends ValidationInputRequest {
926
1019
  /** Polymorphic discriminator, which specifies the different types this object can be */
927
1020
  validationType: "ValidateDataTransferDetails";
928
1021
  /** List of DataTransfer details to be used to export data from azure. */
@@ -933,10 +1026,10 @@ export declare type DataTransferDetailsValidationRequest = ValidationInputReques
933
1026
  deviceType: SkuName;
934
1027
  /** Type of the transfer. */
935
1028
  transferType: TransferType;
936
- };
1029
+ }
937
1030
 
938
1031
  /** Properties of data transfer details validation response. */
939
- export declare type DataTransferDetailsValidationResponseProperties = ValidationInputResponse & {
1032
+ export declare interface DataTransferDetailsValidationResponseProperties extends ValidationInputResponse {
940
1033
  /** Polymorphic discriminator, which specifies the different types this object can be */
941
1034
  validationType: "ValidateDataTransferDetails";
942
1035
  /**
@@ -944,7 +1037,7 @@ export declare type DataTransferDetailsValidationResponseProperties = Validation
944
1037
  * NOTE: This property will not be serialized. It can only be populated by the server.
945
1038
  */
946
1039
  readonly status?: ValidationStatus;
947
- };
1040
+ }
948
1041
 
949
1042
  /** Dc access security code */
950
1043
  export declare interface DcAccessSecurityCode {
@@ -959,13 +1052,27 @@ export declare interface Details {
959
1052
  message: string;
960
1053
  }
961
1054
 
1055
+ /** Device erasure details with erasure completion status and erasureordestructionlog sas key */
1056
+ export declare interface DeviceErasureDetails {
1057
+ /**
1058
+ * Holds the device erasure completion status
1059
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1060
+ */
1061
+ readonly deviceErasureStatus?: StageStatus;
1062
+ /**
1063
+ * Shared access key to download cleanup or destruction certificate for device
1064
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1065
+ */
1066
+ readonly erasureOrDestructionCertificateSasKey?: string;
1067
+ }
1068
+
962
1069
  /** Request body to get the availability for scheduling disk orders. */
963
- export declare type DiskScheduleAvailabilityRequest = ScheduleAvailabilityRequest & {
1070
+ export declare interface DiskScheduleAvailabilityRequest extends ScheduleAvailabilityRequest {
964
1071
  /** Polymorphic discriminator, which specifies the different types this object can be */
965
1072
  skuName: "DataBoxDisk";
966
1073
  /** The expected size of the data, which needs to be transferred in this job, in terabytes. */
967
1074
  expectedDataSizeInTeraBytes: number;
968
- };
1075
+ }
969
1076
 
970
1077
  /** Contains all the secrets of a Disk. */
971
1078
  export declare interface DiskSecret {
@@ -988,6 +1095,8 @@ export declare type DoubleEncryption = "Enabled" | "Disabled";
988
1095
  export declare interface EncryptionPreferences {
989
1096
  /** Defines secondary layer of software-based encryption enablement. */
990
1097
  doubleEncryption?: DoubleEncryption;
1098
+ /** Defines Hardware level encryption (Only for disk) */
1099
+ hardwareEncryption?: HardwareEncryption;
991
1100
  }
992
1101
 
993
1102
  export declare interface ErrorDetail {
@@ -1027,11 +1136,121 @@ export declare interface FilterFileDetails {
1027
1136
  /** Defines values for FilterFileType. */
1028
1137
  export declare type FilterFileType = "AzureBlob" | "AzureFile";
1029
1138
 
1139
+ /**
1140
+ * Given the last `.value` produced by the `byPage` iterator,
1141
+ * returns a continuation token that can be used to begin paging from
1142
+ * that point later.
1143
+ * @param page An object from accessing `value` on the IteratorResult from a `byPage` iterator.
1144
+ * @returns The continuation token that can be passed into byPage() during future calls.
1145
+ */
1146
+ export declare function getContinuationToken(page: unknown): string | undefined;
1147
+
1148
+ /** Granular Details for log generated during copy. */
1149
+ export declare interface GranularCopyLogDetails {
1150
+ /** Polymorphic discriminator, which specifies the different types this object can be */
1151
+ copyLogDetailsType: "DataBoxCustomerDisk";
1152
+ }
1153
+
1154
+ export declare type GranularCopyLogDetailsUnion = GranularCopyLogDetails | DataBoxDiskGranularCopyLogDetails;
1155
+
1156
+ /** Granular Copy progress. */
1157
+ export declare interface GranularCopyProgress {
1158
+ /**
1159
+ * Name of the storage account. This will be empty for data account types other than storage account.
1160
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1161
+ */
1162
+ readonly storageAccountName?: string;
1163
+ /**
1164
+ * Transfer type of data
1165
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1166
+ */
1167
+ readonly transferType?: TransferType;
1168
+ /**
1169
+ * Data Account Type.
1170
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1171
+ */
1172
+ readonly dataAccountType?: DataAccountType;
1173
+ /**
1174
+ * Id of the account where the data needs to be uploaded.
1175
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1176
+ */
1177
+ readonly accountId?: string;
1178
+ /**
1179
+ * To indicate bytes transferred.
1180
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1181
+ */
1182
+ readonly bytesProcessed?: number;
1183
+ /**
1184
+ * Total amount of data to be processed by the job.
1185
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1186
+ */
1187
+ readonly totalBytesToProcess?: number;
1188
+ /**
1189
+ * Number of files processed
1190
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1191
+ */
1192
+ readonly filesProcessed?: number;
1193
+ /**
1194
+ * Total files to process
1195
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1196
+ */
1197
+ readonly totalFilesToProcess?: number;
1198
+ /**
1199
+ * Number of files not adhering to azure naming conventions which were processed by automatic renaming
1200
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1201
+ */
1202
+ readonly invalidFilesProcessed?: number;
1203
+ /**
1204
+ * Total amount of data not adhering to azure naming conventions which were processed by automatic renaming
1205
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1206
+ */
1207
+ readonly invalidFileBytesUploaded?: number;
1208
+ /**
1209
+ * Number of folders not adhering to azure naming conventions which were processed by automatic renaming
1210
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1211
+ */
1212
+ readonly renamedContainerCount?: number;
1213
+ /**
1214
+ * Number of files which could not be copied
1215
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1216
+ */
1217
+ readonly filesErroredOut?: number;
1218
+ /**
1219
+ * To indicate directories errored out in the job.
1220
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1221
+ */
1222
+ readonly directoriesErroredOut?: number;
1223
+ /**
1224
+ * To indicate directories renamed
1225
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1226
+ */
1227
+ readonly invalidDirectoriesProcessed?: number;
1228
+ /**
1229
+ * To indicate if enumeration of data is in progress.
1230
+ * Until this is true, the TotalBytesToProcess may not be valid.
1231
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1232
+ */
1233
+ readonly isEnumerationInProgress?: boolean;
1234
+ /**
1235
+ * Error, if any, in the stage
1236
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1237
+ */
1238
+ readonly error?: CloudError;
1239
+ /**
1240
+ * Available actions on the job.
1241
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1242
+ */
1243
+ readonly actions?: CustomerResolutionCode[];
1244
+ }
1245
+
1246
+ /** Defines values for HardwareEncryption. */
1247
+ export declare type HardwareEncryption = "Enabled" | "Disabled";
1248
+
1030
1249
  /** Request body to get the availability for scheduling heavy orders. */
1031
- export declare type HeavyScheduleAvailabilityRequest = ScheduleAvailabilityRequest & {
1250
+ export declare interface HeavyScheduleAvailabilityRequest extends ScheduleAvailabilityRequest {
1032
1251
  /** Polymorphic discriminator, which specifies the different types this object can be */
1033
1252
  skuName: "DataBoxHeavy";
1034
- };
1253
+ }
1035
1254
 
1036
1255
  /** Managed identity properties. */
1037
1256
  export declare interface IdentityProperties {
@@ -1094,6 +1313,8 @@ export declare interface JobDetails {
1094
1313
  dataExportDetails?: DataExportDetails[];
1095
1314
  /** Preferences for the order. */
1096
1315
  preferences?: Preferences;
1316
+ /** Optional Reverse Shipping details for order. */
1317
+ reverseShippingDetails?: ReverseShippingDetails;
1097
1318
  /**
1098
1319
  * List of copy log details.
1099
1320
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1109,6 +1330,11 @@ export declare interface JobDetails {
1109
1330
  * NOTE: This property will not be serialized. It can only be populated by the server.
1110
1331
  */
1111
1332
  readonly chainOfCustodySasKey?: string;
1333
+ /**
1334
+ * Holds device data erasure details
1335
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1336
+ */
1337
+ readonly deviceErasureDetails?: DeviceErasureDetails;
1112
1338
  /** Details about which key encryption type is being used. */
1113
1339
  keyEncryptionKey?: KeyEncryptionKey;
1114
1340
  /** The expected size of the data, which needs to be transferred in this job, in terabytes. */
@@ -1138,7 +1364,7 @@ export declare interface JobDetails {
1138
1364
  export declare type JobDetailsUnion = JobDetails | DataBoxCustomerDiskJobDetails | DataBoxDiskJobDetails | DataBoxHeavyJobDetails | DataBoxJobDetails;
1139
1365
 
1140
1366
  /** Job Resource. */
1141
- export declare type JobResource = Resource & {
1367
+ export declare interface JobResource extends Resource {
1142
1368
  /**
1143
1369
  * Name of the object.
1144
1370
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1176,6 +1402,16 @@ export declare type JobResource = Resource & {
1176
1402
  * NOTE: This property will not be serialized. It can only be populated by the server.
1177
1403
  */
1178
1404
  readonly isShippingAddressEditable?: boolean;
1405
+ /**
1406
+ * The Editable status for Reverse Shipping Address and Contact Info
1407
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1408
+ */
1409
+ readonly reverseShippingDetailsUpdate?: ReverseShippingDetailsEditStatus;
1410
+ /**
1411
+ * The Editable status for Reverse Transport preferences
1412
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1413
+ */
1414
+ readonly reverseTransportPreferenceUpdate?: ReverseTransportPreferenceEditStatus;
1179
1415
  /**
1180
1416
  * Is Prepare To Ship Enabled on this job
1181
1417
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1212,7 +1448,7 @@ export declare type JobResource = Resource & {
1212
1448
  * NOTE: This property will not be serialized. It can only be populated by the server.
1213
1449
  */
1214
1450
  readonly isCancellableWithoutFee?: boolean;
1215
- };
1451
+ }
1216
1452
 
1217
1453
  /** Job Resource Collection */
1218
1454
  export declare interface JobResourceList {
@@ -1281,7 +1517,7 @@ export declare interface Jobs {
1281
1517
  * @param jobResource Job details from request body.
1282
1518
  * @param options The options parameters.
1283
1519
  */
1284
- beginCreate(resourceGroupName: string, jobName: string, jobResource: JobResource, options?: JobsCreateOptionalParams): Promise<PollerLike<PollOperationState<JobsCreateResponse>, JobsCreateResponse>>;
1520
+ beginCreate(resourceGroupName: string, jobName: string, jobResource: JobResource, options?: JobsCreateOptionalParams): Promise<SimplePollerLike<OperationState<JobsCreateResponse>, JobsCreateResponse>>;
1285
1521
  /**
1286
1522
  * Creates a new job with the specified parameters. Existing job cannot be updated with this API and
1287
1523
  * should instead be updated with the Update job API.
@@ -1299,7 +1535,7 @@ export declare interface Jobs {
1299
1535
  * between 3 and 24 characters in length and use any alphanumeric and underscore only
1300
1536
  * @param options The options parameters.
1301
1537
  */
1302
- beginDelete(resourceGroupName: string, jobName: string, options?: JobsDeleteOptionalParams): Promise<PollerLike<PollOperationState<void>, void>>;
1538
+ beginDelete(resourceGroupName: string, jobName: string, options?: JobsDeleteOptionalParams): Promise<SimplePollerLike<OperationState<void>, void>>;
1303
1539
  /**
1304
1540
  * Deletes a job.
1305
1541
  * @param resourceGroupName The Resource Group Name
@@ -1316,7 +1552,7 @@ export declare interface Jobs {
1316
1552
  * @param jobResourceUpdateParameter Job update parameters from request body.
1317
1553
  * @param options The options parameters.
1318
1554
  */
1319
- beginUpdate(resourceGroupName: string, jobName: string, jobResourceUpdateParameter: JobResourceUpdateParameter, options?: JobsUpdateOptionalParams): Promise<PollerLike<PollOperationState<JobsUpdateResponse>, JobsUpdateResponse>>;
1555
+ beginUpdate(resourceGroupName: string, jobName: string, jobResourceUpdateParameter: JobResourceUpdateParameter, options?: JobsUpdateOptionalParams): Promise<SimplePollerLike<OperationState<JobsUpdateResponse>, JobsUpdateResponse>>;
1320
1556
  /**
1321
1557
  * Updates the properties of an existing job.
1322
1558
  * @param resourceGroupName The Resource Group Name
@@ -1368,6 +1604,12 @@ export declare interface JobsCreateOptionalParams extends coreClient.OperationOp
1368
1604
  /** Contains response data for the create operation. */
1369
1605
  export declare type JobsCreateResponse = JobResource;
1370
1606
 
1607
+ /** Defines headers for Jobs_delete operation. */
1608
+ export declare interface JobsDeleteHeaders {
1609
+ /** The URI to poll for completion status. */
1610
+ location?: string;
1611
+ }
1612
+
1371
1613
  /** Optional parameters. */
1372
1614
  export declare interface JobsDeleteOptionalParams extends coreClient.OperationOptions {
1373
1615
  /** Delay to wait until next poll, in milliseconds. */
@@ -1405,8 +1647,6 @@ export declare type JobsGetResponse = JobResource;
1405
1647
 
1406
1648
  /** Optional parameters. */
1407
1649
  export declare interface JobsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions {
1408
- /** $skipToken is supported on Get list of jobs, which provides the next page in the list of jobs. */
1409
- skipToken?: string;
1410
1650
  }
1411
1651
 
1412
1652
  /** Contains response data for the listByResourceGroupNext operation. */
@@ -1430,8 +1670,6 @@ export declare type JobsListCredentialsResponse = UnencryptedCredentialsList;
1430
1670
 
1431
1671
  /** Optional parameters. */
1432
1672
  export declare interface JobsListNextOptionalParams extends coreClient.OperationOptions {
1433
- /** $skipToken is supported on Get list of jobs, which provides the next page in the list of jobs. */
1434
- skipToken?: string;
1435
1673
  }
1436
1674
 
1437
1675
  /** Contains response data for the listNext operation. */
@@ -1479,6 +1717,12 @@ export declare interface JobStages {
1479
1717
  readonly jobStageDetails?: Record<string, unknown>;
1480
1718
  }
1481
1719
 
1720
+ /** Defines headers for Jobs_update operation. */
1721
+ export declare interface JobsUpdateHeaders {
1722
+ /** The URI to poll for completion status. */
1723
+ location?: string;
1724
+ }
1725
+
1482
1726
  /** Optional parameters. */
1483
1727
  export declare interface JobsUpdateOptionalParams extends coreClient.OperationOptions {
1484
1728
  /** Defines the If-Match condition. The patch will be performed only if the ETag of the job on the server matches this value. */
@@ -1543,62 +1787,130 @@ export declare enum KnownCopyStatus {
1543
1787
  DriveNotDetected = "DriveNotDetected",
1544
1788
  /** Copy failed due to corrupted drive. */
1545
1789
  DriveCorrupted = "DriveCorrupted",
1546
- /** Copy failed due to modified or removed metadata files. */
1790
+ /** Copy failed due to modified or removed metadata files. */
1547
1791
  MetadataFilesModifiedOrRemoved = "MetadataFilesModifiedOrRemoved"
1548
1792
  }
1549
1793
 
1550
1794
  /** Known values of {@link DataCenterCode} that the service accepts. */
1551
1795
  export declare enum KnownDataCenterCode {
1796
+ /** Invalid */
1552
1797
  Invalid = "Invalid",
1798
+ /** BY2 */
1553
1799
  BY2 = "BY2",
1800
+ /** BY1 */
1554
1801
  BY1 = "BY1",
1802
+ /** ORK70 */
1555
1803
  ORK70 = "ORK70",
1804
+ /** AM2 */
1556
1805
  AM2 = "AM2",
1806
+ /** AMS20 */
1557
1807
  AMS20 = "AMS20",
1808
+ /** BY21 */
1558
1809
  BY21 = "BY21",
1810
+ /** BY24 */
1559
1811
  BY24 = "BY24",
1812
+ /** MWH01 */
1560
1813
  MWH01 = "MWH01",
1814
+ /** AMS06 */
1561
1815
  AMS06 = "AMS06",
1816
+ /** SSE90 */
1562
1817
  SSE90 = "SSE90",
1818
+ /** SYD03 */
1563
1819
  SYD03 = "SYD03",
1820
+ /** SYD23 */
1564
1821
  SYD23 = "SYD23",
1822
+ /** CBR20 */
1565
1823
  CBR20 = "CBR20",
1824
+ /** YTO20 */
1566
1825
  YTO20 = "YTO20",
1826
+ /** CWL20 */
1567
1827
  CWL20 = "CWL20",
1828
+ /** LON24 */
1568
1829
  LON24 = "LON24",
1830
+ /** BOM01 */
1569
1831
  BOM01 = "BOM01",
1832
+ /** BL20 */
1570
1833
  BL20 = "BL20",
1834
+ /** BL7 */
1571
1835
  BL7 = "BL7",
1836
+ /** SEL20 */
1572
1837
  SEL20 = "SEL20",
1838
+ /** TYO01 */
1573
1839
  TYO01 = "TYO01",
1840
+ /** BN1 */
1574
1841
  BN1 = "BN1",
1842
+ /** SN5 */
1575
1843
  SN5 = "SN5",
1844
+ /** CYS04 */
1576
1845
  CYS04 = "CYS04",
1846
+ /** TYO22 */
1577
1847
  TYO22 = "TYO22",
1848
+ /** YTO21 */
1578
1849
  YTO21 = "YTO21",
1850
+ /** YQB20 */
1579
1851
  YQB20 = "YQB20",
1852
+ /** FRA22 */
1580
1853
  FRA22 = "FRA22",
1854
+ /** MAA01 */
1581
1855
  MAA01 = "MAA01",
1856
+ /** CPQ02 */
1582
1857
  CPQ02 = "CPQ02",
1858
+ /** CPQ20 */
1583
1859
  CPQ20 = "CPQ20",
1860
+ /** SIN20 */
1584
1861
  SIN20 = "SIN20",
1862
+ /** HKG20 */
1585
1863
  HKG20 = "HKG20",
1864
+ /** SG2 */
1586
1865
  SG2 = "SG2",
1866
+ /** MEL23 */
1587
1867
  MEL23 = "MEL23",
1868
+ /** SEL21 */
1588
1869
  SEL21 = "SEL21",
1870
+ /** OSA20 */
1589
1871
  OSA20 = "OSA20",
1872
+ /** SHA03 */
1590
1873
  SHA03 = "SHA03",
1874
+ /** BJB */
1591
1875
  BJB = "BJB",
1876
+ /** JNB22 */
1592
1877
  JNB22 = "JNB22",
1878
+ /** JNB21 */
1593
1879
  JNB21 = "JNB21",
1880
+ /** MNZ21 */
1594
1881
  MNZ21 = "MNZ21",
1882
+ /** SN8 */
1595
1883
  SN8 = "SN8",
1884
+ /** AUH20 */
1596
1885
  AUH20 = "AUH20",
1886
+ /** ZRH20 */
1597
1887
  ZRH20 = "ZRH20",
1888
+ /** PUS20 */
1598
1889
  PUS20 = "PUS20",
1890
+ /** AdHoc */
1599
1891
  AdHoc = "AdHoc",
1892
+ /** CH1 */
1600
1893
  CH1 = "CH1",
1601
- DSM05 = "DSM05"
1894
+ /** DSM05 */
1895
+ DSM05 = "DSM05",
1896
+ /** DUB07 */
1897
+ DUB07 = "DUB07",
1898
+ /** PNQ01 */
1899
+ PNQ01 = "PNQ01",
1900
+ /** SVG20 */
1901
+ SVG20 = "SVG20",
1902
+ /** OSA02 */
1903
+ OSA02 = "OSA02",
1904
+ /** OSA22 */
1905
+ OSA22 = "OSA22",
1906
+ /** PAR22 */
1907
+ PAR22 = "PAR22",
1908
+ /** BN7 */
1909
+ BN7 = "BN7",
1910
+ /** SN6 */
1911
+ SN6 = "SN6",
1912
+ /** BJS20 */
1913
+ BJS20 = "BJS20"
1602
1914
  }
1603
1915
 
1604
1916
  /** Known values of {@link NotificationStageName} that the service accepts. */
@@ -1684,14 +1996,14 @@ export declare interface LastMitigationActionOnJob {
1684
1996
  export declare type LogCollectionLevel = "Error" | "Verbose";
1685
1997
 
1686
1998
  /** Details of the managed disks. */
1687
- export declare type ManagedDiskDetails = DataAccountDetails & {
1999
+ export declare interface ManagedDiskDetails extends DataAccountDetails {
1688
2000
  /** Polymorphic discriminator, which specifies the different types this object can be */
1689
2001
  dataAccountType: "ManagedDisk";
1690
2002
  /** Resource Group Id of the compute disks. */
1691
2003
  resourceGroupId: string;
1692
2004
  /** Resource Id of the storage account that can be used to copy the vhd for staging. */
1693
2005
  stagingStorageAccountId: string;
1694
- };
2006
+ }
1695
2007
 
1696
2008
  /** The request body to provide the delivery package details of job */
1697
2009
  export declare interface MarkDevicesShippedRequest {
@@ -1702,7 +2014,11 @@ export declare interface MarkDevicesShippedRequest {
1702
2014
  /** The Mitigate Job captured from request body for Mitigate API */
1703
2015
  export declare interface MitigateJobRequest {
1704
2016
  /** Resolution code for the job */
1705
- customerResolutionCode: CustomerResolutionCode;
2017
+ customerResolutionCode?: CustomerResolutionCode;
2018
+ /** Serial number and the customer resolution code corresponding to each serial number */
2019
+ serialNumberCustomerResolutionMap?: {
2020
+ [propertyName: string]: CustomerResolutionCode;
2021
+ };
1706
2022
  }
1707
2023
 
1708
2024
  /** Optional parameters. */
@@ -1851,22 +2167,26 @@ export declare interface Preferences {
1851
2167
  preferredDataCenterRegion?: string[];
1852
2168
  /** Preferences related to the shipment logistics of the sku. */
1853
2169
  transportPreferences?: TransportPreferences;
2170
+ /** Optional Preferences related to the reverse shipment logistics of the sku. */
2171
+ reverseTransportPreferences?: TransportPreferences;
1854
2172
  /** Preferences related to the Encryption. */
1855
2173
  encryptionPreferences?: EncryptionPreferences;
2174
+ /** Preferences related to the Access Tier of storage accounts. */
2175
+ storageAccountAccessTierPreferences?: string[];
1856
2176
  }
1857
2177
 
1858
2178
  /** Request to validate preference of transport and data center. */
1859
- export declare type PreferencesValidationRequest = ValidationInputRequest & {
2179
+ export declare interface PreferencesValidationRequest extends ValidationInputRequest {
1860
2180
  /** Polymorphic discriminator, which specifies the different types this object can be */
1861
2181
  validationType: "ValidatePreferences";
1862
2182
  /** Preference of transport and data center. */
1863
2183
  preference?: Preferences;
1864
2184
  /** Device type to be used for the job. */
1865
2185
  deviceType: SkuName;
1866
- };
2186
+ }
1867
2187
 
1868
2188
  /** Properties of data center and transport preference validation response. */
1869
- export declare type PreferencesValidationResponseProperties = ValidationInputResponse & {
2189
+ export declare interface PreferencesValidationResponseProperties extends ValidationInputResponse {
1870
2190
  /** Polymorphic discriminator, which specifies the different types this object can be */
1871
2191
  validationType: "ValidatePreferences";
1872
2192
  /**
@@ -1874,7 +2194,7 @@ export declare type PreferencesValidationResponseProperties = ValidationInputRes
1874
2194
  * NOTE: This property will not be serialized. It can only be populated by the server.
1875
2195
  */
1876
2196
  readonly status?: ValidationStatus;
1877
- };
2197
+ }
1878
2198
 
1879
2199
  /** Request body to get the configuration for the region. */
1880
2200
  export declare interface RegionConfigurationRequest {
@@ -1939,6 +2259,26 @@ export declare interface ResourceIdentity {
1939
2259
  };
1940
2260
  }
1941
2261
 
2262
+ /** Reverse Shipping Address and contact details for a job. */
2263
+ export declare interface ReverseShippingDetails {
2264
+ /** Contact Info. */
2265
+ contactDetails?: ContactInfo;
2266
+ /** Shipping address where customer wishes to receive the device. */
2267
+ shippingAddress?: ShippingAddress;
2268
+ /**
2269
+ * A flag to indicate whether Reverse Shipping details are updated or not after device has been prepared.
2270
+ * Read only field
2271
+ * NOTE: This property will not be serialized. It can only be populated by the server.
2272
+ */
2273
+ readonly isUpdated?: boolean;
2274
+ }
2275
+
2276
+ /** Defines values for ReverseShippingDetailsEditStatus. */
2277
+ export declare type ReverseShippingDetailsEditStatus = "Enabled" | "Disabled" | "NotSupported";
2278
+
2279
+ /** Defines values for ReverseTransportPreferenceEditStatus. */
2280
+ export declare type ReverseTransportPreferenceEditStatus = "Enabled" | "Disabled" | "NotSupported";
2281
+
1942
2282
  /** Request body to get the availability for scheduling orders. */
1943
2283
  export declare interface ScheduleAvailabilityRequest {
1944
2284
  /** Polymorphic discriminator, which specifies the different types this object can be */
@@ -2139,6 +2479,10 @@ export declare interface ShippingAddress {
2139
2479
  companyName?: string;
2140
2480
  /** Type of address. */
2141
2481
  addressType?: AddressType;
2482
+ /** Flag to indicate if customer has chosen to skip default address validation */
2483
+ skipAddressValidation?: boolean;
2484
+ /** Tax Identification Number */
2485
+ taxIdentificationNumber?: string;
2142
2486
  }
2143
2487
 
2144
2488
  /** The Sku. */
@@ -2152,7 +2496,7 @@ export declare interface Sku {
2152
2496
  }
2153
2497
 
2154
2498
  /** Request to validate sku availability. */
2155
- export declare type SkuAvailabilityValidationRequest = ValidationInputRequest & {
2499
+ export declare interface SkuAvailabilityValidationRequest extends ValidationInputRequest {
2156
2500
  /** Polymorphic discriminator, which specifies the different types this object can be */
2157
2501
  validationType: "ValidateSkuAvailability";
2158
2502
  /** Device type to be used for the job. */
@@ -2163,10 +2507,10 @@ export declare type SkuAvailabilityValidationRequest = ValidationInputRequest &
2163
2507
  country: string;
2164
2508
  /** Location for data transfer. For locations check: https://management.azure.com/subscriptions/SUBSCRIPTIONID/locations?api-version=2018-01-01 */
2165
2509
  location: string;
2166
- };
2510
+ }
2167
2511
 
2168
2512
  /** Properties of sku availability validation response. */
2169
- export declare type SkuAvailabilityValidationResponseProperties = ValidationInputResponse & {
2513
+ export declare interface SkuAvailabilityValidationResponseProperties extends ValidationInputResponse {
2170
2514
  /** Polymorphic discriminator, which specifies the different types this object can be */
2171
2515
  validationType: "ValidateSkuAvailability";
2172
2516
  /**
@@ -2174,7 +2518,7 @@ export declare type SkuAvailabilityValidationResponseProperties = ValidationInpu
2174
2518
  * NOTE: This property will not be serialized. It can only be populated by the server.
2175
2519
  */
2176
2520
  readonly status?: ValidationStatus;
2177
- };
2521
+ }
2178
2522
 
2179
2523
  /** Capacity of the sku. */
2180
2524
  export declare interface SkuCapacity {
@@ -2259,6 +2603,11 @@ export declare interface SkuInformation {
2259
2603
  * NOTE: This property will not be serialized. It can only be populated by the server.
2260
2604
  */
2261
2605
  readonly requiredFeature?: string;
2606
+ /**
2607
+ * List of all the Countries in the SKU specific commerce boundary
2608
+ * NOTE: This property will not be serialized. It can only be populated by the server.
2609
+ */
2610
+ readonly countriesWithinCommerceBoundary?: string[];
2262
2611
  }
2263
2612
 
2264
2613
  /** Defines values for SkuName. */
@@ -2294,24 +2643,24 @@ export declare type SkuName = "DataBox" | "DataBoxDisk" | "DataBoxHeavy" | "Data
2294
2643
  export declare type StageName = string;
2295
2644
 
2296
2645
  /** Defines values for StageStatus. */
2297
- export declare type StageStatus = "None" | "InProgress" | "Succeeded" | "Failed" | "Cancelled" | "Cancelling" | "SucceededWithErrors" | "WaitingForCustomerAction" | "SucceededWithWarnings" | "WaitingForCustomerActionForKek" | "WaitingForCustomerActionForCleanUp" | "CustomerActionPerformedForCleanUp";
2646
+ export declare type StageStatus = "None" | "InProgress" | "Succeeded" | "Failed" | "Cancelled" | "Cancelling" | "SucceededWithErrors" | "WaitingForCustomerAction" | "SucceededWithWarnings" | "WaitingForCustomerActionForKek" | "WaitingForCustomerActionForCleanUp" | "CustomerActionPerformedForCleanUp" | "CustomerActionPerformed";
2298
2647
 
2299
2648
  /** Details for the storage account. */
2300
- export declare type StorageAccountDetails = DataAccountDetails & {
2649
+ export declare interface StorageAccountDetails extends DataAccountDetails {
2301
2650
  /** Polymorphic discriminator, which specifies the different types this object can be */
2302
2651
  dataAccountType: "StorageAccount";
2303
2652
  /** Storage Account Resource Id. */
2304
2653
  storageAccountId: string;
2305
- };
2654
+ }
2306
2655
 
2307
2656
  /** Request to validate subscription permission to create jobs. */
2308
- export declare type SubscriptionIsAllowedToCreateJobValidationRequest = ValidationInputRequest & {
2657
+ export declare interface SubscriptionIsAllowedToCreateJobValidationRequest extends ValidationInputRequest {
2309
2658
  /** Polymorphic discriminator, which specifies the different types this object can be */
2310
2659
  validationType: "ValidateSubscriptionIsAllowedToCreateJob";
2311
- };
2660
+ }
2312
2661
 
2313
2662
  /** Properties of subscription permission to create job validation response. */
2314
- export declare type SubscriptionIsAllowedToCreateJobValidationResponseProperties = ValidationInputResponse & {
2663
+ export declare interface SubscriptionIsAllowedToCreateJobValidationResponseProperties extends ValidationInputResponse {
2315
2664
  /** Polymorphic discriminator, which specifies the different types this object can be */
2316
2665
  validationType: "ValidateSubscriptionIsAllowedToCreateJob";
2317
2666
  /**
@@ -2319,7 +2668,7 @@ export declare type SubscriptionIsAllowedToCreateJobValidationResponseProperties
2319
2668
  * NOTE: This property will not be serialized. It can only be populated by the server.
2320
2669
  */
2321
2670
  readonly status?: ValidationStatus;
2322
- };
2671
+ }
2323
2672
 
2324
2673
  /** Provides details about resource creation and update time */
2325
2674
  export declare interface SystemData {
@@ -2433,6 +2782,11 @@ export declare interface TransportAvailabilityResponse {
2433
2782
  export declare interface TransportPreferences {
2434
2783
  /** Indicates Shipment Logistics type that the customer preferred. */
2435
2784
  preferredShipmentType: TransportShipmentTypes;
2785
+ /**
2786
+ * Read only property which indicates whether transport preferences has been updated or not after device is prepared.
2787
+ * NOTE: This property will not be serialized. It can only be populated by the server.
2788
+ */
2789
+ readonly isUpdated?: boolean;
2436
2790
  }
2437
2791
 
2438
2792
  /** Defines values for TransportShipmentTypes. */
@@ -2466,6 +2820,10 @@ export declare interface UpdateJobDetails {
2466
2820
  contactDetails?: ContactDetails;
2467
2821
  /** Shipping address of the customer. */
2468
2822
  shippingAddress?: ShippingAddress;
2823
+ /** Reverse Shipping Address and contact details for a job. */
2824
+ reverseShippingDetails?: ReverseShippingDetails;
2825
+ /** Preferences related to the order */
2826
+ preferences?: Preferences;
2469
2827
  /** Key encryption key for the job. */
2470
2828
  keyEncryptionKey?: KeyEncryptionKey;
2471
2829
  /** Return package details of job. */
@@ -2493,7 +2851,7 @@ export declare interface UserAssignedProperties {
2493
2851
  }
2494
2852
 
2495
2853
  /** The requirements to validate customer address where the device needs to be shipped. */
2496
- export declare type ValidateAddress = ValidationInputRequest & {
2854
+ export declare interface ValidateAddress extends ValidationInputRequest {
2497
2855
  /** Polymorphic discriminator, which specifies the different types this object can be */
2498
2856
  validationType: "ValidateAddress";
2499
2857
  /** Shipping address of the customer. */
@@ -2502,7 +2860,7 @@ export declare type ValidateAddress = ValidationInputRequest & {
2502
2860
  deviceType: SkuName;
2503
2861
  /** Preferences related to the shipment logistics of the sku. */
2504
2862
  transportPreferences?: TransportPreferences;
2505
- };
2863
+ }
2506
2864
 
2507
2865
  /** Defines values for ValidationInputDiscriminator. */
2508
2866
  export declare type ValidationInputDiscriminator = "ValidateAddress" | "ValidateSubscriptionIsAllowedToCreateJob" | "ValidatePreferences" | "ValidateCreateOrderLimit" | "ValidateSkuAvailability" | "ValidateDataTransferDetails";