@azure/arm-batch 9.2.1-alpha.20240924.1 → 10.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 (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 +6 -5
  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
@@ -155,7 +155,7 @@ export interface PrivateLinkServiceConnectionState {
155
155
  }
156
156
 
157
157
  /** A definition of an Azure resource. */
158
- export interface ProxyResource {
158
+ export interface AzureProxyResource {
159
159
  /**
160
160
  * The ID of the resource.
161
161
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -176,6 +176,8 @@ export interface ProxyResource {
176
176
  * NOTE: This property will not be serialized. It can only be populated by the server.
177
177
  */
178
178
  readonly etag?: string;
179
+ /** The tags of the resource. */
180
+ tags?: { [propertyName: string]: string };
179
181
  }
180
182
 
181
183
  /** A VM Family and its associated core quota for the Batch account. */
@@ -193,7 +195,7 @@ export interface VirtualMachineFamilyCoreQuota {
193
195
  }
194
196
 
195
197
  /** A definition of an Azure resource. */
196
- export interface Resource {
198
+ export interface AzureResource {
197
199
  /**
198
200
  * The ID of the resource.
199
201
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -495,20 +497,10 @@ export interface ListPoolsResult {
495
497
 
496
498
  /** Deployment configuration properties. */
497
499
  export interface DeploymentConfiguration {
498
- /** 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'. */
499
- cloudServiceConfiguration?: CloudServiceConfiguration;
500
- /** This property and cloudServiceConfiguration are mutually exclusive and one of the properties must be specified. */
500
+ /** The configuration for compute nodes in a pool based on the Azure Virtual Machines infrastructure. */
501
501
  virtualMachineConfiguration?: VirtualMachineConfiguration;
502
502
  }
503
503
 
504
- /** The configuration for nodes in a pool based on the Azure Cloud Services platform. */
505
- export interface CloudServiceConfiguration {
506
- /** 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). */
507
- osFamily: string;
508
- /** The default value is * which specifies the latest operating system version for the specified OS family. */
509
- osVersion?: string;
510
- }
511
-
512
504
  /** The configuration for compute nodes in a pool based on the Azure Virtual Machines infrastructure. */
513
505
  export interface VirtualMachineConfiguration {
514
506
  /** A reference to an Azure Virtual Machines Marketplace image or the Azure Image resource of a custom Virtual Machine. To get the list of all imageReferences verified by Azure Batch, see the 'List supported node agent SKUs' operation. */
@@ -555,6 +547,10 @@ export interface ImageReference {
555
547
  version?: string;
556
548
  /** 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. */
557
549
  id?: string;
550
+ /** This property is mutually exclusive with other properties and can be fetched from shared gallery image GET call. */
551
+ sharedGalleryImageId?: string;
552
+ /** This property is mutually exclusive with other properties and can be fetched from community gallery image GET call. */
553
+ communityGalleryImageId?: string;
558
554
  }
559
555
 
560
556
  /** Windows operating system settings to apply to the virtual machine. */
@@ -666,12 +662,20 @@ export interface DiffDiskSettings {
666
662
  export interface ManagedDisk {
667
663
  /** The storage account type for use in creating data disks or OS disk. */
668
664
  storageAccountType?: StorageAccountType;
665
+ /** 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. */
666
+ securityProfile?: VMDiskSecurityProfile;
667
+ }
668
+
669
+ /** 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. */
670
+ export interface VMDiskSecurityProfile {
671
+ /** 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. */
672
+ securityEncryptionType?: SecurityEncryptionTypes;
669
673
  }
670
674
 
671
675
  /** Specifies the security profile settings for the virtual machine or virtual machine scale set. */
672
676
  export interface SecurityProfile {
673
677
  /** Specifies the SecurityType of the virtual machine. It has to be set to any specified value to enable UefiSettings. */
674
- securityType?: "trustedLaunch";
678
+ securityType?: SecurityTypes;
675
679
  /** 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. */
676
680
  encryptionAtHost?: boolean;
677
681
  /** Specifies the security settings like secure boot and vTPM used while creating the virtual machine. */
@@ -742,13 +746,13 @@ export interface AutoScaleRunError {
742
746
 
743
747
  /** The network configuration for a pool. */
744
748
  export interface NetworkConfiguration {
745
- /** 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 */
749
+ /** 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 */
746
750
  subnetId?: string;
747
751
  /** The scope of dynamic vnet assignment. */
748
752
  dynamicVnetAssignmentScope?: DynamicVNetAssignmentScope;
749
- /** Pool endpoint configuration is only supported on pools with the virtualMachineConfiguration property. */
753
+ /** The endpoint configuration for a pool. */
750
754
  endpointConfiguration?: PoolEndpointConfiguration;
751
- /** This property is only supported on Pools with the virtualMachineConfiguration property. */
755
+ /** The public IP Address configuration of the networking configuration of a Pool. */
752
756
  publicIPAddressConfiguration?: PublicIPAddressConfiguration;
753
757
  /** 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. */
754
758
  enableAcceleratedNetworking?: boolean;
@@ -828,7 +832,7 @@ export interface LinuxUserConfiguration {
828
832
 
829
833
  /** Properties used to create a user account on a Windows node. */
830
834
  export interface WindowsUserConfiguration {
831
- /** Specifies login mode for the user. The default value for VirtualMachineConfiguration pools is interactive mode and for CloudServiceConfiguration pools is batch mode. */
835
+ /** Specifies login mode for the user. The default value is Interactive. */
832
836
  loginMode?: LoginMode;
833
837
  }
834
838
 
@@ -910,15 +914,25 @@ export interface TaskContainerSettings {
910
914
  registry?: ContainerRegistry;
911
915
  /** A flag to indicate where the container task working directory is. The default is 'taskWorkingDirectory'. */
912
916
  workingDirectory?: ContainerWorkingDirectory;
917
+ /** 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. */
918
+ containerHostBatchBindMounts?: ContainerHostBatchBindMountEntry[];
919
+ }
920
+
921
+ /** The entry of path and mount mode you want to mount into task container. */
922
+ export interface ContainerHostBatchBindMountEntry {
923
+ /** The paths which will be mounted to container task's container. */
924
+ source?: ContainerHostDataPath;
925
+ /** 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. */
926
+ isReadOnly?: boolean;
913
927
  }
914
928
 
915
929
  /** Warning: This object is deprecated and will be removed after February, 2024. Please use the [Azure KeyVault Extension](https://learn.microsoft.com/azure/batch/batch-certificate-migration-guide) instead. */
916
930
  export interface CertificateReference {
917
931
  /** The fully qualified ID of the certificate to install on the pool. This must be inside the same batch account as the pool. */
918
932
  id: string;
919
- /** 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. */
933
+ /** 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. */
920
934
  storeLocation?: CertificateStoreLocation;
921
- /** 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. */
935
+ /** 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. */
922
936
  storeName?: string;
923
937
  /** Which user accounts on the compute node should have access to the private data of the certificate. */
924
938
  visibility?: CertificateVisibility[];
@@ -1032,7 +1046,7 @@ export interface UpgradePolicy {
1032
1046
  mode: UpgradeMode;
1033
1047
  /** The configuration parameters used for performing automatic OS upgrade. */
1034
1048
  automaticOSUpgradePolicy?: AutomaticOSUpgradePolicy;
1035
- /** This property is only supported on Pools with the virtualMachineConfiguration property. */
1049
+ /** The configuration parameters used while performing a rolling upgrade. */
1036
1050
  rollingUpgradePolicy?: RollingUpgradePolicy;
1037
1051
  }
1038
1052
 
@@ -1127,6 +1141,230 @@ export interface EndpointDetail {
1127
1141
  readonly port?: number;
1128
1142
  }
1129
1143
 
1144
+ /** Result of a list NSP (network security perimeter) configurations request. */
1145
+ export interface NetworkSecurityPerimeterConfigurationListResult {
1146
+ /** Array of network security perimeter results. */
1147
+ value?: NetworkSecurityPerimeterConfiguration[];
1148
+ /** The link used to get the next page of results. */
1149
+ nextLink?: string;
1150
+ }
1151
+
1152
+ /** Network security configuration properties. */
1153
+ export interface NetworkSecurityPerimeterConfigurationProperties {
1154
+ /**
1155
+ * Provisioning state of a network security perimeter configuration that is being created or updated.
1156
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1157
+ */
1158
+ readonly provisioningState?: NetworkSecurityPerimeterConfigurationProvisioningState;
1159
+ /**
1160
+ * List of provisioning issues, if any
1161
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1162
+ */
1163
+ readonly provisioningIssues?: ProvisioningIssue[];
1164
+ /** Information about a network security perimeter (NSP) */
1165
+ networkSecurityPerimeter?: NetworkSecurityPerimeter;
1166
+ /** Information about resource association */
1167
+ resourceAssociation?: ResourceAssociation;
1168
+ /** Network security perimeter configuration profile */
1169
+ profile?: NetworkSecurityProfile;
1170
+ }
1171
+
1172
+ /** Describes a provisioning issue for a network security perimeter configuration */
1173
+ export interface ProvisioningIssue {
1174
+ /**
1175
+ * Name of the issue
1176
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1177
+ */
1178
+ readonly name?: string;
1179
+ /**
1180
+ * 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
1181
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1182
+ */
1183
+ readonly properties?: ProvisioningIssueProperties;
1184
+ }
1185
+
1186
+ /** 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 */
1187
+ export interface ProvisioningIssueProperties {
1188
+ /**
1189
+ * Type of issue
1190
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1191
+ */
1192
+ readonly issueType?: IssueType;
1193
+ /**
1194
+ * Severity of the issue.
1195
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1196
+ */
1197
+ readonly severity?: Severity;
1198
+ /**
1199
+ * Description of the issue
1200
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1201
+ */
1202
+ readonly description?: string;
1203
+ /**
1204
+ * Fully qualified resource IDs of suggested resources that can be associated to the network security perimeter (NSP) to remediate the issue.
1205
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1206
+ */
1207
+ readonly suggestedResourceIds?: string[];
1208
+ /**
1209
+ * Access rules that can be added to the network security profile (NSP) to remediate the issue.
1210
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1211
+ */
1212
+ readonly suggestedAccessRules?: AccessRule[];
1213
+ }
1214
+
1215
+ /** Access rule in a network security perimeter configuration profile */
1216
+ export interface AccessRule {
1217
+ /** Name of the access rule */
1218
+ name?: string;
1219
+ /** Properties of Access Rule */
1220
+ properties?: AccessRuleProperties;
1221
+ }
1222
+
1223
+ /** Properties of Access Rule */
1224
+ export interface AccessRuleProperties {
1225
+ /** Direction of Access Rule */
1226
+ direction?: AccessRuleDirection;
1227
+ /** Address prefixes in the CIDR format for inbound rules */
1228
+ addressPrefixes?: string[];
1229
+ /** Subscriptions for inbound rules */
1230
+ subscriptions?: AccessRulePropertiesSubscriptionsItem[];
1231
+ /** Network security perimeters for inbound rules */
1232
+ networkSecurityPerimeters?: NetworkSecurityPerimeter[];
1233
+ /** Fully qualified domain names (FQDN) for outbound rules */
1234
+ fullyQualifiedDomainNames?: string[];
1235
+ /** Email addresses for outbound rules */
1236
+ emailAddresses?: string[];
1237
+ /** Phone numbers for outbound rules */
1238
+ phoneNumbers?: string[];
1239
+ }
1240
+
1241
+ /** Subscription identifiers */
1242
+ export interface AccessRulePropertiesSubscriptionsItem {
1243
+ /** The fully qualified Azure resource ID of the subscription e.g. ('/subscriptions/00000000-0000-0000-0000-000000000000') */
1244
+ id?: string;
1245
+ }
1246
+
1247
+ /** Information about a network security perimeter (NSP) */
1248
+ export interface NetworkSecurityPerimeter {
1249
+ /** Fully qualified Azure resource ID of the NSP resource */
1250
+ id?: string;
1251
+ /** Universal unique ID (UUID) of the network security perimeter */
1252
+ perimeterGuid?: string;
1253
+ /** Location of the network security perimeter */
1254
+ location?: string;
1255
+ }
1256
+
1257
+ /** Information about resource association */
1258
+ export interface ResourceAssociation {
1259
+ /** Name of the resource association */
1260
+ name?: string;
1261
+ /** Access mode of the resource association */
1262
+ accessMode?: ResourceAssociationAccessMode;
1263
+ }
1264
+
1265
+ /** Network security perimeter configuration profile */
1266
+ export interface NetworkSecurityProfile {
1267
+ /** Name of the profile */
1268
+ name?: string;
1269
+ /** Current access rules version */
1270
+ accessRulesVersion?: number;
1271
+ /** List of Access Rules */
1272
+ accessRules?: AccessRule[];
1273
+ /** Current diagnostic settings version */
1274
+ diagnosticSettingsVersion?: number;
1275
+ /** List of log categories that are enabled */
1276
+ enabledLogCategories?: string[];
1277
+ }
1278
+
1279
+ /** Common fields that are returned in the response for all Azure Resource Manager resources */
1280
+ export interface Resource {
1281
+ /**
1282
+ * Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
1283
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1284
+ */
1285
+ readonly id?: string;
1286
+ /**
1287
+ * The name of the resource
1288
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1289
+ */
1290
+ readonly name?: string;
1291
+ /**
1292
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
1293
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1294
+ */
1295
+ readonly type?: string;
1296
+ /**
1297
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
1298
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1299
+ */
1300
+ readonly systemData?: SystemData;
1301
+ }
1302
+
1303
+ /** Metadata pertaining to creation and last modification of the resource. */
1304
+ export interface SystemData {
1305
+ /** The identity that created the resource. */
1306
+ createdBy?: string;
1307
+ /** The type of identity that created the resource. */
1308
+ createdByType?: CreatedByType;
1309
+ /** The timestamp of resource creation (UTC). */
1310
+ createdAt?: Date;
1311
+ /** The identity that last modified the resource. */
1312
+ lastModifiedBy?: string;
1313
+ /** The type of identity that last modified the resource. */
1314
+ lastModifiedByType?: CreatedByType;
1315
+ /** The timestamp of resource last modification (UTC) */
1316
+ lastModifiedAt?: Date;
1317
+ }
1318
+
1319
+ /** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */
1320
+ export interface ErrorResponse {
1321
+ /** The error object. */
1322
+ error?: ErrorDetail;
1323
+ }
1324
+
1325
+ /** The error detail. */
1326
+ export interface ErrorDetail {
1327
+ /**
1328
+ * The error code.
1329
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1330
+ */
1331
+ readonly code?: string;
1332
+ /**
1333
+ * The error message.
1334
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1335
+ */
1336
+ readonly message?: string;
1337
+ /**
1338
+ * The error target.
1339
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1340
+ */
1341
+ readonly target?: string;
1342
+ /**
1343
+ * The error details.
1344
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1345
+ */
1346
+ readonly details?: ErrorDetail[];
1347
+ /**
1348
+ * The error additional info.
1349
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1350
+ */
1351
+ readonly additionalInfo?: ErrorAdditionalInfo[];
1352
+ }
1353
+
1354
+ /** The resource management error additional info. */
1355
+ export interface ErrorAdditionalInfo {
1356
+ /**
1357
+ * The additional info type.
1358
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1359
+ */
1360
+ readonly type?: string;
1361
+ /**
1362
+ * The additional info.
1363
+ * NOTE: This property will not be serialized. It can only be populated by the server.
1364
+ */
1365
+ readonly info?: Record<string, unknown>;
1366
+ }
1367
+
1130
1368
  /** Contains information about the auto-storage account associated with a Batch account. */
1131
1369
  export interface AutoStorageProperties extends AutoStorageBaseProperties {
1132
1370
  /** The UTC time at which storage keys were last synchronized with the Batch account. */
@@ -1134,7 +1372,7 @@ export interface AutoStorageProperties extends AutoStorageBaseProperties {
1134
1372
  }
1135
1373
 
1136
1374
  /** Contains information about a private link resource. */
1137
- export interface PrivateEndpointConnection extends ProxyResource {
1375
+ export interface PrivateEndpointConnection extends AzureProxyResource {
1138
1376
  /**
1139
1377
  * The provisioning state of the private endpoint connection.
1140
1378
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1155,7 +1393,7 @@ export interface PrivateEndpointConnection extends ProxyResource {
1155
1393
  }
1156
1394
 
1157
1395
  /** An application package which represents a particular version of an application. */
1158
- export interface ApplicationPackage extends ProxyResource {
1396
+ export interface ApplicationPackage extends AzureProxyResource {
1159
1397
  /**
1160
1398
  * The current state of the application package.
1161
1399
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1184,7 +1422,7 @@ export interface ApplicationPackage extends ProxyResource {
1184
1422
  }
1185
1423
 
1186
1424
  /** Contains information about an application in a Batch account. */
1187
- export interface Application extends ProxyResource {
1425
+ export interface Application extends AzureProxyResource {
1188
1426
  /** The display name for the application. */
1189
1427
  displayName?: string;
1190
1428
  /** A value indicating whether packages within the application may be overwritten using the same version string. */
@@ -1194,7 +1432,7 @@ export interface Application extends ProxyResource {
1194
1432
  }
1195
1433
 
1196
1434
  /** Contains information about a certificate. */
1197
- export interface Certificate extends ProxyResource {
1435
+ export interface Certificate extends AzureProxyResource {
1198
1436
  /** This must match the first portion of the certificate name. Currently required to be 'SHA1'. */
1199
1437
  thumbprintAlgorithm?: string;
1200
1438
  /** This must match the thumbprint from the name. */
@@ -1231,7 +1469,8 @@ export interface Certificate extends ProxyResource {
1231
1469
  }
1232
1470
 
1233
1471
  /** Contains information about a certificate. */
1234
- export interface CertificateCreateOrUpdateParameters extends ProxyResource {
1472
+ export interface CertificateCreateOrUpdateParameters
1473
+ extends AzureProxyResource {
1235
1474
  /** This must match the first portion of the certificate name. Currently required to be 'SHA1'. */
1236
1475
  thumbprintAlgorithm?: string;
1237
1476
  /** This must match the thumbprint from the name. */
@@ -1245,13 +1484,13 @@ export interface CertificateCreateOrUpdateParameters extends ProxyResource {
1245
1484
  }
1246
1485
 
1247
1486
  /** Contains the information for a detector. */
1248
- export interface DetectorResponse extends ProxyResource {
1487
+ export interface DetectorResponse extends AzureProxyResource {
1249
1488
  /** A base64 encoded string that represents the content of a detector. */
1250
1489
  value?: string;
1251
1490
  }
1252
1491
 
1253
1492
  /** Contains information about a private link resource. */
1254
- export interface PrivateLinkResource extends ProxyResource {
1493
+ export interface PrivateLinkResource extends AzureProxyResource {
1255
1494
  /**
1256
1495
  * The group id is used to establish the private link connection.
1257
1496
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1270,7 +1509,7 @@ export interface PrivateLinkResource extends ProxyResource {
1270
1509
  }
1271
1510
 
1272
1511
  /** Contains information about a pool. */
1273
- export interface Pool extends ProxyResource {
1512
+ export interface Pool extends AzureProxyResource {
1274
1513
  /** The type of identity used for the Batch Pool. */
1275
1514
  identity?: BatchPoolIdentity;
1276
1515
  /** The display name need not be unique and can contain any Unicode characters up to a maximum length of 1024. */
@@ -1305,9 +1544,9 @@ export interface Pool extends ProxyResource {
1305
1544
  * NOTE: This property will not be serialized. It can only be populated by the server.
1306
1545
  */
1307
1546
  readonly allocationStateTransitionTime?: Date;
1308
- /** 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). */
1547
+ /** 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). */
1309
1548
  vmSize?: string;
1310
- /** Using CloudServiceConfiguration specifies that the nodes should be creating using Azure Cloud Services (PaaS), while VirtualMachineConfiguration uses Azure Virtual Machines (IaaS). */
1549
+ /** Deployment configuration properties. */
1311
1550
  deploymentConfiguration?: DeploymentConfiguration;
1312
1551
  /**
1313
1552
  * The number of dedicated compute nodes currently in the pool.
@@ -1371,7 +1610,7 @@ export interface Pool extends ProxyResource {
1371
1610
  }
1372
1611
 
1373
1612
  /** Contains information about an Azure Batch account. */
1374
- export interface BatchAccount extends Resource {
1613
+ export interface BatchAccount extends AzureResource {
1375
1614
  /** The identity of the Batch account. */
1376
1615
  identity?: BatchAccountIdentity;
1377
1616
  /**
@@ -1495,6 +1734,15 @@ export interface CertificateCreateOrUpdateProperties
1495
1734
  password?: string;
1496
1735
  }
1497
1736
 
1737
+ /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
1738
+ export interface ProxyResource extends Resource {}
1739
+
1740
+ /** Network security perimeter (NSP) configuration resource */
1741
+ export interface NetworkSecurityPerimeterConfiguration extends ProxyResource {
1742
+ /** Network security configuration properties. */
1743
+ properties?: NetworkSecurityPerimeterConfigurationProperties;
1744
+ }
1745
+
1498
1746
  /** Defines headers for BatchAccount_create operation. */
1499
1747
  export interface BatchAccountCreateHeaders {
1500
1748
  /** The URL of the resource used to check the status of the asynchronous operation. */
@@ -1597,6 +1845,14 @@ export interface PoolStopResizeHeaders {
1597
1845
  eTag?: string;
1598
1846
  }
1599
1847
 
1848
+ /** Defines headers for NetworkSecurityPerimeter_reconcileConfiguration operation. */
1849
+ export interface NetworkSecurityPerimeterReconcileConfigurationHeaders {
1850
+ /** The URL of the resource used to check the status of the asynchronous operation. */
1851
+ location?: string;
1852
+ /** Suggested delay to check the status of the asynchronous operation. The value is an integer that specifies the delay in seconds. */
1853
+ retryAfter?: number;
1854
+ }
1855
+
1600
1856
  /** Known values of {@link ContainerType} that the service accepts. */
1601
1857
  export enum KnownContainerType {
1602
1858
  /** A Docker compatible container technology will be used to launch the containers. */
@@ -1614,6 +1870,192 @@ export enum KnownContainerType {
1614
1870
  * **CriCompatible**: A CRI based technology will be used to launch the containers.
1615
1871
  */
1616
1872
  export type ContainerType = string;
1873
+
1874
+ /** Known values of {@link SecurityEncryptionTypes} that the service accepts. */
1875
+ export enum KnownSecurityEncryptionTypes {
1876
+ /** NonPersistedTPM */
1877
+ NonPersistedTPM = "NonPersistedTPM",
1878
+ /** VMGuestStateOnly */
1879
+ VMGuestStateOnly = "VMGuestStateOnly",
1880
+ }
1881
+
1882
+ /**
1883
+ * Defines values for SecurityEncryptionTypes. \
1884
+ * {@link KnownSecurityEncryptionTypes} can be used interchangeably with SecurityEncryptionTypes,
1885
+ * this enum contains the known values that the service supports.
1886
+ * ### Known values supported by the service
1887
+ * **NonPersistedTPM** \
1888
+ * **VMGuestStateOnly**
1889
+ */
1890
+ export type SecurityEncryptionTypes = string;
1891
+
1892
+ /** Known values of {@link ContainerHostDataPath} that the service accepts. */
1893
+ export enum KnownContainerHostDataPath {
1894
+ /** The path for multi-instances task to shared their files. */
1895
+ Shared = "Shared",
1896
+ /** The path for start task. */
1897
+ Startup = "Startup",
1898
+ /** The path contains all virtual file systems are mounted on this node. */
1899
+ VfsMounts = "VfsMounts",
1900
+ /** The task path. */
1901
+ Task = "Task",
1902
+ /** The job-prep task path. */
1903
+ JobPrep = "JobPrep",
1904
+ /** The applications path. */
1905
+ Applications = "Applications",
1906
+ }
1907
+
1908
+ /**
1909
+ * Defines values for ContainerHostDataPath. \
1910
+ * {@link KnownContainerHostDataPath} can be used interchangeably with ContainerHostDataPath,
1911
+ * this enum contains the known values that the service supports.
1912
+ * ### Known values supported by the service
1913
+ * **Shared**: The path for multi-instances task to shared their files. \
1914
+ * **Startup**: The path for start task. \
1915
+ * **VfsMounts**: The path contains all virtual file systems are mounted on this node. \
1916
+ * **Task**: The task path. \
1917
+ * **JobPrep**: The job-prep task path. \
1918
+ * **Applications**: The applications path.
1919
+ */
1920
+ export type ContainerHostDataPath = string;
1921
+
1922
+ /** Known values of {@link NetworkSecurityPerimeterConfigurationProvisioningState} that the service accepts. */
1923
+ export enum KnownNetworkSecurityPerimeterConfigurationProvisioningState {
1924
+ /** Succeeded */
1925
+ Succeeded = "Succeeded",
1926
+ /** Creating */
1927
+ Creating = "Creating",
1928
+ /** Updating */
1929
+ Updating = "Updating",
1930
+ /** Deleting */
1931
+ Deleting = "Deleting",
1932
+ /** Accepted */
1933
+ Accepted = "Accepted",
1934
+ /** Failed */
1935
+ Failed = "Failed",
1936
+ /** Canceled */
1937
+ Canceled = "Canceled",
1938
+ }
1939
+
1940
+ /**
1941
+ * Defines values for NetworkSecurityPerimeterConfigurationProvisioningState. \
1942
+ * {@link KnownNetworkSecurityPerimeterConfigurationProvisioningState} can be used interchangeably with NetworkSecurityPerimeterConfigurationProvisioningState,
1943
+ * this enum contains the known values that the service supports.
1944
+ * ### Known values supported by the service
1945
+ * **Succeeded** \
1946
+ * **Creating** \
1947
+ * **Updating** \
1948
+ * **Deleting** \
1949
+ * **Accepted** \
1950
+ * **Failed** \
1951
+ * **Canceled**
1952
+ */
1953
+ export type NetworkSecurityPerimeterConfigurationProvisioningState = string;
1954
+
1955
+ /** Known values of {@link IssueType} that the service accepts. */
1956
+ export enum KnownIssueType {
1957
+ /** Unknown issue type */
1958
+ Unknown = "Unknown",
1959
+ /** An error occurred while applying the network security perimeter (NSP) configuration. */
1960
+ ConfigurationPropagationFailure = "ConfigurationPropagationFailure",
1961
+ /** 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. */
1962
+ MissingPerimeterConfiguration = "MissingPerimeterConfiguration",
1963
+ /** 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. */
1964
+ MissingIdentityConfiguration = "MissingIdentityConfiguration",
1965
+ }
1966
+
1967
+ /**
1968
+ * Defines values for IssueType. \
1969
+ * {@link KnownIssueType} can be used interchangeably with IssueType,
1970
+ * this enum contains the known values that the service supports.
1971
+ * ### Known values supported by the service
1972
+ * **Unknown**: Unknown issue type \
1973
+ * **ConfigurationPropagationFailure**: An error occurred while applying the network security perimeter (NSP) configuration. \
1974
+ * **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. \
1975
+ * **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.
1976
+ */
1977
+ export type IssueType = string;
1978
+
1979
+ /** Known values of {@link Severity} that the service accepts. */
1980
+ export enum KnownSeverity {
1981
+ /** Warning */
1982
+ Warning = "Warning",
1983
+ /** Error */
1984
+ Error = "Error",
1985
+ }
1986
+
1987
+ /**
1988
+ * Defines values for Severity. \
1989
+ * {@link KnownSeverity} can be used interchangeably with Severity,
1990
+ * this enum contains the known values that the service supports.
1991
+ * ### Known values supported by the service
1992
+ * **Warning** \
1993
+ * **Error**
1994
+ */
1995
+ export type Severity = string;
1996
+
1997
+ /** Known values of {@link AccessRuleDirection} that the service accepts. */
1998
+ export enum KnownAccessRuleDirection {
1999
+ /** Applies to inbound network traffic to the secured resources. */
2000
+ Inbound = "Inbound",
2001
+ /** Applies to outbound network traffic from the secured resources */
2002
+ Outbound = "Outbound",
2003
+ }
2004
+
2005
+ /**
2006
+ * Defines values for AccessRuleDirection. \
2007
+ * {@link KnownAccessRuleDirection} can be used interchangeably with AccessRuleDirection,
2008
+ * this enum contains the known values that the service supports.
2009
+ * ### Known values supported by the service
2010
+ * **Inbound**: Applies to inbound network traffic to the secured resources. \
2011
+ * **Outbound**: Applies to outbound network traffic from the secured resources
2012
+ */
2013
+ export type AccessRuleDirection = string;
2014
+
2015
+ /** Known values of {@link ResourceAssociationAccessMode} that the service accepts. */
2016
+ export enum KnownResourceAssociationAccessMode {
2017
+ /** Enforced access mode - traffic to the resource that failed access checks is blocked */
2018
+ Enforced = "Enforced",
2019
+ /** Learning access mode - traffic to the resource is enabled for analysis but not blocked */
2020
+ Learning = "Learning",
2021
+ /** Audit access mode - traffic to the resource that fails access checks is logged but not blocked */
2022
+ Audit = "Audit",
2023
+ }
2024
+
2025
+ /**
2026
+ * Defines values for ResourceAssociationAccessMode. \
2027
+ * {@link KnownResourceAssociationAccessMode} can be used interchangeably with ResourceAssociationAccessMode,
2028
+ * this enum contains the known values that the service supports.
2029
+ * ### Known values supported by the service
2030
+ * **Enforced**: Enforced access mode - traffic to the resource that failed access checks is blocked \
2031
+ * **Learning**: Learning access mode - traffic to the resource is enabled for analysis but not blocked \
2032
+ * **Audit**: Audit access mode - traffic to the resource that fails access checks is logged but not blocked
2033
+ */
2034
+ export type ResourceAssociationAccessMode = string;
2035
+
2036
+ /** Known values of {@link CreatedByType} that the service accepts. */
2037
+ export enum KnownCreatedByType {
2038
+ /** User */
2039
+ User = "User",
2040
+ /** Application */
2041
+ Application = "Application",
2042
+ /** ManagedIdentity */
2043
+ ManagedIdentity = "ManagedIdentity",
2044
+ /** Key */
2045
+ Key = "Key",
2046
+ }
2047
+
2048
+ /**
2049
+ * Defines values for CreatedByType. \
2050
+ * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,
2051
+ * this enum contains the known values that the service supports.
2052
+ * ### Known values supported by the service
2053
+ * **User** \
2054
+ * **Application** \
2055
+ * **ManagedIdentity** \
2056
+ * **Key**
2057
+ */
2058
+ export type CreatedByType = string;
1617
2059
  /** Defines values for AutoStorageAuthenticationMode. */
1618
2060
  export type AutoStorageAuthenticationMode =
1619
2061
  | "StorageKeys"
@@ -1621,7 +2063,10 @@ export type AutoStorageAuthenticationMode =
1621
2063
  /** Defines values for PoolAllocationMode. */
1622
2064
  export type PoolAllocationMode = "BatchService" | "UserSubscription";
1623
2065
  /** Defines values for PublicNetworkAccessType. */
1624
- export type PublicNetworkAccessType = "Enabled" | "Disabled";
2066
+ export type PublicNetworkAccessType =
2067
+ | "Enabled"
2068
+ | "Disabled"
2069
+ | "SecuredByPerimeter";
1625
2070
  /** Defines values for EndpointAccessDefaultAction. */
1626
2071
  export type EndpointAccessDefaultAction = "Allow" | "Deny";
1627
2072
  /** Defines values for KeySource. */
@@ -1680,6 +2125,8 @@ export type StorageAccountType =
1680
2125
  export type DiskEncryptionTarget = "OsDisk" | "TemporaryDisk";
1681
2126
  /** Defines values for NodePlacementPolicyType. */
1682
2127
  export type NodePlacementPolicyType = "Regional" | "Zonal";
2128
+ /** Defines values for SecurityTypes. */
2129
+ export type SecurityTypes = "trustedLaunch" | "confidentialVM";
1683
2130
  /** Defines values for ComputeNodeDeallocationOption. */
1684
2131
  export type ComputeNodeDeallocationOption =
1685
2132
  | "Requeue"
@@ -1951,18 +2398,6 @@ export interface LocationListSupportedVirtualMachineSkusOptionalParams
1951
2398
  export type LocationListSupportedVirtualMachineSkusResponse =
1952
2399
  SupportedSkusResult;
1953
2400
 
1954
- /** Optional parameters. */
1955
- export interface LocationListSupportedCloudServiceSkusOptionalParams
1956
- extends coreClient.OperationOptions {
1957
- /** The maximum number of items to return in the response. */
1958
- maxresults?: number;
1959
- /** OData filter expression. Valid properties for filtering are "familyName". */
1960
- filter?: string;
1961
- }
1962
-
1963
- /** Contains response data for the listSupportedCloudServiceSkus operation. */
1964
- export type LocationListSupportedCloudServiceSkusResponse = SupportedSkusResult;
1965
-
1966
2401
  /** Optional parameters. */
1967
2402
  export interface LocationCheckNameAvailabilityOptionalParams
1968
2403
  extends coreClient.OperationOptions {}
@@ -1978,14 +2413,6 @@ export interface LocationListSupportedVirtualMachineSkusNextOptionalParams
1978
2413
  export type LocationListSupportedVirtualMachineSkusNextResponse =
1979
2414
  SupportedSkusResult;
1980
2415
 
1981
- /** Optional parameters. */
1982
- export interface LocationListSupportedCloudServiceSkusNextOptionalParams
1983
- extends coreClient.OperationOptions {}
1984
-
1985
- /** Contains response data for the listSupportedCloudServiceSkusNext operation. */
1986
- export type LocationListSupportedCloudServiceSkusNextResponse =
1987
- SupportedSkusResult;
1988
-
1989
2416
  /** Optional parameters. */
1990
2417
  export interface OperationsListOptionalParams
1991
2418
  extends coreClient.OperationOptions {}
@@ -2229,6 +2656,43 @@ export interface PoolListByBatchAccountNextOptionalParams
2229
2656
  /** Contains response data for the listByBatchAccountNext operation. */
2230
2657
  export type PoolListByBatchAccountNextResponse = ListPoolsResult;
2231
2658
 
2659
+ /** Optional parameters. */
2660
+ export interface NetworkSecurityPerimeterListConfigurationsOptionalParams
2661
+ extends coreClient.OperationOptions {}
2662
+
2663
+ /** Contains response data for the listConfigurations operation. */
2664
+ export type NetworkSecurityPerimeterListConfigurationsResponse =
2665
+ NetworkSecurityPerimeterConfigurationListResult;
2666
+
2667
+ /** Optional parameters. */
2668
+ export interface NetworkSecurityPerimeterGetConfigurationOptionalParams
2669
+ extends coreClient.OperationOptions {}
2670
+
2671
+ /** Contains response data for the getConfiguration operation. */
2672
+ export type NetworkSecurityPerimeterGetConfigurationResponse =
2673
+ NetworkSecurityPerimeterConfiguration;
2674
+
2675
+ /** Optional parameters. */
2676
+ export interface NetworkSecurityPerimeterReconcileConfigurationOptionalParams
2677
+ extends coreClient.OperationOptions {
2678
+ /** Delay to wait until next poll, in milliseconds. */
2679
+ updateIntervalInMs?: number;
2680
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
2681
+ resumeFrom?: string;
2682
+ }
2683
+
2684
+ /** Contains response data for the reconcileConfiguration operation. */
2685
+ export type NetworkSecurityPerimeterReconcileConfigurationResponse =
2686
+ NetworkSecurityPerimeterReconcileConfigurationHeaders;
2687
+
2688
+ /** Optional parameters. */
2689
+ export interface NetworkSecurityPerimeterListConfigurationsNextOptionalParams
2690
+ extends coreClient.OperationOptions {}
2691
+
2692
+ /** Contains response data for the listConfigurationsNext operation. */
2693
+ export type NetworkSecurityPerimeterListConfigurationsNextResponse =
2694
+ NetworkSecurityPerimeterConfigurationListResult;
2695
+
2232
2696
  /** Optional parameters. */
2233
2697
  export interface BatchManagementClientOptionalParams
2234
2698
  extends coreClient.ServiceClientOptions {