@cdktf-providers/aviatrixsystems-aviatrix 8.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (307) hide show
  1. package/LICENSE +355 -0
  2. package/README.md +19 -0
  3. package/dist/account/index.d.ts +762 -0
  4. package/dist/account/index.js +1600 -0
  5. package/dist/account-user/index.d.ts +74 -0
  6. package/dist/account-user/index.js +151 -0
  7. package/dist/aws-guard-duty/index.d.ts +75 -0
  8. package/dist/aws-guard-duty/index.js +154 -0
  9. package/dist/aws-peer/index.d.ts +126 -0
  10. package/dist/aws-peer/index.js +257 -0
  11. package/dist/aws-tgw/index.d.ts +129 -0
  12. package/dist/aws-tgw/index.js +267 -0
  13. package/dist/aws-tgw-connect/index.d.ts +86 -0
  14. package/dist/aws-tgw-connect/index.js +179 -0
  15. package/dist/aws-tgw-connect-peer/index.d.ts +126 -0
  16. package/dist/aws-tgw-connect-peer/index.js +258 -0
  17. package/dist/aws-tgw-directconnect/index.d.ts +105 -0
  18. package/dist/aws-tgw-directconnect/index.js +214 -0
  19. package/dist/aws-tgw-intra-domain-inspection/index.d.ts +74 -0
  20. package/dist/aws-tgw-intra-domain-inspection/index.js +151 -0
  21. package/dist/aws-tgw-network-domain/index.d.ts +97 -0
  22. package/dist/aws-tgw-network-domain/index.js +200 -0
  23. package/dist/aws-tgw-peering/index.d.ts +64 -0
  24. package/dist/aws-tgw-peering/index.js +131 -0
  25. package/dist/aws-tgw-peering-domain-conn/index.d.ts +84 -0
  26. package/dist/aws-tgw-peering-domain-conn/index.js +171 -0
  27. package/dist/aws-tgw-transit-gateway-attachment/index.d.ts +94 -0
  28. package/dist/aws-tgw-transit-gateway-attachment/index.js +191 -0
  29. package/dist/aws-tgw-vpc-attachment/index.d.ts +160 -0
  30. package/dist/aws-tgw-vpc-attachment/index.js +329 -0
  31. package/dist/aws-tgw-vpn-conn/index.d.ts +225 -0
  32. package/dist/aws-tgw-vpn-conn/index.js +485 -0
  33. package/dist/azure-peer/index.d.ts +106 -0
  34. package/dist/azure-peer/index.js +219 -0
  35. package/dist/azure-spoke-native-peering/index.d.ts +84 -0
  36. package/dist/azure-spoke-native-peering/index.js +171 -0
  37. package/dist/azure-vng-conn/index.d.ts +67 -0
  38. package/dist/azure-vng-conn/index.js +143 -0
  39. package/dist/centralized-transit-firenet/index.d.ts +64 -0
  40. package/dist/centralized-transit-firenet/index.js +131 -0
  41. package/dist/cloudwatch-agent/index.d.ts +87 -0
  42. package/dist/cloudwatch-agent/index.js +181 -0
  43. package/dist/controller-access-allow-list-config/index.d.ts +119 -0
  44. package/dist/controller-access-allow-list-config/index.js +267 -0
  45. package/dist/controller-bgp-communities-auto-cloud-config/index.d.ts +64 -0
  46. package/dist/controller-bgp-communities-auto-cloud-config/index.js +131 -0
  47. package/dist/controller-bgp-communities-global-config/index.d.ts +54 -0
  48. package/dist/controller-bgp-communities-global-config/index.js +111 -0
  49. package/dist/controller-bgp-max-as-limit-config/index.d.ts +54 -0
  50. package/dist/controller-bgp-max-as-limit-config/index.js +111 -0
  51. package/dist/controller-cert-domain-config/index.d.ts +55 -0
  52. package/dist/controller-cert-domain-config/index.js +114 -0
  53. package/dist/controller-config/index.d.ts +267 -0
  54. package/dist/controller-config/index.js +563 -0
  55. package/dist/controller-email-config/index.d.ts +99 -0
  56. package/dist/controller-email-config/index.js +210 -0
  57. package/dist/controller-email-exception-notification-config/index.d.ts +55 -0
  58. package/dist/controller-email-exception-notification-config/index.js +114 -0
  59. package/dist/controller-gateway-keepalive-config/index.d.ts +54 -0
  60. package/dist/controller-gateway-keepalive-config/index.js +111 -0
  61. package/dist/controller-private-mode-config/index.d.ts +65 -0
  62. package/dist/controller-private-mode-config/index.js +134 -0
  63. package/dist/controller-private-oob/index.d.ts +55 -0
  64. package/dist/controller-private-oob/index.js +114 -0
  65. package/dist/controller-security-group-management-config/index.d.ts +65 -0
  66. package/dist/controller-security-group-management-config/index.js +134 -0
  67. package/dist/copilot-association/index.d.ts +54 -0
  68. package/dist/copilot-association/index.js +111 -0
  69. package/dist/copilot-fault-tolerant-deployment/index.d.ts +212 -0
  70. package/dist/copilot-fault-tolerant-deployment/index.js +468 -0
  71. package/dist/copilot-security-group-management-config/index.d.ts +120 -0
  72. package/dist/copilot-security-group-management-config/index.js +249 -0
  73. package/dist/copilot-simple-deployment/index.d.ts +138 -0
  74. package/dist/copilot-simple-deployment/index.js +285 -0
  75. package/dist/data-aviatrix-account/index.d.ts +73 -0
  76. package/dist/data-aviatrix-account/index.js +187 -0
  77. package/dist/data-aviatrix-caller-identity/index.d.ts +45 -0
  78. package/dist/data-aviatrix-caller-identity/index.js +95 -0
  79. package/dist/data-aviatrix-controller-metadata/index.d.ts +48 -0
  80. package/dist/data-aviatrix-controller-metadata/index.js +107 -0
  81. package/dist/data-aviatrix-device-interfaces/index.d.ts +89 -0
  82. package/dist/data-aviatrix-device-interfaces/index.js +190 -0
  83. package/dist/data-aviatrix-edge-gateway-wan-interface-discovery/index.d.ts +65 -0
  84. package/dist/data-aviatrix-edge-gateway-wan-interface-discovery/index.js +135 -0
  85. package/dist/data-aviatrix-firenet/index.d.ts +59 -0
  86. package/dist/data-aviatrix-firenet/index.js +131 -0
  87. package/dist/data-aviatrix-firenet-firewall-manager/index.d.ts +184 -0
  88. package/dist/data-aviatrix-firenet-firewall-manager/index.js +381 -0
  89. package/dist/data-aviatrix-firenet-vendor-integration/index.d.ts +195 -0
  90. package/dist/data-aviatrix-firenet-vendor-integration/index.js +404 -0
  91. package/dist/data-aviatrix-firewall/index.d.ts +96 -0
  92. package/dist/data-aviatrix-firewall/index.js +218 -0
  93. package/dist/data-aviatrix-firewall-instance-images/index.d.ts +90 -0
  94. package/dist/data-aviatrix-firewall-instance-images/index.js +194 -0
  95. package/dist/data-aviatrix-gateway/index.d.ts +135 -0
  96. package/dist/data-aviatrix-gateway/index.js +432 -0
  97. package/dist/data-aviatrix-gateway-image/index.d.ts +65 -0
  98. package/dist/data-aviatrix-gateway-image/index.js +135 -0
  99. package/dist/data-aviatrix-network-domains/index.d.ts +89 -0
  100. package/dist/data-aviatrix-network-domains/index.js +210 -0
  101. package/dist/data-aviatrix-smart-groups/index.d.ts +161 -0
  102. package/dist/data-aviatrix-smart-groups/index.js +373 -0
  103. package/dist/data-aviatrix-spoke-gateway/index.d.ts +125 -0
  104. package/dist/data-aviatrix-spoke-gateway/index.js +392 -0
  105. package/dist/data-aviatrix-spoke-gateway-inspection-subnets/index.d.ts +55 -0
  106. package/dist/data-aviatrix-spoke-gateway-inspection-subnets/index.js +115 -0
  107. package/dist/data-aviatrix-spoke-gateways/index.d.ts +130 -0
  108. package/dist/data-aviatrix-spoke-gateways/index.js +374 -0
  109. package/dist/data-aviatrix-transit-gateway/index.d.ts +208 -0
  110. package/dist/data-aviatrix-transit-gateway/index.js +602 -0
  111. package/dist/data-aviatrix-transit-gateways/index.d.ts +202 -0
  112. package/dist/data-aviatrix-transit-gateways/index.js +540 -0
  113. package/dist/data-aviatrix-vpc/index.d.ts +187 -0
  114. package/dist/data-aviatrix-vpc/index.js +439 -0
  115. package/dist/data-aviatrix-vpc-tracker/index.d.ts +165 -0
  116. package/dist/data-aviatrix-vpc-tracker/index.js +369 -0
  117. package/dist/datadog-agent/index.d.ts +88 -0
  118. package/dist/datadog-agent/index.js +184 -0
  119. package/dist/device-interface-config/index.d.ts +74 -0
  120. package/dist/device-interface-config/index.js +151 -0
  121. package/dist/distributed-firewalling-config/index.d.ts +55 -0
  122. package/dist/distributed-firewalling-config/index.js +114 -0
  123. package/dist/distributed-firewalling-default-action-rule/index.d.ts +64 -0
  124. package/dist/distributed-firewalling-default-action-rule/index.js +131 -0
  125. package/dist/distributed-firewalling-intra-vpc/index.d.ts +117 -0
  126. package/dist/distributed-firewalling-intra-vpc/index.js +266 -0
  127. package/dist/distributed-firewalling-origin-cert-enforcement-config/index.d.ts +55 -0
  128. package/dist/distributed-firewalling-origin-cert-enforcement-config/index.js +114 -0
  129. package/dist/distributed-firewalling-policy-list/index.d.ts +291 -0
  130. package/dist/distributed-firewalling-policy-list/index.js +705 -0
  131. package/dist/distributed-firewalling-proxy-ca-config/index.d.ts +69 -0
  132. package/dist/distributed-firewalling-proxy-ca-config/index.js +151 -0
  133. package/dist/edge-csp/index.d.ts +693 -0
  134. package/dist/edge-csp/index.js +1561 -0
  135. package/dist/edge-csp-ha/index.d.ts +227 -0
  136. package/dist/edge-csp-ha/index.js +532 -0
  137. package/dist/edge-equinix/index.d.ts +651 -0
  138. package/dist/edge-equinix/index.js +1475 -0
  139. package/dist/edge-equinix-ha/index.d.ts +227 -0
  140. package/dist/edge-equinix-ha/index.js +532 -0
  141. package/dist/edge-gateway-selfmanaged/index.d.ts +607 -0
  142. package/dist/edge-gateway-selfmanaged/index.js +1378 -0
  143. package/dist/edge-gateway-selfmanaged-ha/index.d.ts +246 -0
  144. package/dist/edge-gateway-selfmanaged-ha/index.js +558 -0
  145. package/dist/edge-megaport/index.d.ts +704 -0
  146. package/dist/edge-megaport/index.js +1600 -0
  147. package/dist/edge-megaport-ha/index.d.ts +206 -0
  148. package/dist/edge-megaport-ha/index.js +479 -0
  149. package/dist/edge-neo/index.d.ts +669 -0
  150. package/dist/edge-neo/index.js +1509 -0
  151. package/dist/edge-neo-device-onboarding/index.d.ts +216 -0
  152. package/dist/edge-neo-device-onboarding/index.js +489 -0
  153. package/dist/edge-neo-ha/index.d.ts +227 -0
  154. package/dist/edge-neo-ha/index.js +532 -0
  155. package/dist/edge-platform/index.d.ts +691 -0
  156. package/dist/edge-platform/index.js +1555 -0
  157. package/dist/edge-platform-device-onboarding/index.d.ts +216 -0
  158. package/dist/edge-platform-device-onboarding/index.js +489 -0
  159. package/dist/edge-platform-ha/index.d.ts +227 -0
  160. package/dist/edge-platform-ha/index.js +532 -0
  161. package/dist/edge-proxy-profile/index.d.ts +98 -0
  162. package/dist/edge-proxy-profile/index.js +204 -0
  163. package/dist/edge-spoke/index.d.ts +434 -0
  164. package/dist/edge-spoke/index.js +953 -0
  165. package/dist/edge-spoke-external-device-conn/index.d.ts +371 -0
  166. package/dist/edge-spoke-external-device-conn/index.js +800 -0
  167. package/dist/edge-spoke-transit-attachment/index.d.ts +197 -0
  168. package/dist/edge-spoke-transit-attachment/index.js +411 -0
  169. package/dist/edge-vm-selfmanaged/index.d.ts +423 -0
  170. package/dist/edge-vm-selfmanaged/index.js +930 -0
  171. package/dist/edge-vm-selfmanaged-ha/index.d.ts +202 -0
  172. package/dist/edge-vm-selfmanaged-ha/index.js +456 -0
  173. package/dist/edge-zededa/index.d.ts +693 -0
  174. package/dist/edge-zededa/index.js +1561 -0
  175. package/dist/edge-zededa-ha/index.d.ts +227 -0
  176. package/dist/edge-zededa-ha/index.js +532 -0
  177. package/dist/filebeat-forwarder/index.d.ts +98 -0
  178. package/dist/filebeat-forwarder/index.js +204 -0
  179. package/dist/firenet/index.d.ts +120 -0
  180. package/dist/firenet/index.js +249 -0
  181. package/dist/firewall/index.d.ts +204 -0
  182. package/dist/firewall/index.js +467 -0
  183. package/dist/firewall-instance/index.d.ts +384 -0
  184. package/dist/firewall-instance/index.js +794 -0
  185. package/dist/firewall-instance-association/index.d.ts +141 -0
  186. package/dist/firewall-instance-association/index.js +292 -0
  187. package/dist/firewall-management-access/index.d.ts +64 -0
  188. package/dist/firewall-management-access/index.js +131 -0
  189. package/dist/firewall-policy/index.d.ts +138 -0
  190. package/dist/firewall-policy/index.js +283 -0
  191. package/dist/firewall-tag/index.d.ts +118 -0
  192. package/dist/firewall-tag/index.js +264 -0
  193. package/dist/fqdn/index.d.ts +237 -0
  194. package/dist/fqdn/index.js +542 -0
  195. package/dist/fqdn-global-config/index.d.ts +110 -0
  196. package/dist/fqdn-global-config/index.js +229 -0
  197. package/dist/fqdn-pass-through/index.d.ts +64 -0
  198. package/dist/fqdn-pass-through/index.js +131 -0
  199. package/dist/fqdn-tag-rule/index.d.ts +95 -0
  200. package/dist/fqdn-tag-rule/index.js +194 -0
  201. package/dist/gateway/index.d.ts +913 -0
  202. package/dist/gateway/index.js +1904 -0
  203. package/dist/gateway-certificate-config/index.d.ts +64 -0
  204. package/dist/gateway-certificate-config/index.js +131 -0
  205. package/dist/gateway-dnat/index.d.ts +319 -0
  206. package/dist/gateway-dnat/index.js +785 -0
  207. package/dist/gateway-snat/index.d.ts +342 -0
  208. package/dist/gateway-snat/index.js +834 -0
  209. package/dist/geo-vpn/index.d.ts +94 -0
  210. package/dist/geo-vpn/index.js +191 -0
  211. package/dist/global-vpc-excluded-instance/index.d.ts +75 -0
  212. package/dist/global-vpc-excluded-instance/index.js +155 -0
  213. package/dist/global-vpc-tagging-settings/index.d.ts +64 -0
  214. package/dist/global-vpc-tagging-settings/index.js +131 -0
  215. package/dist/index.d.ts +150 -0
  216. package/dist/index.js +151 -0
  217. package/dist/kubernetes-cluster/index.d.ts +232 -0
  218. package/dist/kubernetes-cluster/index.js +534 -0
  219. package/dist/lazy-index.d.ts +0 -0
  220. package/dist/lazy-index.js +151 -0
  221. package/dist/link-hierarchy/index.d.ts +161 -0
  222. package/dist/link-hierarchy/index.js +370 -0
  223. package/dist/netflow-agent/index.d.ts +98 -0
  224. package/dist/netflow-agent/index.js +204 -0
  225. package/dist/periodic-ping/index.d.ts +74 -0
  226. package/dist/periodic-ping/index.js +151 -0
  227. package/dist/private-mode-lb/index.d.ts +159 -0
  228. package/dist/private-mode-lb/index.js +347 -0
  229. package/dist/private-mode-multicloud-endpoint/index.d.ts +85 -0
  230. package/dist/private-mode-multicloud-endpoint/index.js +175 -0
  231. package/dist/provider/index.d.ts +121 -0
  232. package/dist/provider/index.js +273 -0
  233. package/dist/proxy-config/index.d.ts +75 -0
  234. package/dist/proxy-config/index.js +154 -0
  235. package/dist/qos-class/index.d.ts +65 -0
  236. package/dist/qos-class/index.js +135 -0
  237. package/dist/qos-policy-list/index.d.ts +118 -0
  238. package/dist/qos-policy-list/index.js +270 -0
  239. package/dist/rbac-group/index.d.ts +65 -0
  240. package/dist/rbac-group/index.js +134 -0
  241. package/dist/rbac-group-access-account-attachment/index.d.ts +64 -0
  242. package/dist/rbac-group-access-account-attachment/index.js +131 -0
  243. package/dist/rbac-group-permission-attachment/index.d.ts +64 -0
  244. package/dist/rbac-group-permission-attachment/index.js +131 -0
  245. package/dist/rbac-group-user-attachment/index.d.ts +64 -0
  246. package/dist/rbac-group-user-attachment/index.js +131 -0
  247. package/dist/remote-syslog/index.d.ts +154 -0
  248. package/dist/remote-syslog/index.js +323 -0
  249. package/dist/saml-endpoint/index.d.ts +152 -0
  250. package/dist/saml-endpoint/index.js +315 -0
  251. package/dist/segmentation-network-domain/index.d.ts +54 -0
  252. package/dist/segmentation-network-domain/index.js +111 -0
  253. package/dist/segmentation-network-domain-association/index.d.ts +75 -0
  254. package/dist/segmentation-network-domain-association/index.js +154 -0
  255. package/dist/segmentation-network-domain-connection-policy/index.d.ts +64 -0
  256. package/dist/segmentation-network-domain-connection-policy/index.js +131 -0
  257. package/dist/site2cloud/index.d.ts +642 -0
  258. package/dist/site2cloud/index.js +1335 -0
  259. package/dist/site2cloud-ca-cert-tag/index.d.ts +112 -0
  260. package/dist/site2cloud-ca-cert-tag/index.js +256 -0
  261. package/dist/sla-class/index.d.ts +85 -0
  262. package/dist/sla-class/index.js +175 -0
  263. package/dist/smart-group/index.d.ts +336 -0
  264. package/dist/smart-group/index.js +789 -0
  265. package/dist/splunk-logging/index.d.ts +100 -0
  266. package/dist/splunk-logging/index.js +210 -0
  267. package/dist/spoke-external-device-conn/index.d.ts +638 -0
  268. package/dist/spoke-external-device-conn/index.js +1361 -0
  269. package/dist/spoke-gateway/index.d.ts +903 -0
  270. package/dist/spoke-gateway/index.js +1885 -0
  271. package/dist/spoke-gateway-subnet-group/index.d.ts +75 -0
  272. package/dist/spoke-gateway-subnet-group/index.js +154 -0
  273. package/dist/spoke-ha-gateway/index.d.ts +172 -0
  274. package/dist/spoke-ha-gateway/index.js +374 -0
  275. package/dist/spoke-transit-attachment/index.d.ts +131 -0
  276. package/dist/spoke-transit-attachment/index.js +273 -0
  277. package/dist/sumologic-forwarder/index.d.ts +98 -0
  278. package/dist/sumologic-forwarder/index.js +204 -0
  279. package/dist/traffic-classifier/index.d.ts +239 -0
  280. package/dist/traffic-classifier/index.js +574 -0
  281. package/dist/trans-peer/index.d.ts +74 -0
  282. package/dist/trans-peer/index.js +151 -0
  283. package/dist/transit-external-device-conn/index.d.ts +694 -0
  284. package/dist/transit-external-device-conn/index.js +1479 -0
  285. package/dist/transit-firenet-policy/index.d.ts +64 -0
  286. package/dist/transit-firenet-policy/index.js +131 -0
  287. package/dist/transit-gateway/index.d.ts +1566 -0
  288. package/dist/transit-gateway/index.js +3442 -0
  289. package/dist/transit-gateway-peering/index.d.ts +240 -0
  290. package/dist/transit-gateway-peering/index.js +499 -0
  291. package/dist/tunnel/index.d.ts +78 -0
  292. package/dist/tunnel/index.js +166 -0
  293. package/dist/vgw-conn/index.d.ts +158 -0
  294. package/dist/vgw-conn/index.js +323 -0
  295. package/dist/vpc/index.d.ts +339 -0
  296. package/dist/vpc/index.js +758 -0
  297. package/dist/vpn-cert-download/index.d.ts +66 -0
  298. package/dist/vpn-cert-download/index.js +137 -0
  299. package/dist/vpn-profile/index.d.ts +169 -0
  300. package/dist/vpn-profile/index.js +383 -0
  301. package/dist/vpn-user/index.d.ts +129 -0
  302. package/dist/vpn-user/index.js +272 -0
  303. package/dist/vpn-user-accelerator/index.d.ts +54 -0
  304. package/dist/vpn-user-accelerator/index.js +111 -0
  305. package/dist/web-group/index.d.ts +144 -0
  306. package/dist/web-group/index.js +341 -0
  307. package/package.json +51 -0
@@ -0,0 +1,206 @@
1
+ import { Construct } from 'constructs';
2
+ import * as cdktf from 'cdktf';
3
+ export interface EdgeMegaportHaConfig extends cdktf.TerraformMetaArguments {
4
+ /**
5
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#id EdgeMegaportHa#id}
6
+ *
7
+ * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
8
+ * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
9
+ */
10
+ readonly id?: string;
11
+ /**
12
+ * Set of management egress gateway IP/prefix.
13
+ *
14
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#management_egress_ip_prefix_list EdgeMegaportHa#management_egress_ip_prefix_list}
15
+ */
16
+ readonly managementEgressIpPrefixList?: string[];
17
+ /**
18
+ * Primary gateway name.
19
+ *
20
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#primary_gw_name EdgeMegaportHa#primary_gw_name}
21
+ */
22
+ readonly primaryGwName: string;
23
+ /**
24
+ * The location where the ZTP file will be stored.
25
+ *
26
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#ztp_file_download_path EdgeMegaportHa#ztp_file_download_path}
27
+ */
28
+ readonly ztpFileDownloadPath: string;
29
+ /**
30
+ * interfaces block
31
+ *
32
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#interfaces EdgeMegaportHa#interfaces}
33
+ */
34
+ readonly interfaces: EdgeMegaportHaInterfaces[] | cdktf.IResolvable;
35
+ }
36
+ export interface EdgeMegaportHaInterfaces {
37
+ /**
38
+ * Primary DNS server IP.
39
+ *
40
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#dns_server_ip EdgeMegaportHa#dns_server_ip}
41
+ */
42
+ readonly dnsServerIp?: string;
43
+ /**
44
+ * Enable DHCP.
45
+ *
46
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#enable_dhcp EdgeMegaportHa#enable_dhcp}
47
+ */
48
+ readonly enableDhcp?: boolean | cdktf.IResolvable;
49
+ /**
50
+ * Gateway IP.
51
+ *
52
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#gateway_ip EdgeMegaportHa#gateway_ip}
53
+ */
54
+ readonly gatewayIp?: string;
55
+ /**
56
+ * Interface static IP address.
57
+ *
58
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#ip_address EdgeMegaportHa#ip_address}
59
+ */
60
+ readonly ipAddress?: string;
61
+ /**
62
+ * Logical interface name e.g., wan0, lan0, mgmt0.
63
+ *
64
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#logical_ifname EdgeMegaportHa#logical_ifname}
65
+ */
66
+ readonly logicalIfname: string;
67
+ /**
68
+ * Secondary DNS server IP.
69
+ *
70
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#secondary_dns_server_ip EdgeMegaportHa#secondary_dns_server_ip}
71
+ */
72
+ readonly secondaryDnsServerIp?: string;
73
+ /**
74
+ * Tag.
75
+ *
76
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#tag EdgeMegaportHa#tag}
77
+ */
78
+ readonly tag?: string;
79
+ /**
80
+ * WAN interface public IP.
81
+ *
82
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#wan_public_ip EdgeMegaportHa#wan_public_ip}
83
+ */
84
+ readonly wanPublicIp?: string;
85
+ }
86
+ export declare function edgeMegaportHaInterfacesToTerraform(struct?: EdgeMegaportHaInterfaces | cdktf.IResolvable): any;
87
+ export declare function edgeMegaportHaInterfacesToHclTerraform(struct?: EdgeMegaportHaInterfaces | cdktf.IResolvable): any;
88
+ export declare class EdgeMegaportHaInterfacesOutputReference extends cdktf.ComplexObject {
89
+ private isEmptyObject;
90
+ private resolvableValue?;
91
+ /**
92
+ * @param terraformResource The parent resource
93
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
94
+ * @param complexObjectIndex the index of this item in the list
95
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
96
+ */
97
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
98
+ get internalValue(): EdgeMegaportHaInterfaces | cdktf.IResolvable | undefined;
99
+ set internalValue(value: EdgeMegaportHaInterfaces | cdktf.IResolvable | undefined);
100
+ private _dnsServerIp?;
101
+ get dnsServerIp(): string;
102
+ set dnsServerIp(value: string);
103
+ resetDnsServerIp(): void;
104
+ get dnsServerIpInput(): string;
105
+ private _enableDhcp?;
106
+ get enableDhcp(): boolean | cdktf.IResolvable;
107
+ set enableDhcp(value: boolean | cdktf.IResolvable);
108
+ resetEnableDhcp(): void;
109
+ get enableDhcpInput(): any;
110
+ private _gatewayIp?;
111
+ get gatewayIp(): string;
112
+ set gatewayIp(value: string);
113
+ resetGatewayIp(): void;
114
+ get gatewayIpInput(): string;
115
+ private _ipAddress?;
116
+ get ipAddress(): string;
117
+ set ipAddress(value: string);
118
+ resetIpAddress(): void;
119
+ get ipAddressInput(): string;
120
+ private _logicalIfname?;
121
+ get logicalIfname(): string;
122
+ set logicalIfname(value: string);
123
+ get logicalIfnameInput(): string;
124
+ private _secondaryDnsServerIp?;
125
+ get secondaryDnsServerIp(): string;
126
+ set secondaryDnsServerIp(value: string);
127
+ resetSecondaryDnsServerIp(): void;
128
+ get secondaryDnsServerIpInput(): string;
129
+ private _tag?;
130
+ get tag(): string;
131
+ set tag(value: string);
132
+ resetTag(): void;
133
+ get tagInput(): string;
134
+ private _wanPublicIp?;
135
+ get wanPublicIp(): string;
136
+ set wanPublicIp(value: string);
137
+ resetWanPublicIp(): void;
138
+ get wanPublicIpInput(): string;
139
+ }
140
+ export declare class EdgeMegaportHaInterfacesList extends cdktf.ComplexList {
141
+ protected terraformResource: cdktf.IInterpolatingParent;
142
+ protected terraformAttribute: string;
143
+ protected wrapsSet: boolean;
144
+ internalValue?: EdgeMegaportHaInterfaces[] | cdktf.IResolvable;
145
+ /**
146
+ * @param terraformResource The parent resource
147
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
148
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
149
+ */
150
+ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
151
+ /**
152
+ * @param index the index of the item to return
153
+ */
154
+ get(index: number): EdgeMegaportHaInterfacesOutputReference;
155
+ }
156
+ /**
157
+ * Represents a {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha aviatrix_edge_megaport_ha}
158
+ */
159
+ export declare class EdgeMegaportHa extends cdktf.TerraformResource {
160
+ static readonly tfResourceType = "aviatrix_edge_megaport_ha";
161
+ /**
162
+ * Generates CDKTF code for importing a EdgeMegaportHa resource upon running "cdktf plan <stack-name>"
163
+ * @param scope The scope in which to define this construct
164
+ * @param importToId The construct id used in the generated config for the EdgeMegaportHa to import
165
+ * @param importFromId The id of the existing EdgeMegaportHa that should be imported. Refer to the {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#import import section} in the documentation of this resource for the id to use
166
+ * @param provider? Optional instance of the provider where the EdgeMegaportHa to import is found
167
+ */
168
+ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any;
169
+ /**
170
+ * Create a new {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha aviatrix_edge_megaport_ha} Resource
171
+ *
172
+ * @param scope The scope in which to define this construct
173
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
174
+ * @param options EdgeMegaportHaConfig
175
+ */
176
+ constructor(scope: Construct, id: string, config: EdgeMegaportHaConfig);
177
+ get accountName(): any;
178
+ private _id?;
179
+ get id(): string;
180
+ set id(value: string);
181
+ resetId(): void;
182
+ get idInput(): string;
183
+ private _managementEgressIpPrefixList?;
184
+ get managementEgressIpPrefixList(): string[];
185
+ set managementEgressIpPrefixList(value: string[]);
186
+ resetManagementEgressIpPrefixList(): void;
187
+ get managementEgressIpPrefixListInput(): string[];
188
+ private _primaryGwName?;
189
+ get primaryGwName(): string;
190
+ set primaryGwName(value: string);
191
+ get primaryGwNameInput(): string;
192
+ private _ztpFileDownloadPath?;
193
+ get ztpFileDownloadPath(): string;
194
+ set ztpFileDownloadPath(value: string);
195
+ get ztpFileDownloadPathInput(): string;
196
+ private _interfaces;
197
+ get interfaces(): EdgeMegaportHaInterfacesList;
198
+ putInterfaces(value: EdgeMegaportHaInterfaces[] | cdktf.IResolvable): void;
199
+ get interfacesInput(): any;
200
+ protected synthesizeAttributes(): {
201
+ [name: string]: any;
202
+ };
203
+ protected synthesizeHclAttributes(): {
204
+ [name: string]: any;
205
+ };
206
+ }
@@ -0,0 +1,479 @@
1
+ // https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function edgeMegaportHaInterfacesToTerraform(struct) {
5
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
6
+ return struct;
7
+ }
8
+ if (cdktf.isComplexElement(struct)) {
9
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
10
+ }
11
+ return {
12
+ dns_server_ip: cdktf.stringToTerraform(struct.dnsServerIp),
13
+ enable_dhcp: cdktf.booleanToTerraform(struct.enableDhcp),
14
+ gateway_ip: cdktf.stringToTerraform(struct.gatewayIp),
15
+ ip_address: cdktf.stringToTerraform(struct.ipAddress),
16
+ logical_ifname: cdktf.stringToTerraform(struct.logicalIfname),
17
+ secondary_dns_server_ip: cdktf.stringToTerraform(struct.secondaryDnsServerIp),
18
+ tag: cdktf.stringToTerraform(struct.tag),
19
+ wan_public_ip: cdktf.stringToTerraform(struct.wanPublicIp),
20
+ };
21
+ }
22
+ export function edgeMegaportHaInterfacesToHclTerraform(struct) {
23
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
24
+ return struct;
25
+ }
26
+ if (cdktf.isComplexElement(struct)) {
27
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
28
+ }
29
+ const attrs = {
30
+ dns_server_ip: {
31
+ value: cdktf.stringToHclTerraform(struct.dnsServerIp),
32
+ isBlock: false,
33
+ type: "simple",
34
+ storageClassType: "string",
35
+ },
36
+ enable_dhcp: {
37
+ value: cdktf.booleanToHclTerraform(struct.enableDhcp),
38
+ isBlock: false,
39
+ type: "simple",
40
+ storageClassType: "boolean",
41
+ },
42
+ gateway_ip: {
43
+ value: cdktf.stringToHclTerraform(struct.gatewayIp),
44
+ isBlock: false,
45
+ type: "simple",
46
+ storageClassType: "string",
47
+ },
48
+ ip_address: {
49
+ value: cdktf.stringToHclTerraform(struct.ipAddress),
50
+ isBlock: false,
51
+ type: "simple",
52
+ storageClassType: "string",
53
+ },
54
+ logical_ifname: {
55
+ value: cdktf.stringToHclTerraform(struct.logicalIfname),
56
+ isBlock: false,
57
+ type: "simple",
58
+ storageClassType: "string",
59
+ },
60
+ secondary_dns_server_ip: {
61
+ value: cdktf.stringToHclTerraform(struct.secondaryDnsServerIp),
62
+ isBlock: false,
63
+ type: "simple",
64
+ storageClassType: "string",
65
+ },
66
+ tag: {
67
+ value: cdktf.stringToHclTerraform(struct.tag),
68
+ isBlock: false,
69
+ type: "simple",
70
+ storageClassType: "string",
71
+ },
72
+ wan_public_ip: {
73
+ value: cdktf.stringToHclTerraform(struct.wanPublicIp),
74
+ isBlock: false,
75
+ type: "simple",
76
+ storageClassType: "string",
77
+ },
78
+ };
79
+ // remove undefined attributes
80
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
81
+ }
82
+ export class EdgeMegaportHaInterfacesOutputReference extends cdktf.ComplexObject {
83
+ isEmptyObject = false;
84
+ resolvableValue;
85
+ /**
86
+ * @param terraformResource The parent resource
87
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
88
+ * @param complexObjectIndex the index of this item in the list
89
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
90
+ */
91
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
92
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
93
+ }
94
+ get internalValue() {
95
+ if (this.resolvableValue) {
96
+ return this.resolvableValue;
97
+ }
98
+ let hasAnyValues = this.isEmptyObject;
99
+ const internalValueResult = {};
100
+ if (this._dnsServerIp !== undefined) {
101
+ hasAnyValues = true;
102
+ internalValueResult.dnsServerIp = this._dnsServerIp;
103
+ }
104
+ if (this._enableDhcp !== undefined) {
105
+ hasAnyValues = true;
106
+ internalValueResult.enableDhcp = this._enableDhcp;
107
+ }
108
+ if (this._gatewayIp !== undefined) {
109
+ hasAnyValues = true;
110
+ internalValueResult.gatewayIp = this._gatewayIp;
111
+ }
112
+ if (this._ipAddress !== undefined) {
113
+ hasAnyValues = true;
114
+ internalValueResult.ipAddress = this._ipAddress;
115
+ }
116
+ if (this._logicalIfname !== undefined) {
117
+ hasAnyValues = true;
118
+ internalValueResult.logicalIfname = this._logicalIfname;
119
+ }
120
+ if (this._secondaryDnsServerIp !== undefined) {
121
+ hasAnyValues = true;
122
+ internalValueResult.secondaryDnsServerIp = this._secondaryDnsServerIp;
123
+ }
124
+ if (this._tag !== undefined) {
125
+ hasAnyValues = true;
126
+ internalValueResult.tag = this._tag;
127
+ }
128
+ if (this._wanPublicIp !== undefined) {
129
+ hasAnyValues = true;
130
+ internalValueResult.wanPublicIp = this._wanPublicIp;
131
+ }
132
+ return hasAnyValues ? internalValueResult : undefined;
133
+ }
134
+ set internalValue(value) {
135
+ if (value === undefined) {
136
+ this.isEmptyObject = false;
137
+ this.resolvableValue = undefined;
138
+ this._dnsServerIp = undefined;
139
+ this._enableDhcp = undefined;
140
+ this._gatewayIp = undefined;
141
+ this._ipAddress = undefined;
142
+ this._logicalIfname = undefined;
143
+ this._secondaryDnsServerIp = undefined;
144
+ this._tag = undefined;
145
+ this._wanPublicIp = undefined;
146
+ }
147
+ else if (cdktf.Tokenization.isResolvable(value)) {
148
+ this.isEmptyObject = false;
149
+ this.resolvableValue = value;
150
+ }
151
+ else {
152
+ this.isEmptyObject = Object.keys(value).length === 0;
153
+ this.resolvableValue = undefined;
154
+ this._dnsServerIp = value.dnsServerIp;
155
+ this._enableDhcp = value.enableDhcp;
156
+ this._gatewayIp = value.gatewayIp;
157
+ this._ipAddress = value.ipAddress;
158
+ this._logicalIfname = value.logicalIfname;
159
+ this._secondaryDnsServerIp = value.secondaryDnsServerIp;
160
+ this._tag = value.tag;
161
+ this._wanPublicIp = value.wanPublicIp;
162
+ }
163
+ }
164
+ // dns_server_ip - computed: false, optional: true, required: false
165
+ _dnsServerIp;
166
+ get dnsServerIp() {
167
+ return this.getStringAttribute('dns_server_ip');
168
+ }
169
+ set dnsServerIp(value) {
170
+ this._dnsServerIp = value;
171
+ }
172
+ resetDnsServerIp() {
173
+ this._dnsServerIp = undefined;
174
+ }
175
+ // Temporarily expose input value. Use with caution.
176
+ get dnsServerIpInput() {
177
+ return this._dnsServerIp;
178
+ }
179
+ // enable_dhcp - computed: false, optional: true, required: false
180
+ _enableDhcp;
181
+ get enableDhcp() {
182
+ return this.getBooleanAttribute('enable_dhcp');
183
+ }
184
+ set enableDhcp(value) {
185
+ this._enableDhcp = value;
186
+ }
187
+ resetEnableDhcp() {
188
+ this._enableDhcp = undefined;
189
+ }
190
+ // Temporarily expose input value. Use with caution.
191
+ get enableDhcpInput() {
192
+ return this._enableDhcp;
193
+ }
194
+ // gateway_ip - computed: false, optional: true, required: false
195
+ _gatewayIp;
196
+ get gatewayIp() {
197
+ return this.getStringAttribute('gateway_ip');
198
+ }
199
+ set gatewayIp(value) {
200
+ this._gatewayIp = value;
201
+ }
202
+ resetGatewayIp() {
203
+ this._gatewayIp = undefined;
204
+ }
205
+ // Temporarily expose input value. Use with caution.
206
+ get gatewayIpInput() {
207
+ return this._gatewayIp;
208
+ }
209
+ // ip_address - computed: false, optional: true, required: false
210
+ _ipAddress;
211
+ get ipAddress() {
212
+ return this.getStringAttribute('ip_address');
213
+ }
214
+ set ipAddress(value) {
215
+ this._ipAddress = value;
216
+ }
217
+ resetIpAddress() {
218
+ this._ipAddress = undefined;
219
+ }
220
+ // Temporarily expose input value. Use with caution.
221
+ get ipAddressInput() {
222
+ return this._ipAddress;
223
+ }
224
+ // logical_ifname - computed: false, optional: false, required: true
225
+ _logicalIfname;
226
+ get logicalIfname() {
227
+ return this.getStringAttribute('logical_ifname');
228
+ }
229
+ set logicalIfname(value) {
230
+ this._logicalIfname = value;
231
+ }
232
+ // Temporarily expose input value. Use with caution.
233
+ get logicalIfnameInput() {
234
+ return this._logicalIfname;
235
+ }
236
+ // secondary_dns_server_ip - computed: false, optional: true, required: false
237
+ _secondaryDnsServerIp;
238
+ get secondaryDnsServerIp() {
239
+ return this.getStringAttribute('secondary_dns_server_ip');
240
+ }
241
+ set secondaryDnsServerIp(value) {
242
+ this._secondaryDnsServerIp = value;
243
+ }
244
+ resetSecondaryDnsServerIp() {
245
+ this._secondaryDnsServerIp = undefined;
246
+ }
247
+ // Temporarily expose input value. Use with caution.
248
+ get secondaryDnsServerIpInput() {
249
+ return this._secondaryDnsServerIp;
250
+ }
251
+ // tag - computed: false, optional: true, required: false
252
+ _tag;
253
+ get tag() {
254
+ return this.getStringAttribute('tag');
255
+ }
256
+ set tag(value) {
257
+ this._tag = value;
258
+ }
259
+ resetTag() {
260
+ this._tag = undefined;
261
+ }
262
+ // Temporarily expose input value. Use with caution.
263
+ get tagInput() {
264
+ return this._tag;
265
+ }
266
+ // wan_public_ip - computed: false, optional: true, required: false
267
+ _wanPublicIp;
268
+ get wanPublicIp() {
269
+ return this.getStringAttribute('wan_public_ip');
270
+ }
271
+ set wanPublicIp(value) {
272
+ this._wanPublicIp = value;
273
+ }
274
+ resetWanPublicIp() {
275
+ this._wanPublicIp = undefined;
276
+ }
277
+ // Temporarily expose input value. Use with caution.
278
+ get wanPublicIpInput() {
279
+ return this._wanPublicIp;
280
+ }
281
+ }
282
+ export class EdgeMegaportHaInterfacesList extends cdktf.ComplexList {
283
+ terraformResource;
284
+ terraformAttribute;
285
+ wrapsSet;
286
+ internalValue;
287
+ /**
288
+ * @param terraformResource The parent resource
289
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
290
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
291
+ */
292
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
293
+ super(terraformResource, terraformAttribute, wrapsSet);
294
+ this.terraformResource = terraformResource;
295
+ this.terraformAttribute = terraformAttribute;
296
+ this.wrapsSet = wrapsSet;
297
+ }
298
+ /**
299
+ * @param index the index of the item to return
300
+ */
301
+ get(index) {
302
+ return new EdgeMegaportHaInterfacesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
303
+ }
304
+ }
305
+ /**
306
+ * Represents a {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha aviatrix_edge_megaport_ha}
307
+ */
308
+ export class EdgeMegaportHa extends cdktf.TerraformResource {
309
+ // =================
310
+ // STATIC PROPERTIES
311
+ // =================
312
+ static tfResourceType = "aviatrix_edge_megaport_ha";
313
+ // ==============
314
+ // STATIC Methods
315
+ // ==============
316
+ /**
317
+ * Generates CDKTF code for importing a EdgeMegaportHa resource upon running "cdktf plan <stack-name>"
318
+ * @param scope The scope in which to define this construct
319
+ * @param importToId The construct id used in the generated config for the EdgeMegaportHa to import
320
+ * @param importFromId The id of the existing EdgeMegaportHa that should be imported. Refer to the {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha#import import section} in the documentation of this resource for the id to use
321
+ * @param provider? Optional instance of the provider where the EdgeMegaportHa to import is found
322
+ */
323
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
324
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aviatrix_edge_megaport_ha", importId: importFromId, provider });
325
+ }
326
+ // ===========
327
+ // INITIALIZER
328
+ // ===========
329
+ /**
330
+ * Create a new {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/edge_megaport_ha aviatrix_edge_megaport_ha} Resource
331
+ *
332
+ * @param scope The scope in which to define this construct
333
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
334
+ * @param options EdgeMegaportHaConfig
335
+ */
336
+ constructor(scope, id, config) {
337
+ super(scope, id, {
338
+ terraformResourceType: 'aviatrix_edge_megaport_ha',
339
+ terraformGeneratorMetadata: {
340
+ providerName: 'aviatrix',
341
+ providerVersion: '8.1.10',
342
+ providerVersionConstraint: '8.1.10'
343
+ },
344
+ provider: config.provider,
345
+ dependsOn: config.dependsOn,
346
+ count: config.count,
347
+ lifecycle: config.lifecycle,
348
+ provisioners: config.provisioners,
349
+ connection: config.connection,
350
+ forEach: config.forEach
351
+ });
352
+ this._id = config.id;
353
+ this._managementEgressIpPrefixList = config.managementEgressIpPrefixList;
354
+ this._primaryGwName = config.primaryGwName;
355
+ this._ztpFileDownloadPath = config.ztpFileDownloadPath;
356
+ this._interfaces.internalValue = config.interfaces;
357
+ }
358
+ // ==========
359
+ // ATTRIBUTES
360
+ // ==========
361
+ // account_name - computed: true, optional: false, required: false
362
+ get accountName() {
363
+ return this.getStringAttribute('account_name');
364
+ }
365
+ // id - computed: true, optional: true, required: false
366
+ _id;
367
+ get id() {
368
+ return this.getStringAttribute('id');
369
+ }
370
+ set id(value) {
371
+ this._id = value;
372
+ }
373
+ resetId() {
374
+ this._id = undefined;
375
+ }
376
+ // Temporarily expose input value. Use with caution.
377
+ get idInput() {
378
+ return this._id;
379
+ }
380
+ // management_egress_ip_prefix_list - computed: false, optional: true, required: false
381
+ _managementEgressIpPrefixList;
382
+ get managementEgressIpPrefixList() {
383
+ return cdktf.Fn.tolist(this.getListAttribute('management_egress_ip_prefix_list'));
384
+ }
385
+ set managementEgressIpPrefixList(value) {
386
+ this._managementEgressIpPrefixList = value;
387
+ }
388
+ resetManagementEgressIpPrefixList() {
389
+ this._managementEgressIpPrefixList = undefined;
390
+ }
391
+ // Temporarily expose input value. Use with caution.
392
+ get managementEgressIpPrefixListInput() {
393
+ return this._managementEgressIpPrefixList;
394
+ }
395
+ // primary_gw_name - computed: false, optional: false, required: true
396
+ _primaryGwName;
397
+ get primaryGwName() {
398
+ return this.getStringAttribute('primary_gw_name');
399
+ }
400
+ set primaryGwName(value) {
401
+ this._primaryGwName = value;
402
+ }
403
+ // Temporarily expose input value. Use with caution.
404
+ get primaryGwNameInput() {
405
+ return this._primaryGwName;
406
+ }
407
+ // ztp_file_download_path - computed: false, optional: false, required: true
408
+ _ztpFileDownloadPath;
409
+ get ztpFileDownloadPath() {
410
+ return this.getStringAttribute('ztp_file_download_path');
411
+ }
412
+ set ztpFileDownloadPath(value) {
413
+ this._ztpFileDownloadPath = value;
414
+ }
415
+ // Temporarily expose input value. Use with caution.
416
+ get ztpFileDownloadPathInput() {
417
+ return this._ztpFileDownloadPath;
418
+ }
419
+ // interfaces - computed: false, optional: false, required: true
420
+ _interfaces = new EdgeMegaportHaInterfacesList(this, "interfaces", true);
421
+ get interfaces() {
422
+ return this._interfaces;
423
+ }
424
+ putInterfaces(value) {
425
+ this._interfaces.internalValue = value;
426
+ }
427
+ // Temporarily expose input value. Use with caution.
428
+ get interfacesInput() {
429
+ return this._interfaces.internalValue;
430
+ }
431
+ // =========
432
+ // SYNTHESIS
433
+ // =========
434
+ synthesizeAttributes() {
435
+ return {
436
+ id: cdktf.stringToTerraform(this._id),
437
+ management_egress_ip_prefix_list: cdktf.listMapper(cdktf.stringToTerraform, false)(this._managementEgressIpPrefixList),
438
+ primary_gw_name: cdktf.stringToTerraform(this._primaryGwName),
439
+ ztp_file_download_path: cdktf.stringToTerraform(this._ztpFileDownloadPath),
440
+ interfaces: cdktf.listMapper(edgeMegaportHaInterfacesToTerraform, true)(this._interfaces.internalValue),
441
+ };
442
+ }
443
+ synthesizeHclAttributes() {
444
+ const attrs = {
445
+ id: {
446
+ value: cdktf.stringToHclTerraform(this._id),
447
+ isBlock: false,
448
+ type: "simple",
449
+ storageClassType: "string",
450
+ },
451
+ management_egress_ip_prefix_list: {
452
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._managementEgressIpPrefixList),
453
+ isBlock: false,
454
+ type: "set",
455
+ storageClassType: "stringList",
456
+ },
457
+ primary_gw_name: {
458
+ value: cdktf.stringToHclTerraform(this._primaryGwName),
459
+ isBlock: false,
460
+ type: "simple",
461
+ storageClassType: "string",
462
+ },
463
+ ztp_file_download_path: {
464
+ value: cdktf.stringToHclTerraform(this._ztpFileDownloadPath),
465
+ isBlock: false,
466
+ type: "simple",
467
+ storageClassType: "string",
468
+ },
469
+ interfaces: {
470
+ value: cdktf.listMapperHcl(edgeMegaportHaInterfacesToHclTerraform, true)(this._interfaces.internalValue),
471
+ isBlock: true,
472
+ type: "set",
473
+ storageClassType: "EdgeMegaportHaInterfacesList",
474
+ },
475
+ };
476
+ // remove undefined attributes
477
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
478
+ }
479
+ }