@azure-rest/arm-network 1.0.0-beta.1 → 1.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/LICENSE +4 -4
- package/README.md +7 -6
- package/dist/browser/clientDefinitions.d.ts +2807 -0
- package/dist/browser/clientDefinitions.d.ts.map +1 -0
- package/dist/browser/clientDefinitions.js +4 -0
- package/dist/browser/clientDefinitions.js.map +1 -0
- package/dist/browser/index.d.ts +12 -0
- package/dist/browser/index.d.ts.map +1 -0
- package/dist/browser/index.js +14 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser/isUnexpected.d.ts +615 -0
- package/dist/browser/isUnexpected.d.ts.map +1 -0
- package/{dist-esm/src → dist/browser}/isUnexpected.js +723 -2425
- package/dist/browser/isUnexpected.js.map +1 -0
- package/dist/browser/logger.d.ts +2 -0
- package/dist/browser/logger.d.ts.map +1 -0
- package/dist/browser/logger.js +5 -0
- package/dist/browser/logger.js.map +1 -0
- package/dist/browser/models.d.ts +5289 -0
- package/dist/browser/models.d.ts.map +1 -0
- package/dist/browser/models.js +4 -0
- package/dist/browser/models.js.map +1 -0
- package/dist/browser/networkManagementClient.d.ts +13 -0
- package/dist/browser/networkManagementClient.d.ts.map +1 -0
- package/dist/browser/networkManagementClient.js +31 -0
- package/dist/browser/networkManagementClient.js.map +1 -0
- package/dist/browser/outputModels.d.ts +8264 -0
- package/dist/browser/outputModels.d.ts.map +1 -0
- package/dist/browser/outputModels.js +4 -0
- package/dist/browser/outputModels.js.map +1 -0
- package/dist/browser/package.json +3 -0
- package/dist/browser/paginateHelper.d.ts +68 -0
- package/dist/browser/paginateHelper.d.ts.map +1 -0
- package/dist/browser/paginateHelper.js +167 -0
- package/dist/browser/paginateHelper.js.map +1 -0
- package/dist/browser/parameters.d.ts +6569 -0
- package/dist/browser/parameters.d.ts.map +1 -0
- package/dist/browser/parameters.js +4 -0
- package/dist/browser/parameters.js.map +1 -0
- package/dist/browser/pollingHelper.d.ts +76 -0
- package/dist/browser/pollingHelper.d.ts.map +1 -0
- package/dist/browser/pollingHelper.js +104 -0
- package/dist/browser/pollingHelper.js.map +1 -0
- package/dist/browser/responses.d.ts +7530 -0
- package/dist/browser/responses.d.ts.map +1 -0
- package/dist/browser/responses.js +4 -0
- package/dist/browser/responses.js.map +1 -0
- package/dist/commonjs/clientDefinitions.d.ts +2807 -0
- package/dist/commonjs/clientDefinitions.d.ts.map +1 -0
- package/dist/commonjs/clientDefinitions.js +5 -0
- package/dist/commonjs/clientDefinitions.js.map +1 -0
- package/dist/commonjs/index.d.ts +12 -0
- package/dist/commonjs/index.d.ts.map +1 -0
- package/dist/commonjs/index.js +17 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/isUnexpected.d.ts +615 -0
- package/dist/commonjs/isUnexpected.d.ts.map +1 -0
- package/dist/{index.js → commonjs/isUnexpected.js} +729 -2578
- package/dist/commonjs/isUnexpected.js.map +1 -0
- package/dist/commonjs/logger.d.ts +2 -0
- package/dist/commonjs/logger.d.ts.map +1 -0
- package/dist/commonjs/logger.js +8 -0
- package/dist/commonjs/logger.js.map +1 -0
- package/dist/commonjs/models.d.ts +5289 -0
- package/dist/commonjs/models.d.ts.map +1 -0
- package/dist/commonjs/models.js +5 -0
- package/dist/commonjs/models.js.map +1 -0
- package/dist/commonjs/networkManagementClient.d.ts +13 -0
- package/dist/commonjs/networkManagementClient.d.ts.map +1 -0
- package/dist/commonjs/networkManagementClient.js +34 -0
- package/dist/commonjs/networkManagementClient.js.map +1 -0
- package/dist/commonjs/outputModels.d.ts +8264 -0
- package/dist/commonjs/outputModels.d.ts.map +1 -0
- package/dist/commonjs/outputModels.js +5 -0
- package/dist/commonjs/outputModels.js.map +1 -0
- package/dist/commonjs/package.json +3 -0
- package/dist/commonjs/paginateHelper.d.ts +68 -0
- package/dist/commonjs/paginateHelper.d.ts.map +1 -0
- package/dist/commonjs/paginateHelper.js +170 -0
- package/dist/commonjs/paginateHelper.js.map +1 -0
- package/dist/commonjs/parameters.d.ts +6569 -0
- package/dist/commonjs/parameters.d.ts.map +1 -0
- package/dist/commonjs/parameters.js +5 -0
- package/dist/commonjs/parameters.js.map +1 -0
- package/dist/commonjs/pollingHelper.d.ts +76 -0
- package/dist/commonjs/pollingHelper.d.ts.map +1 -0
- package/dist/commonjs/pollingHelper.js +107 -0
- package/dist/commonjs/pollingHelper.js.map +1 -0
- package/dist/commonjs/responses.d.ts +7530 -0
- package/dist/commonjs/responses.d.ts.map +1 -0
- package/dist/commonjs/responses.js +5 -0
- package/dist/commonjs/responses.js.map +1 -0
- package/dist/commonjs/tsdoc-metadata.json +11 -0
- package/dist/esm/clientDefinitions.d.ts +2807 -0
- package/dist/esm/clientDefinitions.d.ts.map +1 -0
- package/dist/esm/clientDefinitions.js +4 -0
- package/dist/esm/clientDefinitions.js.map +1 -0
- package/dist/esm/index.d.ts +12 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +14 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/isUnexpected.d.ts +615 -0
- package/dist/esm/isUnexpected.d.ts.map +1 -0
- package/dist/esm/isUnexpected.js +789 -0
- package/dist/esm/isUnexpected.js.map +1 -0
- package/dist/esm/logger.d.ts +2 -0
- package/dist/esm/logger.d.ts.map +1 -0
- package/dist/esm/logger.js +5 -0
- package/dist/esm/logger.js.map +1 -0
- package/dist/esm/models.d.ts +5289 -0
- package/dist/esm/models.d.ts.map +1 -0
- package/dist/esm/models.js +4 -0
- package/dist/esm/models.js.map +1 -0
- package/dist/esm/networkManagementClient.d.ts +13 -0
- package/dist/esm/networkManagementClient.d.ts.map +1 -0
- package/dist/esm/networkManagementClient.js +31 -0
- package/dist/esm/networkManagementClient.js.map +1 -0
- package/dist/esm/outputModels.d.ts +8264 -0
- package/dist/esm/outputModels.d.ts.map +1 -0
- package/dist/esm/outputModels.js +4 -0
- package/dist/esm/outputModels.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/paginateHelper.d.ts +68 -0
- package/dist/esm/paginateHelper.d.ts.map +1 -0
- package/dist/esm/paginateHelper.js +167 -0
- package/dist/esm/paginateHelper.js.map +1 -0
- package/dist/esm/parameters.d.ts +6569 -0
- package/dist/esm/parameters.d.ts.map +1 -0
- package/dist/esm/parameters.js +4 -0
- package/dist/esm/parameters.js.map +1 -0
- package/dist/esm/pollingHelper.d.ts +76 -0
- package/dist/esm/pollingHelper.d.ts.map +1 -0
- package/dist/esm/pollingHelper.js +104 -0
- package/dist/esm/pollingHelper.js.map +1 -0
- package/dist/esm/responses.d.ts +7530 -0
- package/dist/esm/responses.d.ts.map +1 -0
- package/dist/esm/responses.js +4 -0
- package/dist/esm/responses.js.map +1 -0
- package/dist/react-native/clientDefinitions.d.ts +2807 -0
- package/dist/react-native/clientDefinitions.d.ts.map +1 -0
- package/dist/react-native/clientDefinitions.js +4 -0
- package/dist/react-native/clientDefinitions.js.map +1 -0
- package/dist/react-native/index.d.ts +12 -0
- package/dist/react-native/index.d.ts.map +1 -0
- package/dist/react-native/index.js +14 -0
- package/dist/react-native/index.js.map +1 -0
- package/dist/react-native/isUnexpected.d.ts +615 -0
- package/dist/react-native/isUnexpected.d.ts.map +1 -0
- package/dist/react-native/isUnexpected.js +789 -0
- package/dist/react-native/isUnexpected.js.map +1 -0
- package/dist/react-native/logger.d.ts +2 -0
- package/dist/react-native/logger.d.ts.map +1 -0
- package/dist/react-native/logger.js +5 -0
- package/dist/react-native/logger.js.map +1 -0
- package/dist/react-native/models.d.ts +5289 -0
- package/dist/react-native/models.d.ts.map +1 -0
- package/dist/react-native/models.js +4 -0
- package/dist/react-native/models.js.map +1 -0
- package/dist/react-native/networkManagementClient.d.ts +13 -0
- package/dist/react-native/networkManagementClient.d.ts.map +1 -0
- package/dist/react-native/networkManagementClient.js +31 -0
- package/dist/react-native/networkManagementClient.js.map +1 -0
- package/dist/react-native/outputModels.d.ts +8264 -0
- package/dist/react-native/outputModels.d.ts.map +1 -0
- package/dist/react-native/outputModels.js +4 -0
- package/dist/react-native/outputModels.js.map +1 -0
- package/dist/react-native/package.json +3 -0
- package/dist/react-native/paginateHelper.d.ts +68 -0
- package/dist/react-native/paginateHelper.d.ts.map +1 -0
- package/dist/react-native/paginateHelper.js +167 -0
- package/dist/react-native/paginateHelper.js.map +1 -0
- package/dist/react-native/parameters.d.ts +6569 -0
- package/dist/react-native/parameters.d.ts.map +1 -0
- package/dist/react-native/parameters.js +4 -0
- package/dist/react-native/parameters.js.map +1 -0
- package/dist/react-native/pollingHelper.d.ts +76 -0
- package/dist/react-native/pollingHelper.d.ts.map +1 -0
- package/dist/react-native/pollingHelper.js +104 -0
- package/dist/react-native/pollingHelper.js.map +1 -0
- package/dist/react-native/responses.d.ts +7530 -0
- package/dist/react-native/responses.d.ts.map +1 -0
- package/dist/react-native/responses.js +4 -0
- package/dist/react-native/responses.js.map +1 -0
- package/package.json +82 -65
- package/review/arm-network.api.md +876 -2156
- package/dist/index.js.map +0 -1
- package/dist-esm/src/clientDefinitions.js +0 -4
- package/dist-esm/src/clientDefinitions.js.map +0 -1
- package/dist-esm/src/index.js +0 -14
- package/dist-esm/src/index.js.map +0 -1
- package/dist-esm/src/isUnexpected.js.map +0 -1
- package/dist-esm/src/models.js +0 -4
- package/dist-esm/src/models.js.map +0 -1
- package/dist-esm/src/networkManagementClient.js +0 -24
- package/dist-esm/src/networkManagementClient.js.map +0 -1
- package/dist-esm/src/outputModels.js +0 -4
- package/dist-esm/src/outputModels.js.map +0 -1
- package/dist-esm/src/paginateHelper.js +0 -70
- package/dist-esm/src/paginateHelper.js.map +0 -1
- package/dist-esm/src/parameters.js +0 -4
- package/dist-esm/src/parameters.js.map +0 -1
- package/dist-esm/src/pollingHelper.js +0 -48
- package/dist-esm/src/pollingHelper.js.map +0 -1
- package/dist-esm/src/responses.js +0 -4
- package/dist-esm/src/responses.js.map +0 -1
- package/types/arm-network.d.ts +0 -38902
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outputModels.js","sourceRoot":"","sources":["../../src/outputModels.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/** An error response from the service. */\nexport interface CloudErrorOutput {\n /** Cloud error body. */\n error?: CloudErrorBodyOutput;\n}\n\n/** An error response from the service. */\nexport interface CloudErrorBodyOutput {\n /** An identifier for the error. Codes are invariant and are intended to be consumed programmatically. */\n code?: string;\n /** A message describing the error, intended to be suitable for display in a user interface. */\n message?: string;\n /** The target of the particular error. For example, the name of the property in error. */\n target?: string;\n /** A list of additional details about the error. */\n details?: Array<CloudErrorBodyOutput>;\n}\n\n/** Application gateway resource. */\nexport interface ApplicationGatewayOutput extends ResourceOutput {\n /** Properties of the application gateway. */\n properties?: ApplicationGatewayPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** A list of availability zones denoting where the resource needs to come from. */\n zones?: Array<string>;\n /** The identity of the application gateway, if configured. */\n identity?: ManagedServiceIdentityOutput;\n}\n\n/** Properties of the application gateway. */\nexport interface ApplicationGatewayPropertiesFormatOutput {\n /** SKU of the application gateway resource. */\n sku?: ApplicationGatewaySkuOutput;\n /** SSL policy of the application gateway resource. */\n sslPolicy?: ApplicationGatewaySslPolicyOutput;\n /** Operational state of the application gateway resource. */\n readonly operationalState?: \"Stopped\" | \"Starting\" | \"Running\" | \"Stopping\";\n /** Subnets of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */\n gatewayIPConfigurations?: Array<ApplicationGatewayIPConfigurationOutput>;\n /** Authentication certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */\n authenticationCertificates?: Array<ApplicationGatewayAuthenticationCertificateOutput>;\n /** Trusted Root certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */\n trustedRootCertificates?: Array<ApplicationGatewayTrustedRootCertificateOutput>;\n /** Trusted client certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */\n trustedClientCertificates?: Array<ApplicationGatewayTrustedClientCertificateOutput>;\n /** SSL certificates of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */\n sslCertificates?: Array<ApplicationGatewaySslCertificateOutput>;\n /** Frontend IP addresses of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */\n frontendIPConfigurations?: Array<ApplicationGatewayFrontendIPConfigurationOutput>;\n /** Frontend ports of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */\n frontendPorts?: Array<ApplicationGatewayFrontendPortOutput>;\n /** Probes of the application gateway resource. */\n probes?: Array<ApplicationGatewayProbeOutput>;\n /** Backend address pool of the application gateway resource. For default limits, see [Application Gateway limits](https://docs.microsoft.com/azure/azure-subscription-service-limits#application-gateway-limits). */\n backendAddressPools?: Array<ApplicationGatewayBackendAddressPoolOutput>;\n /** 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). */\n backendHttpSettingsCollection?: Array<ApplicationGatewayBackendHttpSettingsOutput>;\n /** 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). */\n backendSettingsCollection?: Array<ApplicationGatewayBackendSettingsOutput>;\n /** 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). */\n httpListeners?: Array<ApplicationGatewayHttpListenerOutput>;\n /** 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). */\n listeners?: Array<ApplicationGatewayListenerOutput>;\n /** 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). */\n sslProfiles?: Array<ApplicationGatewaySslProfileOutput>;\n /** 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). */\n urlPathMaps?: Array<ApplicationGatewayUrlPathMapOutput>;\n /** Request routing rules of the application gateway resource. */\n requestRoutingRules?: Array<ApplicationGatewayRequestRoutingRuleOutput>;\n /** Routing rules of the application gateway resource. */\n routingRules?: Array<ApplicationGatewayRoutingRuleOutput>;\n /** Rewrite rules for the application gateway resource. */\n rewriteRuleSets?: Array<ApplicationGatewayRewriteRuleSetOutput>;\n /** 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). */\n redirectConfigurations?: Array<ApplicationGatewayRedirectConfigurationOutput>;\n /** Web application firewall configuration. */\n webApplicationFirewallConfiguration?: ApplicationGatewayWebApplicationFirewallConfigurationOutput;\n /** Reference to the FirewallPolicy resource. */\n firewallPolicy?: SubResourceOutput;\n /** Whether HTTP2 is enabled on the application gateway resource. */\n enableHttp2?: boolean;\n /** Whether FIPS is enabled on the application gateway resource. */\n enableFips?: boolean;\n /** Autoscale Configuration. */\n autoscaleConfiguration?: ApplicationGatewayAutoscaleConfigurationOutput;\n /** PrivateLink configurations on application gateway. */\n privateLinkConfigurations?: Array<ApplicationGatewayPrivateLinkConfigurationOutput>;\n /** Private Endpoint connections on application gateway. */\n readonly privateEndpointConnections?: Array<ApplicationGatewayPrivateEndpointConnectionOutput>;\n /** The resource GUID property of the application gateway resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the application gateway resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Custom error configurations of the application gateway resource. */\n customErrorConfigurations?: Array<ApplicationGatewayCustomErrorOutput>;\n /** If true, associates a firewall policy with an application gateway regardless whether the policy differs from the WAF Config. */\n forceFirewallPolicyAssociation?: boolean;\n /** Load distribution policies of the application gateway resource. */\n loadDistributionPolicies?: Array<ApplicationGatewayLoadDistributionPolicyOutput>;\n /** Global Configuration. */\n globalConfiguration?: ApplicationGatewayGlobalConfigurationOutput;\n}\n\n/** SKU of an application gateway. */\nexport interface ApplicationGatewaySkuOutput {\n /** Name of an application gateway SKU. */\n name?:\n | \"Standard_Small\"\n | \"Standard_Medium\"\n | \"Standard_Large\"\n | \"WAF_Medium\"\n | \"WAF_Large\"\n | \"Standard_v2\"\n | \"WAF_v2\";\n /** Tier of an application gateway. */\n tier?: \"Standard\" | \"WAF\" | \"Standard_v2\" | \"WAF_v2\";\n /** Capacity (instance count) of an application gateway. */\n capacity?: number;\n}\n\n/** Application Gateway Ssl policy. */\nexport interface ApplicationGatewaySslPolicyOutput {\n /** Ssl protocols to be disabled on application gateway. */\n disabledSslProtocols?: Array<\"TLSv1_0\" | \"TLSv1_1\" | \"TLSv1_2\" | \"TLSv1_3\">;\n /** Type of Ssl Policy. */\n policyType?: \"Predefined\" | \"Custom\" | \"CustomV2\";\n /** Name of Ssl predefined policy. */\n policyName?:\n | \"AppGwSslPolicy20150501\"\n | \"AppGwSslPolicy20170401\"\n | \"AppGwSslPolicy20170401S\"\n | \"AppGwSslPolicy20220101\"\n | \"AppGwSslPolicy20220101S\";\n /** Ssl cipher suites to be enabled in the specified order to application gateway. */\n cipherSuites?: Array<\n | \"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_DHE_RSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_DHE_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_DHE_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_RSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_RSA_WITH_AES_256_CBC_SHA256\"\n | \"TLS_RSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_AES_256_CBC_SHA256\"\n | \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA256\"\n | \"TLS_DHE_DSS_WITH_AES_256_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"\n | \"TLS_RSA_WITH_3DES_EDE_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\"\n >;\n /** Minimum version of Ssl protocol to be supported on application gateway. */\n minProtocolVersion?: \"TLSv1_0\" | \"TLSv1_1\" | \"TLSv1_2\" | \"TLSv1_3\";\n}\n\n/** IP configuration of an application gateway. Currently 1 public and 1 private IP configuration is allowed. */\nexport interface ApplicationGatewayIPConfigurationOutput extends SubResourceOutput {\n /** Properties of the application gateway IP configuration. */\n properties?: ApplicationGatewayIPConfigurationPropertiesFormatOutput;\n /** Name of the IP configuration that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of IP configuration of an application gateway. */\nexport interface ApplicationGatewayIPConfigurationPropertiesFormatOutput {\n /** Reference to the subnet resource. A subnet from where application gateway gets its private address. */\n subnet?: SubResourceOutput;\n /** The provisioning state of the application gateway IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Reference to another subresource. */\nexport interface SubResourceOutput {\n /** Resource ID. */\n id?: string;\n}\n\n/** Authentication certificates of an application gateway. */\nexport interface ApplicationGatewayAuthenticationCertificateOutput extends SubResourceOutput {\n /** Properties of the application gateway authentication certificate. */\n properties?: ApplicationGatewayAuthenticationCertificatePropertiesFormatOutput;\n /** Name of the authentication certificate that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Authentication certificates properties of an application gateway. */\nexport interface ApplicationGatewayAuthenticationCertificatePropertiesFormatOutput {\n /** Certificate public data. */\n data?: string;\n /** The provisioning state of the authentication certificate resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Trusted Root certificates of an application gateway. */\nexport interface ApplicationGatewayTrustedRootCertificateOutput extends SubResourceOutput {\n /** Properties of the application gateway trusted root certificate. */\n properties?: ApplicationGatewayTrustedRootCertificatePropertiesFormatOutput;\n /** Name of the trusted root certificate that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Trusted Root certificates properties of an application gateway. */\nexport interface ApplicationGatewayTrustedRootCertificatePropertiesFormatOutput {\n /** Certificate public data. */\n data?: string;\n /** Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault. */\n keyVaultSecretId?: string;\n /** The provisioning state of the trusted root certificate resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Trusted client certificates of an application gateway. */\nexport interface ApplicationGatewayTrustedClientCertificateOutput extends SubResourceOutput {\n /** Properties of the application gateway trusted client certificate. */\n properties?: ApplicationGatewayTrustedClientCertificatePropertiesFormatOutput;\n /** Name of the trusted client certificate that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Trusted client certificates properties of an application gateway. */\nexport interface ApplicationGatewayTrustedClientCertificatePropertiesFormatOutput {\n /** Certificate public data. */\n data?: string;\n /** Validated certificate data. */\n readonly validatedCertData?: string;\n /** Distinguished name of client certificate issuer. */\n readonly clientCertIssuerDN?: string;\n /** The provisioning state of the trusted client certificate resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** SSL certificates of an application gateway. */\nexport interface ApplicationGatewaySslCertificateOutput extends SubResourceOutput {\n /** Properties of the application gateway SSL certificate. */\n properties?: ApplicationGatewaySslCertificatePropertiesFormatOutput;\n /** Name of the SSL certificate that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of SSL certificates of an application gateway. */\nexport interface ApplicationGatewaySslCertificatePropertiesFormatOutput {\n /** Base-64 encoded pfx certificate. Only applicable in PUT Request. */\n data?: string;\n /** Password for the pfx file specified in data. Only applicable in PUT request. */\n password?: string;\n /** Base-64 encoded Public cert data corresponding to pfx specified in data. Only applicable in GET request. */\n readonly publicCertData?: string;\n /** Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault. */\n keyVaultSecretId?: string;\n /** The provisioning state of the SSL certificate resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Frontend IP configuration of an application gateway. */\nexport interface ApplicationGatewayFrontendIPConfigurationOutput extends SubResourceOutput {\n /** Properties of the application gateway frontend IP configuration. */\n properties?: ApplicationGatewayFrontendIPConfigurationPropertiesFormatOutput;\n /** Name of the frontend IP configuration that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of Frontend IP configuration of an application gateway. */\nexport interface ApplicationGatewayFrontendIPConfigurationPropertiesFormatOutput {\n /** PrivateIPAddress of the network interface IP Configuration. */\n privateIPAddress?: string;\n /** The private IP address allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** Reference to the subnet resource. */\n subnet?: SubResourceOutput;\n /** Reference to the PublicIP resource. */\n publicIPAddress?: SubResourceOutput;\n /** Reference to the application gateway private link configuration. */\n privateLinkConfiguration?: SubResourceOutput;\n /** The provisioning state of the frontend IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Frontend port of an application gateway. */\nexport interface ApplicationGatewayFrontendPortOutput extends SubResourceOutput {\n /** Properties of the application gateway frontend port. */\n properties?: ApplicationGatewayFrontendPortPropertiesFormatOutput;\n /** Name of the frontend port that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of Frontend port of an application gateway. */\nexport interface ApplicationGatewayFrontendPortPropertiesFormatOutput {\n /** Frontend port. */\n port?: number;\n /** The provisioning state of the frontend port resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Probe of the application gateway. */\nexport interface ApplicationGatewayProbeOutput extends SubResourceOutput {\n /** Properties of the application gateway probe. */\n properties?: ApplicationGatewayProbePropertiesFormatOutput;\n /** Name of the probe that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of probe of an application gateway. */\nexport interface ApplicationGatewayProbePropertiesFormatOutput {\n /** The protocol used for the probe. */\n protocol?: \"Http\" | \"Https\" | \"Tcp\" | \"Tls\";\n /** Host name to send the probe to. */\n host?: string;\n /** Relative path of probe. Valid path starts from '/'. Probe is sent to <Protocol>://<host>:<port><path>. */\n path?: string;\n /** The probing interval in seconds. This is the time interval between two consecutive probes. Acceptable values are from 1 second to 86400 seconds. */\n interval?: number;\n /** The probe timeout in seconds. Probe marked as failed if valid response is not received with this timeout period. Acceptable values are from 1 second to 86400 seconds. */\n timeout?: number;\n /** The probe retry count. Backend server is marked down after consecutive probe failure count reaches UnhealthyThreshold. Acceptable values are from 1 second to 20. */\n unhealthyThreshold?: number;\n /** Whether the host header should be picked from the backend http settings. Default value is false. */\n pickHostNameFromBackendHttpSettings?: boolean;\n /** Whether the server name indication should be picked from the backend settings for Tls protocol. Default value is false. */\n pickHostNameFromBackendSettings?: boolean;\n /** Minimum number of servers that are always marked healthy. Default value is 0. */\n minServers?: number;\n /** Criterion for classifying a healthy probe response. */\n match?: ApplicationGatewayProbeHealthResponseMatchOutput;\n /** The provisioning state of the probe resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from http settings will be used. This property is valid for Standard_v2 and WAF_v2 only. */\n port?: number;\n}\n\n/** Application gateway probe health response match. */\nexport interface ApplicationGatewayProbeHealthResponseMatchOutput {\n /** Body that must be contained in the health response. Default value is empty. */\n body?: string;\n /** Allowed ranges of healthy status codes. Default range of healthy status codes is 200-399. */\n statusCodes?: Array<string>;\n}\n\n/** Backend Address Pool of an application gateway. */\nexport interface ApplicationGatewayBackendAddressPoolOutput extends SubResourceOutput {\n /** Properties of the application gateway backend address pool. */\n properties?: ApplicationGatewayBackendAddressPoolPropertiesFormatOutput;\n /** Name of the backend address pool that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of Backend Address Pool of an application gateway. */\nexport interface ApplicationGatewayBackendAddressPoolPropertiesFormatOutput {\n /** Collection of references to IPs defined in network interfaces. */\n readonly backendIPConfigurations?: Array<NetworkInterfaceIPConfigurationOutput>;\n /** Backend addresses. */\n backendAddresses?: Array<ApplicationGatewayBackendAddressOutput>;\n /** The provisioning state of the backend address pool resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** IPConfiguration in a network interface. */\nexport interface NetworkInterfaceIPConfigurationOutput extends SubResourceOutput {\n /** Network interface IP configuration properties. */\n properties?: NetworkInterfaceIPConfigurationPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n type?: string;\n}\n\n/** Properties of IP configuration. */\nexport interface NetworkInterfaceIPConfigurationPropertiesFormatOutput {\n /** The reference to gateway load balancer frontend IP. */\n gatewayLoadBalancer?: SubResourceOutput;\n /** The reference to Virtual Network Taps. */\n virtualNetworkTaps?: Array<VirtualNetworkTapOutput>;\n /** The reference to ApplicationGatewayBackendAddressPool resource. */\n applicationGatewayBackendAddressPools?: Array<ApplicationGatewayBackendAddressPoolOutput>;\n /** The reference to LoadBalancerBackendAddressPool resource. */\n loadBalancerBackendAddressPools?: Array<BackendAddressPoolOutput>;\n /** A list of references of LoadBalancerInboundNatRules. */\n loadBalancerInboundNatRules?: Array<InboundNatRuleOutput>;\n /** Private IP address of the IP configuration. */\n privateIPAddress?: string;\n /** The private IP address allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4. */\n privateIPAddressVersion?: \"IPv4\" | \"IPv6\";\n /** Subnet bound to the IP configuration. */\n subnet?: SubnetOutput;\n /** Whether this is a primary customer address on the network interface. */\n primary?: boolean;\n /** Public IP address bound to the IP configuration. */\n publicIPAddress?: PublicIPAddressOutput;\n /** Application security groups in which the IP configuration is included. */\n applicationSecurityGroups?: Array<ApplicationSecurityGroupOutput>;\n /** The provisioning state of the network interface IP configuration. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** PrivateLinkConnection properties for the network interface. */\n readonly privateLinkConnectionProperties?: NetworkInterfaceIPConfigurationPrivateLinkConnectionPropertiesOutput;\n}\n\n/** Virtual Network Tap resource. */\nexport interface VirtualNetworkTapOutput extends ResourceOutput {\n /** Virtual Network Tap Properties. */\n properties?: VirtualNetworkTapPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Virtual Network Tap properties. */\nexport interface VirtualNetworkTapPropertiesFormatOutput {\n /** Specifies the list of resource IDs for the network interface IP configuration that needs to be tapped. */\n readonly networkInterfaceTapConfigurations?: Array<NetworkInterfaceTapConfigurationOutput>;\n /** The resource GUID property of the virtual network tap resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the virtual network tap resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The reference to the private IP Address of the collector nic that will receive the tap. */\n destinationNetworkInterfaceIPConfiguration?: NetworkInterfaceIPConfigurationOutput;\n /** The reference to the private IP address on the internal Load Balancer that will receive the tap. */\n destinationLoadBalancerFrontEndIPConfiguration?: FrontendIPConfigurationOutput;\n /** The VXLAN destination port that will receive the tapped traffic. */\n destinationPort?: number;\n}\n\n/** Tap configuration in a Network Interface. */\nexport interface NetworkInterfaceTapConfigurationOutput extends SubResourceOutput {\n /** Properties of the Virtual Network Tap configuration. */\n properties?: NetworkInterfaceTapConfigurationPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Sub Resource type. */\n readonly type?: string;\n}\n\n/** Properties of Virtual Network Tap configuration. */\nexport interface NetworkInterfaceTapConfigurationPropertiesFormatOutput {\n /** The reference to the Virtual Network Tap resource. */\n virtualNetworkTap?: VirtualNetworkTapOutput;\n /** The provisioning state of the network interface tap configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Frontend IP address of the load balancer. */\nexport interface FrontendIPConfigurationOutput extends SubResourceOutput {\n /** Properties of the load balancer probe. */\n properties?: FrontendIPConfigurationPropertiesFormatOutput;\n /** The name of the resource that is unique within the set of frontend IP configurations used by the load balancer. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n /** A list of availability zones denoting the IP allocated for the resource needs to come from. */\n zones?: Array<string>;\n}\n\n/** Properties of Frontend IP Configuration of the load balancer. */\nexport interface FrontendIPConfigurationPropertiesFormatOutput {\n /** An array of references to inbound rules that use this frontend IP. */\n readonly inboundNatRules?: Array<SubResourceOutput>;\n /** An array of references to inbound pools that use this frontend IP. */\n readonly inboundNatPools?: Array<SubResourceOutput>;\n /** An array of references to outbound rules that use this frontend IP. */\n readonly outboundRules?: Array<SubResourceOutput>;\n /** An array of references to load balancing rules that use this frontend IP. */\n readonly loadBalancingRules?: Array<SubResourceOutput>;\n /** The private IP address of the IP configuration. */\n privateIPAddress?: string;\n /** The Private IP allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** Whether the specific ipconfiguration is IPv4 or IPv6. Default is taken as IPv4. */\n privateIPAddressVersion?: \"IPv4\" | \"IPv6\";\n /** The reference to the subnet resource. */\n subnet?: SubnetOutput;\n /** The reference to the Public IP resource. */\n publicIPAddress?: PublicIPAddressOutput;\n /** The reference to the Public IP Prefix resource. */\n publicIPPrefix?: SubResourceOutput;\n /** The reference to gateway load balancer frontend IP. */\n gatewayLoadBalancer?: SubResourceOutput;\n /** The provisioning state of the frontend IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Subnet in a virtual network resource. */\nexport interface SubnetOutput extends SubResourceOutput {\n /** Properties of the subnet. */\n properties?: SubnetPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n type?: string;\n}\n\n/** Properties of the subnet. */\nexport interface SubnetPropertiesFormatOutput {\n /** The address prefix for the subnet. */\n addressPrefix?: string;\n /** List of address prefixes for the subnet. */\n addressPrefixes?: Array<string>;\n /** The reference to the NetworkSecurityGroup resource. */\n networkSecurityGroup?: NetworkSecurityGroupOutput;\n /** The reference to the RouteTable resource. */\n routeTable?: RouteTableOutput;\n /** Nat gateway associated with this subnet. */\n natGateway?: SubResourceOutput;\n /** An array of service endpoints. */\n serviceEndpoints?: Array<ServiceEndpointPropertiesFormatOutput>;\n /** An array of service endpoint policies. */\n serviceEndpointPolicies?: Array<ServiceEndpointPolicyOutput>;\n /** An array of references to private endpoints. */\n readonly privateEndpoints?: Array<PrivateEndpointOutput>;\n /** An array of references to the network interface IP configurations using subnet. */\n readonly ipConfigurations?: Array<IPConfigurationOutput>;\n /** Array of IP configuration profiles which reference this subnet. */\n readonly ipConfigurationProfiles?: Array<IPConfigurationProfileOutput>;\n /** Array of IpAllocation which reference this subnet. */\n ipAllocations?: Array<SubResourceOutput>;\n /** An array of references to the external resources using subnet. */\n readonly resourceNavigationLinks?: Array<ResourceNavigationLinkOutput>;\n /** An array of references to services injecting into this subnet. */\n readonly serviceAssociationLinks?: Array<ServiceAssociationLinkOutput>;\n /** An array of references to the delegations on the subnet. */\n delegations?: Array<DelegationOutput>;\n /** A read-only string identifying the intention of use for this subnet based on delegations and other user-defined properties. */\n readonly purpose?: string;\n /** The provisioning state of the subnet resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Enable or Disable apply network policies on private end point in the subnet. */\n privateEndpointNetworkPolicies?: \"Enabled\" | \"Disabled\";\n /** Enable or Disable apply network policies on private link service in the subnet. */\n privateLinkServiceNetworkPolicies?: \"Enabled\" | \"Disabled\";\n /** Application gateway IP configurations of virtual network resource. */\n applicationGatewayIpConfigurations?: Array<ApplicationGatewayIPConfigurationOutput>;\n}\n\n/** NetworkSecurityGroup resource. */\nexport interface NetworkSecurityGroupOutput extends ResourceOutput {\n /** Properties of the network security group. */\n properties?: NetworkSecurityGroupPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Network Security Group resource. */\nexport interface NetworkSecurityGroupPropertiesFormatOutput {\n /** When enabled, flows created from Network Security Group connections will be re-evaluated when rules are updates. Initial enablement will trigger re-evaluation. */\n flushConnection?: boolean;\n /** A collection of security rules of the network security group. */\n securityRules?: Array<SecurityRuleOutput>;\n /** The default security rules of network security group. */\n readonly defaultSecurityRules?: Array<SecurityRuleOutput>;\n /** A collection of references to network interfaces. */\n readonly networkInterfaces?: Array<NetworkInterfaceOutput>;\n /** A collection of references to subnets. */\n readonly subnets?: Array<SubnetOutput>;\n /** A collection of references to flow log resources. */\n readonly flowLogs?: Array<FlowLogOutput>;\n /** The resource GUID property of the network security group resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the network security group resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Network security rule. */\nexport interface SecurityRuleOutput extends SubResourceOutput {\n /** Properties of the security rule. */\n properties?: SecurityRulePropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The type of the resource. */\n type?: string;\n}\n\n/** Security rule resource. */\nexport interface SecurityRulePropertiesFormatOutput {\n /** A description for this rule. Restricted to 140 chars. */\n description?: string;\n /** Network protocol this rule applies to. */\n protocol: \"Tcp\" | \"Udp\" | \"Icmp\" | \"Esp\" | \"*\" | \"Ah\";\n /** The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports. */\n sourcePortRange?: string;\n /** The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports. */\n destinationPortRange?: string;\n /** The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from. */\n sourceAddressPrefix?: string;\n /** The CIDR or source IP ranges. */\n sourceAddressPrefixes?: Array<string>;\n /** The application security group specified as source. */\n sourceApplicationSecurityGroups?: Array<ApplicationSecurityGroupOutput>;\n /** The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. */\n destinationAddressPrefix?: string;\n /** The destination address prefixes. CIDR or destination IP ranges. */\n destinationAddressPrefixes?: Array<string>;\n /** The application security group specified as destination. */\n destinationApplicationSecurityGroups?: Array<ApplicationSecurityGroupOutput>;\n /** The source port ranges. */\n sourcePortRanges?: Array<string>;\n /** The destination port ranges. */\n destinationPortRanges?: Array<string>;\n /** The network traffic is allowed or denied. */\n access: \"Allow\" | \"Deny\";\n /** The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. */\n priority?: number;\n /** The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic. */\n direction: \"Inbound\" | \"Outbound\";\n /** The provisioning state of the security rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** An application security group in a resource group. */\nexport interface ApplicationSecurityGroupOutput extends ResourceOutput {\n /** Properties of the application security group. */\n properties?: ApplicationSecurityGroupPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Application security group properties. */\nexport interface ApplicationSecurityGroupPropertiesFormatOutput {\n /** The resource GUID property of the application security group resource. It uniquely identifies a resource, even if the user changes its name or migrate the resource across subscriptions or resource groups. */\n readonly resourceGuid?: string;\n /** The provisioning state of the application security group resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Common resource representation. */\nexport interface ResourceOutput {\n /** Resource ID. */\n id?: string;\n /** Resource name. */\n readonly name?: string;\n /** Resource type. */\n readonly type?: string;\n /** Resource location. */\n location?: string;\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\n/** A network interface in a resource group. */\nexport interface NetworkInterfaceOutput extends ResourceOutput {\n /** The extended location of the network interface. */\n extendedLocation?: ExtendedLocationOutput;\n /** Properties of the network interface. */\n properties?: NetworkInterfacePropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** ExtendedLocation complex type. */\nexport interface ExtendedLocationOutput {\n /** The name of the extended location. */\n name?: string;\n /** The type of the extended location. */\n type?: \"EdgeZone\";\n}\n\n/** NetworkInterface properties. */\nexport interface NetworkInterfacePropertiesFormatOutput {\n /** The reference to a virtual machine. */\n readonly virtualMachine?: SubResourceOutput;\n /** The reference to the NetworkSecurityGroup resource. */\n networkSecurityGroup?: NetworkSecurityGroupOutput;\n /** A reference to the private endpoint to which the network interface is linked. */\n readonly privateEndpoint?: PrivateEndpointOutput;\n /** A list of IPConfigurations of the network interface. */\n ipConfigurations?: Array<NetworkInterfaceIPConfigurationOutput>;\n /** A list of TapConfigurations of the network interface. */\n readonly tapConfigurations?: Array<NetworkInterfaceTapConfigurationOutput>;\n /** The DNS settings in network interface. */\n dnsSettings?: NetworkInterfaceDnsSettingsOutput;\n /** The MAC address of the network interface. */\n readonly macAddress?: string;\n /** Whether this is a primary network interface on a virtual machine. */\n readonly primary?: boolean;\n /** Whether the virtual machine this nic is attached to supports encryption. */\n readonly vnetEncryptionSupported?: boolean;\n /** If the network interface is configured for accelerated networking. Not applicable to VM sizes which require accelerated networking. */\n enableAcceleratedNetworking?: boolean;\n /** Indicates whether to disable tcp state tracking. */\n disableTcpStateTracking?: boolean;\n /** Indicates whether IP forwarding is enabled on this network interface. */\n enableIPForwarding?: boolean;\n /** A list of references to linked BareMetal resources. */\n readonly hostedWorkloads?: Array<string>;\n /** A reference to the dscp configuration to which the network interface is linked. */\n readonly dscpConfiguration?: SubResourceOutput;\n /** The resource GUID property of the network interface resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the network interface resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** WorkloadType of the NetworkInterface for BareMetal resources */\n workloadType?: string;\n /** Type of Network Interface resource. */\n nicType?: \"Standard\" | \"Elastic\";\n /** Privatelinkservice of the network interface resource. */\n privateLinkService?: PrivateLinkServiceOutput;\n /** Migration phase of Network Interface resource. */\n migrationPhase?: \"None\" | \"Prepare\" | \"Commit\" | \"Abort\" | \"Committed\";\n /** Auxiliary mode of Network Interface resource. */\n auxiliaryMode?: \"None\" | \"MaxConnections\" | \"Floating\";\n}\n\n/** Private endpoint resource. */\nexport interface PrivateEndpointOutput extends ResourceOutput {\n /** The extended location of the load balancer. */\n extendedLocation?: ExtendedLocationOutput;\n /** Properties of the private endpoint. */\n properties?: PrivateEndpointPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the private endpoint. */\nexport interface PrivateEndpointPropertiesOutput {\n /** The ID of the subnet from which the private IP will be allocated. */\n subnet?: SubnetOutput;\n /** An array of references to the network interfaces created for this private endpoint. */\n readonly networkInterfaces?: Array<NetworkInterfaceOutput>;\n /** The provisioning state of the private endpoint resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** A grouping of information about the connection to the remote resource. */\n privateLinkServiceConnections?: Array<PrivateLinkServiceConnectionOutput>;\n /** A grouping of information about the connection to the remote resource. Used when the network admin does not have access to approve connections to the remote resource. */\n manualPrivateLinkServiceConnections?: Array<PrivateLinkServiceConnectionOutput>;\n /** An array of custom dns configurations. */\n customDnsConfigs?: Array<CustomDnsConfigPropertiesFormatOutput>;\n /** Application security groups in which the private endpoint IP configuration is included. */\n applicationSecurityGroups?: Array<ApplicationSecurityGroupOutput>;\n /** A list of IP configurations of the private endpoint. This will be used to map to the First Party Service's endpoints. */\n ipConfigurations?: Array<PrivateEndpointIPConfigurationOutput>;\n /** The custom name of the network interface attached to the private endpoint. */\n customNetworkInterfaceName?: string;\n}\n\n/** PrivateLinkServiceConnection resource. */\nexport interface PrivateLinkServiceConnectionOutput extends SubResourceOutput {\n /** Properties of the private link service connection. */\n properties?: PrivateLinkServiceConnectionPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** The resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the PrivateLinkServiceConnection. */\nexport interface PrivateLinkServiceConnectionPropertiesOutput {\n /** The provisioning state of the private link service connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The resource id of private link service. */\n privateLinkServiceId?: string;\n /** The ID(s) of the group(s) obtained from the remote resource that this private endpoint should connect to. */\n groupIds?: Array<string>;\n /** A message passed to the owner of the remote resource with this connection request. Restricted to 140 chars. */\n requestMessage?: string;\n /** A collection of read-only information about the state of the connection to the remote resource. */\n privateLinkServiceConnectionState?: PrivateLinkServiceConnectionStateOutput;\n}\n\n/** A collection of information about the state of the connection between service consumer and provider. */\nexport interface PrivateLinkServiceConnectionStateOutput {\n /** Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. */\n status?: string;\n /** The reason for approval/rejection of the connection. */\n description?: string;\n /** A message indicating if changes on the service provider require any updates on the consumer. */\n actionsRequired?: string;\n}\n\n/** Contains custom Dns resolution configuration from customer. */\nexport interface CustomDnsConfigPropertiesFormatOutput {\n /** Fqdn that resolves to private endpoint ip address. */\n fqdn?: string;\n /** A list of private ip addresses of the private endpoint. */\n ipAddresses?: Array<string>;\n}\n\n/** An IP Configuration of the private endpoint. */\nexport interface PrivateEndpointIPConfigurationOutput {\n /** Properties of private endpoint IP configurations. */\n properties?: PrivateEndpointIPConfigurationPropertiesOutput;\n /** The name of the resource that is unique within a resource group. */\n name?: string;\n /** The resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of an IP Configuration of the private endpoint. */\nexport interface PrivateEndpointIPConfigurationPropertiesOutput {\n /** The ID of a group obtained from the remote resource that this private endpoint should connect to. */\n groupId?: string;\n /** The member name of a group obtained from the remote resource that this private endpoint should connect to. */\n memberName?: string;\n /** A private ip address obtained from the private endpoint's subnet. */\n privateIPAddress?: string;\n}\n\n/** DNS settings of a network interface. */\nexport interface NetworkInterfaceDnsSettingsOutput {\n /** List of DNS servers IP addresses. Use 'AzureProvidedDNS' to switch to azure provided DNS resolution. 'AzureProvidedDNS' value cannot be combined with other IPs, it must be the only value in dnsServers collection. */\n dnsServers?: Array<string>;\n /** If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set. This property is what is configured on each of those VMs. */\n readonly appliedDnsServers?: Array<string>;\n /** Relative DNS name for this NIC used for internal communications between VMs in the same virtual network. */\n internalDnsNameLabel?: string;\n /** Fully qualified DNS name supporting internal communications between VMs in the same virtual network. */\n readonly internalFqdn?: string;\n /** Even if internalDnsNameLabel is not specified, a DNS entry is created for the primary NIC of the VM. This DNS name can be constructed by concatenating the VM name with the value of internalDomainNameSuffix. */\n readonly internalDomainNameSuffix?: string;\n}\n\n/** Private link service resource. */\nexport interface PrivateLinkServiceOutput extends ResourceOutput {\n /** The extended location of the load balancer. */\n extendedLocation?: ExtendedLocationOutput;\n /** Properties of the private link service. */\n properties?: PrivateLinkServicePropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the private link service. */\nexport interface PrivateLinkServicePropertiesOutput {\n /** An array of references to the load balancer IP configurations. */\n loadBalancerFrontendIpConfigurations?: Array<FrontendIPConfigurationOutput>;\n /** An array of private link service IP configurations. */\n ipConfigurations?: Array<PrivateLinkServiceIpConfigurationOutput>;\n /** An array of references to the network interfaces created for this private link service. */\n readonly networkInterfaces?: Array<NetworkInterfaceOutput>;\n /** The provisioning state of the private link service resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** An array of list about connections to the private endpoint. */\n readonly privateEndpointConnections?: Array<PrivateEndpointConnectionOutput>;\n /** The visibility list of the private link service. */\n visibility?: PrivateLinkServicePropertiesVisibilityOutput;\n /** The auto-approval list of the private link service. */\n autoApproval?: PrivateLinkServicePropertiesAutoApprovalOutput;\n /** The list of Fqdn. */\n fqdns?: Array<string>;\n /** The alias of the private link service. */\n readonly alias?: string;\n /** Whether the private link service is enabled for proxy protocol or not. */\n enableProxyProtocol?: boolean;\n}\n\n/** The private link service ip configuration. */\nexport interface PrivateLinkServiceIpConfigurationOutput extends SubResourceOutput {\n /** Properties of the private link service ip configuration. */\n properties?: PrivateLinkServiceIpConfigurationPropertiesOutput;\n /** The name of private link service ip configuration. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The resource type. */\n readonly type?: string;\n}\n\n/** Properties of private link service IP configuration. */\nexport interface PrivateLinkServiceIpConfigurationPropertiesOutput {\n /** The private IP address of the IP configuration. */\n privateIPAddress?: string;\n /** The private IP address allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** The reference to the subnet resource. */\n subnet?: SubnetOutput;\n /** Whether the ip configuration is primary or not. */\n primary?: boolean;\n /** The provisioning state of the private link service IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Whether the specific IP configuration is IPv4 or IPv6. Default is IPv4. */\n privateIPAddressVersion?: \"IPv4\" | \"IPv6\";\n}\n\n/** PrivateEndpointConnection resource. */\nexport interface PrivateEndpointConnectionOutput extends SubResourceOutput {\n /** Properties of the private end point connection. */\n properties?: PrivateEndpointConnectionPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** The resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the PrivateEndpointConnectProperties. */\nexport interface PrivateEndpointConnectionPropertiesOutput {\n /** The resource of private end point. */\n readonly privateEndpoint?: PrivateEndpointOutput;\n /** A collection of information about the state of the connection between service consumer and provider. */\n privateLinkServiceConnectionState?: PrivateLinkServiceConnectionStateOutput;\n /** The provisioning state of the private endpoint connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The consumer link id. */\n readonly linkIdentifier?: string;\n}\n\n/** The visibility list of the private link service. */\nexport interface PrivateLinkServicePropertiesVisibilityOutput extends ResourceSetOutput {}\n\n/** The base resource set for visibility and auto-approval. */\nexport interface ResourceSetOutput {\n /** The list of subscriptions. */\n subscriptions?: Array<string>;\n}\n\n/** The auto-approval list of the private link service. */\nexport interface PrivateLinkServicePropertiesAutoApprovalOutput extends ResourceSetOutput {}\n\n/** A flow log resource. */\nexport interface FlowLogOutput extends ResourceOutput {\n /** Properties of the flow log. */\n properties?: FlowLogPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters that define the configuration of flow log. */\nexport interface FlowLogPropertiesFormatOutput {\n /** ID of network security group to which flow log will be applied. */\n targetResourceId: string;\n /** Guid of network security group to which flow log will be applied. */\n readonly targetResourceGuid?: string;\n /** ID of the storage account which is used to store the flow log. */\n storageId: string;\n /** Flag to enable/disable flow logging. */\n enabled?: boolean;\n /** Parameters that define the retention policy for flow log. */\n retentionPolicy?: RetentionPolicyParametersOutput;\n /** Parameters that define the flow log format. */\n format?: FlowLogFormatParametersOutput;\n /** Parameters that define the configuration of traffic analytics. */\n flowAnalyticsConfiguration?: TrafficAnalyticsPropertiesOutput;\n /** The provisioning state of the flow log. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Parameters that define the retention policy for flow log. */\nexport interface RetentionPolicyParametersOutput {\n /** Number of days to retain flow log records. */\n days?: number;\n /** Flag to enable/disable retention. */\n enabled?: boolean;\n}\n\n/** Parameters that define the flow log format. */\nexport interface FlowLogFormatParametersOutput {\n /** The file type of flow log. */\n type?: \"JSON\";\n /** The version (revision) of the flow log. */\n version?: number;\n}\n\n/** Parameters that define the configuration of traffic analytics. */\nexport interface TrafficAnalyticsPropertiesOutput {\n /** Parameters that define the configuration of traffic analytics. */\n networkWatcherFlowAnalyticsConfiguration?: TrafficAnalyticsConfigurationPropertiesOutput;\n}\n\n/** Parameters that define the configuration of traffic analytics. */\nexport interface TrafficAnalyticsConfigurationPropertiesOutput {\n /** Flag to enable/disable traffic analytics. */\n enabled?: boolean;\n /** The resource guid of the attached workspace. */\n workspaceId?: string;\n /** The location of the attached workspace. */\n workspaceRegion?: string;\n /** Resource Id of the attached workspace. */\n workspaceResourceId?: string;\n /** The interval in minutes which would decide how frequently TA service should do flow analytics. */\n trafficAnalyticsInterval?: number;\n}\n\n/** Route table resource. */\nexport interface RouteTableOutput extends ResourceOutput {\n /** Properties of the route table. */\n properties?: RouteTablePropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Route Table resource. */\nexport interface RouteTablePropertiesFormatOutput {\n /** Collection of routes contained within a route table. */\n routes?: Array<RouteOutput>;\n /** A collection of references to subnets. */\n readonly subnets?: Array<SubnetOutput>;\n /** Whether to disable the routes learned by BGP on that route table. True means disable. */\n disableBgpRoutePropagation?: boolean;\n /** The provisioning state of the route table resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The resource GUID property of the route table. */\n readonly resourceGuid?: string;\n}\n\n/** Route resource. */\nexport interface RouteOutput extends SubResourceOutput {\n /** Properties of the route. */\n properties?: RoutePropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The type of the resource. */\n type?: string;\n}\n\n/** Route resource. */\nexport interface RoutePropertiesFormatOutput {\n /** The destination CIDR to which the route applies. */\n addressPrefix?: string;\n /** The type of Azure hop the packet should be sent to. */\n nextHopType: \"VirtualNetworkGateway\" | \"VnetLocal\" | \"Internet\" | \"VirtualAppliance\" | \"None\";\n /** The IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. */\n nextHopIpAddress?: string;\n /** The provisioning state of the route resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** A value indicating whether this route overrides overlapping BGP routes regardless of LPM. */\n hasBgpOverride?: boolean;\n}\n\n/** The service endpoint properties. */\nexport interface ServiceEndpointPropertiesFormatOutput {\n /** The type of the endpoint service. */\n service?: string;\n /** A list of locations. */\n locations?: Array<string>;\n /** The provisioning state of the service endpoint resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Service End point policy resource. */\nexport interface ServiceEndpointPolicyOutput extends ResourceOutput {\n /** Properties of the service end point policy. */\n properties?: ServiceEndpointPolicyPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Kind of service endpoint policy. This is metadata used for the Azure portal experience. */\n readonly kind?: string;\n}\n\n/** Service Endpoint Policy resource. */\nexport interface ServiceEndpointPolicyPropertiesFormatOutput {\n /** A collection of service endpoint policy definitions of the service endpoint policy. */\n serviceEndpointPolicyDefinitions?: Array<ServiceEndpointPolicyDefinitionOutput>;\n /** A collection of references to subnets. */\n readonly subnets?: Array<SubnetOutput>;\n /** The resource GUID property of the service endpoint policy resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the service endpoint policy resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The alias indicating if the policy belongs to a service */\n serviceAlias?: string;\n /** A collection of contextual service endpoint policy. */\n contextualServiceEndpointPolicies?: Array<string>;\n}\n\n/** Service Endpoint policy definitions. */\nexport interface ServiceEndpointPolicyDefinitionOutput extends SubResourceOutput {\n /** Properties of the service endpoint policy definition. */\n properties?: ServiceEndpointPolicyDefinitionPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The type of the resource. */\n type?: string;\n}\n\n/** Service Endpoint policy definition resource. */\nexport interface ServiceEndpointPolicyDefinitionPropertiesFormatOutput {\n /** A description for this rule. Restricted to 140 chars. */\n description?: string;\n /** Service endpoint name. */\n service?: string;\n /** A list of service resources. */\n serviceResources?: Array<string>;\n /** The provisioning state of the service endpoint policy definition resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** IP configuration. */\nexport interface IPConfigurationOutput extends SubResourceOutput {\n /** Properties of the IP configuration. */\n properties?: IPConfigurationPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of IP configuration. */\nexport interface IPConfigurationPropertiesFormatOutput {\n /** The private IP address of the IP configuration. */\n privateIPAddress?: string;\n /** The private IP address allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** The reference to the subnet resource. */\n subnet?: SubnetOutput;\n /** The reference to the public IP resource. */\n publicIPAddress?: PublicIPAddressOutput;\n /** The provisioning state of the IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Public IP address resource. */\nexport interface PublicIPAddressOutput extends ResourceOutput {\n /** The extended location of the public ip address. */\n extendedLocation?: ExtendedLocationOutput;\n /** The public IP address SKU. */\n sku?: PublicIPAddressSkuOutput;\n /** Public IP address properties. */\n properties?: PublicIPAddressPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** A list of availability zones denoting the IP allocated for the resource needs to come from. */\n zones?: Array<string>;\n}\n\n/** SKU of a public IP address. */\nexport interface PublicIPAddressSkuOutput {\n /** Name of a public IP address SKU. */\n name?: \"Basic\" | \"Standard\";\n /** Tier of a public IP address SKU. */\n tier?: \"Regional\" | \"Global\";\n}\n\n/** Public IP address properties. */\nexport interface PublicIPAddressPropertiesFormatOutput {\n /** The public IP address allocation method. */\n publicIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** The public IP address version. */\n publicIPAddressVersion?: \"IPv4\" | \"IPv6\";\n /** The IP configuration associated with the public IP address. */\n readonly ipConfiguration?: IPConfigurationOutput;\n /** The FQDN of the DNS record associated with the public IP address. */\n dnsSettings?: PublicIPAddressDnsSettingsOutput;\n /** The DDoS protection custom policy associated with the public IP address. */\n ddosSettings?: DdosSettingsOutput;\n /** The list of tags associated with the public IP address. */\n ipTags?: Array<IpTagOutput>;\n /** The IP address associated with the public IP address resource. */\n ipAddress?: string;\n /** The Public IP Prefix this Public IP Address should be allocated from. */\n publicIPPrefix?: SubResourceOutput;\n /** The idle timeout of the public IP address. */\n idleTimeoutInMinutes?: number;\n /** The resource GUID property of the public IP address resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the public IP address resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The service public IP address of the public IP address resource. */\n servicePublicIPAddress?: PublicIPAddressOutput;\n /** The NatGateway for the Public IP address. */\n natGateway?: NatGatewayOutput;\n /** Migration phase of Public IP Address. */\n migrationPhase?: \"None\" | \"Prepare\" | \"Commit\" | \"Abort\" | \"Committed\";\n /** The linked public IP address of the public IP address resource. */\n linkedPublicIPAddress?: PublicIPAddressOutput;\n /** Specify what happens to the public IP address when the VM using it is deleted */\n deleteOption?: \"Delete\" | \"Detach\";\n}\n\n/** Contains FQDN of the DNS record associated with the public IP address. */\nexport interface PublicIPAddressDnsSettingsOutput {\n /** The domain name label. The concatenation of the domain name label and the regionalized DNS zone make up the fully qualified domain name associated with the public IP address. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system. */\n domainNameLabel?: string;\n /** The Fully Qualified Domain Name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone. */\n fqdn?: string;\n /** The reverse FQDN. A user-visible, fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN. */\n reverseFqdn?: string;\n}\n\n/** Contains the DDoS protection settings of the public IP. */\nexport interface DdosSettingsOutput {\n /** The DDoS protection mode of the public IP */\n protectionMode?: \"VirtualNetworkInherited\" | \"Enabled\" | \"Disabled\";\n /** The DDoS protection plan associated with the public IP. Can only be set if ProtectionMode is Enabled */\n ddosProtectionPlan?: SubResourceOutput;\n}\n\n/** Contains the IpTag associated with the object. */\nexport interface IpTagOutput {\n /** The IP tag type. Example: FirstPartyUsage. */\n ipTagType?: string;\n /** The value of the IP tag associated with the public IP. Example: SQL. */\n tag?: string;\n}\n\n/** Nat Gateway resource. */\nexport interface NatGatewayOutput extends ResourceOutput {\n /** The nat gateway SKU. */\n sku?: NatGatewaySkuOutput;\n /** Nat Gateway properties. */\n properties?: NatGatewayPropertiesFormatOutput;\n /** A list of availability zones denoting the zone in which Nat Gateway should be deployed. */\n zones?: Array<string>;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** SKU of nat gateway. */\nexport interface NatGatewaySkuOutput {\n /** Name of Nat Gateway SKU. */\n name?: \"Standard\";\n}\n\n/** Nat Gateway properties. */\nexport interface NatGatewayPropertiesFormatOutput {\n /** The idle timeout of the nat gateway. */\n idleTimeoutInMinutes?: number;\n /** An array of public ip addresses associated with the nat gateway resource. */\n publicIpAddresses?: Array<SubResourceOutput>;\n /** An array of public ip prefixes associated with the nat gateway resource. */\n publicIpPrefixes?: Array<SubResourceOutput>;\n /** An array of references to the subnets using this nat gateway resource. */\n readonly subnets?: Array<SubResourceOutput>;\n /** The resource GUID property of the NAT gateway resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the NAT gateway resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** IP configuration profile child resource. */\nexport interface IPConfigurationProfileOutput extends SubResourceOutput {\n /** Properties of the IP configuration profile. */\n properties?: IPConfigurationProfilePropertiesFormatOutput;\n /** The name of the resource. This name can be used to access the resource. */\n name?: string;\n /** Sub Resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** IP configuration profile properties. */\nexport interface IPConfigurationProfilePropertiesFormatOutput {\n /** The reference to the subnet resource to create a container network interface ip configuration. */\n subnet?: SubnetOutput;\n /** The provisioning state of the IP configuration profile resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** ResourceNavigationLink resource. */\nexport interface ResourceNavigationLinkOutput extends SubResourceOutput {\n /** Resource navigation link properties format. */\n properties?: ResourceNavigationLinkFormatOutput;\n /** Name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Properties of ResourceNavigationLink. */\nexport interface ResourceNavigationLinkFormatOutput {\n /** Resource type of the linked resource. */\n linkedResourceType?: string;\n /** Link to the external resource. */\n link?: string;\n /** The provisioning state of the resource navigation link resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** ServiceAssociationLink resource. */\nexport interface ServiceAssociationLinkOutput extends SubResourceOutput {\n /** Resource navigation link properties format. */\n properties?: ServiceAssociationLinkPropertiesFormatOutput;\n /** Name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Properties of ServiceAssociationLink. */\nexport interface ServiceAssociationLinkPropertiesFormatOutput {\n /** Resource type of the linked resource. */\n linkedResourceType?: string;\n /** Link to the external resource. */\n link?: string;\n /** The provisioning state of the service association link resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** If true, the resource can be deleted. */\n allowDelete?: boolean;\n /** A list of locations. */\n locations?: Array<string>;\n}\n\n/** Details the service to which the subnet is delegated. */\nexport interface DelegationOutput extends SubResourceOutput {\n /** Properties of the subnet. */\n properties?: ServiceDelegationPropertiesFormatOutput;\n /** The name of the resource that is unique within a subnet. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n type?: string;\n}\n\n/** Properties of a service delegation. */\nexport interface ServiceDelegationPropertiesFormatOutput {\n /** The name of the service to whom the subnet should be delegated (e.g. Microsoft.Sql/servers). */\n serviceName?: string;\n /** The actions permitted to the service upon delegation. */\n readonly actions?: Array<string>;\n /** The provisioning state of the service delegation resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Pool of backend IP addresses. */\nexport interface BackendAddressPoolOutput extends SubResourceOutput {\n /** Properties of load balancer backend address pool. */\n properties?: BackendAddressPoolPropertiesFormatOutput;\n /** The name of the resource that is unique within the set of backend address pools used by the load balancer. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of the backend address pool. */\nexport interface BackendAddressPoolPropertiesFormatOutput {\n /** The location of the backend address pool. */\n location?: string;\n /** An array of gateway load balancer tunnel interfaces. */\n tunnelInterfaces?: Array<GatewayLoadBalancerTunnelInterfaceOutput>;\n /** An array of backend addresses. */\n loadBalancerBackendAddresses?: Array<LoadBalancerBackendAddressOutput>;\n /** An array of references to IP addresses defined in network interfaces. */\n readonly backendIPConfigurations?: Array<NetworkInterfaceIPConfigurationOutput>;\n /** An array of references to load balancing rules that use this backend address pool. */\n readonly loadBalancingRules?: Array<SubResourceOutput>;\n /** A reference to an outbound rule that uses this backend address pool. */\n readonly outboundRule?: SubResourceOutput;\n /** An array of references to outbound rules that use this backend address pool. */\n readonly outboundRules?: Array<SubResourceOutput>;\n /** An array of references to inbound NAT rules that use this backend address pool. */\n readonly inboundNatRules?: Array<SubResourceOutput>;\n /** The provisioning state of the backend address pool resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Amount of seconds Load Balancer waits for before sending RESET to client and backend address. */\n drainPeriodInSeconds?: number;\n}\n\n/** Gateway load balancer tunnel interface of a load balancer backend address pool. */\nexport interface GatewayLoadBalancerTunnelInterfaceOutput {\n /** Port of gateway load balancer tunnel interface. */\n port?: number;\n /** Identifier of gateway load balancer tunnel interface. */\n identifier?: number;\n /** Protocol of gateway load balancer tunnel interface. */\n protocol?: \"None\" | \"Native\" | \"VXLAN\";\n /** Traffic type of gateway load balancer tunnel interface. */\n type?: \"None\" | \"Internal\" | \"External\";\n}\n\n/** Load balancer backend addresses. */\nexport interface LoadBalancerBackendAddressOutput {\n /** Properties of load balancer backend address pool. */\n properties?: LoadBalancerBackendAddressPropertiesFormatOutput;\n /** Name of the backend address. */\n name?: string;\n}\n\n/** Properties of the load balancer backend addresses. */\nexport interface LoadBalancerBackendAddressPropertiesFormatOutput {\n /** Reference to an existing virtual network. */\n virtualNetwork?: SubResourceOutput;\n /** Reference to an existing subnet. */\n subnet?: SubResourceOutput;\n /** IP Address belonging to the referenced virtual network. */\n ipAddress?: string;\n /** Reference to IP address defined in network interfaces. */\n readonly networkInterfaceIPConfiguration?: SubResourceOutput;\n /** Reference to the frontend ip address configuration defined in regional loadbalancer. */\n loadBalancerFrontendIPConfiguration?: SubResourceOutput;\n /** Collection of inbound NAT rule port mappings. */\n readonly inboundNatRulesPortMapping?: Array<NatRulePortMappingOutput>;\n /** 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. */\n adminState?: \"None\" | \"Up\" | \"Down\" | \"Drain\";\n}\n\n/** Individual port mappings for inbound NAT rule created for backend pool. */\nexport interface NatRulePortMappingOutput {\n /** Name of inbound NAT rule. */\n inboundNatRuleName?: string;\n /** Frontend port. */\n frontendPort?: number;\n /** Backend port. */\n backendPort?: number;\n}\n\n/** Inbound NAT rule of the load balancer. */\nexport interface InboundNatRuleOutput extends SubResourceOutput {\n /** Properties of load balancer inbound NAT rule. */\n properties?: InboundNatRulePropertiesFormatOutput;\n /** The name of the resource that is unique within the set of inbound NAT rules used by the load balancer. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of the inbound NAT rule. */\nexport interface InboundNatRulePropertiesFormatOutput {\n /** A reference to frontend IP addresses. */\n frontendIPConfiguration?: SubResourceOutput;\n /** A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP. */\n readonly backendIPConfiguration?: NetworkInterfaceIPConfigurationOutput;\n /** The reference to the transport protocol used by the load balancing rule. */\n protocol?: \"Udp\" | \"Tcp\" | \"All\";\n /** The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534. */\n frontendPort?: number;\n /** The port used for the internal endpoint. Acceptable values range from 1 to 65535. */\n backendPort?: number;\n /** The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP. */\n idleTimeoutInMinutes?: number;\n /** Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint. */\n enableFloatingIP?: boolean;\n /** Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP. */\n enableTcpReset?: boolean;\n /** The port range start for the external endpoint. This property is used together with BackendAddressPool and FrontendPortRangeEnd. Individual inbound NAT rule port mappings will be created for each backend address from BackendAddressPool. Acceptable values range from 1 to 65534. */\n frontendPortRangeStart?: number;\n /** The port range end for the external endpoint. This property is used together with BackendAddressPool and FrontendPortRangeStart. Individual inbound NAT rule port mappings will be created for each backend address from BackendAddressPool. Acceptable values range from 1 to 65534. */\n frontendPortRangeEnd?: number;\n /** A reference to backendAddressPool resource. */\n backendAddressPool?: SubResourceOutput;\n /** The provisioning state of the inbound NAT rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** PrivateLinkConnection properties for the network interface. */\nexport interface NetworkInterfaceIPConfigurationPrivateLinkConnectionPropertiesOutput {\n /** The group ID for current private link connection. */\n readonly groupId?: string;\n /** The required member name for current private link connection. */\n readonly requiredMemberName?: string;\n /** List of FQDNs for current private link connection. */\n readonly fqdns?: Array<string>;\n}\n\n/** Backend address of an application gateway. */\nexport interface ApplicationGatewayBackendAddressOutput {\n /** Fully qualified domain name (FQDN). */\n fqdn?: string;\n /** IP address. */\n ipAddress?: string;\n}\n\n/** Backend address pool settings of an application gateway. */\nexport interface ApplicationGatewayBackendHttpSettingsOutput extends SubResourceOutput {\n /** Properties of the application gateway backend HTTP settings. */\n properties?: ApplicationGatewayBackendHttpSettingsPropertiesFormatOutput;\n /** Name of the backend http settings that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of Backend address pool settings of an application gateway. */\nexport interface ApplicationGatewayBackendHttpSettingsPropertiesFormatOutput {\n /** The destination port on the backend. */\n port?: number;\n /** The protocol used to communicate with the backend. */\n protocol?: \"Http\" | \"Https\" | \"Tcp\" | \"Tls\";\n /** Cookie based affinity. */\n cookieBasedAffinity?: \"Enabled\" | \"Disabled\";\n /** Request timeout in seconds. Application Gateway will fail the request if response is not received within RequestTimeout. Acceptable values are from 1 second to 86400 seconds. */\n requestTimeout?: number;\n /** Probe resource of an application gateway. */\n probe?: SubResourceOutput;\n /** Array of references to application gateway authentication certificates. */\n authenticationCertificates?: Array<SubResourceOutput>;\n /** Array of references to application gateway trusted root certificates. */\n trustedRootCertificates?: Array<SubResourceOutput>;\n /** Connection draining of the backend http settings resource. */\n connectionDraining?: ApplicationGatewayConnectionDrainingOutput;\n /** Host header to be sent to the backend servers. */\n hostName?: string;\n /** Whether to pick host header should be picked from the host name of the backend server. Default value is false. */\n pickHostNameFromBackendAddress?: boolean;\n /** Cookie name to use for the affinity cookie. */\n affinityCookieName?: string;\n /** Whether the probe is enabled. Default value is false. */\n probeEnabled?: boolean;\n /** Path which should be used as a prefix for all HTTP requests. Null means no path will be prefixed. Default value is null. */\n path?: string;\n /** The provisioning state of the backend HTTP settings resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Connection draining allows open connections to a backend server to be active for a specified time after the backend server got removed from the configuration. */\nexport interface ApplicationGatewayConnectionDrainingOutput {\n /** Whether connection draining is enabled or not. */\n enabled: boolean;\n /** The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds. */\n drainTimeoutInSec: number;\n}\n\n/** Backend address pool settings of an application gateway. */\nexport interface ApplicationGatewayBackendSettingsOutput extends SubResourceOutput {\n /** Properties of the application gateway backend settings. */\n properties?: ApplicationGatewayBackendSettingsPropertiesFormatOutput;\n /** Name of the backend settings that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of Backend address pool settings of an application gateway. */\nexport interface ApplicationGatewayBackendSettingsPropertiesFormatOutput {\n /** The destination port on the backend. */\n port?: number;\n /** The protocol used to communicate with the backend. */\n protocol?: \"Http\" | \"Https\" | \"Tcp\" | \"Tls\";\n /** 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. */\n timeout?: number;\n /** Probe resource of an application gateway. */\n probe?: SubResourceOutput;\n /** Array of references to application gateway trusted root certificates. */\n trustedRootCertificates?: Array<SubResourceOutput>;\n /** Server name indication to be sent to the backend servers for Tls protocol. */\n hostName?: string;\n /** Whether to pick server name indication from the host name of the backend server for Tls protocol. Default value is false. */\n pickHostNameFromBackendAddress?: boolean;\n /** The provisioning state of the backend HTTP settings resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Http listener of an application gateway. */\nexport interface ApplicationGatewayHttpListenerOutput extends SubResourceOutput {\n /** Properties of the application gateway HTTP listener. */\n properties?: ApplicationGatewayHttpListenerPropertiesFormatOutput;\n /** Name of the HTTP listener that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of HTTP listener of an application gateway. */\nexport interface ApplicationGatewayHttpListenerPropertiesFormatOutput {\n /** Frontend IP configuration resource of an application gateway. */\n frontendIPConfiguration?: SubResourceOutput;\n /** Frontend port resource of an application gateway. */\n frontendPort?: SubResourceOutput;\n /** Protocol of the HTTP listener. */\n protocol?: \"Http\" | \"Https\" | \"Tcp\" | \"Tls\";\n /** Host name of HTTP listener. */\n hostName?: string;\n /** SSL certificate resource of an application gateway. */\n sslCertificate?: SubResourceOutput;\n /** SSL profile resource of the application gateway. */\n sslProfile?: SubResourceOutput;\n /** Applicable only if protocol is https. Enables SNI for multi-hosting. */\n requireServerNameIndication?: boolean;\n /** The provisioning state of the HTTP listener resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Custom error configurations of the HTTP listener. */\n customErrorConfigurations?: Array<ApplicationGatewayCustomErrorOutput>;\n /** Reference to the FirewallPolicy resource. */\n firewallPolicy?: SubResourceOutput;\n /** List of Host names for HTTP Listener that allows special wildcard characters as well. */\n hostNames?: Array<string>;\n}\n\n/** Customer error of an application gateway. */\nexport interface ApplicationGatewayCustomErrorOutput {\n /** Status code of the application gateway customer error. */\n statusCode?: \"HttpStatus403\" | \"HttpStatus502\";\n /** Error page URL of the application gateway customer error. */\n customErrorPageUrl?: string;\n}\n\n/** Listener of an application gateway. */\nexport interface ApplicationGatewayListenerOutput extends SubResourceOutput {\n /** Properties of the application gateway listener. */\n properties?: ApplicationGatewayListenerPropertiesFormatOutput;\n /** Name of the listener that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of listener of an application gateway. */\nexport interface ApplicationGatewayListenerPropertiesFormatOutput {\n /** Frontend IP configuration resource of an application gateway. */\n frontendIPConfiguration?: SubResourceOutput;\n /** Frontend port resource of an application gateway. */\n frontendPort?: SubResourceOutput;\n /** Protocol of the listener. */\n protocol?: \"Http\" | \"Https\" | \"Tcp\" | \"Tls\";\n /** SSL certificate resource of an application gateway. */\n sslCertificate?: SubResourceOutput;\n /** SSL profile resource of the application gateway. */\n sslProfile?: SubResourceOutput;\n /** The provisioning state of the listener resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** SSL profile of an application gateway. */\nexport interface ApplicationGatewaySslProfileOutput extends SubResourceOutput {\n /** Properties of the application gateway SSL profile. */\n properties?: ApplicationGatewaySslProfilePropertiesFormatOutput;\n /** Name of the SSL profile that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of SSL profile of an application gateway. */\nexport interface ApplicationGatewaySslProfilePropertiesFormatOutput {\n /** Array of references to application gateway trusted client certificates. */\n trustedClientCertificates?: Array<SubResourceOutput>;\n /** SSL policy of the application gateway resource. */\n sslPolicy?: ApplicationGatewaySslPolicyOutput;\n /** Client authentication configuration of the application gateway resource. */\n clientAuthConfiguration?: ApplicationGatewayClientAuthConfigurationOutput;\n /** The provisioning state of the HTTP listener resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Application gateway client authentication configuration. */\nexport interface ApplicationGatewayClientAuthConfigurationOutput {\n /** Verify client certificate issuer name on the application gateway. */\n verifyClientCertIssuerDN?: boolean;\n /** Verify client certificate revocation status. */\n verifyClientRevocation?: \"None\" | \"OCSP\";\n}\n\n/** UrlPathMaps give a url path to the backend mapping information for PathBasedRouting. */\nexport interface ApplicationGatewayUrlPathMapOutput extends SubResourceOutput {\n /** Properties of the application gateway URL path map. */\n properties?: ApplicationGatewayUrlPathMapPropertiesFormatOutput;\n /** Name of the URL path map that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of UrlPathMap of the application gateway. */\nexport interface ApplicationGatewayUrlPathMapPropertiesFormatOutput {\n /** Default backend address pool resource of URL path map. */\n defaultBackendAddressPool?: SubResourceOutput;\n /** Default backend http settings resource of URL path map. */\n defaultBackendHttpSettings?: SubResourceOutput;\n /** Default Rewrite rule set resource of URL path map. */\n defaultRewriteRuleSet?: SubResourceOutput;\n /** Default redirect configuration resource of URL path map. */\n defaultRedirectConfiguration?: SubResourceOutput;\n /** Default Load Distribution Policy resource of URL path map. */\n defaultLoadDistributionPolicy?: SubResourceOutput;\n /** Path rule of URL path map resource. */\n pathRules?: Array<ApplicationGatewayPathRuleOutput>;\n /** The provisioning state of the URL path map resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Path rule of URL path map of an application gateway. */\nexport interface ApplicationGatewayPathRuleOutput extends SubResourceOutput {\n /** Properties of the application gateway path rule. */\n properties?: ApplicationGatewayPathRulePropertiesFormatOutput;\n /** Name of the path rule that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of path rule of an application gateway. */\nexport interface ApplicationGatewayPathRulePropertiesFormatOutput {\n /** Path rules of URL path map. */\n paths?: Array<string>;\n /** Backend address pool resource of URL path map path rule. */\n backendAddressPool?: SubResourceOutput;\n /** Backend http settings resource of URL path map path rule. */\n backendHttpSettings?: SubResourceOutput;\n /** Redirect configuration resource of URL path map path rule. */\n redirectConfiguration?: SubResourceOutput;\n /** Rewrite rule set resource of URL path map path rule. */\n rewriteRuleSet?: SubResourceOutput;\n /** Load Distribution Policy resource of URL path map path rule. */\n loadDistributionPolicy?: SubResourceOutput;\n /** The provisioning state of the path rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Reference to the FirewallPolicy resource. */\n firewallPolicy?: SubResourceOutput;\n}\n\n/** Request routing rule of an application gateway. */\nexport interface ApplicationGatewayRequestRoutingRuleOutput extends SubResourceOutput {\n /** Properties of the application gateway request routing rule. */\n properties?: ApplicationGatewayRequestRoutingRulePropertiesFormatOutput;\n /** Name of the request routing rule that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of request routing rule of the application gateway. */\nexport interface ApplicationGatewayRequestRoutingRulePropertiesFormatOutput {\n /** Rule type. */\n ruleType?: \"Basic\" | \"PathBasedRouting\";\n /** Priority of the request routing rule. */\n priority?: number;\n /** Backend address pool resource of the application gateway. */\n backendAddressPool?: SubResourceOutput;\n /** Backend http settings resource of the application gateway. */\n backendHttpSettings?: SubResourceOutput;\n /** Http listener resource of the application gateway. */\n httpListener?: SubResourceOutput;\n /** URL path map resource of the application gateway. */\n urlPathMap?: SubResourceOutput;\n /** Rewrite Rule Set resource in Basic rule of the application gateway. */\n rewriteRuleSet?: SubResourceOutput;\n /** Redirect configuration resource of the application gateway. */\n redirectConfiguration?: SubResourceOutput;\n /** Load Distribution Policy resource of the application gateway. */\n loadDistributionPolicy?: SubResourceOutput;\n /** The provisioning state of the request routing rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Routing rule of an application gateway. */\nexport interface ApplicationGatewayRoutingRuleOutput extends SubResourceOutput {\n /** Properties of the application gateway routing rule. */\n properties?: ApplicationGatewayRoutingRulePropertiesFormatOutput;\n /** Name of the routing rule that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of routing rule of the application gateway. */\nexport interface ApplicationGatewayRoutingRulePropertiesFormatOutput {\n /** Rule type. */\n ruleType?: \"Basic\" | \"PathBasedRouting\";\n /** Priority of the routing rule. */\n priority: number;\n /** Backend address pool resource of the application gateway. */\n backendAddressPool?: SubResourceOutput;\n /** Backend settings resource of the application gateway. */\n backendSettings?: SubResourceOutput;\n /** Listener resource of the application gateway. */\n listener?: SubResourceOutput;\n /** The provisioning state of the request routing rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Rewrite rule set of an application gateway. */\nexport interface ApplicationGatewayRewriteRuleSetOutput extends SubResourceOutput {\n /** Properties of the application gateway rewrite rule set. */\n properties?: ApplicationGatewayRewriteRuleSetPropertiesFormatOutput;\n /** Name of the rewrite rule set that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of rewrite rule set of the application gateway. */\nexport interface ApplicationGatewayRewriteRuleSetPropertiesFormatOutput {\n /** Rewrite rules in the rewrite rule set. */\n rewriteRules?: Array<ApplicationGatewayRewriteRuleOutput>;\n /** The provisioning state of the rewrite rule set resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Rewrite rule of an application gateway. */\nexport interface ApplicationGatewayRewriteRuleOutput {\n /** Name of the rewrite rule that is unique within an Application Gateway. */\n name?: string;\n /** Rule Sequence of the rewrite rule that determines the order of execution of a particular rule in a RewriteRuleSet. */\n ruleSequence?: number;\n /** Conditions based on which the action set execution will be evaluated. */\n conditions?: Array<ApplicationGatewayRewriteRuleConditionOutput>;\n /** Set of actions to be done as part of the rewrite Rule. */\n actionSet?: ApplicationGatewayRewriteRuleActionSetOutput;\n}\n\n/** Set of conditions in the Rewrite Rule in Application Gateway. */\nexport interface ApplicationGatewayRewriteRuleConditionOutput {\n /** The condition parameter of the RewriteRuleCondition. */\n variable?: string;\n /** The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition. */\n pattern?: string;\n /** Setting this parameter to truth value with force the pattern to do a case in-sensitive comparison. */\n ignoreCase?: boolean;\n /** Setting this value as truth will force to check the negation of the condition given by the user. */\n negate?: boolean;\n}\n\n/** Set of actions in the Rewrite Rule in Application Gateway. */\nexport interface ApplicationGatewayRewriteRuleActionSetOutput {\n /** Request Header Actions in the Action Set. */\n requestHeaderConfigurations?: Array<ApplicationGatewayHeaderConfigurationOutput>;\n /** Response Header Actions in the Action Set. */\n responseHeaderConfigurations?: Array<ApplicationGatewayHeaderConfigurationOutput>;\n /** Url Configuration Action in the Action Set. */\n urlConfiguration?: ApplicationGatewayUrlConfigurationOutput;\n}\n\n/** Header configuration of the Actions set in Application Gateway. */\nexport interface ApplicationGatewayHeaderConfigurationOutput {\n /** Header name of the header configuration. */\n headerName?: string;\n /** Header value of the header configuration. */\n headerValue?: string;\n}\n\n/** Url configuration of the Actions set in Application Gateway. */\nexport interface ApplicationGatewayUrlConfigurationOutput {\n /** Url path which user has provided for url rewrite. Null means no path will be updated. Default value is null. */\n modifiedPath?: string;\n /** Query string which user has provided for url rewrite. Null means no query string will be updated. Default value is null. */\n modifiedQueryString?: string;\n /** If set as true, it will re-evaluate the url path map provided in path based request routing rules using modified path. Default value is false. */\n reroute?: boolean;\n}\n\n/** Redirect configuration of an application gateway. */\nexport interface ApplicationGatewayRedirectConfigurationOutput extends SubResourceOutput {\n /** Properties of the application gateway redirect configuration. */\n properties?: ApplicationGatewayRedirectConfigurationPropertiesFormatOutput;\n /** Name of the redirect configuration that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of redirect configuration of the application gateway. */\nexport interface ApplicationGatewayRedirectConfigurationPropertiesFormatOutput {\n /** HTTP redirection type. */\n redirectType?: \"Permanent\" | \"Found\" | \"SeeOther\" | \"Temporary\";\n /** Reference to a listener to redirect the request to. */\n targetListener?: SubResourceOutput;\n /** Url to redirect the request to. */\n targetUrl?: string;\n /** Include path in the redirected url. */\n includePath?: boolean;\n /** Include query string in the redirected url. */\n includeQueryString?: boolean;\n /** Request routing specifying redirect configuration. */\n requestRoutingRules?: Array<SubResourceOutput>;\n /** Url path maps specifying default redirect configuration. */\n urlPathMaps?: Array<SubResourceOutput>;\n /** Path rules specifying redirect configuration. */\n pathRules?: Array<SubResourceOutput>;\n}\n\n/** Application gateway web application firewall configuration. */\nexport interface ApplicationGatewayWebApplicationFirewallConfigurationOutput {\n /** Whether the web application firewall is enabled or not. */\n enabled: boolean;\n /** Web application firewall mode. */\n firewallMode: \"Detection\" | \"Prevention\";\n /** The type of the web application firewall rule set. Possible values are: 'OWASP'. */\n ruleSetType: string;\n /** The version of the rule set type. */\n ruleSetVersion: string;\n /** The disabled rule groups. */\n disabledRuleGroups?: Array<ApplicationGatewayFirewallDisabledRuleGroupOutput>;\n /** Whether allow WAF to check request Body. */\n requestBodyCheck?: boolean;\n /** Maximum request body size for WAF. */\n maxRequestBodySize?: number;\n /** Maximum request body size in Kb for WAF. */\n maxRequestBodySizeInKb?: number;\n /** Maximum file upload size in Mb for WAF. */\n fileUploadLimitInMb?: number;\n /** The exclusion list. */\n exclusions?: Array<ApplicationGatewayFirewallExclusionOutput>;\n}\n\n/** Allows to disable rules within a rule group or an entire rule group. */\nexport interface ApplicationGatewayFirewallDisabledRuleGroupOutput {\n /** The name of the rule group that will be disabled. */\n ruleGroupName: string;\n /** The list of rules that will be disabled. If null, all rules of the rule group will be disabled. */\n rules?: Array<number>;\n}\n\n/** Allow to exclude some variable satisfy the condition for the WAF check. */\nexport interface ApplicationGatewayFirewallExclusionOutput {\n /** The variable to be excluded. */\n matchVariable: string;\n /** When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to. */\n selectorMatchOperator: string;\n /** When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to. */\n selector: string;\n}\n\n/** Application Gateway autoscale configuration. */\nexport interface ApplicationGatewayAutoscaleConfigurationOutput {\n /** Lower bound on number of Application Gateway capacity. */\n minCapacity: number;\n /** Upper bound on number of Application Gateway capacity. */\n maxCapacity?: number;\n}\n\n/** Private Link Configuration on an application gateway. */\nexport interface ApplicationGatewayPrivateLinkConfigurationOutput extends SubResourceOutput {\n /** Properties of the application gateway private link configuration. */\n properties?: ApplicationGatewayPrivateLinkConfigurationPropertiesOutput;\n /** Name of the private link configuration that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of private link configuration on an application gateway. */\nexport interface ApplicationGatewayPrivateLinkConfigurationPropertiesOutput {\n /** An array of application gateway private link ip configurations. */\n ipConfigurations?: Array<ApplicationGatewayPrivateLinkIpConfigurationOutput>;\n /** The provisioning state of the application gateway private link configuration. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** The application gateway private link ip configuration. */\nexport interface ApplicationGatewayPrivateLinkIpConfigurationOutput extends SubResourceOutput {\n /** Properties of an application gateway private link ip configuration. */\n properties?: ApplicationGatewayPrivateLinkIpConfigurationPropertiesOutput;\n /** The name of application gateway private link ip configuration. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The resource type. */\n readonly type?: string;\n}\n\n/** Properties of an application gateway private link IP configuration. */\nexport interface ApplicationGatewayPrivateLinkIpConfigurationPropertiesOutput {\n /** The private IP address of the IP configuration. */\n privateIPAddress?: string;\n /** The private IP address allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** Reference to the subnet resource. */\n subnet?: SubResourceOutput;\n /** Whether the ip configuration is primary or not. */\n primary?: boolean;\n /** The provisioning state of the application gateway private link IP configuration. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Private Endpoint connection on an application gateway. */\nexport interface ApplicationGatewayPrivateEndpointConnectionOutput extends SubResourceOutput {\n /** Properties of the application gateway private endpoint connection. */\n properties?: ApplicationGatewayPrivateEndpointConnectionPropertiesOutput;\n /** Name of the private endpoint connection on an application gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of Private Link Resource of an application gateway. */\nexport interface ApplicationGatewayPrivateEndpointConnectionPropertiesOutput {\n /** The resource of private end point. */\n readonly privateEndpoint?: PrivateEndpointOutput;\n /** A collection of information about the state of the connection between service consumer and provider. */\n privateLinkServiceConnectionState?: PrivateLinkServiceConnectionStateOutput;\n /** The provisioning state of the application gateway private endpoint connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The consumer link id. */\n readonly linkIdentifier?: string;\n}\n\n/** Load Distribution Policy of an application gateway. */\nexport interface ApplicationGatewayLoadDistributionPolicyOutput extends SubResourceOutput {\n /** Properties of the application gateway load distribution policy. */\n properties?: ApplicationGatewayLoadDistributionPolicyPropertiesFormatOutput;\n /** Name of the load distribution policy that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of Load Distribution Policy of an application gateway. */\nexport interface ApplicationGatewayLoadDistributionPolicyPropertiesFormatOutput {\n /** Load Distribution Targets resource of an application gateway. */\n loadDistributionTargets?: Array<ApplicationGatewayLoadDistributionTargetOutput>;\n /** Load Distribution Targets resource of an application gateway. */\n loadDistributionAlgorithm?: \"RoundRobin\" | \"LeastConnections\" | \"IpHash\";\n /** The provisioning state of the Load Distribution Policy resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Load Distribution Target of an application gateway. */\nexport interface ApplicationGatewayLoadDistributionTargetOutput extends SubResourceOutput {\n /** Properties of the application gateway load distribution target. */\n properties?: ApplicationGatewayLoadDistributionTargetPropertiesFormatOutput;\n /** Name of the load distribution policy that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\nexport interface ApplicationGatewayLoadDistributionTargetPropertiesFormatOutput {\n /** Weight per server. Range between 1 and 100. */\n weightPerServer?: number;\n /** Backend address pool resource of the application gateway. */\n backendAddressPool?: SubResourceOutput;\n}\n\n/** Application Gateway global configuration. */\nexport interface ApplicationGatewayGlobalConfigurationOutput {\n /** Enable request buffering. */\n enableRequestBuffering?: boolean;\n /** Enable response buffering. */\n enableResponseBuffering?: boolean;\n}\n\n/** Identity for the resource. */\nexport interface ManagedServiceIdentityOutput {\n /** The principal id of the system assigned identity. This property will only be provided for a system assigned identity. */\n readonly principalId?: string;\n /** The tenant id of the system assigned identity. This property will only be provided for a system assigned identity. */\n readonly tenantId?: string;\n /** The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine. */\n type?: \"SystemAssigned\" | \"UserAssigned\" | \"SystemAssigned, UserAssigned\" | \"None\";\n /** The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */\n userAssignedIdentities?: Record<\n string,\n Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalpropertiesOutput\n >;\n}\n\nexport interface Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalpropertiesOutput {\n /** The principal id of user assigned identity. */\n readonly principalId?: string;\n /** The client id of user assigned identity. */\n readonly clientId?: string;\n}\n\n/** Response for ListApplicationGateways API service call. */\nexport interface ApplicationGatewayListResultOutput {\n /** List of an application gateways in a resource group. */\n value?: Array<ApplicationGatewayOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ApplicationGatewayBackendHealth API service call. */\nexport interface ApplicationGatewayBackendHealthOutput {\n /** A list of ApplicationGatewayBackendHealthPool resources. */\n backendAddressPools?: Array<ApplicationGatewayBackendHealthPoolOutput>;\n}\n\n/** Application gateway BackendHealth pool. */\nexport interface ApplicationGatewayBackendHealthPoolOutput {\n /** Reference to an ApplicationGatewayBackendAddressPool resource. */\n backendAddressPool?: ApplicationGatewayBackendAddressPoolOutput;\n /** List of ApplicationGatewayBackendHealthHttpSettings resources. */\n backendHttpSettingsCollection?: Array<ApplicationGatewayBackendHealthHttpSettingsOutput>;\n}\n\n/** Application gateway BackendHealthHttp settings. */\nexport interface ApplicationGatewayBackendHealthHttpSettingsOutput {\n /** Reference to an ApplicationGatewayBackendHttpSettings resource. */\n backendHttpSettings?: ApplicationGatewayBackendHttpSettingsOutput;\n /** List of ApplicationGatewayBackendHealthServer resources. */\n servers?: Array<ApplicationGatewayBackendHealthServerOutput>;\n}\n\n/** Application gateway backendhealth http settings. */\nexport interface ApplicationGatewayBackendHealthServerOutput {\n /** IP address or FQDN of backend server. */\n address?: string;\n /** Reference to IP configuration of backend server. */\n ipConfiguration?: NetworkInterfaceIPConfigurationOutput;\n /** Health of backend server. */\n health?: \"Unknown\" | \"Up\" | \"Down\" | \"Partial\" | \"Draining\";\n /** Health Probe Log. */\n healthProbeLog?: string;\n}\n\n/** Result of on demand test probe. */\nexport interface ApplicationGatewayBackendHealthOnDemandOutput {\n /** Reference to an ApplicationGatewayBackendAddressPool resource. */\n backendAddressPool?: ApplicationGatewayBackendAddressPoolOutput;\n /** Application gateway BackendHealthHttp settings. */\n backendHealthHttpSettings?: ApplicationGatewayBackendHealthHttpSettingsOutput;\n}\n\n/** Response for ListApplicationGatewayPrivateLinkResources API service call. Gets all private link resources for an application gateway. */\nexport interface ApplicationGatewayPrivateLinkResourceListResultOutput {\n /** List of private link resources of an application gateway. */\n value?: Array<ApplicationGatewayPrivateLinkResourceOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** PrivateLink Resource of an application gateway. */\nexport interface ApplicationGatewayPrivateLinkResourceOutput extends SubResourceOutput {\n /** Properties of the application gateway private link resource. */\n properties?: ApplicationGatewayPrivateLinkResourcePropertiesOutput;\n /** Name of the private link resource that is unique within an Application Gateway. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of a private link resource. */\nexport interface ApplicationGatewayPrivateLinkResourcePropertiesOutput {\n /** Group identifier of private link resource. */\n readonly groupId?: string;\n /** Required member names of private link resource. */\n readonly requiredMembers?: Array<string>;\n /** Required DNS zone names of the the private link resource. */\n requiredZoneNames?: Array<string>;\n}\n\n/** Response for ListApplicationGatewayPrivateEndpointConnection API service call. Gets all private endpoint connections for an application gateway. */\nexport interface ApplicationGatewayPrivateEndpointConnectionListResultOutput {\n /** List of private endpoint connections on an application gateway. */\n value?: Array<ApplicationGatewayPrivateEndpointConnectionOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Common error representation. */\nexport interface ErrorModelOutput {\n /** Error code. */\n code?: string;\n /** Error message. */\n message?: string;\n /** Error target. */\n target?: string;\n /** Error details. */\n details?: Array<ErrorDetailsOutput>;\n /** Inner error message. */\n innerError?: string;\n}\n\n/** Common error details representation. */\nexport interface ErrorDetailsOutput {\n /** Error code. */\n code?: string;\n /** Error target. */\n target?: string;\n /** Error message. */\n message?: string;\n}\n\n/** Response for ApplicationGatewayAvailableWafRuleSets API service call. */\nexport interface ApplicationGatewayAvailableWafRuleSetsResultOutput {\n /** The list of application gateway rule sets. */\n value?: Array<ApplicationGatewayFirewallRuleSetOutput>;\n}\n\n/** A web application firewall rule set. */\nexport interface ApplicationGatewayFirewallRuleSetOutput extends ResourceOutput {\n /** Properties of the application gateway firewall rule set. */\n properties?: ApplicationGatewayFirewallRuleSetPropertiesFormatOutput;\n}\n\n/** Properties of the web application firewall rule set. */\nexport interface ApplicationGatewayFirewallRuleSetPropertiesFormatOutput {\n /** The provisioning state of the web application firewall rule set. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The type of the web application firewall rule set. */\n ruleSetType: string;\n /** The version of the web application firewall rule set type. */\n ruleSetVersion: string;\n /** The rule groups of the web application firewall rule set. */\n ruleGroups: Array<ApplicationGatewayFirewallRuleGroupOutput>;\n /** Tier of an application gateway that support the rule set. */\n tiers?: Array<\"Standard\" | \"WAF\" | \"Standard_v2\" | \"WAF_v2\">;\n}\n\n/** A web application firewall rule group. */\nexport interface ApplicationGatewayFirewallRuleGroupOutput {\n /** The name of the web application firewall rule group. */\n ruleGroupName: string;\n /** The description of the web application firewall rule group. */\n description?: string;\n /** The rules of the web application firewall rule group. */\n rules: Array<ApplicationGatewayFirewallRuleOutput>;\n}\n\n/** A web application firewall rule. */\nexport interface ApplicationGatewayFirewallRuleOutput {\n /** The identifier of the web application firewall rule. */\n ruleId: number;\n /** The string representation of the web application firewall rule identifier. */\n ruleIdString?: string;\n /** The string representation of the web application firewall rule state. */\n state?: \"Enabled\" | \"Disabled\";\n /** The string representation of the web application firewall rule action. */\n action?: \"None\" | \"AnomalyScoring\" | \"Allow\" | \"Block\" | \"Log\";\n /** The description of the web application firewall rule. */\n description?: string;\n}\n\n/** Response for ApplicationGatewayAvailableSslOptions API service call. */\nexport interface ApplicationGatewayAvailableSslOptionsOutput extends ResourceOutput {\n /** Properties of the application gateway available SSL options. */\n properties?: ApplicationGatewayAvailableSslOptionsPropertiesFormatOutput;\n}\n\n/** Properties of ApplicationGatewayAvailableSslOptions. */\nexport interface ApplicationGatewayAvailableSslOptionsPropertiesFormatOutput {\n /** List of available Ssl predefined policy. */\n predefinedPolicies?: Array<SubResourceOutput>;\n /** Name of the Ssl predefined policy applied by default to application gateway. */\n defaultPolicy?:\n | \"AppGwSslPolicy20150501\"\n | \"AppGwSslPolicy20170401\"\n | \"AppGwSslPolicy20170401S\"\n | \"AppGwSslPolicy20220101\"\n | \"AppGwSslPolicy20220101S\";\n /** List of available Ssl cipher suites. */\n availableCipherSuites?: Array<\n | \"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_DHE_RSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_DHE_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_DHE_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_RSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_RSA_WITH_AES_256_CBC_SHA256\"\n | \"TLS_RSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_AES_256_CBC_SHA256\"\n | \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA256\"\n | \"TLS_DHE_DSS_WITH_AES_256_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"\n | \"TLS_RSA_WITH_3DES_EDE_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\"\n >;\n /** List of available Ssl protocols. */\n availableProtocols?: Array<\"TLSv1_0\" | \"TLSv1_1\" | \"TLSv1_2\" | \"TLSv1_3\">;\n}\n\n/** Response for ApplicationGatewayAvailableSslOptions API service call. */\nexport interface ApplicationGatewayAvailableSslPredefinedPoliciesOutput {\n /** List of available Ssl predefined policy. */\n value?: Array<ApplicationGatewaySslPredefinedPolicyOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** An Ssl predefined policy. */\nexport interface ApplicationGatewaySslPredefinedPolicyOutput extends SubResourceOutput {\n /** Name of the Ssl predefined policy. */\n name?: string;\n /** Properties of the application gateway SSL predefined policy. */\n properties?: ApplicationGatewaySslPredefinedPolicyPropertiesFormatOutput;\n}\n\n/** Properties of ApplicationGatewaySslPredefinedPolicy. */\nexport interface ApplicationGatewaySslPredefinedPolicyPropertiesFormatOutput {\n /** Ssl cipher suites to be enabled in the specified order for application gateway. */\n cipherSuites?: Array<\n | \"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_DHE_RSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_DHE_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_DHE_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_DHE_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_RSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_RSA_WITH_AES_256_CBC_SHA256\"\n | \"TLS_RSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_RSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_RSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA\"\n | \"TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_AES_256_CBC_SHA256\"\n | \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA256\"\n | \"TLS_DHE_DSS_WITH_AES_256_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_AES_128_CBC_SHA\"\n | \"TLS_RSA_WITH_3DES_EDE_CBC_SHA\"\n | \"TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA\"\n | \"TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256\"\n | \"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\"\n >;\n /** Minimum version of Ssl protocol to be supported on application gateway. */\n minProtocolVersion?: \"TLSv1_0\" | \"TLSv1_1\" | \"TLSv1_2\" | \"TLSv1_3\";\n}\n\n/** Response for ApplicationGatewayWafDynamicManifest API service call. */\nexport interface ApplicationGatewayWafDynamicManifestResultOutput {\n /** Resource ID. */\n id?: string;\n /** Resource name. */\n readonly name?: string;\n /** Resource type. */\n readonly type?: string;\n /** Properties of the ApplicationGatewayWafDynamicManifest . */\n properties?: ApplicationGatewayWafDynamicManifestPropertiesResultOutput;\n}\n\n/** Properties of ApplicationGatewayWafDynamicManifest. */\nexport interface ApplicationGatewayWafDynamicManifestPropertiesResultOutput {\n /** The default ruleset. */\n defaultRuleSet?: DefaultRuleSetPropertyFormatOutput;\n /** The available rulesets. */\n availableRuleSets?: Array<ApplicationGatewayFirewallManifestRuleSetOutput>;\n}\n\n/** the default web application firewall rule set. */\nexport interface DefaultRuleSetPropertyFormatOutput {\n /** The type of the web application firewall rule set. */\n ruleSetType?: string;\n /** The version of the web application firewall rule set type. */\n ruleSetVersion?: string;\n}\n\n/** Properties of the web application firewall rule set. */\nexport interface ApplicationGatewayFirewallManifestRuleSetOutput {\n /** The type of the web application firewall rule set. */\n ruleSetType: string;\n /** The version of the web application firewall rule set type. */\n ruleSetVersion: string;\n /** The rule set status */\n status?: \"Preview\" | \"GA\" | \"Supported\" | \"Deprecated\";\n /** Tier of an application gateway that support the rule set. */\n tiers?: Array<\"Standard\" | \"WAF\" | \"Standard_v2\" | \"WAF_v2\">;\n /** The rule groups of the web application firewall rule set. */\n ruleGroups: Array<ApplicationGatewayFirewallRuleGroupOutput>;\n}\n\n/** Response for ApplicationGatewayWafDynamicManifests API service call. */\nexport interface ApplicationGatewayWafDynamicManifestResultListOutput {\n /** The list of application gateway waf manifest. */\n value?: Array<ApplicationGatewayWafDynamicManifestResultOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** A list of application security groups. */\nexport interface ApplicationSecurityGroupListResultOutput {\n /** A list of application security groups. */\n value?: Array<ApplicationSecurityGroupOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** An array of available delegations. */\nexport interface AvailableDelegationsResultOutput {\n /** An array of available delegations. */\n value?: Array<AvailableDelegationOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The serviceName of an AvailableDelegation indicates a possible delegation for a subnet. */\nexport interface AvailableDelegationOutput {\n /** The name of the AvailableDelegation resource. */\n name?: string;\n /** A unique identifier of the AvailableDelegation resource. */\n id?: string;\n /** Resource type. */\n type?: string;\n /** The name of the service and resource. */\n serviceName?: string;\n /** The actions permitted to the service upon delegation. */\n actions?: Array<string>;\n}\n\n/** An array of available service aliases. */\nexport interface AvailableServiceAliasesResultOutput {\n /** An array of available service aliases. */\n value?: Array<AvailableServiceAliasOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The available service alias. */\nexport interface AvailableServiceAliasOutput {\n /** The name of the service alias. */\n name?: string;\n /** The ID of the service alias. */\n id?: string;\n /** The type of the resource. */\n type?: string;\n /** The resource name of the service alias. */\n resourceName?: string;\n}\n\n/** Azure Firewall resource. */\nexport interface AzureFirewallOutput extends ResourceOutput {\n /** Properties of the azure firewall. */\n properties?: AzureFirewallPropertiesFormatOutput;\n /** A list of availability zones denoting where the resource needs to come from. */\n zones?: Array<string>;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the Azure Firewall. */\nexport interface AzureFirewallPropertiesFormatOutput {\n /** Collection of application rule collections used by Azure Firewall. */\n applicationRuleCollections?: Array<AzureFirewallApplicationRuleCollectionOutput>;\n /** Collection of NAT rule collections used by Azure Firewall. */\n natRuleCollections?: Array<AzureFirewallNatRuleCollectionOutput>;\n /** Collection of network rule collections used by Azure Firewall. */\n networkRuleCollections?: Array<AzureFirewallNetworkRuleCollectionOutput>;\n /** IP configuration of the Azure Firewall resource. */\n ipConfigurations?: Array<AzureFirewallIPConfigurationOutput>;\n /** IP configuration of the Azure Firewall used for management traffic. */\n managementIpConfiguration?: AzureFirewallIPConfigurationOutput;\n /** The provisioning state of the Azure firewall resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The operation mode for Threat Intelligence. */\n threatIntelMode?: \"Alert\" | \"Deny\" | \"Off\";\n /** The virtualHub to which the firewall belongs. */\n virtualHub?: SubResourceOutput;\n /** The firewallPolicy associated with this azure firewall. */\n firewallPolicy?: SubResourceOutput;\n /** IP addresses associated with AzureFirewall. */\n hubIPAddresses?: HubIPAddressesOutput;\n /** IpGroups associated with AzureFirewall. */\n readonly ipGroups?: Array<AzureFirewallIpGroupsOutput>;\n /** The Azure Firewall Resource SKU. */\n sku?: AzureFirewallSkuOutput;\n /** The additional properties used to further config this azure firewall. */\n additionalProperties?: Record<string, string>;\n}\n\n/** Application rule collection resource. */\nexport interface AzureFirewallApplicationRuleCollectionOutput extends SubResourceOutput {\n /** Properties of the azure firewall application rule collection. */\n properties?: AzureFirewallApplicationRuleCollectionPropertiesFormatOutput;\n /** The name of the resource that is unique within the Azure firewall. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the application rule collection. */\nexport interface AzureFirewallApplicationRuleCollectionPropertiesFormatOutput {\n /** Priority of the application rule collection resource. */\n priority?: number;\n /** The action type of a rule collection. */\n action?: AzureFirewallRCActionOutput;\n /** Collection of rules used by a application rule collection. */\n rules?: Array<AzureFirewallApplicationRuleOutput>;\n /** The provisioning state of the application rule collection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Properties of the AzureFirewallRCAction. */\nexport interface AzureFirewallRCActionOutput {\n /** The type of action. */\n type?: \"Allow\" | \"Deny\";\n}\n\n/** Properties of an application rule. */\nexport interface AzureFirewallApplicationRuleOutput {\n /** Name of the application rule. */\n name?: string;\n /** Description of the rule. */\n description?: string;\n /** List of source IP addresses for this rule. */\n sourceAddresses?: Array<string>;\n /** Array of ApplicationRuleProtocols. */\n protocols?: Array<AzureFirewallApplicationRuleProtocolOutput>;\n /** List of FQDNs for this rule. */\n targetFqdns?: Array<string>;\n /** List of FQDN Tags for this rule. */\n fqdnTags?: Array<string>;\n /** List of source IpGroups for this rule. */\n sourceIpGroups?: Array<string>;\n}\n\n/** Properties of the application rule protocol. */\nexport interface AzureFirewallApplicationRuleProtocolOutput {\n /** Protocol type. */\n protocolType?: \"Http\" | \"Https\" | \"Mssql\";\n /** Port number for the protocol, cannot be greater than 64000. This field is optional. */\n port?: number;\n}\n\n/** NAT rule collection resource. */\nexport interface AzureFirewallNatRuleCollectionOutput extends SubResourceOutput {\n /** Properties of the azure firewall NAT rule collection. */\n properties?: AzureFirewallNatRuleCollectionPropertiesOutput;\n /** The name of the resource that is unique within the Azure firewall. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the NAT rule collection. */\nexport interface AzureFirewallNatRuleCollectionPropertiesOutput {\n /** Priority of the NAT rule collection resource. */\n priority?: number;\n /** The action type of a NAT rule collection. */\n action?: AzureFirewallNatRCActionOutput;\n /** Collection of rules used by a NAT rule collection. */\n rules?: Array<AzureFirewallNatRuleOutput>;\n /** The provisioning state of the NAT rule collection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** AzureFirewall NAT Rule Collection Action. */\nexport interface AzureFirewallNatRCActionOutput {\n /** The type of action. */\n type?: \"Snat\" | \"Dnat\";\n}\n\n/** Properties of a NAT rule. */\nexport interface AzureFirewallNatRuleOutput {\n /** Name of the NAT rule. */\n name?: string;\n /** Description of the rule. */\n description?: string;\n /** List of source IP addresses for this rule. */\n sourceAddresses?: Array<string>;\n /** List of destination IP addresses for this rule. Supports IP ranges, prefixes, and service tags. */\n destinationAddresses?: Array<string>;\n /** List of destination ports. */\n destinationPorts?: Array<string>;\n /** Array of AzureFirewallNetworkRuleProtocols applicable to this NAT rule. */\n protocols?: Array<\"TCP\" | \"UDP\" | \"Any\" | \"ICMP\">;\n /** The translated address for this NAT rule. */\n translatedAddress?: string;\n /** The translated port for this NAT rule. */\n translatedPort?: string;\n /** The translated FQDN for this NAT rule. */\n translatedFqdn?: string;\n /** List of source IpGroups for this rule. */\n sourceIpGroups?: Array<string>;\n}\n\n/** Network rule collection resource. */\nexport interface AzureFirewallNetworkRuleCollectionOutput extends SubResourceOutput {\n /** Properties of the azure firewall network rule collection. */\n properties?: AzureFirewallNetworkRuleCollectionPropertiesFormatOutput;\n /** The name of the resource that is unique within the Azure firewall. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the network rule collection. */\nexport interface AzureFirewallNetworkRuleCollectionPropertiesFormatOutput {\n /** Priority of the network rule collection resource. */\n priority?: number;\n /** The action type of a rule collection. */\n action?: AzureFirewallRCActionOutput;\n /** Collection of rules used by a network rule collection. */\n rules?: Array<AzureFirewallNetworkRuleOutput>;\n /** The provisioning state of the network rule collection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Properties of the network rule. */\nexport interface AzureFirewallNetworkRuleOutput {\n /** Name of the network rule. */\n name?: string;\n /** Description of the rule. */\n description?: string;\n /** Array of AzureFirewallNetworkRuleProtocols. */\n protocols?: Array<\"TCP\" | \"UDP\" | \"Any\" | \"ICMP\">;\n /** List of source IP addresses for this rule. */\n sourceAddresses?: Array<string>;\n /** List of destination IP addresses. */\n destinationAddresses?: Array<string>;\n /** List of destination ports. */\n destinationPorts?: Array<string>;\n /** List of destination FQDNs. */\n destinationFqdns?: Array<string>;\n /** List of source IpGroups for this rule. */\n sourceIpGroups?: Array<string>;\n /** List of destination IpGroups for this rule. */\n destinationIpGroups?: Array<string>;\n}\n\n/** IP configuration of an Azure Firewall. */\nexport interface AzureFirewallIPConfigurationOutput extends SubResourceOutput {\n /** Properties of the azure firewall IP configuration. */\n properties?: AzureFirewallIPConfigurationPropertiesFormatOutput;\n /** Name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of IP configuration of an Azure Firewall. */\nexport interface AzureFirewallIPConfigurationPropertiesFormatOutput {\n /** The Firewall Internal Load Balancer IP to be used as the next hop in User Defined Routes. */\n readonly privateIPAddress?: string;\n /** Reference to the subnet resource. This resource must be named 'AzureFirewallSubnet' or 'AzureFirewallManagementSubnet'. */\n subnet?: SubResourceOutput;\n /** Reference to the PublicIP resource. This field is a mandatory input if subnet is not null. */\n publicIPAddress?: SubResourceOutput;\n /** The provisioning state of the Azure firewall IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** IP addresses associated with azure firewall. */\nexport interface HubIPAddressesOutput {\n /** Public IP addresses associated with azure firewall. */\n publicIPs?: HubPublicIPAddressesOutput;\n /** Private IP Address associated with azure firewall. */\n privateIPAddress?: string;\n}\n\n/** Public IP addresses associated with azure firewall. */\nexport interface HubPublicIPAddressesOutput {\n /** The list of Public IP addresses associated with azure firewall or IP addresses to be retained. */\n addresses?: Array<AzureFirewallPublicIPAddressOutput>;\n /** The number of Public IP addresses associated with azure firewall. */\n count?: number;\n}\n\n/** Public IP Address associated with azure firewall. */\nexport interface AzureFirewallPublicIPAddressOutput {\n /** Public IP Address value. */\n address?: string;\n}\n\n/** IpGroups associated with azure firewall. */\nexport interface AzureFirewallIpGroupsOutput {\n /** Resource ID. */\n readonly id?: string;\n /** The iteration number. */\n readonly changeNumber?: string;\n}\n\n/** SKU of an Azure Firewall. */\nexport interface AzureFirewallSkuOutput {\n /** Name of an Azure Firewall SKU. */\n name?: \"AZFW_VNet\" | \"AZFW_Hub\";\n /** Tier of an Azure Firewall. */\n tier?: \"Standard\" | \"Premium\" | \"Basic\";\n}\n\n/** Response for ListAzureFirewalls API service call. */\nexport interface AzureFirewallListResultOutput {\n /** List of Azure Firewalls in a resource group. */\n value?: Array<AzureFirewallOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** List of SNAT IP Prefixes learnt by firewall to not SNAT */\nexport interface IPPrefixesListOutput {\n /** IP Prefix value. */\n ipPrefixes?: Array<string>;\n}\n\n/** Response for ListAzureFirewallFqdnTags API service call. */\nexport interface AzureFirewallFqdnTagListResultOutput {\n /** List of Azure Firewall FQDN Tags in a resource group. */\n value?: Array<AzureFirewallFqdnTagOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Azure Firewall FQDN Tag Resource. */\nexport interface AzureFirewallFqdnTagOutput extends ResourceOutput {\n /** Properties of the azure firewall FQDN tag. */\n properties?: AzureFirewallFqdnTagPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Azure Firewall FQDN Tag Properties. */\nexport interface AzureFirewallFqdnTagPropertiesFormatOutput {\n /** The provisioning state of the Azure firewall FQDN tag resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The name of this FQDN Tag. */\n readonly fqdnTagName?: string;\n}\n\n/** Azure Web Category Resource. */\nexport interface AzureWebCategoryOutput {\n /** Properties of the Azure Web Category. */\n properties?: AzureWebCategoryPropertiesFormatOutput;\n /** Resource ID. */\n id?: string;\n /** Resource name. */\n readonly name?: string;\n /** Resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Azure Web Category Properties. */\nexport interface AzureWebCategoryPropertiesFormatOutput {\n /** The name of the group that the category belongs to. */\n readonly group?: string;\n}\n\n/** Response for ListAzureWebCategories API service call. */\nexport interface AzureWebCategoryListResultOutput {\n /** List of Azure Web Categories for a given Subscription. */\n value?: Array<AzureWebCategoryOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Bastion Host resource. */\nexport interface BastionHostOutput extends ResourceOutput {\n /** Represents the bastion host resource. */\n properties?: BastionHostPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The sku of this Bastion Host. */\n sku?: SkuOutput;\n}\n\n/** Properties of the Bastion Host. */\nexport interface BastionHostPropertiesFormatOutput {\n /** IP configuration of the Bastion Host resource. */\n ipConfigurations?: Array<BastionHostIPConfigurationOutput>;\n /** FQDN for the endpoint on which bastion host is accessible. */\n dnsName?: string;\n /** The provisioning state of the bastion host resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The scale units for the Bastion Host resource. */\n scaleUnits?: number;\n /** Enable/Disable Copy/Paste feature of the Bastion Host resource. */\n disableCopyPaste?: boolean;\n /** Enable/Disable File Copy feature of the Bastion Host resource. */\n enableFileCopy?: boolean;\n /** Enable/Disable IP Connect feature of the Bastion Host resource. */\n enableIpConnect?: boolean;\n /** Enable/Disable Shareable Link of the Bastion Host resource. */\n enableShareableLink?: boolean;\n /** Enable/Disable Tunneling feature of the Bastion Host resource. */\n enableTunneling?: boolean;\n}\n\n/** IP configuration of an Bastion Host. */\nexport interface BastionHostIPConfigurationOutput extends SubResourceOutput {\n /** Represents the ip configuration associated with the resource. */\n properties?: BastionHostIPConfigurationPropertiesFormatOutput;\n /** Name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Ip configuration type. */\n readonly type?: string;\n}\n\n/** Properties of IP configuration of an Bastion Host. */\nexport interface BastionHostIPConfigurationPropertiesFormatOutput {\n /** Reference of the subnet resource. */\n subnet: SubResourceOutput;\n /** Reference of the PublicIP resource. */\n publicIPAddress: SubResourceOutput;\n /** The provisioning state of the bastion host IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Private IP allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n}\n\n/** The sku of this Bastion Host. */\nexport interface SkuOutput {\n /** The name of this Bastion Host. */\n name?: \"Basic\" | \"Standard\";\n}\n\n/** Response for ListBastionHosts API service call. */\nexport interface BastionHostListResultOutput {\n /** List of Bastion Hosts in a resource group. */\n value?: Array<BastionHostOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Bastion Shareable Link. */\nexport interface BastionShareableLinkOutput {\n /** Reference of the virtual machine resource. */\n vm: VmOutput;\n /** The unique Bastion Shareable Link to the virtual machine. */\n readonly bsl?: string;\n /** The time when the link was created. */\n readonly createdAt?: string;\n /** Optional field indicating the warning or error message related to the vm in case of partial failure. */\n readonly message?: string;\n}\n\n/** Describes a Virtual Machine. */\nexport interface VmOutput extends ResourceOutput {}\n\n/** Response for all the Bastion Shareable Link endpoints. */\nexport interface BastionShareableLinkListResultOutput {\n /** List of Bastion Shareable Links for the request. */\n value?: Array<BastionShareableLinkOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for GetActiveSessions. */\nexport interface BastionActiveSessionListResultOutput {\n /** List of active sessions on the bastion. */\n value?: Array<BastionActiveSessionOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** The session detail for a target. */\nexport interface BastionActiveSessionOutput {\n /** A unique id for the session. */\n readonly sessionId?: string;\n /** The time when the session started. */\n readonly startTime?: Record<string, unknown>;\n /** The subscription id for the target virtual machine. */\n readonly targetSubscriptionId?: string;\n /** The type of the resource. */\n readonly resourceType?: string;\n /** The host name of the target. */\n readonly targetHostName?: string;\n /** The resource group of the target. */\n readonly targetResourceGroup?: string;\n /** The user name who is active on this session. */\n readonly userName?: string;\n /** The IP Address of the target. */\n readonly targetIpAddress?: string;\n /** The protocol used to connect to the target. */\n readonly protocol?: \"SSH\" | \"RDP\";\n /** The resource id of the target. */\n readonly targetResourceId?: string;\n /** Duration in mins the session has been active. */\n readonly sessionDurationInMins?: number;\n}\n\n/** Response for DisconnectActiveSessions. */\nexport interface BastionSessionDeleteResultOutput {\n /** List of sessions with their corresponding state. */\n value?: Array<BastionSessionStateOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** The session state detail for a target. */\nexport interface BastionSessionStateOutput {\n /** A unique id for the session. */\n readonly sessionId?: string;\n /** Used for extra information. */\n readonly message?: string;\n /** The state of the session. Disconnected/Failed/NotFound. */\n readonly state?: string;\n}\n\n/** Response for the CheckDnsNameAvailability API service call. */\nexport interface DnsNameAvailabilityResultOutput {\n /** Domain availability (True/False). */\n available?: boolean;\n}\n\n/** Response for the ListNetworkInterface API service call. */\nexport interface NetworkInterfaceListResultOutput {\n /** A list of network interfaces in a resource group. */\n value?: Array<NetworkInterfaceOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListPublicIpAddresses API service call. */\nexport interface PublicIPAddressListResultOutput {\n /** A list of public IP addresses that exists in a resource group. */\n value?: Array<PublicIPAddressOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Custom IP prefix resource. */\nexport interface CustomIpPrefixOutput extends ResourceOutput {\n /** The extended location of the custom IP prefix. */\n extendedLocation?: ExtendedLocationOutput;\n /** Custom IP prefix properties. */\n properties?: CustomIpPrefixPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** A list of availability zones denoting the IP allocated for the resource needs to come from. */\n zones?: Array<string>;\n}\n\n/** Custom IP prefix properties. */\nexport interface CustomIpPrefixPropertiesFormatOutput {\n /** The ASN for CIDR advertising. Should be an integer as string. */\n asn?: string;\n /** The prefix range in CIDR notation. Should include the start address and the prefix length. */\n cidr?: string;\n /** Signed message for WAN validation. */\n signedMessage?: string;\n /** Authorization message for WAN validation. */\n authorizationMessage?: string;\n /** The Parent CustomIpPrefix for IPv6 /64 CustomIpPrefix. */\n customIpPrefixParent?: SubResourceOutput;\n /** The list of all Children for IPv6 /48 CustomIpPrefix. */\n readonly childCustomIpPrefixes?: Array<SubResourceOutput>;\n /** The commissioned state of the Custom IP Prefix. */\n commissionedState?:\n | \"Provisioning\"\n | \"Provisioned\"\n | \"Commissioning\"\n | \"CommissionedNoInternetAdvertise\"\n | \"Commissioned\"\n | \"Decommissioning\"\n | \"Deprovisioning\"\n | \"Deprovisioned\";\n /** Whether to do express route advertise. */\n expressRouteAdvertise?: boolean;\n /** The Geo for CIDR advertising. Should be an Geo code. */\n geo?: \"GLOBAL\" | \"AFRI\" | \"APAC\" | \"EURO\" | \"LATAM\" | \"NAM\" | \"ME\" | \"OCEANIA\" | \"AQ\";\n /** Whether to Advertise the range to Internet. */\n noInternetAdvertise?: boolean;\n /** Type of custom IP prefix. Should be Singular, Parent, or Child. */\n prefixType?: \"Singular\" | \"Parent\" | \"Child\";\n /** The list of all referenced PublicIpPrefixes. */\n readonly publicIpPrefixes?: Array<SubResourceOutput>;\n /** The resource GUID property of the custom IP prefix resource. */\n readonly resourceGuid?: string;\n /** The reason why resource is in failed state. */\n readonly failedReason?: string;\n /** The provisioning state of the custom IP prefix resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for ListCustomIpPrefixes API service call. */\nexport interface CustomIpPrefixListResultOutput {\n /** A list of Custom IP prefixes that exists in a resource group. */\n value?: Array<CustomIpPrefixOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** A DDoS custom policy in a resource group. */\nexport interface DdosCustomPolicyOutput extends ResourceOutput {\n /** Properties of the DDoS custom policy. */\n properties?: DdosCustomPolicyPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** DDoS custom policy properties. */\nexport interface DdosCustomPolicyPropertiesFormatOutput {\n /** The resource GUID property of the DDoS custom policy resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups. */\n readonly resourceGuid?: string;\n /** The provisioning state of the DDoS custom policy resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** A DDoS protection plan in a resource group. */\nexport interface DdosProtectionPlanOutput {\n /** Resource ID. */\n readonly id?: string;\n /** Resource name. */\n readonly name?: string;\n /** Resource type. */\n readonly type?: string;\n /** Resource location. */\n location?: string;\n /** Resource tags. */\n tags?: Record<string, string>;\n /** Properties of the DDoS protection plan. */\n properties?: DdosProtectionPlanPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** DDoS protection plan properties. */\nexport interface DdosProtectionPlanPropertiesFormatOutput {\n /** The resource GUID property of the DDoS protection plan resource. It uniquely identifies the resource, even if the user changes its name or migrate the resource across subscriptions or resource groups. */\n readonly resourceGuid?: string;\n /** The provisioning state of the DDoS protection plan resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The list of public IPs associated with the DDoS protection plan resource. This list is read-only. */\n readonly publicIpAddresses?: Array<SubResourceOutput>;\n /** The list of virtual networks associated with the DDoS protection plan resource. This list is read-only. */\n readonly virtualNetworks?: Array<SubResourceOutput>;\n}\n\n/** A list of DDoS protection plans. */\nexport interface DdosProtectionPlanListResultOutput {\n /** A list of DDoS protection plans. */\n value?: Array<DdosProtectionPlanOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Differentiated Services Code Point configuration for any given network interface */\nexport interface DscpConfigurationOutput extends ResourceOutput {\n /** Properties of the network interface. */\n properties?: DscpConfigurationPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Differentiated Services Code Point configuration properties. */\nexport interface DscpConfigurationPropertiesFormatOutput {\n /** List of markings to be used in the configuration. */\n markings?: Array<number>;\n /** Source IP ranges. */\n sourceIpRanges?: Array<QosIpRangeOutput>;\n /** Destination IP ranges. */\n destinationIpRanges?: Array<QosIpRangeOutput>;\n /** Sources port ranges. */\n sourcePortRanges?: Array<QosPortRangeOutput>;\n /** Destination port ranges. */\n destinationPortRanges?: Array<QosPortRangeOutput>;\n /** RNM supported protocol types. */\n protocol?: \"DoNotUse\" | \"Icmp\" | \"Tcp\" | \"Udp\" | \"Gre\" | \"Esp\" | \"Ah\" | \"Vxlan\" | \"All\";\n /** QoS object definitions */\n qosDefinitionCollection?: Array<QosDefinitionOutput>;\n /** Qos Collection ID generated by RNM. */\n readonly qosCollectionId?: string;\n /** Associated Network Interfaces to the DSCP Configuration. */\n readonly associatedNetworkInterfaces?: Array<NetworkInterfaceOutput>;\n /** The resource GUID property of the DSCP Configuration resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the DSCP Configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Qos Traffic Profiler IP Range properties. */\nexport interface QosIpRangeOutput {\n /** Start IP Address. */\n startIP?: string;\n /** End IP Address. */\n endIP?: string;\n}\n\n/** Qos Traffic Profiler Port range properties. */\nexport interface QosPortRangeOutput {\n /** Qos Port Range start. */\n start?: number;\n /** Qos Port Range end. */\n end?: number;\n}\n\n/** Quality of Service defines the traffic configuration between endpoints. Mandatory to have one marking. */\nexport interface QosDefinitionOutput {\n /** List of markings to be used in the configuration. */\n markings?: Array<number>;\n /** Source IP ranges. */\n sourceIpRanges?: Array<QosIpRangeOutput>;\n /** Destination IP ranges. */\n destinationIpRanges?: Array<QosIpRangeOutput>;\n /** Sources port ranges. */\n sourcePortRanges?: Array<QosPortRangeOutput>;\n /** Destination port ranges. */\n destinationPortRanges?: Array<QosPortRangeOutput>;\n /** RNM supported protocol types. */\n protocol?: \"DoNotUse\" | \"Icmp\" | \"Tcp\" | \"Udp\" | \"Gre\" | \"Esp\" | \"Ah\" | \"Vxlan\" | \"All\";\n}\n\n/** Response for the DscpConfigurationList API service call. */\nexport interface DscpConfigurationListResultOutput {\n /** A list of dscp configurations in a resource group. */\n value?: Array<DscpConfigurationOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for the ListAvailableEndpointServices API service call. */\nexport interface EndpointServicesListResultOutput {\n /** List of available endpoint services in a region. */\n value?: Array<EndpointServiceResultOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Endpoint service. */\nexport interface EndpointServiceResultOutput extends SubResourceOutput {\n /** Name of the endpoint service. */\n readonly name?: string;\n /** Type of the endpoint service. */\n readonly type?: string;\n}\n\n/** Authorization in an ExpressRouteCircuit resource. */\nexport interface ExpressRouteCircuitAuthorizationOutput extends SubResourceOutput {\n /** Properties of the express route circuit authorization. */\n properties?: AuthorizationPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of ExpressRouteCircuitAuthorization. */\nexport interface AuthorizationPropertiesFormatOutput {\n /** The authorization key. */\n authorizationKey?: string;\n /** The authorization use status. */\n authorizationUseStatus?: \"Available\" | \"InUse\";\n /** The provisioning state of the authorization resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for ListAuthorizations API service call retrieves all authorizations that belongs to an ExpressRouteCircuit. */\nexport interface AuthorizationListResultOutput {\n /** The authorizations in an ExpressRoute Circuit. */\n value?: Array<ExpressRouteCircuitAuthorizationOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Peering in an ExpressRouteCircuit resource. */\nexport interface ExpressRouteCircuitPeeringOutput extends SubResourceOutput {\n /** Properties of the express route circuit peering. */\n properties?: ExpressRouteCircuitPeeringPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of the express route circuit peering. */\nexport interface ExpressRouteCircuitPeeringPropertiesFormatOutput {\n /** The peering type. */\n peeringType?: \"AzurePublicPeering\" | \"AzurePrivatePeering\" | \"MicrosoftPeering\";\n /** The peering state. */\n state?: \"Disabled\" | \"Enabled\";\n /** The Azure ASN. */\n azureASN?: number;\n /** The peer ASN. */\n peerASN?: number;\n /** The primary address prefix. */\n primaryPeerAddressPrefix?: string;\n /** The secondary address prefix. */\n secondaryPeerAddressPrefix?: string;\n /** The primary port. */\n primaryAzurePort?: string;\n /** The secondary port. */\n secondaryAzurePort?: string;\n /** The shared key. */\n sharedKey?: string;\n /** The VLAN ID. */\n vlanId?: number;\n /** The Microsoft peering configuration. */\n microsoftPeeringConfig?: ExpressRouteCircuitPeeringConfigOutput;\n /** The peering stats of express route circuit. */\n stats?: ExpressRouteCircuitStatsOutput;\n /** The provisioning state of the express route circuit peering resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The GatewayManager Etag. */\n gatewayManagerEtag?: string;\n /** Who was the last to modify the peering. */\n readonly lastModifiedBy?: string;\n /** The reference to the RouteFilter resource. */\n routeFilter?: SubResourceOutput;\n /** The IPv6 peering configuration. */\n ipv6PeeringConfig?: Ipv6ExpressRouteCircuitPeeringConfigOutput;\n /** The ExpressRoute connection. */\n expressRouteConnection?: ExpressRouteConnectionIdOutput;\n /** The list of circuit connections associated with Azure Private Peering for this circuit. */\n connections?: Array<ExpressRouteCircuitConnectionOutput>;\n /** The list of peered circuit connections associated with Azure Private Peering for this circuit. */\n readonly peeredConnections?: Array<PeerExpressRouteCircuitConnectionOutput>;\n}\n\n/** Specifies the peering configuration. */\nexport interface ExpressRouteCircuitPeeringConfigOutput {\n /** The reference to AdvertisedPublicPrefixes. */\n advertisedPublicPrefixes?: Array<string>;\n /** The communities of bgp peering. Specified for microsoft peering. */\n advertisedCommunities?: Array<string>;\n /** The advertised public prefix state of the Peering resource. */\n readonly advertisedPublicPrefixesState?:\n | \"NotConfigured\"\n | \"Configuring\"\n | \"Configured\"\n | \"ValidationNeeded\";\n /** The legacy mode of the peering. */\n legacyMode?: number;\n /** The CustomerASN of the peering. */\n customerASN?: number;\n /** The RoutingRegistryName of the configuration. */\n routingRegistryName?: string;\n}\n\n/** Contains stats associated with the peering. */\nexport interface ExpressRouteCircuitStatsOutput {\n /** The Primary BytesIn of the peering. */\n primarybytesIn?: number;\n /** The primary BytesOut of the peering. */\n primarybytesOut?: number;\n /** The secondary BytesIn of the peering. */\n secondarybytesIn?: number;\n /** The secondary BytesOut of the peering. */\n secondarybytesOut?: number;\n}\n\n/** Contains IPv6 peering config. */\nexport interface Ipv6ExpressRouteCircuitPeeringConfigOutput {\n /** The primary address prefix. */\n primaryPeerAddressPrefix?: string;\n /** The secondary address prefix. */\n secondaryPeerAddressPrefix?: string;\n /** The Microsoft peering configuration. */\n microsoftPeeringConfig?: ExpressRouteCircuitPeeringConfigOutput;\n /** The reference to the RouteFilter resource. */\n routeFilter?: SubResourceOutput;\n /** The state of peering. */\n state?: \"Disabled\" | \"Enabled\";\n}\n\n/** The ID of the ExpressRouteConnection. */\nexport interface ExpressRouteConnectionIdOutput {\n /** The ID of the ExpressRouteConnection. */\n readonly id?: string;\n}\n\n/** Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. */\nexport interface ExpressRouteCircuitConnectionOutput extends SubResourceOutput {\n /** Properties of the express route circuit connection. */\n properties?: ExpressRouteCircuitConnectionPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of the express route circuit connection. */\nexport interface ExpressRouteCircuitConnectionPropertiesFormatOutput {\n /** Reference to Express Route Circuit Private Peering Resource of the circuit initiating connection. */\n expressRouteCircuitPeering?: SubResourceOutput;\n /** Reference to Express Route Circuit Private Peering Resource of the peered circuit. */\n peerExpressRouteCircuitPeering?: SubResourceOutput;\n /** /29 IP address space to carve out Customer addresses for tunnels. */\n addressPrefix?: string;\n /** The authorization key. */\n authorizationKey?: string;\n /** IPv6 Address PrefixProperties of the express route circuit connection. */\n ipv6CircuitConnectionConfig?: Ipv6CircuitConnectionConfigOutput;\n /** Express Route Circuit connection state. */\n readonly circuitConnectionStatus?: \"Connected\" | \"Connecting\" | \"Disconnected\";\n /** The provisioning state of the express route circuit connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** IPv6 Circuit Connection properties for global reach. */\nexport interface Ipv6CircuitConnectionConfigOutput {\n /** /125 IP address space to carve out customer addresses for global reach. */\n addressPrefix?: string;\n /** Express Route Circuit connection state. */\n readonly circuitConnectionStatus?: \"Connected\" | \"Connecting\" | \"Disconnected\";\n}\n\n/** Peer Express Route Circuit Connection in an ExpressRouteCircuitPeering resource. */\nexport interface PeerExpressRouteCircuitConnectionOutput extends SubResourceOutput {\n /** Properties of the peer express route circuit connection. */\n properties?: PeerExpressRouteCircuitConnectionPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of the peer express route circuit connection. */\nexport interface PeerExpressRouteCircuitConnectionPropertiesFormatOutput {\n /** Reference to Express Route Circuit Private Peering Resource of the circuit. */\n expressRouteCircuitPeering?: SubResourceOutput;\n /** Reference to Express Route Circuit Private Peering Resource of the peered circuit. */\n peerExpressRouteCircuitPeering?: SubResourceOutput;\n /** /29 IP address space to carve out Customer addresses for tunnels. */\n addressPrefix?: string;\n /** Express Route Circuit connection state. */\n readonly circuitConnectionStatus?: \"Connected\" | \"Connecting\" | \"Disconnected\";\n /** The name of the express route circuit connection resource. */\n connectionName?: string;\n /** The resource guid of the authorization used for the express route circuit connection. */\n authResourceGuid?: string;\n /** The provisioning state of the peer express route circuit connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCircuit. */\nexport interface ExpressRouteCircuitPeeringListResultOutput {\n /** The peerings in an express route circuit. */\n value?: Array<ExpressRouteCircuitPeeringOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ListConnections API service call retrieves all global reach connections that belongs to a Private Peering for an ExpressRouteCircuit. */\nexport interface ExpressRouteCircuitConnectionListResultOutput {\n /** The global reach connection associated with Private Peering in an ExpressRoute Circuit. */\n value?: Array<ExpressRouteCircuitConnectionOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ListPeeredConnections API service call retrieves all global reach peer circuit connections that belongs to a Private Peering for an ExpressRouteCircuit. */\nexport interface PeerExpressRouteCircuitConnectionListResultOutput {\n /** The global reach peer circuit connection associated with Private Peering in an ExpressRoute Circuit. */\n value?: Array<PeerExpressRouteCircuitConnectionOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** ExpressRouteCircuit resource. */\nexport interface ExpressRouteCircuitOutput extends ResourceOutput {\n /** The SKU. */\n sku?: ExpressRouteCircuitSkuOutput;\n /** Properties of the express route circuit. */\n properties?: ExpressRouteCircuitPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Contains SKU in an ExpressRouteCircuit. */\nexport interface ExpressRouteCircuitSkuOutput {\n /** The name of the SKU. */\n name?: string;\n /** The tier of the SKU. */\n tier?: \"Standard\" | \"Premium\" | \"Basic\" | \"Local\";\n /** The family of the SKU. */\n family?: \"UnlimitedData\" | \"MeteredData\";\n}\n\n/** Properties of ExpressRouteCircuit. */\nexport interface ExpressRouteCircuitPropertiesFormatOutput {\n /** Allow classic operations. */\n allowClassicOperations?: boolean;\n /** The CircuitProvisioningState state of the resource. */\n circuitProvisioningState?: string;\n /** The ServiceProviderProvisioningState state of the resource. */\n serviceProviderProvisioningState?:\n | \"NotProvisioned\"\n | \"Provisioning\"\n | \"Provisioned\"\n | \"Deprovisioning\";\n /** The list of authorizations. */\n authorizations?: Array<ExpressRouteCircuitAuthorizationOutput>;\n /** The list of peerings. */\n peerings?: Array<ExpressRouteCircuitPeeringOutput>;\n /** The ServiceKey. */\n serviceKey?: string;\n /** The ServiceProviderNotes. */\n serviceProviderNotes?: string;\n /** The ServiceProviderProperties. */\n serviceProviderProperties?: ExpressRouteCircuitServiceProviderPropertiesOutput;\n /** The reference to the ExpressRoutePort resource when the circuit is provisioned on an ExpressRoutePort resource. */\n expressRoutePort?: SubResourceOutput;\n /** The bandwidth of the circuit when the circuit is provisioned on an ExpressRoutePort resource. */\n bandwidthInGbps?: number;\n /** The identifier of the circuit traffic. Outer tag for QinQ encapsulation. */\n readonly stag?: number;\n /** The provisioning state of the express route circuit resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The GatewayManager Etag. */\n gatewayManagerEtag?: string;\n /** Flag denoting global reach status. */\n globalReachEnabled?: boolean;\n /** The authorizationKey. */\n authorizationKey?: string;\n}\n\n/** Contains ServiceProviderProperties in an ExpressRouteCircuit. */\nexport interface ExpressRouteCircuitServiceProviderPropertiesOutput {\n /** The serviceProviderName. */\n serviceProviderName?: string;\n /** The peering location. */\n peeringLocation?: string;\n /** The BandwidthInMbps. */\n bandwidthInMbps?: number;\n}\n\n/** Response for ListArpTable associated with the Express Route Circuits API. */\nexport interface ExpressRouteCircuitsArpTableListResultOutput {\n /** A list of the ARP tables. */\n value?: Array<ExpressRouteCircuitArpTableOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** The ARP table associated with the ExpressRouteCircuit. */\nexport interface ExpressRouteCircuitArpTableOutput {\n /** Entry age in minutes. */\n age?: number;\n /** Interface address. */\n interface?: string;\n /** The IP address. */\n ipAddress?: string;\n /** The MAC address. */\n macAddress?: string;\n}\n\n/** Response for ListRoutesTable associated with the Express Route Circuits API. */\nexport interface ExpressRouteCircuitsRoutesTableListResultOutput {\n /** The list of routes table. */\n value?: Array<ExpressRouteCircuitRoutesTableOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** The routes table associated with the ExpressRouteCircuit. */\nexport interface ExpressRouteCircuitRoutesTableOutput {\n /** IP address of a network entity. */\n network?: string;\n /** NextHop address. */\n nextHop?: string;\n /** Local preference value as set with the set local-preference route-map configuration command. */\n locPrf?: string;\n /** Route Weight. */\n weight?: number;\n /** Autonomous system paths to the destination network. */\n path?: string;\n}\n\n/** Response for ListRoutesTable associated with the Express Route Circuits API. */\nexport interface ExpressRouteCircuitsRoutesTableSummaryListResultOutput {\n /** A list of the routes table. */\n value?: Array<ExpressRouteCircuitRoutesTableSummaryOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** The routes table associated with the ExpressRouteCircuit. */\nexport interface ExpressRouteCircuitRoutesTableSummaryOutput {\n /** IP address of the neighbor. */\n neighbor?: string;\n /** BGP version number spoken to the neighbor. */\n v?: number;\n /** Autonomous system number. */\n as?: number;\n /** The length of time that the BGP session has been in the Established state, or the current status if not in the Established state. */\n upDown?: string;\n /** Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group. */\n statePfxRcd?: string;\n}\n\n/** Response for ListExpressRouteCircuit API service call. */\nexport interface ExpressRouteCircuitListResultOutput {\n /** A list of ExpressRouteCircuits in a resource group. */\n value?: Array<ExpressRouteCircuitOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for the ListExpressRouteServiceProvider API service call. */\nexport interface ExpressRouteServiceProviderListResultOutput {\n /** A list of ExpressRouteResourceProvider resources. */\n value?: Array<ExpressRouteServiceProviderOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** A ExpressRouteResourceProvider object. */\nexport interface ExpressRouteServiceProviderOutput extends ResourceOutput {\n /** Properties of the express route service provider. */\n properties?: ExpressRouteServiceProviderPropertiesFormatOutput;\n}\n\n/** Properties of ExpressRouteServiceProvider. */\nexport interface ExpressRouteServiceProviderPropertiesFormatOutput {\n /** A list of peering locations. */\n peeringLocations?: Array<string>;\n /** A list of bandwidths offered. */\n bandwidthsOffered?: Array<ExpressRouteServiceProviderBandwidthsOfferedOutput>;\n /** The provisioning state of the express route service provider resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Contains bandwidths offered in ExpressRouteServiceProvider resources. */\nexport interface ExpressRouteServiceProviderBandwidthsOfferedOutput {\n /** The OfferName. */\n offerName?: string;\n /** The ValueInMbps. */\n valueInMbps?: number;\n}\n\n/** Response for ListExpressRouteCrossConnection API service call. */\nexport interface ExpressRouteCrossConnectionListResultOutput {\n /** A list of ExpressRouteCrossConnection resources. */\n value?: Array<ExpressRouteCrossConnectionOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** ExpressRouteCrossConnection resource. */\nexport interface ExpressRouteCrossConnectionOutput extends ResourceOutput {\n /** Properties of the express route cross connection. */\n properties?: ExpressRouteCrossConnectionPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of ExpressRouteCrossConnection. */\nexport interface ExpressRouteCrossConnectionPropertiesOutput {\n /** The name of the primary port. */\n readonly primaryAzurePort?: string;\n /** The name of the secondary port. */\n readonly secondaryAzurePort?: string;\n /** The identifier of the circuit traffic. */\n readonly sTag?: number;\n /** The peering location of the ExpressRoute circuit. */\n readonly peeringLocation?: string;\n /** The circuit bandwidth In Mbps. */\n readonly bandwidthInMbps?: number;\n /** The ExpressRouteCircuit. */\n expressRouteCircuit?: ExpressRouteCircuitReferenceOutput;\n /** The provisioning state of the circuit in the connectivity provider system. */\n serviceProviderProvisioningState?:\n | \"NotProvisioned\"\n | \"Provisioning\"\n | \"Provisioned\"\n | \"Deprovisioning\";\n /** Additional read only notes set by the connectivity provider. */\n serviceProviderNotes?: string;\n /** The provisioning state of the express route cross connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The list of peerings. */\n peerings?: Array<ExpressRouteCrossConnectionPeeringOutput>;\n}\n\n/** Reference to an express route circuit. */\nexport interface ExpressRouteCircuitReferenceOutput {\n /** Corresponding Express Route Circuit Id. */\n id?: string;\n}\n\n/** Peering in an ExpressRoute Cross Connection resource. */\nexport interface ExpressRouteCrossConnectionPeeringOutput extends SubResourceOutput {\n /** Properties of the express route cross connection peering. */\n properties?: ExpressRouteCrossConnectionPeeringPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of express route cross connection peering. */\nexport interface ExpressRouteCrossConnectionPeeringPropertiesOutput {\n /** The peering type. */\n peeringType?: \"AzurePublicPeering\" | \"AzurePrivatePeering\" | \"MicrosoftPeering\";\n /** The peering state. */\n state?: \"Disabled\" | \"Enabled\";\n /** The Azure ASN. */\n readonly azureASN?: number;\n /** The peer ASN. */\n peerASN?: number;\n /** The primary address prefix. */\n primaryPeerAddressPrefix?: string;\n /** The secondary address prefix. */\n secondaryPeerAddressPrefix?: string;\n /** The primary port. */\n readonly primaryAzurePort?: string;\n /** The secondary port. */\n readonly secondaryAzurePort?: string;\n /** The shared key. */\n sharedKey?: string;\n /** The VLAN ID. */\n vlanId?: number;\n /** The Microsoft peering configuration. */\n microsoftPeeringConfig?: ExpressRouteCircuitPeeringConfigOutput;\n /** The provisioning state of the express route cross connection peering resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The GatewayManager Etag. */\n gatewayManagerEtag?: string;\n /** Who was the last to modify the peering. */\n readonly lastModifiedBy?: string;\n /** The IPv6 peering configuration. */\n ipv6PeeringConfig?: Ipv6ExpressRouteCircuitPeeringConfigOutput;\n}\n\n/** Response for ListPeering API service call retrieves all peerings that belong to an ExpressRouteCrossConnection. */\nexport interface ExpressRouteCrossConnectionPeeringListOutput {\n /** The peerings in an express route cross connection. */\n value?: Array<ExpressRouteCrossConnectionPeeringOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListRoutesTable associated with the Express Route Cross Connections. */\nexport interface ExpressRouteCrossConnectionsRoutesTableSummaryListResultOutput {\n /** A list of the routes table. */\n value?: Array<ExpressRouteCrossConnectionRoutesTableSummaryOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The routes table associated with the ExpressRouteCircuit. */\nexport interface ExpressRouteCrossConnectionRoutesTableSummaryOutput {\n /** IP address of Neighbor router. */\n neighbor?: string;\n /** Autonomous system number. */\n asn?: number;\n /** The length of time that the BGP session has been in the Established state, or the current status if not in the Established state. */\n upDown?: string;\n /** Current state of the BGP session, and the number of prefixes that have been received from a neighbor or peer group. */\n stateOrPrefixesReceived?: string;\n}\n\n/** Response for ListExpressRoutePortsLocations API service call. */\nexport interface ExpressRoutePortsLocationListResultOutput {\n /** The list of all ExpressRoutePort peering locations. */\n value?: Array<ExpressRoutePortsLocationOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Definition of the ExpressRoutePorts peering location resource. */\nexport interface ExpressRoutePortsLocationOutput extends ResourceOutput {\n /** ExpressRoutePort peering location properties. */\n properties?: ExpressRoutePortsLocationPropertiesFormatOutput;\n}\n\n/** Properties specific to ExpressRoutePorts peering location resources. */\nexport interface ExpressRoutePortsLocationPropertiesFormatOutput {\n /** Address of peering location. */\n readonly address?: string;\n /** Contact details of peering locations. */\n readonly contact?: string;\n /** The inventory of available ExpressRoutePort bandwidths. */\n availableBandwidths?: Array<ExpressRoutePortsLocationBandwidthsOutput>;\n /** The provisioning state of the express route port location resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Real-time inventory of available ExpressRoute port bandwidths. */\nexport interface ExpressRoutePortsLocationBandwidthsOutput {\n /** Bandwidth descriptive name. */\n readonly offerName?: string;\n /** Bandwidth value in Gbps. */\n readonly valueInGbps?: number;\n}\n\n/** ExpressRoutePort resource definition. */\nexport interface ExpressRoutePortOutput extends ResourceOutput {\n /** ExpressRoutePort properties. */\n properties?: ExpressRoutePortPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The identity of ExpressRoutePort, if configured. */\n identity?: ManagedServiceIdentityOutput;\n}\n\n/** Properties specific to ExpressRoutePort resources. */\nexport interface ExpressRoutePortPropertiesFormatOutput {\n /** The name of the peering location that the ExpressRoutePort is mapped to physically. */\n peeringLocation?: string;\n /** Bandwidth of procured ports in Gbps. */\n bandwidthInGbps?: number;\n /** Aggregate Gbps of associated circuit bandwidths. */\n readonly provisionedBandwidthInGbps?: number;\n /** Maximum transmission unit of the physical port pair(s). */\n readonly mtu?: string;\n /** Encapsulation method on physical ports. */\n encapsulation?: \"Dot1Q\" | \"QinQ\";\n /** Ether type of the physical port. */\n readonly etherType?: string;\n /** Date of the physical port allocation to be used in Letter of Authorization. */\n readonly allocationDate?: string;\n /** The set of physical links of the ExpressRoutePort resource. */\n links?: Array<ExpressRouteLinkOutput>;\n /** Reference the ExpressRoute circuit(s) that are provisioned on this ExpressRoutePort resource. */\n readonly circuits?: Array<SubResourceOutput>;\n /** The provisioning state of the express route port resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The resource GUID property of the express route port resource. */\n readonly resourceGuid?: string;\n /** The billing type of the ExpressRoutePort resource. */\n billingType?: \"MeteredData\" | \"UnlimitedData\";\n}\n\n/** ExpressRouteLink child resource definition. */\nexport interface ExpressRouteLinkOutput extends SubResourceOutput {\n /** ExpressRouteLink properties. */\n properties?: ExpressRouteLinkPropertiesFormatOutput;\n /** Name of child port resource that is unique among child port resources of the parent. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties specific to ExpressRouteLink resources. */\nexport interface ExpressRouteLinkPropertiesFormatOutput {\n /** Name of Azure router associated with physical port. */\n readonly routerName?: string;\n /** Name of Azure router interface. */\n readonly interfaceName?: string;\n /** Mapping between physical port to patch panel port. */\n readonly patchPanelId?: string;\n /** Mapping of physical patch panel to rack. */\n readonly rackId?: string;\n /** Cololocation for ExpressRoute Hybrid Direct. */\n readonly coloLocation?: string;\n /** Physical fiber port type. */\n readonly connectorType?: \"LC\" | \"SC\";\n /** Administrative state of the physical port. */\n adminState?: \"Enabled\" | \"Disabled\";\n /** The provisioning state of the express route link resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** MacSec configuration. */\n macSecConfig?: ExpressRouteLinkMacSecConfigOutput;\n}\n\n/** ExpressRouteLink Mac Security Configuration. */\nexport interface ExpressRouteLinkMacSecConfigOutput {\n /** Keyvault Secret Identifier URL containing Mac security CKN key. */\n cknSecretIdentifier?: string;\n /** Keyvault Secret Identifier URL containing Mac security CAK key. */\n cakSecretIdentifier?: string;\n /** Mac security cipher. */\n cipher?: \"GcmAes256\" | \"GcmAes128\" | \"GcmAesXpn128\" | \"GcmAesXpn256\";\n /** Sci mode enabled/disabled. */\n sciState?: \"Disabled\" | \"Enabled\";\n}\n\n/** Response for ListExpressRoutePorts API service call. */\nexport interface ExpressRoutePortListResultOutput {\n /** A list of ExpressRoutePort resources. */\n value?: Array<ExpressRoutePortOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ListExpressRouteLinks API service call. */\nexport interface ExpressRouteLinkListResultOutput {\n /** The list of ExpressRouteLink sub-resources. */\n value?: Array<ExpressRouteLinkOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for GenerateExpressRoutePortsLOA API service call. */\nexport interface GenerateExpressRoutePortsLOAResultOutput {\n /** The content as a base64 encoded string. */\n encodedContent?: string;\n}\n\n/** ExpressRoutePort Authorization resource definition. */\nexport interface ExpressRoutePortAuthorizationOutput extends SubResourceOutput {\n /** ExpressRoutePort properties. */\n properties?: ExpressRoutePortAuthorizationPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of ExpressRoutePort Authorization. */\nexport interface ExpressRoutePortAuthorizationPropertiesFormatOutput {\n /** The authorization key. */\n readonly authorizationKey?: string;\n /** The authorization use status. */\n readonly authorizationUseStatus?: \"Available\" | \"InUse\";\n /** The reference to the ExpressRoute circuit resource using the authorization. */\n readonly circuitResourceUri?: string;\n /** The provisioning state of the authorization resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for ListExpressRoutePortAuthorizations API service call. */\nexport interface ExpressRoutePortAuthorizationListResultOutput {\n /** The authorizations in an ExpressRoute Port. */\n value?: Array<ExpressRoutePortAuthorizationOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ListExpressRouteProviderPort API service call. */\nexport interface ExpressRouteProviderPortListResultOutput {\n /** A list of ExpressRouteProviderPort resources. */\n value?: Array<ExpressRouteProviderPortOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** ExpressRouteProviderPort resource. */\nexport interface ExpressRouteProviderPortOutput extends ResourceOutput {\n /** Properties of the express route Service Provider Port. */\n properties?: ExpressRouteProviderPortPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of ExpressRouteProviderPort. */\nexport interface ExpressRouteProviderPortPropertiesOutput {\n /** The name of the port pair. */\n readonly portPairDescriptor?: string;\n /** The name of the primary port. */\n readonly primaryAzurePort?: string;\n /** The name of the secondary port. */\n readonly secondaryAzurePort?: string;\n /** The peering location of the port pair. */\n peeringLocation?: string;\n /** Overprovisioning factor for the port pair. */\n overprovisionFactor?: number;\n /** Bandwidth of the port in Mbps */\n portBandwidthInMbps?: number;\n /** Used Bandwidth of the port in Mbps */\n usedBandwidthInMbps?: number;\n /** Remaining Bandwidth of the port in Mbps */\n remainingBandwidthInMbps?: number;\n}\n\n/** FirewallPolicy Resource. */\nexport interface FirewallPolicyOutput extends ResourceOutput {\n /** Properties of the firewall policy. */\n properties?: FirewallPolicyPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The identity of the firewall policy. */\n identity?: ManagedServiceIdentityOutput;\n}\n\n/** Firewall Policy definition. */\nexport interface FirewallPolicyPropertiesFormatOutput {\n /** List of references to FirewallPolicyRuleCollectionGroups. */\n readonly ruleCollectionGroups?: Array<SubResourceOutput>;\n /** The provisioning state of the firewall policy resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The parent firewall policy from which rules are inherited. */\n basePolicy?: SubResourceOutput;\n /** List of references to Azure Firewalls that this Firewall Policy is associated with. */\n readonly firewalls?: Array<SubResourceOutput>;\n /** List of references to Child Firewall Policies. */\n readonly childPolicies?: Array<SubResourceOutput>;\n /** The operation mode for Threat Intelligence. */\n threatIntelMode?: \"Alert\" | \"Deny\" | \"Off\";\n /** ThreatIntel Whitelist for Firewall Policy. */\n threatIntelWhitelist?: FirewallPolicyThreatIntelWhitelistOutput;\n /** Insights on Firewall Policy. */\n insights?: FirewallPolicyInsightsOutput;\n /** The private IP addresses/IP ranges to which traffic will not be SNAT. */\n snat?: FirewallPolicySnatOutput;\n /** SQL Settings definition. */\n sql?: FirewallPolicySQLOutput;\n /** DNS Proxy Settings definition. */\n dnsSettings?: DnsSettingsOutput;\n /** Explicit Proxy Settings definition. */\n explicitProxy?: ExplicitProxyOutput;\n /** The configuration for Intrusion detection. */\n intrusionDetection?: FirewallPolicyIntrusionDetectionOutput;\n /** TLS Configuration definition. */\n transportSecurity?: FirewallPolicyTransportSecurityOutput;\n /** The Firewall Policy SKU. */\n sku?: FirewallPolicySkuOutput;\n}\n\n/** ThreatIntel Whitelist for Firewall Policy. */\nexport interface FirewallPolicyThreatIntelWhitelistOutput {\n /** List of IP addresses for the ThreatIntel Whitelist. */\n ipAddresses?: Array<string>;\n /** List of FQDNs for the ThreatIntel Whitelist. */\n fqdns?: Array<string>;\n}\n\n/** Firewall Policy Insights. */\nexport interface FirewallPolicyInsightsOutput {\n /** A flag to indicate if the insights are enabled on the policy. */\n isEnabled?: boolean;\n /** Number of days the insights should be enabled on the policy. */\n retentionDays?: number;\n /** Workspaces needed to configure the Firewall Policy Insights. */\n logAnalyticsResources?: FirewallPolicyLogAnalyticsResourcesOutput;\n}\n\n/** Log Analytics Resources for Firewall Policy Insights. */\nexport interface FirewallPolicyLogAnalyticsResourcesOutput {\n /** List of workspaces for Firewall Policy Insights. */\n workspaces?: Array<FirewallPolicyLogAnalyticsWorkspaceOutput>;\n /** The default workspace Id for Firewall Policy Insights. */\n defaultWorkspaceId?: SubResourceOutput;\n}\n\n/** Log Analytics Workspace for Firewall Policy Insights. */\nexport interface FirewallPolicyLogAnalyticsWorkspaceOutput {\n /** Region to configure the Workspace. */\n region?: string;\n /** The workspace Id for Firewall Policy Insights. */\n workspaceId?: SubResourceOutput;\n}\n\n/** The private IP addresses/IP ranges to which traffic will not be SNAT. */\nexport interface FirewallPolicySnatOutput {\n /** List of private IP addresses/IP address ranges to not be SNAT. */\n privateRanges?: Array<string>;\n /** The operation mode for automatically learning private ranges to not be SNAT */\n autoLearnPrivateRanges?: \"Enabled\" | \"Disabled\";\n}\n\n/** SQL Settings in Firewall Policy. */\nexport interface FirewallPolicySQLOutput {\n /** A flag to indicate if SQL Redirect traffic filtering is enabled. Turning on the flag requires no rule using port 11000-11999. */\n allowSqlRedirect?: boolean;\n}\n\n/** DNS Proxy Settings in Firewall Policy. */\nexport interface DnsSettingsOutput {\n /** List of Custom DNS Servers. */\n servers?: Array<string>;\n /** Enable DNS Proxy on Firewalls attached to the Firewall Policy. */\n enableProxy?: boolean;\n /** FQDNs in Network Rules are supported when set to true. */\n requireProxyForNetworkRules?: boolean;\n}\n\n/** Explicit Proxy Settings in Firewall Policy. */\nexport interface ExplicitProxyOutput {\n /** When set to true, explicit proxy mode is enabled. */\n enableExplicitProxy?: boolean;\n /** Port number for explicit proxy http protocol, cannot be greater than 64000. */\n httpPort?: number;\n /** Port number for explicit proxy https protocol, cannot be greater than 64000. */\n httpsPort?: number;\n /** When set to true, pac file port and url needs to be provided. */\n enablePacFile?: boolean;\n /** Port number for firewall to serve PAC file. */\n pacFilePort?: number;\n /** SAS URL for PAC file. */\n pacFile?: string;\n}\n\n/** Configuration for intrusion detection mode and rules. */\nexport interface FirewallPolicyIntrusionDetectionOutput {\n /** Intrusion detection general state. */\n mode?: \"Off\" | \"Alert\" | \"Deny\";\n /** Intrusion detection configuration properties. */\n configuration?: FirewallPolicyIntrusionDetectionConfigurationOutput;\n}\n\n/** The operation for configuring intrusion detection. */\nexport interface FirewallPolicyIntrusionDetectionConfigurationOutput {\n /** List of specific signatures states. */\n signatureOverrides?: Array<FirewallPolicyIntrusionDetectionSignatureSpecificationOutput>;\n /** List of rules for traffic to bypass. */\n bypassTrafficSettings?: Array<FirewallPolicyIntrusionDetectionBypassTrafficSpecificationsOutput>;\n /** 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 */\n privateRanges?: Array<string>;\n}\n\n/** Intrusion detection signatures specification states. */\nexport interface FirewallPolicyIntrusionDetectionSignatureSpecificationOutput {\n /** Signature id. */\n id?: string;\n /** The signature state. */\n mode?: \"Off\" | \"Alert\" | \"Deny\";\n}\n\n/** Intrusion detection bypass traffic specification. */\nexport interface FirewallPolicyIntrusionDetectionBypassTrafficSpecificationsOutput {\n /** Name of the bypass traffic rule. */\n name?: string;\n /** Description of the bypass traffic rule. */\n description?: string;\n /** The rule bypass protocol. */\n protocol?: \"TCP\" | \"UDP\" | \"ICMP\" | \"ANY\";\n /** List of source IP addresses or ranges for this rule. */\n sourceAddresses?: Array<string>;\n /** List of destination IP addresses or ranges for this rule. */\n destinationAddresses?: Array<string>;\n /** List of destination ports or ranges. */\n destinationPorts?: Array<string>;\n /** List of source IpGroups for this rule. */\n sourceIpGroups?: Array<string>;\n /** List of destination IpGroups for this rule. */\n destinationIpGroups?: Array<string>;\n}\n\n/** Configuration needed to perform TLS termination & initiation. */\nexport interface FirewallPolicyTransportSecurityOutput {\n /** The CA used for intermediate CA generation. */\n certificateAuthority?: FirewallPolicyCertificateAuthorityOutput;\n}\n\n/** Trusted Root certificates properties for tls. */\nexport interface FirewallPolicyCertificateAuthorityOutput {\n /** Secret Id of (base-64 encoded unencrypted pfx) 'Secret' or 'Certificate' object stored in KeyVault. */\n keyVaultSecretId?: string;\n /** Name of the CA certificate. */\n name?: string;\n}\n\n/** SKU of Firewall policy. */\nexport interface FirewallPolicySkuOutput {\n /** Tier of Firewall Policy. */\n tier?: \"Standard\" | \"Premium\" | \"Basic\";\n}\n\n/** Response for ListFirewallPolicies API service call. */\nexport interface FirewallPolicyListResultOutput {\n /** List of Firewall Policies in a resource group. */\n value?: Array<FirewallPolicyOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Rule Collection Group resource. */\nexport interface FirewallPolicyRuleCollectionGroupOutput extends SubResourceOutput {\n /** The properties of the firewall policy rule collection group. */\n properties?: FirewallPolicyRuleCollectionGroupPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Rule Group type. */\n readonly type?: string;\n}\n\n/** Properties of the rule collection group. */\nexport interface FirewallPolicyRuleCollectionGroupPropertiesOutput {\n /** Priority of the Firewall Policy Rule Collection Group resource. */\n priority?: number;\n /** Group of Firewall Policy rule collections. */\n ruleCollections?: Array<FirewallPolicyRuleCollectionOutput>;\n /** The provisioning state of the firewall policy rule collection group resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Properties of the rule collection. */\nexport interface FirewallPolicyRuleCollectionOutputParent {\n /** The name of the rule collection. */\n name?: string;\n /** Priority of the Firewall Policy Rule Collection resource. */\n priority?: number;\n ruleCollectionType:\n | \"FirewallPolicyRuleCollection\"\n | \"FirewallPolicyNatRuleCollection\"\n | \"FirewallPolicyFilterRuleCollection\";\n}\n\n/** Response for ListFirewallPolicyRuleCollectionGroups API service call. */\nexport interface FirewallPolicyRuleCollectionGroupListResultOutput {\n /** List of FirewallPolicyRuleCollectionGroups in a FirewallPolicy. */\n value?: Array<FirewallPolicyRuleCollectionGroupOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Query result */\nexport interface QueryResultsOutput {\n /** Number of total records matching the query. */\n matchingRecordsCount?: number;\n /** Array containing the results of the query */\n signatures?: Array<SingleQueryResultOutput>;\n}\n\nexport interface SingleQueryResultOutput {\n /** The ID of the signature */\n signatureId?: number;\n /** The current mode enforced, 0 - Disabled, 1 - Alert, 2 -Deny */\n mode?: \"0\" | \"1\" | \"2\";\n /** Describes the severity of signature: 1 - Low, 2 - Medium, 3 - High */\n severity?: \"1\" | \"2\" | \"3\";\n /** Describes in which direction signature is being enforced: 0 - Inbound, 1 - OutBound, 2 - Bidirectional */\n direction?: \"0\" | \"1\" | \"2\";\n /** Describes the groups the signature belongs to */\n group?: string;\n /** Describes what is the signature enforces */\n description?: string;\n /** Describes the protocol the signatures is being enforced in */\n protocol?: string;\n /** Describes the list of source ports related to this signature */\n sourcePorts?: Array<string>;\n /** Describes the list of destination ports related to this signature */\n destinationPorts?: Array<string>;\n /** Describes the last updated time of the signature (provided from 3rd party vendor) */\n lastUpdated?: string;\n /** Describes if this override is inherited from base policy or not */\n inheritedFromParentPolicy?: boolean;\n}\n\n/** Contains all specific policy signatures overrides for the IDPS */\nexport interface SignaturesOverridesOutput {\n /** Contains the name of the resource (default) */\n name?: string;\n /** Will contain the resource id of the signature override resource */\n id?: string;\n /** Will contain the type of the resource: Microsoft.Network/firewallPolicies/intrusionDetectionSignaturesOverrides */\n type?: string;\n /** Will contain the properties of the resource (the actual signature overrides) */\n properties?: SignaturesOverridesPropertiesOutput;\n}\n\n/** Will contain the properties of the resource (the actual signature overrides) */\nexport interface SignaturesOverridesPropertiesOutput {\n /** Dictionary of <string> */\n signatures?: Record<string, string>;\n}\n\n/** Describes the list of all possible values for a specific filter value */\nexport interface SignatureOverridesFilterValuesResponseOutput {\n /** Describes the possible values */\n filterValues?: Array<string>;\n}\n\n/** Describes an object containing an array with a single item */\nexport interface SignaturesOverridesListOutput {\n /** Describes a list consisting exactly one item describing the policy's signature override status */\n value?: Array<SignaturesOverridesOutput>;\n}\n\n/** IpAllocation resource. */\nexport interface IpAllocationOutput extends ResourceOutput {\n /** Properties of the IpAllocation. */\n properties?: IpAllocationPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the IpAllocation. */\nexport interface IpAllocationPropertiesFormatOutput {\n /** The Subnet that using the prefix of this IpAllocation resource. */\n readonly subnet?: SubResourceOutput;\n /** The VirtualNetwork that using the prefix of this IpAllocation resource. */\n readonly virtualNetwork?: SubResourceOutput;\n /** The type for the IpAllocation. */\n type?: \"Undefined\" | \"Hypernet\";\n /** The address prefix for the IpAllocation. */\n prefix?: string;\n /** The address prefix length for the IpAllocation. */\n prefixLength?: number;\n /** The address prefix Type for the IpAllocation. */\n prefixType?: \"IPv4\" | \"IPv6\";\n /** The IPAM allocation ID. */\n ipamAllocationId?: string;\n /** IpAllocation tags. */\n allocationTags?: Record<string, string>;\n}\n\n/** Response for the ListIpAllocations API service call. */\nexport interface IpAllocationListResultOutput {\n /** A list of IpAllocation resources. */\n value?: Array<IpAllocationOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** The IpGroups resource information. */\nexport interface IpGroupOutput extends ResourceOutput {\n /** Properties of the IpGroups. */\n properties?: IpGroupPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** The IpGroups property information. */\nexport interface IpGroupPropertiesFormatOutput {\n /** The provisioning state of the IpGroups resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** IpAddresses/IpAddressPrefixes in the IpGroups resource. */\n ipAddresses?: Array<string>;\n /** List of references to Firewall resources that this IpGroups is associated with. */\n readonly firewalls?: Array<SubResourceOutput>;\n /** List of references to Firewall Policies resources that this IpGroups is associated with. */\n readonly firewallPolicies?: Array<SubResourceOutput>;\n}\n\n/** Response for the ListIpGroups API service call. */\nexport interface IpGroupListResultOutput {\n /** The list of IpGroups information resources. */\n value?: Array<IpGroupOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** LoadBalancer resource. */\nexport interface LoadBalancerOutput extends ResourceOutput {\n /** The extended location of the load balancer. */\n extendedLocation?: ExtendedLocationOutput;\n /** The load balancer SKU. */\n sku?: LoadBalancerSkuOutput;\n /** Properties of load balancer. */\n properties?: LoadBalancerPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** SKU of a load balancer. */\nexport interface LoadBalancerSkuOutput {\n /** Name of a load balancer SKU. */\n name?: \"Basic\" | \"Standard\" | \"Gateway\";\n /** Tier of a load balancer SKU. */\n tier?: \"Regional\" | \"Global\";\n}\n\n/** Properties of the load balancer. */\nexport interface LoadBalancerPropertiesFormatOutput {\n /** Object representing the frontend IPs to be used for the load balancer. */\n frontendIPConfigurations?: Array<FrontendIPConfigurationOutput>;\n /** Collection of backend address pools used by a load balancer. */\n backendAddressPools?: Array<BackendAddressPoolOutput>;\n /** Object collection representing the load balancing rules Gets the provisioning. */\n loadBalancingRules?: Array<LoadBalancingRuleOutput>;\n /** Collection of probe objects used in the load balancer. */\n probes?: Array<ProbeOutput>;\n /** Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules. */\n inboundNatRules?: Array<InboundNatRuleOutput>;\n /** Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound NAT rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules. */\n inboundNatPools?: Array<InboundNatPoolOutput>;\n /** The outbound rules. */\n outboundRules?: Array<OutboundRuleOutput>;\n /** The resource GUID property of the load balancer resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the load balancer resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** A load balancing rule for a load balancer. */\nexport interface LoadBalancingRuleOutput extends SubResourceOutput {\n /** Properties of load balancer load balancing rule. */\n properties?: LoadBalancingRulePropertiesFormatOutput;\n /** The name of the resource that is unique within the set of load balancing rules used by the load balancer. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of the load balancer. */\nexport interface LoadBalancingRulePropertiesFormatOutput {\n /** A reference to frontend IP addresses. */\n frontendIPConfiguration?: SubResourceOutput;\n /** A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs. */\n backendAddressPool?: SubResourceOutput;\n /** An array of references to pool of DIPs. */\n backendAddressPools?: Array<SubResourceOutput>;\n /** The reference to the load balancer probe used by the load balancing rule. */\n probe?: SubResourceOutput;\n /** The reference to the transport protocol used by the load balancing rule. */\n protocol: \"Udp\" | \"Tcp\" | \"All\";\n /** The load distribution policy for this rule. */\n loadDistribution?: \"Default\" | \"SourceIP\" | \"SourceIPProtocol\";\n /** The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\". */\n frontendPort: number;\n /** The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\". */\n backendPort?: number;\n /** The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP. */\n idleTimeoutInMinutes?: number;\n /** Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint. */\n enableFloatingIP?: boolean;\n /** Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP. */\n enableTcpReset?: boolean;\n /** Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule. */\n disableOutboundSnat?: boolean;\n /** The provisioning state of the load balancing rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** A load balancer probe. */\nexport interface ProbeOutput extends SubResourceOutput {\n /** Properties of load balancer probe. */\n properties?: ProbePropertiesFormatOutput;\n /** The name of the resource that is unique within the set of probes used by the load balancer. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Load balancer probe resource. */\nexport interface ProbePropertiesFormatOutput {\n /** The load balancer rules that use this probe. */\n readonly loadBalancingRules?: Array<SubResourceOutput>;\n /** The protocol of the end point. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful. */\n protocol: \"Http\" | \"Tcp\" | \"Https\";\n /** The port for communicating the probe. Possible values range from 1 to 65535, inclusive. */\n port: number;\n /** The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5. */\n intervalInSeconds?: number;\n /** The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure. */\n numberOfProbes?: number;\n /** The number of consecutive successful or failed probes in order to allow or deny traffic from being delivered to this endpoint. After failing the number of consecutive probes equal to this value, the endpoint will be taken out of rotation and require the same number of successful consecutive probes to be placed back in rotation. */\n probeThreshold?: number;\n /** The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value. */\n requestPath?: string;\n /** The provisioning state of the probe resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Inbound NAT pool of the load balancer. */\nexport interface InboundNatPoolOutput extends SubResourceOutput {\n /** Properties of load balancer inbound nat pool. */\n properties?: InboundNatPoolPropertiesFormatOutput;\n /** The name of the resource that is unique within the set of inbound NAT pools used by the load balancer. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Properties of Inbound NAT pool. */\nexport interface InboundNatPoolPropertiesFormatOutput {\n /** A reference to frontend IP addresses. */\n frontendIPConfiguration?: SubResourceOutput;\n /** The reference to the transport protocol used by the inbound NAT pool. */\n protocol: \"Udp\" | \"Tcp\" | \"All\";\n /** The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534. */\n frontendPortRangeStart: number;\n /** The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535. */\n frontendPortRangeEnd: number;\n /** The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535. */\n backendPort: number;\n /** The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP. */\n idleTimeoutInMinutes?: number;\n /** Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint. */\n enableFloatingIP?: boolean;\n /** Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP. */\n enableTcpReset?: boolean;\n /** The provisioning state of the inbound NAT pool resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Outbound rule of the load balancer. */\nexport interface OutboundRuleOutput extends SubResourceOutput {\n /** Properties of load balancer outbound rule. */\n properties?: OutboundRulePropertiesFormatOutput;\n /** The name of the resource that is unique within the set of outbound rules used by the load balancer. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Type of the resource. */\n readonly type?: string;\n}\n\n/** Outbound rule of the load balancer. */\nexport interface OutboundRulePropertiesFormatOutput {\n /** The number of outbound ports to be used for NAT. */\n allocatedOutboundPorts?: number;\n /** The Frontend IP addresses of the load balancer. */\n frontendIPConfigurations: Array<SubResourceOutput>;\n /** A reference to a pool of DIPs. Outbound traffic is randomly load balanced across IPs in the backend IPs. */\n backendAddressPool: SubResourceOutput;\n /** The provisioning state of the outbound rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The protocol for the outbound rule in load balancer. */\n protocol: \"Tcp\" | \"Udp\" | \"All\";\n /** Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP. */\n enableTcpReset?: boolean;\n /** The timeout for the TCP idle connection. */\n idleTimeoutInMinutes?: number;\n}\n\n/** Response for ListLoadBalancers API service call. */\nexport interface LoadBalancerListResultOutput {\n /** A list of load balancers in a resource group. */\n value?: Array<LoadBalancerOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListBackendAddressPool API service call. */\nexport interface LoadBalancerBackendAddressPoolListResultOutput {\n /** A list of backend address pools in a load balancer. */\n value?: Array<BackendAddressPoolOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListFrontendIPConfiguration API service call. */\nexport interface LoadBalancerFrontendIPConfigurationListResultOutput {\n /** A list of frontend IP configurations in a load balancer. */\n value?: Array<FrontendIPConfigurationOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListInboundNatRule API service call. */\nexport interface InboundNatRuleListResultOutput {\n /** A list of inbound NAT rules in a load balancer. */\n value?: Array<InboundNatRuleOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListLoadBalancingRule API service call. */\nexport interface LoadBalancerLoadBalancingRuleListResultOutput {\n /** A list of load balancing rules in a load balancer. */\n value?: Array<LoadBalancingRuleOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListOutboundRule API service call. */\nexport interface LoadBalancerOutboundRuleListResultOutput {\n /** A list of outbound rules in a load balancer. */\n value?: Array<OutboundRuleOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListProbe API service call. */\nexport interface LoadBalancerProbeListResultOutput {\n /** A list of probes in a load balancer. */\n value?: Array<ProbeOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The response for a QueryInboundNatRulePortMapping API. */\nexport interface BackendAddressInboundNatRulePortMappingsOutput {\n /** Collection of inbound NAT rule port mappings. */\n inboundNatRulePortMappings?: Array<InboundNatRulePortMappingOutput>;\n}\n\n/** Individual port mappings for inbound NAT rule created for backend pool. */\nexport interface InboundNatRulePortMappingOutput {\n /** Name of inbound NAT rule. */\n readonly inboundNatRuleName?: string;\n /** The reference to the transport protocol used by the inbound NAT rule. */\n readonly protocol?: \"Udp\" | \"Tcp\" | \"All\";\n /** Frontend port. */\n readonly frontendPort?: number;\n /** Backend port. */\n readonly backendPort?: number;\n}\n\n/** Response for ListNatGateways API service call. */\nexport interface NatGatewayListResultOutput {\n /** A list of Nat Gateways that exists in a resource group. */\n value?: Array<NatGatewayOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for list effective route API service call. */\nexport interface EffectiveRouteListResultOutput {\n /** A list of effective routes. */\n value?: Array<EffectiveRouteOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Effective Route. */\nexport interface EffectiveRouteOutput {\n /** The name of the user defined route. This is optional. */\n name?: string;\n /** If true, on-premises routes are not propagated to the network interfaces in the subnet. */\n disableBgpRoutePropagation?: boolean;\n /** Who created the route. */\n source?: \"Unknown\" | \"User\" | \"VirtualNetworkGateway\" | \"Default\";\n /** The value of effective route. */\n state?: \"Active\" | \"Invalid\";\n /** The address prefixes of the effective routes in CIDR notation. */\n addressPrefix?: Array<string>;\n /** The IP address of the next hop of the effective route. */\n nextHopIpAddress?: Array<string>;\n /** The type of Azure hop the packet should be sent to. */\n nextHopType?: \"VirtualNetworkGateway\" | \"VnetLocal\" | \"Internet\" | \"VirtualAppliance\" | \"None\";\n}\n\n/** Response for list effective network security groups API service call. */\nexport interface EffectiveNetworkSecurityGroupListResultOutput {\n /** A list of effective network security groups. */\n value?: Array<EffectiveNetworkSecurityGroupOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Effective network security group. */\nexport interface EffectiveNetworkSecurityGroupOutput {\n /** The ID of network security group that is applied. */\n networkSecurityGroup?: SubResourceOutput;\n /** Associated resources. */\n association?: EffectiveNetworkSecurityGroupAssociationOutput;\n /** A collection of effective security rules. */\n effectiveSecurityRules?: Array<EffectiveNetworkSecurityRuleOutput>;\n /** Mapping of tags to list of IP Addresses included within the tag. */\n tagMap?: string;\n}\n\n/** The effective network security group association. */\nexport interface EffectiveNetworkSecurityGroupAssociationOutput {\n /** The ID of the Azure network manager if assigned. */\n networkManager?: SubResourceOutput;\n /** The ID of the subnet if assigned. */\n subnet?: SubResourceOutput;\n /** The ID of the network interface if assigned. */\n networkInterface?: SubResourceOutput;\n}\n\n/** Effective network security rules. */\nexport interface EffectiveNetworkSecurityRuleOutput {\n /** The name of the security rule specified by the user (if created by the user). */\n name?: string;\n /** The network protocol this rule applies to. */\n protocol?: \"Tcp\" | \"Udp\" | \"All\";\n /** The source port or range. */\n sourcePortRange?: string;\n /** The destination port or range. */\n destinationPortRange?: string;\n /** The source port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*). */\n sourcePortRanges?: Array<string>;\n /** The destination port ranges. Expected values include a single integer between 0 and 65535, a range using '-' as separator (e.g. 100-400), or an asterisk (*). */\n destinationPortRanges?: Array<string>;\n /** The source address prefix. */\n sourceAddressPrefix?: string;\n /** The destination address prefix. */\n destinationAddressPrefix?: string;\n /** The source address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*). */\n sourceAddressPrefixes?: Array<string>;\n /** The destination address prefixes. Expected values include CIDR IP ranges, Default Tags (VirtualNetwork, AzureLoadBalancer, Internet), System Tags, and the asterisk (*). */\n destinationAddressPrefixes?: Array<string>;\n /** The expanded source address prefix. */\n expandedSourceAddressPrefix?: Array<string>;\n /** Expanded destination address prefix. */\n expandedDestinationAddressPrefix?: Array<string>;\n /** Whether network traffic is allowed or denied. */\n access?: \"Allow\" | \"Deny\";\n /** The priority of the rule. */\n priority?: number;\n /** The direction of the rule. */\n direction?: \"Inbound\" | \"Outbound\";\n}\n\n/** Response for list ip configurations API service call. */\nexport interface NetworkInterfaceIPConfigurationListResultOutput {\n /** A list of ip configurations. */\n value?: Array<NetworkInterfaceIPConfigurationOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for list ip configurations API service call. */\nexport interface NetworkInterfaceLoadBalancerListResultOutput {\n /** A list of load balancers. */\n value?: Array<LoadBalancerOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for list tap configurations API service call. */\nexport interface NetworkInterfaceTapConfigurationListResultOutput {\n /** A list of tap configurations. */\n value?: Array<NetworkInterfaceTapConfigurationOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The Managed Network resource */\nexport interface NetworkManagerOutput extends ResourceOutput {\n /** The network manager properties */\n properties?: NetworkManagerPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n}\n\n/** Properties of Managed Network */\nexport interface NetworkManagerPropertiesOutput {\n /** A description of the network manager. */\n description?: string;\n /** Scope of Network Manager. */\n networkManagerScopes: NetworkManagerPropertiesNetworkManagerScopesOutput;\n /** Scope Access. */\n networkManagerScopeAccesses: Array<\"SecurityAdmin\" | \"Connectivity\">;\n /** The provisioning state of the network manager resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Scope of Network Manager. */\nexport interface NetworkManagerPropertiesNetworkManagerScopesOutput {\n /** List of management groups. */\n managementGroups?: Array<string>;\n /** List of subscriptions. */\n subscriptions?: Array<string>;\n /** List of cross tenant scopes. */\n readonly crossTenantScopes?: Array<CrossTenantScopesOutput>;\n}\n\n/** Cross tenant scopes. */\nexport interface CrossTenantScopesOutput {\n /** Tenant ID. */\n readonly tenantId?: string;\n /** List of management groups. */\n readonly managementGroups?: Array<string>;\n /** List of subscriptions. */\n readonly subscriptions?: Array<string>;\n}\n\n/** Metadata pertaining to creation and last modification of the resource. */\nexport interface SystemDataOutput {\n /** The identity that created the resource. */\n createdBy?: string;\n /** The type of identity that created the resource. */\n createdByType?: \"User\" | \"Application\" | \"ManagedIdentity\" | \"Key\";\n /** The timestamp of resource creation (UTC). */\n createdAt?: string;\n /** The identity that last modified the resource. */\n lastModifiedBy?: string;\n /** The type of identity that last modified the resource. */\n lastModifiedByType?: \"User\" | \"Application\" | \"ManagedIdentity\" | \"Key\";\n /** The type of identity that last modified the resource. */\n lastModifiedAt?: string;\n}\n\n/** Network Manager Commit. */\nexport interface NetworkManagerCommitOutput {\n /** Commit Id. */\n readonly commitId?: string;\n /** List of target locations. */\n targetLocations: Array<string>;\n /** List of configuration ids. */\n configurationIds?: Array<string>;\n /** Commit Type. */\n commitType: \"SecurityAdmin\" | \"Connectivity\";\n}\n\n/** A list of Network Manager Deployment Status */\nexport interface NetworkManagerDeploymentStatusListResultOutput {\n /** Gets a page of Network Manager Deployment Status */\n value?: Array<NetworkManagerDeploymentStatusOutput>;\n /** When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data. */\n skipToken?: string;\n}\n\n/** Network Manager Deployment Status. */\nexport interface NetworkManagerDeploymentStatusOutput {\n /** Commit Time. */\n commitTime?: string;\n /** Region Name. */\n region?: string;\n /** Deployment Status. */\n deploymentStatus?: \"NotStarted\" | \"Deploying\" | \"Deployed\" | \"Failed\";\n /** List of configuration ids. */\n configurationIds?: Array<string>;\n /** Configuration Deployment Type. */\n deploymentType?: \"SecurityAdmin\" | \"Connectivity\";\n /** Error Message. */\n errorMessage?: string;\n}\n\n/** Result of the request to list NetworkManager. It contains a list of network managers and a URL link to get the next set of results. */\nexport interface NetworkManagerListResultOutput {\n /** Gets a page of NetworkManager */\n value?: Array<NetworkManagerOutput>;\n /** Gets the URL to get the next page of results. */\n nextLink?: string;\n}\n\n/** Result of the request to list active connectivity configurations. It contains a list of active connectivity configurations and a skiptoken to get the next set of results. */\nexport interface ActiveConnectivityConfigurationsListResultOutput {\n /** Gets a page of active connectivity configurations. */\n value?: Array<ActiveConnectivityConfigurationOutput>;\n /** When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data. */\n skipToken?: string;\n}\n\n/** Active connectivity configuration. */\nexport interface ActiveConnectivityConfigurationOutput\n extends EffectiveConnectivityConfigurationOutput {\n /** Deployment time string. */\n commitTime?: string;\n /** Deployment region. */\n region?: string;\n}\n\n/** The network manager effective connectivity configuration */\nexport interface EffectiveConnectivityConfigurationOutput {\n /** Connectivity configuration ID. */\n id?: string;\n /** Properties of a network manager connectivity configuration */\n properties?: ConnectivityConfigurationPropertiesOutput;\n /** Effective configuration groups. */\n configurationGroups?: Array<ConfigurationGroupOutput>;\n}\n\n/** Properties of network manager connectivity configuration */\nexport interface ConnectivityConfigurationPropertiesOutput {\n /** A description of the connectivity configuration. */\n description?: string;\n /** Connectivity topology type. */\n connectivityTopology: \"HubAndSpoke\" | \"Mesh\";\n /** List of hubItems */\n hubs?: Array<HubOutput>;\n /** Flag if global mesh is supported. */\n isGlobal?: \"False\" | \"True\";\n /** Groups for configuration */\n appliesToGroups: Array<ConnectivityGroupItemOutput>;\n /** The provisioning state of the connectivity configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Flag if need to remove current existing peerings. */\n deleteExistingPeering?: \"False\" | \"True\";\n}\n\n/** Hub Item. */\nexport interface HubOutput {\n /** Resource Id. */\n resourceId?: string;\n /** Resource Type. */\n resourceType?: string;\n}\n\n/** Connectivity group item. */\nexport interface ConnectivityGroupItemOutput {\n /** Network group Id. */\n networkGroupId: string;\n /** Flag if need to use hub gateway. */\n useHubGateway?: \"False\" | \"True\";\n /** Flag if global is supported. */\n isGlobal?: \"False\" | \"True\";\n /** Group connectivity type. */\n groupConnectivity: \"None\" | \"DirectlyConnected\";\n}\n\n/** The network configuration group resource */\nexport interface ConfigurationGroupOutput {\n /** Network group ID. */\n id?: string;\n /** The network configuration group properties */\n properties?: NetworkGroupPropertiesOutput;\n}\n\n/** Properties of network group */\nexport interface NetworkGroupPropertiesOutput {\n /** A description of the network group. */\n description?: string;\n /** The provisioning state of the scope assignment resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Result of the request to list active security admin rules. It contains a list of active security admin rules and a skiptoken to get the next set of results. */\nexport interface ActiveSecurityAdminRulesListResultOutput {\n /** Gets a page of active security admin rules. */\n value?: Array<ActiveBaseSecurityAdminRuleOutput>;\n /** When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data. */\n skipToken?: string;\n}\n\n/** Network base admin rule. */\nexport interface ActiveBaseSecurityAdminRuleOutputParent {\n /** Resource ID. */\n id?: string;\n /** Deployment time string. */\n commitTime?: string;\n /** Deployment region. */\n region?: string;\n /** A description of the security admin configuration. */\n configurationDescription?: string;\n /** A description of the rule collection. */\n ruleCollectionDescription?: string;\n /** Groups for rule collection */\n ruleCollectionAppliesToGroups?: Array<NetworkManagerSecurityGroupItemOutput>;\n /** Effective configuration groups. */\n ruleGroups?: Array<ConfigurationGroupOutput>;\n kind: \"ActiveBaseSecurityAdminRule\" | \"Custom\" | \"Default\";\n}\n\n/** Network manager security group item. */\nexport interface NetworkManagerSecurityGroupItemOutput {\n /** Network manager group Id. */\n networkGroupId: string;\n}\n\n/** The Network Manager Connection resource */\nexport interface NetworkManagerConnectionOutput extends ChildResourceOutput {\n /** The scope connection properties */\n properties?: NetworkManagerConnectionPropertiesOutput;\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n}\n\n/** Information about the network manager connection. */\nexport interface NetworkManagerConnectionPropertiesOutput {\n /** Network Manager Id. */\n networkManagerId?: string;\n /** Connection state. */\n readonly connectionState?: \"Connected\" | \"Pending\" | \"Conflict\" | \"Revoked\" | \"Rejected\";\n /** A description of the network manager connection. */\n description?: string;\n}\n\n/** Proxy resource representation. */\nexport interface ChildResourceOutput {\n /** Resource ID. */\n readonly id?: string;\n /** Resource name. */\n readonly name?: string;\n /** Resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** List of network manager connections. */\nexport interface NetworkManagerConnectionListResultOutput {\n /** List of network manager connections. */\n value?: Array<NetworkManagerConnectionOutput>;\n /** Gets the URL to get the next page of results. */\n nextLink?: string;\n}\n\n/** The network manager connectivity configuration resource */\nexport interface ConnectivityConfigurationOutput extends ChildResourceOutput {\n /** Properties of a network manager connectivity configuration */\n properties?: ConnectivityConfigurationPropertiesOutput;\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n}\n\n/** Result of the request to list network manager connectivity configurations. It contains a list of configurations and a link to get the next set of results. */\nexport interface ConnectivityConfigurationListResultOutput {\n /** Gets a page of Connectivity Configurations */\n value?: Array<ConnectivityConfigurationOutput>;\n /** Gets the URL to get the next page of results. */\n nextLink?: string;\n}\n\n/** Result of the request to list networkManagerEffectiveConnectivityConfiguration. It contains a list of groups and a skiptoken to get the next set of results. */\nexport interface NetworkManagerEffectiveConnectivityConfigurationListResultOutput {\n /** Gets a page of NetworkManagerEffectiveConnectivityConfiguration */\n value?: Array<EffectiveConnectivityConfigurationOutput>;\n /** When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data. */\n skipToken?: string;\n}\n\n/** Result of the request to list networkManagerEffectiveSecurityAdminRules. It contains a list of groups and a skiptoken to get the next set of results. */\nexport interface NetworkManagerEffectiveSecurityAdminRulesListResultOutput {\n /** Gets a page of NetworkManagerEffectiveSecurityAdminRules */\n value?: Array<EffectiveBaseSecurityAdminRuleOutput>;\n /** When present, the value can be passed to a subsequent query call (together with the same query and scopes used in the current request) to retrieve the next page of data. */\n skipToken?: string;\n}\n\n/** Network base admin rule. */\nexport interface EffectiveBaseSecurityAdminRuleOutputParent {\n /** Resource ID. */\n id?: string;\n /** A description of the security admin configuration. */\n configurationDescription?: string;\n /** A description of the rule collection. */\n ruleCollectionDescription?: string;\n /** Groups for rule collection */\n ruleCollectionAppliesToGroups?: Array<NetworkManagerSecurityGroupItemOutput>;\n /** Effective configuration groups. */\n ruleGroups?: Array<ConfigurationGroupOutput>;\n kind: \"EffectiveBaseSecurityAdminRule\" | \"Custom\" | \"Default\";\n}\n\n/** The network group resource */\nexport interface NetworkGroupOutput extends ChildResourceOutput {\n /** The Network Group properties */\n properties?: NetworkGroupPropertiesOutput;\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n}\n\n/** Result of the request to list NetworkGroup. It contains a list of groups and a URL link to get the next set of results. */\nexport interface NetworkGroupListResultOutput {\n /** Gets a page of NetworkGroup */\n value?: Array<NetworkGroupOutput>;\n /** Gets the URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** StaticMember Item. */\nexport interface StaticMemberOutput extends ChildResourceOutput {\n /** The Static Member properties */\n properties?: StaticMemberPropertiesOutput;\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n}\n\n/** Properties of static member. */\nexport interface StaticMemberPropertiesOutput {\n /** Resource Id. */\n resourceId?: string;\n /** Resource region. */\n readonly region?: string;\n /** The provisioning state of the scope assignment resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Result of the request to list StaticMember. It contains a list of groups and a URL link to get the next set of results. */\nexport interface StaticMemberListResultOutput {\n /** Gets a page of StaticMember */\n value?: Array<StaticMemberOutput>;\n /** Gets the URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** The Scope Connections resource */\nexport interface ScopeConnectionOutput extends ChildResourceOutput {\n /** The scope connection properties */\n properties?: ScopeConnectionPropertiesOutput;\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n}\n\n/** Scope connection. */\nexport interface ScopeConnectionPropertiesOutput {\n /** Tenant ID. */\n tenantId?: string;\n /** Resource ID. */\n resourceId?: string;\n /** Connection State */\n readonly connectionState?: \"Connected\" | \"Pending\" | \"Conflict\" | \"Revoked\" | \"Rejected\";\n /** A description of the scope connection. */\n description?: string;\n}\n\n/** List of scope connections. */\nexport interface ScopeConnectionListResultOutput {\n /** List of scope connections. */\n value?: Array<ScopeConnectionOutput>;\n /** Gets the URL to get the next page of results. */\n nextLink?: string;\n}\n\n/** A list of network manager security admin configurations */\nexport interface SecurityAdminConfigurationListResultOutput {\n /** Gets a page of security admin configurations */\n value?: Array<SecurityAdminConfigurationOutput>;\n /** Gets the URL to get the next page of results. */\n nextLink?: string;\n}\n\n/** Defines the security admin configuration */\nexport interface SecurityAdminConfigurationOutput extends ChildResourceOutput {\n /** Indicates the properties for the network manager security admin configuration. */\n properties?: SecurityAdminConfigurationPropertiesFormatOutput;\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n}\n\n/** Defines the security admin configuration properties. */\nexport interface SecurityAdminConfigurationPropertiesFormatOutput {\n /** A description of the security configuration. */\n description?: string;\n /** Enum list of network intent policy based services. */\n applyOnNetworkIntentPolicyBasedServices?: Array<\"None\" | \"All\" | \"AllowRulesOnly\">;\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Security admin configuration rule collection list result. */\nexport interface AdminRuleCollectionListResultOutput {\n /** A list of network manager security admin configuration rule collections */\n value?: Array<AdminRuleCollectionOutput>;\n /** Gets the URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Defines the admin rule collection. */\nexport interface AdminRuleCollectionOutput extends ChildResourceOutput {\n /** Indicates the properties for the network manager admin rule collection. */\n properties?: AdminRuleCollectionPropertiesFormatOutput;\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n}\n\n/** Defines the admin rule collection properties. */\nexport interface AdminRuleCollectionPropertiesFormatOutput {\n /** A description of the admin rule collection. */\n description?: string;\n /** Groups for configuration */\n appliesToGroups: Array<NetworkManagerSecurityGroupItemOutput>;\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** security configuration admin rule list result. */\nexport interface AdminRuleListResultOutput {\n /** A list of admin rules */\n value?: Array<BaseAdminRuleOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Network base admin rule. */\nexport interface BaseAdminRuleOutputParent extends ChildResourceOutput {\n /** The system metadata related to this resource. */\n readonly systemData?: SystemDataOutput;\n kind: \"BaseAdminRule\" | \"Custom\" | \"Default\";\n}\n\n/** Network profile resource. */\nexport interface NetworkProfileOutput extends ResourceOutput {\n /** Network profile properties. */\n properties?: NetworkProfilePropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Network profile properties. */\nexport interface NetworkProfilePropertiesFormatOutput {\n /** List of child container network interfaces. */\n readonly containerNetworkInterfaces?: Array<ContainerNetworkInterfaceOutput>;\n /** List of chid container network interface configurations. */\n containerNetworkInterfaceConfigurations?: Array<ContainerNetworkInterfaceConfigurationOutput>;\n /** The resource GUID property of the network profile resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the network profile resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Container network interface child resource. */\nexport interface ContainerNetworkInterfaceOutput extends SubResourceOutput {\n /** Container network interface properties. */\n properties?: ContainerNetworkInterfacePropertiesFormatOutput;\n /** The name of the resource. This name can be used to access the resource. */\n name?: string;\n /** Sub Resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of container network interface. */\nexport interface ContainerNetworkInterfacePropertiesFormatOutput {\n /** Container network interface configuration from which this container network interface is created. */\n readonly containerNetworkInterfaceConfiguration?: ContainerNetworkInterfaceConfigurationOutput;\n /** Reference to the container to which this container network interface is attached. */\n container?: ContainerOutput;\n /** Reference to the ip configuration on this container nic. */\n readonly ipConfigurations?: Array<ContainerNetworkInterfaceIpConfigurationOutput>;\n /** The provisioning state of the container network interface resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Container network interface configuration child resource. */\nexport interface ContainerNetworkInterfaceConfigurationOutput extends SubResourceOutput {\n /** Container network interface configuration properties. */\n properties?: ContainerNetworkInterfaceConfigurationPropertiesFormatOutput;\n /** The name of the resource. This name can be used to access the resource. */\n name?: string;\n /** Sub Resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Container network interface configuration properties. */\nexport interface ContainerNetworkInterfaceConfigurationPropertiesFormatOutput {\n /** A list of ip configurations of the container network interface configuration. */\n ipConfigurations?: Array<IPConfigurationProfileOutput>;\n /** A list of container network interfaces created from this container network interface configuration. */\n containerNetworkInterfaces?: Array<SubResourceOutput>;\n /** The provisioning state of the container network interface configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Reference to container resource in remote resource provider. */\nexport interface ContainerOutput extends SubResourceOutput {}\n\n/** The ip configuration for a container network interface. */\nexport interface ContainerNetworkInterfaceIpConfigurationOutput {\n /** Properties of the container network interface IP configuration. */\n properties?: ContainerNetworkInterfaceIpConfigurationPropertiesFormatOutput;\n /** The name of the resource. This name can be used to access the resource. */\n name?: string;\n /** Sub Resource type. */\n readonly type?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the container network interface IP configuration. */\nexport interface ContainerNetworkInterfaceIpConfigurationPropertiesFormatOutput {\n /** The provisioning state of the container network interface IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for ListNetworkProfiles API service call. */\nexport interface NetworkProfileListResultOutput {\n /** A list of network profiles that exist in a resource group. */\n value?: Array<NetworkProfileOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ListNetworkSecurityGroups API service call. */\nexport interface NetworkSecurityGroupListResultOutput {\n /** A list of NetworkSecurityGroup resources. */\n value?: Array<NetworkSecurityGroupOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group. */\nexport interface SecurityRuleListResultOutput {\n /** The security rules in a network security group. */\n value?: Array<SecurityRuleOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** NetworkVirtualAppliance Resource. */\nexport interface NetworkVirtualApplianceOutput extends ResourceOutput {\n /** Properties of the Network Virtual Appliance. */\n properties?: NetworkVirtualAppliancePropertiesFormatOutput;\n /** The service principal that has read access to cloud-init and config blob. */\n identity?: ManagedServiceIdentityOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Network Virtual Appliance definition. */\nexport interface NetworkVirtualAppliancePropertiesFormatOutput {\n /** Network Virtual Appliance SKU. */\n nvaSku?: VirtualApplianceSkuPropertiesOutput;\n /** Address Prefix. */\n readonly addressPrefix?: string;\n /** BootStrapConfigurationBlobs storage URLs. */\n bootStrapConfigurationBlobs?: Array<string>;\n /** The Virtual Hub where Network Virtual Appliance is being deployed. */\n virtualHub?: SubResourceOutput;\n /** CloudInitConfigurationBlob storage URLs. */\n cloudInitConfigurationBlobs?: Array<string>;\n /** CloudInitConfiguration string in plain text. */\n cloudInitConfiguration?: string;\n /** VirtualAppliance ASN. */\n virtualApplianceAsn?: number;\n /** Public key for SSH login. */\n sshPublicKey?: string;\n /** List of Virtual Appliance Network Interfaces. */\n readonly virtualApplianceNics?: Array<VirtualApplianceNicPropertiesOutput>;\n /** List of references to VirtualApplianceSite. */\n readonly virtualApplianceSites?: Array<SubResourceOutput>;\n /** List of references to InboundSecurityRules. */\n readonly inboundSecurityRules?: Array<SubResourceOutput>;\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Network Virtual Appliance Sku Properties. */\nexport interface VirtualApplianceSkuPropertiesOutput {\n /** Virtual Appliance Vendor. */\n vendor?: string;\n /** Virtual Appliance Scale Unit. */\n bundledScaleUnit?: string;\n /** Virtual Appliance Version. */\n marketPlaceVersion?: string;\n}\n\n/** Network Virtual Appliance NIC properties. */\nexport interface VirtualApplianceNicPropertiesOutput {\n /** NIC name. */\n readonly name?: string;\n /** Public IP address. */\n readonly publicIpAddress?: string;\n /** Private IP address. */\n readonly privateIpAddress?: string;\n}\n\n/** Response for ListNetworkVirtualAppliances API service call. */\nexport interface NetworkVirtualApplianceListResultOutput {\n /** List of Network Virtual Appliances. */\n value?: Array<NetworkVirtualApplianceOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Virtual Appliance Site resource. */\nexport interface VirtualApplianceSiteOutput extends SubResourceOutput {\n /** The properties of the Virtual Appliance Sites. */\n properties?: VirtualApplianceSitePropertiesOutput;\n /** Name of the virtual appliance site. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Site type. */\n readonly type?: string;\n}\n\n/** Properties of the rule group. */\nexport interface VirtualApplianceSitePropertiesOutput {\n /** Address Prefix. */\n addressPrefix?: string;\n /** Office 365 Policy. */\n o365Policy?: Office365PolicyPropertiesOutput;\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Network Virtual Appliance Sku Properties. */\nexport interface Office365PolicyPropertiesOutput {\n /** Office 365 breakout categories. */\n breakOutCategories?: BreakOutCategoryPoliciesOutput;\n}\n\n/** Network Virtual Appliance Sku Properties. */\nexport interface BreakOutCategoryPoliciesOutput {\n /** Flag to control breakout of o365 allow category. */\n allow?: boolean;\n /** Flag to control breakout of o365 optimize category. */\n optimize?: boolean;\n /** Flag to control breakout of o365 default category. */\n default?: boolean;\n}\n\n/** Response for ListNetworkVirtualApplianceSites API service call. */\nexport interface NetworkVirtualApplianceSiteListResultOutput {\n /** List of Network Virtual Appliance sites. */\n value?: Array<VirtualApplianceSiteOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ListNetworkVirtualApplianceSkus API service call. */\nexport interface NetworkVirtualApplianceSkuListResultOutput {\n /** List of Network Virtual Appliance Skus that are available. */\n value?: Array<NetworkVirtualApplianceSkuOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Definition of the NetworkVirtualApplianceSkus resource. */\nexport interface NetworkVirtualApplianceSkuOutput extends ResourceOutput {\n /** NetworkVirtualApplianceSku properties. */\n properties?: NetworkVirtualApplianceSkuPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties specific to NetworkVirtualApplianceSkus. */\nexport interface NetworkVirtualApplianceSkuPropertiesFormatOutput {\n /** Network Virtual Appliance Sku vendor. */\n readonly vendor?: string;\n /** Available Network Virtual Appliance versions. */\n readonly availableVersions?: Array<string>;\n /** The list of scale units available. */\n availableScaleUnits?: Array<NetworkVirtualApplianceSkuInstancesOutput>;\n}\n\n/** List of available Sku and instances. */\nexport interface NetworkVirtualApplianceSkuInstancesOutput {\n /** Scale Unit. */\n readonly scaleUnit?: string;\n /** Instance Count. */\n readonly instanceCount?: number;\n}\n\n/** NVA Inbound Security Rule resource. */\nexport interface InboundSecurityRuleOutput extends SubResourceOutput {\n /** The properties of the Inbound Security Rules. */\n properties?: InboundSecurityRulePropertiesOutput;\n /** Name of security rule collection. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** NVA inbound security rule type. */\n readonly type?: string;\n}\n\n/** Properties of the Inbound Security Rules resource. */\nexport interface InboundSecurityRulePropertiesOutput {\n /** List of allowed rules. */\n rules?: Array<InboundSecurityRulesOutput>;\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Properties of the Inbound Security Rules resource. */\nexport interface InboundSecurityRulesOutput {\n /** Protocol. This should be either TCP or UDP. */\n protocol?: \"TCP\" | \"UDP\";\n /** The CIDR or source IP range. Only /30, /31 and /32 Ip ranges are allowed. */\n sourceAddressPrefix?: string;\n /** NVA port ranges to be opened up. One needs to provide specific ports. */\n destinationPortRange?: number;\n}\n\n/** Network watcher in a resource group. */\nexport interface NetworkWatcherOutput extends ResourceOutput {\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Properties of the network watcher. */\n properties?: NetworkWatcherPropertiesFormatOutput;\n}\n\n/** The network watcher properties. */\nexport interface NetworkWatcherPropertiesFormatOutput {\n /** The provisioning state of the network watcher resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** The error object. */\nexport interface ErrorResponseOutput {\n /** The error details object. */\n error?: ErrorDetailsOutput;\n}\n\n/** Response for ListNetworkWatchers API service call. */\nexport interface NetworkWatcherListResultOutput {\n /** List of network watcher resources. */\n value?: Array<NetworkWatcherOutput>;\n}\n\n/** Topology of the specified resource group. */\nexport interface TopologyOutput {\n /** GUID representing the operation id. */\n readonly id?: string;\n /** The datetime when the topology was initially created for the resource group. */\n readonly createdDateTime?: string;\n /** The datetime when the topology was last modified. */\n readonly lastModified?: string;\n /** A list of topology resources. */\n resources?: Array<TopologyResourceOutput>;\n}\n\n/** The network resource topology information for the given resource group. */\nexport interface TopologyResourceOutput {\n /** Name of the resource. */\n name?: string;\n /** ID of the resource. */\n id?: string;\n /** Resource location. */\n location?: string;\n /** Holds the associations the resource has with other resources in the resource group. */\n associations?: Array<TopologyAssociationOutput>;\n}\n\n/** Resources that have an association with the parent resource. */\nexport interface TopologyAssociationOutput {\n /** The name of the resource that is associated with the parent resource. */\n name?: string;\n /** The ID of the resource that is associated with the parent resource. */\n resourceId?: string;\n /** The association type of the child resource to the parent resource. */\n associationType?: \"Associated\" | \"Contains\";\n}\n\n/** Results of IP flow verification on the target resource. */\nexport interface VerificationIPFlowResultOutput {\n /** Indicates whether the traffic is allowed or denied. */\n access?: \"Allow\" | \"Deny\";\n /** Name of the rule. If input is not matched against any security rule, it is not displayed. */\n ruleName?: string;\n}\n\n/** The information about next hop from the specified VM. */\nexport interface NextHopResultOutput {\n /** Next hop type. */\n nextHopType?:\n | \"Internet\"\n | \"VirtualAppliance\"\n | \"VirtualNetworkGateway\"\n | \"VnetLocal\"\n | \"HyperNetGateway\"\n | \"None\";\n /** Next hop IP Address. */\n nextHopIpAddress?: string;\n /** The resource identifier for the route table associated with the route being returned. If the route being returned does not correspond to any user created routes then this field will be the string 'System Route'. */\n routeTableId?: string;\n}\n\n/** The information about security rules applied to the specified VM. */\nexport interface SecurityGroupViewResultOutput {\n /** List of network interfaces on the specified VM. */\n networkInterfaces?: Array<SecurityGroupNetworkInterfaceOutput>;\n}\n\n/** Network interface and all its associated security rules. */\nexport interface SecurityGroupNetworkInterfaceOutput {\n /** ID of the network interface. */\n id?: string;\n /** All security rules associated with the network interface. */\n securityRuleAssociations?: SecurityRuleAssociationsOutput;\n}\n\n/** All security rules associated with the network interface. */\nexport interface SecurityRuleAssociationsOutput {\n /** Network interface and it's custom security rules. */\n networkInterfaceAssociation?: NetworkInterfaceAssociationOutput;\n /** Subnet and it's custom security rules. */\n subnetAssociation?: SubnetAssociationOutput;\n /** Collection of default security rules of the network security group. */\n defaultSecurityRules?: Array<SecurityRuleOutput>;\n /** Collection of effective security rules. */\n effectiveSecurityRules?: Array<EffectiveNetworkSecurityRuleOutput>;\n}\n\n/** Network interface and its custom security rules. */\nexport interface NetworkInterfaceAssociationOutput {\n /** Network interface ID. */\n readonly id?: string;\n /** Collection of custom security rules. */\n securityRules?: Array<SecurityRuleOutput>;\n}\n\n/** Subnet and it's custom security rules. */\nexport interface SubnetAssociationOutput {\n /** Subnet ID. */\n readonly id?: string;\n /** Collection of custom security rules. */\n securityRules?: Array<SecurityRuleOutput>;\n}\n\n/** Parameters that define the create packet capture operation. */\nexport interface PacketCaptureParametersOutput {\n /** The ID of the targeted resource, only AzureVM and AzureVMSS as target type are currently supported. */\n target: string;\n /** A list of AzureVMSS instances which can be included or excluded to run packet capture. If both included and excluded are empty, then the packet capture will run on all instances of AzureVMSS. */\n scope?: PacketCaptureMachineScopeOutput;\n /** Target type of the resource provided. */\n targetType?: \"AzureVM\" | \"AzureVMSS\";\n /** Number of bytes captured per packet, the remaining bytes are truncated. */\n bytesToCapturePerPacket?: number;\n /** Maximum size of the capture output. */\n totalBytesPerSession?: number;\n /** Maximum duration of the capture session in seconds. */\n timeLimitInSeconds?: number;\n /** The storage location for a packet capture session. */\n storageLocation: PacketCaptureStorageLocationOutput;\n /** A list of packet capture filters. */\n filters?: Array<PacketCaptureFilterOutput>;\n}\n\n/** A list of AzureVMSS instances which can be included or excluded to run packet capture. If both included and excluded are empty, then the packet capture will run on all instances of AzureVMSS. */\nexport interface PacketCaptureMachineScopeOutput {\n /** List of AzureVMSS instances to run packet capture on. */\n include?: Array<string>;\n /** List of AzureVMSS instances which has to be excluded from the AzureVMSS from running packet capture. */\n exclude?: Array<string>;\n}\n\n/** The storage location for a packet capture session. */\nexport interface PacketCaptureStorageLocationOutput {\n /** The ID of the storage account to save the packet capture session. Required if no local file path is provided. */\n storageId?: string;\n /** The URI of the storage path to save the packet capture. Must be a well-formed URI describing the location to save the packet capture. */\n storagePath?: string;\n /** A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For linux virtual machine it must start with /var/captures. Required if no storage ID is provided, otherwise optional. */\n filePath?: string;\n}\n\n/** Filter that is applied to packet capture request. Multiple filters can be applied. */\nexport interface PacketCaptureFilterOutput {\n /** Protocol to be filtered on. */\n protocol?: \"TCP\" | \"UDP\" | \"Any\";\n /** Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5\"? for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null. */\n localIPAddress?: string;\n /** Local IP Address to be filtered on. Notation: \"127.0.0.1\" for single address entry. \"127.0.0.1-127.0.0.255\" for range. \"127.0.0.1;127.0.0.5;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null. */\n remoteIPAddress?: string;\n /** Local port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null. */\n localPort?: string;\n /** Remote port to be filtered on. Notation: \"80\" for single port entry.\"80-85\" for range. \"80;443;\" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Default = null. */\n remotePort?: string;\n}\n\n/** Information about packet capture session. */\nexport interface PacketCaptureResultOutput {\n /** Name of the packet capture session. */\n readonly name?: string;\n /** ID of the packet capture operation. */\n readonly id?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Properties of the packet capture result. */\n properties?: PacketCaptureResultPropertiesOutput;\n}\n\n/** The properties of a packet capture session. */\nexport interface PacketCaptureResultPropertiesOutput extends PacketCaptureParametersOutput {\n /** The provisioning state of the packet capture session. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Status of packet capture session. */\nexport interface PacketCaptureQueryStatusResultOutput {\n /** The name of the packet capture resource. */\n name?: string;\n /** The ID of the packet capture resource. */\n id?: string;\n /** The start time of the packet capture session. */\n captureStartTime?: string;\n /** The status of the packet capture session. */\n packetCaptureStatus?: \"NotStarted\" | \"Running\" | \"Stopped\" | \"Error\" | \"Unknown\";\n /** The reason the current packet capture session was stopped. */\n stopReason?: string;\n /** List of errors of packet capture session. */\n packetCaptureError?: Array<\n \"InternalError\" | \"AgentStopped\" | \"CaptureFailed\" | \"LocalFileFailed\" | \"StorageFailed\"\n >;\n}\n\n/** List of packet capture sessions. */\nexport interface PacketCaptureListResultOutput {\n /** Information about packet capture sessions. */\n value?: Array<PacketCaptureResultOutput>;\n}\n\n/** Troubleshooting information gained from specified resource. */\nexport interface TroubleshootingResultOutput {\n /** The start time of the troubleshooting. */\n startTime?: string;\n /** The end time of the troubleshooting. */\n endTime?: string;\n /** The result code of the troubleshooting. */\n code?: string;\n /** Information from troubleshooting. */\n results?: Array<TroubleshootingDetailsOutput>;\n}\n\n/** Information gained from troubleshooting of specified resource. */\nexport interface TroubleshootingDetailsOutput {\n /** The id of the get troubleshoot operation. */\n id?: string;\n /** Reason type of failure. */\n reasonType?: string;\n /** A summary of troubleshooting. */\n summary?: string;\n /** Details on troubleshooting results. */\n detail?: string;\n /** List of recommended actions. */\n recommendedActions?: Array<TroubleshootingRecommendedActionsOutput>;\n}\n\n/** Recommended actions based on discovered issues. */\nexport interface TroubleshootingRecommendedActionsOutput {\n /** ID of the recommended action. */\n actionId?: string;\n /** Description of recommended actions. */\n actionText?: string;\n /** The uri linking to a documentation for the recommended troubleshooting actions. */\n actionUri?: string;\n /** The information from the URI for the recommended troubleshooting actions. */\n actionUriText?: string;\n}\n\n/** Information on the configuration of flow log and traffic analytics (optional) . */\nexport interface FlowLogInformationOutput {\n /** The ID of the resource to configure for flow log and traffic analytics (optional) . */\n targetResourceId: string;\n /** Properties of the flow log. */\n properties: FlowLogPropertiesOutput;\n /** Parameters that define the configuration of traffic analytics. */\n flowAnalyticsConfiguration?: TrafficAnalyticsPropertiesOutput;\n}\n\n/** Parameters that define the configuration of flow log. */\nexport interface FlowLogPropertiesOutput {\n /** ID of the storage account which is used to store the flow log. */\n storageId: string;\n /** Flag to enable/disable flow logging. */\n enabled: boolean;\n /** Parameters that define the retention policy for flow log. */\n retentionPolicy?: RetentionPolicyParametersOutput;\n /** Parameters that define the flow log format. */\n format?: FlowLogFormatParametersOutput;\n}\n\n/** The HTTP header. */\nexport interface HttpHeaderOutput {\n /** The name in HTTP header. */\n name?: string;\n /** The value in HTTP header. */\n value?: string;\n}\n\n/** Information on the connectivity status. */\nexport interface ConnectivityInformationOutput {\n /** List of hops between the source and the destination. */\n readonly hops?: Array<ConnectivityHopOutput>;\n /** The connection status. */\n readonly connectionStatus?: \"Unknown\" | \"Connected\" | \"Disconnected\" | \"Degraded\";\n /** Average latency in milliseconds. */\n readonly avgLatencyInMs?: number;\n /** Minimum latency in milliseconds. */\n readonly minLatencyInMs?: number;\n /** Maximum latency in milliseconds. */\n readonly maxLatencyInMs?: number;\n /** Total number of probes sent. */\n readonly probesSent?: number;\n /** Number of failed probes. */\n readonly probesFailed?: number;\n}\n\n/** Information about a hop between the source and the destination. */\nexport interface ConnectivityHopOutput {\n /** The type of the hop. */\n readonly type?: string;\n /** The ID of the hop. */\n readonly id?: string;\n /** The IP address of the hop. */\n readonly address?: string;\n /** The ID of the resource corresponding to this hop. */\n readonly resourceId?: string;\n /** List of next hop identifiers. */\n readonly nextHopIds?: Array<string>;\n /** List of previous hop identifiers. */\n readonly previousHopIds?: Array<string>;\n /** List of hop links. */\n readonly links?: Array<HopLinkOutput>;\n /** List of previous hop links. */\n readonly previousLinks?: Array<HopLinkOutput>;\n /** List of issues. */\n readonly issues?: Array<ConnectivityIssueOutput>;\n}\n\n/** Hop link. */\nexport interface HopLinkOutput {\n /** The ID of the next hop. */\n readonly nextHopId?: string;\n /** Link type. */\n readonly linkType?: string;\n /** Hop link properties. */\n properties?: HopLinkPropertiesOutput;\n /** List of issues. */\n readonly issues?: Array<ConnectivityIssueOutput>;\n /** Provides additional context on links. */\n readonly context?: Record<string, string>;\n /** Resource ID. */\n readonly resourceId?: string;\n}\n\n/** Hop link properties. */\nexport interface HopLinkPropertiesOutput {\n /** Minimum roundtrip time in milliseconds. */\n readonly roundTripTimeMin?: number;\n /** Average roundtrip time in milliseconds. */\n readonly roundTripTimeAvg?: number;\n /** Maximum roundtrip time in milliseconds. */\n readonly roundTripTimeMax?: number;\n}\n\n/** Information about an issue encountered in the process of checking for connectivity. */\nexport interface ConnectivityIssueOutput {\n /** The origin of the issue. */\n readonly origin?: \"Local\" | \"Inbound\" | \"Outbound\";\n /** The severity of the issue. */\n readonly severity?: \"Error\" | \"Warning\";\n /** The type of issue. */\n readonly type?:\n | \"Unknown\"\n | \"AgentStopped\"\n | \"GuestFirewall\"\n | \"DnsResolution\"\n | \"SocketBind\"\n | \"NetworkSecurityRule\"\n | \"UserDefinedRoute\"\n | \"PortThrottled\"\n | \"Platform\";\n /** Provides additional context on the issue. */\n readonly context?: Array<Record<string, string>>;\n}\n\n/** Parameters that define a geographic location. */\nexport interface AzureReachabilityReportLocationOutput {\n /** The name of the country. */\n country: string;\n /** The name of the state. */\n state?: string;\n /** The name of the city or town. */\n city?: string;\n}\n\n/** Azure reachability report details. */\nexport interface AzureReachabilityReportOutput {\n /** The aggregation level of Azure reachability report. Can be Country, State or City. */\n aggregationLevel: string;\n /** Parameters that define a geographic location. */\n providerLocation: AzureReachabilityReportLocationOutput;\n /** List of Azure reachability report items. */\n reachabilityReport: Array<AzureReachabilityReportItemOutput>;\n}\n\n/** Azure reachability report details for a given provider location. */\nexport interface AzureReachabilityReportItemOutput {\n /** The Internet service provider. */\n provider?: string;\n /** The Azure region. */\n azureLocation?: string;\n /** List of latency details for each of the time series. */\n latencies?: Array<AzureReachabilityReportLatencyInfoOutput>;\n}\n\n/** Details on latency for a time series. */\nexport interface AzureReachabilityReportLatencyInfoOutput {\n /** The time stamp. */\n timeStamp?: string;\n /** The relative latency score between 1 and 100, higher values indicating a faster connection. */\n score?: number;\n}\n\n/** List of available countries with details. */\nexport interface AvailableProvidersListOutput {\n /** List of available countries. */\n countries: Array<AvailableProvidersListCountryOutput>;\n}\n\n/** Country details. */\nexport interface AvailableProvidersListCountryOutput {\n /** The country name. */\n countryName?: string;\n /** A list of Internet service providers. */\n providers?: Array<string>;\n /** List of available states in the country. */\n states?: Array<AvailableProvidersListStateOutput>;\n}\n\n/** State details. */\nexport interface AvailableProvidersListStateOutput {\n /** The state name. */\n stateName?: string;\n /** A list of Internet service providers. */\n providers?: Array<string>;\n /** List of available cities or towns in the state. */\n cities?: Array<AvailableProvidersListCityOutput>;\n}\n\n/** City or town details. */\nexport interface AvailableProvidersListCityOutput {\n /** The city or town name. */\n cityName?: string;\n /** A list of Internet service providers. */\n providers?: Array<string>;\n}\n\n/** Parameters to compare with network configuration. */\nexport interface NetworkConfigurationDiagnosticProfileOutput {\n /** The direction of the traffic. */\n direction: \"Inbound\" | \"Outbound\";\n /** Protocol to be verified on. Accepted values are '*', TCP, UDP. */\n protocol: string;\n /** Traffic source. Accepted values are '*', IP Address/CIDR, Service Tag. */\n source: string;\n /** Traffic destination. Accepted values are: '*', IP Address/CIDR, Service Tag. */\n destination: string;\n /** Traffic destination port. Accepted values are '*' and a single port in the range (0 - 65535). */\n destinationPort: string;\n}\n\n/** Results of network configuration diagnostic on the target resource. */\nexport interface NetworkConfigurationDiagnosticResponseOutput {\n /** List of network configuration diagnostic results. */\n readonly results?: Array<NetworkConfigurationDiagnosticResultOutput>;\n}\n\n/** Network configuration diagnostic result corresponded to provided traffic query. */\nexport interface NetworkConfigurationDiagnosticResultOutput {\n /** Network configuration diagnostic profile. */\n profile?: NetworkConfigurationDiagnosticProfileOutput;\n /** Network security group result. */\n networkSecurityGroupResult?: NetworkSecurityGroupResultOutput;\n}\n\n/** Network configuration diagnostic result corresponded provided traffic query. */\nexport interface NetworkSecurityGroupResultOutput {\n /** The network traffic is allowed or denied. */\n securityRuleAccessResult?: \"Allow\" | \"Deny\";\n /** List of results network security groups diagnostic. */\n readonly evaluatedNetworkSecurityGroups?: Array<EvaluatedNetworkSecurityGroupOutput>;\n}\n\n/** Results of network security group evaluation. */\nexport interface EvaluatedNetworkSecurityGroupOutput {\n /** Network security group ID. */\n networkSecurityGroupId?: string;\n /** Resource ID of nic or subnet to which network security group is applied. */\n appliedTo?: string;\n /** Matched network security rule. */\n matchedRule?: MatchedRuleOutput;\n /** List of network security rules evaluation results. */\n readonly rulesEvaluationResult?: Array<NetworkSecurityRulesEvaluationResultOutput>;\n}\n\n/** Matched rule. */\nexport interface MatchedRuleOutput {\n /** Name of the matched network security rule. */\n ruleName?: string;\n /** The network traffic is allowed or denied. Possible values are 'Allow' and 'Deny'. */\n action?: string;\n}\n\n/** Network security rules evaluation result. */\nexport interface NetworkSecurityRulesEvaluationResultOutput {\n /** Name of the network security rule. */\n name?: string;\n /** Value indicating whether protocol is matched. */\n protocolMatched?: boolean;\n /** Value indicating whether source is matched. */\n sourceMatched?: boolean;\n /** Value indicating whether source port is matched. */\n sourcePortMatched?: boolean;\n /** Value indicating whether destination is matched. */\n destinationMatched?: boolean;\n /** Value indicating whether destination port is matched. */\n destinationPortMatched?: boolean;\n}\n\n/** Parameters that define the operation to create a connection monitor. */\nexport interface ConnectionMonitorParametersOutput {\n /** Describes the source of connection monitor. */\n source?: ConnectionMonitorSourceOutput;\n /** Describes the destination of connection monitor. */\n destination?: ConnectionMonitorDestinationOutput;\n /** Determines if the connection monitor will start automatically once created. */\n autoStart?: boolean;\n /** Monitoring interval in seconds. */\n monitoringIntervalInSeconds?: number;\n /** List of connection monitor endpoints. */\n endpoints?: Array<ConnectionMonitorEndpointOutput>;\n /** List of connection monitor test configurations. */\n testConfigurations?: Array<ConnectionMonitorTestConfigurationOutput>;\n /** List of connection monitor test groups. */\n testGroups?: Array<ConnectionMonitorTestGroupOutput>;\n /** List of connection monitor outputs. */\n outputs?: Array<ConnectionMonitorOutputOutput>;\n /** Optional notes to be associated with the connection monitor. */\n notes?: string;\n}\n\n/** Describes the source of connection monitor. */\nexport interface ConnectionMonitorSourceOutput {\n /** The ID of the resource used as the source by connection monitor. */\n resourceId: string;\n /** The source port used by connection monitor. */\n port?: number;\n}\n\n/** Describes the destination of connection monitor. */\nexport interface ConnectionMonitorDestinationOutput {\n /** The ID of the resource used as the destination by connection monitor. */\n resourceId?: string;\n /** Address of the connection monitor destination (IP or domain name). */\n address?: string;\n /** The destination port used by connection monitor. */\n port?: number;\n}\n\n/** Describes the connection monitor endpoint. */\nexport interface ConnectionMonitorEndpointOutput {\n /** The name of the connection monitor endpoint. */\n name: string;\n /** The endpoint type. */\n type?:\n | \"AzureVM\"\n | \"AzureVNet\"\n | \"AzureSubnet\"\n | \"ExternalAddress\"\n | \"MMAWorkspaceMachine\"\n | \"MMAWorkspaceNetwork\"\n | \"AzureArcVM\"\n | \"AzureVMSS\";\n /** Resource ID of the connection monitor endpoint. */\n resourceId?: string;\n /** Address of the connection monitor endpoint (IP or domain name). */\n address?: string;\n /** Filter for sub-items within the endpoint. */\n filter?: ConnectionMonitorEndpointFilterOutput;\n /** Endpoint scope. */\n scope?: ConnectionMonitorEndpointScopeOutput;\n /** Test coverage for the endpoint. */\n coverageLevel?: \"Default\" | \"Low\" | \"BelowAverage\" | \"Average\" | \"AboveAverage\" | \"Full\";\n}\n\n/** Describes the connection monitor endpoint filter. */\nexport interface ConnectionMonitorEndpointFilterOutput {\n /** The behavior of the endpoint filter. Currently only 'Include' is supported. */\n type?: \"Include\";\n /** List of items in the filter. */\n items?: Array<ConnectionMonitorEndpointFilterItemOutput>;\n}\n\n/** Describes the connection monitor endpoint filter item. */\nexport interface ConnectionMonitorEndpointFilterItemOutput {\n /** The type of item included in the filter. Currently only 'AgentAddress' is supported. */\n type?: \"AgentAddress\";\n /** The address of the filter item. */\n address?: string;\n}\n\n/** Describes the connection monitor endpoint scope. */\nexport interface ConnectionMonitorEndpointScopeOutput {\n /** List of items which needs to be included to the endpoint scope. */\n include?: Array<ConnectionMonitorEndpointScopeItemOutput>;\n /** List of items which needs to be excluded from the endpoint scope. */\n exclude?: Array<ConnectionMonitorEndpointScopeItemOutput>;\n}\n\n/** Describes the connection monitor endpoint scope item. */\nexport interface ConnectionMonitorEndpointScopeItemOutput {\n /** The address of the endpoint item. Supported types are IPv4/IPv6 subnet mask or IPv4/IPv6 IP address. */\n address?: string;\n}\n\n/** Describes a connection monitor test configuration. */\nexport interface ConnectionMonitorTestConfigurationOutput {\n /** The name of the connection monitor test configuration. */\n name: string;\n /** The frequency of test evaluation, in seconds. */\n testFrequencySec?: number;\n /** The protocol to use in test evaluation. */\n protocol: \"Tcp\" | \"Http\" | \"Icmp\";\n /** The preferred IP version to use in test evaluation. The connection monitor may choose to use a different version depending on other parameters. */\n preferredIPVersion?: \"IPv4\" | \"IPv6\";\n /** The parameters used to perform test evaluation over HTTP. */\n httpConfiguration?: ConnectionMonitorHttpConfigurationOutput;\n /** The parameters used to perform test evaluation over TCP. */\n tcpConfiguration?: ConnectionMonitorTcpConfigurationOutput;\n /** The parameters used to perform test evaluation over ICMP. */\n icmpConfiguration?: ConnectionMonitorIcmpConfigurationOutput;\n /** The threshold for declaring a test successful. */\n successThreshold?: ConnectionMonitorSuccessThresholdOutput;\n}\n\n/** Describes the HTTP configuration. */\nexport interface ConnectionMonitorHttpConfigurationOutput {\n /** The port to connect to. */\n port?: number;\n /** The HTTP method to use. */\n method?: \"Get\" | \"Post\";\n /** The path component of the URI. For instance, \"/dir1/dir2\". */\n path?: string;\n /** The HTTP headers to transmit with the request. */\n requestHeaders?: Array<HttpHeaderOutput>;\n /** HTTP status codes to consider successful. For instance, \"2xx,301-304,418\". */\n validStatusCodeRanges?: Array<string>;\n /** Value indicating whether HTTPS is preferred over HTTP in cases where the choice is not explicit. */\n preferHTTPS?: boolean;\n}\n\n/** Describes the TCP configuration. */\nexport interface ConnectionMonitorTcpConfigurationOutput {\n /** The port to connect to. */\n port?: number;\n /** Value indicating whether path evaluation with trace route should be disabled. */\n disableTraceRoute?: boolean;\n /** Destination port behavior. */\n destinationPortBehavior?: \"None\" | \"ListenIfAvailable\";\n}\n\n/** Describes the ICMP configuration. */\nexport interface ConnectionMonitorIcmpConfigurationOutput {\n /** Value indicating whether path evaluation with trace route should be disabled. */\n disableTraceRoute?: boolean;\n}\n\n/** Describes the threshold for declaring a test successful. */\nexport interface ConnectionMonitorSuccessThresholdOutput {\n /** The maximum percentage of failed checks permitted for a test to evaluate as successful. */\n checksFailedPercent?: number;\n /** The maximum round-trip time in milliseconds permitted for a test to evaluate as successful. */\n roundTripTimeMs?: number;\n}\n\n/** Describes the connection monitor test group. */\nexport interface ConnectionMonitorTestGroupOutput {\n /** The name of the connection monitor test group. */\n name: string;\n /** Value indicating whether test group is disabled. */\n disable?: boolean;\n /** List of test configuration names. */\n testConfigurations: Array<string>;\n /** List of source endpoint names. */\n sources: Array<string>;\n /** List of destination endpoint names. */\n destinations: Array<string>;\n}\n\n/** Describes a connection monitor output destination. */\nexport interface ConnectionMonitorOutputOutput {\n /** Connection monitor output destination type. Currently, only \"Workspace\" is supported. */\n type?: \"Workspace\";\n /** Describes the settings for producing output into a log analytics workspace. */\n workspaceSettings?: ConnectionMonitorWorkspaceSettingsOutput;\n}\n\n/** Describes the settings for producing output into a log analytics workspace. */\nexport interface ConnectionMonitorWorkspaceSettingsOutput {\n /** Log analytics workspace resource ID. */\n workspaceResourceId?: string;\n}\n\n/** Information about the connection monitor. */\nexport interface ConnectionMonitorResultOutput {\n /** Name of the connection monitor. */\n readonly name?: string;\n /** ID of the connection monitor. */\n readonly id?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Connection monitor type. */\n readonly type?: string;\n /** Connection monitor location. */\n location?: string;\n /** Connection monitor tags. */\n tags?: Record<string, string>;\n /** Properties of the connection monitor result. */\n properties?: ConnectionMonitorResultPropertiesOutput;\n}\n\n/** Describes the properties of a connection monitor. */\nexport interface ConnectionMonitorResultPropertiesOutput extends ConnectionMonitorParametersOutput {\n /** The provisioning state of the connection monitor. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The date and time when the connection monitor was started. */\n readonly startTime?: string;\n /** The monitoring status of the connection monitor. */\n readonly monitoringStatus?: string;\n /** Type of connection monitor. */\n readonly connectionMonitorType?: \"MultiEndpoint\" | \"SingleSourceDestination\";\n}\n\n/** List of connection states snapshots. */\nexport interface ConnectionMonitorQueryResultOutput {\n /** Status of connection monitor source. */\n sourceStatus?: \"Unknown\" | \"Active\" | \"Inactive\";\n /** Information about connection states. */\n states?: Array<ConnectionStateSnapshotOutput>;\n}\n\n/** Connection state snapshot. */\nexport interface ConnectionStateSnapshotOutput {\n /** The connection state. */\n connectionState?: \"Reachable\" | \"Unreachable\" | \"Unknown\";\n /** The start time of the connection snapshot. */\n startTime?: string;\n /** The end time of the connection snapshot. */\n endTime?: string;\n /** Connectivity analysis evaluation state. */\n evaluationState?: \"NotStarted\" | \"InProgress\" | \"Completed\";\n /** Average latency in ms. */\n avgLatencyInMs?: number;\n /** Minimum latency in ms. */\n minLatencyInMs?: number;\n /** Maximum latency in ms. */\n maxLatencyInMs?: number;\n /** The number of sent probes. */\n probesSent?: number;\n /** The number of failed probes. */\n probesFailed?: number;\n /** List of hops between the source and the destination. */\n readonly hops?: Array<ConnectivityHopOutput>;\n}\n\n/** List of connection monitors. */\nexport interface ConnectionMonitorListResultOutput {\n /** Information about connection monitors. */\n value?: Array<ConnectionMonitorResultOutput>;\n}\n\n/** List of flow logs. */\nexport interface FlowLogListResultOutput {\n /** Information about flow log resource. */\n value?: Array<FlowLogOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Result of the request to list Network operations. It contains a list of operations and a URL link to get the next set of results. */\nexport interface OperationListResultOutput {\n /** List of Network operations supported by the Network resource provider. */\n value?: Array<OperationOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Network REST API operation definition. */\nexport interface OperationOutput {\n /** Operation name: {provider}/{resource}/{operation}. */\n name?: string;\n /** Display metadata associated with the operation. */\n display?: OperationDisplayOutput;\n /** Origin of the operation. */\n origin?: string;\n /** Operation properties format. */\n properties?: OperationPropertiesFormatOutput;\n}\n\n/** Display metadata associated with the operation. */\nexport interface OperationDisplayOutput {\n /** Service provider: Microsoft Network. */\n provider?: string;\n /** Resource on which the operation is performed. */\n resource?: string;\n /** Type of the operation: get, read, delete, etc. */\n operation?: string;\n /** Description of the operation. */\n description?: string;\n}\n\n/** Description of operation properties format. */\nexport interface OperationPropertiesFormatOutput {\n /** Specification of the service. */\n serviceSpecification?: OperationPropertiesFormatServiceSpecificationOutput;\n}\n\n/** Specification of the service. */\nexport interface OperationPropertiesFormatServiceSpecificationOutput {\n /** Operation service specification. */\n metricSpecifications?: Array<MetricSpecificationOutput>;\n /** Operation log specification. */\n logSpecifications?: Array<LogSpecificationOutput>;\n}\n\n/** Description of metrics specification. */\nexport interface MetricSpecificationOutput {\n /** The name of the metric. */\n name?: string;\n /** The display name of the metric. */\n displayName?: string;\n /** The description of the metric. */\n displayDescription?: string;\n /** Units the metric to be displayed in. */\n unit?: string;\n /** The aggregation type. */\n aggregationType?: string;\n /** List of availability. */\n availabilities?: Array<AvailabilityOutput>;\n /** Whether regional MDM account enabled. */\n enableRegionalMdmAccount?: boolean;\n /** Whether gaps would be filled with zeros. */\n fillGapWithZero?: boolean;\n /** Pattern for the filter of the metric. */\n metricFilterPattern?: string;\n /** List of dimensions. */\n dimensions?: Array<DimensionOutput>;\n /** Whether the metric is internal. */\n isInternal?: boolean;\n /** The source MDM account. */\n sourceMdmAccount?: string;\n /** The source MDM namespace. */\n sourceMdmNamespace?: string;\n /** The resource Id dimension name override. */\n resourceIdDimensionNameOverride?: string;\n}\n\n/** Availability of the metric. */\nexport interface AvailabilityOutput {\n /** The time grain of the availability. */\n timeGrain?: string;\n /** The retention of the availability. */\n retention?: string;\n /** Duration of the availability blob. */\n blobDuration?: string;\n}\n\n/** Dimension of the metric. */\nexport interface DimensionOutput {\n /** The name of the dimension. */\n name?: string;\n /** The display name of the dimension. */\n displayName?: string;\n /** The internal name of the dimension. */\n internalName?: string;\n}\n\n/** Description of logging specification. */\nexport interface LogSpecificationOutput {\n /** The name of the specification. */\n name?: string;\n /** The display name of the specification. */\n displayName?: string;\n /** Duration of the blob. */\n blobDuration?: string;\n}\n\n/** Response for the ListPrivateEndpoints API service call. */\nexport interface PrivateEndpointListResultOutput {\n /** A list of private endpoint resources in a resource group. */\n value?: Array<PrivateEndpointOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** An array of available PrivateEndpoint types. */\nexport interface AvailablePrivateEndpointTypesResultOutput {\n /** An array of available privateEndpoint type. */\n value?: Array<AvailablePrivateEndpointTypeOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The information of an AvailablePrivateEndpointType. */\nexport interface AvailablePrivateEndpointTypeOutput {\n /** The name of the service and resource. */\n name?: string;\n /** A unique identifier of the AvailablePrivateEndpoint Type resource. */\n id?: string;\n /** Resource type. */\n type?: string;\n /** The name of the service and resource. */\n resourceName?: string;\n /** Display name of the resource. */\n displayName?: string;\n}\n\n/** Private dns zone group resource. */\nexport interface PrivateDnsZoneGroupOutput extends SubResourceOutput {\n /** Name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Properties of the private dns zone group. */\n properties?: PrivateDnsZoneGroupPropertiesFormatOutput;\n}\n\n/** Properties of the private dns zone group. */\nexport interface PrivateDnsZoneGroupPropertiesFormatOutput {\n /** The provisioning state of the private dns zone group resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** A collection of private dns zone configurations of the private dns zone group. */\n privateDnsZoneConfigs?: Array<PrivateDnsZoneConfigOutput>;\n}\n\n/** PrivateDnsZoneConfig resource. */\nexport interface PrivateDnsZoneConfigOutput {\n /** Name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** Properties of the private dns zone configuration. */\n properties?: PrivateDnsZonePropertiesFormatOutput;\n}\n\n/** Properties of the private dns zone configuration resource. */\nexport interface PrivateDnsZonePropertiesFormatOutput {\n /** The resource id of the private dns zone. */\n privateDnsZoneId?: string;\n /** A collection of information regarding a recordSet, holding information to identify private resources. */\n readonly recordSets?: Array<RecordSetOutput>;\n}\n\n/** A collective group of information about the record set information. */\nexport interface RecordSetOutput {\n /** Resource record type. */\n recordType?: string;\n /** Recordset name. */\n recordSetName?: string;\n /** Fqdn that resolves to private endpoint ip address. */\n fqdn?: string;\n /** The provisioning state of the recordset. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Recordset time to live. */\n ttl?: number;\n /** The private ip address of the private endpoint. */\n ipAddresses?: Array<string>;\n}\n\n/** Response for the ListPrivateDnsZoneGroups API service call. */\nexport interface PrivateDnsZoneGroupListResultOutput {\n /** A list of private dns zone group resources in a private endpoint. */\n value?: Array<PrivateDnsZoneGroupOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for the ListPrivateLinkService API service call. */\nexport interface PrivateLinkServiceListResultOutput {\n /** A list of PrivateLinkService resources in a resource group. */\n value?: Array<PrivateLinkServiceOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for the ListPrivateEndpointConnection API service call. */\nexport interface PrivateEndpointConnectionListResultOutput {\n /** A list of PrivateEndpointConnection resources for a specific private link service. */\n value?: Array<PrivateEndpointConnectionOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for the CheckPrivateLinkServiceVisibility API service call. */\nexport interface PrivateLinkServiceVisibilityOutput {\n /** Private Link Service Visibility (True/False). */\n visible?: boolean;\n}\n\n/** An array of private link service id that can be linked to a private end point with auto approved. */\nexport interface AutoApprovedPrivateLinkServicesResultOutput {\n /** An array of auto approved private link service. */\n value?: Array<AutoApprovedPrivateLinkServiceOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The information of an AutoApprovedPrivateLinkService. */\nexport interface AutoApprovedPrivateLinkServiceOutput {\n /** The id of the private link service resource. */\n privateLinkService?: string;\n}\n\n/** Response for GetPublicIpAddressDdosProtectionStatusOperation API service call. */\nexport interface PublicIpDdosProtectionStatusResultOutput {\n /** Public IP ARM resource ID */\n publicIpAddressId?: string;\n /** IP Address of the Public IP Resource */\n publicIpAddress?: string;\n /** Value indicating whether the IP address is DDoS workload protected or not. */\n isWorkloadProtected?: \"False\" | \"True\";\n /** DDoS protection plan Resource Id of a if IP address is protected through a plan. */\n ddosProtectionPlanId?: string;\n}\n\n/** Public IP prefix resource. */\nexport interface PublicIPPrefixOutput extends ResourceOutput {\n /** The extended location of the public ip address. */\n extendedLocation?: ExtendedLocationOutput;\n /** The public IP prefix SKU. */\n sku?: PublicIPPrefixSkuOutput;\n /** Public IP prefix properties. */\n properties?: PublicIPPrefixPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** A list of availability zones denoting the IP allocated for the resource needs to come from. */\n zones?: Array<string>;\n}\n\n/** SKU of a public IP prefix. */\nexport interface PublicIPPrefixSkuOutput {\n /** Name of a public IP prefix SKU. */\n name?: \"Standard\";\n /** Tier of a public IP prefix SKU. */\n tier?: \"Regional\" | \"Global\";\n}\n\n/** Public IP prefix properties. */\nexport interface PublicIPPrefixPropertiesFormatOutput {\n /** The public IP address version. */\n publicIPAddressVersion?: \"IPv4\" | \"IPv6\";\n /** The list of tags associated with the public IP prefix. */\n ipTags?: Array<IpTagOutput>;\n /** The Length of the Public IP Prefix. */\n prefixLength?: number;\n /** The allocated Prefix. */\n readonly ipPrefix?: string;\n /** The list of all referenced PublicIPAddresses. */\n readonly publicIPAddresses?: Array<ReferencedPublicIpAddressOutput>;\n /** The reference to load balancer frontend IP configuration associated with the public IP prefix. */\n readonly loadBalancerFrontendIpConfiguration?: SubResourceOutput;\n /** The customIpPrefix that this prefix is associated with. */\n customIPPrefix?: SubResourceOutput;\n /** The resource GUID property of the public IP prefix resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the public IP prefix resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** NatGateway of Public IP Prefix. */\n natGateway?: NatGatewayOutput;\n}\n\n/** Reference to a public IP address. */\nexport interface ReferencedPublicIpAddressOutput {\n /** The PublicIPAddress Reference. */\n id?: string;\n}\n\n/** Response for ListPublicIpPrefixes API service call. */\nexport interface PublicIPPrefixListResultOutput {\n /** A list of public IP prefixes that exists in a resource group. */\n value?: Array<PublicIPPrefixOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Route Filter Resource. */\nexport interface RouteFilterOutput extends ResourceOutput {\n /** Properties of the route filter. */\n properties?: RouteFilterPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Route Filter Resource. */\nexport interface RouteFilterPropertiesFormatOutput {\n /** Collection of RouteFilterRules contained within a route filter. */\n rules?: Array<RouteFilterRuleOutput>;\n /** A collection of references to express route circuit peerings. */\n readonly peerings?: Array<ExpressRouteCircuitPeeringOutput>;\n /** A collection of references to express route circuit ipv6 peerings. */\n readonly ipv6Peerings?: Array<ExpressRouteCircuitPeeringOutput>;\n /** The provisioning state of the route filter resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Route Filter Rule Resource. */\nexport interface RouteFilterRuleOutput extends SubResourceOutput {\n /** Properties of the route filter rule. */\n properties?: RouteFilterRulePropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** Resource location. */\n location?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Route Filter Rule Resource. */\nexport interface RouteFilterRulePropertiesFormatOutput {\n /** The access type of the rule. */\n access: \"Allow\" | \"Deny\";\n /** The rule type of the rule. */\n routeFilterRuleType: \"Community\";\n /** The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']. */\n communities: Array<string>;\n /** The provisioning state of the route filter rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for the ListRouteFilters API service call. */\nexport interface RouteFilterListResultOutput {\n /** A list of route filters in a resource group. */\n value?: Array<RouteFilterOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for the ListRouteFilterRules API service call. */\nexport interface RouteFilterRuleListResultOutput {\n /** A list of RouteFilterRules in a resource group. */\n value?: Array<RouteFilterRuleOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for the ListRouteTable API service call. */\nexport interface RouteTableListResultOutput {\n /** A list of route tables in a resource group. */\n value?: Array<RouteTableOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for the ListRoute API service call. */\nexport interface RouteListResultOutput {\n /** A list of routes in a resource group. */\n value?: Array<RouteOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Security Partner Provider resource. */\nexport interface SecurityPartnerProviderOutput extends ResourceOutput {\n /** Properties of the Security Partner Provider. */\n properties?: SecurityPartnerProviderPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the Security Partner Provider. */\nexport interface SecurityPartnerProviderPropertiesFormatOutput {\n /** The provisioning state of the Security Partner Provider resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The security provider name. */\n securityProviderName?: \"ZScaler\" | \"IBoss\" | \"Checkpoint\";\n /** The connection status with the Security Partner Provider. */\n readonly connectionStatus?: \"Unknown\" | \"PartiallyConnected\" | \"Connected\" | \"NotConnected\";\n /** The virtualHub to which the Security Partner Provider belongs. */\n virtualHub?: SubResourceOutput;\n}\n\n/** Response for ListSecurityPartnerProviders API service call. */\nexport interface SecurityPartnerProviderListResultOutput {\n /** List of Security Partner Providers in a resource group. */\n value?: Array<SecurityPartnerProviderOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for the ListServiceCommunity API service call. */\nexport interface BgpServiceCommunityListResultOutput {\n /** A list of service community resources. */\n value?: Array<BgpServiceCommunityOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Service Community Properties. */\nexport interface BgpServiceCommunityOutput extends ResourceOutput {\n /** Properties of the BGP service community. */\n properties?: BgpServiceCommunityPropertiesFormatOutput;\n}\n\n/** Properties of Service Community. */\nexport interface BgpServiceCommunityPropertiesFormatOutput {\n /** The name of the bgp community. e.g. Skype. */\n serviceName?: string;\n /** A list of bgp communities. */\n bgpCommunities?: Array<BGPCommunityOutput>;\n}\n\n/** Contains bgp community information offered in Service Community resources. */\nexport interface BGPCommunityOutput {\n /** The region which the service support. e.g. For O365, region is Global. */\n serviceSupportedRegion?: string;\n /** The name of the bgp community. e.g. Skype. */\n communityName?: string;\n /** The value of the bgp community. For more information: https://docs.microsoft.com/en-us/azure/expressroute/expressroute-routing. */\n communityValue?: string;\n /** The prefixes that the bgp community contains. */\n communityPrefixes?: Array<string>;\n /** Customer is authorized to use bgp community or not. */\n isAuthorizedToUse?: boolean;\n /** The service group of the bgp community contains. */\n serviceGroup?: string;\n}\n\n/** Response for ListServiceEndpointPolicies API service call. */\nexport interface ServiceEndpointPolicyListResultOutput {\n /** A list of ServiceEndpointPolicy resources. */\n value?: Array<ServiceEndpointPolicyOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListServiceEndpointPolicyDefinition API service call. Retrieves all service endpoint policy definition that belongs to a service endpoint policy. */\nexport interface ServiceEndpointPolicyDefinitionListResultOutput {\n /** The service endpoint policy definition in a service endpoint policy. */\n value?: Array<ServiceEndpointPolicyDefinitionOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for the ListServiceTags API service call. */\nexport interface ServiceTagsListResultOutput {\n /** The name of the cloud. */\n readonly name?: string;\n /** The ID of the cloud. */\n readonly id?: string;\n /** The azure resource type. */\n readonly type?: string;\n /** The iteration number. */\n readonly changeNumber?: string;\n /** The name of the cloud. */\n readonly cloud?: string;\n /** The list of service tag information resources. */\n readonly values?: Array<ServiceTagInformationOutput>;\n /** The URL to get next page of service tag information resources. */\n readonly nextLink?: string;\n}\n\n/** The service tag information. */\nexport interface ServiceTagInformationOutput {\n /** Properties of the service tag information. */\n readonly properties?: ServiceTagInformationPropertiesFormatOutput;\n /** The name of service tag. */\n readonly name?: string;\n /** The ID of service tag. */\n readonly id?: string;\n /** The iteration number of service tag object for region. */\n readonly serviceTagChangeNumber?: string;\n}\n\n/** Properties of the service tag information. */\nexport interface ServiceTagInformationPropertiesFormatOutput {\n /** The iteration number of service tag. */\n readonly changeNumber?: string;\n /** The region of service tag. */\n readonly region?: string;\n /** The name of system service. */\n readonly systemService?: string;\n /** The list of IP address prefixes. */\n readonly addressPrefixes?: Array<string>;\n /** The state of the service tag. */\n readonly state?: string;\n}\n\n/** Response for Get ServiceTagInformation API service call. Retrieves the list of service tag information resources. */\nexport interface ServiceTagInformationListResultOutput {\n /** The list of service tag information resources. */\n value?: Array<ServiceTagInformationOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The list usages operation response. */\nexport interface UsagesListResultOutput {\n /** The list network resource usages. */\n value?: Array<UsageOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** The network resource usage. */\nexport interface UsageOutput {\n /** Resource identifier. */\n readonly id?: string;\n /** An enum describing the unit of measurement. */\n unit: \"Count\";\n /** The current value of the usage. */\n currentValue: number;\n /** The limit of usage. */\n limit: number;\n /** The name of the type of usage. */\n name: UsageNameOutput;\n}\n\n/** The usage names. */\nexport interface UsageNameOutput {\n /** A string describing the resource name. */\n value?: string;\n /** A localized string describing the resource name. */\n localizedValue?: string;\n}\n\n/** Virtual Network resource. */\nexport interface VirtualNetworkOutput extends ResourceOutput {\n /** The extended location of the virtual network. */\n extendedLocation?: ExtendedLocationOutput;\n /** Properties of the virtual network. */\n properties?: VirtualNetworkPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the virtual network. */\nexport interface VirtualNetworkPropertiesFormatOutput {\n /** The AddressSpace that contains an array of IP address ranges that can be used by subnets. */\n addressSpace?: AddressSpaceOutput;\n /** The dhcpOptions that contains an array of DNS servers available to VMs deployed in the virtual network. */\n dhcpOptions?: DhcpOptionsOutput;\n /** The FlowTimeout value (in minutes) for the Virtual Network */\n flowTimeoutInMinutes?: number;\n /** A list of subnets in a Virtual Network. */\n subnets?: Array<SubnetOutput>;\n /** A list of peerings in a Virtual Network. */\n virtualNetworkPeerings?: Array<VirtualNetworkPeeringOutput>;\n /** The resourceGuid property of the Virtual Network resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the virtual network resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Indicates if DDoS protection is enabled for all the protected resources in the virtual network. It requires a DDoS protection plan associated with the resource. */\n enableDdosProtection?: boolean;\n /** Indicates if VM protection is enabled for all the subnets in the virtual network. */\n enableVmProtection?: boolean;\n /** The DDoS protection plan associated with the virtual network. */\n ddosProtectionPlan?: SubResourceOutput;\n /** Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET. */\n bgpCommunities?: VirtualNetworkBgpCommunitiesOutput;\n /** Indicates if encryption is enabled on virtual network and if VM without encryption is allowed in encrypted VNet. */\n encryption?: VirtualNetworkEncryptionOutput;\n /** Array of IpAllocation which reference this VNET. */\n ipAllocations?: Array<SubResourceOutput>;\n}\n\n/** AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network. */\nexport interface AddressSpaceOutput {\n /** A list of address blocks reserved for this virtual network in CIDR notation. */\n addressPrefixes?: Array<string>;\n}\n\n/** DhcpOptions contains an array of DNS servers available to VMs deployed in the virtual network. Standard DHCP option for a subnet overrides VNET DHCP options. */\nexport interface DhcpOptionsOutput {\n /** The list of DNS servers IP addresses. */\n dnsServers?: Array<string>;\n}\n\n/** Peerings in a virtual network resource. */\nexport interface VirtualNetworkPeeringOutput extends SubResourceOutput {\n /** Properties of the virtual network peering. */\n properties?: VirtualNetworkPeeringPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n type?: string;\n}\n\n/** Properties of the virtual network peering. */\nexport interface VirtualNetworkPeeringPropertiesFormatOutput {\n /** Whether the VMs in the local virtual network space would be able to access the VMs in remote virtual network space. */\n allowVirtualNetworkAccess?: boolean;\n /** Whether the forwarded traffic from the VMs in the local virtual network will be allowed/disallowed in remote virtual network. */\n allowForwardedTraffic?: boolean;\n /** If gateway links can be used in remote virtual networking to link to this virtual network. */\n allowGatewayTransit?: boolean;\n /** If remote gateways can be used on this virtual network. If the flag is set to true, and allowGatewayTransit on remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway. */\n useRemoteGateways?: boolean;\n /** The reference to the remote virtual network. The remote virtual network can be in the same or different region (preview). See here to register for the preview and learn more (https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-create-peering). */\n remoteVirtualNetwork?: SubResourceOutput;\n /** The reference to the address space peered with the remote virtual network. */\n remoteAddressSpace?: AddressSpaceOutput;\n /** The reference to the current address space of the remote virtual network. */\n remoteVirtualNetworkAddressSpace?: AddressSpaceOutput;\n /** The reference to the remote virtual network's Bgp Communities. */\n remoteBgpCommunities?: VirtualNetworkBgpCommunitiesOutput;\n /** The reference to the remote virtual network's encryption */\n readonly remoteVirtualNetworkEncryption?: VirtualNetworkEncryptionOutput;\n /** The status of the virtual network peering. */\n peeringState?: \"Initiated\" | \"Connected\" | \"Disconnected\";\n /** The peering sync status of the virtual network peering. */\n peeringSyncLevel?:\n | \"FullyInSync\"\n | \"RemoteNotInSync\"\n | \"LocalNotInSync\"\n | \"LocalAndRemoteNotInSync\";\n /** The provisioning state of the virtual network peering resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** If we need to verify the provisioning state of the remote gateway. */\n doNotVerifyRemoteGateways?: boolean;\n /** The resourceGuid property of the Virtual Network peering resource. */\n readonly resourceGuid?: string;\n}\n\n/** Bgp Communities sent over ExpressRoute with each route corresponding to a prefix in this VNET. */\nexport interface VirtualNetworkBgpCommunitiesOutput {\n /** The BGP community associated with the virtual network. */\n virtualNetworkCommunity: string;\n /** The BGP community associated with the region of the virtual network. */\n readonly regionalCommunity?: string;\n}\n\n/** Indicates if encryption is enabled on virtual network and if VM without encryption is allowed in encrypted VNet. */\nexport interface VirtualNetworkEncryptionOutput {\n /** Indicates if encryption is enabled on the virtual network. */\n enabled: boolean;\n /** If the encrypted VNet allows VM that does not support encryption */\n enforcement?: \"DropUnencrypted\" | \"AllowUnencrypted\";\n}\n\n/** Response for the ListVirtualNetworks API service call. */\nexport interface VirtualNetworkListResultOutput {\n /** A list of VirtualNetwork resources in a resource group. */\n value?: Array<VirtualNetworkOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Network Intent Policy resource. */\nexport interface NetworkIntentPolicyOutput extends ResourceOutput {\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Response for ResourceNavigationLinks_List operation. */\nexport interface ResourceNavigationLinksListResultOutput {\n /** The resource navigation links in a subnet. */\n value?: Array<ResourceNavigationLinkOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ServiceAssociationLinks_List operation. */\nexport interface ServiceAssociationLinksListResultOutput {\n /** The service association links in a subnet. */\n value?: Array<ServiceAssociationLinkOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for ListSubnets API service callRetrieves all subnet that belongs to a virtual network. */\nexport interface SubnetListResultOutput {\n /** The subnets in a virtual network. */\n value?: Array<SubnetOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for ListSubnets API service call. Retrieves all subnets that belong to a virtual network. */\nexport interface VirtualNetworkPeeringListResultOutput {\n /** The peerings in a virtual network. */\n value?: Array<VirtualNetworkPeeringOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Response for CheckIPAddressAvailability API service call. */\nexport interface IPAddressAvailabilityResultOutput {\n /** Private IP address availability. */\n available?: boolean;\n /** Contains other available private IP addresses if the asked for address is taken. */\n availableIPAddresses?: Array<string>;\n /** Private IP address platform reserved. */\n isPlatformReserved?: boolean;\n}\n\n/** Response for the virtual networks GetUsage API service call. */\nexport interface VirtualNetworkListUsageResultOutput {\n /** VirtualNetwork usage stats. */\n readonly value?: Array<VirtualNetworkUsageOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Usage details for subnet. */\nexport interface VirtualNetworkUsageOutput {\n /** Indicates number of IPs used from the Subnet. */\n readonly currentValue?: number;\n /** Subnet identifier. */\n readonly id?: string;\n /** Indicates the size of the subnet. */\n readonly limit?: number;\n /** The name containing common and localized value for usage. */\n readonly name?: VirtualNetworkUsageNameOutput;\n /** Usage units. Returns 'Count'. */\n readonly unit?: string;\n}\n\n/** Usage strings container. */\nexport interface VirtualNetworkUsageNameOutput {\n /** Localized subnet size and usage string. */\n readonly localizedValue?: string;\n /** Subnet size and usage string. */\n readonly value?: string;\n}\n\n/** Response for GetVirtualNetworkDdosProtectionStatusOperation. */\nexport interface VirtualNetworkDdosProtectionStatusResultOutput {\n /** The Ddos Protection Status Result for each public ip under a virtual network. */\n value?: Array<PublicIpDdosProtectionStatusResultOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** A common class for general resource information. */\nexport interface VirtualNetworkGatewayOutput extends ResourceOutput {\n /** Properties of the virtual network gateway. */\n properties: VirtualNetworkGatewayPropertiesFormatOutput;\n /** The extended location of type local virtual network gateway. */\n extendedLocation?: ExtendedLocationOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** VirtualNetworkGateway properties. */\nexport interface VirtualNetworkGatewayPropertiesFormatOutput {\n /** IP configurations for virtual network gateway. */\n ipConfigurations?: Array<VirtualNetworkGatewayIPConfigurationOutput>;\n /** The type of this virtual network gateway. */\n gatewayType?: \"Vpn\" | \"ExpressRoute\" | \"LocalGateway\";\n /** The type of this virtual network gateway. */\n vpnType?: \"PolicyBased\" | \"RouteBased\";\n /** The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN. */\n vpnGatewayGeneration?: \"None\" | \"Generation1\" | \"Generation2\";\n /** Whether BGP is enabled for this virtual network gateway or not. */\n enableBgp?: boolean;\n /** Whether private IP needs to be enabled on this gateway for connections or not. */\n enablePrivateIpAddress?: boolean;\n /** ActiveActive flag. */\n activeActive?: boolean;\n /** disableIPSecReplayProtection flag. */\n disableIPSecReplayProtection?: boolean;\n /** The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting. */\n gatewayDefaultSite?: SubResourceOutput;\n /** The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway. */\n sku?: VirtualNetworkGatewaySkuOutput;\n /** The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations. */\n vpnClientConfiguration?: VpnClientConfigurationOutput;\n /** The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway. */\n virtualNetworkGatewayPolicyGroups?: Array<VirtualNetworkGatewayPolicyGroupOutput>;\n /** Virtual network gateway's BGP speaker settings. */\n bgpSettings?: BgpSettingsOutput;\n /** The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient. */\n customRoutes?: AddressSpaceOutput;\n /** The resource GUID property of the virtual network gateway resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the virtual network gateway resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Whether dns forwarding is enabled or not. */\n enableDnsForwarding?: boolean;\n /** The IP address allocated by the gateway to which dns requests can be sent. */\n readonly inboundDnsForwardingEndpoint?: string;\n /** Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet. */\n vNetExtendedLocationResourceId?: string;\n /** NatRules for virtual network gateway. */\n natRules?: Array<VirtualNetworkGatewayNatRuleOutput>;\n /** EnableBgpRouteTranslationForNat flag. */\n enableBgpRouteTranslationForNat?: boolean;\n}\n\n/** IP configuration for virtual network gateway. */\nexport interface VirtualNetworkGatewayIPConfigurationOutput extends SubResourceOutput {\n /** Properties of the virtual network gateway ip configuration. */\n properties?: VirtualNetworkGatewayIPConfigurationPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of VirtualNetworkGatewayIPConfiguration. */\nexport interface VirtualNetworkGatewayIPConfigurationPropertiesFormatOutput {\n /** The private IP address allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** The reference to the subnet resource. */\n subnet?: SubResourceOutput;\n /** The reference to the public IP resource. */\n publicIPAddress?: SubResourceOutput;\n /** Private IP Address for this gateway. */\n readonly privateIPAddress?: string;\n /** The provisioning state of the virtual network gateway IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** VirtualNetworkGatewaySku details. */\nexport interface VirtualNetworkGatewaySkuOutput {\n /** Gateway SKU name. */\n name?:\n | \"Basic\"\n | \"HighPerformance\"\n | \"Standard\"\n | \"UltraPerformance\"\n | \"VpnGw1\"\n | \"VpnGw2\"\n | \"VpnGw3\"\n | \"VpnGw4\"\n | \"VpnGw5\"\n | \"VpnGw1AZ\"\n | \"VpnGw2AZ\"\n | \"VpnGw3AZ\"\n | \"VpnGw4AZ\"\n | \"VpnGw5AZ\"\n | \"ErGw1AZ\"\n | \"ErGw2AZ\"\n | \"ErGw3AZ\";\n /** Gateway SKU tier. */\n tier?:\n | \"Basic\"\n | \"HighPerformance\"\n | \"Standard\"\n | \"UltraPerformance\"\n | \"VpnGw1\"\n | \"VpnGw2\"\n | \"VpnGw3\"\n | \"VpnGw4\"\n | \"VpnGw5\"\n | \"VpnGw1AZ\"\n | \"VpnGw2AZ\"\n | \"VpnGw3AZ\"\n | \"VpnGw4AZ\"\n | \"VpnGw5AZ\"\n | \"ErGw1AZ\"\n | \"ErGw2AZ\"\n | \"ErGw3AZ\";\n /** The capacity. */\n readonly capacity?: number;\n}\n\n/** VpnClientConfiguration for P2S client. */\nexport interface VpnClientConfigurationOutput {\n /** The reference to the address space resource which represents Address space for P2S VpnClient. */\n vpnClientAddressPool?: AddressSpaceOutput;\n /** VpnClientRootCertificate for virtual network gateway. */\n vpnClientRootCertificates?: Array<VpnClientRootCertificateOutput>;\n /** VpnClientRevokedCertificate for Virtual network gateway. */\n vpnClientRevokedCertificates?: Array<VpnClientRevokedCertificateOutput>;\n /** VpnClientProtocols for Virtual network gateway. */\n vpnClientProtocols?: Array<\"IkeV2\" | \"SSTP\" | \"OpenVPN\">;\n /** VPN authentication types for the virtual network gateway.. */\n vpnAuthenticationTypes?: Array<\"Certificate\" | \"Radius\" | \"AAD\">;\n /** VpnClientIpsecPolicies for virtual network gateway P2S client. */\n vpnClientIpsecPolicies?: Array<IpsecPolicyOutput>;\n /** The radius server address property of the VirtualNetworkGateway resource for vpn client connection. */\n radiusServerAddress?: string;\n /** The radius secret property of the VirtualNetworkGateway resource for vpn client connection. */\n radiusServerSecret?: string;\n /** The radiusServers property for multiple radius server configuration. */\n radiusServers?: Array<RadiusServerOutput>;\n /** The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. */\n aadTenant?: string;\n /** The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. */\n aadAudience?: string;\n /** The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication. */\n aadIssuer?: string;\n /** per ip address pool connection policy for virtual network gateway P2S client. */\n vngClientConnectionConfigurations?: Array<VngClientConnectionConfigurationOutput>;\n}\n\n/** VPN client root certificate of virtual network gateway. */\nexport interface VpnClientRootCertificateOutput extends SubResourceOutput {\n /** Properties of the vpn client root certificate. */\n properties: VpnClientRootCertificatePropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of SSL certificates of application gateway. */\nexport interface VpnClientRootCertificatePropertiesFormatOutput {\n /** The certificate public data. */\n publicCertData: string;\n /** The provisioning state of the VPN client root certificate resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** VPN client revoked certificate of virtual network gateway. */\nexport interface VpnClientRevokedCertificateOutput extends SubResourceOutput {\n /** Properties of the vpn client revoked certificate. */\n properties?: VpnClientRevokedCertificatePropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of the revoked VPN client certificate of virtual network gateway. */\nexport interface VpnClientRevokedCertificatePropertiesFormatOutput {\n /** The revoked VPN client certificate thumbprint. */\n thumbprint?: string;\n /** The provisioning state of the VPN client revoked certificate resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** An IPSec Policy configuration for a virtual network gateway connection. */\nexport interface IpsecPolicyOutput {\n /** The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel. */\n saLifeTimeSeconds: number;\n /** The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel. */\n saDataSizeKilobytes: number;\n /** The IPSec encryption algorithm (IKE phase 1). */\n ipsecEncryption:\n | \"None\"\n | \"DES\"\n | \"DES3\"\n | \"AES128\"\n | \"AES192\"\n | \"AES256\"\n | \"GCMAES128\"\n | \"GCMAES192\"\n | \"GCMAES256\";\n /** The IPSec integrity algorithm (IKE phase 1). */\n ipsecIntegrity: \"MD5\" | \"SHA1\" | \"SHA256\" | \"GCMAES128\" | \"GCMAES192\" | \"GCMAES256\";\n /** The IKE encryption algorithm (IKE phase 2). */\n ikeEncryption: \"DES\" | \"DES3\" | \"AES128\" | \"AES192\" | \"AES256\" | \"GCMAES256\" | \"GCMAES128\";\n /** The IKE integrity algorithm (IKE phase 2). */\n ikeIntegrity: \"MD5\" | \"SHA1\" | \"SHA256\" | \"SHA384\" | \"GCMAES256\" | \"GCMAES128\";\n /** The DH Group used in IKE Phase 1 for initial SA. */\n dhGroup:\n | \"None\"\n | \"DHGroup1\"\n | \"DHGroup2\"\n | \"DHGroup14\"\n | \"DHGroup2048\"\n | \"ECP256\"\n | \"ECP384\"\n | \"DHGroup24\";\n /** The Pfs Group used in IKE Phase 2 for new child SA. */\n pfsGroup:\n | \"None\"\n | \"PFS1\"\n | \"PFS2\"\n | \"PFS2048\"\n | \"ECP256\"\n | \"ECP384\"\n | \"PFS24\"\n | \"PFS14\"\n | \"PFSMM\";\n}\n\n/** Radius Server Settings. */\nexport interface RadiusServerOutput {\n /** The address of this radius server. */\n radiusServerAddress: string;\n /** The initial score assigned to this radius server. */\n radiusServerScore?: number;\n /** The secret used for this radius server. */\n radiusServerSecret?: string;\n}\n\n/** A vpn client connection configuration for client connection configuration. */\nexport interface VngClientConnectionConfigurationOutput extends SubResourceOutput {\n /** Properties of the vpn client root certificate. */\n properties?: VngClientConnectionConfigurationPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of VngClientConnectionConfiguration. */\nexport interface VngClientConnectionConfigurationPropertiesOutput {\n /** The reference to the address space resource which represents Address space for P2S VpnClient. */\n vpnClientAddressPool: AddressSpaceOutput;\n /** List of references to virtualNetworkGatewayPolicyGroups */\n virtualNetworkGatewayPolicyGroups: Array<SubResourceOutput>;\n /** The provisioning state of the VngClientConnectionConfiguration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Parameters for VirtualNetworkGatewayPolicyGroup. */\nexport interface VirtualNetworkGatewayPolicyGroupOutput extends SubResourceOutput {\n /** Properties of tVirtualNetworkGatewayPolicyGroup. */\n properties?: VirtualNetworkGatewayPolicyGroupPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of VirtualNetworkGatewayPolicyGroup. */\nexport interface VirtualNetworkGatewayPolicyGroupPropertiesOutput {\n /** Shows if this is a Default VirtualNetworkGatewayPolicyGroup or not. */\n isDefault: boolean;\n /** Priority for VirtualNetworkGatewayPolicyGroup. */\n priority: number;\n /** Multiple PolicyMembers for VirtualNetworkGatewayPolicyGroup. */\n policyMembers: Array<VirtualNetworkGatewayPolicyGroupMemberOutput>;\n /** List of references to vngClientConnectionConfigurations. */\n readonly vngClientConnectionConfigurations?: Array<SubResourceOutput>;\n /** The provisioning state of the VirtualNetworkGatewayPolicyGroup resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Vpn Client Connection configuration PolicyGroup member */\nexport interface VirtualNetworkGatewayPolicyGroupMemberOutput {\n /** Name of the VirtualNetworkGatewayPolicyGroupMember. */\n name?: string;\n /** The Vpn Policy member attribute type. */\n attributeType?: \"CertificateGroupId\" | \"AADGroupId\" | \"RadiusAzureGroupId\";\n /** The value of Attribute used for this VirtualNetworkGatewayPolicyGroupMember. */\n attributeValue?: string;\n}\n\n/** BGP settings details. */\nexport interface BgpSettingsOutput {\n /** The BGP speaker's ASN. */\n asn?: number;\n /** The BGP peering address and BGP identifier of this BGP speaker. */\n bgpPeeringAddress?: string;\n /** The weight added to routes learned from this BGP speaker. */\n peerWeight?: number;\n /** BGP peering address with IP configuration ID for virtual network gateway. */\n bgpPeeringAddresses?: Array<IPConfigurationBgpPeeringAddressOutput>;\n}\n\n/** Properties of IPConfigurationBgpPeeringAddress. */\nexport interface IPConfigurationBgpPeeringAddressOutput {\n /** The ID of IP configuration which belongs to gateway. */\n ipconfigurationId?: string;\n /** The list of default BGP peering addresses which belong to IP configuration. */\n readonly defaultBgpIpAddresses?: Array<string>;\n /** The list of custom BGP peering addresses which belong to IP configuration. */\n customBgpIpAddresses?: Array<string>;\n /** The list of tunnel public IP addresses which belong to IP configuration. */\n readonly tunnelIpAddresses?: Array<string>;\n}\n\n/** VirtualNetworkGatewayNatRule Resource. */\nexport interface VirtualNetworkGatewayNatRuleOutput extends SubResourceOutput {\n /** Properties of the Virtual Network Gateway NAT rule. */\n properties?: VirtualNetworkGatewayNatRulePropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Parameters for VirtualNetworkGatewayNatRule. */\nexport interface VirtualNetworkGatewayNatRulePropertiesOutput {\n /** The provisioning state of the NAT Rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The type of NAT rule for VPN NAT. */\n type?: \"Static\" | \"Dynamic\";\n /** The Source NAT direction of a VPN NAT. */\n mode?: \"EgressSnat\" | \"IngressSnat\";\n /** The private IP address internal mapping for NAT. */\n internalMappings?: Array<VpnNatRuleMappingOutput>;\n /** The private IP address external mapping for NAT. */\n externalMappings?: Array<VpnNatRuleMappingOutput>;\n /** The IP Configuration ID this NAT rule applies to. */\n ipConfigurationId?: string;\n}\n\n/** Vpn NatRule mapping. */\nexport interface VpnNatRuleMappingOutput {\n /** Address space for Vpn NatRule mapping. */\n addressSpace?: string;\n /** Port range for Vpn NatRule mapping. */\n portRange?: string;\n}\n\n/** Response for the ListVirtualNetworkGateways API service call. */\nexport interface VirtualNetworkGatewayListResultOutput {\n /** A list of VirtualNetworkGateway resources that exists in a resource group. */\n value?: Array<VirtualNetworkGatewayOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** Response for the VirtualNetworkGatewayListConnections API service call. */\nexport interface VirtualNetworkGatewayListConnectionsResultOutput {\n /** A list of VirtualNetworkGatewayConnection resources that exists in a resource group. */\n value?: Array<VirtualNetworkGatewayConnectionListEntityOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** A common class for general resource information. */\nexport interface VirtualNetworkGatewayConnectionListEntityOutput extends ResourceOutput {\n /** Properties of the virtual network gateway connection. */\n properties: VirtualNetworkGatewayConnectionListEntityPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** VirtualNetworkGatewayConnection properties. */\nexport interface VirtualNetworkGatewayConnectionListEntityPropertiesFormatOutput {\n /** The authorizationKey. */\n authorizationKey?: string;\n /** The reference to virtual network gateway resource. */\n virtualNetworkGateway1: VirtualNetworkConnectionGatewayReferenceOutput;\n /** The reference to virtual network gateway resource. */\n virtualNetworkGateway2?: VirtualNetworkConnectionGatewayReferenceOutput;\n /** The reference to local network gateway resource. */\n localNetworkGateway2?: VirtualNetworkConnectionGatewayReferenceOutput;\n /** Gateway connection type. */\n connectionType: \"IPsec\" | \"Vnet2Vnet\" | \"ExpressRoute\" | \"VPNClient\";\n /** Connection protocol used for this connection. */\n connectionProtocol?: \"IKEv2\" | \"IKEv1\";\n /** The routing weight. */\n routingWeight?: number;\n /** The connection mode for this connection. */\n connectionMode?: \"Default\" | \"ResponderOnly\" | \"InitiatorOnly\";\n /** The IPSec shared key. */\n sharedKey?: string;\n /** Virtual Network Gateway connection status. */\n readonly connectionStatus?: \"Unknown\" | \"Connecting\" | \"Connected\" | \"NotConnected\";\n /** Collection of all tunnels' connection health status. */\n readonly tunnelConnectionStatus?: Array<TunnelConnectionHealthOutput>;\n /** The egress bytes transferred in this connection. */\n readonly egressBytesTransferred?: number;\n /** The ingress bytes transferred in this connection. */\n readonly ingressBytesTransferred?: number;\n /** The reference to peerings resource. */\n peer?: SubResourceOutput;\n /** EnableBgp flag. */\n enableBgp?: boolean;\n /** GatewayCustomBgpIpAddresses to be used for virtual network gateway Connection. */\n gatewayCustomBgpIpAddresses?: Array<GatewayCustomBgpIpAddressIpConfigurationOutput>;\n /** Enable policy-based traffic selectors. */\n usePolicyBasedTrafficSelectors?: boolean;\n /** The IPSec Policies to be considered by this connection. */\n ipsecPolicies?: Array<IpsecPolicyOutput>;\n /** The Traffic Selector Policies to be considered by this connection. */\n trafficSelectorPolicies?: Array<TrafficSelectorPolicyOutput>;\n /** The resource GUID property of the virtual network gateway connection resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the virtual network gateway connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Bypass ExpressRoute Gateway for data forwarding. */\n expressRouteGatewayBypass?: boolean;\n /** Bypass the ExpressRoute gateway when accessing private-links. ExpressRoute FastPath (expressRouteGatewayBypass) must be enabled. */\n enablePrivateLinkFastPath?: boolean;\n}\n\n/** A reference to VirtualNetworkGateway or LocalNetworkGateway resource. */\nexport interface VirtualNetworkConnectionGatewayReferenceOutput {\n /** The ID of VirtualNetworkGateway or LocalNetworkGateway resource. */\n id: string;\n}\n\n/** VirtualNetworkGatewayConnection properties. */\nexport interface TunnelConnectionHealthOutput {\n /** Tunnel name. */\n readonly tunnel?: string;\n /** Virtual Network Gateway connection status. */\n readonly connectionStatus?: \"Unknown\" | \"Connecting\" | \"Connected\" | \"NotConnected\";\n /** The Ingress Bytes Transferred in this connection. */\n readonly ingressBytesTransferred?: number;\n /** The Egress Bytes Transferred in this connection. */\n readonly egressBytesTransferred?: number;\n /** The time at which connection was established in Utc format. */\n readonly lastConnectionEstablishedUtcTime?: string;\n}\n\n/** GatewayCustomBgpIpAddressIpConfiguration for a virtual network gateway connection. */\nexport interface GatewayCustomBgpIpAddressIpConfigurationOutput {\n /** The IpconfigurationId of ipconfiguration which belongs to gateway. */\n ipConfigurationId: string;\n /** The custom BgpPeeringAddress which belongs to IpconfigurationId. */\n customBgpIpAddress: string;\n}\n\n/** An traffic selector policy for a virtual network gateway connection. */\nexport interface TrafficSelectorPolicyOutput {\n /** A collection of local address spaces in CIDR format. */\n localAddressRanges: Array<string>;\n /** A collection of remote address spaces in CIDR format. */\n remoteAddressRanges: Array<string>;\n}\n\n/** Response for list BGP peer status API service call. */\nexport interface BgpPeerStatusListResultOutput {\n /** List of BGP peers. */\n value?: Array<BgpPeerStatusOutput>;\n}\n\n/** BGP peer status details. */\nexport interface BgpPeerStatusOutput {\n /** The virtual network gateway's local address. */\n readonly localAddress?: string;\n /** The remote BGP peer. */\n readonly neighbor?: string;\n /** The autonomous system number of the remote BGP peer. */\n readonly asn?: number;\n /** The BGP peer state. */\n readonly state?: \"Unknown\" | \"Stopped\" | \"Idle\" | \"Connecting\" | \"Connected\";\n /** For how long the peering has been up. */\n readonly connectedDuration?: string;\n /** The number of routes learned from this peer. */\n readonly routesReceived?: number;\n /** The number of BGP messages sent. */\n readonly messagesSent?: number;\n /** The number of BGP messages received. */\n readonly messagesReceived?: number;\n}\n\n/** List of virtual network gateway routes. */\nexport interface GatewayRouteListResultOutput {\n /** List of gateway routes. */\n value?: Array<GatewayRouteOutput>;\n}\n\n/** Gateway routing details. */\nexport interface GatewayRouteOutput {\n /** The gateway's local address. */\n readonly localAddress?: string;\n /** The route's network prefix. */\n readonly network?: string;\n /** The route's next hop. */\n readonly nextHop?: string;\n /** The peer this route was learned from. */\n readonly sourcePeer?: string;\n /** The source this route was learned from. */\n readonly origin?: string;\n /** The route's AS path sequence. */\n readonly asPath?: string;\n /** The route's weight. */\n readonly weight?: number;\n}\n\n/** An IPSec parameters for a virtual network gateway P2S connection. */\nexport interface VpnClientIPsecParametersOutput {\n /** The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client. */\n saLifeTimeSeconds: number;\n /** The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client.. */\n saDataSizeKilobytes: number;\n /** The IPSec encryption algorithm (IKE phase 1). */\n ipsecEncryption:\n | \"None\"\n | \"DES\"\n | \"DES3\"\n | \"AES128\"\n | \"AES192\"\n | \"AES256\"\n | \"GCMAES128\"\n | \"GCMAES192\"\n | \"GCMAES256\";\n /** The IPSec integrity algorithm (IKE phase 1). */\n ipsecIntegrity: \"MD5\" | \"SHA1\" | \"SHA256\" | \"GCMAES128\" | \"GCMAES192\" | \"GCMAES256\";\n /** The IKE encryption algorithm (IKE phase 2). */\n ikeEncryption: \"DES\" | \"DES3\" | \"AES128\" | \"AES192\" | \"AES256\" | \"GCMAES256\" | \"GCMAES128\";\n /** The IKE integrity algorithm (IKE phase 2). */\n ikeIntegrity: \"MD5\" | \"SHA1\" | \"SHA256\" | \"SHA384\" | \"GCMAES256\" | \"GCMAES128\";\n /** The DH Group used in IKE Phase 1 for initial SA. */\n dhGroup:\n | \"None\"\n | \"DHGroup1\"\n | \"DHGroup2\"\n | \"DHGroup14\"\n | \"DHGroup2048\"\n | \"ECP256\"\n | \"ECP384\"\n | \"DHGroup24\";\n /** The Pfs Group used in IKE Phase 2 for new child SA. */\n pfsGroup:\n | \"None\"\n | \"PFS1\"\n | \"PFS2\"\n | \"PFS2048\"\n | \"ECP256\"\n | \"ECP384\"\n | \"PFS24\"\n | \"PFS14\"\n | \"PFSMM\";\n}\n\n/** A common class for general resource information. */\nexport interface VirtualNetworkGatewayConnectionOutput extends ResourceOutput {\n /** Properties of the virtual network gateway connection. */\n properties: VirtualNetworkGatewayConnectionPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** VirtualNetworkGatewayConnection properties. */\nexport interface VirtualNetworkGatewayConnectionPropertiesFormatOutput {\n /** The authorizationKey. */\n authorizationKey?: string;\n /** The reference to virtual network gateway resource. */\n virtualNetworkGateway1: VirtualNetworkGatewayOutput;\n /** The reference to virtual network gateway resource. */\n virtualNetworkGateway2?: VirtualNetworkGatewayOutput;\n /** The reference to local network gateway resource. */\n localNetworkGateway2?: LocalNetworkGatewayOutput;\n /** List of ingress NatRules. */\n ingressNatRules?: Array<SubResourceOutput>;\n /** List of egress NatRules. */\n egressNatRules?: Array<SubResourceOutput>;\n /** Gateway connection type. */\n connectionType: \"IPsec\" | \"Vnet2Vnet\" | \"ExpressRoute\" | \"VPNClient\";\n /** Connection protocol used for this connection. */\n connectionProtocol?: \"IKEv2\" | \"IKEv1\";\n /** The routing weight. */\n routingWeight?: number;\n /** The dead peer detection timeout of this connection in seconds. */\n dpdTimeoutSeconds?: number;\n /** The connection mode for this connection. */\n connectionMode?: \"Default\" | \"ResponderOnly\" | \"InitiatorOnly\";\n /** The IPSec shared key. */\n sharedKey?: string;\n /** Virtual Network Gateway connection status. */\n readonly connectionStatus?: \"Unknown\" | \"Connecting\" | \"Connected\" | \"NotConnected\";\n /** Collection of all tunnels' connection health status. */\n readonly tunnelConnectionStatus?: Array<TunnelConnectionHealthOutput>;\n /** The egress bytes transferred in this connection. */\n readonly egressBytesTransferred?: number;\n /** The ingress bytes transferred in this connection. */\n readonly ingressBytesTransferred?: number;\n /** The reference to peerings resource. */\n peer?: SubResourceOutput;\n /** EnableBgp flag. */\n enableBgp?: boolean;\n /** GatewayCustomBgpIpAddresses to be used for virtual network gateway Connection. */\n gatewayCustomBgpIpAddresses?: Array<GatewayCustomBgpIpAddressIpConfigurationOutput>;\n /** Use private local Azure IP for the connection. */\n useLocalAzureIpAddress?: boolean;\n /** Enable policy-based traffic selectors. */\n usePolicyBasedTrafficSelectors?: boolean;\n /** The IPSec Policies to be considered by this connection. */\n ipsecPolicies?: Array<IpsecPolicyOutput>;\n /** The Traffic Selector Policies to be considered by this connection. */\n trafficSelectorPolicies?: Array<TrafficSelectorPolicyOutput>;\n /** The resource GUID property of the virtual network gateway connection resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the virtual network gateway connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Bypass ExpressRoute Gateway for data forwarding. */\n expressRouteGatewayBypass?: boolean;\n /** Bypass the ExpressRoute gateway when accessing private-links. ExpressRoute FastPath (expressRouteGatewayBypass) must be enabled. */\n enablePrivateLinkFastPath?: boolean;\n}\n\n/** A common class for general resource information. */\nexport interface LocalNetworkGatewayOutput extends ResourceOutput {\n /** Properties of the local network gateway. */\n properties: LocalNetworkGatewayPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** LocalNetworkGateway properties. */\nexport interface LocalNetworkGatewayPropertiesFormatOutput {\n /** Local network site address space. */\n localNetworkAddressSpace?: AddressSpaceOutput;\n /** IP address of local network gateway. */\n gatewayIpAddress?: string;\n /** FQDN of local network gateway. */\n fqdn?: string;\n /** Local network gateway's BGP speaker settings. */\n bgpSettings?: BgpSettingsOutput;\n /** The resource GUID property of the local network gateway resource. */\n readonly resourceGuid?: string;\n /** The provisioning state of the local network gateway resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for GetConnectionSharedKey API service call. */\nexport interface ConnectionSharedKeyOutput extends SubResourceOutput {\n /** The virtual network connection shared key value. */\n value: string;\n}\n\n/** Response for the ListVirtualNetworkGatewayConnections API service call. */\nexport interface VirtualNetworkGatewayConnectionListResultOutput {\n /** A list of VirtualNetworkGatewayConnection resources that exists in a resource group. */\n value?: Array<VirtualNetworkGatewayConnectionOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** The virtual network connection reset shared key. */\nexport interface ConnectionResetSharedKeyOutput {\n /** The virtual network connection reset shared key length, should between 1 and 128. */\n keyLength: number;\n}\n\n/** Response for ListLocalNetworkGateways API service call. */\nexport interface LocalNetworkGatewayListResultOutput {\n /** A list of local network gateways that exists in a resource group. */\n value?: Array<LocalNetworkGatewayOutput>;\n /** The URL to get the next set of results. */\n readonly nextLink?: string;\n}\n\n/** List of virtual network gateway vpn client connection health. */\nexport interface VpnClientConnectionHealthDetailListResultOutput {\n /** List of vpn client connection health. */\n value?: Array<VpnClientConnectionHealthDetailOutput>;\n}\n\n/** VPN client connection health detail. */\nexport interface VpnClientConnectionHealthDetailOutput {\n /** The vpn client Id. */\n readonly vpnConnectionId?: string;\n /** The duration time of a connected vpn client. */\n readonly vpnConnectionDuration?: number;\n /** The start time of a connected vpn client. */\n readonly vpnConnectionTime?: string;\n /** The public Ip of a connected vpn client. */\n readonly publicIpAddress?: string;\n /** The assigned private Ip of a connected vpn client. */\n readonly privateIpAddress?: string;\n /** The user name of a connected vpn client. */\n readonly vpnUserName?: string;\n /** The max band width. */\n readonly maxBandwidth?: number;\n /** The egress packets per second. */\n readonly egressPacketsTransferred?: number;\n /** The egress bytes per second. */\n readonly egressBytesTransferred?: number;\n /** The ingress packets per second. */\n readonly ingressPacketsTransferred?: number;\n /** The ingress bytes per second. */\n readonly ingressBytesTransferred?: number;\n /** The max packets transferred per second. */\n readonly maxPacketsPerSecond?: number;\n}\n\n/** Result of the request to list all nat rules to a virtual network gateway. It contains a list of Nat rules and a URL nextLink to get the next set of results. */\nexport interface ListVirtualNetworkGatewayNatRulesResultOutput {\n /** List of Nat Rules. */\n value?: Array<VirtualNetworkGatewayNatRuleOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Response for ListVirtualNetworkTap API service call. */\nexport interface VirtualNetworkTapListResultOutput {\n /** A list of VirtualNetworkTaps in a resource group. */\n value?: Array<VirtualNetworkTapOutput>;\n /** The URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** VirtualRouter Resource. */\nexport interface VirtualRouterOutput extends ResourceOutput {\n /** Properties of the Virtual Router. */\n properties?: VirtualRouterPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Virtual Router definition. */\nexport interface VirtualRouterPropertiesFormatOutput {\n /** VirtualRouter ASN. */\n virtualRouterAsn?: number;\n /** VirtualRouter IPs. */\n virtualRouterIps?: Array<string>;\n /** The Subnet on which VirtualRouter is hosted. */\n hostedSubnet?: SubResourceOutput;\n /** The Gateway on which VirtualRouter is hosted. */\n hostedGateway?: SubResourceOutput;\n /** List of references to VirtualRouterPeerings. */\n readonly peerings?: Array<SubResourceOutput>;\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for ListVirtualRouters API service call. */\nexport interface VirtualRouterListResultOutput {\n /** List of Virtual Routers. */\n value?: Array<VirtualRouterOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** Virtual Router Peering resource. */\nexport interface VirtualRouterPeeringOutput extends SubResourceOutput {\n /** The properties of the Virtual Router Peering. */\n properties?: VirtualRouterPeeringPropertiesOutput;\n /** Name of the virtual router peering that is unique within a virtual router. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Peering type. */\n readonly type?: string;\n}\n\n/** Properties of the rule group. */\nexport interface VirtualRouterPeeringPropertiesOutput {\n /** Peer ASN. */\n peerAsn?: number;\n /** Peer IP. */\n peerIp?: string;\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Response for ListVirtualRouterPeerings API service call. */\nexport interface VirtualRouterPeeringListResultOutput {\n /** List of VirtualRouterPeerings in a VirtualRouter. */\n value?: Array<VirtualRouterPeeringOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** VirtualWAN Resource. */\nexport interface VirtualWANOutput extends ResourceOutput {\n /** Properties of the virtual WAN. */\n properties?: VirtualWanPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for VirtualWAN. */\nexport interface VirtualWanPropertiesOutput {\n /** Vpn encryption to be disabled or not. */\n disableVpnEncryption?: boolean;\n /** List of VirtualHubs in the VirtualWAN. */\n readonly virtualHubs?: Array<SubResourceOutput>;\n /** List of VpnSites in the VirtualWAN. */\n readonly vpnSites?: Array<SubResourceOutput>;\n /** True if branch to branch traffic is allowed. */\n allowBranchToBranchTraffic?: boolean;\n /** True if Vnet to Vnet traffic is allowed. */\n allowVnetToVnetTraffic?: boolean;\n /** The office local breakout category. */\n readonly office365LocalBreakoutCategory?: \"Optimize\" | \"OptimizeAndAllow\" | \"All\" | \"None\";\n /** The provisioning state of the virtual WAN resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The type of the VirtualWAN. */\n type?: string;\n}\n\n/** Result of the request to list VirtualWANs. It contains a list of VirtualWANs and a URL nextLink to get the next set of results. */\nexport interface ListVirtualWANsResultOutput {\n /** List of VirtualWANs. */\n value?: Array<VirtualWANOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** VpnSite Resource. */\nexport interface VpnSiteOutput extends ResourceOutput {\n /** Properties of the VPN site. */\n properties?: VpnSitePropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for VpnSite. */\nexport interface VpnSitePropertiesOutput {\n /** The VirtualWAN to which the vpnSite belongs. */\n virtualWan?: SubResourceOutput;\n /** The device properties. */\n deviceProperties?: DevicePropertiesOutput;\n /** The ip-address for the vpn-site. */\n ipAddress?: string;\n /** The key for vpn-site that can be used for connections. */\n siteKey?: string;\n /** The AddressSpace that contains an array of IP address ranges. */\n addressSpace?: AddressSpaceOutput;\n /** The set of bgp properties. */\n bgpProperties?: BgpSettingsOutput;\n /** The provisioning state of the VPN site resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** IsSecuritySite flag. */\n isSecuritySite?: boolean;\n /** List of all vpn site links. */\n vpnSiteLinks?: Array<VpnSiteLinkOutput>;\n /** Office365 Policy. */\n o365Policy?: O365PolicyPropertiesOutput;\n}\n\n/** List of properties of the device. */\nexport interface DevicePropertiesOutput {\n /** Name of the device Vendor. */\n deviceVendor?: string;\n /** Model of the device. */\n deviceModel?: string;\n /** Link speed. */\n linkSpeedInMbps?: number;\n}\n\n/** VpnSiteLink Resource. */\nexport interface VpnSiteLinkOutput extends SubResourceOutput {\n /** Properties of the VPN site link. */\n properties?: VpnSiteLinkPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Parameters for VpnSite. */\nexport interface VpnSiteLinkPropertiesOutput {\n /** The link provider properties. */\n linkProperties?: VpnLinkProviderPropertiesOutput;\n /** The ip-address for the vpn-site-link. */\n ipAddress?: string;\n /** FQDN of vpn-site-link. */\n fqdn?: string;\n /** The set of bgp properties. */\n bgpProperties?: VpnLinkBgpSettingsOutput;\n /** The provisioning state of the VPN site link resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** List of properties of a link provider. */\nexport interface VpnLinkProviderPropertiesOutput {\n /** Name of the link provider. */\n linkProviderName?: string;\n /** Link speed. */\n linkSpeedInMbps?: number;\n}\n\n/** BGP settings details for a link. */\nexport interface VpnLinkBgpSettingsOutput {\n /** The BGP speaker's ASN. */\n asn?: number;\n /** The BGP peering address and BGP identifier of this BGP speaker. */\n bgpPeeringAddress?: string;\n}\n\n/** The Office365 breakout policy. */\nexport interface O365PolicyPropertiesOutput {\n /** Office365 breakout categories. */\n breakOutCategories?: O365BreakOutCategoryPoliciesOutput;\n}\n\n/** Office365 breakout categories. */\nexport interface O365BreakOutCategoryPoliciesOutput {\n /** Flag to control allow category. */\n allow?: boolean;\n /** Flag to control optimize category. */\n optimize?: boolean;\n /** Flag to control default category. */\n default?: boolean;\n}\n\n/** Result of the request to list VpnSites. It contains a list of VpnSites and a URL nextLink to get the next set of results. */\nexport interface ListVpnSitesResultOutput {\n /** List of VpnSites. */\n value?: Array<VpnSiteOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list VpnSiteLinks. It contains a list of VpnSiteLinks and a URL nextLink to get the next set of results. */\nexport interface ListVpnSiteLinksResultOutput {\n /** List of VpnSitesLinks. */\n value?: Array<VpnSiteLinkOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Collection of SecurityProviders. */\nexport interface VirtualWanSecurityProvidersOutput {\n /** List of VirtualWAN security providers. */\n supportedProviders?: Array<VirtualWanSecurityProviderOutput>;\n}\n\n/** Collection of SecurityProviders. */\nexport interface VirtualWanSecurityProviderOutput {\n /** Name of the security provider. */\n name?: string;\n /** Url of the security provider. */\n url?: string;\n /** Name of the security provider. */\n readonly type?: \"External\" | \"Native\";\n}\n\n/** VpnServerConfiguration Resource. */\nexport interface VpnServerConfigurationOutput extends ResourceOutput {\n /** Properties of the P2SVpnServer configuration. */\n properties?: VpnServerConfigurationPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for VpnServerConfiguration. */\nexport interface VpnServerConfigurationPropertiesOutput {\n /** The name of the VpnServerConfiguration that is unique within a resource group. */\n name?: string;\n /** VPN protocols for the VpnServerConfiguration. */\n vpnProtocols?: Array<\"IkeV2\" | \"OpenVPN\">;\n /** VPN authentication types for the VpnServerConfiguration. */\n vpnAuthenticationTypes?: Array<\"Certificate\" | \"Radius\" | \"AAD\">;\n /** VPN client root certificate of VpnServerConfiguration. */\n vpnClientRootCertificates?: Array<VpnServerConfigVpnClientRootCertificateOutput>;\n /** VPN client revoked certificate of VpnServerConfiguration. */\n vpnClientRevokedCertificates?: Array<VpnServerConfigVpnClientRevokedCertificateOutput>;\n /** Radius Server root certificate of VpnServerConfiguration. */\n radiusServerRootCertificates?: Array<VpnServerConfigRadiusServerRootCertificateOutput>;\n /** Radius client root certificate of VpnServerConfiguration. */\n radiusClientRootCertificates?: Array<VpnServerConfigRadiusClientRootCertificateOutput>;\n /** VpnClientIpsecPolicies for VpnServerConfiguration. */\n vpnClientIpsecPolicies?: Array<IpsecPolicyOutput>;\n /** The radius server address property of the VpnServerConfiguration resource for point to site client connection. */\n radiusServerAddress?: string;\n /** The radius secret property of the VpnServerConfiguration resource for point to site client connection. */\n radiusServerSecret?: string;\n /** Multiple Radius Server configuration for VpnServerConfiguration. */\n radiusServers?: Array<RadiusServerOutput>;\n /** The set of aad vpn authentication parameters. */\n aadAuthenticationParameters?: AadAuthenticationParametersOutput;\n /** The provisioning state of the VpnServerConfiguration resource. Possible values are: 'Updating', 'Deleting', and 'Failed'. */\n readonly provisioningState?: string;\n /** List of references to P2SVpnGateways. */\n readonly p2SVpnGateways?: Array<P2SVpnGatewayOutput>;\n /** List of all VpnServerConfigurationPolicyGroups. */\n configurationPolicyGroups?: Array<VpnServerConfigurationPolicyGroupOutput>;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Properties of VPN client root certificate of VpnServerConfiguration. */\nexport interface VpnServerConfigVpnClientRootCertificateOutput {\n /** The certificate name. */\n name?: string;\n /** The certificate public data. */\n publicCertData?: string;\n}\n\n/** Properties of the revoked VPN client certificate of VpnServerConfiguration. */\nexport interface VpnServerConfigVpnClientRevokedCertificateOutput {\n /** The certificate name. */\n name?: string;\n /** The revoked VPN client certificate thumbprint. */\n thumbprint?: string;\n}\n\n/** Properties of Radius Server root certificate of VpnServerConfiguration. */\nexport interface VpnServerConfigRadiusServerRootCertificateOutput {\n /** The certificate name. */\n name?: string;\n /** The certificate public data. */\n publicCertData?: string;\n}\n\n/** Properties of the Radius client root certificate of VpnServerConfiguration. */\nexport interface VpnServerConfigRadiusClientRootCertificateOutput {\n /** The certificate name. */\n name?: string;\n /** The Radius client root certificate thumbprint. */\n thumbprint?: string;\n}\n\n/** AAD Vpn authentication type related parameters. */\nexport interface AadAuthenticationParametersOutput {\n /** AAD Vpn authentication parameter AAD tenant. */\n aadTenant?: string;\n /** AAD Vpn authentication parameter AAD audience. */\n aadAudience?: string;\n /** AAD Vpn authentication parameter AAD issuer. */\n aadIssuer?: string;\n}\n\n/** P2SVpnGateway Resource. */\nexport interface P2SVpnGatewayOutput extends ResourceOutput {\n /** Properties of the P2SVpnGateway. */\n properties?: P2SVpnGatewayPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for P2SVpnGateway. */\nexport interface P2SVpnGatewayPropertiesOutput {\n /** The VirtualHub to which the gateway belongs. */\n virtualHub?: SubResourceOutput;\n /** List of all p2s connection configurations of the gateway. */\n p2SConnectionConfigurations?: Array<P2SConnectionConfigurationOutput>;\n /** The provisioning state of the P2S VPN gateway resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The scale unit for this p2s vpn gateway. */\n vpnGatewayScaleUnit?: number;\n /** The VpnServerConfiguration to which the p2sVpnGateway is attached to. */\n vpnServerConfiguration?: SubResourceOutput;\n /** All P2S VPN clients' connection health status. */\n readonly vpnClientConnectionHealth?: VpnClientConnectionHealthOutput;\n /** List of all customer specified DNS servers IP addresses. */\n customDnsServers?: Array<string>;\n /** Enable Routing Preference property for the Public IP Interface of the P2SVpnGateway. */\n isRoutingPreferenceInternet?: boolean;\n}\n\n/** P2SConnectionConfiguration Resource. */\nexport interface P2SConnectionConfigurationOutput extends SubResourceOutput {\n /** Properties of the P2S connection configuration. */\n properties?: P2SConnectionConfigurationPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for P2SConnectionConfiguration. */\nexport interface P2SConnectionConfigurationPropertiesOutput {\n /** The reference to the address space resource which represents Address space for P2S VpnClient. */\n vpnClientAddressPool?: AddressSpaceOutput;\n /** The Routing Configuration indicating the associated and propagated route tables on this connection. */\n routingConfiguration?: RoutingConfigurationOutput;\n /** Flag indicating whether the enable internet security flag is turned on for the P2S Connections or not. */\n enableInternetSecurity?: boolean;\n /** List of Configuration Policy Groups that this P2SConnectionConfiguration is attached to. */\n readonly configurationPolicyGroupAssociations?: Array<SubResourceOutput>;\n /** List of previous Configuration Policy Groups that this P2SConnectionConfiguration was attached to. */\n readonly previousConfigurationPolicyGroupAssociations?: Array<VpnServerConfigurationPolicyGroupOutput>;\n /** The provisioning state of the P2SConnectionConfiguration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Routing Configuration indicating the associated and propagated route tables for this connection. */\nexport interface RoutingConfigurationOutput {\n /** The resource id RouteTable associated with this RoutingConfiguration. */\n associatedRouteTable?: SubResourceOutput;\n /** The list of RouteTables to advertise the routes to. */\n propagatedRouteTables?: PropagatedRouteTableOutput;\n /** List of routes that control routing from VirtualHub into a virtual network connection. */\n vnetRoutes?: VnetRouteOutput;\n /** The resource id of the RouteMap associated with this RoutingConfiguration for inbound learned routes. */\n inboundRouteMap?: SubResourceOutput;\n /** The resource id of theRouteMap associated with this RoutingConfiguration for outbound advertised routes. */\n outboundRouteMap?: SubResourceOutput;\n}\n\n/** The list of RouteTables to advertise the routes to. */\nexport interface PropagatedRouteTableOutput {\n /** The list of labels. */\n labels?: Array<string>;\n /** The list of resource ids of all the RouteTables. */\n ids?: Array<SubResourceOutput>;\n}\n\n/** List of routes that control routing from VirtualHub into a virtual network connection. */\nexport interface VnetRouteOutput {\n /** Configuration for static routes on this HubVnetConnection. */\n staticRoutesConfig?: StaticRoutesConfigOutput;\n /** List of all Static Routes. */\n staticRoutes?: Array<StaticRouteOutput>;\n /** The list of references to HubBgpConnection objects. */\n readonly bgpConnections?: Array<SubResourceOutput>;\n}\n\n/** Configuration for static routes on this HubVnetConnectionConfiguration for static routes on this HubVnetConnection. */\nexport interface StaticRoutesConfigOutput {\n /** Boolean indicating whether static routes on this connection are automatically propagate to route tables which this connection propagates to. */\n readonly propagateStaticRoutes?: boolean;\n /** Parameter determining whether NVA in spoke vnet is bypassed for traffic with destination in spoke. */\n vnetLocalRouteOverrideCriteria?: \"Contains\" | \"Equal\";\n}\n\n/** List of all Static Routes. */\nexport interface StaticRouteOutput {\n /** The name of the StaticRoute that is unique within a VnetRoute. */\n name?: string;\n /** List of all address prefixes. */\n addressPrefixes?: Array<string>;\n /** The ip address of the next hop. */\n nextHopIpAddress?: string;\n}\n\n/** VpnServerConfigurationPolicyGroup Resource. */\nexport interface VpnServerConfigurationPolicyGroupOutput extends SubResourceOutput {\n /** Properties of the VpnServerConfigurationPolicyGroup. */\n properties?: VpnServerConfigurationPolicyGroupPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Parameters for VpnServerConfigurationPolicyGroup. */\nexport interface VpnServerConfigurationPolicyGroupPropertiesOutput {\n /** Shows if this is a Default VpnServerConfigurationPolicyGroup or not. */\n isDefault?: boolean;\n /** Priority for VpnServerConfigurationPolicyGroup. */\n priority?: number;\n /** Multiple PolicyMembers for VpnServerConfigurationPolicyGroup. */\n policyMembers?: Array<VpnServerConfigurationPolicyGroupMemberOutput>;\n /** List of references to P2SConnectionConfigurations. */\n readonly p2SConnectionConfigurations?: Array<SubResourceOutput>;\n /** The provisioning state of the VpnServerConfigurationPolicyGroup resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** VpnServerConfiguration PolicyGroup member */\nexport interface VpnServerConfigurationPolicyGroupMemberOutput {\n /** Name of the VpnServerConfigurationPolicyGroupMember. */\n name?: string;\n /** The Vpn Policy member attribute type. */\n attributeType?: \"CertificateGroupId\" | \"AADGroupId\" | \"RadiusAzureGroupId\";\n /** The value of Attribute used for this VpnServerConfigurationPolicyGroupMember. */\n attributeValue?: string;\n}\n\n/** VpnClientConnectionHealth properties. */\nexport interface VpnClientConnectionHealthOutput {\n /** Total of the Ingress Bytes Transferred in this P2S Vpn connection. */\n readonly totalIngressBytesTransferred?: number;\n /** Total of the Egress Bytes Transferred in this connection. */\n readonly totalEgressBytesTransferred?: number;\n /** The total of p2s vpn clients connected at this time to this P2SVpnGateway. */\n vpnClientConnectionsCount?: number;\n /** List of allocated ip addresses to the connected p2s vpn clients. */\n allocatedIpAddresses?: Array<string>;\n}\n\n/** Result of the request to list all VpnServerConfigurations. It contains a list of VpnServerConfigurations and a URL nextLink to get the next set of results. */\nexport interface ListVpnServerConfigurationsResultOutput {\n /** List of VpnServerConfigurations. */\n value?: Array<VpnServerConfigurationOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list VpnServerConfigurationPolicyGroups. It contains a list of VpnServerConfigurationPolicyGroups and a URL nextLink to get the next set of results. */\nexport interface ListVpnServerConfigurationPolicyGroupsResultOutput {\n /** List of VpnServerConfigurationPolicyGroups. */\n value?: Array<VpnServerConfigurationPolicyGroupOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** VirtualHub Resource. */\nexport interface VirtualHubOutput extends ResourceOutput {\n /** Properties of the virtual hub. */\n properties?: VirtualHubPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Kind of service virtual hub. This is metadata used for the Azure portal experience for Route Server. */\n readonly kind?: string;\n}\n\n/** Parameters for VirtualHub. */\nexport interface VirtualHubPropertiesOutput {\n /** The VirtualWAN to which the VirtualHub belongs. */\n virtualWan?: SubResourceOutput;\n /** The VpnGateway associated with this VirtualHub. */\n vpnGateway?: SubResourceOutput;\n /** The P2SVpnGateway associated with this VirtualHub. */\n p2SVpnGateway?: SubResourceOutput;\n /** The expressRouteGateway associated with this VirtualHub. */\n expressRouteGateway?: SubResourceOutput;\n /** The azureFirewall associated with this VirtualHub. */\n azureFirewall?: SubResourceOutput;\n /** The securityPartnerProvider associated with this VirtualHub. */\n securityPartnerProvider?: SubResourceOutput;\n /** Address-prefix for this VirtualHub. */\n addressPrefix?: string;\n /** The routeTable associated with this virtual hub. */\n routeTable?: VirtualHubRouteTableOutput;\n /** The provisioning state of the virtual hub resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The Security Provider name. */\n securityProviderName?: string;\n /** List of all virtual hub route table v2s associated with this VirtualHub. */\n virtualHubRouteTableV2s?: Array<VirtualHubRouteTableV2Output>;\n /** The sku of this VirtualHub. */\n sku?: string;\n /** The routing state. */\n readonly routingState?: \"None\" | \"Provisioned\" | \"Provisioning\" | \"Failed\";\n /** List of references to Bgp Connections. */\n readonly bgpConnections?: Array<SubResourceOutput>;\n /** List of references to IpConfigurations. */\n readonly ipConfigurations?: Array<SubResourceOutput>;\n /** List of references to RouteMaps. */\n readonly routeMaps?: Array<SubResourceOutput>;\n /** VirtualRouter ASN. */\n virtualRouterAsn?: number;\n /** VirtualRouter IPs. */\n virtualRouterIps?: Array<string>;\n /** Flag to control transit for VirtualRouter hub. */\n allowBranchToBranchTraffic?: boolean;\n /** The preferred gateway to route on-prem traffic */\n preferredRoutingGateway?: \"ExpressRoute\" | \"VpnGateway\" | \"None\";\n /** The hubRoutingPreference of this VirtualHub. */\n hubRoutingPreference?: \"ExpressRoute\" | \"VpnGateway\" | \"ASPath\";\n /** The VirtualHub Router autoscale configuration. */\n virtualRouterAutoScaleConfiguration?: VirtualRouterAutoScaleConfigurationOutput;\n}\n\n/** VirtualHub route table. */\nexport interface VirtualHubRouteTableOutput {\n /** List of all routes. */\n routes?: Array<VirtualHubRouteOutput>;\n}\n\n/** VirtualHub route. */\nexport interface VirtualHubRouteOutput {\n /** List of all addressPrefixes. */\n addressPrefixes?: Array<string>;\n /** NextHop ip address. */\n nextHopIpAddress?: string;\n}\n\n/** VirtualHubRouteTableV2 Resource. */\nexport interface VirtualHubRouteTableV2Output extends SubResourceOutput {\n /** Properties of the virtual hub route table v2. */\n properties?: VirtualHubRouteTableV2PropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for VirtualHubRouteTableV2. */\nexport interface VirtualHubRouteTableV2PropertiesOutput {\n /** List of all routes. */\n routes?: Array<VirtualHubRouteV2Output>;\n /** List of all connections attached to this route table v2. */\n attachedConnections?: Array<string>;\n /** The provisioning state of the virtual hub route table v2 resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** VirtualHubRouteTableV2 route. */\nexport interface VirtualHubRouteV2Output {\n /** The type of destinations. */\n destinationType?: string;\n /** List of all destinations. */\n destinations?: Array<string>;\n /** The type of next hops. */\n nextHopType?: string;\n /** NextHops ip address. */\n nextHops?: Array<string>;\n}\n\n/** The VirtualHub Router autoscale configuration. */\nexport interface VirtualRouterAutoScaleConfigurationOutput {\n /** The minimum number of scale units for VirtualHub Router. */\n minCapacity?: number;\n}\n\n/** Result of the request to list VirtualHubs. It contains a list of VirtualHubs and a URL nextLink to get the next set of results. */\nexport interface ListVirtualHubsResultOutput {\n /** List of VirtualHubs. */\n value?: Array<VirtualHubOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** The RouteMap child resource of a Virtual hub. */\nexport interface RouteMapOutput extends SubResourceOutput {\n /** Properties of the RouteMap resource. */\n properties?: RouteMapPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n readonly name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Properties of RouteMap resource */\nexport interface RouteMapPropertiesOutput {\n /** List of connections which have this RoutMap associated for inbound traffic. */\n associatedInboundConnections?: Array<string>;\n /** List of connections which have this RoutMap associated for outbound traffic. */\n associatedOutboundConnections?: Array<string>;\n /** List of RouteMap rules to be applied. */\n rules?: Array<RouteMapRuleOutput>;\n /** The provisioning state of the RouteMap resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** A RouteMap Rule. */\nexport interface RouteMapRuleOutput {\n /** The unique name for the rule. */\n name?: string;\n /** List of matching criterion which will be applied to traffic. */\n matchCriteria?: Array<CriterionOutput>;\n /** List of actions which will be applied on a match. */\n actions?: Array<ActionOutput>;\n /** Next step after rule is evaluated. Current supported behaviors are 'Continue'(to next rule) and 'Terminate'. */\n nextStepIfMatched?: \"Unknown\" | \"Continue\" | \"Terminate\";\n}\n\n/** A matching criteria which matches routes based on route prefix, community, and AS path. */\nexport interface CriterionOutput {\n /** List of route prefixes which this criteria matches. */\n routePrefix?: Array<string>;\n /** List of BGP communities which this criteria matches. */\n community?: Array<string>;\n /** List of AS paths which this criteria matches. */\n asPath?: Array<string>;\n /** Match condition to apply RouteMap rules. */\n matchCondition?: \"Unknown\" | \"Contains\" | \"Equals\" | \"NotContains\" | \"NotEquals\";\n}\n\n/** Action to be taken on a route matching a RouteMap criterion. */\nexport interface ActionOutput {\n /** Type of action to be taken. Supported types are 'Remove', 'Add', 'Replace', and 'Drop.' */\n type?: \"Unknown\" | \"Remove\" | \"Add\" | \"Replace\" | \"Drop\";\n /** List of parameters relevant to the action.For instance if type is drop then parameters has list of prefixes to be dropped.If type is add, parameters would have list of ASN numbers to be added */\n parameters?: Array<ParameterOutput>;\n}\n\n/** Parameters for an Action. */\nexport interface ParameterOutput {\n /** List of route prefixes. */\n routePrefix?: Array<string>;\n /** List of BGP communities. */\n community?: Array<string>;\n /** List of AS paths. */\n asPath?: Array<string>;\n}\n\n/** List of RouteMaps and a URL nextLink to get the next set of results. */\nexport interface ListRouteMapsResultOutput {\n /** List of RouteMaps. */\n value?: Array<RouteMapOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** HubVirtualNetworkConnection Resource. */\nexport interface HubVirtualNetworkConnectionOutput extends SubResourceOutput {\n /** Properties of the hub virtual network connection. */\n properties?: HubVirtualNetworkConnectionPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for HubVirtualNetworkConnection. */\nexport interface HubVirtualNetworkConnectionPropertiesOutput {\n /** Reference to the remote virtual network. */\n remoteVirtualNetwork?: SubResourceOutput;\n /** Deprecated: VirtualHub to RemoteVnet transit to enabled or not. */\n allowHubToRemoteVnetTransit?: boolean;\n /** Deprecated: Allow RemoteVnet to use Virtual Hub's gateways. */\n allowRemoteVnetToUseHubVnetGateways?: boolean;\n /** Enable internet security. */\n enableInternetSecurity?: boolean;\n /** The Routing Configuration indicating the associated and propagated route tables on this connection. */\n routingConfiguration?: RoutingConfigurationOutput;\n /** The provisioning state of the hub virtual network connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** List of HubVirtualNetworkConnections and a URL nextLink to get the next set of results. */\nexport interface ListHubVirtualNetworkConnectionsResultOutput {\n /** List of HubVirtualNetworkConnections. */\n value?: Array<HubVirtualNetworkConnectionOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** VpnGateway Resource. */\nexport interface VpnGatewayOutput extends ResourceOutput {\n /** Properties of the VPN gateway. */\n properties?: VpnGatewayPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for VpnGateway. */\nexport interface VpnGatewayPropertiesOutput {\n /** The VirtualHub to which the gateway belongs. */\n virtualHub?: SubResourceOutput;\n /** List of all vpn connections to the gateway. */\n connections?: Array<VpnConnectionOutput>;\n /** Local network gateway's BGP speaker settings. */\n bgpSettings?: BgpSettingsOutput;\n /** The provisioning state of the VPN gateway resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The scale unit for this vpn gateway. */\n vpnGatewayScaleUnit?: number;\n /** List of all IPs configured on the gateway. */\n readonly ipConfigurations?: Array<VpnGatewayIpConfigurationOutput>;\n /** Enable BGP routes translation for NAT on this VpnGateway. */\n enableBgpRouteTranslationForNat?: boolean;\n /** Enable Routing Preference property for the Public IP Interface of the VpnGateway. */\n isRoutingPreferenceInternet?: boolean;\n /** List of all the nat Rules associated with the gateway. */\n natRules?: Array<VpnGatewayNatRuleOutput>;\n}\n\n/** VpnConnection Resource. */\nexport interface VpnConnectionOutput extends SubResourceOutput {\n /** Properties of the VPN connection. */\n properties?: VpnConnectionPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Parameters for VpnConnection. */\nexport interface VpnConnectionPropertiesOutput {\n /** Id of the connected vpn site. */\n remoteVpnSite?: SubResourceOutput;\n /** Routing weight for vpn connection. */\n routingWeight?: number;\n /** DPD timeout in seconds for vpn connection. */\n dpdTimeoutSeconds?: number;\n /** The connection status. */\n readonly connectionStatus?: \"Unknown\" | \"Connecting\" | \"Connected\" | \"NotConnected\";\n /** Connection protocol used for this connection. */\n vpnConnectionProtocolType?: \"IKEv2\" | \"IKEv1\";\n /** Ingress bytes transferred. */\n readonly ingressBytesTransferred?: number;\n /** Egress bytes transferred. */\n readonly egressBytesTransferred?: number;\n /** Expected bandwidth in MBPS. */\n connectionBandwidth?: number;\n /** SharedKey for the vpn connection. */\n sharedKey?: string;\n /** EnableBgp flag. */\n enableBgp?: boolean;\n /** Enable policy-based traffic selectors. */\n usePolicyBasedTrafficSelectors?: boolean;\n /** The IPSec Policies to be considered by this connection. */\n ipsecPolicies?: Array<IpsecPolicyOutput>;\n /** The Traffic Selector Policies to be considered by this connection. */\n trafficSelectorPolicies?: Array<TrafficSelectorPolicyOutput>;\n /** EnableBgp flag. */\n enableRateLimiting?: boolean;\n /** Enable internet security. */\n enableInternetSecurity?: boolean;\n /** Use local azure ip to initiate connection. */\n useLocalAzureIpAddress?: boolean;\n /** The provisioning state of the VPN connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** List of all vpn site link connections to the gateway. */\n vpnLinkConnections?: Array<VpnSiteLinkConnectionOutput>;\n /** The Routing Configuration indicating the associated and propagated route tables on this connection. */\n routingConfiguration?: RoutingConfigurationOutput;\n}\n\n/** VpnSiteLinkConnection Resource. */\nexport interface VpnSiteLinkConnectionOutput extends SubResourceOutput {\n /** Properties of the VPN site link connection. */\n properties?: VpnSiteLinkConnectionPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Parameters for VpnConnection. */\nexport interface VpnSiteLinkConnectionPropertiesOutput {\n /** Id of the connected vpn site link. */\n vpnSiteLink?: SubResourceOutput;\n /** Routing weight for vpn connection. */\n routingWeight?: number;\n /** Vpn link connection mode. */\n vpnLinkConnectionMode?: \"Default\" | \"ResponderOnly\" | \"InitiatorOnly\";\n /** The connection status. */\n readonly connectionStatus?: \"Unknown\" | \"Connecting\" | \"Connected\" | \"NotConnected\";\n /** Connection protocol used for this connection. */\n vpnConnectionProtocolType?: \"IKEv2\" | \"IKEv1\";\n /** Ingress bytes transferred. */\n readonly ingressBytesTransferred?: number;\n /** Egress bytes transferred. */\n readonly egressBytesTransferred?: number;\n /** Expected bandwidth in MBPS. */\n connectionBandwidth?: number;\n /** SharedKey for the vpn connection. */\n sharedKey?: string;\n /** EnableBgp flag. */\n enableBgp?: boolean;\n /** vpnGatewayCustomBgpAddresses used by this connection. */\n vpnGatewayCustomBgpAddresses?: Array<GatewayCustomBgpIpAddressIpConfigurationOutput>;\n /** Enable policy-based traffic selectors. */\n usePolicyBasedTrafficSelectors?: boolean;\n /** The IPSec Policies to be considered by this connection. */\n ipsecPolicies?: Array<IpsecPolicyOutput>;\n /** EnableBgp flag. */\n enableRateLimiting?: boolean;\n /** Use local azure ip to initiate connection. */\n useLocalAzureIpAddress?: boolean;\n /** The provisioning state of the VPN site link connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** List of ingress NatRules. */\n ingressNatRules?: Array<SubResourceOutput>;\n /** List of egress NatRules. */\n egressNatRules?: Array<SubResourceOutput>;\n}\n\n/** IP Configuration of a VPN Gateway Resource. */\nexport interface VpnGatewayIpConfigurationOutput {\n /** The identifier of the IP configuration for a VPN Gateway. */\n id?: string;\n /** The public IP address of this IP configuration. */\n publicIpAddress?: string;\n /** The private IP address of this IP configuration. */\n privateIpAddress?: string;\n}\n\n/** VpnGatewayNatRule Resource. */\nexport interface VpnGatewayNatRuleOutput extends SubResourceOutput {\n /** Properties of the VpnGateway NAT rule. */\n properties?: VpnGatewayNatRulePropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Parameters for VpnGatewayNatRule. */\nexport interface VpnGatewayNatRulePropertiesOutput {\n /** The provisioning state of the NAT Rule resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The type of NAT rule for VPN NAT. */\n type?: \"Static\" | \"Dynamic\";\n /** The Source NAT direction of a VPN NAT. */\n mode?: \"EgressSnat\" | \"IngressSnat\";\n /** The private IP address internal mapping for NAT. */\n internalMappings?: Array<VpnNatRuleMappingOutput>;\n /** The private IP address external mapping for NAT. */\n externalMappings?: Array<VpnNatRuleMappingOutput>;\n /** The IP Configuration ID this NAT rule applies to. */\n ipConfigurationId?: string;\n /** List of egress VpnSiteLinkConnections. */\n readonly egressVpnSiteLinkConnections?: Array<SubResourceOutput>;\n /** List of ingress VpnSiteLinkConnections. */\n readonly ingressVpnSiteLinkConnections?: Array<SubResourceOutput>;\n}\n\n/** Result of the request to list VpnGateways. It contains a list of VpnGateways and a URL nextLink to get the next set of results. */\nexport interface ListVpnGatewaysResultOutput {\n /** List of VpnGateways. */\n value?: Array<VpnGatewayOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results. */\nexport interface ListVpnConnectionsResultOutput {\n /** List of Vpn Connections. */\n value?: Array<VpnConnectionOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list all vpn connections to a virtual wan vpn gateway. It contains a list of Vpn Connections and a URL nextLink to get the next set of results. */\nexport interface ListVpnSiteLinkConnectionsResultOutput {\n /** List of VpnSiteLinkConnections. */\n value?: Array<VpnSiteLinkConnectionOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list all nat rules to a virtual wan vpn gateway. It contains a list of Nat rules and a URL nextLink to get the next set of results. */\nexport interface ListVpnGatewayNatRulesResultOutput {\n /** List of Nat Rules. */\n value?: Array<VpnGatewayNatRuleOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list P2SVpnGateways. It contains a list of P2SVpnGateways and a URL nextLink to get the next set of results. */\nexport interface ListP2SVpnGatewaysResultOutput {\n /** List of P2SVpnGateways. */\n value?: Array<P2SVpnGatewayOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Vpn Profile Response for package generation. */\nexport interface VpnProfileResponseOutput {\n /** URL to the VPN profile. */\n profileUrl?: string;\n}\n\n/** P2S Vpn connection detailed health written to sas url. */\nexport interface P2SVpnConnectionHealthOutput {\n /** Returned sas url of the blob to which the p2s vpn connection detailed health will be written. */\n sasUrl?: string;\n}\n\n/** VpnServerConfigurations list associated with VirtualWan Response. */\nexport interface VpnServerConfigurationsResponseOutput {\n /** List of VpnServerConfigurations associated with VirtualWan. */\n vpnServerConfigurationResourceIds?: Array<string>;\n}\n\n/** List of VirtualHubRouteTableV2s and a URL nextLink to get the next set of results. */\nexport interface ListVirtualHubRouteTableV2SResultOutput {\n /** List of VirtualHubRouteTableV2s. */\n value?: Array<VirtualHubRouteTableV2Output>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** List of ExpressRoute gateways. */\nexport interface ExpressRouteGatewayListOutput {\n /** List of ExpressRoute gateways. */\n value?: Array<ExpressRouteGatewayOutput>;\n}\n\n/** ExpressRoute gateway resource. */\nexport interface ExpressRouteGatewayOutput extends ResourceOutput {\n /** Properties of the express route gateway. */\n properties?: ExpressRouteGatewayPropertiesOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** ExpressRoute gateway resource properties. */\nexport interface ExpressRouteGatewayPropertiesOutput {\n /** Configuration for auto scaling. */\n autoScaleConfiguration?: ExpressRouteGatewayPropertiesAutoScaleConfigurationOutput;\n /** List of ExpressRoute connections to the ExpressRoute gateway. */\n expressRouteConnections?: Array<ExpressRouteConnectionOutput>;\n /** The provisioning state of the express route gateway resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The Virtual Hub where the ExpressRoute gateway is or will be deployed. */\n virtualHub: VirtualHubIdOutput;\n}\n\n/** Configuration for auto scaling. */\nexport interface ExpressRouteGatewayPropertiesAutoScaleConfigurationOutput {\n /** Minimum and maximum number of scale units to deploy. */\n bounds?: ExpressRouteGatewayPropertiesAutoScaleConfigurationBoundsOutput;\n}\n\n/** Minimum and maximum number of scale units to deploy. */\nexport interface ExpressRouteGatewayPropertiesAutoScaleConfigurationBoundsOutput {\n /** Minimum number of scale units deployed for ExpressRoute gateway. */\n min?: number;\n /** Maximum number of scale units deployed for ExpressRoute gateway. */\n max?: number;\n}\n\n/** ExpressRouteConnection resource. */\nexport interface ExpressRouteConnectionOutput extends SubResourceOutput {\n /** Properties of the express route connection. */\n properties?: ExpressRouteConnectionPropertiesOutput;\n /** The name of the resource. */\n name: string;\n}\n\n/** Properties of the ExpressRouteConnection subresource. */\nexport interface ExpressRouteConnectionPropertiesOutput {\n /** The provisioning state of the express route connection resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The ExpressRoute circuit peering. */\n expressRouteCircuitPeering: ExpressRouteCircuitPeeringIdOutput;\n /** Authorization key to establish the connection. */\n authorizationKey?: string;\n /** The routing weight associated to the connection. */\n routingWeight?: number;\n /** Enable internet security. */\n enableInternetSecurity?: boolean;\n /** Enable FastPath to vWan Firewall hub. */\n expressRouteGatewayBypass?: boolean;\n /** Bypass the ExpressRoute gateway when accessing private-links. ExpressRoute FastPath (expressRouteGatewayBypass) must be enabled. */\n enablePrivateLinkFastPath?: boolean;\n /** The Routing Configuration indicating the associated and propagated route tables on this connection. */\n routingConfiguration?: RoutingConfigurationOutput;\n}\n\n/** ExpressRoute circuit peering identifier. */\nexport interface ExpressRouteCircuitPeeringIdOutput {\n /** The ID of the ExpressRoute circuit peering. */\n id?: string;\n}\n\n/** Virtual Hub identifier. */\nexport interface VirtualHubIdOutput {\n /** The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription. */\n id?: string;\n}\n\n/** ExpressRouteConnection list. */\nexport interface ExpressRouteConnectionListOutput {\n /** The list of ExpressRoute connections. */\n value?: Array<ExpressRouteConnectionOutput>;\n}\n\n/** Virtual Appliance Site resource. */\nexport interface BgpConnectionOutput extends SubResourceOutput {\n /** The properties of the Bgp connections. */\n properties?: BgpConnectionPropertiesOutput;\n /** Name of the connection. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Connection type. */\n readonly type?: string;\n}\n\n/** Properties of the bgp connection. */\nexport interface BgpConnectionPropertiesOutput {\n /** Peer ASN. */\n peerAsn?: number;\n /** Peer IP. */\n peerIp?: string;\n /** The reference to the HubVirtualNetworkConnection resource. */\n hubVirtualNetworkConnection?: SubResourceOutput;\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** The current state of the VirtualHub to Peer. */\n readonly connectionState?: \"Unknown\" | \"Connecting\" | \"Connected\" | \"NotConnected\";\n}\n\n/** VirtualHubBgpConnections list. */\nexport interface ListVirtualHubBgpConnectionResultsOutput {\n /** The list of VirtualHubBgpConnections. */\n value?: Array<BgpConnectionOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** List of virtual router peer routes. */\nexport interface PeerRouteListOutput {\n /** List of peer routes. */\n value?: Array<PeerRouteOutput>;\n}\n\n/** Peer routing details. */\nexport interface PeerRouteOutput {\n /** The peer's local address. */\n readonly localAddress?: string;\n /** The route's network prefix. */\n readonly network?: string;\n /** The route's next hop. */\n readonly nextHop?: string;\n /** The peer this route was learned from. */\n readonly sourcePeer?: string;\n /** The source this route was learned from. */\n readonly origin?: string;\n /** The route's AS path sequence. */\n readonly asPath?: string;\n /** The route's weight. */\n readonly weight?: number;\n}\n\n/** IpConfigurations. */\nexport interface HubIpConfigurationOutput extends SubResourceOutput {\n /** The properties of the Virtual Hub IPConfigurations. */\n properties?: HubIPConfigurationPropertiesFormatOutput;\n /** Name of the Ip Configuration. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Ipconfiguration type. */\n readonly type?: string;\n}\n\n/** Properties of IP configuration. */\nexport interface HubIPConfigurationPropertiesFormatOutput {\n /** The private IP address of the IP configuration. */\n privateIPAddress?: string;\n /** The private IP address allocation method. */\n privateIPAllocationMethod?: \"Static\" | \"Dynamic\";\n /** The reference to the subnet resource. */\n subnet?: SubnetOutput;\n /** The reference to the public IP resource. */\n publicIPAddress?: PublicIPAddressOutput;\n /** The provisioning state of the IP configuration resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** VirtualHubIpConfigurations list. */\nexport interface ListVirtualHubIpConfigurationResultsOutput {\n /** The list of VirtualHubIpConfigurations. */\n value?: Array<HubIpConfigurationOutput>;\n /** URL to get the next set of results. */\n nextLink?: string;\n}\n\n/** RouteTable resource in a virtual hub. */\nexport interface HubRouteTableOutput extends SubResourceOutput {\n /** Properties of the RouteTable resource. */\n properties?: HubRouteTablePropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** Parameters for RouteTable. */\nexport interface HubRouteTablePropertiesOutput {\n /** List of all routes. */\n routes?: Array<HubRouteOutput>;\n /** List of labels associated with this route table. */\n labels?: Array<string>;\n /** List of all connections associated with this route table. */\n readonly associatedConnections?: Array<string>;\n /** List of all connections that advertise to this route table. */\n readonly propagatingConnections?: Array<string>;\n /** The provisioning state of the RouteTable resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** RouteTable route. */\nexport interface HubRouteOutput {\n /** The name of the Route that is unique within a RouteTable. This name can be used to access this route. */\n name: string;\n /** The type of destinations (eg: CIDR, ResourceId, Service). */\n destinationType: string;\n /** List of all destinations. */\n destinations: Array<string>;\n /** The type of next hop (eg: ResourceId). */\n nextHopType: string;\n /** NextHop resource ID. */\n nextHop: string;\n}\n\n/** List of RouteTables and a URL nextLink to get the next set of results. */\nexport interface ListHubRouteTablesResultOutput {\n /** List of RouteTables. */\n value?: Array<HubRouteTableOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** The routing intent child resource of a Virtual hub. */\nexport interface RoutingIntentOutput extends SubResourceOutput {\n /** Properties of the RoutingIntent resource. */\n properties?: RoutingIntentPropertiesOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n}\n\n/** The properties of a RoutingIntent resource. */\nexport interface RoutingIntentPropertiesOutput {\n /** List of routing policies. */\n routingPolicies?: Array<RoutingPolicyOutput>;\n /** The provisioning state of the RoutingIntent resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** The routing policy object used in a RoutingIntent resource. */\nexport interface RoutingPolicyOutput {\n /** The unique name for the routing policy. */\n name: string;\n /** List of all destinations which this routing policy is applicable to (for example: Internet, PrivateTraffic). */\n destinations: Array<string>;\n /** The next hop resource id on which this routing policy is applicable to. */\n nextHop: string;\n}\n\n/** List of the routing intent result and a URL nextLink to get the next set of results. */\nexport interface ListRoutingIntentResultOutput {\n /** List of RoutingIntent resource. */\n value?: Array<RoutingIntentOutput>;\n /** URL to get the next set of operation list results if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list WebApplicationFirewallPolicies. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results. */\nexport interface WebApplicationFirewallPolicyListResultOutput {\n /** List of WebApplicationFirewallPolicies within a resource group. */\n readonly value?: Array<WebApplicationFirewallPolicyOutput>;\n /** URL to get the next set of WebApplicationFirewallPolicy objects if there are any. */\n readonly nextLink?: string;\n}\n\n/** Defines web application firewall policy. */\nexport interface WebApplicationFirewallPolicyOutput extends ResourceOutput {\n /** Properties of the web application firewall policy. */\n properties?: WebApplicationFirewallPolicyPropertiesFormatOutput;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Defines web application firewall policy properties. */\nexport interface WebApplicationFirewallPolicyPropertiesFormatOutput {\n /** The PolicySettings for policy. */\n policySettings?: PolicySettingsOutput;\n /** The custom rules inside the policy. */\n customRules?: Array<WebApplicationFirewallCustomRuleOutput>;\n /** A collection of references to application gateways. */\n readonly applicationGateways?: Array<ApplicationGatewayOutput>;\n /** The provisioning state of the web application firewall policy resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n /** Resource status of the policy. */\n readonly resourceState?:\n | \"Creating\"\n | \"Enabling\"\n | \"Enabled\"\n | \"Disabling\"\n | \"Disabled\"\n | \"Deleting\";\n /** Describes the managedRules structure. */\n managedRules: ManagedRulesDefinitionOutput;\n /** A collection of references to application gateway http listeners. */\n readonly httpListeners?: Array<SubResourceOutput>;\n /** A collection of references to application gateway path rules. */\n readonly pathBasedRules?: Array<SubResourceOutput>;\n}\n\n/** Defines contents of a web application firewall global configuration. */\nexport interface PolicySettingsOutput {\n /** The state of the policy. */\n state?: \"Disabled\" | \"Enabled\";\n /** The mode of the policy. */\n mode?: \"Prevention\" | \"Detection\";\n /** Whether to allow WAF to check request Body. */\n requestBodyCheck?: boolean;\n /** Maximum request body size in Kb for WAF. */\n maxRequestBodySizeInKb?: number;\n /** Maximum file upload size in Mb for WAF. */\n fileUploadLimitInMb?: number;\n}\n\n/** Defines contents of a web application rule. */\nexport interface WebApplicationFirewallCustomRuleOutput {\n /** The name of the resource that is unique within a policy. This name can be used to access the resource. */\n name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. */\n priority: number;\n /** The rule type. */\n ruleType: \"MatchRule\" | \"Invalid\";\n /** List of match conditions. */\n matchConditions: Array<MatchConditionOutput>;\n /** Type of Actions. */\n action: \"Allow\" | \"Block\" | \"Log\";\n}\n\n/** Define match conditions. */\nexport interface MatchConditionOutput {\n /** List of match variables. */\n matchVariables: Array<MatchVariableOutput>;\n /** The operator to be matched. */\n operator:\n | \"IPMatch\"\n | \"Equal\"\n | \"Contains\"\n | \"LessThan\"\n | \"GreaterThan\"\n | \"LessThanOrEqual\"\n | \"GreaterThanOrEqual\"\n | \"BeginsWith\"\n | \"EndsWith\"\n | \"Regex\"\n | \"GeoMatch\"\n | \"Any\";\n /** Whether this is negate condition or not. */\n negationConditon?: boolean;\n /** Match value. */\n matchValues: Array<string>;\n /** List of transforms. */\n transforms?: Array<\n | \"Uppercase\"\n | \"Lowercase\"\n | \"Trim\"\n | \"UrlDecode\"\n | \"UrlEncode\"\n | \"RemoveNulls\"\n | \"HtmlEntityDecode\"\n >;\n}\n\n/** Define match variables. */\nexport interface MatchVariableOutput {\n /** Match Variable. */\n variableName:\n | \"RemoteAddr\"\n | \"RequestMethod\"\n | \"QueryString\"\n | \"PostArgs\"\n | \"RequestUri\"\n | \"RequestHeaders\"\n | \"RequestBody\"\n | \"RequestCookies\";\n /** The selector of match variable. */\n selector?: string;\n}\n\n/** Allow to exclude some variable satisfy the condition for the WAF check. */\nexport interface ManagedRulesDefinitionOutput {\n /** The Exclusions that are applied on the policy. */\n exclusions?: Array<OwaspCrsExclusionEntryOutput>;\n /** The managed rule sets that are associated with the policy. */\n managedRuleSets: Array<ManagedRuleSetOutput>;\n}\n\n/** Allow to exclude some variable satisfy the condition for the WAF check. */\nexport interface OwaspCrsExclusionEntryOutput {\n /** The variable to be excluded. */\n matchVariable:\n | \"RequestHeaderNames\"\n | \"RequestCookieNames\"\n | \"RequestArgNames\"\n | \"RequestHeaderKeys\"\n | \"RequestHeaderValues\"\n | \"RequestCookieKeys\"\n | \"RequestCookieValues\"\n | \"RequestArgKeys\"\n | \"RequestArgValues\";\n /** When matchVariable is a collection, operate on the selector to specify which elements in the collection this exclusion applies to. */\n selectorMatchOperator: \"Equals\" | \"Contains\" | \"StartsWith\" | \"EndsWith\" | \"EqualsAny\";\n /** When matchVariable is a collection, operator used to specify which elements in the collection this exclusion applies to. */\n selector: string;\n /** The managed rule sets that are associated with the exclusion. */\n exclusionManagedRuleSets?: Array<ExclusionManagedRuleSetOutput>;\n}\n\n/** Defines a managed rule set for Exclusions. */\nexport interface ExclusionManagedRuleSetOutput {\n /** Defines the rule set type to use. */\n ruleSetType: string;\n /** Defines the version of the rule set to use. */\n ruleSetVersion: string;\n /** Defines the rule groups to apply to the rule set. */\n ruleGroups?: Array<ExclusionManagedRuleGroupOutput>;\n}\n\n/** Defines a managed rule group to use for exclusion. */\nexport interface ExclusionManagedRuleGroupOutput {\n /** The managed rule group for exclusion. */\n ruleGroupName: string;\n /** List of rules that will be excluded. If none specified, all rules in the group will be excluded. */\n rules?: Array<ExclusionManagedRuleOutput>;\n}\n\n/** Defines a managed rule to use for exclusion. */\nexport interface ExclusionManagedRuleOutput {\n /** Identifier for the managed rule. */\n ruleId: string;\n}\n\n/** Defines a managed rule set. */\nexport interface ManagedRuleSetOutput {\n /** Defines the rule set type to use. */\n ruleSetType: string;\n /** Defines the version of the rule set to use. */\n ruleSetVersion: string;\n /** Defines the rule group overrides to apply to the rule set. */\n ruleGroupOverrides?: Array<ManagedRuleGroupOverrideOutput>;\n}\n\n/** Defines a managed rule group override setting. */\nexport interface ManagedRuleGroupOverrideOutput {\n /** The managed rule group to override. */\n ruleGroupName: string;\n /** List of rules that will be disabled. If none specified, all rules in the group will be disabled. */\n rules?: Array<ManagedRuleOverrideOutput>;\n}\n\n/** Defines a managed rule group override setting. */\nexport interface ManagedRuleOverrideOutput {\n /** Identifier for the managed rule. */\n ruleId: string;\n /** The state of the managed rule. Defaults to Disabled if not specified. */\n state?: \"Disabled\" | \"Enabled\";\n /** Describes the override action to be applied when rule matches. */\n action?: \"AnomalyScoring\" | \"Allow\" | \"Block\" | \"Log\";\n}\n\n/** SwapResource to represent slot type on the specified cloud service. */\nexport interface SwapResourceOutput {\n /** Resource Id. */\n readonly id?: string;\n /** Resource name. */\n readonly name?: string;\n /** Resource type. */\n readonly type?: string;\n /** Swap resource properties */\n properties?: SwapResourcePropertiesOutput;\n}\n\n/** Swap resource properties */\nexport interface SwapResourcePropertiesOutput {\n /** Specifies slot info on a cloud service */\n slotType?: \"Production\" | \"Staging\";\n}\n\n/** SwapResource List with single entry to represent slot type on the specified cloud service. */\nexport interface SwapResourceListResultOutput {\n value?: Array<SwapResourceOutput>;\n}\n\n/** Firewall Policy NAT Rule Collection. */\nexport interface FirewallPolicyNatRuleCollectionOutput\n extends FirewallPolicyRuleCollectionOutputParent {\n /** The action type of a Nat rule collection. */\n action?: FirewallPolicyNatRuleCollectionActionOutput;\n /** List of rules included in a rule collection. */\n rules?: Array<FirewallPolicyRuleOutput>;\n ruleCollectionType: \"FirewallPolicyNatRuleCollection\";\n}\n\n/** Properties of the FirewallPolicyNatRuleCollectionAction. */\nexport interface FirewallPolicyNatRuleCollectionActionOutput {\n /** The type of action. */\n type?: \"DNAT\";\n}\n\n/** Properties of a rule. */\nexport interface FirewallPolicyRuleOutputParent {\n /** Name of the rule. */\n name?: string;\n /** Description of the rule. */\n description?: string;\n ruleType: \"FirewallPolicyRule\" | \"ApplicationRule\" | \"NatRule\" | \"NetworkRule\";\n}\n\n/** Firewall Policy Filter Rule Collection. */\nexport interface FirewallPolicyFilterRuleCollectionOutput\n extends FirewallPolicyRuleCollectionOutputParent {\n /** The action type of a Filter rule collection. */\n action?: FirewallPolicyFilterRuleCollectionActionOutput;\n /** List of rules included in a rule collection. */\n rules?: Array<FirewallPolicyRuleOutput>;\n ruleCollectionType: \"FirewallPolicyFilterRuleCollection\";\n}\n\n/** Properties of the FirewallPolicyFilterRuleCollectionAction. */\nexport interface FirewallPolicyFilterRuleCollectionActionOutput {\n /** The type of action. */\n type?: \"Allow\" | \"Deny\";\n}\n\n/** Rule of type application. */\nexport interface ApplicationRuleOutput extends FirewallPolicyRuleOutputParent {\n /** List of source IP addresses for this rule. */\n sourceAddresses?: Array<string>;\n /** List of destination IP addresses or Service Tags. */\n destinationAddresses?: Array<string>;\n /** Array of Application Protocols. */\n protocols?: Array<FirewallPolicyRuleApplicationProtocolOutput>;\n /** List of FQDNs for this rule. */\n targetFqdns?: Array<string>;\n /** List of Urls for this rule condition. */\n targetUrls?: Array<string>;\n /** List of FQDN Tags for this rule. */\n fqdnTags?: Array<string>;\n /** List of source IpGroups for this rule. */\n sourceIpGroups?: Array<string>;\n /** Terminate TLS connections for this rule. */\n terminateTLS?: boolean;\n /** List of destination azure web categories. */\n webCategories?: Array<string>;\n ruleType: \"ApplicationRule\";\n}\n\n/** Properties of the application rule protocol. */\nexport interface FirewallPolicyRuleApplicationProtocolOutput {\n /** Protocol type. */\n protocolType?: \"Http\" | \"Https\";\n /** Port number for the protocol, cannot be greater than 64000. */\n port?: number;\n}\n\n/** Rule of type nat. */\nexport interface NatRuleOutput extends FirewallPolicyRuleOutputParent {\n /** Array of FirewallPolicyRuleNetworkProtocols. */\n ipProtocols?: Array<\"TCP\" | \"UDP\" | \"Any\" | \"ICMP\">;\n /** List of source IP addresses for this rule. */\n sourceAddresses?: Array<string>;\n /** List of destination IP addresses or Service Tags. */\n destinationAddresses?: Array<string>;\n /** List of destination ports. */\n destinationPorts?: Array<string>;\n /** The translated address for this NAT rule. */\n translatedAddress?: string;\n /** The translated port for this NAT rule. */\n translatedPort?: string;\n /** List of source IpGroups for this rule. */\n sourceIpGroups?: Array<string>;\n /** The translated FQDN for this NAT rule. */\n translatedFqdn?: string;\n ruleType: \"NatRule\";\n}\n\n/** Rule of type network. */\nexport interface NetworkRuleOutput extends FirewallPolicyRuleOutputParent {\n /** Array of FirewallPolicyRuleNetworkProtocols. */\n ipProtocols?: Array<\"TCP\" | \"UDP\" | \"Any\" | \"ICMP\">;\n /** List of source IP addresses for this rule. */\n sourceAddresses?: Array<string>;\n /** List of destination IP addresses or Service Tags. */\n destinationAddresses?: Array<string>;\n /** List of destination ports. */\n destinationPorts?: Array<string>;\n /** List of source IpGroups for this rule. */\n sourceIpGroups?: Array<string>;\n /** List of destination IpGroups for this rule. */\n destinationIpGroups?: Array<string>;\n /** List of destination FQDNs. */\n destinationFqdns?: Array<string>;\n ruleType: \"NetworkRule\";\n}\n\n/** Network admin rule. */\nexport interface ActiveSecurityAdminRuleOutput extends ActiveBaseSecurityAdminRuleOutputParent {\n /** Indicates the properties of the security admin rule */\n properties?: AdminPropertiesFormatOutput;\n kind: \"Custom\";\n}\n\n/** Security admin rule resource. */\nexport interface AdminPropertiesFormatOutput {\n /** A description for this rule. Restricted to 140 chars. */\n description?: string;\n /** Network protocol this rule applies to. */\n protocol: \"Tcp\" | \"Udp\" | \"Icmp\" | \"Esp\" | \"Any\" | \"Ah\";\n /** The CIDR or source IP ranges. */\n sources?: Array<AddressPrefixItemOutput>;\n /** The destination address prefixes. CIDR or destination IP ranges. */\n destinations?: Array<AddressPrefixItemOutput>;\n /** The source port ranges. */\n sourcePortRanges?: Array<string>;\n /** The destination port ranges. */\n destinationPortRanges?: Array<string>;\n /** Indicates the access allowed for this particular rule */\n access: \"Allow\" | \"Deny\" | \"AlwaysAllow\";\n /** The priority of the rule. The value can be between 1 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. */\n priority: number;\n /** Indicates if the traffic matched against the rule in inbound or outbound. */\n direction: \"Inbound\" | \"Outbound\";\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Address prefix item. */\nexport interface AddressPrefixItemOutput {\n /** Address prefix. */\n addressPrefix?: string;\n /** Address prefix type. */\n addressPrefixType?: \"IPPrefix\" | \"ServiceTag\";\n}\n\n/** Network default admin rule. */\nexport interface ActiveDefaultSecurityAdminRuleOutput\n extends ActiveBaseSecurityAdminRuleOutputParent {\n /** Indicates the properties of the default security admin rule */\n properties?: DefaultAdminPropertiesFormatOutput;\n kind: \"Default\";\n}\n\n/** Security default admin rule resource. */\nexport interface DefaultAdminPropertiesFormatOutput {\n /** A description for this rule. Restricted to 140 chars. */\n readonly description?: string;\n /** Default rule flag. */\n flag?: string;\n /** Network protocol this rule applies to. */\n readonly protocol?: \"Tcp\" | \"Udp\" | \"Icmp\" | \"Esp\" | \"Any\" | \"Ah\";\n /** The CIDR or source IP ranges. */\n readonly sources?: Array<AddressPrefixItemOutput>;\n /** The destination address prefixes. CIDR or destination IP ranges. */\n readonly destinations?: Array<AddressPrefixItemOutput>;\n /** The source port ranges. */\n readonly sourcePortRanges?: Array<string>;\n /** The destination port ranges. */\n readonly destinationPortRanges?: Array<string>;\n /** Indicates the access allowed for this particular rule */\n readonly access?: \"Allow\" | \"Deny\" | \"AlwaysAllow\";\n /** The priority of the rule. The value can be between 1 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. */\n readonly priority?: number;\n /** Indicates if the traffic matched against the rule in inbound or outbound. */\n readonly direction?: \"Inbound\" | \"Outbound\";\n /** The provisioning state of the resource. */\n readonly provisioningState?: \"Succeeded\" | \"Updating\" | \"Deleting\" | \"Failed\";\n}\n\n/** Network admin rule. */\nexport interface EffectiveSecurityAdminRuleOutput\n extends EffectiveBaseSecurityAdminRuleOutputParent {\n /** Indicates the properties of the security admin rule */\n properties?: AdminPropertiesFormatOutput;\n kind: \"Custom\";\n}\n\n/** Network default admin rule. */\nexport interface EffectiveDefaultSecurityAdminRuleOutput\n extends EffectiveBaseSecurityAdminRuleOutputParent {\n /** Indicates the properties of the default security admin rule */\n properties?: DefaultAdminPropertiesFormatOutput;\n kind: \"Default\";\n}\n\n/** Network admin rule. */\nexport interface AdminRuleOutput extends BaseAdminRuleOutputParent {\n /** Indicates the properties of the security admin rule */\n properties?: AdminPropertiesFormatOutput;\n kind: \"Custom\";\n}\n\n/** Network default admin rule. */\nexport interface DefaultAdminRuleOutput extends BaseAdminRuleOutputParent {\n /** Indicates the properties of the security admin rule */\n properties?: DefaultAdminPropertiesFormatOutput;\n kind: \"Default\";\n}\n\n/** Route Filter Rule Resource. */\nexport interface PatchRouteFilterRuleOutput extends SubResourceOutput {\n /** Properties of the route filter rule. */\n properties?: RouteFilterRulePropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n readonly name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n}\n\n/** Route Filter Resource. */\nexport interface PatchRouteFilterOutput extends SubResourceOutput {\n /** Properties of the route filter. */\n properties?: RouteFilterPropertiesFormatOutput;\n /** The name of the resource that is unique within a resource group. This name can be used to access the resource. */\n readonly name?: string;\n /** A unique read-only string that changes whenever the resource is updated. */\n readonly etag?: string;\n /** Resource type. */\n readonly type?: string;\n /** Resource tags. */\n tags?: Record<string, string>;\n}\n\n/** Properties of the rule collection. */\nexport type FirewallPolicyRuleCollectionOutput =\n | FirewallPolicyNatRuleCollectionOutput\n | FirewallPolicyFilterRuleCollectionOutput;\n/** Network base admin rule. */\nexport type ActiveBaseSecurityAdminRuleOutput =\n | ActiveSecurityAdminRuleOutput\n | ActiveDefaultSecurityAdminRuleOutput;\n/** Network base admin rule. */\nexport type EffectiveBaseSecurityAdminRuleOutput =\n | EffectiveSecurityAdminRuleOutput\n | EffectiveDefaultSecurityAdminRuleOutput;\n/** Network base admin rule. */\nexport type BaseAdminRuleOutput = AdminRuleOutput | DefaultAdminRuleOutput;\n/** Properties of a rule. */\nexport type FirewallPolicyRuleOutput = ApplicationRuleOutput | NatRuleOutput | NetworkRuleOutput;\n"]}
|