@azure/arm-batch 9.2.1-alpha.20240925.1 → 10.0.0-alpha.20240926.3

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 (125) hide show
  1. package/CHANGELOG.md +63 -7
  2. package/dist/index.js +1215 -315
  3. package/dist/index.js.map +1 -1
  4. package/dist/index.min.js +1 -1
  5. package/dist/index.min.js.map +1 -1
  6. package/dist-esm/samples-dev/applicationCreateSample.js +1 -1
  7. package/dist-esm/samples-dev/applicationDeleteSample.js +1 -1
  8. package/dist-esm/samples-dev/applicationGetSample.js +1 -1
  9. package/dist-esm/samples-dev/applicationListSample.js +1 -1
  10. package/dist-esm/samples-dev/applicationPackageActivateSample.js +1 -1
  11. package/dist-esm/samples-dev/applicationPackageCreateSample.js +1 -1
  12. package/dist-esm/samples-dev/applicationPackageDeleteSample.js +1 -1
  13. package/dist-esm/samples-dev/applicationPackageGetSample.js +1 -1
  14. package/dist-esm/samples-dev/applicationPackageListSample.js +1 -1
  15. package/dist-esm/samples-dev/applicationUpdateSample.js +1 -1
  16. package/dist-esm/samples-dev/batchAccountCreateSample.js +5 -5
  17. package/dist-esm/samples-dev/batchAccountDeleteSample.js +1 -1
  18. package/dist-esm/samples-dev/batchAccountGetDetectorSample.js +1 -1
  19. package/dist-esm/samples-dev/batchAccountGetKeysSample.js +1 -1
  20. package/dist-esm/samples-dev/batchAccountGetSample.js +2 -2
  21. package/dist-esm/samples-dev/batchAccountListByResourceGroupSample.js +1 -1
  22. package/dist-esm/samples-dev/batchAccountListDetectorsSample.js +1 -1
  23. package/dist-esm/samples-dev/batchAccountListOutboundNetworkDependenciesEndpointsSample.js +3 -3
  24. package/dist-esm/samples-dev/batchAccountListSample.js +1 -1
  25. package/dist-esm/samples-dev/batchAccountRegenerateKeySample.js +1 -1
  26. package/dist-esm/samples-dev/batchAccountSynchronizeAutoStorageKeysSample.js +1 -1
  27. package/dist-esm/samples-dev/batchAccountUpdateSample.js +1 -1
  28. package/dist-esm/samples-dev/certificateCancelDeletionSample.js +1 -1
  29. package/dist-esm/samples-dev/certificateCreateSample.js +3 -3
  30. package/dist-esm/samples-dev/certificateDeleteSample.js +1 -1
  31. package/dist-esm/samples-dev/certificateGetSample.js +2 -2
  32. package/dist-esm/samples-dev/certificateListByBatchAccountSample.js +2 -2
  33. package/dist-esm/samples-dev/certificateUpdateSample.js +1 -1
  34. package/dist-esm/samples-dev/locationCheckNameAvailabilitySample.js +2 -2
  35. package/dist-esm/samples-dev/locationGetQuotasSample.js +1 -1
  36. package/dist-esm/samples-dev/locationListSupportedVirtualMachineSkusSample.js +1 -1
  37. package/dist-esm/samples-dev/networkSecurityPerimeterGetConfigurationSample.d.ts +2 -0
  38. package/dist-esm/samples-dev/networkSecurityPerimeterGetConfigurationSample.d.ts.map +1 -0
  39. package/dist-esm/samples-dev/networkSecurityPerimeterGetConfigurationSample.js +39 -0
  40. package/dist-esm/samples-dev/networkSecurityPerimeterGetConfigurationSample.js.map +1 -0
  41. package/dist-esm/samples-dev/networkSecurityPerimeterListConfigurationsSample.d.ts +2 -0
  42. package/dist-esm/samples-dev/networkSecurityPerimeterListConfigurationsSample.d.ts.map +1 -0
  43. package/dist-esm/samples-dev/{locationListSupportedCloudServiceSkusSample.js → networkSecurityPerimeterListConfigurationsSample.js} +9 -8
  44. package/dist-esm/samples-dev/networkSecurityPerimeterListConfigurationsSample.js.map +1 -0
  45. package/dist-esm/samples-dev/networkSecurityPerimeterReconcileConfigurationSample.d.ts +2 -0
  46. package/dist-esm/samples-dev/networkSecurityPerimeterReconcileConfigurationSample.d.ts.map +1 -0
  47. package/dist-esm/samples-dev/networkSecurityPerimeterReconcileConfigurationSample.js +39 -0
  48. package/dist-esm/samples-dev/networkSecurityPerimeterReconcileConfigurationSample.js.map +1 -0
  49. package/dist-esm/samples-dev/operationsListSample.js +1 -1
  50. package/dist-esm/samples-dev/poolCreateSample.js +50 -132
  51. package/dist-esm/samples-dev/poolCreateSample.js.map +1 -1
  52. package/dist-esm/samples-dev/poolDeleteSample.js +1 -1
  53. package/dist-esm/samples-dev/poolDisableAutoScaleSample.js +1 -1
  54. package/dist-esm/samples-dev/poolGetSample.js +7 -7
  55. package/dist-esm/samples-dev/poolListByBatchAccountSample.js +2 -2
  56. package/dist-esm/samples-dev/poolStopResizeSample.js +1 -1
  57. package/dist-esm/samples-dev/poolUpdateSample.js +4 -4
  58. package/dist-esm/samples-dev/privateEndpointConnectionDeleteSample.js +1 -1
  59. package/dist-esm/samples-dev/privateEndpointConnectionGetSample.js +1 -1
  60. package/dist-esm/samples-dev/privateEndpointConnectionListByBatchAccountSample.js +1 -1
  61. package/dist-esm/samples-dev/privateEndpointConnectionUpdateSample.js +1 -1
  62. package/dist-esm/samples-dev/privateLinkResourceGetSample.js +1 -1
  63. package/dist-esm/samples-dev/privateLinkResourceListByBatchAccountSample.js +1 -1
  64. package/dist-esm/src/batchManagementClient.d.ts +2 -1
  65. package/dist-esm/src/batchManagementClient.d.ts.map +1 -1
  66. package/dist-esm/src/batchManagementClient.js +5 -3
  67. package/dist-esm/src/batchManagementClient.js.map +1 -1
  68. package/dist-esm/src/models/index.d.ts +467 -46
  69. package/dist-esm/src/models/index.d.ts.map +1 -1
  70. package/dist-esm/src/models/index.js +92 -0
  71. package/dist-esm/src/models/index.js.map +1 -1
  72. package/dist-esm/src/models/mappers.d.ts +22 -3
  73. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  74. package/dist-esm/src/models/mappers.js +739 -120
  75. package/dist-esm/src/models/mappers.js.map +1 -1
  76. package/dist-esm/src/models/parameters.d.ts +1 -0
  77. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  78. package/dist-esm/src/models/parameters.js +14 -1
  79. package/dist-esm/src/models/parameters.js.map +1 -1
  80. package/dist-esm/src/operations/batchAccountOperations.d.ts +2 -2
  81. package/dist-esm/src/operations/batchAccountOperations.js +2 -2
  82. package/dist-esm/src/operations/batchAccountOperations.js.map +1 -1
  83. package/dist-esm/src/operations/index.d.ts +1 -0
  84. package/dist-esm/src/operations/index.d.ts.map +1 -1
  85. package/dist-esm/src/operations/index.js +1 -0
  86. package/dist-esm/src/operations/index.js.map +1 -1
  87. package/dist-esm/src/operations/location.d.ts +1 -23
  88. package/dist-esm/src/operations/location.d.ts.map +1 -1
  89. package/dist-esm/src/operations/location.js +0 -124
  90. package/dist-esm/src/operations/location.js.map +1 -1
  91. package/dist-esm/src/operations/networkSecurityPerimeterOperations.d.ts +66 -0
  92. package/dist-esm/src/operations/networkSecurityPerimeterOperations.d.ts.map +1 -0
  93. package/dist-esm/src/operations/networkSecurityPerimeterOperations.js +286 -0
  94. package/dist-esm/src/operations/networkSecurityPerimeterOperations.js.map +1 -0
  95. package/dist-esm/src/operationsInterfaces/batchAccountOperations.d.ts +1 -1
  96. package/dist-esm/src/operationsInterfaces/index.d.ts +1 -0
  97. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -1
  98. package/dist-esm/src/operationsInterfaces/index.js +1 -0
  99. package/dist-esm/src/operationsInterfaces/index.js.map +1 -1
  100. package/dist-esm/src/operationsInterfaces/location.d.ts +1 -7
  101. package/dist-esm/src/operationsInterfaces/location.d.ts.map +1 -1
  102. package/dist-esm/src/operationsInterfaces/networkSecurityPerimeterOperations.d.ts +41 -0
  103. package/dist-esm/src/operationsInterfaces/networkSecurityPerimeterOperations.d.ts.map +1 -0
  104. package/dist-esm/src/operationsInterfaces/networkSecurityPerimeterOperations.js +9 -0
  105. package/dist-esm/src/operationsInterfaces/networkSecurityPerimeterOperations.js.map +1 -0
  106. package/dist-esm/test/batch_examples.js +23 -45
  107. package/dist-esm/test/batch_examples.js.map +1 -1
  108. package/package.json +33 -31
  109. package/review/arm-batch.api.md +294 -44
  110. package/src/batchManagementClient.ts +7 -2
  111. package/src/models/index.ts +517 -53
  112. package/src/models/mappers.ts +781 -133
  113. package/src/models/parameters.ts +16 -1
  114. package/src/operations/batchAccountOperations.ts +42 -42
  115. package/src/operations/index.ts +1 -0
  116. package/src/operations/location.ts +0 -154
  117. package/src/operations/networkSecurityPerimeterOperations.ts +397 -0
  118. package/src/operationsInterfaces/batchAccountOperations.ts +1 -1
  119. package/src/operationsInterfaces/index.ts +1 -0
  120. package/src/operationsInterfaces/location.ts +0 -10
  121. package/src/operationsInterfaces/networkSecurityPerimeterOperations.ts +81 -0
  122. package/types/arm-batch.d.ts +575 -81
  123. package/dist-esm/samples-dev/locationListSupportedCloudServiceSkusSample.d.ts +0 -2
  124. package/dist-esm/samples-dev/locationListSupportedCloudServiceSkusSample.d.ts.map +0 -1
  125. package/dist-esm/samples-dev/locationListSupportedCloudServiceSkusSample.js.map +0 -1
@@ -4,6 +4,48 @@ import { OperationState } from '@azure/core-lro';
4
4
  import { PagedAsyncIterableIterator } from '@azure/core-paging';
5
5
  import { SimplePollerLike } from '@azure/core-lro';
6
6
 
7
+ /** Access rule in a network security perimeter configuration profile */
8
+ export declare interface AccessRule {
9
+ /** Name of the access rule */
10
+ name?: string;
11
+ /** Properties of Access Rule */
12
+ properties?: AccessRuleProperties;
13
+ }
14
+
15
+ /**
16
+ * Defines values for AccessRuleDirection. \
17
+ * {@link KnownAccessRuleDirection} can be used interchangeably with AccessRuleDirection,
18
+ * this enum contains the known values that the service supports.
19
+ * ### Known values supported by the service
20
+ * **Inbound**: Applies to inbound network traffic to the secured resources. \
21
+ * **Outbound**: Applies to outbound network traffic from the secured resources
22
+ */
23
+ export declare type AccessRuleDirection = string;
24
+
25
+ /** Properties of Access Rule */
26
+ export declare interface AccessRuleProperties {
27
+ /** Direction of Access Rule */
28
+ direction?: AccessRuleDirection;
29
+ /** Address prefixes in the CIDR format for inbound rules */
30
+ addressPrefixes?: string[];
31
+ /** Subscriptions for inbound rules */
32
+ subscriptions?: AccessRulePropertiesSubscriptionsItem[];
33
+ /** Network security perimeters for inbound rules */
34
+ networkSecurityPerimeters?: NetworkSecurityPerimeter[];
35
+ /** Fully qualified domain names (FQDN) for outbound rules */
36
+ fullyQualifiedDomainNames?: string[];
37
+ /** Email addresses for outbound rules */
38
+ emailAddresses?: string[];
39
+ /** Phone numbers for outbound rules */
40
+ phoneNumbers?: string[];
41
+ }
42
+
43
+ /** Subscription identifiers */
44
+ export declare interface AccessRulePropertiesSubscriptionsItem {
45
+ /** The fully qualified Azure resource ID of the subscription e.g. ('/subscriptions/00000000-0000-0000-0000-000000000000') */
46
+ id?: string;
47
+ }
48
+
7
49
  /** Defines values for AccountKeyType. */
8
50
  export declare type AccountKeyType = "Primary" | "Secondary";
9
51
 
@@ -17,7 +59,7 @@ export declare interface ActivateApplicationPackageParameters {
17
59
  export declare type AllocationState = "Steady" | "Resizing" | "Stopping";
18
60
 
19
61
  /** Contains information about an application in a Batch account. */
20
- export declare interface Application extends ProxyResource {
62
+ export declare interface Application extends AzureProxyResource {
21
63
  /** The display name for the application. */
22
64
  displayName?: string;
23
65
  /** A value indicating whether packages within the application may be overwritten using the same version string. */
@@ -107,7 +149,7 @@ export declare interface ApplicationOperations {
107
149
  }
108
150
 
109
151
  /** An application package which represents a particular version of an application. */
110
- export declare interface ApplicationPackage extends ProxyResource {
152
+ export declare interface ApplicationPackage extends AzureProxyResource {
111
153
  /**
112
154
  * The current state of the application package.
113
155
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -352,8 +394,67 @@ export declare interface AzureFileShareConfiguration {
352
394
  mountOptions?: string;
353
395
  }
354
396
 
397
+ /** A definition of an Azure resource. */
398
+ export declare interface AzureProxyResource {
399
+ /**
400
+ * The ID of the resource.
401
+ * NOTE: This property will not be serialized. It can only be populated by the server.
402
+ */
403
+ readonly id?: string;
404
+ /**
405
+ * The name of the resource.
406
+ * NOTE: This property will not be serialized. It can only be populated by the server.
407
+ */
408
+ readonly name?: string;
409
+ /**
410
+ * The type of the resource.
411
+ * NOTE: This property will not be serialized. It can only be populated by the server.
412
+ */
413
+ readonly type?: string;
414
+ /**
415
+ * The ETag of the resource, used for concurrency statements.
416
+ * NOTE: This property will not be serialized. It can only be populated by the server.
417
+ */
418
+ readonly etag?: string;
419
+ /** The tags of the resource. */
420
+ tags?: {
421
+ [propertyName: string]: string;
422
+ };
423
+ }
424
+
425
+ /** A definition of an Azure resource. */
426
+ export declare interface AzureResource {
427
+ /**
428
+ * The ID of the resource.
429
+ * NOTE: This property will not be serialized. It can only be populated by the server.
430
+ */
431
+ readonly id?: string;
432
+ /**
433
+ * The name of the resource.
434
+ * NOTE: This property will not be serialized. It can only be populated by the server.
435
+ */
436
+ readonly name?: string;
437
+ /**
438
+ * The type of the resource.
439
+ * NOTE: This property will not be serialized. It can only be populated by the server.
440
+ */
441
+ readonly type?: string;
442
+ /**
443
+ * The location of the resource.
444
+ * NOTE: This property will not be serialized. It can only be populated by the server.
445
+ */
446
+ readonly location?: string;
447
+ /**
448
+ * The tags of the resource.
449
+ * NOTE: This property will not be serialized. It can only be populated by the server.
450
+ */
451
+ readonly tags?: {
452
+ [propertyName: string]: string;
453
+ };
454
+ }
455
+
355
456
  /** Contains information about an Azure Batch account. */
356
- export declare interface BatchAccount extends Resource {
457
+ export declare interface BatchAccount extends AzureResource {
357
458
  /** The identity of the Batch account. */
358
459
  identity?: BatchAccountIdentity;
359
460
  /**
@@ -648,7 +749,7 @@ export declare interface BatchAccountOperations {
648
749
  * you must make sure your network allows outbound access to these endpoints. Failure to allow access
649
750
  * to these endpoints may cause Batch to mark the affected nodes as unusable. For more information
650
751
  * about creating a pool inside of a virtual network, see
651
- * https://docs.microsoft.com/en-us/azure/batch/batch-virtual-network.
752
+ * https://docs.microsoft.com/azure/batch/batch-virtual-network.
652
753
  * @param resourceGroupName The name of the resource group that contains the Batch account.
653
754
  * @param accountName The name of the Batch account.
654
755
  * @param options The options parameters.
@@ -822,6 +923,7 @@ export declare class BatchManagementClient extends coreClient.ServiceClient {
822
923
  privateLinkResourceOperations: PrivateLinkResourceOperations;
823
924
  privateEndpointConnectionOperations: PrivateEndpointConnectionOperations;
824
925
  poolOperations: PoolOperations;
926
+ networkSecurityPerimeterOperations: NetworkSecurityPerimeterOperations;
825
927
  }
826
928
 
827
929
  /** Optional parameters. */
@@ -848,7 +950,7 @@ export declare interface BatchPoolIdentity {
848
950
  export declare type CachingType = "None" | "ReadOnly" | "ReadWrite";
849
951
 
850
952
  /** Contains information about a certificate. */
851
- export declare interface Certificate extends ProxyResource {
953
+ export declare interface Certificate extends AzureProxyResource {
852
954
  /** This must match the first portion of the certificate name. Currently required to be 'SHA1'. */
853
955
  thumbprintAlgorithm?: string;
854
956
  /** This must match the thumbprint from the name. */
@@ -922,7 +1024,7 @@ export declare interface CertificateCreateOptionalParams extends coreClient.Oper
922
1024
  }
923
1025
 
924
1026
  /** Contains information about a certificate. */
925
- export declare interface CertificateCreateOrUpdateParameters extends ProxyResource {
1027
+ export declare interface CertificateCreateOrUpdateParameters extends AzureProxyResource {
926
1028
  /** This must match the first portion of the certificate name. Currently required to be 'SHA1'. */
927
1029
  thumbprintAlgorithm?: string;
928
1030
  /** This must match the thumbprint from the name. */
@@ -1130,9 +1232,9 @@ export declare type CertificateProvisioningState = "Succeeded" | "Deleting" | "F
1130
1232
  export declare interface CertificateReference {
1131
1233
  /** The fully qualified ID of the certificate to install on the pool. This must be inside the same batch account as the pool. */
1132
1234
  id: string;
1133
- /** The default value is currentUser. This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory. */
1235
+ /** The default value is currentUser. This property is applicable only for pools configured with Windows compute nodes. For Linux compute nodes, the certificates are stored in a directory inside the task working directory and an environment variable AZ_BATCH_CERTIFICATES_DIR is supplied to the task to query for this location. For certificates with visibility of 'remoteUser', a 'certs' directory is created in the user's home directory (e.g., /home/{user-name}/certs) and certificates are placed in that directory. */
1134
1236
  storeLocation?: CertificateStoreLocation;
1135
- /** This property is applicable only for pools configured with Windows nodes (that is, created with cloudServiceConfiguration, or with virtualMachineConfiguration using a Windows image reference). Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My. */
1237
+ /** This property is applicable only for pools configured with Windows compute nodes. Common store names include: My, Root, CA, Trust, Disallowed, TrustedPeople, TrustedPublisher, AuthRoot, AddressBook, but any custom store name can also be used. The default value is My. */
1136
1238
  storeName?: string;
1137
1239
  /** Which user accounts on the compute node should have access to the private data of the certificate. */
1138
1240
  visibility?: CertificateVisibility[];
@@ -1218,14 +1320,6 @@ export declare interface CloudErrorBody {
1218
1320
  details?: CloudErrorBody[];
1219
1321
  }
1220
1322
 
1221
- /** The configuration for nodes in a pool based on the Azure Cloud Services platform. */
1222
- export declare interface CloudServiceConfiguration {
1223
- /** Possible values are: 2 - OS Family 2, equivalent to Windows Server 2008 R2 SP1. 3 - OS Family 3, equivalent to Windows Server 2012. 4 - OS Family 4, equivalent to Windows Server 2012 R2. 5 - OS Family 5, equivalent to Windows Server 2016. 6 - OS Family 6, equivalent to Windows Server 2019. For more information, see Azure Guest OS Releases (https://azure.microsoft.com/documentation/articles/cloud-services-guestos-update-matrix/#releases). */
1224
- osFamily: string;
1225
- /** The default value is * which specifies the latest operating system version for the specified OS family. */
1226
- osVersion?: string;
1227
- }
1228
-
1229
1323
  /** Defines values for ComputeNodeDeallocationOption. */
1230
1324
  export declare type ComputeNodeDeallocationOption = "Requeue" | "Terminate" | "TaskCompletion" | "RetainedData";
1231
1325
 
@@ -1248,6 +1342,28 @@ export declare interface ContainerConfiguration {
1248
1342
  containerRegistries?: ContainerRegistry[];
1249
1343
  }
1250
1344
 
1345
+ /** The entry of path and mount mode you want to mount into task container. */
1346
+ export declare interface ContainerHostBatchBindMountEntry {
1347
+ /** The paths which will be mounted to container task's container. */
1348
+ source?: ContainerHostDataPath;
1349
+ /** For Linux, if you mount this path as a read/write mode, this does not mean that all users in container have the read/write access for the path, it depends on the access in host VM. If this path is mounted read-only, all users within the container will not be able to modify the path. */
1350
+ isReadOnly?: boolean;
1351
+ }
1352
+
1353
+ /**
1354
+ * Defines values for ContainerHostDataPath. \
1355
+ * {@link KnownContainerHostDataPath} can be used interchangeably with ContainerHostDataPath,
1356
+ * this enum contains the known values that the service supports.
1357
+ * ### Known values supported by the service
1358
+ * **Shared**: The path for multi-instances task to shared their files. \
1359
+ * **Startup**: The path for start task. \
1360
+ * **VfsMounts**: The path contains all virtual file systems are mounted on this node. \
1361
+ * **Task**: The task path. \
1362
+ * **JobPrep**: The job-prep task path. \
1363
+ * **Applications**: The applications path.
1364
+ */
1365
+ export declare type ContainerHostDataPath = string;
1366
+
1251
1367
  /** A private container registry. */
1252
1368
  export declare interface ContainerRegistry {
1253
1369
  /** The user name to log into the registry server. */
@@ -1273,6 +1389,18 @@ export declare type ContainerType = string;
1273
1389
  /** Defines values for ContainerWorkingDirectory. */
1274
1390
  export declare type ContainerWorkingDirectory = "TaskWorkingDirectory" | "ContainerImageDefault";
1275
1391
 
1392
+ /**
1393
+ * Defines values for CreatedByType. \
1394
+ * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,
1395
+ * this enum contains the known values that the service supports.
1396
+ * ### Known values supported by the service
1397
+ * **User** \
1398
+ * **Application** \
1399
+ * **ManagedIdentity** \
1400
+ * **Key**
1401
+ */
1402
+ export declare type CreatedByType = string;
1403
+
1276
1404
  /** Settings which will be used by the data disks associated to Compute Nodes in the Pool. When using attached data disks, you need to mount and format the disks from within a VM to use them. */
1277
1405
  export declare interface DataDisk {
1278
1406
  /** The lun is used to uniquely identify each data disk. If attaching multiple disks, each should have a distinct lun. The value must be between 0 and 63, inclusive. */
@@ -1312,9 +1440,7 @@ export declare interface DeleteCertificateError {
1312
1440
 
1313
1441
  /** Deployment configuration properties. */
1314
1442
  export declare interface DeploymentConfiguration {
1315
- /** This property and virtualMachineConfiguration are mutually exclusive and one of the properties must be specified. This property cannot be specified if the Batch account was created with its poolAllocationMode property set to 'UserSubscription'. */
1316
- cloudServiceConfiguration?: CloudServiceConfiguration;
1317
- /** This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified. */
1443
+ /** The configuration for compute nodes in a pool based on the Azure Virtual Machines infrastructure. */
1318
1444
  virtualMachineConfiguration?: VirtualMachineConfiguration;
1319
1445
  }
1320
1446
 
@@ -1327,7 +1453,7 @@ export declare interface DetectorListResult {
1327
1453
  }
1328
1454
 
1329
1455
  /** Contains the information for a detector. */
1330
- export declare interface DetectorResponse extends ProxyResource {
1456
+ export declare interface DetectorResponse extends AzureProxyResource {
1331
1457
  /** A base64 encoded string that represents the content of a detector. */
1332
1458
  value?: string;
1333
1459
  }
@@ -1408,6 +1534,55 @@ export declare interface EnvironmentSetting {
1408
1534
  value?: string;
1409
1535
  }
1410
1536
 
1537
+ /** The resource management error additional info. */
1538
+ export declare interface ErrorAdditionalInfo {
1539
+ /**
1540
+ * The additional info type.
1541
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1542
+ */
1543
+ readonly type?: string;
1544
+ /**
1545
+ * The additional info.
1546
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1547
+ */
1548
+ readonly info?: Record<string, unknown>;
1549
+ }
1550
+
1551
+ /** The error detail. */
1552
+ export declare interface ErrorDetail {
1553
+ /**
1554
+ * The error code.
1555
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1556
+ */
1557
+ readonly code?: string;
1558
+ /**
1559
+ * The error message.
1560
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1561
+ */
1562
+ readonly message?: string;
1563
+ /**
1564
+ * The error target.
1565
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1566
+ */
1567
+ readonly target?: string;
1568
+ /**
1569
+ * The error details.
1570
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1571
+ */
1572
+ readonly details?: ErrorDetail[];
1573
+ /**
1574
+ * The error additional info.
1575
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1576
+ */
1577
+ readonly additionalInfo?: ErrorAdditionalInfo[];
1578
+ }
1579
+
1580
+ /** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */
1581
+ export declare interface ErrorResponse {
1582
+ /** The error object. */
1583
+ error?: ErrorDetail;
1584
+ }
1585
+
1411
1586
  /** Fixed scale settings for the pool. */
1412
1587
  export declare interface FixedScaleSettings {
1413
1588
  /** The default value is 15 minutes. Timeout values use ISO 8601 format. For example, use PT10M for 10 minutes. The minimum value is 5 minutes. If you specify a value less than 5 minutes, the Batch service rejects the request with an error; if you are calling the REST API directly, the HTTP status code is 400 (Bad Request). */
@@ -1441,6 +1616,10 @@ export declare interface ImageReference {
1441
1616
  version?: string;
1442
1617
  /** This property is mutually exclusive with other properties. The Azure Compute Gallery Image must have replicas in the same region as the Azure Batch account. For information about the firewall settings for the Batch node agent to communicate with the Batch service see https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration. */
1443
1618
  id?: string;
1619
+ /** This property is mutually exclusive with other properties and can be fetched from shared gallery image GET call. */
1620
+ sharedGalleryImageId?: string;
1621
+ /** This property is mutually exclusive with other properties and can be fetched from community gallery image GET call. */
1622
+ communityGalleryImageId?: string;
1444
1623
  }
1445
1624
 
1446
1625
  /** Defines values for InboundEndpointProtocol. */
@@ -1476,6 +1655,18 @@ export declare interface IPRule {
1476
1655
  value: string;
1477
1656
  }
1478
1657
 
1658
+ /**
1659
+ * Defines values for IssueType. \
1660
+ * {@link KnownIssueType} can be used interchangeably with IssueType,
1661
+ * this enum contains the known values that the service supports.
1662
+ * ### Known values supported by the service
1663
+ * **Unknown**: Unknown issue type \
1664
+ * **ConfigurationPropagationFailure**: An error occurred while applying the network security perimeter (NSP) configuration. \
1665
+ * **MissingPerimeterConfiguration**: A network connectivity issue is happening on the resource which could be addressed either by adding new resources to the network security perimeter (NSP) or by modifying access rules. \
1666
+ * **MissingIdentityConfiguration**: An managed identity hasn't been associated with the resource. The resource will still be able to validate inbound traffic from the network security perimeter (NSP) or matching inbound access rules, but it won't be able to perform outbound access as a member of the NSP.
1667
+ */
1668
+ export declare type IssueType = string;
1669
+
1479
1670
  /** Defines values for KeySource. */
1480
1671
  export declare type KeySource = "Microsoft.Batch" | "Microsoft.KeyVault";
1481
1672
 
@@ -1499,6 +1690,30 @@ export declare interface KeyVaultReference {
1499
1690
  url: string;
1500
1691
  }
1501
1692
 
1693
+ /** Known values of {@link AccessRuleDirection} that the service accepts. */
1694
+ export declare enum KnownAccessRuleDirection {
1695
+ /** Applies to inbound network traffic to the secured resources. */
1696
+ Inbound = "Inbound",
1697
+ /** Applies to outbound network traffic from the secured resources */
1698
+ Outbound = "Outbound"
1699
+ }
1700
+
1701
+ /** Known values of {@link ContainerHostDataPath} that the service accepts. */
1702
+ export declare enum KnownContainerHostDataPath {
1703
+ /** The path for multi-instances task to shared their files. */
1704
+ Shared = "Shared",
1705
+ /** The path for start task. */
1706
+ Startup = "Startup",
1707
+ /** The path contains all virtual file systems are mounted on this node. */
1708
+ VfsMounts = "VfsMounts",
1709
+ /** The task path. */
1710
+ Task = "Task",
1711
+ /** The job-prep task path. */
1712
+ JobPrep = "JobPrep",
1713
+ /** The applications path. */
1714
+ Applications = "Applications"
1715
+ }
1716
+
1502
1717
  /** Known values of {@link ContainerType} that the service accepts. */
1503
1718
  export declare enum KnownContainerType {
1504
1719
  /** A Docker compatible container technology will be used to launch the containers. */
@@ -1507,6 +1722,74 @@ export declare enum KnownContainerType {
1507
1722
  CriCompatible = "CriCompatible"
1508
1723
  }
1509
1724
 
1725
+ /** Known values of {@link CreatedByType} that the service accepts. */
1726
+ export declare enum KnownCreatedByType {
1727
+ /** User */
1728
+ User = "User",
1729
+ /** Application */
1730
+ Application = "Application",
1731
+ /** ManagedIdentity */
1732
+ ManagedIdentity = "ManagedIdentity",
1733
+ /** Key */
1734
+ Key = "Key"
1735
+ }
1736
+
1737
+ /** Known values of {@link IssueType} that the service accepts. */
1738
+ export declare enum KnownIssueType {
1739
+ /** Unknown issue type */
1740
+ Unknown = "Unknown",
1741
+ /** An error occurred while applying the network security perimeter (NSP) configuration. */
1742
+ ConfigurationPropagationFailure = "ConfigurationPropagationFailure",
1743
+ /** A network connectivity issue is happening on the resource which could be addressed either by adding new resources to the network security perimeter (NSP) or by modifying access rules. */
1744
+ MissingPerimeterConfiguration = "MissingPerimeterConfiguration",
1745
+ /** An managed identity hasn't been associated with the resource. The resource will still be able to validate inbound traffic from the network security perimeter (NSP) or matching inbound access rules, but it won't be able to perform outbound access as a member of the NSP. */
1746
+ MissingIdentityConfiguration = "MissingIdentityConfiguration"
1747
+ }
1748
+
1749
+ /** Known values of {@link NetworkSecurityPerimeterConfigurationProvisioningState} that the service accepts. */
1750
+ export declare enum KnownNetworkSecurityPerimeterConfigurationProvisioningState {
1751
+ /** Succeeded */
1752
+ Succeeded = "Succeeded",
1753
+ /** Creating */
1754
+ Creating = "Creating",
1755
+ /** Updating */
1756
+ Updating = "Updating",
1757
+ /** Deleting */
1758
+ Deleting = "Deleting",
1759
+ /** Accepted */
1760
+ Accepted = "Accepted",
1761
+ /** Failed */
1762
+ Failed = "Failed",
1763
+ /** Canceled */
1764
+ Canceled = "Canceled"
1765
+ }
1766
+
1767
+ /** Known values of {@link ResourceAssociationAccessMode} that the service accepts. */
1768
+ export declare enum KnownResourceAssociationAccessMode {
1769
+ /** Enforced access mode - traffic to the resource that failed access checks is blocked */
1770
+ Enforced = "Enforced",
1771
+ /** Learning access mode - traffic to the resource is enabled for analysis but not blocked */
1772
+ Learning = "Learning",
1773
+ /** Audit access mode - traffic to the resource that fails access checks is logged but not blocked */
1774
+ Audit = "Audit"
1775
+ }
1776
+
1777
+ /** Known values of {@link SecurityEncryptionTypes} that the service accepts. */
1778
+ export declare enum KnownSecurityEncryptionTypes {
1779
+ /** NonPersistedTPM */
1780
+ NonPersistedTPM = "NonPersistedTPM",
1781
+ /** VMGuestStateOnly */
1782
+ VMGuestStateOnly = "VMGuestStateOnly"
1783
+ }
1784
+
1785
+ /** Known values of {@link Severity} that the service accepts. */
1786
+ export declare enum KnownSeverity {
1787
+ /** Warning */
1788
+ Warning = "Warning",
1789
+ /** Error */
1790
+ Error = "Error"
1791
+ }
1792
+
1510
1793
  /** Properties used to create a user account on a Linux node. */
1511
1794
  export declare interface LinuxUserConfiguration {
1512
1795
  /** The uid and gid properties must be specified together or not at all. If not specified the underlying operating system picks the uid. */
@@ -1573,12 +1856,6 @@ declare interface Location_2 {
1573
1856
  * @param options The options parameters.
1574
1857
  */
1575
1858
  listSupportedVirtualMachineSkus(locationName: string, options?: LocationListSupportedVirtualMachineSkusOptionalParams): PagedAsyncIterableIterator<SupportedSku>;
1576
- /**
1577
- * Gets the list of Batch supported Cloud Service VM sizes available at the given location.
1578
- * @param locationName The region for which to retrieve Batch service supported SKUs.
1579
- * @param options The options parameters.
1580
- */
1581
- listSupportedCloudServiceSkus(locationName: string, options?: LocationListSupportedCloudServiceSkusOptionalParams): PagedAsyncIterableIterator<SupportedSku>;
1582
1859
  /**
1583
1860
  * Gets the Batch service quotas for the specified subscription at the given location.
1584
1861
  * @param locationName The region for which to retrieve Batch service quotas.
@@ -1609,24 +1886,6 @@ export declare interface LocationGetQuotasOptionalParams extends coreClient.Oper
1609
1886
  /** Contains response data for the getQuotas operation. */
1610
1887
  export declare type LocationGetQuotasResponse = BatchLocationQuota;
1611
1888
 
1612
- /** Optional parameters. */
1613
- export declare interface LocationListSupportedCloudServiceSkusNextOptionalParams extends coreClient.OperationOptions {
1614
- }
1615
-
1616
- /** Contains response data for the listSupportedCloudServiceSkusNext operation. */
1617
- export declare type LocationListSupportedCloudServiceSkusNextResponse = SupportedSkusResult;
1618
-
1619
- /** Optional parameters. */
1620
- export declare interface LocationListSupportedCloudServiceSkusOptionalParams extends coreClient.OperationOptions {
1621
- /** The maximum number of items to return in the response. */
1622
- maxresults?: number;
1623
- /** OData filter expression. Valid properties for filtering are "familyName". */
1624
- filter?: string;
1625
- }
1626
-
1627
- /** Contains response data for the listSupportedCloudServiceSkus operation. */
1628
- export declare type LocationListSupportedCloudServiceSkusResponse = SupportedSkusResult;
1629
-
1630
1889
  /** Optional parameters. */
1631
1890
  export declare interface LocationListSupportedVirtualMachineSkusNextOptionalParams extends coreClient.OperationOptions {
1632
1891
  }
@@ -1651,6 +1910,8 @@ export declare type LoginMode = "Batch" | "Interactive";
1651
1910
  export declare interface ManagedDisk {
1652
1911
  /** The storage account type for use in creating data disks or OS disk. */
1653
1912
  storageAccountType?: StorageAccountType;
1913
+ /** Specifies the security profile settings for the managed disk. **Note**: It can only be set for Confidential VMs and is required when using Confidential VMs. */
1914
+ securityProfile?: VMDiskSecurityProfile;
1654
1915
  }
1655
1916
 
1656
1917
  /** The Batch service does not assign any meaning to this metadata; it is solely for the use of user code. */
@@ -1678,13 +1939,13 @@ export declare type NameAvailabilityReason = "Invalid" | "AlreadyExists";
1678
1939
 
1679
1940
  /** The network configuration for a pool. */
1680
1941
  export declare interface NetworkConfiguration {
1681
- /** The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. For pools created with a virtual machine configuration, enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. For pools created with a cloud service configuration, enable ports 10100, 20100, and 30100. Also enable outbound connections to Azure Storage on port 443. For cloudServiceConfiguration pools, only 'classic' VNETs are supported. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration */
1942
+ /** The virtual network must be in the same region and subscription as the Azure Batch account. The specified subnet should have enough free IP addresses to accommodate the number of nodes in the pool. If the subnet doesn't have enough free IP addresses, the pool will partially allocate compute nodes and a resize error will occur. The 'MicrosoftAzureBatch' service principal must have the 'Classic Virtual Machine Contributor' Role-Based Access Control (RBAC) role for the specified VNet. The specified subnet must allow communication from the Azure Batch service to be able to schedule tasks on the compute nodes. This can be verified by checking if the specified VNet has any associated Network Security Groups (NSG). If communication to the compute nodes in the specified subnet is denied by an NSG, then the Batch service will set the state of the compute nodes to unusable. If the specified VNet has any associated Network Security Groups (NSG), then a few reserved system ports must be enabled for inbound communication. Enable ports 29876 and 29877, as well as port 22 for Linux and port 3389 for Windows. Also enable outbound connections to Azure Storage on port 443. For more details see: https://docs.microsoft.com/en-us/azure/batch/batch-api-basics#virtual-network-vnet-and-firewall-configuration */
1682
1943
  subnetId?: string;
1683
1944
  /** The scope of dynamic vnet assignment. */
1684
1945
  dynamicVnetAssignmentScope?: DynamicVNetAssignmentScope;
1685
- /** Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property. */
1946
+ /** The endpoint configuration for a pool. */
1686
1947
  endpointConfiguration?: PoolEndpointConfiguration;
1687
- /** This property is only supported on Pools with the virtualMachineConfiguration property. */
1948
+ /** The public IP Address configuration of the networking configuration of a Pool. */
1688
1949
  publicIPAddressConfiguration?: PublicIPAddressConfiguration;
1689
1950
  /** Accelerated networking enables single root I/O virtualization (SR-IOV) to a VM, which may lead to improved networking performance. For more details, see: https://learn.microsoft.com/azure/virtual-network/accelerated-networking-overview. */
1690
1951
  enableAcceleratedNetworking?: boolean;
@@ -1713,6 +1974,157 @@ export declare interface NetworkSecurityGroupRule {
1713
1974
  /** Defines values for NetworkSecurityGroupRuleAccess. */
1714
1975
  export declare type NetworkSecurityGroupRuleAccess = "Allow" | "Deny";
1715
1976
 
1977
+ /** Information about a network security perimeter (NSP) */
1978
+ export declare interface NetworkSecurityPerimeter {
1979
+ /** Fully qualified Azure resource ID of the NSP resource */
1980
+ id?: string;
1981
+ /** Universal unique ID (UUID) of the network security perimeter */
1982
+ perimeterGuid?: string;
1983
+ /** Location of the network security perimeter */
1984
+ location?: string;
1985
+ }
1986
+
1987
+ /** Network security perimeter (NSP) configuration resource */
1988
+ export declare interface NetworkSecurityPerimeterConfiguration extends ProxyResource {
1989
+ /** Network security configuration properties. */
1990
+ properties?: NetworkSecurityPerimeterConfigurationProperties;
1991
+ }
1992
+
1993
+ /** Result of a list NSP (network security perimeter) configurations request. */
1994
+ export declare interface NetworkSecurityPerimeterConfigurationListResult {
1995
+ /** Array of network security perimeter results. */
1996
+ value?: NetworkSecurityPerimeterConfiguration[];
1997
+ /** The link used to get the next page of results. */
1998
+ nextLink?: string;
1999
+ }
2000
+
2001
+ /** Network security configuration properties. */
2002
+ export declare interface NetworkSecurityPerimeterConfigurationProperties {
2003
+ /**
2004
+ * Provisioning state of a network security perimeter configuration that is being created or updated.
2005
+ * NOTE: This property will not be serialized. It can only be populated by the server.
2006
+ */
2007
+ readonly provisioningState?: NetworkSecurityPerimeterConfigurationProvisioningState;
2008
+ /**
2009
+ * List of provisioning issues, if any
2010
+ * NOTE: This property will not be serialized. It can only be populated by the server.
2011
+ */
2012
+ readonly provisioningIssues?: ProvisioningIssue[];
2013
+ /** Information about a network security perimeter (NSP) */
2014
+ networkSecurityPerimeter?: NetworkSecurityPerimeter;
2015
+ /** Information about resource association */
2016
+ resourceAssociation?: ResourceAssociation;
2017
+ /** Network security perimeter configuration profile */
2018
+ profile?: NetworkSecurityProfile;
2019
+ }
2020
+
2021
+ /**
2022
+ * Defines values for NetworkSecurityPerimeterConfigurationProvisioningState. \
2023
+ * {@link KnownNetworkSecurityPerimeterConfigurationProvisioningState} can be used interchangeably with NetworkSecurityPerimeterConfigurationProvisioningState,
2024
+ * this enum contains the known values that the service supports.
2025
+ * ### Known values supported by the service
2026
+ * **Succeeded** \
2027
+ * **Creating** \
2028
+ * **Updating** \
2029
+ * **Deleting** \
2030
+ * **Accepted** \
2031
+ * **Failed** \
2032
+ * **Canceled**
2033
+ */
2034
+ export declare type NetworkSecurityPerimeterConfigurationProvisioningState = string;
2035
+
2036
+ /** Optional parameters. */
2037
+ export declare interface NetworkSecurityPerimeterGetConfigurationOptionalParams extends coreClient.OperationOptions {
2038
+ }
2039
+
2040
+ /** Contains response data for the getConfiguration operation. */
2041
+ export declare type NetworkSecurityPerimeterGetConfigurationResponse = NetworkSecurityPerimeterConfiguration;
2042
+
2043
+ /** Optional parameters. */
2044
+ export declare interface NetworkSecurityPerimeterListConfigurationsNextOptionalParams extends coreClient.OperationOptions {
2045
+ }
2046
+
2047
+ /** Contains response data for the listConfigurationsNext operation. */
2048
+ export declare type NetworkSecurityPerimeterListConfigurationsNextResponse = NetworkSecurityPerimeterConfigurationListResult;
2049
+
2050
+ /** Optional parameters. */
2051
+ export declare interface NetworkSecurityPerimeterListConfigurationsOptionalParams extends coreClient.OperationOptions {
2052
+ }
2053
+
2054
+ /** Contains response data for the listConfigurations operation. */
2055
+ export declare type NetworkSecurityPerimeterListConfigurationsResponse = NetworkSecurityPerimeterConfigurationListResult;
2056
+
2057
+ /** Interface representing a NetworkSecurityPerimeterOperations. */
2058
+ export declare interface NetworkSecurityPerimeterOperations {
2059
+ /**
2060
+ * Lists all of the NSP configurations in the specified account.
2061
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
2062
+ * @param accountName The name of the Batch account.
2063
+ * @param options The options parameters.
2064
+ */
2065
+ listConfigurations(resourceGroupName: string, accountName: string, options?: NetworkSecurityPerimeterListConfigurationsOptionalParams): PagedAsyncIterableIterator<NetworkSecurityPerimeterConfiguration>;
2066
+ /**
2067
+ * Gets information about the specified NSP configuration.
2068
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
2069
+ * @param accountName The name of the Batch account.
2070
+ * @param networkSecurityPerimeterConfigurationName The name for Network Security Perimeter
2071
+ * configuration
2072
+ * @param options The options parameters.
2073
+ */
2074
+ getConfiguration(resourceGroupName: string, accountName: string, networkSecurityPerimeterConfigurationName: string, options?: NetworkSecurityPerimeterGetConfigurationOptionalParams): Promise<NetworkSecurityPerimeterGetConfigurationResponse>;
2075
+ /**
2076
+ * Reconciles the specified NSP configuration.
2077
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
2078
+ * @param accountName The name of the Batch account.
2079
+ * @param networkSecurityPerimeterConfigurationName The name for Network Security Perimeter
2080
+ * configuration
2081
+ * @param options The options parameters.
2082
+ */
2083
+ beginReconcileConfiguration(resourceGroupName: string, accountName: string, networkSecurityPerimeterConfigurationName: string, options?: NetworkSecurityPerimeterReconcileConfigurationOptionalParams): Promise<SimplePollerLike<OperationState<NetworkSecurityPerimeterReconcileConfigurationResponse>, NetworkSecurityPerimeterReconcileConfigurationResponse>>;
2084
+ /**
2085
+ * Reconciles the specified NSP configuration.
2086
+ * @param resourceGroupName The name of the resource group that contains the Batch account.
2087
+ * @param accountName The name of the Batch account.
2088
+ * @param networkSecurityPerimeterConfigurationName The name for Network Security Perimeter
2089
+ * configuration
2090
+ * @param options The options parameters.
2091
+ */
2092
+ beginReconcileConfigurationAndWait(resourceGroupName: string, accountName: string, networkSecurityPerimeterConfigurationName: string, options?: NetworkSecurityPerimeterReconcileConfigurationOptionalParams): Promise<NetworkSecurityPerimeterReconcileConfigurationResponse>;
2093
+ }
2094
+
2095
+ /** Defines headers for NetworkSecurityPerimeter_reconcileConfiguration operation. */
2096
+ export declare interface NetworkSecurityPerimeterReconcileConfigurationHeaders {
2097
+ /** The URL of the resource used to check the status of the asynchronous operation. */
2098
+ location?: string;
2099
+ /** Suggested delay to check the status of the asynchronous operation. The value is an integer that specifies the delay in seconds. */
2100
+ retryAfter?: number;
2101
+ }
2102
+
2103
+ /** Optional parameters. */
2104
+ export declare interface NetworkSecurityPerimeterReconcileConfigurationOptionalParams extends coreClient.OperationOptions {
2105
+ /** Delay to wait until next poll, in milliseconds. */
2106
+ updateIntervalInMs?: number;
2107
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
2108
+ resumeFrom?: string;
2109
+ }
2110
+
2111
+ /** Contains response data for the reconcileConfiguration operation. */
2112
+ export declare type NetworkSecurityPerimeterReconcileConfigurationResponse = NetworkSecurityPerimeterReconcileConfigurationHeaders;
2113
+
2114
+ /** Network security perimeter configuration profile */
2115
+ export declare interface NetworkSecurityProfile {
2116
+ /** Name of the profile */
2117
+ name?: string;
2118
+ /** Current access rules version */
2119
+ accessRulesVersion?: number;
2120
+ /** List of Access Rules */
2121
+ accessRules?: AccessRule[];
2122
+ /** Current diagnostic settings version */
2123
+ diagnosticSettingsVersion?: number;
2124
+ /** List of log categories that are enabled */
2125
+ enabledLogCategories?: string[];
2126
+ }
2127
+
1716
2128
  /** Information used to connect to an NFS file system. */
1717
2129
  export declare interface NFSMountConfiguration {
1718
2130
  /** The URI of the file system to mount. */
@@ -1834,7 +2246,7 @@ export declare interface OutboundEnvironmentEndpointCollection {
1834
2246
  export declare type PackageState = "Pending" | "Active";
1835
2247
 
1836
2248
  /** Contains information about a pool. */
1837
- export declare interface Pool extends ProxyResource {
2249
+ export declare interface Pool extends AzureProxyResource {
1838
2250
  /** The type of identity used for the Batch Pool. */
1839
2251
  identity?: BatchPoolIdentity;
1840
2252
  /** The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. */
@@ -1869,9 +2281,9 @@ export declare interface Pool extends ProxyResource {
1869
2281
  * NOTE: This property will not be serialized. It can only be populated by the server.
1870
2282
  */
1871
2283
  readonly allocationStateTransitionTime?: Date;
1872
- /** For information about available sizes of virtual machines for Cloud Services pools (pools created with cloudServiceConfiguration), see Sizes for Cloud Services (https://azure.microsoft.com/documentation/articles/cloud-services-sizes-specs/). Batch supports all Cloud Services VM sizes except ExtraSmall. For information about available VM sizes for pools using images from the Virtual Machines Marketplace (pools created with virtualMachineConfiguration) see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). */
2284
+ /** For information about available VM sizes, see Sizes for Virtual Machines (Linux) (https://azure.microsoft.com/documentation/articles/virtual-machines-linux-sizes/) or Sizes for Virtual Machines (Windows) (https://azure.microsoft.com/documentation/articles/virtual-machines-windows-sizes/). Batch supports all Azure VM sizes except STANDARD_A0 and those with premium storage (STANDARD_GS, STANDARD_DS, and STANDARD_DSV2 series). */
1873
2285
  vmSize?: string;
1874
- /** Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS). */
2286
+ /** Deployment configuration properties. */
1875
2287
  deploymentConfiguration?: DeploymentConfiguration;
1876
2288
  /**
1877
2289
  * The number of dedicated compute nodes currently in the pool.
@@ -2157,7 +2569,7 @@ export declare interface PrivateEndpoint {
2157
2569
  }
2158
2570
 
2159
2571
  /** Contains information about a private link resource. */
2160
- export declare interface PrivateEndpointConnection extends ProxyResource {
2572
+ export declare interface PrivateEndpointConnection extends AzureProxyResource {
2161
2573
  /**
2162
2574
  * The provisioning state of the private endpoint connection.
2163
2575
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -2304,7 +2716,7 @@ export declare interface PrivateEndpointConnectionUpdateOptionalParams extends c
2304
2716
  export declare type PrivateEndpointConnectionUpdateResponse = PrivateEndpointConnection;
2305
2717
 
2306
2718
  /** Contains information about a private link resource. */
2307
- export declare interface PrivateLinkResource extends ProxyResource {
2719
+ export declare interface PrivateLinkResource extends AzureProxyResource {
2308
2720
  /**
2309
2721
  * The group id is used to establish the private link connection.
2310
2722
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -2381,31 +2793,54 @@ export declare interface PrivateLinkServiceConnectionState {
2381
2793
  /** Defines values for PrivateLinkServiceConnectionStatus. */
2382
2794
  export declare type PrivateLinkServiceConnectionStatus = "Approved" | "Pending" | "Rejected" | "Disconnected";
2383
2795
 
2384
- /** Defines values for ProvisioningState. */
2385
- export declare type ProvisioningState = "Invalid" | "Creating" | "Deleting" | "Succeeded" | "Failed" | "Cancelled";
2796
+ /** Describes a provisioning issue for a network security perimeter configuration */
2797
+ export declare interface ProvisioningIssue {
2798
+ /**
2799
+ * Name of the issue
2800
+ * NOTE: This property will not be serialized. It can only be populated by the server.
2801
+ */
2802
+ readonly name?: string;
2803
+ /**
2804
+ * Details of a provisioning issue for a network security perimeter (NSP) configuration. Resource providers should generate separate provisioning issue elements for each separate issue detected, and include a meaningful and distinctive description, as well as any appropriate suggestedResourceIds and suggestedAccessRules
2805
+ * NOTE: This property will not be serialized. It can only be populated by the server.
2806
+ */
2807
+ readonly properties?: ProvisioningIssueProperties;
2808
+ }
2386
2809
 
2387
- /** A definition of an Azure resource. */
2388
- export declare interface ProxyResource {
2810
+ /** Details of a provisioning issue for a network security perimeter (NSP) configuration. Resource providers should generate separate provisioning issue elements for each separate issue detected, and include a meaningful and distinctive description, as well as any appropriate suggestedResourceIds and suggestedAccessRules */
2811
+ export declare interface ProvisioningIssueProperties {
2389
2812
  /**
2390
- * The ID of the resource.
2813
+ * Type of issue
2391
2814
  * NOTE: This property will not be serialized. It can only be populated by the server.
2392
2815
  */
2393
- readonly id?: string;
2816
+ readonly issueType?: IssueType;
2394
2817
  /**
2395
- * The name of the resource.
2818
+ * Severity of the issue.
2396
2819
  * NOTE: This property will not be serialized. It can only be populated by the server.
2397
2820
  */
2398
- readonly name?: string;
2821
+ readonly severity?: Severity;
2399
2822
  /**
2400
- * The type of the resource.
2823
+ * Description of the issue
2401
2824
  * NOTE: This property will not be serialized. It can only be populated by the server.
2402
2825
  */
2403
- readonly type?: string;
2826
+ readonly description?: string;
2404
2827
  /**
2405
- * The ETag of the resource, used for concurrency statements.
2828
+ * Fully qualified resource IDs of suggested resources that can be associated to the network security perimeter (NSP) to remediate the issue.
2406
2829
  * NOTE: This property will not be serialized. It can only be populated by the server.
2407
2830
  */
2408
- readonly etag?: string;
2831
+ readonly suggestedResourceIds?: string[];
2832
+ /**
2833
+ * Access rules that can be added to the network security profile (NSP) to remediate the issue.
2834
+ * NOTE: This property will not be serialized. It can only be populated by the server.
2835
+ */
2836
+ readonly suggestedAccessRules?: AccessRule[];
2837
+ }
2838
+
2839
+ /** Defines values for ProvisioningState. */
2840
+ export declare type ProvisioningState = "Invalid" | "Creating" | "Deleting" | "Succeeded" | "Failed" | "Cancelled";
2841
+
2842
+ /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
2843
+ export declare interface ProxyResource extends Resource {
2409
2844
  }
2410
2845
 
2411
2846
  /** The public IP Address configuration of the networking configuration of a Pool. */
@@ -2417,7 +2852,7 @@ export declare interface PublicIPAddressConfiguration {
2417
2852
  }
2418
2853
 
2419
2854
  /** Defines values for PublicNetworkAccessType. */
2420
- export declare type PublicNetworkAccessType = "Enabled" | "Disabled";
2855
+ export declare type PublicNetworkAccessType = "Enabled" | "Disabled" | "SecuredByPerimeter";
2421
2856
 
2422
2857
  /** An error that occurred when resizing a pool. */
2423
2858
  export declare interface ResizeError {
@@ -2445,37 +2880,49 @@ export declare interface ResizeOperationStatus {
2445
2880
  errors?: ResizeError[];
2446
2881
  }
2447
2882
 
2448
- /** A definition of an Azure resource. */
2883
+ /** Common fields that are returned in the response for all Azure Resource Manager resources */
2449
2884
  export declare interface Resource {
2450
2885
  /**
2451
- * The ID of the resource.
2886
+ * Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
2452
2887
  * NOTE: This property will not be serialized. It can only be populated by the server.
2453
2888
  */
2454
2889
  readonly id?: string;
2455
2890
  /**
2456
- * The name of the resource.
2891
+ * The name of the resource
2457
2892
  * NOTE: This property will not be serialized. It can only be populated by the server.
2458
2893
  */
2459
2894
  readonly name?: string;
2460
2895
  /**
2461
- * The type of the resource.
2896
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
2462
2897
  * NOTE: This property will not be serialized. It can only be populated by the server.
2463
2898
  */
2464
2899
  readonly type?: string;
2465
2900
  /**
2466
- * The location of the resource.
2901
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
2467
2902
  * NOTE: This property will not be serialized. It can only be populated by the server.
2468
2903
  */
2469
- readonly location?: string;
2470
- /**
2471
- * The tags of the resource.
2472
- * NOTE: This property will not be serialized. It can only be populated by the server.
2473
- */
2474
- readonly tags?: {
2475
- [propertyName: string]: string;
2476
- };
2904
+ readonly systemData?: SystemData;
2905
+ }
2906
+
2907
+ /** Information about resource association */
2908
+ export declare interface ResourceAssociation {
2909
+ /** Name of the resource association */
2910
+ name?: string;
2911
+ /** Access mode of the resource association */
2912
+ accessMode?: ResourceAssociationAccessMode;
2477
2913
  }
2478
2914
 
2915
+ /**
2916
+ * Defines values for ResourceAssociationAccessMode. \
2917
+ * {@link KnownResourceAssociationAccessMode} can be used interchangeably with ResourceAssociationAccessMode,
2918
+ * this enum contains the known values that the service supports.
2919
+ * ### Known values supported by the service
2920
+ * **Enforced**: Enforced access mode - traffic to the resource that failed access checks is blocked \
2921
+ * **Learning**: Learning access mode - traffic to the resource is enabled for analysis but not blocked \
2922
+ * **Audit**: Audit access mode - traffic to the resource that fails access checks is logged but not blocked
2923
+ */
2924
+ export declare type ResourceAssociationAccessMode = string;
2925
+
2479
2926
  /** A single file or multiple files to be downloaded to a compute node. */
2480
2927
  export declare interface ResourceFile {
2481
2928
  /** The autoStorageContainerName, storageContainerUrl and httpUrl properties are mutually exclusive and one of them must be specified. */
@@ -2523,22 +2970,45 @@ export declare interface ScaleSettings {
2523
2970
  autoScale?: AutoScaleSettings;
2524
2971
  }
2525
2972
 
2973
+ /**
2974
+ * Defines values for SecurityEncryptionTypes. \
2975
+ * {@link KnownSecurityEncryptionTypes} can be used interchangeably with SecurityEncryptionTypes,
2976
+ * this enum contains the known values that the service supports.
2977
+ * ### Known values supported by the service
2978
+ * **NonPersistedTPM** \
2979
+ * **VMGuestStateOnly**
2980
+ */
2981
+ export declare type SecurityEncryptionTypes = string;
2982
+
2526
2983
  /** Specifies the security profile settings for the virtual machine or virtual machine scale set. */
2527
2984
  export declare interface SecurityProfile {
2528
2985
  /** Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings. */
2529
- securityType?: "trustedLaunch";
2986
+ securityType?: SecurityTypes;
2530
2987
  /** This property can be used by user in the request to enable or disable the Host Encryption for the virtual machine or virtual machine scale set. This will enable the encryption for all the disks including Resource/Temp disk at host itself. */
2531
2988
  encryptionAtHost?: boolean;
2532
2989
  /** Specifies the security settings like secure boot and vTPM used while creating the virtual machine. */
2533
2990
  uefiSettings?: UefiSettings;
2534
2991
  }
2535
2992
 
2993
+ /** Defines values for SecurityTypes. */
2994
+ export declare type SecurityTypes = "trustedLaunch" | "confidentialVM";
2995
+
2536
2996
  /** Specifies the service artifact reference id used to set same image version for all virtual machines in the scale set when using 'latest' image version. */
2537
2997
  export declare interface ServiceArtifactReference {
2538
2998
  /** The service artifact reference id in the form of /subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Compute/galleries/{galleryName}/serviceArtifacts/{serviceArtifactName}/vmArtifactsProfiles/{vmArtifactsProfilesName} */
2539
2999
  id: string;
2540
3000
  }
2541
3001
 
3002
+ /**
3003
+ * Defines values for Severity. \
3004
+ * {@link KnownSeverity} can be used interchangeably with Severity,
3005
+ * this enum contains the known values that the service supports.
3006
+ * ### Known values supported by the service
3007
+ * **Warning** \
3008
+ * **Error**
3009
+ */
3010
+ export declare type Severity = string;
3011
+
2542
3012
  /** A SKU capability, such as the number of cores. */
2543
3013
  export declare interface SkuCapability {
2544
3014
  /**
@@ -2609,6 +3079,22 @@ export declare interface SupportedSkusResult {
2609
3079
  readonly nextLink?: string;
2610
3080
  }
2611
3081
 
3082
+ /** Metadata pertaining to creation and last modification of the resource. */
3083
+ export declare interface SystemData {
3084
+ /** The identity that created the resource. */
3085
+ createdBy?: string;
3086
+ /** The type of identity that created the resource. */
3087
+ createdByType?: CreatedByType;
3088
+ /** The timestamp of resource creation (UTC). */
3089
+ createdAt?: Date;
3090
+ /** The identity that last modified the resource. */
3091
+ lastModifiedBy?: string;
3092
+ /** The type of identity that last modified the resource. */
3093
+ lastModifiedByType?: CreatedByType;
3094
+ /** The timestamp of resource last modification (UTC) */
3095
+ lastModifiedAt?: Date;
3096
+ }
3097
+
2612
3098
  /** The container settings for a task. */
2613
3099
  export declare interface TaskContainerSettings {
2614
3100
  /** These additional options are supplied as arguments to the "docker create" command, in addition to those controlled by the Batch Service. */
@@ -2619,6 +3105,8 @@ export declare interface TaskContainerSettings {
2619
3105
  registry?: ContainerRegistry;
2620
3106
  /** A flag to indicate where the container task working directory is. The default is 'taskWorkingDirectory'. */
2621
3107
  workingDirectory?: ContainerWorkingDirectory;
3108
+ /** If this array is null or be not present, container task will mount entire temporary disk drive in windows (or AZ_BATCH_NODE_ROOT_DIR in Linux). It won't' mount any data paths into container if this array is set as empty. */
3109
+ containerHostBatchBindMounts?: ContainerHostBatchBindMountEntry[];
2622
3110
  }
2623
3111
 
2624
3112
  /** Specifies how tasks should be distributed across compute nodes. */
@@ -2644,7 +3132,7 @@ export declare interface UpgradePolicy {
2644
3132
  mode: UpgradeMode;
2645
3133
  /** The configuration parameters used for performing automatic OS upgrade. */
2646
3134
  automaticOSUpgradePolicy?: AutomaticOSUpgradePolicy;
2647
- /** This property is only supported on Pools with the virtualMachineConfiguration property. */
3135
+ /** The configuration parameters used while performing a rolling upgrade. */
2648
3136
  rollingUpgradePolicy?: RollingUpgradePolicy;
2649
3137
  }
2650
3138
 
@@ -2732,6 +3220,12 @@ export declare interface VirtualMachineFamilyCoreQuota {
2732
3220
  readonly coreQuota?: number;
2733
3221
  }
2734
3222
 
3223
+ /** Specifies the security profile settings for the managed disk. **Note**: It can only be set for Confidential VMs and is required when using Confidential VMs. */
3224
+ export declare interface VMDiskSecurityProfile {
3225
+ /** Specifies the EncryptionType of the managed disk. It is set to VMGuestStateOnly for encryption of just the VMGuestState blob, and NonPersistedTPM for not persisting firmware state in the VMGuestState blob. **Note**: It can be set for only Confidential VMs and required when using Confidential VMs. */
3226
+ securityEncryptionType?: SecurityEncryptionTypes;
3227
+ }
3228
+
2735
3229
  /** The configuration for virtual machine extensions. */
2736
3230
  export declare interface VMExtension {
2737
3231
  /** The name of the virtual machine extension. */
@@ -2762,7 +3256,7 @@ export declare interface WindowsConfiguration {
2762
3256
 
2763
3257
  /** Properties used to create a user account on a Windows node. */
2764
3258
  export declare interface WindowsUserConfiguration {
2765
- /** Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode. */
3259
+ /** Specifies login mode for the user. The default value is Interactive. */
2766
3260
  loginMode?: LoginMode;
2767
3261
  }
2768
3262