@microsoft/terraform-cdk-constructs 1.2.0 → 1.3.1
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/.jsii +54630 -26185
- package/API.md +72091 -23784
- package/lib/azure-actiongroup/index.d.ts +0 -10
- package/lib/azure-actiongroup/index.js +1 -11
- package/lib/azure-actiongroup/lib/action-group.d.ts +0 -10
- package/lib/azure-actiongroup/lib/action-group.js +6 -32
- package/lib/azure-actiongroup/lib/index.d.ts +1 -4
- package/lib/azure-actiongroup/lib/index.js +2 -5
- package/lib/azure-activitylogalert/index.d.ts +0 -10
- package/lib/azure-activitylogalert/index.js +1 -11
- package/lib/azure-activitylogalert/lib/activity-log-alert.d.ts +0 -10
- package/lib/azure-activitylogalert/lib/activity-log-alert.js +6 -32
- package/lib/azure-activitylogalert/lib/index.d.ts +1 -4
- package/lib/azure-activitylogalert/lib/index.js +2 -5
- package/lib/azure-aks/index.d.ts +0 -8
- package/lib/azure-aks/index.js +1 -11
- package/lib/azure-aks/lib/aks-cluster.d.ts +4 -13
- package/lib/azure-aks/lib/aks-cluster.js +13 -36
- package/lib/azure-aks/lib/index.d.ts +1 -10
- package/lib/azure-aks/lib/index.js +2 -21
- package/lib/azure-diagnosticsettings/index.d.ts +0 -6
- package/lib/azure-diagnosticsettings/index.js +1 -7
- package/lib/azure-diagnosticsettings/lib/diagnostic-settings.d.ts +0 -10
- package/lib/azure-diagnosticsettings/lib/diagnostic-settings.js +6 -32
- package/lib/azure-diagnosticsettings/lib/index.d.ts +1 -7
- package/lib/azure-diagnosticsettings/lib/index.js +2 -8
- package/lib/azure-dnsforwardingruleset/index.d.ts +1 -0
- package/lib/azure-dnsforwardingruleset/index.js +18 -0
- package/lib/azure-dnsforwardingruleset/lib/dns-forwarding-ruleset-schemas.d.ts +24 -0
- package/lib/azure-dnsforwardingruleset/lib/dns-forwarding-ruleset-schemas.js +206 -0
- package/lib/azure-dnsforwardingruleset/lib/dns-forwarding-ruleset.d.ts +174 -0
- package/lib/azure-dnsforwardingruleset/lib/dns-forwarding-ruleset.js +214 -0
- package/lib/azure-dnsforwardingruleset/lib/forwarding-rule-schemas.d.ts +24 -0
- package/lib/azure-dnsforwardingruleset/lib/forwarding-rule-schemas.js +242 -0
- package/lib/azure-dnsforwardingruleset/lib/forwarding-rule.d.ts +193 -0
- package/lib/azure-dnsforwardingruleset/lib/forwarding-rule.js +193 -0
- package/lib/azure-dnsforwardingruleset/lib/index.d.ts +6 -0
- package/lib/azure-dnsforwardingruleset/lib/index.js +23 -0
- package/lib/azure-dnsforwardingruleset/lib/virtual-network-link-schemas.d.ts +24 -0
- package/lib/azure-dnsforwardingruleset/lib/virtual-network-link-schemas.js +199 -0
- package/lib/azure-dnsforwardingruleset/lib/virtual-network-link.d.ts +160 -0
- package/lib/azure-dnsforwardingruleset/lib/virtual-network-link.js +178 -0
- package/lib/azure-dnsforwardingruleset/test/dns-forwarding-ruleset.integ.d.ts +9 -0
- package/lib/azure-dnsforwardingruleset/test/dns-forwarding-ruleset.integ.js +133 -0
- package/lib/azure-dnsforwardingruleset/test/dns-forwarding-ruleset.spec.d.ts +9 -0
- package/lib/azure-dnsforwardingruleset/test/dns-forwarding-ruleset.spec.js +350 -0
- package/lib/azure-dnsforwardingruleset/test/forwarding-rule.spec.d.ts +9 -0
- package/lib/azure-dnsforwardingruleset/test/forwarding-rule.spec.js +397 -0
- package/lib/azure-dnsforwardingruleset/test/virtual-network-link.spec.d.ts +9 -0
- package/lib/azure-dnsforwardingruleset/test/virtual-network-link.spec.js +285 -0
- package/lib/azure-dnsresolver/index.d.ts +1 -0
- package/lib/azure-dnsresolver/index.js +18 -0
- package/lib/azure-dnsresolver/lib/dns-resolver-schemas.d.ts +24 -0
- package/lib/azure-dnsresolver/lib/dns-resolver-schemas.js +218 -0
- package/lib/azure-dnsresolver/lib/dns-resolver.d.ts +170 -0
- package/lib/azure-dnsresolver/lib/dns-resolver.js +236 -0
- package/lib/azure-dnsresolver/lib/inbound-endpoint-schemas.d.ts +24 -0
- package/lib/azure-dnsresolver/lib/inbound-endpoint-schemas.js +261 -0
- package/lib/azure-dnsresolver/lib/inbound-endpoint.d.ts +189 -0
- package/lib/azure-dnsresolver/lib/inbound-endpoint.js +243 -0
- package/lib/azure-dnsresolver/lib/index.d.ts +6 -0
- package/lib/azure-dnsresolver/lib/index.js +23 -0
- package/lib/azure-dnsresolver/lib/outbound-endpoint-schemas.d.ts +24 -0
- package/lib/azure-dnsresolver/lib/outbound-endpoint-schemas.js +231 -0
- package/lib/azure-dnsresolver/lib/outbound-endpoint.d.ts +175 -0
- package/lib/azure-dnsresolver/lib/outbound-endpoint.js +234 -0
- package/lib/azure-dnsresolver/test/dns-resolver.integ.d.ts +14 -0
- package/lib/azure-dnsresolver/test/dns-resolver.integ.js +117 -0
- package/lib/azure-dnsresolver/test/dns-resolver.spec.d.ts +9 -0
- package/lib/azure-dnsresolver/test/dns-resolver.spec.js +353 -0
- package/lib/azure-dnsresolver/test/inbound-endpoint.integ.d.ts +9 -0
- package/lib/azure-dnsresolver/test/inbound-endpoint.integ.js +151 -0
- package/lib/azure-dnsresolver/test/inbound-endpoint.spec.d.ts +9 -0
- package/lib/azure-dnsresolver/test/inbound-endpoint.spec.js +441 -0
- package/lib/azure-dnsresolver/test/outbound-endpoint.integ.d.ts +9 -0
- package/lib/azure-dnsresolver/test/outbound-endpoint.integ.js +149 -0
- package/lib/azure-dnsresolver/test/outbound-endpoint.spec.d.ts +9 -0
- package/lib/azure-dnsresolver/test/outbound-endpoint.spec.js +301 -0
- package/lib/azure-dnszone/index.d.ts +1 -0
- package/lib/azure-dnszone/index.js +18 -0
- package/lib/azure-dnszone/lib/dns-zone-schemas.d.ts +24 -0
- package/lib/azure-dnszone/lib/dns-zone-schemas.js +191 -0
- package/lib/azure-dnszone/lib/dns-zone.d.ts +182 -0
- package/lib/azure-dnszone/lib/dns-zone.js +228 -0
- package/lib/azure-dnszone/lib/index.d.ts +2 -0
- package/lib/azure-dnszone/lib/index.js +19 -0
- package/lib/azure-dnszone/test/dns-zone.integ.d.ts +9 -0
- package/lib/azure-dnszone/test/dns-zone.integ.js +85 -0
- package/lib/azure-dnszone/test/dns-zone.spec.d.ts +9 -0
- package/lib/azure-dnszone/test/dns-zone.spec.js +285 -0
- package/lib/azure-metricalert/index.d.ts +0 -10
- package/lib/azure-metricalert/index.js +1 -11
- package/lib/azure-metricalert/lib/index.d.ts +1 -4
- package/lib/azure-metricalert/lib/index.js +2 -5
- package/lib/azure-metricalert/lib/metric-alert.d.ts +0 -10
- package/lib/azure-metricalert/lib/metric-alert.js +6 -32
- package/lib/azure-networkinterface/index.d.ts +0 -3
- package/lib/azure-networkinterface/index.js +1 -4
- package/lib/azure-networkinterface/lib/index.d.ts +1 -5
- package/lib/azure-networkinterface/lib/index.js +2 -5
- package/lib/azure-networkinterface/lib/network-interface.d.ts +4 -9
- package/lib/azure-networkinterface/lib/network-interface.js +14 -29
- package/lib/azure-networkinterface/test/network-interface.integ.js +20 -6
- package/lib/azure-networksecuritygroup/index.d.ts +0 -5
- package/lib/azure-networksecuritygroup/index.js +1 -6
- package/lib/azure-networksecuritygroup/lib/index.d.ts +2 -5
- package/lib/azure-networksecuritygroup/lib/index.js +17 -14
- package/lib/azure-networksecuritygroup/lib/network-security-group.d.ts +4 -13
- package/lib/azure-networksecuritygroup/lib/network-security-group.js +14 -36
- package/lib/azure-policyassignment/index.d.ts +1 -0
- package/lib/azure-policyassignment/index.js +18 -0
- package/lib/azure-policyassignment/lib/index.d.ts +2 -0
- package/lib/azure-policyassignment/lib/index.js +19 -0
- package/lib/azure-policyassignment/lib/policy-assignment-schemas.d.ts +25 -0
- package/lib/azure-policyassignment/lib/policy-assignment-schemas.js +260 -0
- package/lib/azure-policyassignment/lib/policy-assignment.d.ts +349 -0
- package/lib/azure-policyassignment/lib/policy-assignment.js +237 -0
- package/lib/azure-policyassignment/test/policy-assignment.integ.d.ts +13 -0
- package/lib/azure-policyassignment/test/policy-assignment.integ.js +153 -0
- package/lib/azure-policyassignment/test/policy-assignment.spec.d.ts +9 -0
- package/lib/azure-policyassignment/test/policy-assignment.spec.js +651 -0
- package/lib/azure-policydefinition/index.d.ts +1 -0
- package/lib/azure-policydefinition/index.js +18 -0
- package/lib/azure-policydefinition/lib/index.d.ts +2 -0
- package/lib/azure-policydefinition/lib/index.js +19 -0
- package/lib/azure-policydefinition/lib/policy-definition-schemas.d.ts +25 -0
- package/lib/azure-policydefinition/lib/policy-definition-schemas.js +210 -0
- package/lib/azure-policydefinition/lib/policy-definition.d.ts +281 -0
- package/lib/azure-policydefinition/lib/policy-definition.js +236 -0
- package/lib/azure-policydefinition/test/policy-definition.integ.d.ts +9 -0
- package/lib/azure-policydefinition/test/policy-definition.integ.js +137 -0
- package/lib/azure-policydefinition/test/policy-definition.spec.d.ts +9 -0
- package/lib/azure-policydefinition/test/policy-definition.spec.js +806 -0
- package/lib/azure-privatednszone/index.d.ts +1 -0
- package/lib/azure-privatednszone/index.js +18 -0
- package/lib/azure-privatednszone/lib/index.d.ts +2 -0
- package/lib/azure-privatednszone/lib/index.js +19 -0
- package/lib/azure-privatednszone/lib/private-dns-zone-schemas.d.ts +24 -0
- package/lib/azure-privatednszone/lib/private-dns-zone-schemas.js +254 -0
- package/lib/azure-privatednszone/lib/private-dns-zone.d.ts +178 -0
- package/lib/azure-privatednszone/lib/private-dns-zone.js +272 -0
- package/lib/azure-privatednszone/test/private-dns-zone.integ.d.ts +9 -0
- package/lib/azure-privatednszone/test/private-dns-zone.integ.js +84 -0
- package/lib/azure-privatednszone/test/private-dns-zone.spec.d.ts +9 -0
- package/lib/azure-privatednszone/test/private-dns-zone.spec.js +341 -0
- package/lib/azure-privatednszonelink/index.d.ts +1 -0
- package/lib/azure-privatednszonelink/index.js +18 -0
- package/lib/azure-privatednszonelink/lib/index.d.ts +2 -0
- package/lib/azure-privatednszonelink/lib/index.js +19 -0
- package/lib/azure-privatednszonelink/lib/private-dns-zone-link-schemas.d.ts +24 -0
- package/lib/azure-privatednszonelink/lib/private-dns-zone-link-schemas.js +262 -0
- package/lib/azure-privatednszonelink/lib/private-dns-zone-link.d.ts +202 -0
- package/lib/azure-privatednszonelink/lib/private-dns-zone-link.js +250 -0
- package/lib/azure-privatednszonelink/test/private-dns-zone-link.integ.d.ts +9 -0
- package/lib/azure-privatednszonelink/test/private-dns-zone-link.integ.js +110 -0
- package/lib/azure-privatednszonelink/test/private-dns-zone-link.spec.d.ts +9 -0
- package/lib/azure-privatednszonelink/test/private-dns-zone-link.spec.js +465 -0
- package/lib/azure-publicipaddress/index.d.ts +0 -5
- package/lib/azure-publicipaddress/index.js +1 -6
- package/lib/azure-publicipaddress/lib/index.d.ts +2 -9
- package/lib/azure-publicipaddress/lib/index.js +17 -17
- package/lib/azure-publicipaddress/lib/public-ip-address.d.ts +4 -13
- package/lib/azure-publicipaddress/lib/public-ip-address.js +14 -36
- package/lib/azure-resourcegroup/index.d.ts +0 -37
- package/lib/azure-resourcegroup/index.js +1 -39
- package/lib/azure-resourcegroup/lib/index.d.ts +1 -44
- package/lib/azure-resourcegroup/lib/index.js +2 -43
- package/lib/azure-resourcegroup/lib/resource-group.d.ts +9 -23
- package/lib/azure-resourcegroup/lib/resource-group.js +23 -56
- package/lib/azure-resourcegroup/test/resource-group.spec.js +13 -19
- package/lib/azure-roleassignment/index.d.ts +1 -0
- package/lib/azure-roleassignment/index.js +18 -0
- package/lib/azure-roleassignment/lib/index.d.ts +2 -0
- package/lib/azure-roleassignment/lib/index.js +19 -0
- package/lib/azure-roleassignment/lib/role-assignment-schemas.d.ts +25 -0
- package/lib/azure-roleassignment/lib/role-assignment-schemas.js +238 -0
- package/lib/azure-roleassignment/lib/role-assignment.d.ts +294 -0
- package/lib/azure-roleassignment/lib/role-assignment.js +257 -0
- package/lib/azure-roleassignment/test/role-assignment.integ.d.ts +12 -0
- package/lib/azure-roleassignment/test/role-assignment.integ.js +101 -0
- package/lib/azure-roleassignment/test/role-assignment.spec.d.ts +9 -0
- package/lib/azure-roleassignment/test/role-assignment.spec.js +633 -0
- package/lib/azure-roledefinition/index.d.ts +1 -0
- package/lib/azure-roledefinition/index.js +18 -0
- package/lib/azure-roledefinition/lib/index.d.ts +2 -0
- package/lib/azure-roledefinition/lib/index.js +19 -0
- package/lib/azure-roledefinition/lib/role-definition-schemas.d.ts +25 -0
- package/lib/azure-roledefinition/lib/role-definition-schemas.js +195 -0
- package/lib/azure-roledefinition/lib/role-definition.d.ts +236 -0
- package/lib/azure-roledefinition/lib/role-definition.js +192 -0
- package/lib/azure-roledefinition/test/role-definition.integ.d.ts +12 -0
- package/lib/azure-roledefinition/test/role-definition.integ.js +142 -0
- package/lib/azure-roledefinition/test/role-definition.spec.d.ts +9 -0
- package/lib/azure-roledefinition/test/role-definition.spec.js +946 -0
- package/lib/azure-storageaccount/index.d.ts +0 -19
- package/lib/azure-storageaccount/index.js +1 -20
- package/lib/azure-storageaccount/lib/index.d.ts +1 -7
- package/lib/azure-storageaccount/lib/index.js +2 -8
- package/lib/azure-storageaccount/lib/storage-account.d.ts +4 -9
- package/lib/azure-storageaccount/lib/storage-account.js +15 -29
- package/lib/azure-subnet/index.d.ts +0 -3
- package/lib/azure-subnet/index.js +1 -4
- package/lib/azure-subnet/lib/index.d.ts +1 -4
- package/lib/azure-subnet/lib/index.js +2 -5
- package/lib/azure-subnet/lib/subnet.d.ts +3 -14
- package/lib/azure-subnet/lib/subnet.js +28 -47
- package/lib/azure-subnet/test/subnet.integ.js +19 -7
- package/lib/azure-subnet/test/subnet.spec.js +1 -2
- package/lib/azure-virtualmachine/index.d.ts +0 -6
- package/lib/azure-virtualmachine/index.js +1 -7
- package/lib/azure-virtualmachine/lib/index.d.ts +1 -10
- package/lib/azure-virtualmachine/lib/index.js +2 -21
- package/lib/azure-virtualmachine/lib/virtual-machine.d.ts +4 -13
- package/lib/azure-virtualmachine/lib/virtual-machine.js +15 -36
- package/lib/azure-virtualnetwork/index.d.ts +0 -9
- package/lib/azure-virtualnetwork/index.js +1 -11
- package/lib/azure-virtualnetwork/lib/index.d.ts +2 -9
- package/lib/azure-virtualnetwork/lib/index.js +17 -20
- package/lib/azure-virtualnetwork/lib/virtual-network.d.ts +4 -13
- package/lib/azure-virtualnetwork/lib/virtual-network.js +15 -36
- package/lib/azure-virtualnetworkmanager/index.d.ts +1 -0
- package/lib/azure-virtualnetworkmanager/index.js +18 -0
- package/lib/azure-virtualnetworkmanager/lib/connectivity-configuration-schemas.d.ts +48 -0
- package/lib/azure-virtualnetworkmanager/lib/connectivity-configuration-schemas.js +265 -0
- package/lib/azure-virtualnetworkmanager/lib/connectivity-configuration.d.ts +185 -0
- package/lib/azure-virtualnetworkmanager/lib/connectivity-configuration.js +206 -0
- package/lib/azure-virtualnetworkmanager/lib/index.d.ts +14 -0
- package/lib/azure-virtualnetworkmanager/lib/index.js +31 -0
- package/lib/azure-virtualnetworkmanager/lib/network-group-schemas.d.ts +32 -0
- package/lib/azure-virtualnetworkmanager/lib/network-group-schemas.js +189 -0
- package/lib/azure-virtualnetworkmanager/lib/network-group-static-member-schemas.d.ts +32 -0
- package/lib/azure-virtualnetworkmanager/lib/network-group-static-member-schemas.js +201 -0
- package/lib/azure-virtualnetworkmanager/lib/network-group-static-member.d.ts +135 -0
- package/lib/azure-virtualnetworkmanager/lib/network-group-static-member.js +163 -0
- package/lib/azure-virtualnetworkmanager/lib/network-group.d.ts +139 -0
- package/lib/azure-virtualnetworkmanager/lib/network-group.js +158 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-configuration-schemas.d.ts +32 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-configuration-schemas.js +182 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-configuration.d.ts +144 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-configuration.js +164 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule-collection-schemas.d.ts +38 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule-collection-schemas.js +206 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule-collection.d.ts +142 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule-collection.js +162 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule-schemas.d.ts +39 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule-schemas.js +359 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule.d.ts +221 -0
- package/lib/azure-virtualnetworkmanager/lib/security-admin-rule.js +204 -0
- package/lib/azure-virtualnetworkmanager/lib/virtual-network-manager-schemas.d.ts +32 -0
- package/lib/azure-virtualnetworkmanager/lib/virtual-network-manager-schemas.js +236 -0
- package/lib/azure-virtualnetworkmanager/lib/virtual-network-manager.d.ts +337 -0
- package/lib/azure-virtualnetworkmanager/lib/virtual-network-manager.js +283 -0
- package/lib/azure-virtualnetworkmanager/test/virtual-network-manager.integ.d.ts +25 -0
- package/lib/azure-virtualnetworkmanager/test/virtual-network-manager.integ.js +402 -0
- package/lib/azure-virtualnetworkmanager/test/virtual-network-manager.spec.d.ts +9 -0
- package/lib/azure-virtualnetworkmanager/test/virtual-network-manager.spec.js +1652 -0
- package/lib/azure-vmss/index.d.ts +0 -5
- package/lib/azure-vmss/index.js +1 -6
- package/lib/azure-vmss/lib/index.d.ts +0 -7
- package/lib/azure-vmss/lib/index.js +1 -21
- package/lib/azure-vmss/lib/virtual-machine-scale-set.d.ts +5 -13
- package/lib/azure-vmss/lib/virtual-machine-scale-set.js +29 -53
- package/lib/core-azure/lib/azapi/azapi-resource-tags.spec.d.ts +10 -0
- package/lib/core-azure/lib/azapi/azapi-resource-tags.spec.js +218 -0
- package/lib/core-azure/lib/azapi/azapi-resource.d.ts +206 -26
- package/lib/core-azure/lib/azapi/azapi-resource.js +379 -91
- package/lib/core-azure/lib/azapi/azapi-resource.spec.js +2 -2
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-client-config/index.js +2 -2
- package/lib/core-azure/lib/azapi/providers-azapi/data-azapi-resource/index.js +5 -5
- package/lib/core-azure/lib/azapi/providers-azapi/provider/index.js +5 -3
- package/lib/core-azure/lib/azapi/providers-azapi/resource/index.js +5 -5
- package/lib/core-azure/lib/azapi/providers-azapi/resource-action/index.js +3 -3
- package/lib/core-azure/lib/azapi/providers-azapi/update-resource/index.js +3 -3
- package/lib/core-azure/lib/azapi/resource-schema-validator.d.ts +118 -0
- package/lib/core-azure/lib/azapi/resource-schema-validator.js +236 -0
- package/lib/core-azure/lib/azapi/resource-version-manager.d.ts +103 -0
- package/lib/core-azure/lib/azapi/resource-version-manager.js +168 -0
- package/lib/core-azure/lib/azapi/schema-mapper/schema-mapper.js +11 -6
- package/lib/core-azure/lib/index.d.ts +2 -2
- package/lib/core-azure/lib/index.js +5 -5
- package/lib/core-azure/lib/version-manager/api-version-manager.js +1 -1
- package/lib/core-azure/lib/version-manager/interfaces/version-interfaces.js +7 -7
- package/lib/index.d.ts +19 -0
- package/lib/index.js +21 -2
- package/lib/testing/index.js +2 -2
- package/lib/testing/lib/cleanup.d.ts +1 -0
- package/lib/testing/lib/cleanup.js +19 -12
- package/lib/testing/lib/metadata.js +19 -16
- package/package.json +1 -1
- package/scripts/cleanup-test-resources.ts +22 -4
- package/scripts/generate-index.js +25 -8
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Azure Virtual Network Manager Connectivity Configuration implementation using AzapiResource framework
|
|
3
|
+
*
|
|
4
|
+
* This class provides a unified implementation for defining network topology (mesh or hub-and-spoke)
|
|
5
|
+
* for virtual networks managed by Azure Virtual Network Manager.
|
|
6
|
+
*
|
|
7
|
+
* Supported API Versions:
|
|
8
|
+
* - 2023-11-01 (Maintenance)
|
|
9
|
+
* - 2024-05-01 (Active, Latest)
|
|
10
|
+
*
|
|
11
|
+
* Features:
|
|
12
|
+
* - Automatic latest version resolution when no version is specified
|
|
13
|
+
* - Explicit version pinning for stability requirements
|
|
14
|
+
* - Schema-driven validation and transformation
|
|
15
|
+
* - Support for mesh and hub-and-spoke topologies
|
|
16
|
+
* - Full backward compatibility
|
|
17
|
+
* - JSII compliance for multi-language support
|
|
18
|
+
*/
|
|
19
|
+
import * as cdktf from "cdktf";
|
|
20
|
+
import { Construct } from "constructs";
|
|
21
|
+
import { ConnectivityGroupItem, Hub } from "./connectivity-configuration-schemas";
|
|
22
|
+
import { AzapiResource, AzapiResourceProps } from "../../core-azure/lib/azapi/azapi-resource";
|
|
23
|
+
import { ApiSchema } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
|
|
24
|
+
/**
|
|
25
|
+
* Properties for the Azure Virtual Network Manager Connectivity Configuration
|
|
26
|
+
*
|
|
27
|
+
* Extends AzapiResourceProps with Connectivity Configuration specific properties
|
|
28
|
+
*/
|
|
29
|
+
export interface ConnectivityConfigurationProps extends AzapiResourceProps {
|
|
30
|
+
/**
|
|
31
|
+
* Resource ID of the parent Network Manager
|
|
32
|
+
* @example "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Network/networkManagers/vnm"
|
|
33
|
+
*/
|
|
34
|
+
readonly networkManagerId: string;
|
|
35
|
+
/**
|
|
36
|
+
* Optional description of the connectivity configuration
|
|
37
|
+
* @example "Hub-and-spoke topology for production workloads"
|
|
38
|
+
*/
|
|
39
|
+
readonly description?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Connectivity topology type
|
|
42
|
+
* - HubAndSpoke: Central hub with spoke VNets
|
|
43
|
+
* - Mesh: All VNets can communicate directly
|
|
44
|
+
* @example "HubAndSpoke"
|
|
45
|
+
* @example "Mesh"
|
|
46
|
+
*/
|
|
47
|
+
readonly connectivityTopology: "HubAndSpoke" | "Mesh";
|
|
48
|
+
/**
|
|
49
|
+
* Network groups to apply this configuration to
|
|
50
|
+
* Each item specifies a network group and how it should connect
|
|
51
|
+
*/
|
|
52
|
+
readonly appliesToGroups: ConnectivityGroupItem[];
|
|
53
|
+
/**
|
|
54
|
+
* Hub VNets for hub-and-spoke topology
|
|
55
|
+
* Required when connectivityTopology is "HubAndSpoke"
|
|
56
|
+
* @example [{ resourceId: "/subscriptions/.../virtualNetworks/hub-vnet", resourceType: "Microsoft.Network/virtualNetworks" }]
|
|
57
|
+
*/
|
|
58
|
+
readonly hubs?: Hub[];
|
|
59
|
+
/**
|
|
60
|
+
* Enable global mesh connectivity
|
|
61
|
+
* Allows mesh connectivity across regions
|
|
62
|
+
* @default false
|
|
63
|
+
*/
|
|
64
|
+
readonly isGlobal?: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Delete existing peerings when applying this configuration
|
|
67
|
+
* @default false
|
|
68
|
+
*/
|
|
69
|
+
readonly deleteExistingPeering?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* The lifecycle rules to ignore changes
|
|
72
|
+
* @example ["tags"]
|
|
73
|
+
*/
|
|
74
|
+
readonly ignoreChanges?: string[];
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Properties for Connectivity Configuration body
|
|
78
|
+
*/
|
|
79
|
+
export interface ConnectivityConfigurationProperties {
|
|
80
|
+
readonly description?: string;
|
|
81
|
+
readonly connectivityTopology: string;
|
|
82
|
+
readonly appliesToGroups: ConnectivityGroupItem[];
|
|
83
|
+
readonly hubs?: Hub[];
|
|
84
|
+
readonly isGlobal?: boolean;
|
|
85
|
+
readonly deleteExistingPeering?: boolean;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* The resource body interface for Azure Connectivity Configuration API calls
|
|
89
|
+
*/
|
|
90
|
+
export interface ConnectivityConfigurationBody {
|
|
91
|
+
readonly properties: ConnectivityConfigurationProperties;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Azure Virtual Network Manager Connectivity Configuration implementation
|
|
95
|
+
*
|
|
96
|
+
* Connectivity configurations define the network topology (mesh or hub-and-spoke) for
|
|
97
|
+
* virtual networks. They enable automated peering management at scale and support both
|
|
98
|
+
* regional and global connectivity scenarios.
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* // Hub-and-spoke topology:
|
|
102
|
+
* const hubSpokeConfig = new ConnectivityConfiguration(this, "hub-spoke", {
|
|
103
|
+
* name: "production-hub-spoke",
|
|
104
|
+
* networkManagerId: networkManager.id,
|
|
105
|
+
* description: "Hub-and-spoke for production",
|
|
106
|
+
* connectivityTopology: "HubAndSpoke",
|
|
107
|
+
* appliesToGroups: [{
|
|
108
|
+
* networkGroupId: productionGroup.id,
|
|
109
|
+
* groupConnectivity: "None",
|
|
110
|
+
* useHubGateway: true
|
|
111
|
+
* }],
|
|
112
|
+
* hubs: [{
|
|
113
|
+
* resourceId: hubVnet.id,
|
|
114
|
+
* resourceType: "Microsoft.Network/virtualNetworks"
|
|
115
|
+
* }]
|
|
116
|
+
* });
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* // Mesh topology:
|
|
120
|
+
* const meshConfig = new ConnectivityConfiguration(this, "mesh", {
|
|
121
|
+
* name: "development-mesh",
|
|
122
|
+
* networkManagerId: networkManager.id,
|
|
123
|
+
* description: "Mesh for development VNets",
|
|
124
|
+
* connectivityTopology: "Mesh",
|
|
125
|
+
* appliesToGroups: [{
|
|
126
|
+
* networkGroupId: devGroup.id,
|
|
127
|
+
* groupConnectivity: "DirectlyConnected",
|
|
128
|
+
* isGlobal: false
|
|
129
|
+
* }],
|
|
130
|
+
* isGlobal: false
|
|
131
|
+
* });
|
|
132
|
+
*
|
|
133
|
+
* @stability stable
|
|
134
|
+
*/
|
|
135
|
+
export declare class ConnectivityConfiguration extends AzapiResource {
|
|
136
|
+
/**
|
|
137
|
+
* The input properties for this Connectivity Configuration instance
|
|
138
|
+
*/
|
|
139
|
+
readonly props: ConnectivityConfigurationProps;
|
|
140
|
+
readonly idOutput: cdktf.TerraformOutput;
|
|
141
|
+
readonly nameOutput: cdktf.TerraformOutput;
|
|
142
|
+
readonly provisioningStateOutput: cdktf.TerraformOutput;
|
|
143
|
+
readonly resourceName: string;
|
|
144
|
+
/**
|
|
145
|
+
* Creates a new Azure Virtual Network Manager Connectivity Configuration using the AzapiResource framework
|
|
146
|
+
*
|
|
147
|
+
* @param scope - The scope in which to define this construct
|
|
148
|
+
* @param id - The unique identifier for this instance
|
|
149
|
+
* @param props - Configuration properties for the Connectivity Configuration
|
|
150
|
+
*/
|
|
151
|
+
constructor(scope: Construct, id: string, props: ConnectivityConfigurationProps);
|
|
152
|
+
/**
|
|
153
|
+
* Resolves the parent resource ID for the Connectivity Configuration
|
|
154
|
+
* Connectivity Configurations are scoped to Network Managers
|
|
155
|
+
*/
|
|
156
|
+
protected resolveParentId(props: any): string;
|
|
157
|
+
/**
|
|
158
|
+
* Gets the default API version to use when no explicit version is specified
|
|
159
|
+
*/
|
|
160
|
+
protected defaultVersion(): string;
|
|
161
|
+
/**
|
|
162
|
+
* Gets the Azure resource type for Connectivity Configurations
|
|
163
|
+
*/
|
|
164
|
+
protected resourceType(): string;
|
|
165
|
+
/**
|
|
166
|
+
* Gets the API schema for the resolved version
|
|
167
|
+
*/
|
|
168
|
+
protected apiSchema(): ApiSchema;
|
|
169
|
+
/**
|
|
170
|
+
* Creates the resource body for the Azure API call
|
|
171
|
+
*/
|
|
172
|
+
protected createResourceBody(props: any): any;
|
|
173
|
+
/**
|
|
174
|
+
* Get the provisioning state of the Connectivity Configuration
|
|
175
|
+
*/
|
|
176
|
+
get provisioningState(): string;
|
|
177
|
+
/**
|
|
178
|
+
* Get the connectivity topology type
|
|
179
|
+
*/
|
|
180
|
+
get topology(): "HubAndSpoke" | "Mesh";
|
|
181
|
+
/**
|
|
182
|
+
* Applies ignore changes lifecycle rules if specified in props
|
|
183
|
+
*/
|
|
184
|
+
private _applyIgnoreChanges;
|
|
185
|
+
}
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ConnectivityConfiguration = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
/**
|
|
7
|
+
* Azure Virtual Network Manager Connectivity Configuration implementation using AzapiResource framework
|
|
8
|
+
*
|
|
9
|
+
* This class provides a unified implementation for defining network topology (mesh or hub-and-spoke)
|
|
10
|
+
* for virtual networks managed by Azure Virtual Network Manager.
|
|
11
|
+
*
|
|
12
|
+
* Supported API Versions:
|
|
13
|
+
* - 2023-11-01 (Maintenance)
|
|
14
|
+
* - 2024-05-01 (Active, Latest)
|
|
15
|
+
*
|
|
16
|
+
* Features:
|
|
17
|
+
* - Automatic latest version resolution when no version is specified
|
|
18
|
+
* - Explicit version pinning for stability requirements
|
|
19
|
+
* - Schema-driven validation and transformation
|
|
20
|
+
* - Support for mesh and hub-and-spoke topologies
|
|
21
|
+
* - Full backward compatibility
|
|
22
|
+
* - JSII compliance for multi-language support
|
|
23
|
+
*/
|
|
24
|
+
const cdktf = require("cdktf");
|
|
25
|
+
const connectivity_configuration_schemas_1 = require("./connectivity-configuration-schemas");
|
|
26
|
+
const azapi_resource_1 = require("../../core-azure/lib/azapi/azapi-resource");
|
|
27
|
+
/**
|
|
28
|
+
* Azure Virtual Network Manager Connectivity Configuration implementation
|
|
29
|
+
*
|
|
30
|
+
* Connectivity configurations define the network topology (mesh or hub-and-spoke) for
|
|
31
|
+
* virtual networks. They enable automated peering management at scale and support both
|
|
32
|
+
* regional and global connectivity scenarios.
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* // Hub-and-spoke topology:
|
|
36
|
+
* const hubSpokeConfig = new ConnectivityConfiguration(this, "hub-spoke", {
|
|
37
|
+
* name: "production-hub-spoke",
|
|
38
|
+
* networkManagerId: networkManager.id,
|
|
39
|
+
* description: "Hub-and-spoke for production",
|
|
40
|
+
* connectivityTopology: "HubAndSpoke",
|
|
41
|
+
* appliesToGroups: [{
|
|
42
|
+
* networkGroupId: productionGroup.id,
|
|
43
|
+
* groupConnectivity: "None",
|
|
44
|
+
* useHubGateway: true
|
|
45
|
+
* }],
|
|
46
|
+
* hubs: [{
|
|
47
|
+
* resourceId: hubVnet.id,
|
|
48
|
+
* resourceType: "Microsoft.Network/virtualNetworks"
|
|
49
|
+
* }]
|
|
50
|
+
* });
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* // Mesh topology:
|
|
54
|
+
* const meshConfig = new ConnectivityConfiguration(this, "mesh", {
|
|
55
|
+
* name: "development-mesh",
|
|
56
|
+
* networkManagerId: networkManager.id,
|
|
57
|
+
* description: "Mesh for development VNets",
|
|
58
|
+
* connectivityTopology: "Mesh",
|
|
59
|
+
* appliesToGroups: [{
|
|
60
|
+
* networkGroupId: devGroup.id,
|
|
61
|
+
* groupConnectivity: "DirectlyConnected",
|
|
62
|
+
* isGlobal: false
|
|
63
|
+
* }],
|
|
64
|
+
* isGlobal: false
|
|
65
|
+
* });
|
|
66
|
+
*
|
|
67
|
+
* @stability stable
|
|
68
|
+
*/
|
|
69
|
+
class ConnectivityConfiguration extends azapi_resource_1.AzapiResource {
|
|
70
|
+
/**
|
|
71
|
+
* Creates a new Azure Virtual Network Manager Connectivity Configuration using the AzapiResource framework
|
|
72
|
+
*
|
|
73
|
+
* @param scope - The scope in which to define this construct
|
|
74
|
+
* @param id - The unique identifier for this instance
|
|
75
|
+
* @param props - Configuration properties for the Connectivity Configuration
|
|
76
|
+
*/
|
|
77
|
+
constructor(scope, id, props) {
|
|
78
|
+
super(scope, id, props);
|
|
79
|
+
this.props = props;
|
|
80
|
+
// Extract properties from the AZAPI resource outputs using Terraform interpolation
|
|
81
|
+
this.resourceName = `\${${this.terraformResource.fqn}.name}`;
|
|
82
|
+
// Create Terraform outputs for easy access and referencing from other resources
|
|
83
|
+
this.idOutput = new cdktf.TerraformOutput(this, "id", {
|
|
84
|
+
value: this.id,
|
|
85
|
+
description: "The ID of the Connectivity Configuration",
|
|
86
|
+
});
|
|
87
|
+
this.nameOutput = new cdktf.TerraformOutput(this, "name", {
|
|
88
|
+
value: this.resourceName,
|
|
89
|
+
description: "The name of the Connectivity Configuration",
|
|
90
|
+
});
|
|
91
|
+
this.provisioningStateOutput = new cdktf.TerraformOutput(this, "provisioningState", {
|
|
92
|
+
value: `\${${this.terraformResource.fqn}.output.properties.provisioningState}`,
|
|
93
|
+
description: "The provisioning state of the Connectivity Configuration",
|
|
94
|
+
});
|
|
95
|
+
// Override logical IDs to match naming convention
|
|
96
|
+
this.idOutput.overrideLogicalId("id");
|
|
97
|
+
this.nameOutput.overrideLogicalId("name");
|
|
98
|
+
this.provisioningStateOutput.overrideLogicalId("provisioningState");
|
|
99
|
+
// Apply ignore changes if specified
|
|
100
|
+
this._applyIgnoreChanges();
|
|
101
|
+
}
|
|
102
|
+
// =============================================================================
|
|
103
|
+
// REQUIRED ABSTRACT METHODS FROM AzapiResource
|
|
104
|
+
// =============================================================================
|
|
105
|
+
/**
|
|
106
|
+
* Resolves the parent resource ID for the Connectivity Configuration
|
|
107
|
+
* Connectivity Configurations are scoped to Network Managers
|
|
108
|
+
*/
|
|
109
|
+
resolveParentId(props) {
|
|
110
|
+
const typedProps = props;
|
|
111
|
+
return typedProps.networkManagerId;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Gets the default API version to use when no explicit version is specified
|
|
115
|
+
*/
|
|
116
|
+
defaultVersion() {
|
|
117
|
+
return "2024-05-01";
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Gets the Azure resource type for Connectivity Configurations
|
|
121
|
+
*/
|
|
122
|
+
resourceType() {
|
|
123
|
+
return connectivity_configuration_schemas_1.CONNECTIVITY_CONFIGURATION_TYPE;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Gets the API schema for the resolved version
|
|
127
|
+
*/
|
|
128
|
+
apiSchema() {
|
|
129
|
+
return this.resolveSchema();
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Creates the resource body for the Azure API call
|
|
133
|
+
*/
|
|
134
|
+
createResourceBody(props) {
|
|
135
|
+
const typedProps = props;
|
|
136
|
+
// Process appliesToGroups to ensure groupConnectivity is set
|
|
137
|
+
// Convert booleans to strings to avoid CDKTF filtering out false values
|
|
138
|
+
const processedAppliesToGroups = typedProps.appliesToGroups.map((group) => {
|
|
139
|
+
const processedGroup = {
|
|
140
|
+
networkGroupId: group.networkGroupId,
|
|
141
|
+
groupConnectivity: group.groupConnectivity || "None",
|
|
142
|
+
};
|
|
143
|
+
// Convert booleans to string representations for Azure API
|
|
144
|
+
if (group.isGlobal !== undefined) {
|
|
145
|
+
processedGroup.isGlobal = group.isGlobal ? "True" : "False";
|
|
146
|
+
}
|
|
147
|
+
if (group.useHubGateway !== undefined) {
|
|
148
|
+
processedGroup.useHubGateway = group.useHubGateway ? "True" : "False";
|
|
149
|
+
}
|
|
150
|
+
return processedGroup;
|
|
151
|
+
});
|
|
152
|
+
const body = {
|
|
153
|
+
properties: {
|
|
154
|
+
description: typedProps.description,
|
|
155
|
+
connectivityTopology: typedProps.connectivityTopology,
|
|
156
|
+
appliesToGroups: processedAppliesToGroups,
|
|
157
|
+
hubs: typedProps.hubs,
|
|
158
|
+
},
|
|
159
|
+
};
|
|
160
|
+
// Convert top-level booleans to string representations for Azure API
|
|
161
|
+
if (typedProps.isGlobal !== undefined) {
|
|
162
|
+
body.properties.isGlobal = typedProps.isGlobal ? "True" : "False";
|
|
163
|
+
}
|
|
164
|
+
if (typedProps.deleteExistingPeering !== undefined) {
|
|
165
|
+
body.properties.deleteExistingPeering = typedProps.deleteExistingPeering
|
|
166
|
+
? "True"
|
|
167
|
+
: "False";
|
|
168
|
+
}
|
|
169
|
+
return body;
|
|
170
|
+
}
|
|
171
|
+
// =============================================================================
|
|
172
|
+
// PUBLIC METHODS FOR CONNECTIVITY CONFIGURATION OPERATIONS
|
|
173
|
+
// =============================================================================
|
|
174
|
+
/**
|
|
175
|
+
* Get the provisioning state of the Connectivity Configuration
|
|
176
|
+
*/
|
|
177
|
+
get provisioningState() {
|
|
178
|
+
return `\${${this.terraformResource.fqn}.output.properties.provisioningState}`;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Get the connectivity topology type
|
|
182
|
+
*/
|
|
183
|
+
get topology() {
|
|
184
|
+
return this.props.connectivityTopology;
|
|
185
|
+
}
|
|
186
|
+
// =============================================================================
|
|
187
|
+
// PRIVATE HELPER METHODS
|
|
188
|
+
// =============================================================================
|
|
189
|
+
/**
|
|
190
|
+
* Applies ignore changes lifecycle rules if specified in props
|
|
191
|
+
*/
|
|
192
|
+
_applyIgnoreChanges() {
|
|
193
|
+
if (this.props.ignoreChanges && this.props.ignoreChanges.length > 0) {
|
|
194
|
+
this.terraformResource.addOverride("lifecycle", {
|
|
195
|
+
ignore_changes: this.props.ignoreChanges,
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
exports.ConnectivityConfiguration = ConnectivityConfiguration;
|
|
201
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
202
|
+
ConnectivityConfiguration[_a] = { fqn: "@microsoft/terraform-cdk-constructs.ConnectivityConfiguration", version: "1.3.1" };
|
|
203
|
+
(() => {
|
|
204
|
+
azapi_resource_1.AzapiResource.registerSchemas(connectivity_configuration_schemas_1.CONNECTIVITY_CONFIGURATION_TYPE, connectivity_configuration_schemas_1.ALL_CONNECTIVITY_CONFIGURATION_VERSIONS);
|
|
205
|
+
})();
|
|
206
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGl2aXR5LWNvbmZpZ3VyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtdmlydHVhbG5ldHdvcmttYW5hZ2VyL2xpYi9jb25uZWN0aXZpdHktY29uZmlndXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCRztBQUVILCtCQUErQjtBQUUvQiw2RkFLOEM7QUFDOUMsOEVBR21EO0FBa0ZuRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Q0c7QUFDSCxNQUFhLHlCQUEwQixTQUFRLDhCQUFhO0lBcUIxRDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUFxQztRQUVyQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV4QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixtRkFBbUY7UUFDbkYsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLFFBQVEsQ0FBQztRQUU3RCxnRkFBZ0Y7UUFDaEYsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRTtZQUNwRCxLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDZCxXQUFXLEVBQUUsMENBQTBDO1NBQ3hELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUU7WUFDeEQsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQ3hCLFdBQVcsRUFBRSw0Q0FBNEM7U0FDMUQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FDdEQsSUFBSSxFQUNKLG1CQUFtQixFQUNuQjtZQUNFLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLHVDQUF1QztZQUM5RSxXQUFXLEVBQUUsMERBQTBEO1NBQ3hFLENBQ0YsQ0FBQztRQUVGLGtEQUFrRDtRQUNsRCxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFcEUsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxnRkFBZ0Y7SUFDaEYsK0NBQStDO0lBQy9DLGdGQUFnRjtJQUVoRjs7O09BR0c7SUFDTyxlQUFlLENBQUMsS0FBVTtRQUNsQyxNQUFNLFVBQVUsR0FBRyxLQUF1QyxDQUFDO1FBQzNELE9BQU8sVUFBVSxDQUFDLGdCQUFnQixDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNPLGNBQWM7UUFDdEIsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ08sWUFBWTtRQUNwQixPQUFPLG9FQUErQixDQUFDO0lBQ3pDLENBQUM7SUFFRDs7T0FFRztJQUNPLFNBQVM7UUFDakIsT0FBTyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ08sa0JBQWtCLENBQUMsS0FBVTtRQUNyQyxNQUFNLFVBQVUsR0FBRyxLQUF1QyxDQUFDO1FBRTNELDZEQUE2RDtRQUM3RCx3RUFBd0U7UUFDeEUsTUFBTSx3QkFBd0IsR0FBRyxVQUFVLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3hFLE1BQU0sY0FBYyxHQUFRO2dCQUMxQixjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWM7Z0JBQ3BDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxpQkFBaUIsSUFBSSxNQUFNO2FBQ3JELENBQUM7WUFDRiwyREFBMkQ7WUFDM0QsSUFBSSxLQUFLLENBQUMsUUFBUSxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUNqQyxjQUFjLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQzlELENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxhQUFhLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ3RDLGNBQWMsQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDeEUsQ0FBQztZQUNELE9BQU8sY0FBYyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxJQUFJLEdBQVE7WUFDaEIsVUFBVSxFQUFFO2dCQUNWLFdBQVcsRUFBRSxVQUFVLENBQUMsV0FBVztnQkFDbkMsb0JBQW9CLEVBQUUsVUFBVSxDQUFDLG9CQUFvQjtnQkFDckQsZUFBZSxFQUFFLHdCQUF3QjtnQkFDekMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxJQUFJO2FBQ3RCO1NBQ0YsQ0FBQztRQUVGLHFFQUFxRTtRQUNyRSxJQUFJLFVBQVUsQ0FBQyxRQUFRLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDcEUsQ0FBQztRQUNELElBQUksVUFBVSxDQUFDLHFCQUFxQixLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxVQUFVLENBQUMscUJBQXFCLEdBQUcsVUFBVSxDQUFDLHFCQUFxQjtnQkFDdEUsQ0FBQyxDQUFDLE1BQU07Z0JBQ1IsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUNkLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxnRkFBZ0Y7SUFDaEYsMkRBQTJEO0lBQzNELGdGQUFnRjtJQUVoRjs7T0FFRztJQUNILElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyx1Q0FBdUMsQ0FBQztJQUNqRixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDO0lBQ3pDLENBQUM7SUFFRCxnRkFBZ0Y7SUFDaEYseUJBQXlCO0lBQ3pCLGdGQUFnRjtJQUVoRjs7T0FFRztJQUNLLG1CQUFtQjtRQUN6QixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRTtnQkFDOUMsY0FBYyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYTthQUN6QyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs7QUFuTEgsOERBb0xDOzs7QUFuTEM7SUFDRSw4QkFBYSxDQUFDLGVBQWUsQ0FDM0Isb0VBQStCLEVBQy9CLDRFQUF1QyxDQUN4QyxDQUFDO0FBQ0osQ0FBQyxHQUFBLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEF6dXJlIFZpcnR1YWwgTmV0d29yayBNYW5hZ2VyIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9uIGltcGxlbWVudGF0aW9uIHVzaW5nIEF6YXBpUmVzb3VyY2UgZnJhbWV3b3JrXG4gKlxuICogVGhpcyBjbGFzcyBwcm92aWRlcyBhIHVuaWZpZWQgaW1wbGVtZW50YXRpb24gZm9yIGRlZmluaW5nIG5ldHdvcmsgdG9wb2xvZ3kgKG1lc2ggb3IgaHViLWFuZC1zcG9rZSlcbiAqIGZvciB2aXJ0dWFsIG5ldHdvcmtzIG1hbmFnZWQgYnkgQXp1cmUgVmlydHVhbCBOZXR3b3JrIE1hbmFnZXIuXG4gKlxuICogU3VwcG9ydGVkIEFQSSBWZXJzaW9uczpcbiAqIC0gMjAyMy0xMS0wMSAoTWFpbnRlbmFuY2UpXG4gKiAtIDIwMjQtMDUtMDEgKEFjdGl2ZSwgTGF0ZXN0KVxuICpcbiAqIEZlYXR1cmVzOlxuICogLSBBdXRvbWF0aWMgbGF0ZXN0IHZlcnNpb24gcmVzb2x1dGlvbiB3aGVuIG5vIHZlcnNpb24gaXMgc3BlY2lmaWVkXG4gKiAtIEV4cGxpY2l0IHZlcnNpb24gcGlubmluZyBmb3Igc3RhYmlsaXR5IHJlcXVpcmVtZW50c1xuICogLSBTY2hlbWEtZHJpdmVuIHZhbGlkYXRpb24gYW5kIHRyYW5zZm9ybWF0aW9uXG4gKiAtIFN1cHBvcnQgZm9yIG1lc2ggYW5kIGh1Yi1hbmQtc3Bva2UgdG9wb2xvZ2llc1xuICogLSBGdWxsIGJhY2t3YXJkIGNvbXBhdGliaWxpdHlcbiAqIC0gSlNJSSBjb21wbGlhbmNlIGZvciBtdWx0aS1sYW5ndWFnZSBzdXBwb3J0XG4gKi9cblxuaW1wb3J0ICogYXMgY2RrdGYgZnJvbSBcImNka3RmXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHtcbiAgQUxMX0NPTk5FQ1RJVklUWV9DT05GSUdVUkFUSU9OX1ZFUlNJT05TLFxuICBDT05ORUNUSVZJVFlfQ09ORklHVVJBVElPTl9UWVBFLFxuICBDb25uZWN0aXZpdHlHcm91cEl0ZW0sXG4gIEh1Yixcbn0gZnJvbSBcIi4vY29ubmVjdGl2aXR5LWNvbmZpZ3VyYXRpb24tc2NoZW1hc1wiO1xuaW1wb3J0IHtcbiAgQXphcGlSZXNvdXJjZSxcbiAgQXphcGlSZXNvdXJjZVByb3BzLFxufSBmcm9tIFwiLi4vLi4vY29yZS1henVyZS9saWIvYXphcGkvYXphcGktcmVzb3VyY2VcIjtcbmltcG9ydCB7IEFwaVNjaGVtYSB9IGZyb20gXCIuLi8uLi9jb3JlLWF6dXJlL2xpYi92ZXJzaW9uLW1hbmFnZXIvaW50ZXJmYWNlcy92ZXJzaW9uLWludGVyZmFjZXNcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciB0aGUgQXp1cmUgVmlydHVhbCBOZXR3b3JrIE1hbmFnZXIgQ29ubmVjdGl2aXR5IENvbmZpZ3VyYXRpb25cbiAqXG4gKiBFeHRlbmRzIEF6YXBpUmVzb3VyY2VQcm9wcyB3aXRoIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9uIHNwZWNpZmljIHByb3BlcnRpZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25uZWN0aXZpdHlDb25maWd1cmF0aW9uUHJvcHMgZXh0ZW5kcyBBemFwaVJlc291cmNlUHJvcHMge1xuICAvKipcbiAgICogUmVzb3VyY2UgSUQgb2YgdGhlIHBhcmVudCBOZXR3b3JrIE1hbmFnZXJcbiAgICogQGV4YW1wbGUgXCIvc3Vic2NyaXB0aW9ucy8wMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAvcmVzb3VyY2VHcm91cHMvcmcvcHJvdmlkZXJzL01pY3Jvc29mdC5OZXR3b3JrL25ldHdvcmtNYW5hZ2Vycy92bm1cIlxuICAgKi9cbiAgcmVhZG9ubHkgbmV0d29ya01hbmFnZXJJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBkZXNjcmlwdGlvbiBvZiB0aGUgY29ubmVjdGl2aXR5IGNvbmZpZ3VyYXRpb25cbiAgICogQGV4YW1wbGUgXCJIdWItYW5kLXNwb2tlIHRvcG9sb2d5IGZvciBwcm9kdWN0aW9uIHdvcmtsb2Fkc1wiXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogQ29ubmVjdGl2aXR5IHRvcG9sb2d5IHR5cGVcbiAgICogLSBIdWJBbmRTcG9rZTogQ2VudHJhbCBodWIgd2l0aCBzcG9rZSBWTmV0c1xuICAgKiAtIE1lc2g6IEFsbCBWTmV0cyBjYW4gY29tbXVuaWNhdGUgZGlyZWN0bHlcbiAgICogQGV4YW1wbGUgXCJIdWJBbmRTcG9rZVwiXG4gICAqIEBleGFtcGxlIFwiTWVzaFwiXG4gICAqL1xuICByZWFkb25seSBjb25uZWN0aXZpdHlUb3BvbG9neTogXCJIdWJBbmRTcG9rZVwiIHwgXCJNZXNoXCI7XG5cbiAgLyoqXG4gICAqIE5ldHdvcmsgZ3JvdXBzIHRvIGFwcGx5IHRoaXMgY29uZmlndXJhdGlvbiB0b1xuICAgKiBFYWNoIGl0ZW0gc3BlY2lmaWVzIGEgbmV0d29yayBncm91cCBhbmQgaG93IGl0IHNob3VsZCBjb25uZWN0XG4gICAqL1xuICByZWFkb25seSBhcHBsaWVzVG9Hcm91cHM6IENvbm5lY3Rpdml0eUdyb3VwSXRlbVtdO1xuXG4gIC8qKlxuICAgKiBIdWIgVk5ldHMgZm9yIGh1Yi1hbmQtc3Bva2UgdG9wb2xvZ3lcbiAgICogUmVxdWlyZWQgd2hlbiBjb25uZWN0aXZpdHlUb3BvbG9neSBpcyBcIkh1YkFuZFNwb2tlXCJcbiAgICogQGV4YW1wbGUgW3sgcmVzb3VyY2VJZDogXCIvc3Vic2NyaXB0aW9ucy8uLi4vdmlydHVhbE5ldHdvcmtzL2h1Yi12bmV0XCIsIHJlc291cmNlVHlwZTogXCJNaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya3NcIiB9XVxuICAgKi9cbiAgcmVhZG9ubHkgaHVicz86IEh1YltdO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgZ2xvYmFsIG1lc2ggY29ubmVjdGl2aXR5XG4gICAqIEFsbG93cyBtZXNoIGNvbm5lY3Rpdml0eSBhY3Jvc3MgcmVnaW9uc1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgaXNHbG9iYWw/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWxldGUgZXhpc3RpbmcgcGVlcmluZ3Mgd2hlbiBhcHBseWluZyB0aGlzIGNvbmZpZ3VyYXRpb25cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUV4aXN0aW5nUGVlcmluZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBsaWZlY3ljbGUgcnVsZXMgdG8gaWdub3JlIGNoYW5nZXNcbiAgICogQGV4YW1wbGUgW1widGFnc1wiXVxuICAgKi9cbiAgcmVhZG9ubHkgaWdub3JlQ2hhbmdlcz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9uIGJvZHlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25uZWN0aXZpdHlDb25maWd1cmF0aW9uUHJvcGVydGllcyB7XG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICByZWFkb25seSBjb25uZWN0aXZpdHlUb3BvbG9neTogc3RyaW5nO1xuICByZWFkb25seSBhcHBsaWVzVG9Hcm91cHM6IENvbm5lY3Rpdml0eUdyb3VwSXRlbVtdO1xuICByZWFkb25seSBodWJzPzogSHViW107XG4gIHJlYWRvbmx5IGlzR2xvYmFsPzogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZGVsZXRlRXhpc3RpbmdQZWVyaW5nPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUaGUgcmVzb3VyY2UgYm9keSBpbnRlcmZhY2UgZm9yIEF6dXJlIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9uIEFQSSBjYWxsc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbm5lY3Rpdml0eUNvbmZpZ3VyYXRpb25Cb2R5IHtcbiAgcmVhZG9ubHkgcHJvcGVydGllczogQ29ubmVjdGl2aXR5Q29uZmlndXJhdGlvblByb3BlcnRpZXM7XG59XG5cbi8qKlxuICogQXp1cmUgVmlydHVhbCBOZXR3b3JrIE1hbmFnZXIgQ29ubmVjdGl2aXR5IENvbmZpZ3VyYXRpb24gaW1wbGVtZW50YXRpb25cbiAqXG4gKiBDb25uZWN0aXZpdHkgY29uZmlndXJhdGlvbnMgZGVmaW5lIHRoZSBuZXR3b3JrIHRvcG9sb2d5IChtZXNoIG9yIGh1Yi1hbmQtc3Bva2UpIGZvclxuICogdmlydHVhbCBuZXR3b3Jrcy4gVGhleSBlbmFibGUgYXV0b21hdGVkIHBlZXJpbmcgbWFuYWdlbWVudCBhdCBzY2FsZSBhbmQgc3VwcG9ydCBib3RoXG4gKiByZWdpb25hbCBhbmQgZ2xvYmFsIGNvbm5lY3Rpdml0eSBzY2VuYXJpb3MuXG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIEh1Yi1hbmQtc3Bva2UgdG9wb2xvZ3k6XG4gKiBjb25zdCBodWJTcG9rZUNvbmZpZyA9IG5ldyBDb25uZWN0aXZpdHlDb25maWd1cmF0aW9uKHRoaXMsIFwiaHViLXNwb2tlXCIsIHtcbiAqICAgbmFtZTogXCJwcm9kdWN0aW9uLWh1Yi1zcG9rZVwiLFxuICogICBuZXR3b3JrTWFuYWdlcklkOiBuZXR3b3JrTWFuYWdlci5pZCxcbiAqICAgZGVzY3JpcHRpb246IFwiSHViLWFuZC1zcG9rZSBmb3IgcHJvZHVjdGlvblwiLFxuICogICBjb25uZWN0aXZpdHlUb3BvbG9neTogXCJIdWJBbmRTcG9rZVwiLFxuICogICBhcHBsaWVzVG9Hcm91cHM6IFt7XG4gKiAgICAgbmV0d29ya0dyb3VwSWQ6IHByb2R1Y3Rpb25Hcm91cC5pZCxcbiAqICAgICBncm91cENvbm5lY3Rpdml0eTogXCJOb25lXCIsXG4gKiAgICAgdXNlSHViR2F0ZXdheTogdHJ1ZVxuICogICB9XSxcbiAqICAgaHViczogW3tcbiAqICAgICByZXNvdXJjZUlkOiBodWJWbmV0LmlkLFxuICogICAgIHJlc291cmNlVHlwZTogXCJNaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya3NcIlxuICogICB9XVxuICogfSk7XG4gKlxuICogQGV4YW1wbGVcbiAqIC8vIE1lc2ggdG9wb2xvZ3k6XG4gKiBjb25zdCBtZXNoQ29uZmlnID0gbmV3IENvbm5lY3Rpdml0eUNvbmZpZ3VyYXRpb24odGhpcywgXCJtZXNoXCIsIHtcbiAqICAgbmFtZTogXCJkZXZlbG9wbWVudC1tZXNoXCIsXG4gKiAgIG5ldHdvcmtNYW5hZ2VySWQ6IG5ldHdvcmtNYW5hZ2VyLmlkLFxuICogICBkZXNjcmlwdGlvbjogXCJNZXNoIGZvciBkZXZlbG9wbWVudCBWTmV0c1wiLFxuICogICBjb25uZWN0aXZpdHlUb3BvbG9neTogXCJNZXNoXCIsXG4gKiAgIGFwcGxpZXNUb0dyb3VwczogW3tcbiAqICAgICBuZXR3b3JrR3JvdXBJZDogZGV2R3JvdXAuaWQsXG4gKiAgICAgZ3JvdXBDb25uZWN0aXZpdHk6IFwiRGlyZWN0bHlDb25uZWN0ZWRcIixcbiAqICAgICBpc0dsb2JhbDogZmFsc2VcbiAqICAgfV0sXG4gKiAgIGlzR2xvYmFsOiBmYWxzZVxuICogfSk7XG4gKlxuICogQHN0YWJpbGl0eSBzdGFibGVcbiAqL1xuZXhwb3J0IGNsYXNzIENvbm5lY3Rpdml0eUNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBBemFwaVJlc291cmNlIHtcbiAgc3RhdGljIHtcbiAgICBBemFwaVJlc291cmNlLnJlZ2lzdGVyU2NoZW1hcyhcbiAgICAgIENPTk5FQ1RJVklUWV9DT05GSUdVUkFUSU9OX1RZUEUsXG4gICAgICBBTExfQ09OTkVDVElWSVRZX0NPTkZJR1VSQVRJT05fVkVSU0lPTlMsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaW5wdXQgcHJvcGVydGllcyBmb3IgdGhpcyBDb25uZWN0aXZpdHkgQ29uZmlndXJhdGlvbiBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDb25uZWN0aXZpdHlDb25maWd1cmF0aW9uUHJvcHM7XG5cbiAgLy8gT3V0cHV0IHByb3BlcnRpZXMgZm9yIGVhc3kgYWNjZXNzIGFuZCByZWZlcmVuY2luZ1xuICBwdWJsaWMgcmVhZG9ubHkgaWRPdXRwdXQ6IGNka3RmLlRlcnJhZm9ybU91dHB1dDtcbiAgcHVibGljIHJlYWRvbmx5IG5hbWVPdXRwdXQ6IGNka3RmLlRlcnJhZm9ybU91dHB1dDtcbiAgcHVibGljIHJlYWRvbmx5IHByb3Zpc2lvbmluZ1N0YXRlT3V0cHV0OiBjZGt0Zi5UZXJyYWZvcm1PdXRwdXQ7XG5cbiAgLy8gUHVibGljIHByb3BlcnRpZXNcbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IEF6dXJlIFZpcnR1YWwgTmV0d29yayBNYW5hZ2VyIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9uIHVzaW5nIHRoZSBBemFwaVJlc291cmNlIGZyYW1ld29ya1xuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBUaGUgc2NvcGUgaW4gd2hpY2ggdG8gZGVmaW5lIHRoaXMgY29uc3RydWN0XG4gICAqIEBwYXJhbSBpZCAtIFRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhpcyBpbnN0YW5jZVxuICAgKiBAcGFyYW0gcHJvcHMgLSBDb25maWd1cmF0aW9uIHByb3BlcnRpZXMgZm9yIHRoZSBDb25uZWN0aXZpdHkgQ29uZmlndXJhdGlvblxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDb25uZWN0aXZpdHlDb25maWd1cmF0aW9uUHJvcHMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgLy8gRXh0cmFjdCBwcm9wZXJ0aWVzIGZyb20gdGhlIEFaQVBJIHJlc291cmNlIG91dHB1dHMgdXNpbmcgVGVycmFmb3JtIGludGVycG9sYXRpb25cbiAgICB0aGlzLnJlc291cmNlTmFtZSA9IGBcXCR7JHt0aGlzLnRlcnJhZm9ybVJlc291cmNlLmZxbn0ubmFtZX1gO1xuXG4gICAgLy8gQ3JlYXRlIFRlcnJhZm9ybSBvdXRwdXRzIGZvciBlYXN5IGFjY2VzcyBhbmQgcmVmZXJlbmNpbmcgZnJvbSBvdGhlciByZXNvdXJjZXNcbiAgICB0aGlzLmlkT3V0cHV0ID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dCh0aGlzLCBcImlkXCIsIHtcbiAgICAgIHZhbHVlOiB0aGlzLmlkLFxuICAgICAgZGVzY3JpcHRpb246IFwiVGhlIElEIG9mIHRoZSBDb25uZWN0aXZpdHkgQ29uZmlndXJhdGlvblwiLFxuICAgIH0pO1xuXG4gICAgdGhpcy5uYW1lT3V0cHV0ID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dCh0aGlzLCBcIm5hbWVcIiwge1xuICAgICAgdmFsdWU6IHRoaXMucmVzb3VyY2VOYW1lLFxuICAgICAgZGVzY3JpcHRpb246IFwiVGhlIG5hbWUgb2YgdGhlIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9uXCIsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3Zpc2lvbmluZ1N0YXRlT3V0cHV0ID0gbmV3IGNka3RmLlRlcnJhZm9ybU91dHB1dChcbiAgICAgIHRoaXMsXG4gICAgICBcInByb3Zpc2lvbmluZ1N0YXRlXCIsXG4gICAgICB7XG4gICAgICAgIHZhbHVlOiBgXFwkeyR7dGhpcy50ZXJyYWZvcm1SZXNvdXJjZS5mcW59Lm91dHB1dC5wcm9wZXJ0aWVzLnByb3Zpc2lvbmluZ1N0YXRlfWAsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBcIlRoZSBwcm92aXNpb25pbmcgc3RhdGUgb2YgdGhlIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9uXCIsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICAvLyBPdmVycmlkZSBsb2dpY2FsIElEcyB0byBtYXRjaCBuYW1pbmcgY29udmVudGlvblxuICAgIHRoaXMuaWRPdXRwdXQub3ZlcnJpZGVMb2dpY2FsSWQoXCJpZFwiKTtcbiAgICB0aGlzLm5hbWVPdXRwdXQub3ZlcnJpZGVMb2dpY2FsSWQoXCJuYW1lXCIpO1xuICAgIHRoaXMucHJvdmlzaW9uaW5nU3RhdGVPdXRwdXQub3ZlcnJpZGVMb2dpY2FsSWQoXCJwcm92aXNpb25pbmdTdGF0ZVwiKTtcblxuICAgIC8vIEFwcGx5IGlnbm9yZSBjaGFuZ2VzIGlmIHNwZWNpZmllZFxuICAgIHRoaXMuX2FwcGx5SWdub3JlQ2hhbmdlcygpO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gUkVRVUlSRUQgQUJTVFJBQ1QgTUVUSE9EUyBGUk9NIEF6YXBpUmVzb3VyY2VcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvKipcbiAgICogUmVzb2x2ZXMgdGhlIHBhcmVudCByZXNvdXJjZSBJRCBmb3IgdGhlIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9uXG4gICAqIENvbm5lY3Rpdml0eSBDb25maWd1cmF0aW9ucyBhcmUgc2NvcGVkIHRvIE5ldHdvcmsgTWFuYWdlcnNcbiAgICovXG4gIHByb3RlY3RlZCByZXNvbHZlUGFyZW50SWQocHJvcHM6IGFueSk6IHN0cmluZyB7XG4gICAgY29uc3QgdHlwZWRQcm9wcyA9IHByb3BzIGFzIENvbm5lY3Rpdml0eUNvbmZpZ3VyYXRpb25Qcm9wcztcbiAgICByZXR1cm4gdHlwZWRQcm9wcy5uZXR3b3JrTWFuYWdlcklkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGRlZmF1bHQgQVBJIHZlcnNpb24gdG8gdXNlIHdoZW4gbm8gZXhwbGljaXQgdmVyc2lvbiBpcyBzcGVjaWZpZWRcbiAgICovXG4gIHByb3RlY3RlZCBkZWZhdWx0VmVyc2lvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBcIjIwMjQtMDUtMDFcIjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBBenVyZSByZXNvdXJjZSB0eXBlIGZvciBDb25uZWN0aXZpdHkgQ29uZmlndXJhdGlvbnNcbiAgICovXG4gIHByb3RlY3RlZCByZXNvdXJjZVR5cGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gQ09OTkVDVElWSVRZX0NPTkZJR1VSQVRJT05fVFlQRTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBBUEkgc2NoZW1hIGZvciB0aGUgcmVzb2x2ZWQgdmVyc2lvblxuICAgKi9cbiAgcHJvdGVjdGVkIGFwaVNjaGVtYSgpOiBBcGlTY2hlbWEge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVTY2hlbWEoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIHRoZSByZXNvdXJjZSBib2R5IGZvciB0aGUgQXp1cmUgQVBJIGNhbGxcbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVSZXNvdXJjZUJvZHkocHJvcHM6IGFueSk6IGFueSB7XG4gICAgY29uc3QgdHlwZWRQcm9wcyA9IHByb3BzIGFzIENvbm5lY3Rpdml0eUNvbmZpZ3VyYXRpb25Qcm9wcztcblxuICAgIC8vIFByb2Nlc3MgYXBwbGllc1RvR3JvdXBzIHRvIGVuc3VyZSBncm91cENvbm5lY3Rpdml0eSBpcyBzZXRcbiAgICAvLyBDb252ZXJ0IGJvb2xlYW5zIHRvIHN0cmluZ3MgdG8gYXZvaWQgQ0RLVEYgZmlsdGVyaW5nIG91dCBmYWxzZSB2YWx1ZXNcbiAgICBjb25zdCBwcm9jZXNzZWRBcHBsaWVzVG9Hcm91cHMgPSB0eXBlZFByb3BzLmFwcGxpZXNUb0dyb3Vwcy5tYXAoKGdyb3VwKSA9PiB7XG4gICAgICBjb25zdCBwcm9jZXNzZWRHcm91cDogYW55ID0ge1xuICAgICAgICBuZXR3b3JrR3JvdXBJZDogZ3JvdXAubmV0d29ya0dyb3VwSWQsXG4gICAgICAgIGdyb3VwQ29ubmVjdGl2aXR5OiBncm91cC5ncm91cENvbm5lY3Rpdml0eSB8fCBcIk5vbmVcIixcbiAgICAgIH07XG4gICAgICAvLyBDb252ZXJ0IGJvb2xlYW5zIHRvIHN0cmluZyByZXByZXNlbnRhdGlvbnMgZm9yIEF6dXJlIEFQSVxuICAgICAgaWYgKGdyb3VwLmlzR2xvYmFsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcHJvY2Vzc2VkR3JvdXAuaXNHbG9iYWwgPSBncm91cC5pc0dsb2JhbCA/IFwiVHJ1ZVwiIDogXCJGYWxzZVwiO1xuICAgICAgfVxuICAgICAgaWYgKGdyb3VwLnVzZUh1YkdhdGV3YXkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBwcm9jZXNzZWRHcm91cC51c2VIdWJHYXRld2F5ID0gZ3JvdXAudXNlSHViR2F0ZXdheSA/IFwiVHJ1ZVwiIDogXCJGYWxzZVwiO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHByb2Nlc3NlZEdyb3VwO1xuICAgIH0pO1xuXG4gICAgY29uc3QgYm9keTogYW55ID0ge1xuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBkZXNjcmlwdGlvbjogdHlwZWRQcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgICAgY29ubmVjdGl2aXR5VG9wb2xvZ3k6IHR5cGVkUHJvcHMuY29ubmVjdGl2aXR5VG9wb2xvZ3ksXG4gICAgICAgIGFwcGxpZXNUb0dyb3VwczogcHJvY2Vzc2VkQXBwbGllc1RvR3JvdXBzLFxuICAgICAgICBodWJzOiB0eXBlZFByb3BzLmh1YnMsXG4gICAgICB9LFxuICAgIH07XG5cbiAgICAvLyBDb252ZXJ0IHRvcC1sZXZlbCBib29sZWFucyB0byBzdHJpbmcgcmVwcmVzZW50YXRpb25zIGZvciBBenVyZSBBUElcbiAgICBpZiAodHlwZWRQcm9wcy5pc0dsb2JhbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBib2R5LnByb3BlcnRpZXMuaXNHbG9iYWwgPSB0eXBlZFByb3BzLmlzR2xvYmFsID8gXCJUcnVlXCIgOiBcIkZhbHNlXCI7XG4gICAgfVxuICAgIGlmICh0eXBlZFByb3BzLmRlbGV0ZUV4aXN0aW5nUGVlcmluZyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBib2R5LnByb3BlcnRpZXMuZGVsZXRlRXhpc3RpbmdQZWVyaW5nID0gdHlwZWRQcm9wcy5kZWxldGVFeGlzdGluZ1BlZXJpbmdcbiAgICAgICAgPyBcIlRydWVcIlxuICAgICAgICA6IFwiRmFsc2VcIjtcbiAgICB9XG5cbiAgICByZXR1cm4gYm9keTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFBVQkxJQyBNRVRIT0RTIEZPUiBDT05ORUNUSVZJVFkgQ09ORklHVVJBVElPTiBPUEVSQVRJT05TXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgcHJvdmlzaW9uaW5nIHN0YXRlIG9mIHRoZSBDb25uZWN0aXZpdHkgQ29uZmlndXJhdGlvblxuICAgKi9cbiAgcHVibGljIGdldCBwcm92aXNpb25pbmdTdGF0ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgXFwkeyR7dGhpcy50ZXJyYWZvcm1SZXNvdXJjZS5mcW59Lm91dHB1dC5wcm9wZXJ0aWVzLnByb3Zpc2lvbmluZ1N0YXRlfWA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBjb25uZWN0aXZpdHkgdG9wb2xvZ3kgdHlwZVxuICAgKi9cbiAgcHVibGljIGdldCB0b3BvbG9neSgpOiBcIkh1YkFuZFNwb2tlXCIgfCBcIk1lc2hcIiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMuY29ubmVjdGl2aXR5VG9wb2xvZ3k7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBQUklWQVRFIEhFTFBFUiBNRVRIT0RTXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLyoqXG4gICAqIEFwcGxpZXMgaWdub3JlIGNoYW5nZXMgbGlmZWN5Y2xlIHJ1bGVzIGlmIHNwZWNpZmllZCBpbiBwcm9wc1xuICAgKi9cbiAgcHJpdmF0ZSBfYXBwbHlJZ25vcmVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnByb3BzLmlnbm9yZUNoYW5nZXMgJiYgdGhpcy5wcm9wcy5pZ25vcmVDaGFuZ2VzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMudGVycmFmb3JtUmVzb3VyY2UuYWRkT3ZlcnJpZGUoXCJsaWZlY3ljbGVcIiwge1xuICAgICAgICBpZ25vcmVfY2hhbmdlczogdGhpcy5wcm9wcy5pZ25vcmVDaGFuZ2VzLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export * from "./connectivity-configuration-schemas";
|
|
2
|
+
export * from "./connectivity-configuration";
|
|
3
|
+
export * from "./network-group-schemas";
|
|
4
|
+
export * from "./network-group-static-member-schemas";
|
|
5
|
+
export * from "./network-group-static-member";
|
|
6
|
+
export * from "./network-group";
|
|
7
|
+
export * from "./security-admin-configuration-schemas";
|
|
8
|
+
export * from "./security-admin-configuration";
|
|
9
|
+
export * from "./security-admin-rule-collection-schemas";
|
|
10
|
+
export * from "./security-admin-rule-collection";
|
|
11
|
+
export * from "./security-admin-rule-schemas";
|
|
12
|
+
export * from "./security-admin-rule";
|
|
13
|
+
export * from "./virtual-network-manager-schemas";
|
|
14
|
+
export * from "./virtual-network-manager";
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./connectivity-configuration-schemas"), exports);
|
|
18
|
+
__exportStar(require("./connectivity-configuration"), exports);
|
|
19
|
+
__exportStar(require("./network-group-schemas"), exports);
|
|
20
|
+
__exportStar(require("./network-group-static-member-schemas"), exports);
|
|
21
|
+
__exportStar(require("./network-group-static-member"), exports);
|
|
22
|
+
__exportStar(require("./network-group"), exports);
|
|
23
|
+
__exportStar(require("./security-admin-configuration-schemas"), exports);
|
|
24
|
+
__exportStar(require("./security-admin-configuration"), exports);
|
|
25
|
+
__exportStar(require("./security-admin-rule-collection-schemas"), exports);
|
|
26
|
+
__exportStar(require("./security-admin-rule-collection"), exports);
|
|
27
|
+
__exportStar(require("./security-admin-rule-schemas"), exports);
|
|
28
|
+
__exportStar(require("./security-admin-rule"), exports);
|
|
29
|
+
__exportStar(require("./virtual-network-manager-schemas"), exports);
|
|
30
|
+
__exportStar(require("./virtual-network-manager"), exports);
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXp1cmUtdmlydHVhbG5ldHdvcmttYW5hZ2VyL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdUVBQXFEO0FBQ3JELCtEQUE2QztBQUM3QywwREFBd0M7QUFDeEMsd0VBQXNEO0FBQ3RELGdFQUE4QztBQUM5QyxrREFBZ0M7QUFDaEMseUVBQXVEO0FBQ3ZELGlFQUErQztBQUMvQywyRUFBeUQ7QUFDekQsbUVBQWlEO0FBQ2pELGdFQUE4QztBQUM5Qyx3REFBc0M7QUFDdEMsb0VBQWtEO0FBQ2xELDREQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL2Nvbm5lY3Rpdml0eS1jb25maWd1cmF0aW9uLXNjaGVtYXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2Nvbm5lY3Rpdml0eS1jb25maWd1cmF0aW9uXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9uZXR3b3JrLWdyb3VwLXNjaGVtYXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL25ldHdvcmstZ3JvdXAtc3RhdGljLW1lbWJlci1zY2hlbWFzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9uZXR3b3JrLWdyb3VwLXN0YXRpYy1tZW1iZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL25ldHdvcmstZ3JvdXBcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NlY3VyaXR5LWFkbWluLWNvbmZpZ3VyYXRpb24tc2NoZW1hc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VjdXJpdHktYWRtaW4tY29uZmlndXJhdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VjdXJpdHktYWRtaW4tcnVsZS1jb2xsZWN0aW9uLXNjaGVtYXNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL3NlY3VyaXR5LWFkbWluLXJ1bGUtY29sbGVjdGlvblwiO1xuZXhwb3J0ICogZnJvbSBcIi4vc2VjdXJpdHktYWRtaW4tcnVsZS1zY2hlbWFzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9zZWN1cml0eS1hZG1pbi1ydWxlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi92aXJ0dWFsLW5ldHdvcmstbWFuYWdlci1zY2hlbWFzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi92aXJ0dWFsLW5ldHdvcmstbWFuYWdlclwiO1xuIl19
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* API schemas for Azure Virtual Network Manager Network Groups across all supported versions
|
|
3
|
+
*
|
|
4
|
+
* This file defines the complete API schemas for Microsoft.Network/networkManagers/networkGroups
|
|
5
|
+
* across all supported API versions. The schemas are used by the AzapiResource
|
|
6
|
+
* framework for validation, transformation, and version management.
|
|
7
|
+
*/
|
|
8
|
+
import { ApiSchema, VersionConfig } from "../../core-azure/lib/version-manager/interfaces/version-interfaces";
|
|
9
|
+
/**
|
|
10
|
+
* API Schema for Network Group version 2024-05-01
|
|
11
|
+
*/
|
|
12
|
+
export declare const NETWORK_GROUP_SCHEMA_2024_05_01: ApiSchema;
|
|
13
|
+
/**
|
|
14
|
+
* API Schema for Network Group version 2023-11-01
|
|
15
|
+
*/
|
|
16
|
+
export declare const NETWORK_GROUP_SCHEMA_2023_11_01: ApiSchema;
|
|
17
|
+
/**
|
|
18
|
+
* Version configuration for Network Group 2024-05-01
|
|
19
|
+
*/
|
|
20
|
+
export declare const NETWORK_GROUP_VERSION_2024_05_01: VersionConfig;
|
|
21
|
+
/**
|
|
22
|
+
* Version configuration for Network Group 2023-11-01
|
|
23
|
+
*/
|
|
24
|
+
export declare const NETWORK_GROUP_VERSION_2023_11_01: VersionConfig;
|
|
25
|
+
/**
|
|
26
|
+
* All supported Network Group versions for registration
|
|
27
|
+
*/
|
|
28
|
+
export declare const ALL_NETWORK_GROUP_VERSIONS: VersionConfig[];
|
|
29
|
+
/**
|
|
30
|
+
* Resource type constant
|
|
31
|
+
*/
|
|
32
|
+
export declare const NETWORK_GROUP_TYPE = "Microsoft.Network/networkManagers/networkGroups";
|