From 974e40bbc4b890a9d999d2d41debf47b82ebde9f Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Tue, 17 May 2022 09:48:28 +0000 Subject: [PATCH] CodeGen from PR 19101 in Azure/azure-rest-api-specs Merge ddf0da02da335cda3ce9c17e8f55798f1526e347 into 271c819e255b6e437fd84a429c0d7b480052e6ab --- sdk/network/arm-network/CHANGELOG.md | 88 ++- sdk/network/arm-network/_meta.json | 12 +- sdk/network/arm-network/package.json | 22 +- .../arm-network/review/arm-network.api.md | 362 ++++++++-- sdk/network/arm-network/src/models/index.ts | 511 +++++++++++-- sdk/network/arm-network/src/models/mappers.ts | 683 +++++++++++++++++- .../arm-network/src/models/parameters.ts | 37 +- .../src/networkManagementClient.ts | 48 +- .../operations/configurationPolicyGroups.ts | 504 +++++++++++++ .../expressRoutePortAuthorizations.ts | 491 +++++++++++++ .../src/operations/firewallPolicies.ts | 46 ++ .../firewallPolicyIdpsSignatures.ts | 1 + ...irewallPolicyIdpsSignaturesFilterValues.ts | 1 + .../firewallPolicyIdpsSignaturesOverrides.ts | 4 + .../arm-network/src/operations/index.ts | 2 + .../src/operations/networkInterfaces.ts | 16 +- .../src/operations/publicIPAddresses.ts | 10 +- .../configurationPolicyGroups.ts | 111 +++ .../expressRoutePortAuthorizations.ts | 111 +++ .../operationsInterfaces/firewallPolicies.ts | 18 +- .../src/operationsInterfaces/index.ts | 2 + sdk/network/arm-network/test/sampleTest.ts | 43 ++ sdk/network/arm-network/tsconfig.json | 10 +- 23 files changed, 2906 insertions(+), 227 deletions(-) create mode 100644 sdk/network/arm-network/src/operations/configurationPolicyGroups.ts create mode 100644 sdk/network/arm-network/src/operations/expressRoutePortAuthorizations.ts create mode 100644 sdk/network/arm-network/src/operationsInterfaces/configurationPolicyGroups.ts create mode 100644 sdk/network/arm-network/src/operationsInterfaces/expressRoutePortAuthorizations.ts create mode 100644 sdk/network/arm-network/test/sampleTest.ts diff --git a/sdk/network/arm-network/CHANGELOG.md b/sdk/network/arm-network/CHANGELOG.md index 5d4b23e852ac..c3c6d5047cb9 100644 --- a/sdk/network/arm-network/CHANGELOG.md +++ b/sdk/network/arm-network/CHANGELOG.md @@ -1,15 +1,87 @@ # Release History + +## 28.0.0 (2022-05-17) + +**Features** -## 27.0.1 (Unreleased) - -### Features Added - -### Breaking Changes - -### Bugs Fixed + - Added operation group ConfigurationPolicyGroups + - Added operation group ExpressRoutePortAuthorizations + - Added operation FirewallPolicies.updateTags + - Added Interface ConfigurationPolicyGroupsCreateOrUpdateOptionalParams + - Added Interface ConfigurationPolicyGroupsDeleteOptionalParams + - Added Interface ConfigurationPolicyGroupsGetOptionalParams + - Added Interface ConfigurationPolicyGroupsListByVpnServerConfigurationNextOptionalParams + - Added Interface ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams + - Added Interface ExpressRoutePortAuthorizationListResult + - Added Interface ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams + - Added Interface ExpressRoutePortAuthorizationsDeleteOptionalParams + - Added Interface ExpressRoutePortAuthorizationsGetOptionalParams + - Added Interface ExpressRoutePortAuthorizationsListNextOptionalParams + - Added Interface ExpressRoutePortAuthorizationsListOptionalParams + - Added Interface FirewallPoliciesUpdateTagsOptionalParams + - Added Interface GatewayCustomBgpIpAddressIpConfiguration + - Added Interface ListVpnServerConfigurationPolicyGroupsResult + - Added Interface VpnServerConfigurationPolicyGroupMember + - Added Type Alias ApplicationGatewayBackendSettings + - Added Type Alias ApplicationGatewayListener + - Added Type Alias ApplicationGatewayRoutingRule + - Added Type Alias ConfigurationPolicyGroupsCreateOrUpdateResponse + - Added Type Alias ConfigurationPolicyGroupsGetResponse + - Added Type Alias ConfigurationPolicyGroupsListByVpnServerConfigurationNextResponse + - Added Type Alias ConfigurationPolicyGroupsListByVpnServerConfigurationResponse + - Added Type Alias ExpressRoutePortAuthorization + - Added Type Alias ExpressRoutePortAuthorizationsCreateOrUpdateResponse + - Added Type Alias ExpressRoutePortAuthorizationsGetResponse + - Added Type Alias ExpressRoutePortAuthorizationsListNextResponse + - Added Type Alias ExpressRoutePortAuthorizationsListResponse + - Added Type Alias ExpressRoutePortAuthorizationUseStatus + - Added Type Alias FirewallPoliciesUpdateTagsResponse + - Added Type Alias FirewallPolicyIdpsQuerySortOrder + - Added Type Alias FirewallPolicyIdpsSignatureDirection + - Added Type Alias FirewallPolicyIdpsSignatureMode + - Added Type Alias FirewallPolicyIdpsSignatureSeverity + - Added Type Alias HubRoutingPreference + - Added Type Alias LoadBalancerBackendAddressAdminState + - Added Type Alias NetworkInterfaceAuxiliaryMode + - Added Type Alias VpnPolicyMemberAttributeType + - Added Type Alias VpnServerConfigurationPolicyGroup + - Interface FirewallPolicyIntrusionDetectionConfiguration has a new optional parameter privateRanges + - Interface LoadBalancerBackendAddress has a new optional parameter adminState + - Interface NetworkManagementClientOptionalParams has a new optional parameter apiVersion + - Class NetworkManagementClient has a new parameter apiVersion + - Class NetworkManagementClient has a new parameter configurationPolicyGroups + - Class NetworkManagementClient has a new parameter expressRoutePortAuthorizations + - Type Alias ApplicationGateway has a new parameter backendSettingsCollection + - Type Alias ApplicationGateway has a new parameter listeners + - Type Alias ApplicationGateway has a new parameter routingRules + - Type Alias ApplicationGatewayProbe has a new parameter pickHostNameFromBackendSettings + - Type Alias BackendAddressPool has a new parameter drainPeriodInSeconds + - Type Alias ExpressRouteCircuit has a new parameter authorizationKey + - Type Alias NetworkInterface has a new parameter auxiliaryMode + - Type Alias P2SConnectionConfiguration has a new parameter configurationPolicyGroupAssociations + - Type Alias P2SConnectionConfiguration has a new parameter previousConfigurationPolicyGroupAssociations + - Type Alias VirtualHub has a new parameter hubRoutingPreference + - Type Alias VirtualNetworkGatewayConnection has a new parameter gatewayCustomBgpIpAddresses + - Type Alias VirtualNetworkGatewayConnectionListEntity has a new parameter gatewayCustomBgpIpAddresses + - Type Alias VpnServerConfiguration has a new parameter configurationPolicyGroups + - Type Alias VpnSiteLinkConnection has a new parameter vpnGatewayCustomBgpAddresses + - Added Enum KnownExpressRoutePortAuthorizationUseStatus + - Added Enum KnownFirewallPolicyIdpsQuerySortOrder + - Added Enum KnownHubRoutingPreference + - Added Enum KnownLoadBalancerBackendAddressAdminState + - Added Enum KnownNetworkInterfaceAuxiliaryMode + - Added Enum KnownVpnPolicyMemberAttributeType + - Enum KnownApplicationGatewayProtocol has a new value Tcp + - Enum KnownApplicationGatewayProtocol has a new value Tls -### Other Changes +**Breaking Changes** + - Removed Enum KnownOrderByOrder + - Removed Enum KnownSingleQueryResultDirection + - Removed Enum KnownSingleQueryResultMode + - Removed Enum KnownSingleQueryResultSeverity + + ## 27.0.0 (2022-04-27) **Features** diff --git a/sdk/network/arm-network/_meta.json b/sdk/network/arm-network/_meta.json index bd362f3d5ef7..1e8d6b2fb4ec 100644 --- a/sdk/network/arm-network/_meta.json +++ b/sdk/network/arm-network/_meta.json @@ -1,8 +1,8 @@ { - "commit": "f9a6cb686bcc0f1b23761db19f2491c5c4df95cb", - "readme": "specification\\network\\resource-manager\\readme.md", - "autorest_command": "autorest --version=3.7.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\work\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\network\\resource-manager\\readme.md --use=@autorest/typescript@6.0.0-alpha.19.20220408.1 --generate-sample=true", + "commit": "7dfdf812eafdbc84cc1ad934d0794ad757d683f9", + "readme": "specification/network/resource-manager/readme.md", + "autorest_command": "autorest --version=3.7.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/network/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.19.20220425.1", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "release_tool": "@azure-tools/js-sdk-release-tools@2.2.6", - "use": "@autorest/typescript@6.0.0-alpha.19.20220408.1" -} + "release_tool": "@azure-tools/js-sdk-release-tools@2.3.0", + "use": "@autorest/typescript@6.0.0-alpha.19.20220425.1" +} \ No newline at end of file diff --git a/sdk/network/arm-network/package.json b/sdk/network/arm-network/package.json index 62b2f57b3004..6ff6f7ba26cf 100644 --- a/sdk/network/arm-network/package.json +++ b/sdk/network/arm-network/package.json @@ -3,7 +3,7 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for NetworkManagementClient.", - "version": "27.0.1", + "version": "28.0.0", "engines": { "node": ">=12.0.0" }, @@ -40,9 +40,11 @@ "uglify-js": "^3.4.9", "rimraf": "^3.0.0", "@azure/identity": "^2.0.1", - "@azure-tools/test-recorder": "^1.0.0", + "@azure-tools/test-recorder": "^2.0.0", + "@azure-tools/test-credential": "^1.0.0", "mocha": "^7.1.1", - "cross-env": "^7.0.2" + "cross-env": "^7.0.2", + "@azure/dev-tool": "^1.0.0" }, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/network/arm-network", "repository": { @@ -93,7 +95,7 @@ "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", "unit-test:browser": "echo skipped", "integration-test": "npm run integration-test:node && npm run integration-test:browser", - "integration-test:node": "mocha -r esm --require ts-node/register --timeout 1200000 --full-trace test/*.ts --reporter ../../../common/tools/mocha-multi-reporter.js", + "integration-test:node": "dev-tool run test:node-ts-input -- --timeout 1200000 'test/*.ts'", "integration-test:browser": "echo skipped", "docs": "echo skipped" }, @@ -106,13 +108,5 @@ } ] }, - "autoPublish": true, - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-network?view=azure-node-preview" - } -} + "autoPublish": true +} \ No newline at end of file diff --git a/sdk/network/arm-network/review/arm-network.api.md b/sdk/network/arm-network/review/arm-network.api.md index 71e06aa743b0..be02212d83a4 100644 --- a/sdk/network/arm-network/review/arm-network.api.md +++ b/sdk/network/arm-network/review/arm-network.api.md @@ -43,10 +43,13 @@ export type ApplicationGateway = Resource & { probes?: ApplicationGatewayProbe[]; backendAddressPools?: ApplicationGatewayBackendAddressPool[]; backendHttpSettingsCollection?: ApplicationGatewayBackendHttpSettings[]; + backendSettingsCollection?: ApplicationGatewayBackendSettings[]; httpListeners?: ApplicationGatewayHttpListener[]; + listeners?: ApplicationGatewayListener[]; sslProfiles?: ApplicationGatewaySslProfile[]; urlPathMaps?: ApplicationGatewayUrlPathMap[]; requestRoutingRules?: ApplicationGatewayRequestRoutingRule[]; + routingRules?: ApplicationGatewayRoutingRule[]; rewriteRuleSets?: ApplicationGatewayRewriteRuleSet[]; redirectConfigurations?: ApplicationGatewayRedirectConfiguration[]; webApplicationFirewallConfiguration?: ApplicationGatewayWebApplicationFirewallConfiguration; @@ -169,6 +172,21 @@ export type ApplicationGatewayBackendHttpSettings = SubResource & { readonly provisioningState?: ProvisioningState; }; +// @public +export type ApplicationGatewayBackendSettings = SubResource & { + name?: string; + readonly etag?: string; + readonly type?: string; + port?: number; + protocol?: ApplicationGatewayProtocol; + timeout?: number; + probe?: SubResource; + trustedRootCertificates?: SubResource[]; + hostName?: string; + pickHostNameFromBackendAddress?: boolean; + readonly provisioningState?: ProvisioningState; +}; + // @public export interface ApplicationGatewayClientAuthConfiguration { verifyClientCertIssuerDN?: boolean; @@ -290,6 +308,19 @@ export type ApplicationGatewayIPConfiguration = SubResource & { readonly provisioningState?: ProvisioningState; }; +// @public +export type ApplicationGatewayListener = SubResource & { + name?: string; + readonly etag?: string; + readonly type?: string; + frontendIPConfiguration?: SubResource; + frontendPort?: SubResource; + protocol?: ApplicationGatewayProtocol; + sslCertificate?: SubResource; + sslProfile?: SubResource; + readonly provisioningState?: ProvisioningState; +}; + // @public export interface ApplicationGatewayListResult { nextLink?: string; @@ -479,6 +510,7 @@ export type ApplicationGatewayProbe = SubResource & { timeout?: number; unhealthyThreshold?: number; pickHostNameFromBackendHttpSettings?: boolean; + pickHostNameFromBackendSettings?: boolean; minServers?: number; match?: ApplicationGatewayProbeHealthResponseMatch; readonly provisioningState?: ProvisioningState; @@ -563,6 +595,18 @@ export type ApplicationGatewayRewriteRuleSet = SubResource & { readonly provisioningState?: ProvisioningState; }; +// @public +export type ApplicationGatewayRoutingRule = SubResource & { + name?: string; + readonly etag?: string; + readonly type?: string; + ruleType?: ApplicationGatewayRequestRoutingRuleType; + backendAddressPool?: SubResource; + backendSettings?: SubResource; + listener?: SubResource; + readonly provisioningState?: ProvisioningState; +}; + // @public export interface ApplicationGateways { beginBackendHealth(resourceGroupName: string, applicationGatewayName: string, options?: ApplicationGatewaysBackendHealthOptionalParams): Promise, ApplicationGatewaysBackendHealthResponse>>; @@ -1532,6 +1576,7 @@ export type BackendAddressPool = SubResource & { readonly outboundRules?: SubResource[]; readonly inboundNatRules?: SubResource[]; readonly provisioningState?: ProvisioningState; + drainPeriodInSeconds?: number; }; // @public @@ -1822,6 +1867,52 @@ export interface Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserass readonly principalId?: string; } +// @public +export interface ConfigurationPolicyGroups { + beginCreateOrUpdate(resourceGroupName: string, vpnServerConfigurationName: string, configurationPolicyGroupName: string, vpnServerConfigurationPolicyGroupParameters: VpnServerConfigurationPolicyGroup, options?: ConfigurationPolicyGroupsCreateOrUpdateOptionalParams): Promise, ConfigurationPolicyGroupsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, vpnServerConfigurationName: string, configurationPolicyGroupName: string, vpnServerConfigurationPolicyGroupParameters: VpnServerConfigurationPolicyGroup, options?: ConfigurationPolicyGroupsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, vpnServerConfigurationName: string, configurationPolicyGroupName: string, options?: ConfigurationPolicyGroupsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, vpnServerConfigurationName: string, configurationPolicyGroupName: string, options?: ConfigurationPolicyGroupsDeleteOptionalParams): Promise; + get(resourceGroupName: string, vpnServerConfigurationName: string, configurationPolicyGroupName: string, options?: ConfigurationPolicyGroupsGetOptionalParams): Promise; + listByVpnServerConfiguration(resourceGroupName: string, vpnServerConfigurationName: string, options?: ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface ConfigurationPolicyGroupsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ConfigurationPolicyGroupsCreateOrUpdateResponse = VpnServerConfigurationPolicyGroup; + +// @public +export interface ConfigurationPolicyGroupsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ConfigurationPolicyGroupsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ConfigurationPolicyGroupsGetResponse = VpnServerConfigurationPolicyGroup; + +// @public +export interface ConfigurationPolicyGroupsListByVpnServerConfigurationNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ConfigurationPolicyGroupsListByVpnServerConfigurationNextResponse = ListVpnServerConfigurationPolicyGroupsResult; + +// @public +export interface ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ConfigurationPolicyGroupsListByVpnServerConfigurationResponse = ListVpnServerConfigurationPolicyGroupsResult; + // @public export interface ConnectionMonitor { autoStart?: boolean; @@ -2814,6 +2905,7 @@ export type ExpressRouteCircuit = Resource & { readonly provisioningState?: ProvisioningState; gatewayManagerEtag?: string; globalReachEnabled?: boolean; + authorizationKey?: string; }; // @public @@ -3506,7 +3598,7 @@ export type ExpressRouteCrossConnectionsUpdateTagsResponse = ExpressRouteCrossCo export type ExpressRouteGateway = Resource & { readonly etag?: string; autoScaleConfiguration?: ExpressRouteGatewayPropertiesAutoScaleConfiguration; - readonly expressRouteConnections?: ExpressRouteConnection[]; + expressRouteConnections?: ExpressRouteConnection[]; readonly provisioningState?: ProvisioningState; virtualHub?: VirtualHubId; }; @@ -3675,6 +3767,72 @@ export type ExpressRoutePort = Resource & { readonly resourceGuid?: string; }; +// @public +export type ExpressRoutePortAuthorization = SubResource & { + name?: string; + readonly etag?: string; + readonly type?: string; + readonly authorizationKey?: string; + readonly authorizationUseStatus?: ExpressRoutePortAuthorizationUseStatus; + readonly circuitResourceUri?: string; + readonly provisioningState?: ProvisioningState; +}; + +// @public +export interface ExpressRoutePortAuthorizationListResult { + nextLink?: string; + value?: ExpressRoutePortAuthorization[]; +} + +// @public +export interface ExpressRoutePortAuthorizations { + beginCreateOrUpdate(resourceGroupName: string, expressRoutePortName: string, authorizationName: string, authorizationParameters: ExpressRoutePortAuthorization, options?: ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams): Promise, ExpressRoutePortAuthorizationsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, expressRoutePortName: string, authorizationName: string, authorizationParameters: ExpressRoutePortAuthorization, options?: ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, expressRoutePortName: string, authorizationName: string, options?: ExpressRoutePortAuthorizationsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, expressRoutePortName: string, authorizationName: string, options?: ExpressRoutePortAuthorizationsDeleteOptionalParams): Promise; + get(resourceGroupName: string, expressRoutePortName: string, authorizationName: string, options?: ExpressRoutePortAuthorizationsGetOptionalParams): Promise; + list(resourceGroupName: string, expressRoutePortName: string, options?: ExpressRoutePortAuthorizationsListOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ExpressRoutePortAuthorizationsCreateOrUpdateResponse = ExpressRoutePortAuthorization; + +// @public +export interface ExpressRoutePortAuthorizationsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ExpressRoutePortAuthorizationsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ExpressRoutePortAuthorizationsGetResponse = ExpressRoutePortAuthorization; + +// @public +export interface ExpressRoutePortAuthorizationsListNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ExpressRoutePortAuthorizationsListNextResponse = ExpressRoutePortAuthorizationListResult; + +// @public +export interface ExpressRoutePortAuthorizationsListOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ExpressRoutePortAuthorizationsListResponse = ExpressRoutePortAuthorizationListResult; + +// @public +export type ExpressRoutePortAuthorizationUseStatus = string; + // @public export interface ExpressRoutePortListResult { nextLink?: string; @@ -3870,6 +4028,7 @@ export interface FirewallPolicies { get(resourceGroupName: string, firewallPolicyName: string, options?: FirewallPoliciesGetOptionalParams): Promise; list(resourceGroupName: string, options?: FirewallPoliciesListOptionalParams): PagedAsyncIterableIterator; listAll(options?: FirewallPoliciesListAllOptionalParams): PagedAsyncIterableIterator; + updateTags(resourceGroupName: string, firewallPolicyName: string, parameters: TagsObject, options?: FirewallPoliciesUpdateTagsOptionalParams): Promise; } // @public @@ -3923,6 +4082,13 @@ export interface FirewallPoliciesListOptionalParams extends coreClient.Operation // @public export type FirewallPoliciesListResponse = FirewallPolicyListResult; +// @public +export interface FirewallPoliciesUpdateTagsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FirewallPoliciesUpdateTagsResponse = FirewallPolicy; + // @public export type FirewallPolicy = Resource & { readonly etag?: string; @@ -3965,11 +4131,23 @@ export interface FirewallPolicyFilterRuleCollectionAction { // @public export type FirewallPolicyFilterRuleCollectionActionType = string; +// @public +export type FirewallPolicyIdpsQuerySortOrder = string; + +// @public +export type FirewallPolicyIdpsSignatureDirection = 0 | 1 | 2; + +// @public +export type FirewallPolicyIdpsSignatureMode = 0 | 1 | 2; + // @public export interface FirewallPolicyIdpsSignatures { list(resourceGroupName: string, firewallPolicyName: string, parameters: IdpsQueryObject, options?: FirewallPolicyIdpsSignaturesListOptionalParams): Promise; } +// @public +export type FirewallPolicyIdpsSignatureSeverity = 1 | 2 | 3; + // @public export interface FirewallPolicyIdpsSignaturesFilterValues { list(resourceGroupName: string, firewallPolicyName: string, parameters: SignatureOverridesFilterValuesQuery, options?: FirewallPolicyIdpsSignaturesFilterValuesListOptionalParams): Promise; @@ -4053,6 +4231,7 @@ export interface FirewallPolicyIntrusionDetectionBypassTrafficSpecifications { // @public export interface FirewallPolicyIntrusionDetectionConfiguration { bypassTrafficSettings?: FirewallPolicyIntrusionDetectionBypassTrafficSpecifications[]; + privateRanges?: string[]; signatureOverrides?: FirewallPolicyIntrusionDetectionSignatureSpecification[]; } @@ -4347,6 +4526,12 @@ export type FrontendIPConfiguration = SubResource & { readonly provisioningState?: ProvisioningState; }; +// @public +export interface GatewayCustomBgpIpAddressIpConfiguration { + customBgpIpAddress: string; + ipConfigurationId: string; +} + // @public export interface GatewayLoadBalancerTunnelInterface { identifier?: number; @@ -4559,6 +4744,9 @@ export interface HubRouteTablesListOptionalParams extends coreClient.OperationOp // @public export type HubRouteTablesListResponse = ListHubRouteTablesResult; +// @public +export type HubRoutingPreference = string; + // @public export type HubVirtualNetworkConnection = SubResource & { name?: string; @@ -5103,7 +5291,11 @@ export enum KnownApplicationGatewayProtocol { // (undocumented) Http = "Http", // (undocumented) - Https = "Https" + Https = "Https", + // (undocumented) + Tcp = "Tcp", + // (undocumented) + Tls = "Tls" } // @public @@ -5692,6 +5884,14 @@ export enum KnownExpressRoutePeeringType { MicrosoftPeering = "MicrosoftPeering" } +// @public +export enum KnownExpressRoutePortAuthorizationUseStatus { + // (undocumented) + Available = "Available", + // (undocumented) + InUse = "InUse" +} + // @public export enum KnownExpressRoutePortsEncapsulation { // (undocumented) @@ -5714,6 +5914,14 @@ export enum KnownFirewallPolicyFilterRuleCollectionActionType { Deny = "Deny" } +// @public +export enum KnownFirewallPolicyIdpsQuerySortOrder { + // (undocumented) + Ascending = "Ascending", + // (undocumented) + Descending = "Descending" +} + // @public export enum KnownFirewallPolicyIntrusionDetectionProtocol { // (undocumented) @@ -5842,6 +6050,16 @@ export enum KnownHubBgpConnectionStatus { Unknown = "Unknown" } +// @public +export enum KnownHubRoutingPreference { + // (undocumented) + ASPath = "ASPath", + // (undocumented) + ExpressRoute = "ExpressRoute", + // (undocumented) + VpnGateway = "VpnGateway" +} + // @public export enum KnownHubVirtualNetworkConnectionStatus { // (undocumented) @@ -5988,6 +6206,18 @@ export enum KnownIssueType { UserDefinedRoute = "UserDefinedRoute" } +// @public +export enum KnownLoadBalancerBackendAddressAdminState { + // (undocumented) + Down = "Down", + // (undocumented) + Drain = "Drain", + // (undocumented) + None = "None", + // (undocumented) + Up = "Up" +} + // @public export enum KnownLoadBalancerOutboundRuleProtocol { // (undocumented) @@ -6038,6 +6268,16 @@ export enum KnownNatGatewaySkuName { Standard = "Standard" } +// @public +export enum KnownNetworkInterfaceAuxiliaryMode { + // (undocumented) + Floating = "Floating", + // (undocumented) + MaxConnections = "MaxConnections", + // (undocumented) + None = "None" +} + // @public export enum KnownNetworkInterfaceMigrationPhase { // (undocumented) @@ -6098,14 +6338,6 @@ export enum KnownOfficeTrafficCategory { OptimizeAndAllow = "OptimizeAndAllow" } -// @public -export enum KnownOrderByOrder { - // (undocumented) - Ascending = "Ascending", - // (undocumented) - Descending = "Descending" -} - // @public export enum KnownOrigin { // (undocumented) @@ -6450,36 +6682,6 @@ export enum KnownSeverity { Warning = "Warning" } -// @public -export enum KnownSingleQueryResultDirection { - // (undocumented) - One = 1, - // (undocumented) - Two = 2, - // (undocumented) - Zero = 0 -} - -// @public -export enum KnownSingleQueryResultMode { - // (undocumented) - One = 1, - // (undocumented) - Two = 2, - // (undocumented) - Zero = 0 -} - -// @public -export enum KnownSingleQueryResultSeverity { - // (undocumented) - One = 1, - // (undocumented) - Three = 3, - // (undocumented) - Two = 2 -} - // @public export enum KnownSyncRemoteAddressSpace { // (undocumented) @@ -6782,6 +6984,16 @@ export enum KnownVpnNatRuleType { Static = "Static" } +// @public +export enum KnownVpnPolicyMemberAttributeType { + // (undocumented) + AADGroupId = "AADGroupId", + // (undocumented) + CertificateGroupId = "CertificateGroupId", + // (undocumented) + RadiusAzureGroupId = "RadiusAzureGroupId" +} + // @public export enum KnownVpnType { // (undocumented) @@ -6980,6 +7192,12 @@ export interface ListVpnGatewaysResult { value?: VpnGateway[]; } +// @public +export interface ListVpnServerConfigurationPolicyGroupsResult { + nextLink?: string; + value?: VpnServerConfigurationPolicyGroup[]; +} + // @public export interface ListVpnServerConfigurationsResult { nextLink?: string; @@ -7022,6 +7240,7 @@ export type LoadBalancer = Resource & { // @public export interface LoadBalancerBackendAddress { + adminState?: LoadBalancerBackendAddressAdminState; readonly inboundNatRulesPortMapping?: NatRulePortMapping[]; ipAddress?: string; loadBalancerFrontendIPConfiguration?: SubResource; @@ -7031,6 +7250,9 @@ export interface LoadBalancerBackendAddress { virtualNetwork?: SubResource; } +// @public +export type LoadBalancerBackendAddressAdminState = string; + // @public export interface LoadBalancerBackendAddressPoolListResult { readonly nextLink?: string; @@ -7757,6 +7979,7 @@ export type NetworkInterface = Resource & { nicType?: NetworkInterfaceNicType; privateLinkService?: PrivateLinkService; migrationPhase?: NetworkInterfaceMigrationPhase; + auxiliaryMode?: NetworkInterfaceAuxiliaryMode; }; // @public @@ -7765,6 +7988,9 @@ export interface NetworkInterfaceAssociation { securityRules?: SecurityRule[]; } +// @public +export type NetworkInterfaceAuxiliaryMode = string; + // @public export interface NetworkInterfaceDnsSettings { readonly appliedDnsServers?: string[]; @@ -8135,6 +8361,8 @@ export class NetworkManagementClient extends coreClient.ServiceClient { $host: string; constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: NetworkManagementClientOptionalParams); // (undocumented) + apiVersion: string; + // (undocumented) applicationGatewayPrivateEndpointConnections: ApplicationGatewayPrivateEndpointConnections; // (undocumented) applicationGatewayPrivateLinkResources: ApplicationGatewayPrivateLinkResources; @@ -8168,6 +8396,8 @@ export class NetworkManagementClient extends coreClient.ServiceClient { bgpServiceCommunities: BgpServiceCommunities; checkDnsNameAvailability(location: string, domainNameLabel: string, options?: CheckDnsNameAvailabilityOptionalParams): Promise; // (undocumented) + configurationPolicyGroups: ConfigurationPolicyGroups; + // (undocumented) connectionMonitors: ConnectionMonitors; // (undocumented) customIPPrefixes: CustomIPPrefixes; @@ -8198,6 +8428,8 @@ export class NetworkManagementClient extends coreClient.ServiceClient { // (undocumented) expressRouteLinks: ExpressRouteLinks; // (undocumented) + expressRoutePortAuthorizations: ExpressRoutePortAuthorizations; + // (undocumented) expressRoutePorts: ExpressRoutePorts; // (undocumented) expressRoutePortsLocations: ExpressRoutePortsLocations; @@ -8375,6 +8607,7 @@ export class NetworkManagementClient extends coreClient.ServiceClient { // @public export interface NetworkManagementClientOptionalParams extends coreClient.ServiceClientOptions { $host?: string; + apiVersion?: string; endpoint?: string; } @@ -8979,12 +9212,9 @@ export type OperationsListResponse = OperationListResult; // @public export interface OrderBy { field?: string; - order?: OrderByOrder; + order?: FirewallPolicyIdpsQuerySortOrder; } -// @public -export type OrderByOrder = string; - // @public export type Origin = string; @@ -9026,6 +9256,8 @@ export type P2SConnectionConfiguration = SubResource & { vpnClientAddressPool?: AddressSpace; routingConfiguration?: RoutingConfiguration; enableInternetSecurity?: boolean; + readonly configurationPolicyGroupAssociations?: SubResource[]; + readonly previousConfigurationPolicyGroupAssociations?: VpnServerConfigurationPolicyGroup[]; readonly provisioningState?: ProvisioningState; }; @@ -11191,26 +11423,17 @@ export interface SignaturesOverridesProperties { export interface SingleQueryResult { description?: string; destinationPorts?: string[]; - direction?: SingleQueryResultDirection; + direction?: FirewallPolicyIdpsSignatureDirection; group?: string; inheritedFromParentPolicy?: boolean; lastUpdated?: string; - mode?: SingleQueryResultMode; + mode?: FirewallPolicyIdpsSignatureMode; protocol?: string; - severity?: SingleQueryResultSeverity; + severity?: FirewallPolicyIdpsSignatureSeverity; signatureId?: number; sourcePorts?: string[]; } -// @public -export type SingleQueryResultDirection = number; - -// @public -export type SingleQueryResultMode = number; - -// @public -export type SingleQueryResultSeverity = number; - // @public export interface Sku { name?: BastionHostSkuName; @@ -11632,6 +11855,7 @@ export type VirtualHub = Resource & { virtualRouterIps?: string[]; allowBranchToBranchTraffic?: boolean; preferredRoutingGateway?: PreferredRoutingGateway; + hubRoutingPreference?: HubRoutingPreference; }; // @public @@ -12009,6 +12233,7 @@ export type VirtualNetworkGatewayConnection = Resource & { readonly ingressBytesTransferred?: number; peer?: SubResource; enableBgp?: boolean; + gatewayCustomBgpIpAddresses?: GatewayCustomBgpIpAddressIpConfiguration[]; useLocalAzureIpAddress?: boolean; usePolicyBasedTrafficSelectors?: boolean; ipsecPolicies?: IpsecPolicy[]; @@ -12036,6 +12261,7 @@ export type VirtualNetworkGatewayConnectionListEntity = Resource & { readonly ingressBytesTransferred?: number; peer?: SubResource; enableBgp?: boolean; + gatewayCustomBgpIpAddresses?: GatewayCustomBgpIpAddressIpConfiguration[]; usePolicyBasedTrafficSelectors?: boolean; ipsecPolicies?: IpsecPolicy[]; trafficSelectorPolicies?: TrafficSelectorPolicy[]; @@ -13541,6 +13767,9 @@ export interface VpnPacketCaptureStopParameters { sasUrl?: string; } +// @public +export type VpnPolicyMemberAttributeType = string; + // @public export interface VpnProfileResponse { profileUrl?: string; @@ -13575,9 +13804,29 @@ export type VpnServerConfiguration = Resource & { aadAuthenticationParameters?: AadAuthenticationParameters; readonly provisioningState?: string; readonly p2SVpnGateways?: P2SVpnGateway[]; + configurationPolicyGroups?: VpnServerConfigurationPolicyGroup[]; readonly etagPropertiesEtag?: string; }; +// @public +export type VpnServerConfigurationPolicyGroup = SubResource & { + readonly etag?: string; + name?: string; + readonly type?: string; + isDefault?: boolean; + priority?: number; + policyMembers?: VpnServerConfigurationPolicyGroupMember[]; + readonly p2SConnectionConfigurations?: SubResource[]; + readonly provisioningState?: ProvisioningState; +}; + +// @public +export interface VpnServerConfigurationPolicyGroupMember { + attributeType?: VpnPolicyMemberAttributeType; + attributeValue?: string; + name?: string; +} + // @public export interface VpnServerConfigurations { beginCreateOrUpdate(resourceGroupName: string, vpnServerConfigurationName: string, vpnServerConfigurationParameters: VpnServerConfiguration, options?: VpnServerConfigurationsCreateOrUpdateOptionalParams): Promise, VpnServerConfigurationsCreateOrUpdateResponse>>; @@ -13726,6 +13975,7 @@ export type VpnSiteLinkConnection = SubResource & { connectionBandwidth?: number; sharedKey?: string; enableBgp?: boolean; + vpnGatewayCustomBgpAddresses?: GatewayCustomBgpIpAddressIpConfiguration[]; usePolicyBasedTrafficSelectors?: boolean; ipsecPolicies?: IpsecPolicy[]; enableRateLimiting?: boolean; diff --git a/sdk/network/arm-network/src/models/index.ts b/sdk/network/arm-network/src/models/index.ts index 2ae14bfa640b..bda4e4888ccc 100644 --- a/sdk/network/arm-network/src/models/index.ts +++ b/sdk/network/arm-network/src/models/index.ts @@ -296,6 +296,8 @@ export interface LoadBalancerBackendAddress { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly inboundNatRulesPortMapping?: NatRulePortMapping[]; + /** A list of administrative states which once set can override health probe so that Load Balancer will always forward new connections to backend, or deny new connections and reset existing connections. */ + adminState?: LoadBalancerBackendAddressAdminState; } /** Individual port mappings for inbound NAT rule created for backend pool. */ @@ -1502,6 +1504,14 @@ export interface GenerateExpressRoutePortsLOAResult { encodedContent?: string; } +/** Response for ListExpressRoutePortAuthorizations API service call. */ +export interface ExpressRoutePortAuthorizationListResult { + /** The authorizations in an ExpressRoute Port. */ + value?: ExpressRoutePortAuthorization[]; + /** The URL to get the next set of results. */ + nextLink?: string; +} + /** ThreatIntel Whitelist for Firewall Policy. */ export interface FirewallPolicyThreatIntelWhitelist { /** List of IP addresses for the ThreatIntel Whitelist. */ @@ -1586,6 +1596,8 @@ export interface FirewallPolicyIntrusionDetectionConfiguration { signatureOverrides?: FirewallPolicyIntrusionDetectionSignatureSpecification[]; /** List of rules for traffic to bypass. */ bypassTrafficSettings?: FirewallPolicyIntrusionDetectionBypassTrafficSpecifications[]; + /** IDPS Private IP address ranges are used to identify traffic direction (i.e. inbound, outbound, etc.). By default, only ranges defined by IANA RFC 1918 are considered private IP addresses. To modify default ranges, specify your Private IP address ranges with this property */ + privateRanges?: string[]; } /** Intrusion detection signatures specification states. */ @@ -1691,7 +1703,7 @@ export interface OrderBy { /** Describes the actual column name to sort by */ field?: string; /** Describes if results should be in ascending/descending order */ - order?: OrderByOrder; + order?: FirewallPolicyIdpsQuerySortOrder; } /** Query result */ @@ -1706,11 +1718,11 @@ export interface SingleQueryResult { /** The ID of the signature */ signatureId?: number; /** The current mode enforced, 0 - Disabled, 1 - Alert, 2 -Deny */ - mode?: SingleQueryResultMode; + mode?: FirewallPolicyIdpsSignatureMode; /** Describes the severity of signature: 1 - Low, 2 - Medium, 3 - High */ - severity?: SingleQueryResultSeverity; + severity?: FirewallPolicyIdpsSignatureSeverity; /** Describes in which direction signature is being enforced: 0 - Inbound, 1 - OutBound, 2 - Bidirectional */ - direction?: SingleQueryResultDirection; + direction?: FirewallPolicyIdpsSignatureDirection; /** Describes the groups the signature belongs to */ group?: string; /** Describes what is the signature enforces */ @@ -4073,6 +4085,14 @@ export interface TunnelConnectionHealth { readonly lastConnectionEstablishedUtcTime?: string; } +/** GatewayCustomBgpIpAddressIpConfiguration for a virtual network gateway connection. */ +export interface GatewayCustomBgpIpAddressIpConfiguration { + /** The IpconfigurationId of ipconfiguration which belongs to gateway. */ + ipConfigurationId: string; + /** The custom BgpPeeringAddress which belongs to IpconfigurationId. */ + customBgpIpAddress: string; +} + /** An traffic selector policy for a virtual network gateway connection. */ export interface TrafficSelectorPolicy { /** A collection of local address spaces in CIDR format. */ @@ -4540,6 +4560,16 @@ export interface StaticRoute { nextHopIpAddress?: string; } +/** VpnServerConfiguration PolicyGroup member */ +export interface VpnServerConfigurationPolicyGroupMember { + /** Name of the VpnServerConfigurationPolicyGroupMember. */ + name?: string; + /** The Vpn Policy member attribute type. */ + attributeType?: VpnPolicyMemberAttributeType; + /** The value of Attribute used for this VpnServerConfigurationPolicyGroupMember. */ + attributeValue?: string; +} + /** VpnClientConnectionHealth properties. */ export interface VpnClientConnectionHealth { /** @@ -4566,6 +4596,14 @@ export interface ListVpnServerConfigurationsResult { nextLink?: string; } +/** Result of the request to list VpnServerConfigurationPolicyGroups. It contains a list of VpnServerConfigurationPolicyGroups and a URL nextLink to get the next set of results. */ +export interface ListVpnServerConfigurationPolicyGroupsResult { + /** List of VpnServerConfigurationPolicyGroups. */ + value?: VpnServerConfigurationPolicyGroup[]; + /** URL to get the next set of operation list results if there are any. */ + nextLink?: string; +} + /** VirtualHub route table. */ export interface VirtualHubRouteTable { /** List of all routes. */ @@ -5305,6 +5343,8 @@ export type ApplicationGatewayProbe = SubResource & { unhealthyThreshold?: number; /** Whether the host header should be picked from the backend http settings. Default value is false. */ pickHostNameFromBackendHttpSettings?: boolean; + /** Whether the server name indication should be picked from the backend settings for Tls protocol. Default value is false. */ + pickHostNameFromBackendSettings?: boolean; /** Minimum number of servers that are always marked healthy. Default value is 0. */ minServers?: number; /** Criterion for classifying a healthy probe response. */ @@ -5837,6 +5877,8 @@ export type BackendAddressPool = SubResource & { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly provisioningState?: ProvisioningState; + /** Amount of seconds Load Balancer waits for before sending RESET to client and backend address. */ + drainPeriodInSeconds?: number; }; /** Inbound NAT rule of the load balancer. */ @@ -6007,6 +6049,41 @@ export type ApplicationGatewayBackendHttpSettings = SubResource & { readonly provisioningState?: ProvisioningState; }; +/** Backend address pool settings of an application gateway. */ +export type ApplicationGatewayBackendSettings = SubResource & { + /** Name of the backend settings that is unique within an Application Gateway. */ + name?: string; + /** + * A unique read-only string that changes whenever the resource is updated. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly etag?: string; + /** + * Type of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** The destination port on the backend. */ + port?: number; + /** The protocol used to communicate with the backend. */ + protocol?: ApplicationGatewayProtocol; + /** Connection timeout in seconds. Application Gateway will fail the request if response is not received within ConnectionTimeout. Acceptable values are from 1 second to 86400 seconds. */ + timeout?: number; + /** Probe resource of an application gateway. */ + probe?: SubResource; + /** Array of references to application gateway trusted root certificates. */ + trustedRootCertificates?: SubResource[]; + /** Server name indication to be sent to the backend servers for Tls protocol. */ + hostName?: string; + /** Whether to pick server name indication from the host name of the backend server for Tls protocol. Default value is false. */ + pickHostNameFromBackendAddress?: boolean; + /** + * The provisioning state of the backend HTTP settings resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; +}; + /** Http listener of an application gateway. */ export type ApplicationGatewayHttpListener = SubResource & { /** Name of the HTTP listener that is unique within an Application Gateway. */ @@ -6048,6 +6125,37 @@ export type ApplicationGatewayHttpListener = SubResource & { hostNames?: string[]; }; +/** Listener of an application gateway. */ +export type ApplicationGatewayListener = SubResource & { + /** Name of the listener that is unique within an Application Gateway. */ + name?: string; + /** + * A unique read-only string that changes whenever the resource is updated. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly etag?: string; + /** + * Type of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** Frontend IP configuration resource of an application gateway. */ + frontendIPConfiguration?: SubResource; + /** Frontend port resource of an application gateway. */ + frontendPort?: SubResource; + /** Protocol of the listener. */ + protocol?: ApplicationGatewayProtocol; + /** SSL certificate resource of an application gateway. */ + sslCertificate?: SubResource; + /** SSL profile resource of the application gateway. */ + sslProfile?: SubResource; + /** + * The provisioning state of the listener resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; +}; + /** SSL profile of an application gateway. */ export type ApplicationGatewaySslProfile = SubResource & { /** Name of the SSL profile that is unique within an Application Gateway. */ @@ -6182,6 +6290,35 @@ export type ApplicationGatewayRequestRoutingRule = SubResource & { readonly provisioningState?: ProvisioningState; }; +/** Routing rule of an application gateway. */ +export type ApplicationGatewayRoutingRule = SubResource & { + /** Name of the routing rule that is unique within an Application Gateway. */ + name?: string; + /** + * A unique read-only string that changes whenever the resource is updated. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly etag?: string; + /** + * Type of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** Rule type. */ + ruleType?: ApplicationGatewayRequestRoutingRuleType; + /** Backend address pool resource of the application gateway. */ + backendAddressPool?: SubResource; + /** Backend settings resource of the application gateway. */ + backendSettings?: SubResource; + /** Listener resource of the application gateway. */ + listener?: SubResource; + /** + * The provisioning state of the request routing rule resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; +}; + /** Rewrite rule set of an application gateway. */ export type ApplicationGatewayRewriteRuleSet = SubResource & { /** Name of the rewrite rule set that is unique within an Application Gateway. */ @@ -6800,6 +6937,42 @@ export type ExpressRouteLink = SubResource & { macSecConfig?: ExpressRouteLinkMacSecConfig; }; +/** ExpressRoutePort Authorization resource definition. */ +export type ExpressRoutePortAuthorization = SubResource & { + /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */ + name?: string; + /** + * A unique read-only string that changes whenever the resource is updated. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly etag?: string; + /** + * Type of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** + * The authorization key. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly authorizationKey?: string; + /** + * The authorization use status. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly authorizationUseStatus?: ExpressRoutePortAuthorizationUseStatus; + /** + * The reference to the ExpressRoute circuit resource using the authorization. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly circuitResourceUri?: string; + /** + * The provisioning state of the authorization resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; +}; + /** Rule Collection Group resource. */ export type FirewallPolicyRuleCollectionGroup = SubResource & { /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */ @@ -7331,6 +7504,38 @@ export type VpnSiteLink = SubResource & { readonly provisioningState?: ProvisioningState; }; +/** VpnServerConfigurationPolicyGroup Resource. */ +export type VpnServerConfigurationPolicyGroup = SubResource & { + /** + * A unique read-only string that changes whenever the resource is updated. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly etag?: string; + /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */ + name?: string; + /** + * Resource type. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** Shows if this is a Default VpnServerConfigurationPolicyGroup or not. */ + isDefault?: boolean; + /** Priority for VpnServerConfigurationPolicyGroup. */ + priority?: number; + /** Multiple PolicyMembers for VpnServerConfigurationPolicyGroup. */ + policyMembers?: VpnServerConfigurationPolicyGroupMember[]; + /** + * List of references to P2SConnectionConfigurations. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly p2SConnectionConfigurations?: SubResource[]; + /** + * The provisioning state of the VpnServerConfigurationPolicyGroup resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; +}; + /** P2SConnectionConfiguration Resource. */ export type P2SConnectionConfiguration = SubResource & { /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */ @@ -7346,6 +7551,16 @@ export type P2SConnectionConfiguration = SubResource & { routingConfiguration?: RoutingConfiguration; /** Flag indicating whether the enable internet security flag is turned on for the P2S Connections or not. */ enableInternetSecurity?: boolean; + /** + * List of Configuration Policy Groups that this P2SConnectionConfiguration is attached to. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly configurationPolicyGroupAssociations?: SubResource[]; + /** + * List of previous Configuration Policy Groups that this P2SConnectionConfiguration was attached to. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly previousConfigurationPolicyGroupAssociations?: VpnServerConfigurationPolicyGroup[]; /** * The provisioning state of the P2SConnectionConfiguration resource. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -7442,6 +7657,8 @@ export type VpnSiteLinkConnection = SubResource & { sharedKey?: string; /** EnableBgp flag. */ enableBgp?: boolean; + /** vpnGatewayCustomBgpAddresses used by this connection. */ + vpnGatewayCustomBgpAddresses?: GatewayCustomBgpIpAddressIpConfiguration[]; /** Enable policy-based traffic selectors. */ usePolicyBasedTrafficSelectors?: boolean; /** The IPSec Policies to be considered by this connection. */ @@ -7942,6 +8159,8 @@ export type NetworkInterface = Resource & { privateLinkService?: PrivateLinkService; /** Migration phase of Network Interface resource. */ migrationPhase?: NetworkInterfaceMigrationPhase; + /** Auxiliary mode of Network Interface resource. */ + auxiliaryMode?: NetworkInterfaceAuxiliaryMode; }; /** A flow log resource. */ @@ -8239,14 +8458,20 @@ export type ApplicationGateway = Resource & { backendAddressPools?: ApplicationGatewayBackendAddressPool[]; /** Backend http settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */ backendHttpSettingsCollection?: ApplicationGatewayBackendHttpSettings[]; + /** Backend settings of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */ + backendSettingsCollection?: ApplicationGatewayBackendSettings[]; /** Http listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */ httpListeners?: ApplicationGatewayHttpListener[]; + /** Listeners of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */ + listeners?: ApplicationGatewayListener[]; /** SSL profiles of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */ sslProfiles?: ApplicationGatewaySslProfile[]; /** URL path map of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */ urlPathMaps?: ApplicationGatewayUrlPathMap[]; /** Request routing rules of the application gateway resource. */ requestRoutingRules?: ApplicationGatewayRequestRoutingRule[]; + /** Routing rules of the application gateway resource. */ + routingRules?: ApplicationGatewayRoutingRule[]; /** Rewrite rules for the application gateway resource. */ rewriteRuleSets?: ApplicationGatewayRewriteRuleSet[]; /** Redirect configurations of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */ @@ -8572,6 +8797,8 @@ export type ExpressRouteCircuit = Resource & { gatewayManagerEtag?: string; /** Flag denoting global reach status. */ globalReachEnabled?: boolean; + /** The authorizationKey. */ + authorizationKey?: string; }; /** A ExpressRouteResourceProvider object. */ @@ -9235,6 +9462,8 @@ export type VirtualNetworkGatewayConnectionListEntity = Resource & { peer?: SubResource; /** EnableBgp flag. */ enableBgp?: boolean; + /** GatewayCustomBgpIpAddresses to be used for virtual network gateway Connection. */ + gatewayCustomBgpIpAddresses?: GatewayCustomBgpIpAddressIpConfiguration[]; /** Enable policy-based traffic selectors. */ usePolicyBasedTrafficSelectors?: boolean; /** The IPSec Policies to be considered by this connection. */ @@ -9337,6 +9566,8 @@ export type VirtualNetworkGatewayConnection = Resource & { peer?: SubResource; /** EnableBgp flag. */ enableBgp?: boolean; + /** GatewayCustomBgpIpAddresses to be used for virtual network gateway Connection. */ + gatewayCustomBgpIpAddresses?: GatewayCustomBgpIpAddressIpConfiguration[]; /** Use private local Azure IP for the connection. */ useLocalAzureIpAddress?: boolean; /** Enable policy-based traffic selectors. */ @@ -9527,6 +9758,8 @@ export type VpnServerConfiguration = Resource & { * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly p2SVpnGateways?: P2SVpnGateway[]; + /** List of all VpnServerConfigurationPolicyGroups. */ + configurationPolicyGroups?: VpnServerConfigurationPolicyGroup[]; /** * A unique read-only string that changes whenever the resource is updated. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -9596,6 +9829,8 @@ export type VirtualHub = Resource & { allowBranchToBranchTraffic?: boolean; /** The preferred gateway to route on-prem traffic */ preferredRoutingGateway?: PreferredRoutingGateway; + /** The hubRoutingPreference of this VirtualHub. */ + hubRoutingPreference?: HubRoutingPreference; }; /** VpnGateway Resource. */ @@ -9640,11 +9875,8 @@ export type ExpressRouteGateway = Resource & { readonly etag?: string; /** Configuration for auto scaling. */ autoScaleConfiguration?: ExpressRouteGatewayPropertiesAutoScaleConfiguration; - /** - * List of ExpressRoute connections to the ExpressRoute gateway. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly expressRouteConnections?: ExpressRouteConnection[]; + /** List of ExpressRoute connections to the ExpressRoute gateway. */ + expressRouteConnections?: ExpressRouteConnection[]; /** * The provisioning state of the express route gateway resource. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -10044,7 +10276,9 @@ export type IPAllocationMethod = string; /** Known values of {@link ApplicationGatewayProtocol} that the service accepts. */ export enum KnownApplicationGatewayProtocol { Http = "Http", - Https = "Https" + Https = "Https", + Tcp = "Tcp", + Tls = "Tls" } /** @@ -10053,7 +10287,9 @@ export enum KnownApplicationGatewayProtocol { * this enum contains the known values that the service supports. * ### Known values supported by the service * **Http** \ - * **Https** + * **Https** \ + * **Tcp** \ + * **Tls** */ export type ApplicationGatewayProtocol = string; @@ -10181,6 +10417,24 @@ export enum KnownNetworkInterfaceMigrationPhase { */ export type NetworkInterfaceMigrationPhase = string; +/** Known values of {@link NetworkInterfaceAuxiliaryMode} that the service accepts. */ +export enum KnownNetworkInterfaceAuxiliaryMode { + None = "None", + MaxConnections = "MaxConnections", + Floating = "Floating" +} + +/** + * Defines values for NetworkInterfaceAuxiliaryMode. \ + * {@link KnownNetworkInterfaceAuxiliaryMode} can be used interchangeably with NetworkInterfaceAuxiliaryMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **MaxConnections** \ + * **Floating** + */ +export type NetworkInterfaceAuxiliaryMode = string; + /** Known values of {@link FlowLogFormatType} that the service accepts. */ export enum KnownFlowLogFormatType { Json = "JSON" @@ -10385,6 +10639,26 @@ export enum KnownGatewayLoadBalancerTunnelInterfaceType { */ export type GatewayLoadBalancerTunnelInterfaceType = string; +/** Known values of {@link LoadBalancerBackendAddressAdminState} that the service accepts. */ +export enum KnownLoadBalancerBackendAddressAdminState { + None = "None", + Up = "Up", + Down = "Down", + Drain = "Drain" +} + +/** + * Defines values for LoadBalancerBackendAddressAdminState. \ + * {@link KnownLoadBalancerBackendAddressAdminState} can be used interchangeably with LoadBalancerBackendAddressAdminState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **Up** \ + * **Down** \ + * **Drain** + */ +export type LoadBalancerBackendAddressAdminState = string; + /** Known values of {@link TransportProtocol} that the service accepts. */ export enum KnownTransportProtocol { Udp = "Udp", @@ -11017,6 +11291,22 @@ export enum KnownExpressRouteLinkMacSecSciState { */ export type ExpressRouteLinkMacSecSciState = string; +/** Known values of {@link ExpressRoutePortAuthorizationUseStatus} that the service accepts. */ +export enum KnownExpressRoutePortAuthorizationUseStatus { + Available = "Available", + InUse = "InUse" +} + +/** + * Defines values for ExpressRoutePortAuthorizationUseStatus. \ + * {@link KnownExpressRoutePortAuthorizationUseStatus} can be used interchangeably with ExpressRoutePortAuthorizationUseStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Available** \ + * **InUse** + */ +export type ExpressRoutePortAuthorizationUseStatus = string; + /** Known values of {@link FirewallPolicyIntrusionDetectionStateType} that the service accepts. */ export enum KnownFirewallPolicyIntrusionDetectionStateType { Off = "Off", @@ -11089,75 +11379,21 @@ export enum KnownFirewallPolicyRuleCollectionType { */ export type FirewallPolicyRuleCollectionType = string; -/** Known values of {@link OrderByOrder} that the service accepts. */ -export enum KnownOrderByOrder { +/** Known values of {@link FirewallPolicyIdpsQuerySortOrder} that the service accepts. */ +export enum KnownFirewallPolicyIdpsQuerySortOrder { Ascending = "Ascending", Descending = "Descending" } /** - * Defines values for OrderByOrder. \ - * {@link KnownOrderByOrder} can be used interchangeably with OrderByOrder, + * Defines values for FirewallPolicyIdpsQuerySortOrder. \ + * {@link KnownFirewallPolicyIdpsQuerySortOrder} can be used interchangeably with FirewallPolicyIdpsQuerySortOrder, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Ascending** \ * **Descending** */ -export type OrderByOrder = string; - -/** Known values of {@link SingleQueryResultMode} that the service accepts. */ -export enum KnownSingleQueryResultMode { - Zero = 0, - One = 1, - Two = 2 -} - -/** - * Defines values for SingleQueryResultMode. \ - * {@link KnownSingleQueryResultMode} can be used interchangeably with SingleQueryResultMode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **0** \ - * **1** \ - * **2** - */ -export type SingleQueryResultMode = number; - -/** Known values of {@link SingleQueryResultSeverity} that the service accepts. */ -export enum KnownSingleQueryResultSeverity { - One = 1, - Two = 2, - Three = 3 -} - -/** - * Defines values for SingleQueryResultSeverity. \ - * {@link KnownSingleQueryResultSeverity} can be used interchangeably with SingleQueryResultSeverity, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **1** \ - * **2** \ - * **3** - */ -export type SingleQueryResultSeverity = number; - -/** Known values of {@link SingleQueryResultDirection} that the service accepts. */ -export enum KnownSingleQueryResultDirection { - Zero = 0, - One = 1, - Two = 2 -} - -/** - * Defines values for SingleQueryResultDirection. \ - * {@link KnownSingleQueryResultDirection} can be used interchangeably with SingleQueryResultDirection, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **0** \ - * **1** \ - * **2** - */ -export type SingleQueryResultDirection = number; +export type FirewallPolicyIdpsQuerySortOrder = string; /** Known values of {@link IpAllocationType} that the service accepts. */ export enum KnownIpAllocationType { @@ -12563,6 +12799,24 @@ export enum KnownVpnGatewayTunnelingProtocol { */ export type VpnGatewayTunnelingProtocol = string; +/** Known values of {@link VpnPolicyMemberAttributeType} that the service accepts. */ +export enum KnownVpnPolicyMemberAttributeType { + CertificateGroupId = "CertificateGroupId", + AADGroupId = "AADGroupId", + RadiusAzureGroupId = "RadiusAzureGroupId" +} + +/** + * Defines values for VpnPolicyMemberAttributeType. \ + * {@link KnownVpnPolicyMemberAttributeType} can be used interchangeably with VpnPolicyMemberAttributeType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CertificateGroupId** \ + * **AADGroupId** \ + * **RadiusAzureGroupId** + */ +export type VpnPolicyMemberAttributeType = string; + /** Known values of {@link RoutingState} that the service accepts. */ export enum KnownRoutingState { None = "None", @@ -12601,6 +12855,24 @@ export enum KnownPreferredRoutingGateway { */ export type PreferredRoutingGateway = string; +/** Known values of {@link HubRoutingPreference} that the service accepts. */ +export enum KnownHubRoutingPreference { + ExpressRoute = "ExpressRoute", + VpnGateway = "VpnGateway", + ASPath = "ASPath" +} + +/** + * Defines values for HubRoutingPreference. \ + * {@link KnownHubRoutingPreference} can be used interchangeably with HubRoutingPreference, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **ExpressRoute** \ + * **VpnGateway** \ + * **ASPath** + */ +export type HubRoutingPreference = string; + /** Known values of {@link VpnConnectionStatus} that the service accepts. */ export enum KnownVpnConnectionStatus { Unknown = "Unknown", @@ -13048,6 +13320,12 @@ export type ResourceIdentityType = | "UserAssigned" | "SystemAssigned, UserAssigned" | "None"; +/** Defines values for FirewallPolicyIdpsSignatureMode. */ +export type FirewallPolicyIdpsSignatureMode = 0 | 1 | 2; +/** Defines values for FirewallPolicyIdpsSignatureSeverity. */ +export type FirewallPolicyIdpsSignatureSeverity = 1 | 2 | 3; +/** Defines values for FirewallPolicyIdpsSignatureDirection. */ +export type FirewallPolicyIdpsSignatureDirection = 0 | 1 | 2; /** Optional parameters. */ export interface ApplicationGatewaysDeleteOptionalParams @@ -14763,6 +15041,48 @@ export interface ExpressRouteLinksListNextOptionalParams /** Contains response data for the listNext operation. */ export type ExpressRouteLinksListNextResponse = ExpressRouteLinkListResult; +/** Optional parameters. */ +export interface ExpressRoutePortAuthorizationsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface ExpressRoutePortAuthorizationsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ExpressRoutePortAuthorizationsGetResponse = ExpressRoutePortAuthorization; + +/** Optional parameters. */ +export interface ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type ExpressRoutePortAuthorizationsCreateOrUpdateResponse = ExpressRoutePortAuthorization; + +/** Optional parameters. */ +export interface ExpressRoutePortAuthorizationsListOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the list operation. */ +export type ExpressRoutePortAuthorizationsListResponse = ExpressRoutePortAuthorizationListResult; + +/** Optional parameters. */ +export interface ExpressRoutePortAuthorizationsListNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listNext operation. */ +export type ExpressRoutePortAuthorizationsListNextResponse = ExpressRoutePortAuthorizationListResult; + /** Optional parameters. */ export interface FirewallPoliciesDeleteOptionalParams extends coreClient.OperationOptions { @@ -14794,6 +15114,13 @@ export interface FirewallPoliciesCreateOrUpdateOptionalParams /** Contains response data for the createOrUpdate operation. */ export type FirewallPoliciesCreateOrUpdateResponse = FirewallPolicy; +/** Optional parameters. */ +export interface FirewallPoliciesUpdateTagsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the updateTags operation. */ +export type FirewallPoliciesUpdateTagsResponse = FirewallPolicy; + /** Optional parameters. */ export interface FirewallPoliciesListOptionalParams extends coreClient.OperationOptions {} @@ -18041,6 +18368,48 @@ export interface VpnServerConfigurationsListNextOptionalParams /** Contains response data for the listNext operation. */ export type VpnServerConfigurationsListNextResponse = ListVpnServerConfigurationsResult; +/** Optional parameters. */ +export interface ConfigurationPolicyGroupsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type ConfigurationPolicyGroupsCreateOrUpdateResponse = VpnServerConfigurationPolicyGroup; + +/** Optional parameters. */ +export interface ConfigurationPolicyGroupsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface ConfigurationPolicyGroupsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ConfigurationPolicyGroupsGetResponse = VpnServerConfigurationPolicyGroup; + +/** Optional parameters. */ +export interface ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByVpnServerConfiguration operation. */ +export type ConfigurationPolicyGroupsListByVpnServerConfigurationResponse = ListVpnServerConfigurationPolicyGroupsResult; + +/** Optional parameters. */ +export interface ConfigurationPolicyGroupsListByVpnServerConfigurationNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByVpnServerConfigurationNext operation. */ +export type ConfigurationPolicyGroupsListByVpnServerConfigurationNextResponse = ListVpnServerConfigurationPolicyGroupsResult; + /** Optional parameters. */ export interface VirtualHubsGetOptionalParams extends coreClient.OperationOptions {} @@ -18950,6 +19319,8 @@ export interface NetworkManagementClientOptionalParams extends coreClient.ServiceClientOptions { /** server parameter */ $host?: string; + /** Api Version */ + apiVersion?: string; /** Overrides client endpoint. */ endpoint?: string; } diff --git a/sdk/network/arm-network/src/models/mappers.ts b/sdk/network/arm-network/src/models/mappers.ts index 0850c58d9d8b..6b8c680c284b 100644 --- a/sdk/network/arm-network/src/models/mappers.ts +++ b/sdk/network/arm-network/src/models/mappers.ts @@ -750,6 +750,12 @@ export const LoadBalancerBackendAddress: coreClient.CompositeMapper = { } } } + }, + adminState: { + serializedName: "properties.adminState", + type: { + name: "String" + } } } } @@ -4143,8 +4149,34 @@ export const GenerateExpressRoutePortsLOAResult: coreClient.CompositeMapper = { } }; +export const ExpressRoutePortAuthorizationListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ExpressRoutePortAuthorizationListResult", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ExpressRoutePortAuthorization" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const FirewallPolicyThreatIntelWhitelist: coreClient.CompositeMapper = { - serializedName: "FirewallPolicyThreatIntelWhitelist", type: { name: "Composite", className: "FirewallPolicyThreatIntelWhitelist", @@ -4176,7 +4208,6 @@ export const FirewallPolicyThreatIntelWhitelist: coreClient.CompositeMapper = { }; export const FirewallPolicyInsights: coreClient.CompositeMapper = { - serializedName: "FirewallPolicyInsights", type: { name: "Composite", className: "FirewallPolicyInsights", @@ -4205,7 +4236,6 @@ export const FirewallPolicyInsights: coreClient.CompositeMapper = { }; export const FirewallPolicyLogAnalyticsResources: coreClient.CompositeMapper = { - serializedName: "FirewallPolicyLogAnalyticsResources", type: { name: "Composite", className: "FirewallPolicyLogAnalyticsResources", @@ -4234,7 +4264,6 @@ export const FirewallPolicyLogAnalyticsResources: coreClient.CompositeMapper = { }; export const FirewallPolicyLogAnalyticsWorkspace: coreClient.CompositeMapper = { - serializedName: "FirewallPolicyLogAnalyticsWorkspace", type: { name: "Composite", className: "FirewallPolicyLogAnalyticsWorkspace", @@ -4257,7 +4286,6 @@ export const FirewallPolicyLogAnalyticsWorkspace: coreClient.CompositeMapper = { }; export const FirewallPolicySnat: coreClient.CompositeMapper = { - serializedName: "FirewallPolicySNAT", type: { name: "Composite", className: "FirewallPolicySnat", @@ -4278,7 +4306,6 @@ export const FirewallPolicySnat: coreClient.CompositeMapper = { }; export const FirewallPolicySQL: coreClient.CompositeMapper = { - serializedName: "FirewallPolicySQL", type: { name: "Composite", className: "FirewallPolicySQL", @@ -4294,7 +4321,6 @@ export const FirewallPolicySQL: coreClient.CompositeMapper = { }; export const DnsSettings: coreClient.CompositeMapper = { - serializedName: "DnsSettings", type: { name: "Composite", className: "DnsSettings", @@ -4328,7 +4354,6 @@ export const DnsSettings: coreClient.CompositeMapper = { }; export const ExplicitProxySettings: coreClient.CompositeMapper = { - serializedName: "ExplicitProxySettings", type: { name: "Composite", className: "ExplicitProxySettings", @@ -4432,6 +4457,17 @@ export const FirewallPolicyIntrusionDetectionConfiguration: coreClient.Composite } } } + }, + privateRanges: { + serializedName: "privateRanges", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } } } } @@ -4821,19 +4857,22 @@ export const SingleQueryResult: coreClient.CompositeMapper = { mode: { serializedName: "mode", type: { - name: "Number" + name: "Enum", + allowedValues: [0, 1, 2] } }, severity: { serializedName: "severity", type: { - name: "Number" + name: "Enum", + allowedValues: [1, 2, 3] } }, direction: { serializedName: "direction", type: { - name: "Number" + name: "Enum", + allowedValues: [0, 1, 2] } }, group: { @@ -11477,6 +11516,29 @@ export const TunnelConnectionHealth: coreClient.CompositeMapper = { } }; +export const GatewayCustomBgpIpAddressIpConfiguration: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GatewayCustomBgpIpAddressIpConfiguration", + modelProperties: { + ipConfigurationId: { + serializedName: "ipConfigurationId", + required: true, + type: { + name: "String" + } + }, + customBgpIpAddress: { + serializedName: "customBgpIpAddress", + required: true, + type: { + name: "String" + } + } + } + } +}; + export const TrafficSelectorPolicy: coreClient.CompositeMapper = { type: { name: "Composite", @@ -12665,6 +12727,33 @@ export const StaticRoute: coreClient.CompositeMapper = { } }; +export const VpnServerConfigurationPolicyGroupMember: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VpnServerConfigurationPolicyGroupMember", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + attributeType: { + serializedName: "attributeType", + type: { + name: "String" + } + }, + attributeValue: { + serializedName: "attributeValue", + type: { + name: "String" + } + } + } + } +}; + export const VpnClientConnectionHealth: coreClient.CompositeMapper = { type: { name: "Composite", @@ -12732,6 +12821,33 @@ export const ListVpnServerConfigurationsResult: coreClient.CompositeMapper = { } }; +export const ListVpnServerConfigurationPolicyGroupsResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ListVpnServerConfigurationPolicyGroupsResult", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VpnServerConfigurationPolicyGroup" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const VirtualHubRouteTable: coreClient.CompositeMapper = { type: { name: "Composite", @@ -14745,6 +14861,12 @@ export const ApplicationGatewayProbe: coreClient.CompositeMapper = { name: "Boolean" } }, + pickHostNameFromBackendSettings: { + serializedName: "properties.pickHostNameFromBackendSettings", + type: { + name: "Boolean" + } + }, minServers: { serializedName: "properties.minServers", type: { @@ -16049,6 +16171,12 @@ export const BackendAddressPool: coreClient.CompositeMapper = { type: { name: "String" } + }, + drainPeriodInSeconds: { + serializedName: "properties.drainPeriodInSeconds", + type: { + name: "Number" + } } } } @@ -16500,6 +16628,92 @@ export const ApplicationGatewayBackendHttpSettings: coreClient.CompositeMapper = } }; +export const ApplicationGatewayBackendSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicationGatewayBackendSettings", + modelProperties: { + ...SubResource.type.modelProperties, + name: { + serializedName: "name", + type: { + name: "String" + } + }, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + port: { + serializedName: "properties.port", + type: { + name: "Number" + } + }, + protocol: { + serializedName: "properties.protocol", + type: { + name: "String" + } + }, + timeout: { + serializedName: "properties.timeout", + type: { + name: "Number" + } + }, + probe: { + serializedName: "properties.probe", + type: { + name: "Composite", + className: "SubResource" + } + }, + trustedRootCertificates: { + serializedName: "properties.trustedRootCertificates", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SubResource" + } + } + } + }, + hostName: { + serializedName: "properties.hostName", + type: { + name: "String" + } + }, + pickHostNameFromBackendAddress: { + serializedName: "properties.pickHostNameFromBackendAddress", + type: { + name: "Boolean" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + export const ApplicationGatewayHttpListener: coreClient.CompositeMapper = { type: { name: "Composite", @@ -16613,10 +16827,10 @@ export const ApplicationGatewayHttpListener: coreClient.CompositeMapper = { } }; -export const ApplicationGatewaySslProfile: coreClient.CompositeMapper = { +export const ApplicationGatewayListener: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ApplicationGatewaySslProfile", + className: "ApplicationGatewayListener", modelProperties: { ...SubResource.type.modelProperties, name: { @@ -16639,30 +16853,38 @@ export const ApplicationGatewaySslProfile: coreClient.CompositeMapper = { name: "String" } }, - trustedClientCertificates: { - serializedName: "properties.trustedClientCertificates", + frontendIPConfiguration: { + serializedName: "properties.frontendIPConfiguration", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SubResource" - } - } + name: "Composite", + className: "SubResource" } }, - sslPolicy: { - serializedName: "properties.sslPolicy", + frontendPort: { + serializedName: "properties.frontendPort", type: { name: "Composite", - className: "ApplicationGatewaySslPolicy" + className: "SubResource" } }, - clientAuthConfiguration: { - serializedName: "properties.clientAuthConfiguration", + protocol: { + serializedName: "properties.protocol", + type: { + name: "String" + } + }, + sslCertificate: { + serializedName: "properties.sslCertificate", type: { name: "Composite", - className: "ApplicationGatewayClientAuthConfiguration" + className: "SubResource" + } + }, + sslProfile: { + serializedName: "properties.sslProfile", + type: { + name: "Composite", + className: "SubResource" } }, provisioningState: { @@ -16676,10 +16898,10 @@ export const ApplicationGatewaySslProfile: coreClient.CompositeMapper = { } }; -export const ApplicationGatewayPathRule: coreClient.CompositeMapper = { +export const ApplicationGatewaySslProfile: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ApplicationGatewayPathRule", + className: "ApplicationGatewaySslProfile", modelProperties: { ...SubResource.type.modelProperties, name: { @@ -16702,20 +16924,83 @@ export const ApplicationGatewayPathRule: coreClient.CompositeMapper = { name: "String" } }, - paths: { - serializedName: "properties.paths", + trustedClientCertificates: { + serializedName: "properties.trustedClientCertificates", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "SubResource" } } } }, - backendAddressPool: { - serializedName: "properties.backendAddressPool", - type: { + sslPolicy: { + serializedName: "properties.sslPolicy", + type: { + name: "Composite", + className: "ApplicationGatewaySslPolicy" + } + }, + clientAuthConfiguration: { + serializedName: "properties.clientAuthConfiguration", + type: { + name: "Composite", + className: "ApplicationGatewayClientAuthConfiguration" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const ApplicationGatewayPathRule: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicationGatewayPathRule", + modelProperties: { + ...SubResource.type.modelProperties, + name: { + serializedName: "name", + type: { + name: "String" + } + }, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + paths: { + serializedName: "properties.paths", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + backendAddressPool: { + serializedName: "properties.backendAddressPool", + type: { name: "Composite", className: "SubResource" } @@ -16952,6 +17237,70 @@ export const ApplicationGatewayRequestRoutingRule: coreClient.CompositeMapper = } }; +export const ApplicationGatewayRoutingRule: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApplicationGatewayRoutingRule", + modelProperties: { + ...SubResource.type.modelProperties, + name: { + serializedName: "name", + type: { + name: "String" + } + }, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + ruleType: { + serializedName: "properties.ruleType", + type: { + name: "String" + } + }, + backendAddressPool: { + serializedName: "properties.backendAddressPool", + type: { + name: "Composite", + className: "SubResource" + } + }, + backendSettings: { + serializedName: "properties.backendSettings", + type: { + name: "Composite", + className: "SubResource" + } + }, + listener: { + serializedName: "properties.listener", + type: { + name: "Composite", + className: "SubResource" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + export const ApplicationGatewayRewriteRuleSet: coreClient.CompositeMapper = { type: { name: "Composite", @@ -18349,6 +18698,64 @@ export const ExpressRouteLink: coreClient.CompositeMapper = { } }; +export const ExpressRoutePortAuthorization: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ExpressRoutePortAuthorization", + modelProperties: { + ...SubResource.type.modelProperties, + name: { + serializedName: "name", + type: { + name: "String" + } + }, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + authorizationKey: { + serializedName: "properties.authorizationKey", + readOnly: true, + type: { + name: "String" + } + }, + authorizationUseStatus: { + serializedName: "properties.authorizationUseStatus", + readOnly: true, + type: { + name: "String" + } + }, + circuitResourceUri: { + serializedName: "properties.circuitResourceUri", + readOnly: true, + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + export const FirewallPolicyRuleCollectionGroup: coreClient.CompositeMapper = { type: { name: "Composite", @@ -19569,6 +19976,80 @@ export const VpnSiteLink: coreClient.CompositeMapper = { } }; +export const VpnServerConfigurationPolicyGroup: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VpnServerConfigurationPolicyGroup", + modelProperties: { + ...SubResource.type.modelProperties, + etag: { + serializedName: "etag", + readOnly: true, + type: { + name: "String" + } + }, + name: { + serializedName: "name", + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + isDefault: { + serializedName: "properties.isDefault", + type: { + name: "Boolean" + } + }, + priority: { + serializedName: "properties.priority", + type: { + name: "Number" + } + }, + policyMembers: { + serializedName: "properties.policyMembers", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VpnServerConfigurationPolicyGroupMember" + } + } + } + }, + p2SConnectionConfigurations: { + serializedName: "properties.p2SConnectionConfigurations", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SubResource" + } + } + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + export const P2SConnectionConfiguration: coreClient.CompositeMapper = { type: { name: "Composite", @@ -19608,6 +20089,33 @@ export const P2SConnectionConfiguration: coreClient.CompositeMapper = { name: "Boolean" } }, + configurationPolicyGroupAssociations: { + serializedName: "properties.configurationPolicyGroupAssociations", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SubResource" + } + } + } + }, + previousConfigurationPolicyGroupAssociations: { + serializedName: + "properties.previousConfigurationPolicyGroupAssociations", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VpnServerConfigurationPolicyGroup" + } + } + } + }, provisioningState: { serializedName: "properties.provisioningState", readOnly: true, @@ -19824,6 +20332,18 @@ export const VpnSiteLinkConnection: coreClient.CompositeMapper = { name: "Boolean" } }, + vpnGatewayCustomBgpAddresses: { + serializedName: "properties.vpnGatewayCustomBgpAddresses", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "GatewayCustomBgpIpAddressIpConfiguration" + } + } + } + }, usePolicyBasedTrafficSelectors: { serializedName: "properties.usePolicyBasedTrafficSelectors", type: { @@ -21047,6 +21567,12 @@ export const NetworkInterface: coreClient.CompositeMapper = { type: { name: "String" } + }, + auxiliaryMode: { + serializedName: "properties.auxiliaryMode", + type: { + name: "String" + } } } } @@ -21841,6 +22367,18 @@ export const ApplicationGateway: coreClient.CompositeMapper = { } } }, + backendSettingsCollection: { + serializedName: "properties.backendSettingsCollection", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ApplicationGatewayBackendSettings" + } + } + } + }, httpListeners: { serializedName: "properties.httpListeners", type: { @@ -21853,6 +22391,18 @@ export const ApplicationGateway: coreClient.CompositeMapper = { } } }, + listeners: { + serializedName: "properties.listeners", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ApplicationGatewayListener" + } + } + } + }, sslProfiles: { serializedName: "properties.sslProfiles", type: { @@ -21889,6 +22439,18 @@ export const ApplicationGateway: coreClient.CompositeMapper = { } } }, + routingRules: { + serializedName: "properties.routingRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ApplicationGatewayRoutingRule" + } + } + } + }, rewriteRuleSets: { serializedName: "properties.rewriteRuleSets", type: { @@ -22812,6 +23374,12 @@ export const ExpressRouteCircuit: coreClient.CompositeMapper = { type: { name: "Boolean" } + }, + authorizationKey: { + serializedName: "properties.authorizationKey", + type: { + name: "String" + } } } } @@ -24451,6 +25019,18 @@ export const VirtualNetworkGatewayConnectionListEntity: coreClient.CompositeMapp name: "Boolean" } }, + gatewayCustomBgpIpAddresses: { + serializedName: "properties.gatewayCustomBgpIpAddresses", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "GatewayCustomBgpIpAddressIpConfiguration" + } + } + } + }, usePolicyBasedTrafficSelectors: { serializedName: "properties.usePolicyBasedTrafficSelectors", type: { @@ -24710,6 +25290,18 @@ export const VirtualNetworkGatewayConnection: coreClient.CompositeMapper = { name: "Boolean" } }, + gatewayCustomBgpIpAddresses: { + serializedName: "properties.gatewayCustomBgpIpAddresses", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "GatewayCustomBgpIpAddressIpConfiguration" + } + } + } + }, useLocalAzureIpAddress: { serializedName: "properties.useLocalAzureIpAddress", type: { @@ -25244,6 +25836,18 @@ export const VpnServerConfiguration: coreClient.CompositeMapper = { } } }, + configurationPolicyGroups: { + serializedName: "properties.configurationPolicyGroups", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VpnServerConfigurationPolicyGroup" + } + } + } + }, etagPropertiesEtag: { serializedName: "properties.etag", readOnly: true, @@ -25426,6 +26030,12 @@ export const VirtualHub: coreClient.CompositeMapper = { type: { name: "String" } + }, + hubRoutingPreference: { + serializedName: "properties.hubRoutingPreference", + type: { + name: "String" + } } } } @@ -25546,7 +26156,6 @@ export const ExpressRouteGateway: coreClient.CompositeMapper = { }, expressRouteConnections: { serializedName: "properties.expressRouteConnections", - readOnly: true, type: { name: "Sequence", element: { diff --git a/sdk/network/arm-network/src/models/parameters.ts b/sdk/network/arm-network/src/models/parameters.ts index 4f81f563b0d9..a3603e3291f1 100644 --- a/sdk/network/arm-network/src/models/parameters.ts +++ b/sdk/network/arm-network/src/models/parameters.ts @@ -36,6 +36,7 @@ import { ExpressRouteCrossConnectionPeering as ExpressRouteCrossConnectionPeeringMapper, ExpressRoutePort as ExpressRoutePortMapper, GenerateExpressRoutePortsLOARequest as GenerateExpressRoutePortsLOARequestMapper, + ExpressRoutePortAuthorization as ExpressRoutePortAuthorizationMapper, FirewallPolicy as FirewallPolicyMapper, FirewallPolicyRuleCollectionGroup as FirewallPolicyRuleCollectionGroupMapper, IdpsQueryObject as IdpsQueryObjectMapper, @@ -109,6 +110,7 @@ import { VpnSite as VpnSiteMapper, GetVpnSitesConfigurationRequest as GetVpnSitesConfigurationRequestMapper, VpnServerConfiguration as VpnServerConfigurationMapper, + VpnServerConfigurationPolicyGroup as VpnServerConfigurationPolicyGroupMapper, VirtualHub as VirtualHubMapper, EffectiveRoutesParameters as EffectiveRoutesParametersMapper, HubVirtualNetworkConnection as HubVirtualNetworkConnectionMapper, @@ -181,7 +183,7 @@ export const applicationGatewayName: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2021-05-01", + defaultValue: "2021-08-01", isConstant: true, serializedName: "api-version", type: { @@ -459,18 +461,6 @@ export const virtualmachineIndex: OperationURLParameter = { } }; -export const apiVersion1: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2018-10-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String" - } - } -}; - export const ipConfigurationName: OperationURLParameter = { parameterPath: "ipConfigurationName", mapper: { @@ -695,6 +685,11 @@ export const linkName: OperationURLParameter = { } }; +export const authorizationParameters1: OperationParameter = { + parameterPath: "authorizationParameters", + mapper: ExpressRoutePortAuthorizationMapper +}; + export const firewallPolicyName: OperationURLParameter = { parameterPath: "firewallPolicyName", mapper: { @@ -1751,6 +1746,22 @@ export const vpnServerConfigurationParameters1: OperationParameter = { mapper: TagsObjectMapper }; +export const vpnServerConfigurationPolicyGroupParameters: OperationParameter = { + parameterPath: "vpnServerConfigurationPolicyGroupParameters", + mapper: VpnServerConfigurationPolicyGroupMapper +}; + +export const configurationPolicyGroupName: OperationURLParameter = { + parameterPath: "configurationPolicyGroupName", + mapper: { + serializedName: "configurationPolicyGroupName", + required: true, + type: { + name: "String" + } + } +}; + export const virtualHubName: OperationURLParameter = { parameterPath: "virtualHubName", mapper: { diff --git a/sdk/network/arm-network/src/networkManagementClient.ts b/sdk/network/arm-network/src/networkManagementClient.ts index 8cf2eef5e9f0..bc65c427ccb8 100644 --- a/sdk/network/arm-network/src/networkManagementClient.ts +++ b/sdk/network/arm-network/src/networkManagementClient.ts @@ -8,6 +8,11 @@ import * as coreClient from "@azure/core-client"; import * as coreRestPipeline from "@azure/core-rest-pipeline"; +import { + PipelineRequest, + PipelineResponse, + SendRequest +} from "@azure/core-rest-pipeline"; import * as coreAuth from "@azure/core-auth"; import { PagedAsyncIterableIterator } from "@azure/core-paging"; import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; @@ -42,6 +47,7 @@ import { ExpressRoutePortsLocationsImpl, ExpressRoutePortsImpl, ExpressRouteLinksImpl, + ExpressRoutePortAuthorizationsImpl, FirewallPoliciesImpl, FirewallPolicyRuleCollectionGroupsImpl, FirewallPolicyIdpsSignaturesImpl, @@ -107,6 +113,7 @@ import { VpnSiteLinksImpl, VpnSitesConfigurationImpl, VpnServerConfigurationsImpl, + ConfigurationPolicyGroupsImpl, VirtualHubsImpl, HubVirtualNetworkConnectionsImpl, VpnGatewaysImpl, @@ -156,6 +163,7 @@ import { ExpressRoutePortsLocations, ExpressRoutePorts, ExpressRouteLinks, + ExpressRoutePortAuthorizations, FirewallPolicies, FirewallPolicyRuleCollectionGroups, FirewallPolicyIdpsSignatures, @@ -221,6 +229,7 @@ import { VpnSiteLinks, VpnSitesConfiguration, VpnServerConfigurations, + ConfigurationPolicyGroups, VirtualHubs, HubVirtualNetworkConnections, VpnGateways, @@ -278,6 +287,7 @@ import { /// export class NetworkManagementClient extends coreClient.ServiceClient { $host: string; + apiVersion: string; subscriptionId: string; /** @@ -308,7 +318,7 @@ export class NetworkManagementClient extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-network/27.0.1`; + const packageDetails = `azsdk-js-arm-network/28.0.0`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -355,6 +365,7 @@ export class NetworkManagementClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; + this.apiVersion = options.apiVersion || "2021-08-01"; this.applicationGateways = new ApplicationGatewaysImpl(this); this.applicationGatewayPrivateLinkResources = new ApplicationGatewayPrivateLinkResourcesImpl( this @@ -406,6 +417,9 @@ export class NetworkManagementClient extends coreClient.ServiceClient { this.expressRoutePortsLocations = new ExpressRoutePortsLocationsImpl(this); this.expressRoutePorts = new ExpressRoutePortsImpl(this); this.expressRouteLinks = new ExpressRouteLinksImpl(this); + this.expressRoutePortAuthorizations = new ExpressRoutePortAuthorizationsImpl( + this + ); this.firewallPolicies = new FirewallPoliciesImpl(this); this.firewallPolicyRuleCollectionGroups = new FirewallPolicyRuleCollectionGroupsImpl( this @@ -505,6 +519,7 @@ export class NetworkManagementClient extends coreClient.ServiceClient { this.vpnSiteLinks = new VpnSiteLinksImpl(this); this.vpnSitesConfiguration = new VpnSitesConfigurationImpl(this); this.vpnServerConfigurations = new VpnServerConfigurationsImpl(this); + this.configurationPolicyGroups = new ConfigurationPolicyGroupsImpl(this); this.virtualHubs = new VirtualHubsImpl(this); this.hubVirtualNetworkConnections = new HubVirtualNetworkConnectionsImpl( this @@ -529,6 +544,35 @@ export class NetworkManagementClient extends coreClient.ServiceClient { this.webApplicationFirewallPolicies = new WebApplicationFirewallPoliciesImpl( this ); + this.addCustomApiVersionPolicy(options.apiVersion); + } + + /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */ + private addCustomApiVersionPolicy(apiVersion?: string) { + if (!apiVersion) { + return; + } + const apiVersionPolicy = { + name: "CustomApiVersionPolicy", + async sendRequest( + request: PipelineRequest, + next: SendRequest + ): Promise { + const param = request.url.split("?"); + if (param.length > 1) { + const newParams = param[1].split("&").map((item) => { + if (item.indexOf("api-version") > -1) { + return item.replace(/(?<==).*$/, apiVersion); + } else { + return item; + } + }); + request.url = param[0] + "?" + newParams.join("&"); + } + return next(request); + } + }; + this.pipeline.addPolicy(apiVersionPolicy); } /** @@ -1358,6 +1402,7 @@ export class NetworkManagementClient extends coreClient.ServiceClient { expressRoutePortsLocations: ExpressRoutePortsLocations; expressRoutePorts: ExpressRoutePorts; expressRouteLinks: ExpressRouteLinks; + expressRoutePortAuthorizations: ExpressRoutePortAuthorizations; firewallPolicies: FirewallPolicies; firewallPolicyRuleCollectionGroups: FirewallPolicyRuleCollectionGroups; firewallPolicyIdpsSignatures: FirewallPolicyIdpsSignatures; @@ -1423,6 +1468,7 @@ export class NetworkManagementClient extends coreClient.ServiceClient { vpnSiteLinks: VpnSiteLinks; vpnSitesConfiguration: VpnSitesConfiguration; vpnServerConfigurations: VpnServerConfigurations; + configurationPolicyGroups: ConfigurationPolicyGroups; virtualHubs: VirtualHubs; hubVirtualNetworkConnections: HubVirtualNetworkConnections; vpnGateways: VpnGateways; diff --git a/sdk/network/arm-network/src/operations/configurationPolicyGroups.ts b/sdk/network/arm-network/src/operations/configurationPolicyGroups.ts new file mode 100644 index 000000000000..3f9da37845b9 --- /dev/null +++ b/sdk/network/arm-network/src/operations/configurationPolicyGroups.ts @@ -0,0 +1,504 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { ConfigurationPolicyGroups } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { NetworkManagementClient } from "../networkManagementClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + VpnServerConfigurationPolicyGroup, + ConfigurationPolicyGroupsListByVpnServerConfigurationNextOptionalParams, + ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams, + ConfigurationPolicyGroupsCreateOrUpdateOptionalParams, + ConfigurationPolicyGroupsCreateOrUpdateResponse, + ConfigurationPolicyGroupsDeleteOptionalParams, + ConfigurationPolicyGroupsGetOptionalParams, + ConfigurationPolicyGroupsGetResponse, + ConfigurationPolicyGroupsListByVpnServerConfigurationResponse, + ConfigurationPolicyGroupsListByVpnServerConfigurationNextResponse +} from "../models"; + +/// +/** Class containing ConfigurationPolicyGroups operations. */ +export class ConfigurationPolicyGroupsImpl + implements ConfigurationPolicyGroups { + private readonly client: NetworkManagementClient; + + /** + * Initialize a new instance of the class ConfigurationPolicyGroups class. + * @param client Reference to the service client + */ + constructor(client: NetworkManagementClient) { + this.client = client; + } + + /** + * Lists all the configurationPolicyGroups in a resource group for a vpnServerConfiguration. + * @param resourceGroupName The resource group name of the VpnServerConfiguration. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param options The options parameters. + */ + public listByVpnServerConfiguration( + resourceGroupName: string, + vpnServerConfigurationName: string, + options?: ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByVpnServerConfigurationPagingAll( + resourceGroupName, + vpnServerConfigurationName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listByVpnServerConfigurationPagingPage( + resourceGroupName, + vpnServerConfigurationName, + options + ); + } + }; + } + + private async *listByVpnServerConfigurationPagingPage( + resourceGroupName: string, + vpnServerConfigurationName: string, + options?: ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams + ): AsyncIterableIterator { + let result = await this._listByVpnServerConfiguration( + resourceGroupName, + vpnServerConfigurationName, + options + ); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listByVpnServerConfigurationNext( + resourceGroupName, + vpnServerConfigurationName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listByVpnServerConfigurationPagingAll( + resourceGroupName: string, + vpnServerConfigurationName: string, + options?: ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByVpnServerConfigurationPagingPage( + resourceGroupName, + vpnServerConfigurationName, + options + )) { + yield* page; + } + } + + /** + * Creates a ConfigurationPolicyGroup if it doesn't exist else updates the existing one. + * @param resourceGroupName The resource group name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationPolicyGroupParameters Parameters supplied to create or update a + * VpnServerConfiguration PolicyGroup. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + vpnServerConfigurationPolicyGroupParameters: VpnServerConfigurationPolicyGroup, + options?: ConfigurationPolicyGroupsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ConfigurationPolicyGroupsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + vpnServerConfigurationName, + configurationPolicyGroupName, + vpnServerConfigurationPolicyGroupParameters, + options + }, + createOrUpdateOperationSpec + ); + const poller = new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Creates a ConfigurationPolicyGroup if it doesn't exist else updates the existing one. + * @param resourceGroupName The resource group name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationPolicyGroupParameters Parameters supplied to create or update a + * VpnServerConfiguration PolicyGroup. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + vpnServerConfigurationPolicyGroupParameters: VpnServerConfigurationPolicyGroup, + options?: ConfigurationPolicyGroupsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + vpnServerConfigurationName, + configurationPolicyGroupName, + vpnServerConfigurationPolicyGroupParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Deletes a ConfigurationPolicyGroup. + * @param resourceGroupName The resource group name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + options?: ConfigurationPolicyGroupsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + vpnServerConfigurationName, + configurationPolicyGroupName, + options + }, + deleteOperationSpec + ); + const poller = new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Deletes a ConfigurationPolicyGroup. + * @param resourceGroupName The resource group name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + options?: ConfigurationPolicyGroupsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + vpnServerConfigurationName, + configurationPolicyGroupName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Retrieves the details of a ConfigurationPolicyGroup. + * @param resourceGroupName The resource group name of the VpnServerConfiguration. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup being retrieved. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + options?: ConfigurationPolicyGroupsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + vpnServerConfigurationName, + configurationPolicyGroupName, + options + }, + getOperationSpec + ); + } + + /** + * Lists all the configurationPolicyGroups in a resource group for a vpnServerConfiguration. + * @param resourceGroupName The resource group name of the VpnServerConfiguration. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param options The options parameters. + */ + private _listByVpnServerConfiguration( + resourceGroupName: string, + vpnServerConfigurationName: string, + options?: ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, vpnServerConfigurationName, options }, + listByVpnServerConfigurationOperationSpec + ); + } + + /** + * ListByVpnServerConfigurationNext + * @param resourceGroupName The resource group name of the VpnServerConfiguration. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param nextLink The nextLink from the previous successful call to the ListByVpnServerConfiguration + * method. + * @param options The options parameters. + */ + private _listByVpnServerConfigurationNext( + resourceGroupName: string, + vpnServerConfigurationName: string, + nextLink: string, + options?: ConfigurationPolicyGroupsListByVpnServerConfigurationNextOptionalParams + ): Promise< + ConfigurationPolicyGroupsListByVpnServerConfigurationNextResponse + > { + return this.client.sendOperationRequest( + { resourceGroupName, vpnServerConfigurationName, nextLink, options }, + listByVpnServerConfigurationNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}/configurationPolicyGroups/{configurationPolicyGroupName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.VpnServerConfigurationPolicyGroup + }, + 201: { + bodyMapper: Mappers.VpnServerConfigurationPolicyGroup + }, + 202: { + bodyMapper: Mappers.VpnServerConfigurationPolicyGroup + }, + 204: { + bodyMapper: Mappers.VpnServerConfigurationPolicyGroup + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.vpnServerConfigurationPolicyGroupParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.vpnServerConfigurationName, + Parameters.configurationPolicyGroupName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}/configurationPolicyGroups/{configurationPolicyGroupName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.vpnServerConfigurationName, + Parameters.configurationPolicyGroupName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}/configurationPolicyGroups/{configurationPolicyGroupName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.VpnServerConfigurationPolicyGroup + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.vpnServerConfigurationName, + Parameters.configurationPolicyGroupName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByVpnServerConfigurationOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/vpnServerConfigurations/{vpnServerConfigurationName}/configurationPolicyGroups", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ListVpnServerConfigurationPolicyGroupsResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.vpnServerConfigurationName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByVpnServerConfigurationNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ListVpnServerConfigurationPolicyGroupsResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.vpnServerConfigurationName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/network/arm-network/src/operations/expressRoutePortAuthorizations.ts b/sdk/network/arm-network/src/operations/expressRoutePortAuthorizations.ts new file mode 100644 index 000000000000..902f6095c46b --- /dev/null +++ b/sdk/network/arm-network/src/operations/expressRoutePortAuthorizations.ts @@ -0,0 +1,491 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { ExpressRoutePortAuthorizations } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { NetworkManagementClient } from "../networkManagementClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + ExpressRoutePortAuthorization, + ExpressRoutePortAuthorizationsListNextOptionalParams, + ExpressRoutePortAuthorizationsListOptionalParams, + ExpressRoutePortAuthorizationsDeleteOptionalParams, + ExpressRoutePortAuthorizationsGetOptionalParams, + ExpressRoutePortAuthorizationsGetResponse, + ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams, + ExpressRoutePortAuthorizationsCreateOrUpdateResponse, + ExpressRoutePortAuthorizationsListResponse, + ExpressRoutePortAuthorizationsListNextResponse +} from "../models"; + +/// +/** Class containing ExpressRoutePortAuthorizations operations. */ +export class ExpressRoutePortAuthorizationsImpl + implements ExpressRoutePortAuthorizations { + private readonly client: NetworkManagementClient; + + /** + * Initialize a new instance of the class ExpressRoutePortAuthorizations class. + * @param client Reference to the service client + */ + constructor(client: NetworkManagementClient) { + this.client = client; + } + + /** + * Gets all authorizations in an express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param options The options parameters. + */ + public list( + resourceGroupName: string, + expressRoutePortName: string, + options?: ExpressRoutePortAuthorizationsListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll( + resourceGroupName, + expressRoutePortName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage( + resourceGroupName, + expressRoutePortName, + options + ); + } + }; + } + + private async *listPagingPage( + resourceGroupName: string, + expressRoutePortName: string, + options?: ExpressRoutePortAuthorizationsListOptionalParams + ): AsyncIterableIterator { + let result = await this._list( + resourceGroupName, + expressRoutePortName, + options + ); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( + resourceGroupName, + expressRoutePortName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + resourceGroupName: string, + expressRoutePortName: string, + options?: ExpressRoutePortAuthorizationsListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + resourceGroupName, + expressRoutePortName, + options + )) { + yield* page; + } + } + + /** + * Deletes the specified authorization from the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + options?: ExpressRoutePortAuthorizationsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, expressRoutePortName, authorizationName, options }, + deleteOperationSpec + ); + const poller = new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Deletes the specified authorization from the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + options?: ExpressRoutePortAuthorizationsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + expressRoutePortName, + authorizationName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Gets the specified authorization from the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + options?: ExpressRoutePortAuthorizationsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, expressRoutePortName, authorizationName, options }, + getOperationSpec + ); + } + + /** + * Creates or updates an authorization in the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param authorizationParameters Parameters supplied to the create or update express route port + * authorization operation. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + authorizationParameters: ExpressRoutePortAuthorization, + options?: ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ExpressRoutePortAuthorizationsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + expressRoutePortName, + authorizationName, + authorizationParameters, + options + }, + createOrUpdateOperationSpec + ); + const poller = new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + lroResourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Creates or updates an authorization in the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param authorizationParameters Parameters supplied to the create or update express route port + * authorization operation. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + authorizationParameters: ExpressRoutePortAuthorization, + options?: ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + expressRoutePortName, + authorizationName, + authorizationParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Gets all authorizations in an express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param options The options parameters. + */ + private _list( + resourceGroupName: string, + expressRoutePortName: string, + options?: ExpressRoutePortAuthorizationsListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, expressRoutePortName, options }, + listOperationSpec + ); + } + + /** + * ListNext + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + resourceGroupName: string, + expressRoutePortName: string, + nextLink: string, + options?: ExpressRoutePortAuthorizationsListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, expressRoutePortName, nextLink, options }, + listNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRoutePorts/{expressRoutePortName}/authorizations/{authorizationName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.authorizationName, + Parameters.expressRoutePortName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRoutePorts/{expressRoutePortName}/authorizations/{authorizationName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ExpressRoutePortAuthorization + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.authorizationName, + Parameters.expressRoutePortName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRoutePorts/{expressRoutePortName}/authorizations/{authorizationName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.ExpressRoutePortAuthorization + }, + 201: { + bodyMapper: Mappers.ExpressRoutePortAuthorization + }, + 202: { + bodyMapper: Mappers.ExpressRoutePortAuthorization + }, + 204: { + bodyMapper: Mappers.ExpressRoutePortAuthorization + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.authorizationParameters1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.authorizationName, + Parameters.expressRoutePortName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/expressRoutePorts/{expressRoutePortName}/authorizations", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ExpressRoutePortAuthorizationListResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.expressRoutePortName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ExpressRoutePortAuthorizationListResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.expressRoutePortName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/network/arm-network/src/operations/firewallPolicies.ts b/sdk/network/arm-network/src/operations/firewallPolicies.ts index 001b3f8763a1..22a03fc74877 100644 --- a/sdk/network/arm-network/src/operations/firewallPolicies.ts +++ b/sdk/network/arm-network/src/operations/firewallPolicies.ts @@ -25,6 +25,9 @@ import { FirewallPoliciesGetResponse, FirewallPoliciesCreateOrUpdateOptionalParams, FirewallPoliciesCreateOrUpdateResponse, + TagsObject, + FirewallPoliciesUpdateTagsOptionalParams, + FirewallPoliciesUpdateTagsResponse, FirewallPoliciesListResponse, FirewallPoliciesListAllResponse, FirewallPoliciesListNextResponse, @@ -329,6 +332,25 @@ export class FirewallPoliciesImpl implements FirewallPolicies { return poller.pollUntilDone(); } + /** + * Updates tags of a Azure Firewall Policy resource. + * @param resourceGroupName The name of the resource group. + * @param firewallPolicyName The name of the Firewall Policy. + * @param parameters Parameters supplied to update Azure Firewall Policy tags. + * @param options The options parameters. + */ + updateTags( + resourceGroupName: string, + firewallPolicyName: string, + parameters: TagsObject, + options?: FirewallPoliciesUpdateTagsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, firewallPolicyName, parameters, options }, + updateTagsOperationSpec + ); + } + /** * Lists all Firewall Policies in a resource group. * @param resourceGroupName The name of the resource group. @@ -467,6 +489,30 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer }; +const updateTagsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies/{firewallPolicyName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.FirewallPolicy + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.parameters1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.firewallPolicyName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; const listOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/firewallPolicies", diff --git a/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignatures.ts b/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignatures.ts index 75812bc4d274..1fd4d65faf52 100644 --- a/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignatures.ts +++ b/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignatures.ts @@ -65,6 +65,7 @@ const listOperationSpec: coreClient.OperationSpec = { } }, requestBody: Parameters.parameters17, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, diff --git a/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignaturesFilterValues.ts b/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignaturesFilterValues.ts index 22d5a1701935..177f613e982a 100644 --- a/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignaturesFilterValues.ts +++ b/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignaturesFilterValues.ts @@ -65,6 +65,7 @@ const listOperationSpec: coreClient.OperationSpec = { } }, requestBody: Parameters.parameters19, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, diff --git a/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignaturesOverrides.ts b/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignaturesOverrides.ts index 546dedf4893a..3b54c928ae02 100644 --- a/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignaturesOverrides.ts +++ b/sdk/network/arm-network/src/operations/firewallPolicyIdpsSignaturesOverrides.ts @@ -124,6 +124,7 @@ const patchOperationSpec: coreClient.OperationSpec = { } }, requestBody: Parameters.parameters18, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -147,6 +148,7 @@ const putOperationSpec: coreClient.OperationSpec = { } }, requestBody: Parameters.parameters18, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -169,6 +171,7 @@ const getOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -190,6 +193,7 @@ const listOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.CloudError } }, + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, diff --git a/sdk/network/arm-network/src/operations/index.ts b/sdk/network/arm-network/src/operations/index.ts index 19e1496111f9..75a18887f6c2 100644 --- a/sdk/network/arm-network/src/operations/index.ts +++ b/sdk/network/arm-network/src/operations/index.ts @@ -35,6 +35,7 @@ export * from "./expressRouteCrossConnectionPeerings"; export * from "./expressRoutePortsLocations"; export * from "./expressRoutePorts"; export * from "./expressRouteLinks"; +export * from "./expressRoutePortAuthorizations"; export * from "./firewallPolicies"; export * from "./firewallPolicyRuleCollectionGroups"; export * from "./firewallPolicyIdpsSignatures"; @@ -100,6 +101,7 @@ export * from "./vpnSites"; export * from "./vpnSiteLinks"; export * from "./vpnSitesConfiguration"; export * from "./vpnServerConfigurations"; +export * from "./configurationPolicyGroups"; export * from "./virtualHubs"; export * from "./hubVirtualNetworkConnections"; export * from "./vpnGateways"; diff --git a/sdk/network/arm-network/src/operations/networkInterfaces.ts b/sdk/network/arm-network/src/operations/networkInterfaces.ts index fe05626965dc..6ff0e34ae7ea 100644 --- a/sdk/network/arm-network/src/operations/networkInterfaces.ts +++ b/sdk/network/arm-network/src/operations/networkInterfaces.ts @@ -1629,7 +1629,7 @@ const listVirtualMachineScaleSetVMNetworkInterfacesOperationSpec: coreClient.Ope bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1652,7 +1652,7 @@ const listVirtualMachineScaleSetNetworkInterfacesOperationSpec: coreClient.Opera bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1674,7 +1674,7 @@ const getVirtualMachineScaleSetNetworkInterfaceOperationSpec: coreClient.Operati bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.expand, Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion, Parameters.expand], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1698,7 +1698,7 @@ const listVirtualMachineScaleSetIpConfigurationsOperationSpec: coreClient.Operat bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.expand, Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion, Parameters.expand], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1722,7 +1722,7 @@ const getVirtualMachineScaleSetIpConfigurationOperationSpec: coreClient.Operatio bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.expand, Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion, Parameters.expand], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1832,7 +1832,7 @@ const listVirtualMachineScaleSetVMNetworkInterfacesNextOperationSpec: coreClient bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1855,7 +1855,7 @@ const listVirtualMachineScaleSetNetworkInterfacesNextOperationSpec: coreClient.O bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1877,7 +1877,7 @@ const listVirtualMachineScaleSetIpConfigurationsNextOperationSpec: coreClient.Op bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.expand, Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion, Parameters.expand], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, diff --git a/sdk/network/arm-network/src/operations/publicIPAddresses.ts b/sdk/network/arm-network/src/operations/publicIPAddresses.ts index 57b6cb10a861..8e4bac6fec69 100644 --- a/sdk/network/arm-network/src/operations/publicIPAddresses.ts +++ b/sdk/network/arm-network/src/operations/publicIPAddresses.ts @@ -1280,7 +1280,7 @@ const listVirtualMachineScaleSetPublicIPAddressesOperationSpec: coreClient.Opera bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1302,7 +1302,7 @@ const listVirtualMachineScaleSetVMPublicIPAddressesOperationSpec: coreClient.Ope bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1327,7 +1327,7 @@ const getVirtualMachineScaleSetPublicIPAddressOperationSpec: coreClient.Operatio bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.expand, Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion, Parameters.expand], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1440,7 +1440,7 @@ const listVirtualMachineScaleSetPublicIPAddressesNextOperationSpec: coreClient.O bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, @@ -1462,7 +1462,7 @@ const listVirtualMachineScaleSetVMPublicIPAddressesNextOperationSpec: coreClient bodyMapper: Mappers.CloudError } }, - queryParameters: [Parameters.apiVersion1], + queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, Parameters.resourceGroupName, diff --git a/sdk/network/arm-network/src/operationsInterfaces/configurationPolicyGroups.ts b/sdk/network/arm-network/src/operationsInterfaces/configurationPolicyGroups.ts new file mode 100644 index 000000000000..537b4a9e71fe --- /dev/null +++ b/sdk/network/arm-network/src/operationsInterfaces/configurationPolicyGroups.ts @@ -0,0 +1,111 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + VpnServerConfigurationPolicyGroup, + ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams, + ConfigurationPolicyGroupsCreateOrUpdateOptionalParams, + ConfigurationPolicyGroupsCreateOrUpdateResponse, + ConfigurationPolicyGroupsDeleteOptionalParams, + ConfigurationPolicyGroupsGetOptionalParams, + ConfigurationPolicyGroupsGetResponse +} from "../models"; + +/// +/** Interface representing a ConfigurationPolicyGroups. */ +export interface ConfigurationPolicyGroups { + /** + * Lists all the configurationPolicyGroups in a resource group for a vpnServerConfiguration. + * @param resourceGroupName The resource group name of the VpnServerConfiguration. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param options The options parameters. + */ + listByVpnServerConfiguration( + resourceGroupName: string, + vpnServerConfigurationName: string, + options?: ConfigurationPolicyGroupsListByVpnServerConfigurationOptionalParams + ): PagedAsyncIterableIterator; + /** + * Creates a ConfigurationPolicyGroup if it doesn't exist else updates the existing one. + * @param resourceGroupName The resource group name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationPolicyGroupParameters Parameters supplied to create or update a + * VpnServerConfiguration PolicyGroup. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + vpnServerConfigurationPolicyGroupParameters: VpnServerConfigurationPolicyGroup, + options?: ConfigurationPolicyGroupsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ConfigurationPolicyGroupsCreateOrUpdateResponse + > + >; + /** + * Creates a ConfigurationPolicyGroup if it doesn't exist else updates the existing one. + * @param resourceGroupName The resource group name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationPolicyGroupParameters Parameters supplied to create or update a + * VpnServerConfiguration PolicyGroup. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + vpnServerConfigurationPolicyGroupParameters: VpnServerConfigurationPolicyGroup, + options?: ConfigurationPolicyGroupsCreateOrUpdateOptionalParams + ): Promise; + /** + * Deletes a ConfigurationPolicyGroup. + * @param resourceGroupName The resource group name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + options?: ConfigurationPolicyGroupsDeleteOptionalParams + ): Promise, void>>; + /** + * Deletes a ConfigurationPolicyGroup. + * @param resourceGroupName The resource group name of the ConfigurationPolicyGroup. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + options?: ConfigurationPolicyGroupsDeleteOptionalParams + ): Promise; + /** + * Retrieves the details of a ConfigurationPolicyGroup. + * @param resourceGroupName The resource group name of the VpnServerConfiguration. + * @param vpnServerConfigurationName The name of the VpnServerConfiguration. + * @param configurationPolicyGroupName The name of the ConfigurationPolicyGroup being retrieved. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + vpnServerConfigurationName: string, + configurationPolicyGroupName: string, + options?: ConfigurationPolicyGroupsGetOptionalParams + ): Promise; +} diff --git a/sdk/network/arm-network/src/operationsInterfaces/expressRoutePortAuthorizations.ts b/sdk/network/arm-network/src/operationsInterfaces/expressRoutePortAuthorizations.ts new file mode 100644 index 000000000000..fc6032f6ff8e --- /dev/null +++ b/sdk/network/arm-network/src/operationsInterfaces/expressRoutePortAuthorizations.ts @@ -0,0 +1,111 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + ExpressRoutePortAuthorization, + ExpressRoutePortAuthorizationsListOptionalParams, + ExpressRoutePortAuthorizationsDeleteOptionalParams, + ExpressRoutePortAuthorizationsGetOptionalParams, + ExpressRoutePortAuthorizationsGetResponse, + ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams, + ExpressRoutePortAuthorizationsCreateOrUpdateResponse +} from "../models"; + +/// +/** Interface representing a ExpressRoutePortAuthorizations. */ +export interface ExpressRoutePortAuthorizations { + /** + * Gets all authorizations in an express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param options The options parameters. + */ + list( + resourceGroupName: string, + expressRoutePortName: string, + options?: ExpressRoutePortAuthorizationsListOptionalParams + ): PagedAsyncIterableIterator; + /** + * Deletes the specified authorization from the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + options?: ExpressRoutePortAuthorizationsDeleteOptionalParams + ): Promise, void>>; + /** + * Deletes the specified authorization from the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + options?: ExpressRoutePortAuthorizationsDeleteOptionalParams + ): Promise; + /** + * Gets the specified authorization from the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + options?: ExpressRoutePortAuthorizationsGetOptionalParams + ): Promise; + /** + * Creates or updates an authorization in the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param authorizationParameters Parameters supplied to the create or update express route port + * authorization operation. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + authorizationParameters: ExpressRoutePortAuthorization, + options?: ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ExpressRoutePortAuthorizationsCreateOrUpdateResponse + > + >; + /** + * Creates or updates an authorization in the specified express route port. + * @param resourceGroupName The name of the resource group. + * @param expressRoutePortName The name of the express route port. + * @param authorizationName The name of the authorization. + * @param authorizationParameters Parameters supplied to the create or update express route port + * authorization operation. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + expressRoutePortName: string, + authorizationName: string, + authorizationParameters: ExpressRoutePortAuthorization, + options?: ExpressRoutePortAuthorizationsCreateOrUpdateOptionalParams + ): Promise; +} diff --git a/sdk/network/arm-network/src/operationsInterfaces/firewallPolicies.ts b/sdk/network/arm-network/src/operationsInterfaces/firewallPolicies.ts index 0037e047356e..bccb088a47a2 100644 --- a/sdk/network/arm-network/src/operationsInterfaces/firewallPolicies.ts +++ b/sdk/network/arm-network/src/operationsInterfaces/firewallPolicies.ts @@ -16,7 +16,10 @@ import { FirewallPoliciesGetOptionalParams, FirewallPoliciesGetResponse, FirewallPoliciesCreateOrUpdateOptionalParams, - FirewallPoliciesCreateOrUpdateResponse + FirewallPoliciesCreateOrUpdateResponse, + TagsObject, + FirewallPoliciesUpdateTagsOptionalParams, + FirewallPoliciesUpdateTagsResponse } from "../models"; /// @@ -102,4 +105,17 @@ export interface FirewallPolicies { parameters: FirewallPolicy, options?: FirewallPoliciesCreateOrUpdateOptionalParams ): Promise; + /** + * Updates tags of a Azure Firewall Policy resource. + * @param resourceGroupName The name of the resource group. + * @param firewallPolicyName The name of the Firewall Policy. + * @param parameters Parameters supplied to update Azure Firewall Policy tags. + * @param options The options parameters. + */ + updateTags( + resourceGroupName: string, + firewallPolicyName: string, + parameters: TagsObject, + options?: FirewallPoliciesUpdateTagsOptionalParams + ): Promise; } diff --git a/sdk/network/arm-network/src/operationsInterfaces/index.ts b/sdk/network/arm-network/src/operationsInterfaces/index.ts index 19e1496111f9..75a18887f6c2 100644 --- a/sdk/network/arm-network/src/operationsInterfaces/index.ts +++ b/sdk/network/arm-network/src/operationsInterfaces/index.ts @@ -35,6 +35,7 @@ export * from "./expressRouteCrossConnectionPeerings"; export * from "./expressRoutePortsLocations"; export * from "./expressRoutePorts"; export * from "./expressRouteLinks"; +export * from "./expressRoutePortAuthorizations"; export * from "./firewallPolicies"; export * from "./firewallPolicyRuleCollectionGroups"; export * from "./firewallPolicyIdpsSignatures"; @@ -100,6 +101,7 @@ export * from "./vpnSites"; export * from "./vpnSiteLinks"; export * from "./vpnSitesConfiguration"; export * from "./vpnServerConfigurations"; +export * from "./configurationPolicyGroups"; export * from "./virtualHubs"; export * from "./hubVirtualNetworkConnections"; export * from "./vpnGateways"; diff --git a/sdk/network/arm-network/test/sampleTest.ts b/sdk/network/arm-network/test/sampleTest.ts new file mode 100644 index 000000000000..25aeb3ebcc36 --- /dev/null +++ b/sdk/network/arm-network/test/sampleTest.ts @@ -0,0 +1,43 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + Recorder, + RecorderStartOptions, + env +} from "@azure-tools/test-recorder"; +import { assert } from "chai"; +import { Context } from "mocha"; + +const replaceableVariables: Record = { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id" +}; + +const recorderOptions: RecorderStartOptions = { + envSetupForPlayback: replaceableVariables +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async function(this: Context) { + recorder = new Recorder(this.currentTest); + await recorder.start(recorderOptions); + }); + + afterEach(async function() { + await recorder.stop(); + }); + + it("sample test", async function() { + console.log("Hi, I'm a test!"); + }); +}); diff --git a/sdk/network/arm-network/tsconfig.json b/sdk/network/arm-network/tsconfig.json index 094dfbf3dbe3..3e6ae96443f3 100644 --- a/sdk/network/arm-network/tsconfig.json +++ b/sdk/network/arm-network/tsconfig.json @@ -15,17 +15,11 @@ ], "declaration": true, "outDir": "./dist-esm", - "importHelpers": true, - "paths": { - "@azure/arm-network": [ - "./src/index" - ] - } + "importHelpers": true }, "include": [ "./src/**/*.ts", - "./test/**/*.ts", - "samples-dev/**/*.ts" + "./test/**/*.ts" ], "exclude": [ "node_modules"