UNPKG

@cdktf/provider-azurerm

Version:

Prebuilt azurerm Provider for Terraform CDK (cdktf)

1,133 lines 166 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h; Object.defineProperty(exports, "__esModule", { value: true }); exports.MobileNetworkSimPolicy = exports.MobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateOutputReference = exports.mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToHclTerraform = exports.mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToTerraform = exports.MobileNetworkSimPolicyTimeoutsOutputReference = exports.mobileNetworkSimPolicyTimeoutsToHclTerraform = exports.mobileNetworkSimPolicyTimeoutsToTerraform = exports.MobileNetworkSimPolicySliceList = exports.MobileNetworkSimPolicySliceOutputReference = exports.mobileNetworkSimPolicySliceToHclTerraform = exports.mobileNetworkSimPolicySliceToTerraform = exports.MobileNetworkSimPolicySliceDataNetworkList = exports.MobileNetworkSimPolicySliceDataNetworkOutputReference = exports.mobileNetworkSimPolicySliceDataNetworkToHclTerraform = exports.mobileNetworkSimPolicySliceDataNetworkToTerraform = exports.MobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateOutputReference = exports.mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToHclTerraform = exports.mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToTerraform(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 { downlink: cdktf.stringToTerraform(struct.downlink), uplink: cdktf.stringToTerraform(struct.uplink), }; } exports.mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToTerraform = mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToTerraform; function mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToHclTerraform(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 = { downlink: { value: cdktf.stringToHclTerraform(struct.downlink), isBlock: false, type: "simple", storageClassType: "string", }, uplink: { value: cdktf.stringToHclTerraform(struct.uplink), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToHclTerraform = mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToHclTerraform; class MobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateOutputReference 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._downlink !== undefined) { hasAnyValues = true; internalValueResult.downlink = this._downlink; } if (this._uplink !== undefined) { hasAnyValues = true; internalValueResult.uplink = this._uplink; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._downlink = undefined; this._uplink = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._downlink = value.downlink; this._uplink = value.uplink; } } get downlink() { return this.getStringAttribute('downlink'); } set downlink(value) { this._downlink = value; } // Temporarily expose input value. Use with caution. get downlinkInput() { return this._downlink; } get uplink() { return this.getStringAttribute('uplink'); } set uplink(value) { this._uplink = value; } // Temporarily expose input value. Use with caution. get uplinkInput() { return this._uplink; } } exports.MobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateOutputReference = MobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateOutputReference; _a = JSII_RTTI_SYMBOL_1; MobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateOutputReference", version: "12.27.0" }; function mobileNetworkSimPolicySliceDataNetworkToTerraform(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 { additional_allowed_session_types: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.additionalAllowedSessionTypes), allocation_and_retention_priority_level: cdktf.numberToTerraform(struct.allocationAndRetentionPriorityLevel), allowed_services_ids: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.allowedServicesIds), data_network_id: cdktf.stringToTerraform(struct.dataNetworkId), default_session_type: cdktf.stringToTerraform(struct.defaultSessionType), max_buffered_packets: cdktf.numberToTerraform(struct.maxBufferedPackets), preemption_capability: cdktf.stringToTerraform(struct.preemptionCapability), preemption_vulnerability: cdktf.stringToTerraform(struct.preemptionVulnerability), qos_indicator: cdktf.numberToTerraform(struct.qosIndicator), session_aggregate_maximum_bit_rate: mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToTerraform(struct.sessionAggregateMaximumBitRate), }; } exports.mobileNetworkSimPolicySliceDataNetworkToTerraform = mobileNetworkSimPolicySliceDataNetworkToTerraform; function mobileNetworkSimPolicySliceDataNetworkToHclTerraform(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 = { additional_allowed_session_types: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.additionalAllowedSessionTypes), isBlock: false, type: "list", storageClassType: "stringList", }, allocation_and_retention_priority_level: { value: cdktf.numberToHclTerraform(struct.allocationAndRetentionPriorityLevel), isBlock: false, type: "simple", storageClassType: "number", }, allowed_services_ids: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.allowedServicesIds), isBlock: false, type: "list", storageClassType: "stringList", }, data_network_id: { value: cdktf.stringToHclTerraform(struct.dataNetworkId), isBlock: false, type: "simple", storageClassType: "string", }, default_session_type: { value: cdktf.stringToHclTerraform(struct.defaultSessionType), isBlock: false, type: "simple", storageClassType: "string", }, max_buffered_packets: { value: cdktf.numberToHclTerraform(struct.maxBufferedPackets), isBlock: false, type: "simple", storageClassType: "number", }, preemption_capability: { value: cdktf.stringToHclTerraform(struct.preemptionCapability), isBlock: false, type: "simple", storageClassType: "string", }, preemption_vulnerability: { value: cdktf.stringToHclTerraform(struct.preemptionVulnerability), isBlock: false, type: "simple", storageClassType: "string", }, qos_indicator: { value: cdktf.numberToHclTerraform(struct.qosIndicator), isBlock: false, type: "simple", storageClassType: "number", }, session_aggregate_maximum_bit_rate: { value: mobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateToHclTerraform(struct.sessionAggregateMaximumBitRate), isBlock: true, type: "list", storageClassType: "MobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.mobileNetworkSimPolicySliceDataNetworkToHclTerraform = mobileNetworkSimPolicySliceDataNetworkToHclTerraform; class MobileNetworkSimPolicySliceDataNetworkOutputReference 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; // session_aggregate_maximum_bit_rate - computed: false, optional: false, required: true this._sessionAggregateMaximumBitRate = new MobileNetworkSimPolicySliceDataNetworkSessionAggregateMaximumBitRateOutputReference(this, "session_aggregate_maximum_bit_rate"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._additionalAllowedSessionTypes !== undefined) { hasAnyValues = true; internalValueResult.additionalAllowedSessionTypes = this._additionalAllowedSessionTypes; } if (this._allocationAndRetentionPriorityLevel !== undefined) { hasAnyValues = true; internalValueResult.allocationAndRetentionPriorityLevel = this._allocationAndRetentionPriorityLevel; } if (this._allowedServicesIds !== undefined) { hasAnyValues = true; internalValueResult.allowedServicesIds = this._allowedServicesIds; } if (this._dataNetworkId !== undefined) { hasAnyValues = true; internalValueResult.dataNetworkId = this._dataNetworkId; } if (this._defaultSessionType !== undefined) { hasAnyValues = true; internalValueResult.defaultSessionType = this._defaultSessionType; } if (this._maxBufferedPackets !== undefined) { hasAnyValues = true; internalValueResult.maxBufferedPackets = this._maxBufferedPackets; } if (this._preemptionCapability !== undefined) { hasAnyValues = true; internalValueResult.preemptionCapability = this._preemptionCapability; } if (this._preemptionVulnerability !== undefined) { hasAnyValues = true; internalValueResult.preemptionVulnerability = this._preemptionVulnerability; } if (this._qosIndicator !== undefined) { hasAnyValues = true; internalValueResult.qosIndicator = this._qosIndicator; } if (this._sessionAggregateMaximumBitRate?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.sessionAggregateMaximumBitRate = this._sessionAggregateMaximumBitRate?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._additionalAllowedSessionTypes = undefined; this._allocationAndRetentionPriorityLevel = undefined; this._allowedServicesIds = undefined; this._dataNetworkId = undefined; this._defaultSessionType = undefined; this._maxBufferedPackets = undefined; this._preemptionCapability = undefined; this._preemptionVulnerability = undefined; this._qosIndicator = undefined; this._sessionAggregateMaximumBitRate.internalValue = 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._additionalAllowedSessionTypes = value.additionalAllowedSessionTypes; this._allocationAndRetentionPriorityLevel = value.allocationAndRetentionPriorityLevel; this._allowedServicesIds = value.allowedServicesIds; this._dataNetworkId = value.dataNetworkId; this._defaultSessionType = value.defaultSessionType; this._maxBufferedPackets = value.maxBufferedPackets; this._preemptionCapability = value.preemptionCapability; this._preemptionVulnerability = value.preemptionVulnerability; this._qosIndicator = value.qosIndicator; this._sessionAggregateMaximumBitRate.internalValue = value.sessionAggregateMaximumBitRate; } } get additionalAllowedSessionTypes() { return this.getListAttribute('additional_allowed_session_types'); } set additionalAllowedSessionTypes(value) { this._additionalAllowedSessionTypes = value; } resetAdditionalAllowedSessionTypes() { this._additionalAllowedSessionTypes = undefined; } // Temporarily expose input value. Use with caution. get additionalAllowedSessionTypesInput() { return this._additionalAllowedSessionTypes; } get allocationAndRetentionPriorityLevel() { return this.getNumberAttribute('allocation_and_retention_priority_level'); } set allocationAndRetentionPriorityLevel(value) { this._allocationAndRetentionPriorityLevel = value; } resetAllocationAndRetentionPriorityLevel() { this._allocationAndRetentionPriorityLevel = undefined; } // Temporarily expose input value. Use with caution. get allocationAndRetentionPriorityLevelInput() { return this._allocationAndRetentionPriorityLevel; } get allowedServicesIds() { return this.getListAttribute('allowed_services_ids'); } set allowedServicesIds(value) { this._allowedServicesIds = value; } // Temporarily expose input value. Use with caution. get allowedServicesIdsInput() { return this._allowedServicesIds; } get dataNetworkId() { return this.getStringAttribute('data_network_id'); } set dataNetworkId(value) { this._dataNetworkId = value; } // Temporarily expose input value. Use with caution. get dataNetworkIdInput() { return this._dataNetworkId; } get defaultSessionType() { return this.getStringAttribute('default_session_type'); } set defaultSessionType(value) { this._defaultSessionType = value; } resetDefaultSessionType() { this._defaultSessionType = undefined; } // Temporarily expose input value. Use with caution. get defaultSessionTypeInput() { return this._defaultSessionType; } get maxBufferedPackets() { return this.getNumberAttribute('max_buffered_packets'); } set maxBufferedPackets(value) { this._maxBufferedPackets = value; } resetMaxBufferedPackets() { this._maxBufferedPackets = undefined; } // Temporarily expose input value. Use with caution. get maxBufferedPacketsInput() { return this._maxBufferedPackets; } get preemptionCapability() { return this.getStringAttribute('preemption_capability'); } set preemptionCapability(value) { this._preemptionCapability = value; } resetPreemptionCapability() { this._preemptionCapability = undefined; } // Temporarily expose input value. Use with caution. get preemptionCapabilityInput() { return this._preemptionCapability; } get preemptionVulnerability() { return this.getStringAttribute('preemption_vulnerability'); } set preemptionVulnerability(value) { this._preemptionVulnerability = value; } resetPreemptionVulnerability() { this._preemptionVulnerability = undefined; } // Temporarily expose input value. Use with caution. get preemptionVulnerabilityInput() { return this._preemptionVulnerability; } get qosIndicator() { return this.getNumberAttribute('qos_indicator'); } set qosIndicator(value) { this._qosIndicator = value; } // Temporarily expose input value. Use with caution. get qosIndicatorInput() { return this._qosIndicator; } get sessionAggregateMaximumBitRate() { return this._sessionAggregateMaximumBitRate; } putSessionAggregateMaximumBitRate(value) { this._sessionAggregateMaximumBitRate.internalValue = value; } // Temporarily expose input value. Use with caution. get sessionAggregateMaximumBitRateInput() { return this._sessionAggregateMaximumBitRate.internalValue; } } exports.MobileNetworkSimPolicySliceDataNetworkOutputReference = MobileNetworkSimPolicySliceDataNetworkOutputReference; _b = JSII_RTTI_SYMBOL_1; MobileNetworkSimPolicySliceDataNetworkOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicySliceDataNetworkOutputReference", version: "12.27.0" }; class MobileNetworkSimPolicySliceDataNetworkList 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 MobileNetworkSimPolicySliceDataNetworkOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MobileNetworkSimPolicySliceDataNetworkList = MobileNetworkSimPolicySliceDataNetworkList; _c = JSII_RTTI_SYMBOL_1; MobileNetworkSimPolicySliceDataNetworkList[_c] = { fqn: "@cdktf/provider-azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicySliceDataNetworkList", version: "12.27.0" }; function mobileNetworkSimPolicySliceToTerraform(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 { default_data_network_id: cdktf.stringToTerraform(struct.defaultDataNetworkId), slice_id: cdktf.stringToTerraform(struct.sliceId), data_network: cdktf.listMapper(mobileNetworkSimPolicySliceDataNetworkToTerraform, true)(struct.dataNetwork), }; } exports.mobileNetworkSimPolicySliceToTerraform = mobileNetworkSimPolicySliceToTerraform; function mobileNetworkSimPolicySliceToHclTerraform(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 = { default_data_network_id: { value: cdktf.stringToHclTerraform(struct.defaultDataNetworkId), isBlock: false, type: "simple", storageClassType: "string", }, slice_id: { value: cdktf.stringToHclTerraform(struct.sliceId), isBlock: false, type: "simple", storageClassType: "string", }, data_network: { value: cdktf.listMapperHcl(mobileNetworkSimPolicySliceDataNetworkToHclTerraform, true)(struct.dataNetwork), isBlock: true, type: "list", storageClassType: "MobileNetworkSimPolicySliceDataNetworkList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.mobileNetworkSimPolicySliceToHclTerraform = mobileNetworkSimPolicySliceToHclTerraform; class MobileNetworkSimPolicySliceOutputReference 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; // data_network - computed: false, optional: false, required: true this._dataNetwork = new MobileNetworkSimPolicySliceDataNetworkList(this, "data_network", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._defaultDataNetworkId !== undefined) { hasAnyValues = true; internalValueResult.defaultDataNetworkId = this._defaultDataNetworkId; } if (this._sliceId !== undefined) { hasAnyValues = true; internalValueResult.sliceId = this._sliceId; } if (this._dataNetwork?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.dataNetwork = this._dataNetwork?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._defaultDataNetworkId = undefined; this._sliceId = undefined; this._dataNetwork.internalValue = 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._defaultDataNetworkId = value.defaultDataNetworkId; this._sliceId = value.sliceId; this._dataNetwork.internalValue = value.dataNetwork; } } get defaultDataNetworkId() { return this.getStringAttribute('default_data_network_id'); } set defaultDataNetworkId(value) { this._defaultDataNetworkId = value; } // Temporarily expose input value. Use with caution. get defaultDataNetworkIdInput() { return this._defaultDataNetworkId; } get sliceId() { return this.getStringAttribute('slice_id'); } set sliceId(value) { this._sliceId = value; } // Temporarily expose input value. Use with caution. get sliceIdInput() { return this._sliceId; } get dataNetwork() { return this._dataNetwork; } putDataNetwork(value) { this._dataNetwork.internalValue = value; } // Temporarily expose input value. Use with caution. get dataNetworkInput() { return this._dataNetwork.internalValue; } } exports.MobileNetworkSimPolicySliceOutputReference = MobileNetworkSimPolicySliceOutputReference; _d = JSII_RTTI_SYMBOL_1; MobileNetworkSimPolicySliceOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicySliceOutputReference", version: "12.27.0" }; class MobileNetworkSimPolicySliceList 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 MobileNetworkSimPolicySliceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MobileNetworkSimPolicySliceList = MobileNetworkSimPolicySliceList; _e = JSII_RTTI_SYMBOL_1; MobileNetworkSimPolicySliceList[_e] = { fqn: "@cdktf/provider-azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicySliceList", version: "12.27.0" }; function mobileNetworkSimPolicyTimeoutsToTerraform(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), read: cdktf.stringToTerraform(struct.read), update: cdktf.stringToTerraform(struct.update), }; } exports.mobileNetworkSimPolicyTimeoutsToTerraform = mobileNetworkSimPolicyTimeoutsToTerraform; function mobileNetworkSimPolicyTimeoutsToHclTerraform(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", }, read: { value: cdktf.stringToHclTerraform(struct.read), 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)); } exports.mobileNetworkSimPolicyTimeoutsToHclTerraform = mobileNetworkSimPolicyTimeoutsToHclTerraform; class MobileNetworkSimPolicyTimeoutsOutputReference 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._read !== undefined) { hasAnyValues = true; internalValueResult.read = this._read; } 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._read = 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._read = value.read; 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 read() { return this.getStringAttribute('read'); } set read(value) { this._read = value; } resetRead() { this._read = undefined; } // Temporarily expose input value. Use with caution. get readInput() { return this._read; } 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.MobileNetworkSimPolicyTimeoutsOutputReference = MobileNetworkSimPolicyTimeoutsOutputReference; _f = JSII_RTTI_SYMBOL_1; MobileNetworkSimPolicyTimeoutsOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicyTimeoutsOutputReference", version: "12.27.0" }; function mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToTerraform(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 { downlink: cdktf.stringToTerraform(struct.downlink), uplink: cdktf.stringToTerraform(struct.uplink), }; } exports.mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToTerraform = mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToTerraform; function mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToHclTerraform(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 = { downlink: { value: cdktf.stringToHclTerraform(struct.downlink), isBlock: false, type: "simple", storageClassType: "string", }, uplink: { value: cdktf.stringToHclTerraform(struct.uplink), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToHclTerraform = mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToHclTerraform; class MobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateOutputReference 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._downlink !== undefined) { hasAnyValues = true; internalValueResult.downlink = this._downlink; } if (this._uplink !== undefined) { hasAnyValues = true; internalValueResult.uplink = this._uplink; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._downlink = undefined; this._uplink = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._downlink = value.downlink; this._uplink = value.uplink; } } get downlink() { return this.getStringAttribute('downlink'); } set downlink(value) { this._downlink = value; } // Temporarily expose input value. Use with caution. get downlinkInput() { return this._downlink; } get uplink() { return this.getStringAttribute('uplink'); } set uplink(value) { this._uplink = value; } // Temporarily expose input value. Use with caution. get uplinkInput() { return this._uplink; } } exports.MobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateOutputReference = MobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateOutputReference; _g = JSII_RTTI_SYMBOL_1; MobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateOutputReference", version: "12.27.0" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mobile_network_sim_policy azurerm_mobile_network_sim_policy} */ class MobileNetworkSimPolicy extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a MobileNetworkSimPolicy 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 MobileNetworkSimPolicy to import * @param importFromId The id of the existing MobileNetworkSimPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mobile_network_sim_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MobileNetworkSimPolicy to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "azurerm_mobile_network_sim_policy", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mobile_network_sim_policy azurerm_mobile_network_sim_policy} 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 MobileNetworkSimPolicyConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'azurerm_mobile_network_sim_policy', terraformGeneratorMetadata: { providerName: 'azurerm', providerVersion: '3.116.0', providerVersionConstraint: '~> 3.10' }, provider: config.provider, dependsOn: config.dependsOn, count: config.count, lifecycle: config.lifecycle, provisioners: config.provisioners, connection: config.connection, forEach: config.forEach }); // slice - computed: false, optional: false, required: true this._slice = new MobileNetworkSimPolicySliceList(this, "slice", false); // timeouts - computed: false, optional: true, required: false this._timeouts = new MobileNetworkSimPolicyTimeoutsOutputReference(this, "timeouts"); // user_equipment_aggregate_maximum_bit_rate - computed: false, optional: false, required: true this._userEquipmentAggregateMaximumBitRate = new MobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateOutputReference(this, "user_equipment_aggregate_maximum_bit_rate"); this._defaultSliceId = config.defaultSliceId; this._id = config.id; this._location = config.location; this._mobileNetworkId = config.mobileNetworkId; this._name = config.name; this._ratFrequencySelectionPriorityIndex = config.ratFrequencySelectionPriorityIndex; this._registrationTimerInSeconds = config.registrationTimerInSeconds; this._tags = config.tags; this._slice.internalValue = config.slice; this._timeouts.internalValue = config.timeouts; this._userEquipmentAggregateMaximumBitRate.internalValue = config.userEquipmentAggregateMaximumBitRate; } get defaultSliceId() { return this.getStringAttribute('default_slice_id'); } set defaultSliceId(value) { this._defaultSliceId = value; } // Temporarily expose input value. Use with caution. get defaultSliceIdInput() { return this._defaultSliceId; } get id() { return this.getStringAttribute('id'); } set id(value) { this._id = value; } resetId() { this._id = undefined; } // Temporarily expose input value. Use with caution. get idInput() { return this._id; } get location() { return this.getStringAttribute('location'); } set location(value) { this._location = value; } // Temporarily expose input value. Use with caution. get locationInput() { return this._location; } get mobileNetworkId() { return this.getStringAttribute('mobile_network_id'); } set mobileNetworkId(value) { this._mobileNetworkId = value; } // Temporarily expose input value. Use with caution. get mobileNetworkIdInput() { return this._mobileNetworkId; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get ratFrequencySelectionPriorityIndex() { return this.getNumberAttribute('rat_frequency_selection_priority_index'); } set ratFrequencySelectionPriorityIndex(value) { this._ratFrequencySelectionPriorityIndex = value; } resetRatFrequencySelectionPriorityIndex() { this._ratFrequencySelectionPriorityIndex = undefined; } // Temporarily expose input value. Use with caution. get ratFrequencySelectionPriorityIndexInput() { return this._ratFrequencySelectionPriorityIndex; } get registrationTimerInSeconds() { return this.getNumberAttribute('registration_timer_in_seconds'); } set registrationTimerInSeconds(value) { this._registrationTimerInSeconds = value; } resetRegistrationTimerInSeconds() { this._registrationTimerInSeconds = undefined; } // Temporarily expose input value. Use with caution. get registrationTimerInSecondsInput() { return this._registrationTimerInSeconds; } get tags() { return this.getStringMapAttribute('tags'); } set tags(value) { this._tags = value; } resetTags() { this._tags = undefined; } // Temporarily expose input value. Use with caution. get tagsInput() { return this._tags; } get slice() { return this._slice; } putSlice(value) { this._slice.internalValue = value; } // Temporarily expose input value. Use with caution. get sliceInput() { return this._slice.internalValue; } get timeouts() { return this._timeouts; } putTimeouts(value) { this._timeouts.internalValue = value; } resetTimeouts() { this._timeouts.internalValue = undefined; } // Temporarily expose input value. Use with caution. get timeoutsInput() { return this._timeouts.internalValue; } get userEquipmentAggregateMaximumBitRate() { return this._userEquipmentAggregateMaximumBitRate; } putUserEquipmentAggregateMaximumBitRate(value) { this._userEquipmentAggregateMaximumBitRate.internalValue = value; } // Temporarily expose input value. Use with caution. get userEquipmentAggregateMaximumBitRateInput() { return this._userEquipmentAggregateMaximumBitRate.internalValue; } // ========= // SYNTHESIS // ========= synthesizeAttributes() { return { default_slice_id: cdktf.stringToTerraform(this._defaultSliceId), id: cdktf.stringToTerraform(this._id), location: cdktf.stringToTerraform(this._location), mobile_network_id: cdktf.stringToTerraform(this._mobileNetworkId), name: cdktf.stringToTerraform(this._name), rat_frequency_selection_priority_index: cdktf.numberToTerraform(this._ratFrequencySelectionPriorityIndex), registration_timer_in_seconds: cdktf.numberToTerraform(this._registrationTimerInSeconds), tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags), slice: cdktf.listMapper(mobileNetworkSimPolicySliceToTerraform, true)(this._slice.internalValue), timeouts: mobileNetworkSimPolicyTimeoutsToTerraform(this._timeouts.internalValue), user_equipment_aggregate_maximum_bit_rate: mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToTerraform(this._userEquipmentAggregateMaximumBitRate.internalValue), }; } synthesizeHclAttributes() { const attrs = { default_slice_id: { value: cdktf.stringToHclTerraform(this._defaultSliceId), isBlock: false, type: "simple", storageClassType: "string", }, id: { value: cdktf.stringToHclTerraform(this._id), isBlock: false, type: "simple", storageClassType: "string", }, location: { value: cdktf.stringToHclTerraform(this._location), isBlock: false, type: "simple", storageClassType: "string", }, mobile_network_id: { value: cdktf.stringToHclTerraform(this._mobileNetworkId), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(this._name), isBlock: false, type: "simple", storageClassType: "string", }, rat_frequency_selection_priority_index: { value: cdktf.numberToHclTerraform(this._ratFrequencySelectionPriorityIndex), isBlock: false, type: "simple", storageClassType: "number", }, registration_timer_in_seconds: { value: cdktf.numberToHclTerraform(this._registrationTimerInSeconds), isBlock: false, type: "simple", storageClassType: "number", }, tags: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags), isBlock: false, type: "map", storageClassType: "stringMap", }, slice: { value: cdktf.listMapperHcl(mobileNetworkSimPolicySliceToHclTerraform, true)(this._slice.internalValue), isBlock: true, type: "list", storageClassType: "MobileNetworkSimPolicySliceList", }, timeouts: { value: mobileNetworkSimPolicyTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "MobileNetworkSimPolicyTimeouts", }, user_equipment_aggregate_maximum_bit_rate: { value: mobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateToHclTerraform(this._userEquipmentAggregateMaximumBitRate.internalValue), isBlock: true, type: "list", storageClassType: "MobileNetworkSimPolicyUserEquipmentAggregateMaximumBitRateList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.MobileNetworkSimPolicy = MobileNetworkSimPolicy; _h = JSII_RTTI_SYMBOL_1; MobileNetworkSimPolicy[_h] = { fqn: "@cdktf/provider-azurerm.mobileNetworkSimPolicy.MobileNetworkSimPolicy", version: "12.27.0" }; // ================= // STATIC PROPERTIES // ================= MobileNetworkSimPolicy.tfResourceType = "azurerm_mobile_network_sim_policy"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9iaWxlLW5ldHdvcmstc2ltLXBvbGljeS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVNBLCtCQUErQjtBQXNFL0IsU0FBZ0IsK0VBQStFLENBQUMsTUFBbUs7SUFDalEsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsT0FBTztRQUNMLFFBQVEsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLFFBQVEsQ0FBQztRQUNuRCxNQUFNLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxNQUFNLENBQUM7S0FDaEQsQ0FBQTtBQUNILENBQUM7QUFURCwwS0FTQztBQUdELFNBQWdCLGtGQUFrRixDQUFDLE1BQW1LO0lBQ3BRLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE1BQU0sS0FBSyxHQUFHO1FBQ1osUUFBUSxFQUFFO1lBQ1IsS0FBSyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxNQUFPLENBQUMsUUFBUSxDQUFDO1lBQ25ELE9BQU8sRUFBRSxLQU