@cdktf/provider-google
Version:
Prebuilt google Provider for Terraform CDK (cdktf)
1,014 lines • 164 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ComputeInterconnectGroup = exports.ComputeInterconnectGroupTimeoutsOutputReference = exports.ComputeInterconnectGroupInterconnectsList = exports.ComputeInterconnectGroupInterconnectsOutputReference = exports.ComputeInterconnectGroupIntentOutputReference = exports.ComputeInterconnectGroupPhysicalStructureList = exports.ComputeInterconnectGroupPhysicalStructureOutputReference = exports.ComputeInterconnectGroupPhysicalStructureMetrosList = exports.ComputeInterconnectGroupPhysicalStructureMetrosOutputReference = exports.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesList = exports.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesOutputReference = exports.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesList = exports.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesOutputReference = exports.ComputeInterconnectGroupConfiguredList = exports.ComputeInterconnectGroupConfiguredOutputReference = exports.ComputeInterconnectGroupConfiguredTopologyCapabilityList = exports.ComputeInterconnectGroupConfiguredTopologyCapabilityOutputReference = exports.ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersList = exports.ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersOutputReference = void 0;
exports.computeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersToTerraform = computeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersToTerraform;
exports.computeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersToHclTerraform = computeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersToHclTerraform;
exports.computeInterconnectGroupConfiguredTopologyCapabilityToTerraform = computeInterconnectGroupConfiguredTopologyCapabilityToTerraform;
exports.computeInterconnectGroupConfiguredTopologyCapabilityToHclTerraform = computeInterconnectGroupConfiguredTopologyCapabilityToHclTerraform;
exports.computeInterconnectGroupConfiguredToTerraform = computeInterconnectGroupConfiguredToTerraform;
exports.computeInterconnectGroupConfiguredToHclTerraform = computeInterconnectGroupConfiguredToHclTerraform;
exports.computeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesToTerraform = computeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesToTerraform;
exports.computeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesToHclTerraform = computeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesToHclTerraform;
exports.computeInterconnectGroupPhysicalStructureMetrosFacilitiesToTerraform = computeInterconnectGroupPhysicalStructureMetrosFacilitiesToTerraform;
exports.computeInterconnectGroupPhysicalStructureMetrosFacilitiesToHclTerraform = computeInterconnectGroupPhysicalStructureMetrosFacilitiesToHclTerraform;
exports.computeInterconnectGroupPhysicalStructureMetrosToTerraform = computeInterconnectGroupPhysicalStructureMetrosToTerraform;
exports.computeInterconnectGroupPhysicalStructureMetrosToHclTerraform = computeInterconnectGroupPhysicalStructureMetrosToHclTerraform;
exports.computeInterconnectGroupPhysicalStructureToTerraform = computeInterconnectGroupPhysicalStructureToTerraform;
exports.computeInterconnectGroupPhysicalStructureToHclTerraform = computeInterconnectGroupPhysicalStructureToHclTerraform;
exports.computeInterconnectGroupIntentToTerraform = computeInterconnectGroupIntentToTerraform;
exports.computeInterconnectGroupIntentToHclTerraform = computeInterconnectGroupIntentToHclTerraform;
exports.computeInterconnectGroupInterconnectsToTerraform = computeInterconnectGroupInterconnectsToTerraform;
exports.computeInterconnectGroupInterconnectsToHclTerraform = computeInterconnectGroupInterconnectsToHclTerraform;
exports.computeInterconnectGroupTimeoutsToTerraform = computeInterconnectGroupTimeoutsToTerraform;
exports.computeInterconnectGroupTimeoutsToHclTerraform = computeInterconnectGroupTimeoutsToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function computeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function computeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// blocker_type - computed: true, optional: false, required: false
get blockerType() {
return this.getStringAttribute('blocker_type');
}
// documentation_link - computed: true, optional: false, required: false
get documentationLink() {
return this.getStringAttribute('documentation_link');
}
// explanation - computed: true, optional: false, required: false
get explanation() {
return this.getStringAttribute('explanation');
}
// facilities - computed: true, optional: false, required: false
get facilities() {
return this.getListAttribute('facilities');
}
// interconnects - computed: true, optional: false, required: false
get interconnects() {
return this.getListAttribute('interconnects');
}
// metros - computed: true, optional: false, required: false
get metros() {
return this.getListAttribute('metros');
}
// zones - computed: true, optional: false, required: false
get zones() {
return this.getListAttribute('zones');
}
}
exports.ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersOutputReference = ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersOutputReference;
_a = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersOutputReference[_a] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersOutputReference", version: "16.3.0" };
class ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersList = ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersList;
_b = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersList[_b] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersList", version: "16.3.0" };
function computeInterconnectGroupConfiguredTopologyCapabilityToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function computeInterconnectGroupConfiguredTopologyCapabilityToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class ComputeInterconnectGroupConfiguredTopologyCapabilityOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// intended_capability_blockers - computed: true, optional: false, required: false
this._intendedCapabilityBlockers = new ComputeInterconnectGroupConfiguredTopologyCapabilityIntendedCapabilityBlockersList(this, "intended_capability_blockers", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
get intendedCapabilityBlockers() {
return this._intendedCapabilityBlockers;
}
// supported_sla - computed: true, optional: false, required: false
get supportedSla() {
return this.getStringAttribute('supported_sla');
}
}
exports.ComputeInterconnectGroupConfiguredTopologyCapabilityOutputReference = ComputeInterconnectGroupConfiguredTopologyCapabilityOutputReference;
_c = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupConfiguredTopologyCapabilityOutputReference[_c] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupConfiguredTopologyCapabilityOutputReference", version: "16.3.0" };
class ComputeInterconnectGroupConfiguredTopologyCapabilityList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ComputeInterconnectGroupConfiguredTopologyCapabilityOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ComputeInterconnectGroupConfiguredTopologyCapabilityList = ComputeInterconnectGroupConfiguredTopologyCapabilityList;
_d = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupConfiguredTopologyCapabilityList[_d] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupConfiguredTopologyCapabilityList", version: "16.3.0" };
function computeInterconnectGroupConfiguredToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function computeInterconnectGroupConfiguredToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class ComputeInterconnectGroupConfiguredOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// topology_capability - computed: true, optional: false, required: false
this._topologyCapability = new ComputeInterconnectGroupConfiguredTopologyCapabilityList(this, "topology_capability", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
get topologyCapability() {
return this._topologyCapability;
}
}
exports.ComputeInterconnectGroupConfiguredOutputReference = ComputeInterconnectGroupConfiguredOutputReference;
_e = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupConfiguredOutputReference[_e] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupConfiguredOutputReference", version: "16.3.0" };
class ComputeInterconnectGroupConfiguredList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ComputeInterconnectGroupConfiguredOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ComputeInterconnectGroupConfiguredList = ComputeInterconnectGroupConfiguredList;
_f = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupConfiguredList[_f] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupConfiguredList", version: "16.3.0" };
function computeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function computeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// interconnects - computed: true, optional: false, required: false
get interconnects() {
return this.getListAttribute('interconnects');
}
// zone - computed: true, optional: false, required: false
get zone() {
return this.getStringAttribute('zone');
}
}
exports.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesOutputReference = ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesOutputReference;
_g = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesOutputReference[_g] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesOutputReference", version: "16.3.0" };
class ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesList = ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesList;
_h = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesList[_h] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesList", version: "16.3.0" };
function computeInterconnectGroupPhysicalStructureMetrosFacilitiesToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function computeInterconnectGroupPhysicalStructureMetrosFacilitiesToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// zones - computed: true, optional: false, required: false
this._zones = new ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesZonesList(this, "zones", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
// facility - computed: true, optional: false, required: false
get facility() {
return this.getStringAttribute('facility');
}
get zones() {
return this._zones;
}
}
exports.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesOutputReference = ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesOutputReference;
_j = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesOutputReference[_j] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesOutputReference", version: "16.3.0" };
class ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesList = ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesList;
_k = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesList[_k] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesList", version: "16.3.0" };
function computeInterconnectGroupPhysicalStructureMetrosToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function computeInterconnectGroupPhysicalStructureMetrosToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class ComputeInterconnectGroupPhysicalStructureMetrosOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// facilities - computed: true, optional: false, required: false
this._facilities = new ComputeInterconnectGroupPhysicalStructureMetrosFacilitiesList(this, "facilities", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
get facilities() {
return this._facilities;
}
// metro - computed: true, optional: false, required: false
get metro() {
return this.getStringAttribute('metro');
}
}
exports.ComputeInterconnectGroupPhysicalStructureMetrosOutputReference = ComputeInterconnectGroupPhysicalStructureMetrosOutputReference;
_l = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupPhysicalStructureMetrosOutputReference[_l] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupPhysicalStructureMetrosOutputReference", version: "16.3.0" };
class ComputeInterconnectGroupPhysicalStructureMetrosList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ComputeInterconnectGroupPhysicalStructureMetrosOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ComputeInterconnectGroupPhysicalStructureMetrosList = ComputeInterconnectGroupPhysicalStructureMetrosList;
_m = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupPhysicalStructureMetrosList[_m] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupPhysicalStructureMetrosList", version: "16.3.0" };
function computeInterconnectGroupPhysicalStructureToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {};
}
function computeInterconnectGroupPhysicalStructureToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {};
return attrs;
}
class ComputeInterconnectGroupPhysicalStructureOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// metros - computed: true, optional: false, required: false
this._metros = new ComputeInterconnectGroupPhysicalStructureMetrosList(this, "metros", false);
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
}
}
get metros() {
return this._metros;
}
}
exports.ComputeInterconnectGroupPhysicalStructureOutputReference = ComputeInterconnectGroupPhysicalStructureOutputReference;
_o = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupPhysicalStructureOutputReference[_o] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupPhysicalStructureOutputReference", version: "16.3.0" };
class ComputeInterconnectGroupPhysicalStructureList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ComputeInterconnectGroupPhysicalStructureOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ComputeInterconnectGroupPhysicalStructureList = ComputeInterconnectGroupPhysicalStructureList;
_p = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupPhysicalStructureList[_p] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupPhysicalStructureList", version: "16.3.0" };
function computeInterconnectGroupIntentToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
topology_capability: cdktf.stringToTerraform(struct.topologyCapability),
};
}
function computeInterconnectGroupIntentToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
topology_capability: {
value: cdktf.stringToHclTerraform(struct.topologyCapability),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ComputeInterconnectGroupIntentOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._topologyCapability !== undefined) {
hasAnyValues = true;
internalValueResult.topologyCapability = this._topologyCapability;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._topologyCapability = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._topologyCapability = value.topologyCapability;
}
}
get topologyCapability() {
return this.getStringAttribute('topology_capability');
}
set topologyCapability(value) {
this._topologyCapability = value;
}
resetTopologyCapability() {
this._topologyCapability = undefined;
}
// Temporarily expose input value. Use with caution.
get topologyCapabilityInput() {
return this._topologyCapability;
}
}
exports.ComputeInterconnectGroupIntentOutputReference = ComputeInterconnectGroupIntentOutputReference;
_q = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupIntentOutputReference[_q] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupIntentOutputReference", version: "16.3.0" };
function computeInterconnectGroupInterconnectsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
interconnect: cdktf.stringToTerraform(struct.interconnect),
name: cdktf.stringToTerraform(struct.name),
};
}
function computeInterconnectGroupInterconnectsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
interconnect: {
value: cdktf.stringToHclTerraform(struct.interconnect),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(struct.name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ComputeInterconnectGroupInterconnectsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._interconnect !== undefined) {
hasAnyValues = true;
internalValueResult.interconnect = this._interconnect;
}
if (this._name !== undefined) {
hasAnyValues = true;
internalValueResult.name = this._name;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._interconnect = undefined;
this._name = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._interconnect = value.interconnect;
this._name = value.name;
}
}
get interconnect() {
return this.getStringAttribute('interconnect');
}
set interconnect(value) {
this._interconnect = value;
}
resetInterconnect() {
this._interconnect = undefined;
}
// Temporarily expose input value. Use with caution.
get interconnectInput() {
return this._interconnect;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
}
exports.ComputeInterconnectGroupInterconnectsOutputReference = ComputeInterconnectGroupInterconnectsOutputReference;
_r = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupInterconnectsOutputReference[_r] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupInterconnectsOutputReference", version: "16.3.0" };
class ComputeInterconnectGroupInterconnectsList extends cdktf.ComplexList {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new ComputeInterconnectGroupInterconnectsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.ComputeInterconnectGroupInterconnectsList = ComputeInterconnectGroupInterconnectsList;
_s = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupInterconnectsList[_s] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupInterconnectsList", version: "16.3.0" };
function computeInterconnectGroupTimeoutsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
update: cdktf.stringToTerraform(struct.update),
};
}
function computeInterconnectGroupTimeoutsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class ComputeInterconnectGroupTimeoutsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._update = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._create = value.create;
this._delete = value.delete;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.ComputeInterconnectGroupTimeoutsOutputReference = ComputeInterconnectGroupTimeoutsOutputReference;
_t = JSII_RTTI_SYMBOL_1;
ComputeInterconnectGroupTimeoutsOutputReference[_t] = { fqn: "@cdktf/provider-google.computeInterconnectGroup.ComputeInterconnectGroupTimeoutsOutputReference", version: "16.3.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_interconnect_group google_compute_interconnect_group}
*/
class ComputeInterconnectGroup extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a ComputeInterconnectGroup resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the ComputeInterconnectGroup to import
* @param importFromId The id of the existing ComputeInterconnectGroup that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_interconnect_group#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the ComputeInterconnectGroup to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "google_compute_interconnect_group", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.41.0/docs/resources/compute_interconnect_group google_compute_interconnect_group} Resource
*
* @param scope The scope in which to define this construct
* @param id The scoped construct ID. Must be unique amongst siblings in the same scope
* @param options ComputeInterconnectGroupConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'google_compute_interconnect_group',
terraformGeneratorMetadata: {
providerName: 'google',
providerVersion: '6.41.0',
providerVersionConstraint: '~> 6.0'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// ==========
// ATTRIBUTES
// ==========
// configured - computed: true, optional: false, required: false
this._configured = new ComputeInterconnectGroupConfiguredList(this, "configured", false);
// physical_structure - computed: true, optional: false, required: false
this._physicalStructure = new ComputeInterconnectGroupPhysicalStructureList(this, "physical_structure", false);
// intent - computed: false, optional: false, required: true
this._intent = new ComputeInterconnectGroupIntentOutputReference(this, "intent");
// interconnects - computed: false, optional: true, required: false
this._interconnects = new ComputeInterconnectGroupInterconnectsList(this, "interconnects", true);
// timeouts - computed: false, optional: true, required: false
this._timeouts = new ComputeInterconnectGroupTimeoutsOutputReference(this, "timeouts");
this._description = config.description;
this._id = config.id;
this._name = config.name;
this._project = config.project;
this._intent.internalValue = config.intent;
this._interconnects.internalValue = config.interconnects;
this._timeouts.internalValue = config.timeouts;
}
get configured() {
return this._configured;
}
// creation_timestamp - computed: true, optional: false, required: false
get creationTimestamp() {
return this.getStringAttribute('creation_timestamp');
}
get description() {
return this.getStringAttribute('description');
}
set description(value) {
this._description = value;
}
resetDescription() {
this._description = undefined;
}
// Temporarily expose input value. Use with caution.
get descriptionInput() {
return this._description;
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
resetId() {
this._id = undefined;
}