@cdktf-providers/edge-center-edgecenter 0.10.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +355 -0
- package/README.md +19 -0
- package/dist/baremetal/index.d.ts +528 -0
- package/dist/baremetal/index.js +1250 -0
- package/dist/cdn-lecert/index.d.ts +76 -0
- package/dist/cdn-lecert/index.js +157 -0
- package/dist/cdn-origingroup/index.d.ts +237 -0
- package/dist/cdn-origingroup/index.js +560 -0
- package/dist/cdn-resource/index.d.ts +2223 -0
- package/dist/cdn-resource/index.js +5865 -0
- package/dist/cdn-rule/index.d.ts +2037 -0
- package/dist/cdn-rule/index.js +5381 -0
- package/dist/cdn-shielding/index.d.ts +64 -0
- package/dist/cdn-shielding/index.js +131 -0
- package/dist/cdn-sslcert/index.d.ts +76 -0
- package/dist/cdn-sslcert/index.js +159 -0
- package/dist/data-edgecenter-availability-zone/index.d.ts +67 -0
- package/dist/data-edgecenter-availability-zone/index.js +141 -0
- package/dist/data-edgecenter-cdn-shielding-location/index.d.ts +54 -0
- package/dist/data-edgecenter-cdn-shielding-location/index.js +111 -0
- package/dist/data-edgecenter-floatingip/index.d.ts +183 -0
- package/dist/data-edgecenter-floatingip/index.js +378 -0
- package/dist/data-edgecenter-image/index.d.ts +183 -0
- package/dist/data-edgecenter-image/index.js +378 -0
- package/dist/data-edgecenter-instance/index.d.ts +312 -0
- package/dist/data-edgecenter-instance/index.js +690 -0
- package/dist/data-edgecenter-instance-port-security/index.d.ts +110 -0
- package/dist/data-edgecenter-instance-port-security/index.js +231 -0
- package/dist/data-edgecenter-instance-v2/index.d.ts +222 -0
- package/dist/data-edgecenter-instance-v2/index.js +501 -0
- package/dist/data-edgecenter-k8s/index.d.ts +167 -0
- package/dist/data-edgecenter-k8s/index.js +412 -0
- package/dist/data-edgecenter-k8s-client-config/index.d.ts +100 -0
- package/dist/data-edgecenter-k8s-client-config/index.js +211 -0
- package/dist/data-edgecenter-k8s-pool/index.d.ts +120 -0
- package/dist/data-edgecenter-k8s-pool/index.js +271 -0
- package/dist/data-edgecenter-lb-l7policy/index.d.ts +114 -0
- package/dist/data-edgecenter-lb-l7policy/index.js +258 -0
- package/dist/data-edgecenter-lb-l7rule/index.d.ts +120 -0
- package/dist/data-edgecenter-lb-l7rule/index.js +262 -0
- package/dist/data-edgecenter-lblistener/index.d.ts +122 -0
- package/dist/data-edgecenter-lblistener/index.js +269 -0
- package/dist/data-edgecenter-lbpool/index.d.ts +204 -0
- package/dist/data-edgecenter-lbpool/index.js +454 -0
- package/dist/data-edgecenter-loadbalancer/index.d.ts +203 -0
- package/dist/data-edgecenter-loadbalancer/index.js +427 -0
- package/dist/data-edgecenter-loadbalancerv2/index.d.ts +169 -0
- package/dist/data-edgecenter-loadbalancerv2/index.js +343 -0
- package/dist/data-edgecenter-network/index.d.ts +270 -0
- package/dist/data-edgecenter-network/index.js +589 -0
- package/dist/data-edgecenter-project/index.d.ts +72 -0
- package/dist/data-edgecenter-project/index.js +153 -0
- package/dist/data-edgecenter-region/index.d.ts +54 -0
- package/dist/data-edgecenter-region/index.js +111 -0
- package/dist/data-edgecenter-reseller-images/index.d.ts +91 -0
- package/dist/data-edgecenter-reseller-images/index.js +198 -0
- package/dist/data-edgecenter-reseller-images-v2/index.d.ts +101 -0
- package/dist/data-edgecenter-reseller-images-v2/index.js +218 -0
- package/dist/data-edgecenter-reseller-networks/index.d.ts +269 -0
- package/dist/data-edgecenter-reseller-networks/index.js +610 -0
- package/dist/data-edgecenter-reservedfixedip/index.d.ts +141 -0
- package/dist/data-edgecenter-reservedfixedip/index.js +311 -0
- package/dist/data-edgecenter-router/index.d.ts +245 -0
- package/dist/data-edgecenter-router/index.js +538 -0
- package/dist/data-edgecenter-secret/index.d.ts +109 -0
- package/dist/data-edgecenter-secret/index.js +235 -0
- package/dist/data-edgecenter-securitygroup/index.d.ts +211 -0
- package/dist/data-edgecenter-securitygroup/index.js +450 -0
- package/dist/data-edgecenter-servergroup/index.d.ts +137 -0
- package/dist/data-edgecenter-servergroup/index.js +289 -0
- package/dist/data-edgecenter-snapshot/index.d.ts +129 -0
- package/dist/data-edgecenter-snapshot/index.js +281 -0
- package/dist/data-edgecenter-storage-s3/index.d.ts +71 -0
- package/dist/data-edgecenter-storage-s3/index.js +157 -0
- package/dist/data-edgecenter-storage-s3-bucket/index.d.ts +64 -0
- package/dist/data-edgecenter-storage-s3-bucket/index.js +131 -0
- package/dist/data-edgecenter-subnet/index.d.ts +253 -0
- package/dist/data-edgecenter-subnet/index.js +536 -0
- package/dist/data-edgecenter-useractions-subscription-amqp/index.d.ts +48 -0
- package/dist/data-edgecenter-useractions-subscription-amqp/index.js +107 -0
- package/dist/data-edgecenter-useractions-subscription-log/index.d.ts +47 -0
- package/dist/data-edgecenter-useractions-subscription-log/index.js +103 -0
- package/dist/data-edgecenter-volume/index.d.ts +169 -0
- package/dist/data-edgecenter-volume/index.js +343 -0
- package/dist/dns-zone/index.d.ts +54 -0
- package/dist/dns-zone/index.js +111 -0
- package/dist/dns-zone-record/index.d.ts +494 -0
- package/dist/dns-zone-record/index.js +1217 -0
- package/dist/floatingip/index.d.ts +185 -0
- package/dist/floatingip/index.js +394 -0
- package/dist/index.d.ts +83 -0
- package/dist/index.js +84 -0
- package/dist/instance/index.d.ts +830 -0
- package/dist/instance/index.js +1948 -0
- package/dist/instance-port-security/index.d.ts +229 -0
- package/dist/instance-port-security/index.js +564 -0
- package/dist/instance-v2/index.d.ts +552 -0
- package/dist/instance-v2/index.js +1244 -0
- package/dist/k8s/index.d.ts +342 -0
- package/dist/k8s/index.js +856 -0
- package/dist/k8s-pool/index.d.ts +227 -0
- package/dist/k8s-pool/index.js +514 -0
- package/dist/keypair/index.d.ts +88 -0
- package/dist/keypair/index.js +185 -0
- package/dist/lazy-index.d.ts +0 -0
- package/dist/lazy-index.js +84 -0
- package/dist/lb-l7policy/index.d.ts +244 -0
- package/dist/lb-l7policy/index.js +566 -0
- package/dist/lb-l7rule/index.d.ts +219 -0
- package/dist/lb-l7rule/index.js +506 -0
- package/dist/lblistener/index.d.ts +264 -0
- package/dist/lblistener/index.js +597 -0
- package/dist/lbmember/index.d.ts +207 -0
- package/dist/lbmember/index.js +473 -0
- package/dist/lbpool/index.d.ts +387 -0
- package/dist/lbpool/index.js +934 -0
- package/dist/lifecyclepolicy/index.d.ts +476 -0
- package/dist/lifecyclepolicy/index.js +1188 -0
- package/dist/loadbalancer/index.d.ts +341 -0
- package/dist/loadbalancer/index.js +851 -0
- package/dist/loadbalancerv2/index.d.ts +253 -0
- package/dist/loadbalancerv2/index.js +562 -0
- package/dist/network/index.d.ts +187 -0
- package/dist/network/index.js +382 -0
- package/dist/project/index.d.ts +68 -0
- package/dist/project/index.js +150 -0
- package/dist/protection-resource/index.d.ts +179 -0
- package/dist/protection-resource/index.js +381 -0
- package/dist/protection-resource-alias/index.d.ts +64 -0
- package/dist/protection-resource-alias/index.js +131 -0
- package/dist/protection-resource-alias-certificate/index.d.ts +88 -0
- package/dist/protection-resource-alias-certificate/index.js +185 -0
- package/dist/protection-resource-blacklist-entry/index.d.ts +64 -0
- package/dist/protection-resource-blacklist-entry/index.js +131 -0
- package/dist/protection-resource-certificate/index.d.ts +88 -0
- package/dist/protection-resource-certificate/index.js +185 -0
- package/dist/protection-resource-header/index.d.ts +74 -0
- package/dist/protection-resource-header/index.js +151 -0
- package/dist/protection-resource-origin/index.d.ts +119 -0
- package/dist/protection-resource-origin/index.js +246 -0
- package/dist/protection-resource-whitelist-entry/index.d.ts +64 -0
- package/dist/protection-resource-whitelist-entry/index.js +131 -0
- package/dist/provider/index.d.ts +182 -0
- package/dist/provider/index.js +384 -0
- package/dist/reseller-images/index.d.ts +120 -0
- package/dist/reseller-images/index.js +272 -0
- package/dist/reseller-images-v2/index.d.ts +130 -0
- package/dist/reseller-images-v2/index.js +292 -0
- package/dist/reservedfixedip/index.d.ts +230 -0
- package/dist/reservedfixedip/index.js +513 -0
- package/dist/router/index.d.ts +322 -0
- package/dist/router/index.js +755 -0
- package/dist/secret/index.d.ts +146 -0
- package/dist/secret/index.js +311 -0
- package/dist/securitygroup/index.d.ts +291 -0
- package/dist/securitygroup/index.js +654 -0
- package/dist/servergroup/index.d.ts +143 -0
- package/dist/servergroup/index.js +302 -0
- package/dist/snapshot/index.d.ts +185 -0
- package/dist/snapshot/index.js +383 -0
- package/dist/storage-s3/index.d.ts +141 -0
- package/dist/storage-s3/index.js +292 -0
- package/dist/storage-s3-bucket/index.d.ts +64 -0
- package/dist/storage-s3-bucket/index.js +131 -0
- package/dist/subnet/index.d.ts +346 -0
- package/dist/subnet/index.js +751 -0
- package/dist/useractions-subscription-amqp/index.d.ts +87 -0
- package/dist/useractions-subscription-amqp/index.js +180 -0
- package/dist/useractions-subscription-log/index.d.ts +74 -0
- package/dist/useractions-subscription-log/index.js +151 -0
- package/dist/volume/index.d.ts +208 -0
- package/dist/volume/index.js +424 -0
- package/package.json +51 -0
|
@@ -0,0 +1,755 @@
|
|
|
1
|
+
// https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/router
|
|
2
|
+
// generated from terraform resource schema
|
|
3
|
+
import * as cdktf from 'cdktf';
|
|
4
|
+
export function routerExternalGatewayInfoExternalFixedIpsToTerraform(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
|
+
}
|
|
13
|
+
export function routerExternalGatewayInfoExternalFixedIpsToHclTerraform(struct) {
|
|
14
|
+
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
|
|
15
|
+
return struct;
|
|
16
|
+
}
|
|
17
|
+
if (cdktf.isComplexElement(struct)) {
|
|
18
|
+
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
|
|
19
|
+
}
|
|
20
|
+
const attrs = {};
|
|
21
|
+
return attrs;
|
|
22
|
+
}
|
|
23
|
+
export class RouterExternalGatewayInfoExternalFixedIpsOutputReference extends cdktf.ComplexObject {
|
|
24
|
+
isEmptyObject = false;
|
|
25
|
+
/**
|
|
26
|
+
* @param terraformResource The parent resource
|
|
27
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
28
|
+
* @param complexObjectIndex the index of this item in the list
|
|
29
|
+
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
|
|
30
|
+
*/
|
|
31
|
+
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
|
|
32
|
+
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
|
|
33
|
+
}
|
|
34
|
+
get internalValue() {
|
|
35
|
+
let hasAnyValues = this.isEmptyObject;
|
|
36
|
+
const internalValueResult = {};
|
|
37
|
+
return hasAnyValues ? internalValueResult : undefined;
|
|
38
|
+
}
|
|
39
|
+
set internalValue(value) {
|
|
40
|
+
if (value === undefined) {
|
|
41
|
+
this.isEmptyObject = false;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
this.isEmptyObject = Object.keys(value).length === 0;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
// ip_address - computed: true, optional: false, required: false
|
|
48
|
+
get ipAddress() {
|
|
49
|
+
return this.getStringAttribute('ip_address');
|
|
50
|
+
}
|
|
51
|
+
// subnet_id - computed: true, optional: false, required: false
|
|
52
|
+
get subnetId() {
|
|
53
|
+
return this.getStringAttribute('subnet_id');
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
export class RouterExternalGatewayInfoExternalFixedIpsList extends cdktf.ComplexList {
|
|
57
|
+
terraformResource;
|
|
58
|
+
terraformAttribute;
|
|
59
|
+
wrapsSet;
|
|
60
|
+
/**
|
|
61
|
+
* @param terraformResource The parent resource
|
|
62
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
63
|
+
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
|
|
64
|
+
*/
|
|
65
|
+
constructor(terraformResource, terraformAttribute, wrapsSet) {
|
|
66
|
+
super(terraformResource, terraformAttribute, wrapsSet);
|
|
67
|
+
this.terraformResource = terraformResource;
|
|
68
|
+
this.terraformAttribute = terraformAttribute;
|
|
69
|
+
this.wrapsSet = wrapsSet;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* @param index the index of the item to return
|
|
73
|
+
*/
|
|
74
|
+
get(index) {
|
|
75
|
+
return new RouterExternalGatewayInfoExternalFixedIpsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
export function routerExternalGatewayInfoToTerraform(struct) {
|
|
79
|
+
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
|
|
80
|
+
return struct;
|
|
81
|
+
}
|
|
82
|
+
if (cdktf.isComplexElement(struct)) {
|
|
83
|
+
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
|
|
84
|
+
}
|
|
85
|
+
return {
|
|
86
|
+
network_id: cdktf.stringToTerraform(struct.networkId),
|
|
87
|
+
type: cdktf.stringToTerraform(struct.type),
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
export function routerExternalGatewayInfoToHclTerraform(struct) {
|
|
91
|
+
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
|
|
92
|
+
return struct;
|
|
93
|
+
}
|
|
94
|
+
if (cdktf.isComplexElement(struct)) {
|
|
95
|
+
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
|
|
96
|
+
}
|
|
97
|
+
const attrs = {
|
|
98
|
+
network_id: {
|
|
99
|
+
value: cdktf.stringToHclTerraform(struct.networkId),
|
|
100
|
+
isBlock: false,
|
|
101
|
+
type: "simple",
|
|
102
|
+
storageClassType: "string",
|
|
103
|
+
},
|
|
104
|
+
type: {
|
|
105
|
+
value: cdktf.stringToHclTerraform(struct.type),
|
|
106
|
+
isBlock: false,
|
|
107
|
+
type: "simple",
|
|
108
|
+
storageClassType: "string",
|
|
109
|
+
},
|
|
110
|
+
};
|
|
111
|
+
// remove undefined attributes
|
|
112
|
+
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
|
|
113
|
+
}
|
|
114
|
+
export class RouterExternalGatewayInfoOutputReference extends cdktf.ComplexObject {
|
|
115
|
+
isEmptyObject = false;
|
|
116
|
+
/**
|
|
117
|
+
* @param terraformResource The parent resource
|
|
118
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
119
|
+
*/
|
|
120
|
+
constructor(terraformResource, terraformAttribute) {
|
|
121
|
+
super(terraformResource, terraformAttribute, false, 0);
|
|
122
|
+
}
|
|
123
|
+
get internalValue() {
|
|
124
|
+
let hasAnyValues = this.isEmptyObject;
|
|
125
|
+
const internalValueResult = {};
|
|
126
|
+
if (this._networkId !== undefined) {
|
|
127
|
+
hasAnyValues = true;
|
|
128
|
+
internalValueResult.networkId = this._networkId;
|
|
129
|
+
}
|
|
130
|
+
if (this._type !== undefined) {
|
|
131
|
+
hasAnyValues = true;
|
|
132
|
+
internalValueResult.type = this._type;
|
|
133
|
+
}
|
|
134
|
+
return hasAnyValues ? internalValueResult : undefined;
|
|
135
|
+
}
|
|
136
|
+
set internalValue(value) {
|
|
137
|
+
if (value === undefined) {
|
|
138
|
+
this.isEmptyObject = false;
|
|
139
|
+
this._networkId = undefined;
|
|
140
|
+
this._type = undefined;
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
this.isEmptyObject = Object.keys(value).length === 0;
|
|
144
|
+
this._networkId = value.networkId;
|
|
145
|
+
this._type = value.type;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
// enable_snat - computed: true, optional: false, required: false
|
|
149
|
+
get enableSnat() {
|
|
150
|
+
return this.getBooleanAttribute('enable_snat');
|
|
151
|
+
}
|
|
152
|
+
// external_fixed_ips - computed: true, optional: false, required: false
|
|
153
|
+
_externalFixedIps = new RouterExternalGatewayInfoExternalFixedIpsList(this, "external_fixed_ips", false);
|
|
154
|
+
get externalFixedIps() {
|
|
155
|
+
return this._externalFixedIps;
|
|
156
|
+
}
|
|
157
|
+
// network_id - computed: true, optional: true, required: false
|
|
158
|
+
_networkId;
|
|
159
|
+
get networkId() {
|
|
160
|
+
return this.getStringAttribute('network_id');
|
|
161
|
+
}
|
|
162
|
+
set networkId(value) {
|
|
163
|
+
this._networkId = value;
|
|
164
|
+
}
|
|
165
|
+
resetNetworkId() {
|
|
166
|
+
this._networkId = undefined;
|
|
167
|
+
}
|
|
168
|
+
// Temporarily expose input value. Use with caution.
|
|
169
|
+
get networkIdInput() {
|
|
170
|
+
return this._networkId;
|
|
171
|
+
}
|
|
172
|
+
// type - computed: true, optional: true, required: false
|
|
173
|
+
_type;
|
|
174
|
+
get type() {
|
|
175
|
+
return this.getStringAttribute('type');
|
|
176
|
+
}
|
|
177
|
+
set type(value) {
|
|
178
|
+
this._type = value;
|
|
179
|
+
}
|
|
180
|
+
resetType() {
|
|
181
|
+
this._type = undefined;
|
|
182
|
+
}
|
|
183
|
+
// Temporarily expose input value. Use with caution.
|
|
184
|
+
get typeInput() {
|
|
185
|
+
return this._type;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
export function routerInterfacesToTerraform(struct) {
|
|
189
|
+
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
|
|
190
|
+
return struct;
|
|
191
|
+
}
|
|
192
|
+
if (cdktf.isComplexElement(struct)) {
|
|
193
|
+
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
|
|
194
|
+
}
|
|
195
|
+
return {
|
|
196
|
+
subnet_id: cdktf.stringToTerraform(struct.subnetId),
|
|
197
|
+
type: cdktf.stringToTerraform(struct.type),
|
|
198
|
+
};
|
|
199
|
+
}
|
|
200
|
+
export function routerInterfacesToHclTerraform(struct) {
|
|
201
|
+
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
|
|
202
|
+
return struct;
|
|
203
|
+
}
|
|
204
|
+
if (cdktf.isComplexElement(struct)) {
|
|
205
|
+
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
|
|
206
|
+
}
|
|
207
|
+
const attrs = {
|
|
208
|
+
subnet_id: {
|
|
209
|
+
value: cdktf.stringToHclTerraform(struct.subnetId),
|
|
210
|
+
isBlock: false,
|
|
211
|
+
type: "simple",
|
|
212
|
+
storageClassType: "string",
|
|
213
|
+
},
|
|
214
|
+
type: {
|
|
215
|
+
value: cdktf.stringToHclTerraform(struct.type),
|
|
216
|
+
isBlock: false,
|
|
217
|
+
type: "simple",
|
|
218
|
+
storageClassType: "string",
|
|
219
|
+
},
|
|
220
|
+
};
|
|
221
|
+
// remove undefined attributes
|
|
222
|
+
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
|
|
223
|
+
}
|
|
224
|
+
export class RouterInterfacesOutputReference extends cdktf.ComplexObject {
|
|
225
|
+
isEmptyObject = false;
|
|
226
|
+
resolvableValue;
|
|
227
|
+
/**
|
|
228
|
+
* @param terraformResource The parent resource
|
|
229
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
230
|
+
* @param complexObjectIndex the index of this item in the list
|
|
231
|
+
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
|
|
232
|
+
*/
|
|
233
|
+
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
|
|
234
|
+
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
|
|
235
|
+
}
|
|
236
|
+
get internalValue() {
|
|
237
|
+
if (this.resolvableValue) {
|
|
238
|
+
return this.resolvableValue;
|
|
239
|
+
}
|
|
240
|
+
let hasAnyValues = this.isEmptyObject;
|
|
241
|
+
const internalValueResult = {};
|
|
242
|
+
if (this._subnetId !== undefined) {
|
|
243
|
+
hasAnyValues = true;
|
|
244
|
+
internalValueResult.subnetId = this._subnetId;
|
|
245
|
+
}
|
|
246
|
+
if (this._type !== undefined) {
|
|
247
|
+
hasAnyValues = true;
|
|
248
|
+
internalValueResult.type = this._type;
|
|
249
|
+
}
|
|
250
|
+
return hasAnyValues ? internalValueResult : undefined;
|
|
251
|
+
}
|
|
252
|
+
set internalValue(value) {
|
|
253
|
+
if (value === undefined) {
|
|
254
|
+
this.isEmptyObject = false;
|
|
255
|
+
this.resolvableValue = undefined;
|
|
256
|
+
this._subnetId = undefined;
|
|
257
|
+
this._type = undefined;
|
|
258
|
+
}
|
|
259
|
+
else if (cdktf.Tokenization.isResolvable(value)) {
|
|
260
|
+
this.isEmptyObject = false;
|
|
261
|
+
this.resolvableValue = value;
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
this.isEmptyObject = Object.keys(value).length === 0;
|
|
265
|
+
this.resolvableValue = undefined;
|
|
266
|
+
this._subnetId = value.subnetId;
|
|
267
|
+
this._type = value.type;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
// ip_address - computed: true, optional: false, required: false
|
|
271
|
+
get ipAddress() {
|
|
272
|
+
return this.getStringAttribute('ip_address');
|
|
273
|
+
}
|
|
274
|
+
// mac_address - computed: true, optional: false, required: false
|
|
275
|
+
get macAddress() {
|
|
276
|
+
return this.getStringAttribute('mac_address');
|
|
277
|
+
}
|
|
278
|
+
// network_id - computed: true, optional: false, required: false
|
|
279
|
+
get networkId() {
|
|
280
|
+
return this.getStringAttribute('network_id');
|
|
281
|
+
}
|
|
282
|
+
// port_id - computed: true, optional: false, required: false
|
|
283
|
+
get portId() {
|
|
284
|
+
return this.getStringAttribute('port_id');
|
|
285
|
+
}
|
|
286
|
+
// subnet_id - computed: false, optional: false, required: true
|
|
287
|
+
_subnetId;
|
|
288
|
+
get subnetId() {
|
|
289
|
+
return this.getStringAttribute('subnet_id');
|
|
290
|
+
}
|
|
291
|
+
set subnetId(value) {
|
|
292
|
+
this._subnetId = value;
|
|
293
|
+
}
|
|
294
|
+
// Temporarily expose input value. Use with caution.
|
|
295
|
+
get subnetIdInput() {
|
|
296
|
+
return this._subnetId;
|
|
297
|
+
}
|
|
298
|
+
// type - computed: false, optional: false, required: true
|
|
299
|
+
_type;
|
|
300
|
+
get type() {
|
|
301
|
+
return this.getStringAttribute('type');
|
|
302
|
+
}
|
|
303
|
+
set type(value) {
|
|
304
|
+
this._type = value;
|
|
305
|
+
}
|
|
306
|
+
// Temporarily expose input value. Use with caution.
|
|
307
|
+
get typeInput() {
|
|
308
|
+
return this._type;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
export class RouterInterfacesList extends cdktf.ComplexList {
|
|
312
|
+
terraformResource;
|
|
313
|
+
terraformAttribute;
|
|
314
|
+
wrapsSet;
|
|
315
|
+
internalValue;
|
|
316
|
+
/**
|
|
317
|
+
* @param terraformResource The parent resource
|
|
318
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
319
|
+
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
|
|
320
|
+
*/
|
|
321
|
+
constructor(terraformResource, terraformAttribute, wrapsSet) {
|
|
322
|
+
super(terraformResource, terraformAttribute, wrapsSet);
|
|
323
|
+
this.terraformResource = terraformResource;
|
|
324
|
+
this.terraformAttribute = terraformAttribute;
|
|
325
|
+
this.wrapsSet = wrapsSet;
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* @param index the index of the item to return
|
|
329
|
+
*/
|
|
330
|
+
get(index) {
|
|
331
|
+
return new RouterInterfacesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
export function routerRoutesToTerraform(struct) {
|
|
335
|
+
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
|
|
336
|
+
return struct;
|
|
337
|
+
}
|
|
338
|
+
if (cdktf.isComplexElement(struct)) {
|
|
339
|
+
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
|
|
340
|
+
}
|
|
341
|
+
return {
|
|
342
|
+
destination: cdktf.stringToTerraform(struct.destination),
|
|
343
|
+
nexthop: cdktf.stringToTerraform(struct.nexthop),
|
|
344
|
+
};
|
|
345
|
+
}
|
|
346
|
+
export function routerRoutesToHclTerraform(struct) {
|
|
347
|
+
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
|
|
348
|
+
return struct;
|
|
349
|
+
}
|
|
350
|
+
if (cdktf.isComplexElement(struct)) {
|
|
351
|
+
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
|
|
352
|
+
}
|
|
353
|
+
const attrs = {
|
|
354
|
+
destination: {
|
|
355
|
+
value: cdktf.stringToHclTerraform(struct.destination),
|
|
356
|
+
isBlock: false,
|
|
357
|
+
type: "simple",
|
|
358
|
+
storageClassType: "string",
|
|
359
|
+
},
|
|
360
|
+
nexthop: {
|
|
361
|
+
value: cdktf.stringToHclTerraform(struct.nexthop),
|
|
362
|
+
isBlock: false,
|
|
363
|
+
type: "simple",
|
|
364
|
+
storageClassType: "string",
|
|
365
|
+
},
|
|
366
|
+
};
|
|
367
|
+
// remove undefined attributes
|
|
368
|
+
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
|
|
369
|
+
}
|
|
370
|
+
export class RouterRoutesOutputReference extends cdktf.ComplexObject {
|
|
371
|
+
isEmptyObject = false;
|
|
372
|
+
resolvableValue;
|
|
373
|
+
/**
|
|
374
|
+
* @param terraformResource The parent resource
|
|
375
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
376
|
+
* @param complexObjectIndex the index of this item in the list
|
|
377
|
+
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
|
|
378
|
+
*/
|
|
379
|
+
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
|
|
380
|
+
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
|
|
381
|
+
}
|
|
382
|
+
get internalValue() {
|
|
383
|
+
if (this.resolvableValue) {
|
|
384
|
+
return this.resolvableValue;
|
|
385
|
+
}
|
|
386
|
+
let hasAnyValues = this.isEmptyObject;
|
|
387
|
+
const internalValueResult = {};
|
|
388
|
+
if (this._destination !== undefined) {
|
|
389
|
+
hasAnyValues = true;
|
|
390
|
+
internalValueResult.destination = this._destination;
|
|
391
|
+
}
|
|
392
|
+
if (this._nexthop !== undefined) {
|
|
393
|
+
hasAnyValues = true;
|
|
394
|
+
internalValueResult.nexthop = this._nexthop;
|
|
395
|
+
}
|
|
396
|
+
return hasAnyValues ? internalValueResult : undefined;
|
|
397
|
+
}
|
|
398
|
+
set internalValue(value) {
|
|
399
|
+
if (value === undefined) {
|
|
400
|
+
this.isEmptyObject = false;
|
|
401
|
+
this.resolvableValue = undefined;
|
|
402
|
+
this._destination = undefined;
|
|
403
|
+
this._nexthop = undefined;
|
|
404
|
+
}
|
|
405
|
+
else if (cdktf.Tokenization.isResolvable(value)) {
|
|
406
|
+
this.isEmptyObject = false;
|
|
407
|
+
this.resolvableValue = value;
|
|
408
|
+
}
|
|
409
|
+
else {
|
|
410
|
+
this.isEmptyObject = Object.keys(value).length === 0;
|
|
411
|
+
this.resolvableValue = undefined;
|
|
412
|
+
this._destination = value.destination;
|
|
413
|
+
this._nexthop = value.nexthop;
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
// destination - computed: false, optional: false, required: true
|
|
417
|
+
_destination;
|
|
418
|
+
get destination() {
|
|
419
|
+
return this.getStringAttribute('destination');
|
|
420
|
+
}
|
|
421
|
+
set destination(value) {
|
|
422
|
+
this._destination = value;
|
|
423
|
+
}
|
|
424
|
+
// Temporarily expose input value. Use with caution.
|
|
425
|
+
get destinationInput() {
|
|
426
|
+
return this._destination;
|
|
427
|
+
}
|
|
428
|
+
// nexthop - computed: false, optional: false, required: true
|
|
429
|
+
_nexthop;
|
|
430
|
+
get nexthop() {
|
|
431
|
+
return this.getStringAttribute('nexthop');
|
|
432
|
+
}
|
|
433
|
+
set nexthop(value) {
|
|
434
|
+
this._nexthop = value;
|
|
435
|
+
}
|
|
436
|
+
// Temporarily expose input value. Use with caution.
|
|
437
|
+
get nexthopInput() {
|
|
438
|
+
return this._nexthop;
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
export class RouterRoutesList extends cdktf.ComplexList {
|
|
442
|
+
terraformResource;
|
|
443
|
+
terraformAttribute;
|
|
444
|
+
wrapsSet;
|
|
445
|
+
internalValue;
|
|
446
|
+
/**
|
|
447
|
+
* @param terraformResource The parent resource
|
|
448
|
+
* @param terraformAttribute The attribute on the parent resource this class is referencing
|
|
449
|
+
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
|
|
450
|
+
*/
|
|
451
|
+
constructor(terraformResource, terraformAttribute, wrapsSet) {
|
|
452
|
+
super(terraformResource, terraformAttribute, wrapsSet);
|
|
453
|
+
this.terraformResource = terraformResource;
|
|
454
|
+
this.terraformAttribute = terraformAttribute;
|
|
455
|
+
this.wrapsSet = wrapsSet;
|
|
456
|
+
}
|
|
457
|
+
/**
|
|
458
|
+
* @param index the index of the item to return
|
|
459
|
+
*/
|
|
460
|
+
get(index) {
|
|
461
|
+
return new RouterRoutesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
/**
|
|
465
|
+
* Represents a {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/router edgecenter_router}
|
|
466
|
+
*/
|
|
467
|
+
export class Router extends cdktf.TerraformResource {
|
|
468
|
+
// =================
|
|
469
|
+
// STATIC PROPERTIES
|
|
470
|
+
// =================
|
|
471
|
+
static tfResourceType = "edgecenter_router";
|
|
472
|
+
// ==============
|
|
473
|
+
// STATIC Methods
|
|
474
|
+
// ==============
|
|
475
|
+
/**
|
|
476
|
+
* Generates CDKTF code for importing a Router resource upon running "cdktf plan <stack-name>"
|
|
477
|
+
* @param scope The scope in which to define this construct
|
|
478
|
+
* @param importToId The construct id used in the generated config for the Router to import
|
|
479
|
+
* @param importFromId The id of the existing Router that should be imported. Refer to the {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/router#import import section} in the documentation of this resource for the id to use
|
|
480
|
+
* @param provider? Optional instance of the provider where the Router to import is found
|
|
481
|
+
*/
|
|
482
|
+
static generateConfigForImport(scope, importToId, importFromId, provider) {
|
|
483
|
+
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "edgecenter_router", importId: importFromId, provider });
|
|
484
|
+
}
|
|
485
|
+
// ===========
|
|
486
|
+
// INITIALIZER
|
|
487
|
+
// ===========
|
|
488
|
+
/**
|
|
489
|
+
* Create a new {@link https://registry.terraform.io/providers/edge-center/edgecenter/0.10.4/docs/resources/router edgecenter_router} Resource
|
|
490
|
+
*
|
|
491
|
+
* @param scope The scope in which to define this construct
|
|
492
|
+
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
|
|
493
|
+
* @param options RouterConfig
|
|
494
|
+
*/
|
|
495
|
+
constructor(scope, id, config) {
|
|
496
|
+
super(scope, id, {
|
|
497
|
+
terraformResourceType: 'edgecenter_router',
|
|
498
|
+
terraformGeneratorMetadata: {
|
|
499
|
+
providerName: 'edgecenter',
|
|
500
|
+
providerVersion: '0.10.4',
|
|
501
|
+
providerVersionConstraint: '0.10.4'
|
|
502
|
+
},
|
|
503
|
+
provider: config.provider,
|
|
504
|
+
dependsOn: config.dependsOn,
|
|
505
|
+
count: config.count,
|
|
506
|
+
lifecycle: config.lifecycle,
|
|
507
|
+
provisioners: config.provisioners,
|
|
508
|
+
connection: config.connection,
|
|
509
|
+
forEach: config.forEach
|
|
510
|
+
});
|
|
511
|
+
this._id = config.id;
|
|
512
|
+
this._lastUpdated = config.lastUpdated;
|
|
513
|
+
this._name = config.name;
|
|
514
|
+
this._projectId = config.projectId;
|
|
515
|
+
this._projectName = config.projectName;
|
|
516
|
+
this._regionId = config.regionId;
|
|
517
|
+
this._regionName = config.regionName;
|
|
518
|
+
this._externalGatewayInfo.internalValue = config.externalGatewayInfo;
|
|
519
|
+
this._interfaces.internalValue = config.interfaces;
|
|
520
|
+
this._routes.internalValue = config.routes;
|
|
521
|
+
}
|
|
522
|
+
// ==========
|
|
523
|
+
// ATTRIBUTES
|
|
524
|
+
// ==========
|
|
525
|
+
// id - computed: true, optional: true, required: false
|
|
526
|
+
_id;
|
|
527
|
+
get id() {
|
|
528
|
+
return this.getStringAttribute('id');
|
|
529
|
+
}
|
|
530
|
+
set id(value) {
|
|
531
|
+
this._id = value;
|
|
532
|
+
}
|
|
533
|
+
resetId() {
|
|
534
|
+
this._id = undefined;
|
|
535
|
+
}
|
|
536
|
+
// Temporarily expose input value. Use with caution.
|
|
537
|
+
get idInput() {
|
|
538
|
+
return this._id;
|
|
539
|
+
}
|
|
540
|
+
// last_updated - computed: true, optional: true, required: false
|
|
541
|
+
_lastUpdated;
|
|
542
|
+
get lastUpdated() {
|
|
543
|
+
return this.getStringAttribute('last_updated');
|
|
544
|
+
}
|
|
545
|
+
set lastUpdated(value) {
|
|
546
|
+
this._lastUpdated = value;
|
|
547
|
+
}
|
|
548
|
+
resetLastUpdated() {
|
|
549
|
+
this._lastUpdated = undefined;
|
|
550
|
+
}
|
|
551
|
+
// Temporarily expose input value. Use with caution.
|
|
552
|
+
get lastUpdatedInput() {
|
|
553
|
+
return this._lastUpdated;
|
|
554
|
+
}
|
|
555
|
+
// name - computed: false, optional: false, required: true
|
|
556
|
+
_name;
|
|
557
|
+
get name() {
|
|
558
|
+
return this.getStringAttribute('name');
|
|
559
|
+
}
|
|
560
|
+
set name(value) {
|
|
561
|
+
this._name = value;
|
|
562
|
+
}
|
|
563
|
+
// Temporarily expose input value. Use with caution.
|
|
564
|
+
get nameInput() {
|
|
565
|
+
return this._name;
|
|
566
|
+
}
|
|
567
|
+
// project_id - computed: false, optional: true, required: false
|
|
568
|
+
_projectId;
|
|
569
|
+
get projectId() {
|
|
570
|
+
return this.getNumberAttribute('project_id');
|
|
571
|
+
}
|
|
572
|
+
set projectId(value) {
|
|
573
|
+
this._projectId = value;
|
|
574
|
+
}
|
|
575
|
+
resetProjectId() {
|
|
576
|
+
this._projectId = undefined;
|
|
577
|
+
}
|
|
578
|
+
// Temporarily expose input value. Use with caution.
|
|
579
|
+
get projectIdInput() {
|
|
580
|
+
return this._projectId;
|
|
581
|
+
}
|
|
582
|
+
// project_name - computed: false, optional: true, required: false
|
|
583
|
+
_projectName;
|
|
584
|
+
get projectName() {
|
|
585
|
+
return this.getStringAttribute('project_name');
|
|
586
|
+
}
|
|
587
|
+
set projectName(value) {
|
|
588
|
+
this._projectName = value;
|
|
589
|
+
}
|
|
590
|
+
resetProjectName() {
|
|
591
|
+
this._projectName = undefined;
|
|
592
|
+
}
|
|
593
|
+
// Temporarily expose input value. Use with caution.
|
|
594
|
+
get projectNameInput() {
|
|
595
|
+
return this._projectName;
|
|
596
|
+
}
|
|
597
|
+
// region_id - computed: false, optional: true, required: false
|
|
598
|
+
_regionId;
|
|
599
|
+
get regionId() {
|
|
600
|
+
return this.getNumberAttribute('region_id');
|
|
601
|
+
}
|
|
602
|
+
set regionId(value) {
|
|
603
|
+
this._regionId = value;
|
|
604
|
+
}
|
|
605
|
+
resetRegionId() {
|
|
606
|
+
this._regionId = undefined;
|
|
607
|
+
}
|
|
608
|
+
// Temporarily expose input value. Use with caution.
|
|
609
|
+
get regionIdInput() {
|
|
610
|
+
return this._regionId;
|
|
611
|
+
}
|
|
612
|
+
// region_name - computed: false, optional: true, required: false
|
|
613
|
+
_regionName;
|
|
614
|
+
get regionName() {
|
|
615
|
+
return this.getStringAttribute('region_name');
|
|
616
|
+
}
|
|
617
|
+
set regionName(value) {
|
|
618
|
+
this._regionName = value;
|
|
619
|
+
}
|
|
620
|
+
resetRegionName() {
|
|
621
|
+
this._regionName = undefined;
|
|
622
|
+
}
|
|
623
|
+
// Temporarily expose input value. Use with caution.
|
|
624
|
+
get regionNameInput() {
|
|
625
|
+
return this._regionName;
|
|
626
|
+
}
|
|
627
|
+
// external_gateway_info - computed: false, optional: true, required: false
|
|
628
|
+
_externalGatewayInfo = new RouterExternalGatewayInfoOutputReference(this, "external_gateway_info");
|
|
629
|
+
get externalGatewayInfo() {
|
|
630
|
+
return this._externalGatewayInfo;
|
|
631
|
+
}
|
|
632
|
+
putExternalGatewayInfo(value) {
|
|
633
|
+
this._externalGatewayInfo.internalValue = value;
|
|
634
|
+
}
|
|
635
|
+
resetExternalGatewayInfo() {
|
|
636
|
+
this._externalGatewayInfo.internalValue = undefined;
|
|
637
|
+
}
|
|
638
|
+
// Temporarily expose input value. Use with caution.
|
|
639
|
+
get externalGatewayInfoInput() {
|
|
640
|
+
return this._externalGatewayInfo.internalValue;
|
|
641
|
+
}
|
|
642
|
+
// interfaces - computed: false, optional: true, required: false
|
|
643
|
+
_interfaces = new RouterInterfacesList(this, "interfaces", true);
|
|
644
|
+
get interfaces() {
|
|
645
|
+
return this._interfaces;
|
|
646
|
+
}
|
|
647
|
+
putInterfaces(value) {
|
|
648
|
+
this._interfaces.internalValue = value;
|
|
649
|
+
}
|
|
650
|
+
resetInterfaces() {
|
|
651
|
+
this._interfaces.internalValue = undefined;
|
|
652
|
+
}
|
|
653
|
+
// Temporarily expose input value. Use with caution.
|
|
654
|
+
get interfacesInput() {
|
|
655
|
+
return this._interfaces.internalValue;
|
|
656
|
+
}
|
|
657
|
+
// routes - computed: false, optional: true, required: false
|
|
658
|
+
_routes = new RouterRoutesList(this, "routes", false);
|
|
659
|
+
get routes() {
|
|
660
|
+
return this._routes;
|
|
661
|
+
}
|
|
662
|
+
putRoutes(value) {
|
|
663
|
+
this._routes.internalValue = value;
|
|
664
|
+
}
|
|
665
|
+
resetRoutes() {
|
|
666
|
+
this._routes.internalValue = undefined;
|
|
667
|
+
}
|
|
668
|
+
// Temporarily expose input value. Use with caution.
|
|
669
|
+
get routesInput() {
|
|
670
|
+
return this._routes.internalValue;
|
|
671
|
+
}
|
|
672
|
+
// =========
|
|
673
|
+
// SYNTHESIS
|
|
674
|
+
// =========
|
|
675
|
+
synthesizeAttributes() {
|
|
676
|
+
return {
|
|
677
|
+
id: cdktf.stringToTerraform(this._id),
|
|
678
|
+
last_updated: cdktf.stringToTerraform(this._lastUpdated),
|
|
679
|
+
name: cdktf.stringToTerraform(this._name),
|
|
680
|
+
project_id: cdktf.numberToTerraform(this._projectId),
|
|
681
|
+
project_name: cdktf.stringToTerraform(this._projectName),
|
|
682
|
+
region_id: cdktf.numberToTerraform(this._regionId),
|
|
683
|
+
region_name: cdktf.stringToTerraform(this._regionName),
|
|
684
|
+
external_gateway_info: routerExternalGatewayInfoToTerraform(this._externalGatewayInfo.internalValue),
|
|
685
|
+
interfaces: cdktf.listMapper(routerInterfacesToTerraform, true)(this._interfaces.internalValue),
|
|
686
|
+
routes: cdktf.listMapper(routerRoutesToTerraform, true)(this._routes.internalValue),
|
|
687
|
+
};
|
|
688
|
+
}
|
|
689
|
+
synthesizeHclAttributes() {
|
|
690
|
+
const attrs = {
|
|
691
|
+
id: {
|
|
692
|
+
value: cdktf.stringToHclTerraform(this._id),
|
|
693
|
+
isBlock: false,
|
|
694
|
+
type: "simple",
|
|
695
|
+
storageClassType: "string",
|
|
696
|
+
},
|
|
697
|
+
last_updated: {
|
|
698
|
+
value: cdktf.stringToHclTerraform(this._lastUpdated),
|
|
699
|
+
isBlock: false,
|
|
700
|
+
type: "simple",
|
|
701
|
+
storageClassType: "string",
|
|
702
|
+
},
|
|
703
|
+
name: {
|
|
704
|
+
value: cdktf.stringToHclTerraform(this._name),
|
|
705
|
+
isBlock: false,
|
|
706
|
+
type: "simple",
|
|
707
|
+
storageClassType: "string",
|
|
708
|
+
},
|
|
709
|
+
project_id: {
|
|
710
|
+
value: cdktf.numberToHclTerraform(this._projectId),
|
|
711
|
+
isBlock: false,
|
|
712
|
+
type: "simple",
|
|
713
|
+
storageClassType: "number",
|
|
714
|
+
},
|
|
715
|
+
project_name: {
|
|
716
|
+
value: cdktf.stringToHclTerraform(this._projectName),
|
|
717
|
+
isBlock: false,
|
|
718
|
+
type: "simple",
|
|
719
|
+
storageClassType: "string",
|
|
720
|
+
},
|
|
721
|
+
region_id: {
|
|
722
|
+
value: cdktf.numberToHclTerraform(this._regionId),
|
|
723
|
+
isBlock: false,
|
|
724
|
+
type: "simple",
|
|
725
|
+
storageClassType: "number",
|
|
726
|
+
},
|
|
727
|
+
region_name: {
|
|
728
|
+
value: cdktf.stringToHclTerraform(this._regionName),
|
|
729
|
+
isBlock: false,
|
|
730
|
+
type: "simple",
|
|
731
|
+
storageClassType: "string",
|
|
732
|
+
},
|
|
733
|
+
external_gateway_info: {
|
|
734
|
+
value: routerExternalGatewayInfoToHclTerraform(this._externalGatewayInfo.internalValue),
|
|
735
|
+
isBlock: true,
|
|
736
|
+
type: "list",
|
|
737
|
+
storageClassType: "RouterExternalGatewayInfoList",
|
|
738
|
+
},
|
|
739
|
+
interfaces: {
|
|
740
|
+
value: cdktf.listMapperHcl(routerInterfacesToHclTerraform, true)(this._interfaces.internalValue),
|
|
741
|
+
isBlock: true,
|
|
742
|
+
type: "set",
|
|
743
|
+
storageClassType: "RouterInterfacesList",
|
|
744
|
+
},
|
|
745
|
+
routes: {
|
|
746
|
+
value: cdktf.listMapperHcl(routerRoutesToHclTerraform, true)(this._routes.internalValue),
|
|
747
|
+
isBlock: true,
|
|
748
|
+
type: "list",
|
|
749
|
+
storageClassType: "RouterRoutesList",
|
|
750
|
+
},
|
|
751
|
+
};
|
|
752
|
+
// remove undefined attributes
|
|
753
|
+
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
|
|
754
|
+
}
|
|
755
|
+
}
|