@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,1479 @@
1
+ // https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/transit_external_device_conn
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function transitExternalDeviceConnBgpBfdToTerraform(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
+ multiplier: cdktf.numberToTerraform(struct.multiplier),
13
+ receive_interval: cdktf.numberToTerraform(struct.receiveInterval),
14
+ transmit_interval: cdktf.numberToTerraform(struct.transmitInterval),
15
+ };
16
+ }
17
+ export function transitExternalDeviceConnBgpBfdToHclTerraform(struct) {
18
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
19
+ return struct;
20
+ }
21
+ if (cdktf.isComplexElement(struct)) {
22
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
23
+ }
24
+ const attrs = {
25
+ multiplier: {
26
+ value: cdktf.numberToHclTerraform(struct.multiplier),
27
+ isBlock: false,
28
+ type: "simple",
29
+ storageClassType: "number",
30
+ },
31
+ receive_interval: {
32
+ value: cdktf.numberToHclTerraform(struct.receiveInterval),
33
+ isBlock: false,
34
+ type: "simple",
35
+ storageClassType: "number",
36
+ },
37
+ transmit_interval: {
38
+ value: cdktf.numberToHclTerraform(struct.transmitInterval),
39
+ isBlock: false,
40
+ type: "simple",
41
+ storageClassType: "number",
42
+ },
43
+ };
44
+ // remove undefined attributes
45
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
46
+ }
47
+ export class TransitExternalDeviceConnBgpBfdOutputReference extends cdktf.ComplexObject {
48
+ isEmptyObject = false;
49
+ /**
50
+ * @param terraformResource The parent resource
51
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
52
+ */
53
+ constructor(terraformResource, terraformAttribute) {
54
+ super(terraformResource, terraformAttribute, false, 0);
55
+ }
56
+ get internalValue() {
57
+ let hasAnyValues = this.isEmptyObject;
58
+ const internalValueResult = {};
59
+ if (this._multiplier !== undefined) {
60
+ hasAnyValues = true;
61
+ internalValueResult.multiplier = this._multiplier;
62
+ }
63
+ if (this._receiveInterval !== undefined) {
64
+ hasAnyValues = true;
65
+ internalValueResult.receiveInterval = this._receiveInterval;
66
+ }
67
+ if (this._transmitInterval !== undefined) {
68
+ hasAnyValues = true;
69
+ internalValueResult.transmitInterval = this._transmitInterval;
70
+ }
71
+ return hasAnyValues ? internalValueResult : undefined;
72
+ }
73
+ set internalValue(value) {
74
+ if (value === undefined) {
75
+ this.isEmptyObject = false;
76
+ this._multiplier = undefined;
77
+ this._receiveInterval = undefined;
78
+ this._transmitInterval = undefined;
79
+ }
80
+ else {
81
+ this.isEmptyObject = Object.keys(value).length === 0;
82
+ this._multiplier = value.multiplier;
83
+ this._receiveInterval = value.receiveInterval;
84
+ this._transmitInterval = value.transmitInterval;
85
+ }
86
+ }
87
+ // multiplier - computed: false, optional: true, required: false
88
+ _multiplier;
89
+ get multiplier() {
90
+ return this.getNumberAttribute('multiplier');
91
+ }
92
+ set multiplier(value) {
93
+ this._multiplier = value;
94
+ }
95
+ resetMultiplier() {
96
+ this._multiplier = undefined;
97
+ }
98
+ // Temporarily expose input value. Use with caution.
99
+ get multiplierInput() {
100
+ return this._multiplier;
101
+ }
102
+ // receive_interval - computed: false, optional: true, required: false
103
+ _receiveInterval;
104
+ get receiveInterval() {
105
+ return this.getNumberAttribute('receive_interval');
106
+ }
107
+ set receiveInterval(value) {
108
+ this._receiveInterval = value;
109
+ }
110
+ resetReceiveInterval() {
111
+ this._receiveInterval = undefined;
112
+ }
113
+ // Temporarily expose input value. Use with caution.
114
+ get receiveIntervalInput() {
115
+ return this._receiveInterval;
116
+ }
117
+ // transmit_interval - computed: false, optional: true, required: false
118
+ _transmitInterval;
119
+ get transmitInterval() {
120
+ return this.getNumberAttribute('transmit_interval');
121
+ }
122
+ set transmitInterval(value) {
123
+ this._transmitInterval = value;
124
+ }
125
+ resetTransmitInterval() {
126
+ this._transmitInterval = undefined;
127
+ }
128
+ // Temporarily expose input value. Use with caution.
129
+ get transmitIntervalInput() {
130
+ return this._transmitInterval;
131
+ }
132
+ }
133
+ /**
134
+ * Represents a {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/transit_external_device_conn aviatrix_transit_external_device_conn}
135
+ */
136
+ export class TransitExternalDeviceConn extends cdktf.TerraformResource {
137
+ // =================
138
+ // STATIC PROPERTIES
139
+ // =================
140
+ static tfResourceType = "aviatrix_transit_external_device_conn";
141
+ // ==============
142
+ // STATIC Methods
143
+ // ==============
144
+ /**
145
+ * Generates CDKTF code for importing a TransitExternalDeviceConn resource upon running "cdktf plan <stack-name>"
146
+ * @param scope The scope in which to define this construct
147
+ * @param importToId The construct id used in the generated config for the TransitExternalDeviceConn to import
148
+ * @param importFromId The id of the existing TransitExternalDeviceConn that should be imported. Refer to the {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/transit_external_device_conn#import import section} in the documentation of this resource for the id to use
149
+ * @param provider? Optional instance of the provider where the TransitExternalDeviceConn to import is found
150
+ */
151
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
152
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aviatrix_transit_external_device_conn", importId: importFromId, provider });
153
+ }
154
+ // ===========
155
+ // INITIALIZER
156
+ // ===========
157
+ /**
158
+ * Create a new {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/transit_external_device_conn aviatrix_transit_external_device_conn} Resource
159
+ *
160
+ * @param scope The scope in which to define this construct
161
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
162
+ * @param options TransitExternalDeviceConnConfig
163
+ */
164
+ constructor(scope, id, config) {
165
+ super(scope, id, {
166
+ terraformResourceType: 'aviatrix_transit_external_device_conn',
167
+ terraformGeneratorMetadata: {
168
+ providerName: 'aviatrix',
169
+ providerVersion: '8.1.10',
170
+ providerVersionConstraint: '8.1.10'
171
+ },
172
+ provider: config.provider,
173
+ dependsOn: config.dependsOn,
174
+ count: config.count,
175
+ lifecycle: config.lifecycle,
176
+ provisioners: config.provisioners,
177
+ connection: config.connection,
178
+ forEach: config.forEach
179
+ });
180
+ this._approvedCidrs = config.approvedCidrs;
181
+ this._backupBgpMd5Key = config.backupBgpMd5Key;
182
+ this._backupBgpRemoteAsNum = config.backupBgpRemoteAsNum;
183
+ this._backupDirectConnect = config.backupDirectConnect;
184
+ this._backupLocalLanIp = config.backupLocalLanIp;
185
+ this._backupLocalTunnelCidr = config.backupLocalTunnelCidr;
186
+ this._backupPreSharedKey = config.backupPreSharedKey;
187
+ this._backupRemoteGatewayIp = config.backupRemoteGatewayIp;
188
+ this._backupRemoteLanIp = config.backupRemoteLanIp;
189
+ this._backupRemoteTunnelCidr = config.backupRemoteTunnelCidr;
190
+ this._bgpLocalAsNum = config.bgpLocalAsNum;
191
+ this._bgpMd5Key = config.bgpMd5Key;
192
+ this._bgpRemoteAsNum = config.bgpRemoteAsNum;
193
+ this._connectionBgpSendCommunities = config.connectionBgpSendCommunities;
194
+ this._connectionBgpSendCommunitiesAdditive = config.connectionBgpSendCommunitiesAdditive;
195
+ this._connectionBgpSendCommunitiesBlock = config.connectionBgpSendCommunitiesBlock;
196
+ this._connectionName = config.connectionName;
197
+ this._connectionType = config.connectionType;
198
+ this._customAlgorithms = config.customAlgorithms;
199
+ this._directConnect = config.directConnect;
200
+ this._disableActivemesh = config.disableActivemesh;
201
+ this._enableBfd = config.enableBfd;
202
+ this._enableBgpLanActivemesh = config.enableBgpLanActivemesh;
203
+ this._enableBgpMultihop = config.enableBgpMultihop;
204
+ this._enableEdgeSegmentation = config.enableEdgeSegmentation;
205
+ this._enableEdgeUnderlay = config.enableEdgeUnderlay;
206
+ this._enableEventTriggeredHa = config.enableEventTriggeredHa;
207
+ this._enableIkev2 = config.enableIkev2;
208
+ this._enableJumboFrame = config.enableJumboFrame;
209
+ this._enableLearnedCidrsApproval = config.enableLearnedCidrsApproval;
210
+ this._gwName = config.gwName;
211
+ this._haEnabled = config.haEnabled;
212
+ this._id = config.id;
213
+ this._localLanIp = config.localLanIp;
214
+ this._localTunnelCidr = config.localTunnelCidr;
215
+ this._manualBgpAdvertisedCidrs = config.manualBgpAdvertisedCidrs;
216
+ this._phase1LocalIdentifier = config.phase1LocalIdentifier;
217
+ this._phase1RemoteIdentifier = config.phase1RemoteIdentifier;
218
+ this._phase1Authentication = config.phase1Authentication;
219
+ this._phase1DhGroups = config.phase1DhGroups;
220
+ this._phase1Encryption = config.phase1Encryption;
221
+ this._phase2Authentication = config.phase2Authentication;
222
+ this._phase2DhGroups = config.phase2DhGroups;
223
+ this._phase2Encryption = config.phase2Encryption;
224
+ this._preSharedKey = config.preSharedKey;
225
+ this._prependAsPath = config.prependAsPath;
226
+ this._remoteGatewayIp = config.remoteGatewayIp;
227
+ this._remoteLanIp = config.remoteLanIp;
228
+ this._remoteSubnet = config.remoteSubnet;
229
+ this._remoteTunnelCidr = config.remoteTunnelCidr;
230
+ this._remoteVpcName = config.remoteVpcName;
231
+ this._switchToHaStandbyGateway = config.switchToHaStandbyGateway;
232
+ this._tunnelProtocol = config.tunnelProtocol;
233
+ this._tunnelSrcIp = config.tunnelSrcIp;
234
+ this._vpcId = config.vpcId;
235
+ this._bgpBfd.internalValue = config.bgpBfd;
236
+ }
237
+ // ==========
238
+ // ATTRIBUTES
239
+ // ==========
240
+ // approved_cidrs - computed: true, optional: true, required: false
241
+ _approvedCidrs;
242
+ get approvedCidrs() {
243
+ return cdktf.Fn.tolist(this.getListAttribute('approved_cidrs'));
244
+ }
245
+ set approvedCidrs(value) {
246
+ this._approvedCidrs = value;
247
+ }
248
+ resetApprovedCidrs() {
249
+ this._approvedCidrs = undefined;
250
+ }
251
+ // Temporarily expose input value. Use with caution.
252
+ get approvedCidrsInput() {
253
+ return this._approvedCidrs;
254
+ }
255
+ // backup_bgp_md5_key - computed: false, optional: true, required: false
256
+ _backupBgpMd5Key;
257
+ get backupBgpMd5Key() {
258
+ return this.getStringAttribute('backup_bgp_md5_key');
259
+ }
260
+ set backupBgpMd5Key(value) {
261
+ this._backupBgpMd5Key = value;
262
+ }
263
+ resetBackupBgpMd5Key() {
264
+ this._backupBgpMd5Key = undefined;
265
+ }
266
+ // Temporarily expose input value. Use with caution.
267
+ get backupBgpMd5KeyInput() {
268
+ return this._backupBgpMd5Key;
269
+ }
270
+ // backup_bgp_remote_as_num - computed: false, optional: true, required: false
271
+ _backupBgpRemoteAsNum;
272
+ get backupBgpRemoteAsNum() {
273
+ return this.getStringAttribute('backup_bgp_remote_as_num');
274
+ }
275
+ set backupBgpRemoteAsNum(value) {
276
+ this._backupBgpRemoteAsNum = value;
277
+ }
278
+ resetBackupBgpRemoteAsNum() {
279
+ this._backupBgpRemoteAsNum = undefined;
280
+ }
281
+ // Temporarily expose input value. Use with caution.
282
+ get backupBgpRemoteAsNumInput() {
283
+ return this._backupBgpRemoteAsNum;
284
+ }
285
+ // backup_direct_connect - computed: false, optional: true, required: false
286
+ _backupDirectConnect;
287
+ get backupDirectConnect() {
288
+ return this.getBooleanAttribute('backup_direct_connect');
289
+ }
290
+ set backupDirectConnect(value) {
291
+ this._backupDirectConnect = value;
292
+ }
293
+ resetBackupDirectConnect() {
294
+ this._backupDirectConnect = undefined;
295
+ }
296
+ // Temporarily expose input value. Use with caution.
297
+ get backupDirectConnectInput() {
298
+ return this._backupDirectConnect;
299
+ }
300
+ // backup_local_lan_ip - computed: true, optional: true, required: false
301
+ _backupLocalLanIp;
302
+ get backupLocalLanIp() {
303
+ return this.getStringAttribute('backup_local_lan_ip');
304
+ }
305
+ set backupLocalLanIp(value) {
306
+ this._backupLocalLanIp = value;
307
+ }
308
+ resetBackupLocalLanIp() {
309
+ this._backupLocalLanIp = undefined;
310
+ }
311
+ // Temporarily expose input value. Use with caution.
312
+ get backupLocalLanIpInput() {
313
+ return this._backupLocalLanIp;
314
+ }
315
+ // backup_local_tunnel_cidr - computed: true, optional: true, required: false
316
+ _backupLocalTunnelCidr;
317
+ get backupLocalTunnelCidr() {
318
+ return this.getStringAttribute('backup_local_tunnel_cidr');
319
+ }
320
+ set backupLocalTunnelCidr(value) {
321
+ this._backupLocalTunnelCidr = value;
322
+ }
323
+ resetBackupLocalTunnelCidr() {
324
+ this._backupLocalTunnelCidr = undefined;
325
+ }
326
+ // Temporarily expose input value. Use with caution.
327
+ get backupLocalTunnelCidrInput() {
328
+ return this._backupLocalTunnelCidr;
329
+ }
330
+ // backup_pre_shared_key - computed: false, optional: true, required: false
331
+ _backupPreSharedKey;
332
+ get backupPreSharedKey() {
333
+ return this.getStringAttribute('backup_pre_shared_key');
334
+ }
335
+ set backupPreSharedKey(value) {
336
+ this._backupPreSharedKey = value;
337
+ }
338
+ resetBackupPreSharedKey() {
339
+ this._backupPreSharedKey = undefined;
340
+ }
341
+ // Temporarily expose input value. Use with caution.
342
+ get backupPreSharedKeyInput() {
343
+ return this._backupPreSharedKey;
344
+ }
345
+ // backup_remote_gateway_ip - computed: false, optional: true, required: false
346
+ _backupRemoteGatewayIp;
347
+ get backupRemoteGatewayIp() {
348
+ return this.getStringAttribute('backup_remote_gateway_ip');
349
+ }
350
+ set backupRemoteGatewayIp(value) {
351
+ this._backupRemoteGatewayIp = value;
352
+ }
353
+ resetBackupRemoteGatewayIp() {
354
+ this._backupRemoteGatewayIp = undefined;
355
+ }
356
+ // Temporarily expose input value. Use with caution.
357
+ get backupRemoteGatewayIpInput() {
358
+ return this._backupRemoteGatewayIp;
359
+ }
360
+ // backup_remote_lan_ip - computed: false, optional: true, required: false
361
+ _backupRemoteLanIp;
362
+ get backupRemoteLanIp() {
363
+ return this.getStringAttribute('backup_remote_lan_ip');
364
+ }
365
+ set backupRemoteLanIp(value) {
366
+ this._backupRemoteLanIp = value;
367
+ }
368
+ resetBackupRemoteLanIp() {
369
+ this._backupRemoteLanIp = undefined;
370
+ }
371
+ // Temporarily expose input value. Use with caution.
372
+ get backupRemoteLanIpInput() {
373
+ return this._backupRemoteLanIp;
374
+ }
375
+ // backup_remote_tunnel_cidr - computed: true, optional: true, required: false
376
+ _backupRemoteTunnelCidr;
377
+ get backupRemoteTunnelCidr() {
378
+ return this.getStringAttribute('backup_remote_tunnel_cidr');
379
+ }
380
+ set backupRemoteTunnelCidr(value) {
381
+ this._backupRemoteTunnelCidr = value;
382
+ }
383
+ resetBackupRemoteTunnelCidr() {
384
+ this._backupRemoteTunnelCidr = undefined;
385
+ }
386
+ // Temporarily expose input value. Use with caution.
387
+ get backupRemoteTunnelCidrInput() {
388
+ return this._backupRemoteTunnelCidr;
389
+ }
390
+ // bgp_local_as_num - computed: false, optional: true, required: false
391
+ _bgpLocalAsNum;
392
+ get bgpLocalAsNum() {
393
+ return this.getStringAttribute('bgp_local_as_num');
394
+ }
395
+ set bgpLocalAsNum(value) {
396
+ this._bgpLocalAsNum = value;
397
+ }
398
+ resetBgpLocalAsNum() {
399
+ this._bgpLocalAsNum = undefined;
400
+ }
401
+ // Temporarily expose input value. Use with caution.
402
+ get bgpLocalAsNumInput() {
403
+ return this._bgpLocalAsNum;
404
+ }
405
+ // bgp_md5_key - computed: false, optional: true, required: false
406
+ _bgpMd5Key;
407
+ get bgpMd5Key() {
408
+ return this.getStringAttribute('bgp_md5_key');
409
+ }
410
+ set bgpMd5Key(value) {
411
+ this._bgpMd5Key = value;
412
+ }
413
+ resetBgpMd5Key() {
414
+ this._bgpMd5Key = undefined;
415
+ }
416
+ // Temporarily expose input value. Use with caution.
417
+ get bgpMd5KeyInput() {
418
+ return this._bgpMd5Key;
419
+ }
420
+ // bgp_remote_as_num - computed: false, optional: true, required: false
421
+ _bgpRemoteAsNum;
422
+ get bgpRemoteAsNum() {
423
+ return this.getStringAttribute('bgp_remote_as_num');
424
+ }
425
+ set bgpRemoteAsNum(value) {
426
+ this._bgpRemoteAsNum = value;
427
+ }
428
+ resetBgpRemoteAsNum() {
429
+ this._bgpRemoteAsNum = undefined;
430
+ }
431
+ // Temporarily expose input value. Use with caution.
432
+ get bgpRemoteAsNumInput() {
433
+ return this._bgpRemoteAsNum;
434
+ }
435
+ // connection_bgp_send_communities - computed: false, optional: true, required: false
436
+ _connectionBgpSendCommunities;
437
+ get connectionBgpSendCommunities() {
438
+ return this.getStringAttribute('connection_bgp_send_communities');
439
+ }
440
+ set connectionBgpSendCommunities(value) {
441
+ this._connectionBgpSendCommunities = value;
442
+ }
443
+ resetConnectionBgpSendCommunities() {
444
+ this._connectionBgpSendCommunities = undefined;
445
+ }
446
+ // Temporarily expose input value. Use with caution.
447
+ get connectionBgpSendCommunitiesInput() {
448
+ return this._connectionBgpSendCommunities;
449
+ }
450
+ // connection_bgp_send_communities_additive - computed: false, optional: true, required: false
451
+ _connectionBgpSendCommunitiesAdditive;
452
+ get connectionBgpSendCommunitiesAdditive() {
453
+ return this.getBooleanAttribute('connection_bgp_send_communities_additive');
454
+ }
455
+ set connectionBgpSendCommunitiesAdditive(value) {
456
+ this._connectionBgpSendCommunitiesAdditive = value;
457
+ }
458
+ resetConnectionBgpSendCommunitiesAdditive() {
459
+ this._connectionBgpSendCommunitiesAdditive = undefined;
460
+ }
461
+ // Temporarily expose input value. Use with caution.
462
+ get connectionBgpSendCommunitiesAdditiveInput() {
463
+ return this._connectionBgpSendCommunitiesAdditive;
464
+ }
465
+ // connection_bgp_send_communities_block - computed: false, optional: true, required: false
466
+ _connectionBgpSendCommunitiesBlock;
467
+ get connectionBgpSendCommunitiesBlock() {
468
+ return this.getBooleanAttribute('connection_bgp_send_communities_block');
469
+ }
470
+ set connectionBgpSendCommunitiesBlock(value) {
471
+ this._connectionBgpSendCommunitiesBlock = value;
472
+ }
473
+ resetConnectionBgpSendCommunitiesBlock() {
474
+ this._connectionBgpSendCommunitiesBlock = undefined;
475
+ }
476
+ // Temporarily expose input value. Use with caution.
477
+ get connectionBgpSendCommunitiesBlockInput() {
478
+ return this._connectionBgpSendCommunitiesBlock;
479
+ }
480
+ // connection_name - computed: true, optional: true, required: false
481
+ _connectionName;
482
+ get connectionName() {
483
+ return this.getStringAttribute('connection_name');
484
+ }
485
+ set connectionName(value) {
486
+ this._connectionName = value;
487
+ }
488
+ resetConnectionName() {
489
+ this._connectionName = undefined;
490
+ }
491
+ // Temporarily expose input value. Use with caution.
492
+ get connectionNameInput() {
493
+ return this._connectionName;
494
+ }
495
+ // connection_type - computed: false, optional: true, required: false
496
+ _connectionType;
497
+ get connectionType() {
498
+ return this.getStringAttribute('connection_type');
499
+ }
500
+ set connectionType(value) {
501
+ this._connectionType = value;
502
+ }
503
+ resetConnectionType() {
504
+ this._connectionType = undefined;
505
+ }
506
+ // Temporarily expose input value. Use with caution.
507
+ get connectionTypeInput() {
508
+ return this._connectionType;
509
+ }
510
+ // custom_algorithms - computed: false, optional: true, required: false
511
+ _customAlgorithms;
512
+ get customAlgorithms() {
513
+ return this.getBooleanAttribute('custom_algorithms');
514
+ }
515
+ set customAlgorithms(value) {
516
+ this._customAlgorithms = value;
517
+ }
518
+ resetCustomAlgorithms() {
519
+ this._customAlgorithms = undefined;
520
+ }
521
+ // Temporarily expose input value. Use with caution.
522
+ get customAlgorithmsInput() {
523
+ return this._customAlgorithms;
524
+ }
525
+ // direct_connect - computed: false, optional: true, required: false
526
+ _directConnect;
527
+ get directConnect() {
528
+ return this.getBooleanAttribute('direct_connect');
529
+ }
530
+ set directConnect(value) {
531
+ this._directConnect = value;
532
+ }
533
+ resetDirectConnect() {
534
+ this._directConnect = undefined;
535
+ }
536
+ // Temporarily expose input value. Use with caution.
537
+ get directConnectInput() {
538
+ return this._directConnect;
539
+ }
540
+ // disable_activemesh - computed: false, optional: true, required: false
541
+ _disableActivemesh;
542
+ get disableActivemesh() {
543
+ return this.getBooleanAttribute('disable_activemesh');
544
+ }
545
+ set disableActivemesh(value) {
546
+ this._disableActivemesh = value;
547
+ }
548
+ resetDisableActivemesh() {
549
+ this._disableActivemesh = undefined;
550
+ }
551
+ // Temporarily expose input value. Use with caution.
552
+ get disableActivemeshInput() {
553
+ return this._disableActivemesh;
554
+ }
555
+ // enable_bfd - computed: false, optional: true, required: false
556
+ _enableBfd;
557
+ get enableBfd() {
558
+ return this.getBooleanAttribute('enable_bfd');
559
+ }
560
+ set enableBfd(value) {
561
+ this._enableBfd = value;
562
+ }
563
+ resetEnableBfd() {
564
+ this._enableBfd = undefined;
565
+ }
566
+ // Temporarily expose input value. Use with caution.
567
+ get enableBfdInput() {
568
+ return this._enableBfd;
569
+ }
570
+ // enable_bgp_lan_activemesh - computed: false, optional: true, required: false
571
+ _enableBgpLanActivemesh;
572
+ get enableBgpLanActivemesh() {
573
+ return this.getBooleanAttribute('enable_bgp_lan_activemesh');
574
+ }
575
+ set enableBgpLanActivemesh(value) {
576
+ this._enableBgpLanActivemesh = value;
577
+ }
578
+ resetEnableBgpLanActivemesh() {
579
+ this._enableBgpLanActivemesh = undefined;
580
+ }
581
+ // Temporarily expose input value. Use with caution.
582
+ get enableBgpLanActivemeshInput() {
583
+ return this._enableBgpLanActivemesh;
584
+ }
585
+ // enable_bgp_multihop - computed: false, optional: true, required: false
586
+ _enableBgpMultihop;
587
+ get enableBgpMultihop() {
588
+ return this.getBooleanAttribute('enable_bgp_multihop');
589
+ }
590
+ set enableBgpMultihop(value) {
591
+ this._enableBgpMultihop = value;
592
+ }
593
+ resetEnableBgpMultihop() {
594
+ this._enableBgpMultihop = undefined;
595
+ }
596
+ // Temporarily expose input value. Use with caution.
597
+ get enableBgpMultihopInput() {
598
+ return this._enableBgpMultihop;
599
+ }
600
+ // enable_edge_segmentation - computed: false, optional: true, required: false
601
+ _enableEdgeSegmentation;
602
+ get enableEdgeSegmentation() {
603
+ return this.getBooleanAttribute('enable_edge_segmentation');
604
+ }
605
+ set enableEdgeSegmentation(value) {
606
+ this._enableEdgeSegmentation = value;
607
+ }
608
+ resetEnableEdgeSegmentation() {
609
+ this._enableEdgeSegmentation = undefined;
610
+ }
611
+ // Temporarily expose input value. Use with caution.
612
+ get enableEdgeSegmentationInput() {
613
+ return this._enableEdgeSegmentation;
614
+ }
615
+ // enable_edge_underlay - computed: false, optional: true, required: false
616
+ _enableEdgeUnderlay;
617
+ get enableEdgeUnderlay() {
618
+ return this.getBooleanAttribute('enable_edge_underlay');
619
+ }
620
+ set enableEdgeUnderlay(value) {
621
+ this._enableEdgeUnderlay = value;
622
+ }
623
+ resetEnableEdgeUnderlay() {
624
+ this._enableEdgeUnderlay = undefined;
625
+ }
626
+ // Temporarily expose input value. Use with caution.
627
+ get enableEdgeUnderlayInput() {
628
+ return this._enableEdgeUnderlay;
629
+ }
630
+ // enable_event_triggered_ha - computed: false, optional: true, required: false
631
+ _enableEventTriggeredHa;
632
+ get enableEventTriggeredHa() {
633
+ return this.getBooleanAttribute('enable_event_triggered_ha');
634
+ }
635
+ set enableEventTriggeredHa(value) {
636
+ this._enableEventTriggeredHa = value;
637
+ }
638
+ resetEnableEventTriggeredHa() {
639
+ this._enableEventTriggeredHa = undefined;
640
+ }
641
+ // Temporarily expose input value. Use with caution.
642
+ get enableEventTriggeredHaInput() {
643
+ return this._enableEventTriggeredHa;
644
+ }
645
+ // enable_ikev2 - computed: false, optional: true, required: false
646
+ _enableIkev2;
647
+ get enableIkev2() {
648
+ return this.getBooleanAttribute('enable_ikev2');
649
+ }
650
+ set enableIkev2(value) {
651
+ this._enableIkev2 = value;
652
+ }
653
+ resetEnableIkev2() {
654
+ this._enableIkev2 = undefined;
655
+ }
656
+ // Temporarily expose input value. Use with caution.
657
+ get enableIkev2Input() {
658
+ return this._enableIkev2;
659
+ }
660
+ // enable_jumbo_frame - computed: false, optional: true, required: false
661
+ _enableJumboFrame;
662
+ get enableJumboFrame() {
663
+ return this.getBooleanAttribute('enable_jumbo_frame');
664
+ }
665
+ set enableJumboFrame(value) {
666
+ this._enableJumboFrame = value;
667
+ }
668
+ resetEnableJumboFrame() {
669
+ this._enableJumboFrame = undefined;
670
+ }
671
+ // Temporarily expose input value. Use with caution.
672
+ get enableJumboFrameInput() {
673
+ return this._enableJumboFrame;
674
+ }
675
+ // enable_learned_cidrs_approval - computed: false, optional: true, required: false
676
+ _enableLearnedCidrsApproval;
677
+ get enableLearnedCidrsApproval() {
678
+ return this.getBooleanAttribute('enable_learned_cidrs_approval');
679
+ }
680
+ set enableLearnedCidrsApproval(value) {
681
+ this._enableLearnedCidrsApproval = value;
682
+ }
683
+ resetEnableLearnedCidrsApproval() {
684
+ this._enableLearnedCidrsApproval = undefined;
685
+ }
686
+ // Temporarily expose input value. Use with caution.
687
+ get enableLearnedCidrsApprovalInput() {
688
+ return this._enableLearnedCidrsApproval;
689
+ }
690
+ // gw_name - computed: false, optional: false, required: true
691
+ _gwName;
692
+ get gwName() {
693
+ return this.getStringAttribute('gw_name');
694
+ }
695
+ set gwName(value) {
696
+ this._gwName = value;
697
+ }
698
+ // Temporarily expose input value. Use with caution.
699
+ get gwNameInput() {
700
+ return this._gwName;
701
+ }
702
+ // ha_enabled - computed: false, optional: true, required: false
703
+ _haEnabled;
704
+ get haEnabled() {
705
+ return this.getBooleanAttribute('ha_enabled');
706
+ }
707
+ set haEnabled(value) {
708
+ this._haEnabled = value;
709
+ }
710
+ resetHaEnabled() {
711
+ this._haEnabled = undefined;
712
+ }
713
+ // Temporarily expose input value. Use with caution.
714
+ get haEnabledInput() {
715
+ return this._haEnabled;
716
+ }
717
+ // id - computed: true, optional: true, required: false
718
+ _id;
719
+ get id() {
720
+ return this.getStringAttribute('id');
721
+ }
722
+ set id(value) {
723
+ this._id = value;
724
+ }
725
+ resetId() {
726
+ this._id = undefined;
727
+ }
728
+ // Temporarily expose input value. Use with caution.
729
+ get idInput() {
730
+ return this._id;
731
+ }
732
+ // local_lan_ip - computed: true, optional: true, required: false
733
+ _localLanIp;
734
+ get localLanIp() {
735
+ return this.getStringAttribute('local_lan_ip');
736
+ }
737
+ set localLanIp(value) {
738
+ this._localLanIp = value;
739
+ }
740
+ resetLocalLanIp() {
741
+ this._localLanIp = undefined;
742
+ }
743
+ // Temporarily expose input value. Use with caution.
744
+ get localLanIpInput() {
745
+ return this._localLanIp;
746
+ }
747
+ // local_tunnel_cidr - computed: true, optional: true, required: false
748
+ _localTunnelCidr;
749
+ get localTunnelCidr() {
750
+ return this.getStringAttribute('local_tunnel_cidr');
751
+ }
752
+ set localTunnelCidr(value) {
753
+ this._localTunnelCidr = value;
754
+ }
755
+ resetLocalTunnelCidr() {
756
+ this._localTunnelCidr = undefined;
757
+ }
758
+ // Temporarily expose input value. Use with caution.
759
+ get localTunnelCidrInput() {
760
+ return this._localTunnelCidr;
761
+ }
762
+ // manual_bgp_advertised_cidrs - computed: false, optional: true, required: false
763
+ _manualBgpAdvertisedCidrs;
764
+ get manualBgpAdvertisedCidrs() {
765
+ return cdktf.Fn.tolist(this.getListAttribute('manual_bgp_advertised_cidrs'));
766
+ }
767
+ set manualBgpAdvertisedCidrs(value) {
768
+ this._manualBgpAdvertisedCidrs = value;
769
+ }
770
+ resetManualBgpAdvertisedCidrs() {
771
+ this._manualBgpAdvertisedCidrs = undefined;
772
+ }
773
+ // Temporarily expose input value. Use with caution.
774
+ get manualBgpAdvertisedCidrsInput() {
775
+ return this._manualBgpAdvertisedCidrs;
776
+ }
777
+ // phase1_local_identifier - computed: false, optional: true, required: false
778
+ _phase1LocalIdentifier;
779
+ get phase1LocalIdentifier() {
780
+ return this.getStringAttribute('phase1_local_identifier');
781
+ }
782
+ set phase1LocalIdentifier(value) {
783
+ this._phase1LocalIdentifier = value;
784
+ }
785
+ resetPhase1LocalIdentifier() {
786
+ this._phase1LocalIdentifier = undefined;
787
+ }
788
+ // Temporarily expose input value. Use with caution.
789
+ get phase1LocalIdentifierInput() {
790
+ return this._phase1LocalIdentifier;
791
+ }
792
+ // phase1_remote_identifier - computed: false, optional: true, required: false
793
+ _phase1RemoteIdentifier;
794
+ get phase1RemoteIdentifier() {
795
+ return this.getListAttribute('phase1_remote_identifier');
796
+ }
797
+ set phase1RemoteIdentifier(value) {
798
+ this._phase1RemoteIdentifier = value;
799
+ }
800
+ resetPhase1RemoteIdentifier() {
801
+ this._phase1RemoteIdentifier = undefined;
802
+ }
803
+ // Temporarily expose input value. Use with caution.
804
+ get phase1RemoteIdentifierInput() {
805
+ return this._phase1RemoteIdentifier;
806
+ }
807
+ // phase_1_authentication - computed: false, optional: true, required: false
808
+ _phase1Authentication;
809
+ get phase1Authentication() {
810
+ return this.getStringAttribute('phase_1_authentication');
811
+ }
812
+ set phase1Authentication(value) {
813
+ this._phase1Authentication = value;
814
+ }
815
+ resetPhase1Authentication() {
816
+ this._phase1Authentication = undefined;
817
+ }
818
+ // Temporarily expose input value. Use with caution.
819
+ get phase1AuthenticationInput() {
820
+ return this._phase1Authentication;
821
+ }
822
+ // phase_1_dh_groups - computed: false, optional: true, required: false
823
+ _phase1DhGroups;
824
+ get phase1DhGroups() {
825
+ return this.getStringAttribute('phase_1_dh_groups');
826
+ }
827
+ set phase1DhGroups(value) {
828
+ this._phase1DhGroups = value;
829
+ }
830
+ resetPhase1DhGroups() {
831
+ this._phase1DhGroups = undefined;
832
+ }
833
+ // Temporarily expose input value. Use with caution.
834
+ get phase1DhGroupsInput() {
835
+ return this._phase1DhGroups;
836
+ }
837
+ // phase_1_encryption - computed: false, optional: true, required: false
838
+ _phase1Encryption;
839
+ get phase1Encryption() {
840
+ return this.getStringAttribute('phase_1_encryption');
841
+ }
842
+ set phase1Encryption(value) {
843
+ this._phase1Encryption = value;
844
+ }
845
+ resetPhase1Encryption() {
846
+ this._phase1Encryption = undefined;
847
+ }
848
+ // Temporarily expose input value. Use with caution.
849
+ get phase1EncryptionInput() {
850
+ return this._phase1Encryption;
851
+ }
852
+ // phase_2_authentication - computed: false, optional: true, required: false
853
+ _phase2Authentication;
854
+ get phase2Authentication() {
855
+ return this.getStringAttribute('phase_2_authentication');
856
+ }
857
+ set phase2Authentication(value) {
858
+ this._phase2Authentication = value;
859
+ }
860
+ resetPhase2Authentication() {
861
+ this._phase2Authentication = undefined;
862
+ }
863
+ // Temporarily expose input value. Use with caution.
864
+ get phase2AuthenticationInput() {
865
+ return this._phase2Authentication;
866
+ }
867
+ // phase_2_dh_groups - computed: false, optional: true, required: false
868
+ _phase2DhGroups;
869
+ get phase2DhGroups() {
870
+ return this.getStringAttribute('phase_2_dh_groups');
871
+ }
872
+ set phase2DhGroups(value) {
873
+ this._phase2DhGroups = value;
874
+ }
875
+ resetPhase2DhGroups() {
876
+ this._phase2DhGroups = undefined;
877
+ }
878
+ // Temporarily expose input value. Use with caution.
879
+ get phase2DhGroupsInput() {
880
+ return this._phase2DhGroups;
881
+ }
882
+ // phase_2_encryption - computed: false, optional: true, required: false
883
+ _phase2Encryption;
884
+ get phase2Encryption() {
885
+ return this.getStringAttribute('phase_2_encryption');
886
+ }
887
+ set phase2Encryption(value) {
888
+ this._phase2Encryption = value;
889
+ }
890
+ resetPhase2Encryption() {
891
+ this._phase2Encryption = undefined;
892
+ }
893
+ // Temporarily expose input value. Use with caution.
894
+ get phase2EncryptionInput() {
895
+ return this._phase2Encryption;
896
+ }
897
+ // pre_shared_key - computed: false, optional: true, required: false
898
+ _preSharedKey;
899
+ get preSharedKey() {
900
+ return this.getStringAttribute('pre_shared_key');
901
+ }
902
+ set preSharedKey(value) {
903
+ this._preSharedKey = value;
904
+ }
905
+ resetPreSharedKey() {
906
+ this._preSharedKey = undefined;
907
+ }
908
+ // Temporarily expose input value. Use with caution.
909
+ get preSharedKeyInput() {
910
+ return this._preSharedKey;
911
+ }
912
+ // prepend_as_path - computed: false, optional: true, required: false
913
+ _prependAsPath;
914
+ get prependAsPath() {
915
+ return this.getListAttribute('prepend_as_path');
916
+ }
917
+ set prependAsPath(value) {
918
+ this._prependAsPath = value;
919
+ }
920
+ resetPrependAsPath() {
921
+ this._prependAsPath = undefined;
922
+ }
923
+ // Temporarily expose input value. Use with caution.
924
+ get prependAsPathInput() {
925
+ return this._prependAsPath;
926
+ }
927
+ // remote_gateway_ip - computed: false, optional: true, required: false
928
+ _remoteGatewayIp;
929
+ get remoteGatewayIp() {
930
+ return this.getStringAttribute('remote_gateway_ip');
931
+ }
932
+ set remoteGatewayIp(value) {
933
+ this._remoteGatewayIp = value;
934
+ }
935
+ resetRemoteGatewayIp() {
936
+ this._remoteGatewayIp = undefined;
937
+ }
938
+ // Temporarily expose input value. Use with caution.
939
+ get remoteGatewayIpInput() {
940
+ return this._remoteGatewayIp;
941
+ }
942
+ // remote_lan_ip - computed: false, optional: true, required: false
943
+ _remoteLanIp;
944
+ get remoteLanIp() {
945
+ return this.getStringAttribute('remote_lan_ip');
946
+ }
947
+ set remoteLanIp(value) {
948
+ this._remoteLanIp = value;
949
+ }
950
+ resetRemoteLanIp() {
951
+ this._remoteLanIp = undefined;
952
+ }
953
+ // Temporarily expose input value. Use with caution.
954
+ get remoteLanIpInput() {
955
+ return this._remoteLanIp;
956
+ }
957
+ // remote_subnet - computed: false, optional: true, required: false
958
+ _remoteSubnet;
959
+ get remoteSubnet() {
960
+ return this.getStringAttribute('remote_subnet');
961
+ }
962
+ set remoteSubnet(value) {
963
+ this._remoteSubnet = value;
964
+ }
965
+ resetRemoteSubnet() {
966
+ this._remoteSubnet = undefined;
967
+ }
968
+ // Temporarily expose input value. Use with caution.
969
+ get remoteSubnetInput() {
970
+ return this._remoteSubnet;
971
+ }
972
+ // remote_tunnel_cidr - computed: true, optional: true, required: false
973
+ _remoteTunnelCidr;
974
+ get remoteTunnelCidr() {
975
+ return this.getStringAttribute('remote_tunnel_cidr');
976
+ }
977
+ set remoteTunnelCidr(value) {
978
+ this._remoteTunnelCidr = value;
979
+ }
980
+ resetRemoteTunnelCidr() {
981
+ this._remoteTunnelCidr = undefined;
982
+ }
983
+ // Temporarily expose input value. Use with caution.
984
+ get remoteTunnelCidrInput() {
985
+ return this._remoteTunnelCidr;
986
+ }
987
+ // remote_vpc_name - computed: false, optional: true, required: false
988
+ _remoteVpcName;
989
+ get remoteVpcName() {
990
+ return this.getStringAttribute('remote_vpc_name');
991
+ }
992
+ set remoteVpcName(value) {
993
+ this._remoteVpcName = value;
994
+ }
995
+ resetRemoteVpcName() {
996
+ this._remoteVpcName = undefined;
997
+ }
998
+ // Temporarily expose input value. Use with caution.
999
+ get remoteVpcNameInput() {
1000
+ return this._remoteVpcName;
1001
+ }
1002
+ // switch_to_ha_standby_gateway - computed: false, optional: true, required: false
1003
+ _switchToHaStandbyGateway;
1004
+ get switchToHaStandbyGateway() {
1005
+ return this.getBooleanAttribute('switch_to_ha_standby_gateway');
1006
+ }
1007
+ set switchToHaStandbyGateway(value) {
1008
+ this._switchToHaStandbyGateway = value;
1009
+ }
1010
+ resetSwitchToHaStandbyGateway() {
1011
+ this._switchToHaStandbyGateway = undefined;
1012
+ }
1013
+ // Temporarily expose input value. Use with caution.
1014
+ get switchToHaStandbyGatewayInput() {
1015
+ return this._switchToHaStandbyGateway;
1016
+ }
1017
+ // tunnel_protocol - computed: false, optional: true, required: false
1018
+ _tunnelProtocol;
1019
+ get tunnelProtocol() {
1020
+ return this.getStringAttribute('tunnel_protocol');
1021
+ }
1022
+ set tunnelProtocol(value) {
1023
+ this._tunnelProtocol = value;
1024
+ }
1025
+ resetTunnelProtocol() {
1026
+ this._tunnelProtocol = undefined;
1027
+ }
1028
+ // Temporarily expose input value. Use with caution.
1029
+ get tunnelProtocolInput() {
1030
+ return this._tunnelProtocol;
1031
+ }
1032
+ // tunnel_src_ip - computed: false, optional: true, required: false
1033
+ _tunnelSrcIp;
1034
+ get tunnelSrcIp() {
1035
+ return this.getStringAttribute('tunnel_src_ip');
1036
+ }
1037
+ set tunnelSrcIp(value) {
1038
+ this._tunnelSrcIp = value;
1039
+ }
1040
+ resetTunnelSrcIp() {
1041
+ this._tunnelSrcIp = undefined;
1042
+ }
1043
+ // Temporarily expose input value. Use with caution.
1044
+ get tunnelSrcIpInput() {
1045
+ return this._tunnelSrcIp;
1046
+ }
1047
+ // vpc_id - computed: false, optional: false, required: true
1048
+ _vpcId;
1049
+ get vpcId() {
1050
+ return this.getStringAttribute('vpc_id');
1051
+ }
1052
+ set vpcId(value) {
1053
+ this._vpcId = value;
1054
+ }
1055
+ // Temporarily expose input value. Use with caution.
1056
+ get vpcIdInput() {
1057
+ return this._vpcId;
1058
+ }
1059
+ // bgp_bfd - computed: false, optional: true, required: false
1060
+ _bgpBfd = new TransitExternalDeviceConnBgpBfdOutputReference(this, "bgp_bfd");
1061
+ get bgpBfd() {
1062
+ return this._bgpBfd;
1063
+ }
1064
+ putBgpBfd(value) {
1065
+ this._bgpBfd.internalValue = value;
1066
+ }
1067
+ resetBgpBfd() {
1068
+ this._bgpBfd.internalValue = undefined;
1069
+ }
1070
+ // Temporarily expose input value. Use with caution.
1071
+ get bgpBfdInput() {
1072
+ return this._bgpBfd.internalValue;
1073
+ }
1074
+ // =========
1075
+ // SYNTHESIS
1076
+ // =========
1077
+ synthesizeAttributes() {
1078
+ return {
1079
+ approved_cidrs: cdktf.listMapper(cdktf.stringToTerraform, false)(this._approvedCidrs),
1080
+ backup_bgp_md5_key: cdktf.stringToTerraform(this._backupBgpMd5Key),
1081
+ backup_bgp_remote_as_num: cdktf.stringToTerraform(this._backupBgpRemoteAsNum),
1082
+ backup_direct_connect: cdktf.booleanToTerraform(this._backupDirectConnect),
1083
+ backup_local_lan_ip: cdktf.stringToTerraform(this._backupLocalLanIp),
1084
+ backup_local_tunnel_cidr: cdktf.stringToTerraform(this._backupLocalTunnelCidr),
1085
+ backup_pre_shared_key: cdktf.stringToTerraform(this._backupPreSharedKey),
1086
+ backup_remote_gateway_ip: cdktf.stringToTerraform(this._backupRemoteGatewayIp),
1087
+ backup_remote_lan_ip: cdktf.stringToTerraform(this._backupRemoteLanIp),
1088
+ backup_remote_tunnel_cidr: cdktf.stringToTerraform(this._backupRemoteTunnelCidr),
1089
+ bgp_local_as_num: cdktf.stringToTerraform(this._bgpLocalAsNum),
1090
+ bgp_md5_key: cdktf.stringToTerraform(this._bgpMd5Key),
1091
+ bgp_remote_as_num: cdktf.stringToTerraform(this._bgpRemoteAsNum),
1092
+ connection_bgp_send_communities: cdktf.stringToTerraform(this._connectionBgpSendCommunities),
1093
+ connection_bgp_send_communities_additive: cdktf.booleanToTerraform(this._connectionBgpSendCommunitiesAdditive),
1094
+ connection_bgp_send_communities_block: cdktf.booleanToTerraform(this._connectionBgpSendCommunitiesBlock),
1095
+ connection_name: cdktf.stringToTerraform(this._connectionName),
1096
+ connection_type: cdktf.stringToTerraform(this._connectionType),
1097
+ custom_algorithms: cdktf.booleanToTerraform(this._customAlgorithms),
1098
+ direct_connect: cdktf.booleanToTerraform(this._directConnect),
1099
+ disable_activemesh: cdktf.booleanToTerraform(this._disableActivemesh),
1100
+ enable_bfd: cdktf.booleanToTerraform(this._enableBfd),
1101
+ enable_bgp_lan_activemesh: cdktf.booleanToTerraform(this._enableBgpLanActivemesh),
1102
+ enable_bgp_multihop: cdktf.booleanToTerraform(this._enableBgpMultihop),
1103
+ enable_edge_segmentation: cdktf.booleanToTerraform(this._enableEdgeSegmentation),
1104
+ enable_edge_underlay: cdktf.booleanToTerraform(this._enableEdgeUnderlay),
1105
+ enable_event_triggered_ha: cdktf.booleanToTerraform(this._enableEventTriggeredHa),
1106
+ enable_ikev2: cdktf.booleanToTerraform(this._enableIkev2),
1107
+ enable_jumbo_frame: cdktf.booleanToTerraform(this._enableJumboFrame),
1108
+ enable_learned_cidrs_approval: cdktf.booleanToTerraform(this._enableLearnedCidrsApproval),
1109
+ gw_name: cdktf.stringToTerraform(this._gwName),
1110
+ ha_enabled: cdktf.booleanToTerraform(this._haEnabled),
1111
+ id: cdktf.stringToTerraform(this._id),
1112
+ local_lan_ip: cdktf.stringToTerraform(this._localLanIp),
1113
+ local_tunnel_cidr: cdktf.stringToTerraform(this._localTunnelCidr),
1114
+ manual_bgp_advertised_cidrs: cdktf.listMapper(cdktf.stringToTerraform, false)(this._manualBgpAdvertisedCidrs),
1115
+ phase1_local_identifier: cdktf.stringToTerraform(this._phase1LocalIdentifier),
1116
+ phase1_remote_identifier: cdktf.listMapper(cdktf.stringToTerraform, false)(this._phase1RemoteIdentifier),
1117
+ phase_1_authentication: cdktf.stringToTerraform(this._phase1Authentication),
1118
+ phase_1_dh_groups: cdktf.stringToTerraform(this._phase1DhGroups),
1119
+ phase_1_encryption: cdktf.stringToTerraform(this._phase1Encryption),
1120
+ phase_2_authentication: cdktf.stringToTerraform(this._phase2Authentication),
1121
+ phase_2_dh_groups: cdktf.stringToTerraform(this._phase2DhGroups),
1122
+ phase_2_encryption: cdktf.stringToTerraform(this._phase2Encryption),
1123
+ pre_shared_key: cdktf.stringToTerraform(this._preSharedKey),
1124
+ prepend_as_path: cdktf.listMapper(cdktf.stringToTerraform, false)(this._prependAsPath),
1125
+ remote_gateway_ip: cdktf.stringToTerraform(this._remoteGatewayIp),
1126
+ remote_lan_ip: cdktf.stringToTerraform(this._remoteLanIp),
1127
+ remote_subnet: cdktf.stringToTerraform(this._remoteSubnet),
1128
+ remote_tunnel_cidr: cdktf.stringToTerraform(this._remoteTunnelCidr),
1129
+ remote_vpc_name: cdktf.stringToTerraform(this._remoteVpcName),
1130
+ switch_to_ha_standby_gateway: cdktf.booleanToTerraform(this._switchToHaStandbyGateway),
1131
+ tunnel_protocol: cdktf.stringToTerraform(this._tunnelProtocol),
1132
+ tunnel_src_ip: cdktf.stringToTerraform(this._tunnelSrcIp),
1133
+ vpc_id: cdktf.stringToTerraform(this._vpcId),
1134
+ bgp_bfd: transitExternalDeviceConnBgpBfdToTerraform(this._bgpBfd.internalValue),
1135
+ };
1136
+ }
1137
+ synthesizeHclAttributes() {
1138
+ const attrs = {
1139
+ approved_cidrs: {
1140
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._approvedCidrs),
1141
+ isBlock: false,
1142
+ type: "set",
1143
+ storageClassType: "stringList",
1144
+ },
1145
+ backup_bgp_md5_key: {
1146
+ value: cdktf.stringToHclTerraform(this._backupBgpMd5Key),
1147
+ isBlock: false,
1148
+ type: "simple",
1149
+ storageClassType: "string",
1150
+ },
1151
+ backup_bgp_remote_as_num: {
1152
+ value: cdktf.stringToHclTerraform(this._backupBgpRemoteAsNum),
1153
+ isBlock: false,
1154
+ type: "simple",
1155
+ storageClassType: "string",
1156
+ },
1157
+ backup_direct_connect: {
1158
+ value: cdktf.booleanToHclTerraform(this._backupDirectConnect),
1159
+ isBlock: false,
1160
+ type: "simple",
1161
+ storageClassType: "boolean",
1162
+ },
1163
+ backup_local_lan_ip: {
1164
+ value: cdktf.stringToHclTerraform(this._backupLocalLanIp),
1165
+ isBlock: false,
1166
+ type: "simple",
1167
+ storageClassType: "string",
1168
+ },
1169
+ backup_local_tunnel_cidr: {
1170
+ value: cdktf.stringToHclTerraform(this._backupLocalTunnelCidr),
1171
+ isBlock: false,
1172
+ type: "simple",
1173
+ storageClassType: "string",
1174
+ },
1175
+ backup_pre_shared_key: {
1176
+ value: cdktf.stringToHclTerraform(this._backupPreSharedKey),
1177
+ isBlock: false,
1178
+ type: "simple",
1179
+ storageClassType: "string",
1180
+ },
1181
+ backup_remote_gateway_ip: {
1182
+ value: cdktf.stringToHclTerraform(this._backupRemoteGatewayIp),
1183
+ isBlock: false,
1184
+ type: "simple",
1185
+ storageClassType: "string",
1186
+ },
1187
+ backup_remote_lan_ip: {
1188
+ value: cdktf.stringToHclTerraform(this._backupRemoteLanIp),
1189
+ isBlock: false,
1190
+ type: "simple",
1191
+ storageClassType: "string",
1192
+ },
1193
+ backup_remote_tunnel_cidr: {
1194
+ value: cdktf.stringToHclTerraform(this._backupRemoteTunnelCidr),
1195
+ isBlock: false,
1196
+ type: "simple",
1197
+ storageClassType: "string",
1198
+ },
1199
+ bgp_local_as_num: {
1200
+ value: cdktf.stringToHclTerraform(this._bgpLocalAsNum),
1201
+ isBlock: false,
1202
+ type: "simple",
1203
+ storageClassType: "string",
1204
+ },
1205
+ bgp_md5_key: {
1206
+ value: cdktf.stringToHclTerraform(this._bgpMd5Key),
1207
+ isBlock: false,
1208
+ type: "simple",
1209
+ storageClassType: "string",
1210
+ },
1211
+ bgp_remote_as_num: {
1212
+ value: cdktf.stringToHclTerraform(this._bgpRemoteAsNum),
1213
+ isBlock: false,
1214
+ type: "simple",
1215
+ storageClassType: "string",
1216
+ },
1217
+ connection_bgp_send_communities: {
1218
+ value: cdktf.stringToHclTerraform(this._connectionBgpSendCommunities),
1219
+ isBlock: false,
1220
+ type: "simple",
1221
+ storageClassType: "string",
1222
+ },
1223
+ connection_bgp_send_communities_additive: {
1224
+ value: cdktf.booleanToHclTerraform(this._connectionBgpSendCommunitiesAdditive),
1225
+ isBlock: false,
1226
+ type: "simple",
1227
+ storageClassType: "boolean",
1228
+ },
1229
+ connection_bgp_send_communities_block: {
1230
+ value: cdktf.booleanToHclTerraform(this._connectionBgpSendCommunitiesBlock),
1231
+ isBlock: false,
1232
+ type: "simple",
1233
+ storageClassType: "boolean",
1234
+ },
1235
+ connection_name: {
1236
+ value: cdktf.stringToHclTerraform(this._connectionName),
1237
+ isBlock: false,
1238
+ type: "simple",
1239
+ storageClassType: "string",
1240
+ },
1241
+ connection_type: {
1242
+ value: cdktf.stringToHclTerraform(this._connectionType),
1243
+ isBlock: false,
1244
+ type: "simple",
1245
+ storageClassType: "string",
1246
+ },
1247
+ custom_algorithms: {
1248
+ value: cdktf.booleanToHclTerraform(this._customAlgorithms),
1249
+ isBlock: false,
1250
+ type: "simple",
1251
+ storageClassType: "boolean",
1252
+ },
1253
+ direct_connect: {
1254
+ value: cdktf.booleanToHclTerraform(this._directConnect),
1255
+ isBlock: false,
1256
+ type: "simple",
1257
+ storageClassType: "boolean",
1258
+ },
1259
+ disable_activemesh: {
1260
+ value: cdktf.booleanToHclTerraform(this._disableActivemesh),
1261
+ isBlock: false,
1262
+ type: "simple",
1263
+ storageClassType: "boolean",
1264
+ },
1265
+ enable_bfd: {
1266
+ value: cdktf.booleanToHclTerraform(this._enableBfd),
1267
+ isBlock: false,
1268
+ type: "simple",
1269
+ storageClassType: "boolean",
1270
+ },
1271
+ enable_bgp_lan_activemesh: {
1272
+ value: cdktf.booleanToHclTerraform(this._enableBgpLanActivemesh),
1273
+ isBlock: false,
1274
+ type: "simple",
1275
+ storageClassType: "boolean",
1276
+ },
1277
+ enable_bgp_multihop: {
1278
+ value: cdktf.booleanToHclTerraform(this._enableBgpMultihop),
1279
+ isBlock: false,
1280
+ type: "simple",
1281
+ storageClassType: "boolean",
1282
+ },
1283
+ enable_edge_segmentation: {
1284
+ value: cdktf.booleanToHclTerraform(this._enableEdgeSegmentation),
1285
+ isBlock: false,
1286
+ type: "simple",
1287
+ storageClassType: "boolean",
1288
+ },
1289
+ enable_edge_underlay: {
1290
+ value: cdktf.booleanToHclTerraform(this._enableEdgeUnderlay),
1291
+ isBlock: false,
1292
+ type: "simple",
1293
+ storageClassType: "boolean",
1294
+ },
1295
+ enable_event_triggered_ha: {
1296
+ value: cdktf.booleanToHclTerraform(this._enableEventTriggeredHa),
1297
+ isBlock: false,
1298
+ type: "simple",
1299
+ storageClassType: "boolean",
1300
+ },
1301
+ enable_ikev2: {
1302
+ value: cdktf.booleanToHclTerraform(this._enableIkev2),
1303
+ isBlock: false,
1304
+ type: "simple",
1305
+ storageClassType: "boolean",
1306
+ },
1307
+ enable_jumbo_frame: {
1308
+ value: cdktf.booleanToHclTerraform(this._enableJumboFrame),
1309
+ isBlock: false,
1310
+ type: "simple",
1311
+ storageClassType: "boolean",
1312
+ },
1313
+ enable_learned_cidrs_approval: {
1314
+ value: cdktf.booleanToHclTerraform(this._enableLearnedCidrsApproval),
1315
+ isBlock: false,
1316
+ type: "simple",
1317
+ storageClassType: "boolean",
1318
+ },
1319
+ gw_name: {
1320
+ value: cdktf.stringToHclTerraform(this._gwName),
1321
+ isBlock: false,
1322
+ type: "simple",
1323
+ storageClassType: "string",
1324
+ },
1325
+ ha_enabled: {
1326
+ value: cdktf.booleanToHclTerraform(this._haEnabled),
1327
+ isBlock: false,
1328
+ type: "simple",
1329
+ storageClassType: "boolean",
1330
+ },
1331
+ id: {
1332
+ value: cdktf.stringToHclTerraform(this._id),
1333
+ isBlock: false,
1334
+ type: "simple",
1335
+ storageClassType: "string",
1336
+ },
1337
+ local_lan_ip: {
1338
+ value: cdktf.stringToHclTerraform(this._localLanIp),
1339
+ isBlock: false,
1340
+ type: "simple",
1341
+ storageClassType: "string",
1342
+ },
1343
+ local_tunnel_cidr: {
1344
+ value: cdktf.stringToHclTerraform(this._localTunnelCidr),
1345
+ isBlock: false,
1346
+ type: "simple",
1347
+ storageClassType: "string",
1348
+ },
1349
+ manual_bgp_advertised_cidrs: {
1350
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._manualBgpAdvertisedCidrs),
1351
+ isBlock: false,
1352
+ type: "set",
1353
+ storageClassType: "stringList",
1354
+ },
1355
+ phase1_local_identifier: {
1356
+ value: cdktf.stringToHclTerraform(this._phase1LocalIdentifier),
1357
+ isBlock: false,
1358
+ type: "simple",
1359
+ storageClassType: "string",
1360
+ },
1361
+ phase1_remote_identifier: {
1362
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._phase1RemoteIdentifier),
1363
+ isBlock: false,
1364
+ type: "list",
1365
+ storageClassType: "stringList",
1366
+ },
1367
+ phase_1_authentication: {
1368
+ value: cdktf.stringToHclTerraform(this._phase1Authentication),
1369
+ isBlock: false,
1370
+ type: "simple",
1371
+ storageClassType: "string",
1372
+ },
1373
+ phase_1_dh_groups: {
1374
+ value: cdktf.stringToHclTerraform(this._phase1DhGroups),
1375
+ isBlock: false,
1376
+ type: "simple",
1377
+ storageClassType: "string",
1378
+ },
1379
+ phase_1_encryption: {
1380
+ value: cdktf.stringToHclTerraform(this._phase1Encryption),
1381
+ isBlock: false,
1382
+ type: "simple",
1383
+ storageClassType: "string",
1384
+ },
1385
+ phase_2_authentication: {
1386
+ value: cdktf.stringToHclTerraform(this._phase2Authentication),
1387
+ isBlock: false,
1388
+ type: "simple",
1389
+ storageClassType: "string",
1390
+ },
1391
+ phase_2_dh_groups: {
1392
+ value: cdktf.stringToHclTerraform(this._phase2DhGroups),
1393
+ isBlock: false,
1394
+ type: "simple",
1395
+ storageClassType: "string",
1396
+ },
1397
+ phase_2_encryption: {
1398
+ value: cdktf.stringToHclTerraform(this._phase2Encryption),
1399
+ isBlock: false,
1400
+ type: "simple",
1401
+ storageClassType: "string",
1402
+ },
1403
+ pre_shared_key: {
1404
+ value: cdktf.stringToHclTerraform(this._preSharedKey),
1405
+ isBlock: false,
1406
+ type: "simple",
1407
+ storageClassType: "string",
1408
+ },
1409
+ prepend_as_path: {
1410
+ value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._prependAsPath),
1411
+ isBlock: false,
1412
+ type: "list",
1413
+ storageClassType: "stringList",
1414
+ },
1415
+ remote_gateway_ip: {
1416
+ value: cdktf.stringToHclTerraform(this._remoteGatewayIp),
1417
+ isBlock: false,
1418
+ type: "simple",
1419
+ storageClassType: "string",
1420
+ },
1421
+ remote_lan_ip: {
1422
+ value: cdktf.stringToHclTerraform(this._remoteLanIp),
1423
+ isBlock: false,
1424
+ type: "simple",
1425
+ storageClassType: "string",
1426
+ },
1427
+ remote_subnet: {
1428
+ value: cdktf.stringToHclTerraform(this._remoteSubnet),
1429
+ isBlock: false,
1430
+ type: "simple",
1431
+ storageClassType: "string",
1432
+ },
1433
+ remote_tunnel_cidr: {
1434
+ value: cdktf.stringToHclTerraform(this._remoteTunnelCidr),
1435
+ isBlock: false,
1436
+ type: "simple",
1437
+ storageClassType: "string",
1438
+ },
1439
+ remote_vpc_name: {
1440
+ value: cdktf.stringToHclTerraform(this._remoteVpcName),
1441
+ isBlock: false,
1442
+ type: "simple",
1443
+ storageClassType: "string",
1444
+ },
1445
+ switch_to_ha_standby_gateway: {
1446
+ value: cdktf.booleanToHclTerraform(this._switchToHaStandbyGateway),
1447
+ isBlock: false,
1448
+ type: "simple",
1449
+ storageClassType: "boolean",
1450
+ },
1451
+ tunnel_protocol: {
1452
+ value: cdktf.stringToHclTerraform(this._tunnelProtocol),
1453
+ isBlock: false,
1454
+ type: "simple",
1455
+ storageClassType: "string",
1456
+ },
1457
+ tunnel_src_ip: {
1458
+ value: cdktf.stringToHclTerraform(this._tunnelSrcIp),
1459
+ isBlock: false,
1460
+ type: "simple",
1461
+ storageClassType: "string",
1462
+ },
1463
+ vpc_id: {
1464
+ value: cdktf.stringToHclTerraform(this._vpcId),
1465
+ isBlock: false,
1466
+ type: "simple",
1467
+ storageClassType: "string",
1468
+ },
1469
+ bgp_bfd: {
1470
+ value: transitExternalDeviceConnBgpBfdToHclTerraform(this._bgpBfd.internalValue),
1471
+ isBlock: true,
1472
+ type: "list",
1473
+ storageClassType: "TransitExternalDeviceConnBgpBfdList",
1474
+ },
1475
+ };
1476
+ // remove undefined attributes
1477
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
1478
+ }
1479
+ }