@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,347 @@
1
+ // https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_lb
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ export function privateModeLbProxiesToTerraform(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
+ instance_id: cdktf.stringToTerraform(struct.instanceId),
13
+ vpc_id: cdktf.stringToTerraform(struct.vpcId),
14
+ };
15
+ }
16
+ export function privateModeLbProxiesToHclTerraform(struct) {
17
+ if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
18
+ return struct;
19
+ }
20
+ if (cdktf.isComplexElement(struct)) {
21
+ throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
22
+ }
23
+ const attrs = {
24
+ instance_id: {
25
+ value: cdktf.stringToHclTerraform(struct.instanceId),
26
+ isBlock: false,
27
+ type: "simple",
28
+ storageClassType: "string",
29
+ },
30
+ vpc_id: {
31
+ value: cdktf.stringToHclTerraform(struct.vpcId),
32
+ isBlock: false,
33
+ type: "simple",
34
+ storageClassType: "string",
35
+ },
36
+ };
37
+ // remove undefined attributes
38
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
39
+ }
40
+ export class PrivateModeLbProxiesOutputReference extends cdktf.ComplexObject {
41
+ isEmptyObject = false;
42
+ resolvableValue;
43
+ /**
44
+ * @param terraformResource The parent resource
45
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
46
+ * @param complexObjectIndex the index of this item in the list
47
+ * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
48
+ */
49
+ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
50
+ super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
51
+ }
52
+ get internalValue() {
53
+ if (this.resolvableValue) {
54
+ return this.resolvableValue;
55
+ }
56
+ let hasAnyValues = this.isEmptyObject;
57
+ const internalValueResult = {};
58
+ if (this._instanceId !== undefined) {
59
+ hasAnyValues = true;
60
+ internalValueResult.instanceId = this._instanceId;
61
+ }
62
+ if (this._vpcId !== undefined) {
63
+ hasAnyValues = true;
64
+ internalValueResult.vpcId = this._vpcId;
65
+ }
66
+ return hasAnyValues ? internalValueResult : undefined;
67
+ }
68
+ set internalValue(value) {
69
+ if (value === undefined) {
70
+ this.isEmptyObject = false;
71
+ this.resolvableValue = undefined;
72
+ this._instanceId = undefined;
73
+ this._vpcId = undefined;
74
+ }
75
+ else if (cdktf.Tokenization.isResolvable(value)) {
76
+ this.isEmptyObject = false;
77
+ this.resolvableValue = value;
78
+ }
79
+ else {
80
+ this.isEmptyObject = Object.keys(value).length === 0;
81
+ this.resolvableValue = undefined;
82
+ this._instanceId = value.instanceId;
83
+ this._vpcId = value.vpcId;
84
+ }
85
+ }
86
+ // instance_id - computed: false, optional: false, required: true
87
+ _instanceId;
88
+ get instanceId() {
89
+ return this.getStringAttribute('instance_id');
90
+ }
91
+ set instanceId(value) {
92
+ this._instanceId = value;
93
+ }
94
+ // Temporarily expose input value. Use with caution.
95
+ get instanceIdInput() {
96
+ return this._instanceId;
97
+ }
98
+ // vpc_id - computed: false, optional: false, required: true
99
+ _vpcId;
100
+ get vpcId() {
101
+ return this.getStringAttribute('vpc_id');
102
+ }
103
+ set vpcId(value) {
104
+ this._vpcId = value;
105
+ }
106
+ // Temporarily expose input value. Use with caution.
107
+ get vpcIdInput() {
108
+ return this._vpcId;
109
+ }
110
+ }
111
+ export class PrivateModeLbProxiesList extends cdktf.ComplexList {
112
+ terraformResource;
113
+ terraformAttribute;
114
+ wrapsSet;
115
+ internalValue;
116
+ /**
117
+ * @param terraformResource The parent resource
118
+ * @param terraformAttribute The attribute on the parent resource this class is referencing
119
+ * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
120
+ */
121
+ constructor(terraformResource, terraformAttribute, wrapsSet) {
122
+ super(terraformResource, terraformAttribute, wrapsSet);
123
+ this.terraformResource = terraformResource;
124
+ this.terraformAttribute = terraformAttribute;
125
+ this.wrapsSet = wrapsSet;
126
+ }
127
+ /**
128
+ * @param index the index of the item to return
129
+ */
130
+ get(index) {
131
+ return new PrivateModeLbProxiesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
132
+ }
133
+ }
134
+ /**
135
+ * Represents a {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_lb aviatrix_private_mode_lb}
136
+ */
137
+ export class PrivateModeLb extends cdktf.TerraformResource {
138
+ // =================
139
+ // STATIC PROPERTIES
140
+ // =================
141
+ static tfResourceType = "aviatrix_private_mode_lb";
142
+ // ==============
143
+ // STATIC Methods
144
+ // ==============
145
+ /**
146
+ * Generates CDKTF code for importing a PrivateModeLb resource upon running "cdktf plan <stack-name>"
147
+ * @param scope The scope in which to define this construct
148
+ * @param importToId The construct id used in the generated config for the PrivateModeLb to import
149
+ * @param importFromId The id of the existing PrivateModeLb that should be imported. Refer to the {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_lb#import import section} in the documentation of this resource for the id to use
150
+ * @param provider? Optional instance of the provider where the PrivateModeLb to import is found
151
+ */
152
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
153
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aviatrix_private_mode_lb", importId: importFromId, provider });
154
+ }
155
+ // ===========
156
+ // INITIALIZER
157
+ // ===========
158
+ /**
159
+ * Create a new {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_lb aviatrix_private_mode_lb} Resource
160
+ *
161
+ * @param scope The scope in which to define this construct
162
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
163
+ * @param options PrivateModeLbConfig
164
+ */
165
+ constructor(scope, id, config) {
166
+ super(scope, id, {
167
+ terraformResourceType: 'aviatrix_private_mode_lb',
168
+ terraformGeneratorMetadata: {
169
+ providerName: 'aviatrix',
170
+ providerVersion: '8.1.10',
171
+ providerVersionConstraint: '8.1.10'
172
+ },
173
+ provider: config.provider,
174
+ dependsOn: config.dependsOn,
175
+ count: config.count,
176
+ lifecycle: config.lifecycle,
177
+ provisioners: config.provisioners,
178
+ connection: config.connection,
179
+ forEach: config.forEach
180
+ });
181
+ this._accountName = config.accountName;
182
+ this._id = config.id;
183
+ this._lbType = config.lbType;
184
+ this._multicloudAccessVpcId = config.multicloudAccessVpcId;
185
+ this._region = config.region;
186
+ this._vpcId = config.vpcId;
187
+ this._proxies.internalValue = config.proxies;
188
+ }
189
+ // ==========
190
+ // ATTRIBUTES
191
+ // ==========
192
+ // account_name - computed: false, optional: false, required: true
193
+ _accountName;
194
+ get accountName() {
195
+ return this.getStringAttribute('account_name');
196
+ }
197
+ set accountName(value) {
198
+ this._accountName = value;
199
+ }
200
+ // Temporarily expose input value. Use with caution.
201
+ get accountNameInput() {
202
+ return this._accountName;
203
+ }
204
+ // id - computed: true, optional: true, required: false
205
+ _id;
206
+ get id() {
207
+ return this.getStringAttribute('id');
208
+ }
209
+ set id(value) {
210
+ this._id = value;
211
+ }
212
+ resetId() {
213
+ this._id = undefined;
214
+ }
215
+ // Temporarily expose input value. Use with caution.
216
+ get idInput() {
217
+ return this._id;
218
+ }
219
+ // lb_type - computed: false, optional: false, required: true
220
+ _lbType;
221
+ get lbType() {
222
+ return this.getStringAttribute('lb_type');
223
+ }
224
+ set lbType(value) {
225
+ this._lbType = value;
226
+ }
227
+ // Temporarily expose input value. Use with caution.
228
+ get lbTypeInput() {
229
+ return this._lbType;
230
+ }
231
+ // multicloud_access_vpc_id - computed: false, optional: true, required: false
232
+ _multicloudAccessVpcId;
233
+ get multicloudAccessVpcId() {
234
+ return this.getStringAttribute('multicloud_access_vpc_id');
235
+ }
236
+ set multicloudAccessVpcId(value) {
237
+ this._multicloudAccessVpcId = value;
238
+ }
239
+ resetMulticloudAccessVpcId() {
240
+ this._multicloudAccessVpcId = undefined;
241
+ }
242
+ // Temporarily expose input value. Use with caution.
243
+ get multicloudAccessVpcIdInput() {
244
+ return this._multicloudAccessVpcId;
245
+ }
246
+ // region - computed: false, optional: false, required: true
247
+ _region;
248
+ get region() {
249
+ return this.getStringAttribute('region');
250
+ }
251
+ set region(value) {
252
+ this._region = value;
253
+ }
254
+ // Temporarily expose input value. Use with caution.
255
+ get regionInput() {
256
+ return this._region;
257
+ }
258
+ // vpc_id - computed: false, optional: false, required: true
259
+ _vpcId;
260
+ get vpcId() {
261
+ return this.getStringAttribute('vpc_id');
262
+ }
263
+ set vpcId(value) {
264
+ this._vpcId = value;
265
+ }
266
+ // Temporarily expose input value. Use with caution.
267
+ get vpcIdInput() {
268
+ return this._vpcId;
269
+ }
270
+ // proxies - computed: false, optional: true, required: false
271
+ _proxies = new PrivateModeLbProxiesList(this, "proxies", false);
272
+ get proxies() {
273
+ return this._proxies;
274
+ }
275
+ putProxies(value) {
276
+ this._proxies.internalValue = value;
277
+ }
278
+ resetProxies() {
279
+ this._proxies.internalValue = undefined;
280
+ }
281
+ // Temporarily expose input value. Use with caution.
282
+ get proxiesInput() {
283
+ return this._proxies.internalValue;
284
+ }
285
+ // =========
286
+ // SYNTHESIS
287
+ // =========
288
+ synthesizeAttributes() {
289
+ return {
290
+ account_name: cdktf.stringToTerraform(this._accountName),
291
+ id: cdktf.stringToTerraform(this._id),
292
+ lb_type: cdktf.stringToTerraform(this._lbType),
293
+ multicloud_access_vpc_id: cdktf.stringToTerraform(this._multicloudAccessVpcId),
294
+ region: cdktf.stringToTerraform(this._region),
295
+ vpc_id: cdktf.stringToTerraform(this._vpcId),
296
+ proxies: cdktf.listMapper(privateModeLbProxiesToTerraform, true)(this._proxies.internalValue),
297
+ };
298
+ }
299
+ synthesizeHclAttributes() {
300
+ const attrs = {
301
+ account_name: {
302
+ value: cdktf.stringToHclTerraform(this._accountName),
303
+ isBlock: false,
304
+ type: "simple",
305
+ storageClassType: "string",
306
+ },
307
+ id: {
308
+ value: cdktf.stringToHclTerraform(this._id),
309
+ isBlock: false,
310
+ type: "simple",
311
+ storageClassType: "string",
312
+ },
313
+ lb_type: {
314
+ value: cdktf.stringToHclTerraform(this._lbType),
315
+ isBlock: false,
316
+ type: "simple",
317
+ storageClassType: "string",
318
+ },
319
+ multicloud_access_vpc_id: {
320
+ value: cdktf.stringToHclTerraform(this._multicloudAccessVpcId),
321
+ isBlock: false,
322
+ type: "simple",
323
+ storageClassType: "string",
324
+ },
325
+ region: {
326
+ value: cdktf.stringToHclTerraform(this._region),
327
+ isBlock: false,
328
+ type: "simple",
329
+ storageClassType: "string",
330
+ },
331
+ vpc_id: {
332
+ value: cdktf.stringToHclTerraform(this._vpcId),
333
+ isBlock: false,
334
+ type: "simple",
335
+ storageClassType: "string",
336
+ },
337
+ proxies: {
338
+ value: cdktf.listMapperHcl(privateModeLbProxiesToHclTerraform, true)(this._proxies.internalValue),
339
+ isBlock: true,
340
+ type: "list",
341
+ storageClassType: "PrivateModeLbProxiesList",
342
+ },
343
+ };
344
+ // remove undefined attributes
345
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
346
+ }
347
+ }
@@ -0,0 +1,85 @@
1
+ import { Construct } from 'constructs';
2
+ import * as cdktf from 'cdktf';
3
+ export interface PrivateModeMulticloudEndpointConfig extends cdktf.TerraformMetaArguments {
4
+ /**
5
+ * Name of the access account.
6
+ *
7
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint#account_name PrivateModeMulticloudEndpoint#account_name}
8
+ */
9
+ readonly accountName: string;
10
+ /**
11
+ * ID of the VPC with the Controller load balancer.
12
+ *
13
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint#controller_lb_vpc_id PrivateModeMulticloudEndpoint#controller_lb_vpc_id}
14
+ */
15
+ readonly controllerLbVpcId: string;
16
+ /**
17
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint#id PrivateModeMulticloudEndpoint#id}
18
+ *
19
+ * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
20
+ * 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.
21
+ */
22
+ readonly id?: string;
23
+ /**
24
+ * Name of the VPC region.
25
+ *
26
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint#region PrivateModeMulticloudEndpoint#region}
27
+ */
28
+ readonly region: string;
29
+ /**
30
+ * VPC ID.
31
+ *
32
+ * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint#vpc_id PrivateModeMulticloudEndpoint#vpc_id}
33
+ */
34
+ readonly vpcId: string;
35
+ }
36
+ /**
37
+ * Represents a {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint aviatrix_private_mode_multicloud_endpoint}
38
+ */
39
+ export declare class PrivateModeMulticloudEndpoint extends cdktf.TerraformResource {
40
+ static readonly tfResourceType = "aviatrix_private_mode_multicloud_endpoint";
41
+ /**
42
+ * Generates CDKTF code for importing a PrivateModeMulticloudEndpoint resource upon running "cdktf plan <stack-name>"
43
+ * @param scope The scope in which to define this construct
44
+ * @param importToId The construct id used in the generated config for the PrivateModeMulticloudEndpoint to import
45
+ * @param importFromId The id of the existing PrivateModeMulticloudEndpoint that should be imported. Refer to the {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint#import import section} in the documentation of this resource for the id to use
46
+ * @param provider? Optional instance of the provider where the PrivateModeMulticloudEndpoint to import is found
47
+ */
48
+ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any;
49
+ /**
50
+ * Create a new {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint aviatrix_private_mode_multicloud_endpoint} Resource
51
+ *
52
+ * @param scope The scope in which to define this construct
53
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
54
+ * @param options PrivateModeMulticloudEndpointConfig
55
+ */
56
+ constructor(scope: Construct, id: string, config: PrivateModeMulticloudEndpointConfig);
57
+ private _accountName?;
58
+ get accountName(): string;
59
+ set accountName(value: string);
60
+ get accountNameInput(): string;
61
+ private _controllerLbVpcId?;
62
+ get controllerLbVpcId(): string;
63
+ set controllerLbVpcId(value: string);
64
+ get controllerLbVpcIdInput(): string;
65
+ get dnsEntry(): any;
66
+ private _id?;
67
+ get id(): string;
68
+ set id(value: string);
69
+ resetId(): void;
70
+ get idInput(): string;
71
+ private _region?;
72
+ get region(): string;
73
+ set region(value: string);
74
+ get regionInput(): string;
75
+ private _vpcId?;
76
+ get vpcId(): string;
77
+ set vpcId(value: string);
78
+ get vpcIdInput(): string;
79
+ protected synthesizeAttributes(): {
80
+ [name: string]: any;
81
+ };
82
+ protected synthesizeHclAttributes(): {
83
+ [name: string]: any;
84
+ };
85
+ }
@@ -0,0 +1,175 @@
1
+ // https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint
2
+ // generated from terraform resource schema
3
+ import * as cdktf from 'cdktf';
4
+ /**
5
+ * Represents a {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint aviatrix_private_mode_multicloud_endpoint}
6
+ */
7
+ export class PrivateModeMulticloudEndpoint extends cdktf.TerraformResource {
8
+ // =================
9
+ // STATIC PROPERTIES
10
+ // =================
11
+ static tfResourceType = "aviatrix_private_mode_multicloud_endpoint";
12
+ // ==============
13
+ // STATIC Methods
14
+ // ==============
15
+ /**
16
+ * Generates CDKTF code for importing a PrivateModeMulticloudEndpoint resource upon running "cdktf plan <stack-name>"
17
+ * @param scope The scope in which to define this construct
18
+ * @param importToId The construct id used in the generated config for the PrivateModeMulticloudEndpoint to import
19
+ * @param importFromId The id of the existing PrivateModeMulticloudEndpoint that should be imported. Refer to the {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint#import import section} in the documentation of this resource for the id to use
20
+ * @param provider? Optional instance of the provider where the PrivateModeMulticloudEndpoint to import is found
21
+ */
22
+ static generateConfigForImport(scope, importToId, importFromId, provider) {
23
+ return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aviatrix_private_mode_multicloud_endpoint", importId: importFromId, provider });
24
+ }
25
+ // ===========
26
+ // INITIALIZER
27
+ // ===========
28
+ /**
29
+ * Create a new {@link https://registry.terraform.io/providers/aviatrixsystems/aviatrix/8.1.10/docs/resources/private_mode_multicloud_endpoint aviatrix_private_mode_multicloud_endpoint} Resource
30
+ *
31
+ * @param scope The scope in which to define this construct
32
+ * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
33
+ * @param options PrivateModeMulticloudEndpointConfig
34
+ */
35
+ constructor(scope, id, config) {
36
+ super(scope, id, {
37
+ terraformResourceType: 'aviatrix_private_mode_multicloud_endpoint',
38
+ terraformGeneratorMetadata: {
39
+ providerName: 'aviatrix',
40
+ providerVersion: '8.1.10',
41
+ providerVersionConstraint: '8.1.10'
42
+ },
43
+ provider: config.provider,
44
+ dependsOn: config.dependsOn,
45
+ count: config.count,
46
+ lifecycle: config.lifecycle,
47
+ provisioners: config.provisioners,
48
+ connection: config.connection,
49
+ forEach: config.forEach
50
+ });
51
+ this._accountName = config.accountName;
52
+ this._controllerLbVpcId = config.controllerLbVpcId;
53
+ this._id = config.id;
54
+ this._region = config.region;
55
+ this._vpcId = config.vpcId;
56
+ }
57
+ // ==========
58
+ // ATTRIBUTES
59
+ // ==========
60
+ // account_name - computed: false, optional: false, required: true
61
+ _accountName;
62
+ get accountName() {
63
+ return this.getStringAttribute('account_name');
64
+ }
65
+ set accountName(value) {
66
+ this._accountName = value;
67
+ }
68
+ // Temporarily expose input value. Use with caution.
69
+ get accountNameInput() {
70
+ return this._accountName;
71
+ }
72
+ // controller_lb_vpc_id - computed: false, optional: false, required: true
73
+ _controllerLbVpcId;
74
+ get controllerLbVpcId() {
75
+ return this.getStringAttribute('controller_lb_vpc_id');
76
+ }
77
+ set controllerLbVpcId(value) {
78
+ this._controllerLbVpcId = value;
79
+ }
80
+ // Temporarily expose input value. Use with caution.
81
+ get controllerLbVpcIdInput() {
82
+ return this._controllerLbVpcId;
83
+ }
84
+ // dns_entry - computed: true, optional: false, required: false
85
+ get dnsEntry() {
86
+ return this.getStringAttribute('dns_entry');
87
+ }
88
+ // id - computed: true, optional: true, required: false
89
+ _id;
90
+ get id() {
91
+ return this.getStringAttribute('id');
92
+ }
93
+ set id(value) {
94
+ this._id = value;
95
+ }
96
+ resetId() {
97
+ this._id = undefined;
98
+ }
99
+ // Temporarily expose input value. Use with caution.
100
+ get idInput() {
101
+ return this._id;
102
+ }
103
+ // region - computed: false, optional: false, required: true
104
+ _region;
105
+ get region() {
106
+ return this.getStringAttribute('region');
107
+ }
108
+ set region(value) {
109
+ this._region = value;
110
+ }
111
+ // Temporarily expose input value. Use with caution.
112
+ get regionInput() {
113
+ return this._region;
114
+ }
115
+ // vpc_id - computed: false, optional: false, required: true
116
+ _vpcId;
117
+ get vpcId() {
118
+ return this.getStringAttribute('vpc_id');
119
+ }
120
+ set vpcId(value) {
121
+ this._vpcId = value;
122
+ }
123
+ // Temporarily expose input value. Use with caution.
124
+ get vpcIdInput() {
125
+ return this._vpcId;
126
+ }
127
+ // =========
128
+ // SYNTHESIS
129
+ // =========
130
+ synthesizeAttributes() {
131
+ return {
132
+ account_name: cdktf.stringToTerraform(this._accountName),
133
+ controller_lb_vpc_id: cdktf.stringToTerraform(this._controllerLbVpcId),
134
+ id: cdktf.stringToTerraform(this._id),
135
+ region: cdktf.stringToTerraform(this._region),
136
+ vpc_id: cdktf.stringToTerraform(this._vpcId),
137
+ };
138
+ }
139
+ synthesizeHclAttributes() {
140
+ const attrs = {
141
+ account_name: {
142
+ value: cdktf.stringToHclTerraform(this._accountName),
143
+ isBlock: false,
144
+ type: "simple",
145
+ storageClassType: "string",
146
+ },
147
+ controller_lb_vpc_id: {
148
+ value: cdktf.stringToHclTerraform(this._controllerLbVpcId),
149
+ isBlock: false,
150
+ type: "simple",
151
+ storageClassType: "string",
152
+ },
153
+ id: {
154
+ value: cdktf.stringToHclTerraform(this._id),
155
+ isBlock: false,
156
+ type: "simple",
157
+ storageClassType: "string",
158
+ },
159
+ region: {
160
+ value: cdktf.stringToHclTerraform(this._region),
161
+ isBlock: false,
162
+ type: "simple",
163
+ storageClassType: "string",
164
+ },
165
+ vpc_id: {
166
+ value: cdktf.stringToHclTerraform(this._vpcId),
167
+ isBlock: false,
168
+ type: "simple",
169
+ storageClassType: "string",
170
+ },
171
+ };
172
+ // remove undefined attributes
173
+ return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
174
+ }
175
+ }