@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
857 lines • 131 kB
JavaScript
"use strict";
var _a, _b, _c, _d;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MobileNetworkAttachedDataNetwork = exports.MobileNetworkAttachedDataNetworkTimeoutsOutputReference = exports.mobileNetworkAttachedDataNetworkTimeoutsToHclTerraform = exports.mobileNetworkAttachedDataNetworkTimeoutsToTerraform = exports.MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationOutputReference = exports.mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToHclTerraform = exports.mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToTerraform = exports.MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeOutputReference = exports.mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToHclTerraform = exports.mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToTerraform(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 {
maximum: cdktf.numberToTerraform(struct.maximum),
minimum: cdktf.numberToTerraform(struct.minimum),
};
}
exports.mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToTerraform = mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToTerraform;
function mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToHclTerraform(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 = {
maximum: {
value: cdktf.numberToHclTerraform(struct.maximum),
isBlock: false,
type: "simple",
storageClassType: "number",
},
minimum: {
value: cdktf.numberToHclTerraform(struct.minimum),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToHclTerraform = mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToHclTerraform;
class MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeOutputReference 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._maximum !== undefined) {
hasAnyValues = true;
internalValueResult.maximum = this._maximum;
}
if (this._minimum !== undefined) {
hasAnyValues = true;
internalValueResult.minimum = this._minimum;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._maximum = undefined;
this._minimum = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._maximum = value.maximum;
this._minimum = value.minimum;
}
}
get maximum() {
return this.getNumberAttribute('maximum');
}
set maximum(value) {
this._maximum = value;
}
resetMaximum() {
this._maximum = undefined;
}
// Temporarily expose input value. Use with caution.
get maximumInput() {
return this._maximum;
}
get minimum() {
return this.getNumberAttribute('minimum');
}
set minimum(value) {
this._minimum = value;
}
resetMinimum() {
this._minimum = undefined;
}
// Temporarily expose input value. Use with caution.
get minimumInput() {
return this._minimum;
}
}
exports.MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeOutputReference = MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeOutputReference;
_a = JSII_RTTI_SYMBOL_1;
MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.mobileNetworkAttachedDataNetwork.MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeOutputReference", version: "12.27.0" };
function mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToTerraform(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 {
icmp_pinhole_timeout_in_seconds: cdktf.numberToTerraform(struct.icmpPinholeTimeoutInSeconds),
pinhole_maximum_number: cdktf.numberToTerraform(struct.pinholeMaximumNumber),
tcp_pinhole_timeout_in_seconds: cdktf.numberToTerraform(struct.tcpPinholeTimeoutInSeconds),
tcp_port_reuse_minimum_hold_time_in_seconds: cdktf.numberToTerraform(struct.tcpPortReuseMinimumHoldTimeInSeconds),
udp_pinhole_timeout_in_seconds: cdktf.numberToTerraform(struct.udpPinholeTimeoutInSeconds),
udp_port_reuse_minimum_hold_time_in_seconds: cdktf.numberToTerraform(struct.udpPortReuseMinimumHoldTimeInSeconds),
port_range: mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToTerraform(struct.portRange),
};
}
exports.mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToTerraform = mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToTerraform;
function mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToHclTerraform(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 = {
icmp_pinhole_timeout_in_seconds: {
value: cdktf.numberToHclTerraform(struct.icmpPinholeTimeoutInSeconds),
isBlock: false,
type: "simple",
storageClassType: "number",
},
pinhole_maximum_number: {
value: cdktf.numberToHclTerraform(struct.pinholeMaximumNumber),
isBlock: false,
type: "simple",
storageClassType: "number",
},
tcp_pinhole_timeout_in_seconds: {
value: cdktf.numberToHclTerraform(struct.tcpPinholeTimeoutInSeconds),
isBlock: false,
type: "simple",
storageClassType: "number",
},
tcp_port_reuse_minimum_hold_time_in_seconds: {
value: cdktf.numberToHclTerraform(struct.tcpPortReuseMinimumHoldTimeInSeconds),
isBlock: false,
type: "simple",
storageClassType: "number",
},
udp_pinhole_timeout_in_seconds: {
value: cdktf.numberToHclTerraform(struct.udpPinholeTimeoutInSeconds),
isBlock: false,
type: "simple",
storageClassType: "number",
},
udp_port_reuse_minimum_hold_time_in_seconds: {
value: cdktf.numberToHclTerraform(struct.udpPortReuseMinimumHoldTimeInSeconds),
isBlock: false,
type: "simple",
storageClassType: "number",
},
port_range: {
value: mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeToHclTerraform(struct.portRange),
isBlock: true,
type: "list",
storageClassType: "MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToHclTerraform = mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToHclTerraform;
class MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationOutputReference 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;
// port_range - computed: false, optional: true, required: false
this._portRange = new MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationPortRangeOutputReference(this, "port_range");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._icmpPinholeTimeoutInSeconds !== undefined) {
hasAnyValues = true;
internalValueResult.icmpPinholeTimeoutInSeconds = this._icmpPinholeTimeoutInSeconds;
}
if (this._pinholeMaximumNumber !== undefined) {
hasAnyValues = true;
internalValueResult.pinholeMaximumNumber = this._pinholeMaximumNumber;
}
if (this._tcpPinholeTimeoutInSeconds !== undefined) {
hasAnyValues = true;
internalValueResult.tcpPinholeTimeoutInSeconds = this._tcpPinholeTimeoutInSeconds;
}
if (this._tcpPortReuseMinimumHoldTimeInSeconds !== undefined) {
hasAnyValues = true;
internalValueResult.tcpPortReuseMinimumHoldTimeInSeconds = this._tcpPortReuseMinimumHoldTimeInSeconds;
}
if (this._udpPinholeTimeoutInSeconds !== undefined) {
hasAnyValues = true;
internalValueResult.udpPinholeTimeoutInSeconds = this._udpPinholeTimeoutInSeconds;
}
if (this._udpPortReuseMinimumHoldTimeInSeconds !== undefined) {
hasAnyValues = true;
internalValueResult.udpPortReuseMinimumHoldTimeInSeconds = this._udpPortReuseMinimumHoldTimeInSeconds;
}
if (this._portRange?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.portRange = this._portRange?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._icmpPinholeTimeoutInSeconds = undefined;
this._pinholeMaximumNumber = undefined;
this._tcpPinholeTimeoutInSeconds = undefined;
this._tcpPortReuseMinimumHoldTimeInSeconds = undefined;
this._udpPinholeTimeoutInSeconds = undefined;
this._udpPortReuseMinimumHoldTimeInSeconds = undefined;
this._portRange.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._icmpPinholeTimeoutInSeconds = value.icmpPinholeTimeoutInSeconds;
this._pinholeMaximumNumber = value.pinholeMaximumNumber;
this._tcpPinholeTimeoutInSeconds = value.tcpPinholeTimeoutInSeconds;
this._tcpPortReuseMinimumHoldTimeInSeconds = value.tcpPortReuseMinimumHoldTimeInSeconds;
this._udpPinholeTimeoutInSeconds = value.udpPinholeTimeoutInSeconds;
this._udpPortReuseMinimumHoldTimeInSeconds = value.udpPortReuseMinimumHoldTimeInSeconds;
this._portRange.internalValue = value.portRange;
}
}
get icmpPinholeTimeoutInSeconds() {
return this.getNumberAttribute('icmp_pinhole_timeout_in_seconds');
}
set icmpPinholeTimeoutInSeconds(value) {
this._icmpPinholeTimeoutInSeconds = value;
}
resetIcmpPinholeTimeoutInSeconds() {
this._icmpPinholeTimeoutInSeconds = undefined;
}
// Temporarily expose input value. Use with caution.
get icmpPinholeTimeoutInSecondsInput() {
return this._icmpPinholeTimeoutInSeconds;
}
get pinholeMaximumNumber() {
return this.getNumberAttribute('pinhole_maximum_number');
}
set pinholeMaximumNumber(value) {
this._pinholeMaximumNumber = value;
}
resetPinholeMaximumNumber() {
this._pinholeMaximumNumber = undefined;
}
// Temporarily expose input value. Use with caution.
get pinholeMaximumNumberInput() {
return this._pinholeMaximumNumber;
}
get tcpPinholeTimeoutInSeconds() {
return this.getNumberAttribute('tcp_pinhole_timeout_in_seconds');
}
set tcpPinholeTimeoutInSeconds(value) {
this._tcpPinholeTimeoutInSeconds = value;
}
resetTcpPinholeTimeoutInSeconds() {
this._tcpPinholeTimeoutInSeconds = undefined;
}
// Temporarily expose input value. Use with caution.
get tcpPinholeTimeoutInSecondsInput() {
return this._tcpPinholeTimeoutInSeconds;
}
get tcpPortReuseMinimumHoldTimeInSeconds() {
return this.getNumberAttribute('tcp_port_reuse_minimum_hold_time_in_seconds');
}
set tcpPortReuseMinimumHoldTimeInSeconds(value) {
this._tcpPortReuseMinimumHoldTimeInSeconds = value;
}
resetTcpPortReuseMinimumHoldTimeInSeconds() {
this._tcpPortReuseMinimumHoldTimeInSeconds = undefined;
}
// Temporarily expose input value. Use with caution.
get tcpPortReuseMinimumHoldTimeInSecondsInput() {
return this._tcpPortReuseMinimumHoldTimeInSeconds;
}
get udpPinholeTimeoutInSeconds() {
return this.getNumberAttribute('udp_pinhole_timeout_in_seconds');
}
set udpPinholeTimeoutInSeconds(value) {
this._udpPinholeTimeoutInSeconds = value;
}
resetUdpPinholeTimeoutInSeconds() {
this._udpPinholeTimeoutInSeconds = undefined;
}
// Temporarily expose input value. Use with caution.
get udpPinholeTimeoutInSecondsInput() {
return this._udpPinholeTimeoutInSeconds;
}
get udpPortReuseMinimumHoldTimeInSeconds() {
return this.getNumberAttribute('udp_port_reuse_minimum_hold_time_in_seconds');
}
set udpPortReuseMinimumHoldTimeInSeconds(value) {
this._udpPortReuseMinimumHoldTimeInSeconds = value;
}
resetUdpPortReuseMinimumHoldTimeInSeconds() {
this._udpPortReuseMinimumHoldTimeInSeconds = undefined;
}
// Temporarily expose input value. Use with caution.
get udpPortReuseMinimumHoldTimeInSecondsInput() {
return this._udpPortReuseMinimumHoldTimeInSeconds;
}
get portRange() {
return this._portRange;
}
putPortRange(value) {
this._portRange.internalValue = value;
}
resetPortRange() {
this._portRange.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get portRangeInput() {
return this._portRange.internalValue;
}
}
exports.MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationOutputReference = MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationOutputReference;
_b = JSII_RTTI_SYMBOL_1;
MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.mobileNetworkAttachedDataNetwork.MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationOutputReference", version: "12.27.0" };
function mobileNetworkAttachedDataNetworkTimeoutsToTerraform(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.mobileNetworkAttachedDataNetworkTimeoutsToTerraform = mobileNetworkAttachedDataNetworkTimeoutsToTerraform;
function mobileNetworkAttachedDataNetworkTimeoutsToHclTerraform(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.mobileNetworkAttachedDataNetworkTimeoutsToHclTerraform = mobileNetworkAttachedDataNetworkTimeoutsToHclTerraform;
class MobileNetworkAttachedDataNetworkTimeoutsOutputReference 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.MobileNetworkAttachedDataNetworkTimeoutsOutputReference = MobileNetworkAttachedDataNetworkTimeoutsOutputReference;
_c = JSII_RTTI_SYMBOL_1;
MobileNetworkAttachedDataNetworkTimeoutsOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.mobileNetworkAttachedDataNetwork.MobileNetworkAttachedDataNetworkTimeoutsOutputReference", version: "12.27.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mobile_network_attached_data_network azurerm_mobile_network_attached_data_network}
*/
class MobileNetworkAttachedDataNetwork extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a MobileNetworkAttachedDataNetwork 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 MobileNetworkAttachedDataNetwork to import
* @param importFromId The id of the existing MobileNetworkAttachedDataNetwork that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mobile_network_attached_data_network#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the MobileNetworkAttachedDataNetwork to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "azurerm_mobile_network_attached_data_network", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/mobile_network_attached_data_network azurerm_mobile_network_attached_data_network} 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 MobileNetworkAttachedDataNetworkConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'azurerm_mobile_network_attached_data_network',
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
});
// network_address_port_translation - computed: false, optional: true, required: false
this._networkAddressPortTranslation = new MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationOutputReference(this, "network_address_port_translation");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new MobileNetworkAttachedDataNetworkTimeoutsOutputReference(this, "timeouts");
this._dnsAddresses = config.dnsAddresses;
this._id = config.id;
this._location = config.location;
this._mobileNetworkDataNetworkName = config.mobileNetworkDataNetworkName;
this._mobileNetworkPacketCoreDataPlaneId = config.mobileNetworkPacketCoreDataPlaneId;
this._tags = config.tags;
this._userEquipmentAddressPoolPrefixes = config.userEquipmentAddressPoolPrefixes;
this._userEquipmentStaticAddressPoolPrefixes = config.userEquipmentStaticAddressPoolPrefixes;
this._userPlaneAccessIpv4Address = config.userPlaneAccessIpv4Address;
this._userPlaneAccessIpv4Gateway = config.userPlaneAccessIpv4Gateway;
this._userPlaneAccessIpv4Subnet = config.userPlaneAccessIpv4Subnet;
this._userPlaneAccessName = config.userPlaneAccessName;
this._networkAddressPortTranslation.internalValue = config.networkAddressPortTranslation;
this._timeouts.internalValue = config.timeouts;
}
get dnsAddresses() {
return this.getListAttribute('dns_addresses');
}
set dnsAddresses(value) {
this._dnsAddresses = value;
}
// Temporarily expose input value. Use with caution.
get dnsAddressesInput() {
return this._dnsAddresses;
}
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 mobileNetworkDataNetworkName() {
return this.getStringAttribute('mobile_network_data_network_name');
}
set mobileNetworkDataNetworkName(value) {
this._mobileNetworkDataNetworkName = value;
}
// Temporarily expose input value. Use with caution.
get mobileNetworkDataNetworkNameInput() {
return this._mobileNetworkDataNetworkName;
}
get mobileNetworkPacketCoreDataPlaneId() {
return this.getStringAttribute('mobile_network_packet_core_data_plane_id');
}
set mobileNetworkPacketCoreDataPlaneId(value) {
this._mobileNetworkPacketCoreDataPlaneId = value;
}
// Temporarily expose input value. Use with caution.
get mobileNetworkPacketCoreDataPlaneIdInput() {
return this._mobileNetworkPacketCoreDataPlaneId;
}
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 userEquipmentAddressPoolPrefixes() {
return this.getListAttribute('user_equipment_address_pool_prefixes');
}
set userEquipmentAddressPoolPrefixes(value) {
this._userEquipmentAddressPoolPrefixes = value;
}
resetUserEquipmentAddressPoolPrefixes() {
this._userEquipmentAddressPoolPrefixes = undefined;
}
// Temporarily expose input value. Use with caution.
get userEquipmentAddressPoolPrefixesInput() {
return this._userEquipmentAddressPoolPrefixes;
}
get userEquipmentStaticAddressPoolPrefixes() {
return this.getListAttribute('user_equipment_static_address_pool_prefixes');
}
set userEquipmentStaticAddressPoolPrefixes(value) {
this._userEquipmentStaticAddressPoolPrefixes = value;
}
resetUserEquipmentStaticAddressPoolPrefixes() {
this._userEquipmentStaticAddressPoolPrefixes = undefined;
}
// Temporarily expose input value. Use with caution.
get userEquipmentStaticAddressPoolPrefixesInput() {
return this._userEquipmentStaticAddressPoolPrefixes;
}
get userPlaneAccessIpv4Address() {
return this.getStringAttribute('user_plane_access_ipv4_address');
}
set userPlaneAccessIpv4Address(value) {
this._userPlaneAccessIpv4Address = value;
}
resetUserPlaneAccessIpv4Address() {
this._userPlaneAccessIpv4Address = undefined;
}
// Temporarily expose input value. Use with caution.
get userPlaneAccessIpv4AddressInput() {
return this._userPlaneAccessIpv4Address;
}
get userPlaneAccessIpv4Gateway() {
return this.getStringAttribute('user_plane_access_ipv4_gateway');
}
set userPlaneAccessIpv4Gateway(value) {
this._userPlaneAccessIpv4Gateway = value;
}
resetUserPlaneAccessIpv4Gateway() {
this._userPlaneAccessIpv4Gateway = undefined;
}
// Temporarily expose input value. Use with caution.
get userPlaneAccessIpv4GatewayInput() {
return this._userPlaneAccessIpv4Gateway;
}
get userPlaneAccessIpv4Subnet() {
return this.getStringAttribute('user_plane_access_ipv4_subnet');
}
set userPlaneAccessIpv4Subnet(value) {
this._userPlaneAccessIpv4Subnet = value;
}
resetUserPlaneAccessIpv4Subnet() {
this._userPlaneAccessIpv4Subnet = undefined;
}
// Temporarily expose input value. Use with caution.
get userPlaneAccessIpv4SubnetInput() {
return this._userPlaneAccessIpv4Subnet;
}
get userPlaneAccessName() {
return this.getStringAttribute('user_plane_access_name');
}
set userPlaneAccessName(value) {
this._userPlaneAccessName = value;
}
resetUserPlaneAccessName() {
this._userPlaneAccessName = undefined;
}
// Temporarily expose input value. Use with caution.
get userPlaneAccessNameInput() {
return this._userPlaneAccessName;
}
get networkAddressPortTranslation() {
return this._networkAddressPortTranslation;
}
putNetworkAddressPortTranslation(value) {
this._networkAddressPortTranslation.internalValue = value;
}
resetNetworkAddressPortTranslation() {
this._networkAddressPortTranslation.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get networkAddressPortTranslationInput() {
return this._networkAddressPortTranslation.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;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
dns_addresses: cdktf.listMapper(cdktf.stringToTerraform, false)(this._dnsAddresses),
id: cdktf.stringToTerraform(this._id),
location: cdktf.stringToTerraform(this._location),
mobile_network_data_network_name: cdktf.stringToTerraform(this._mobileNetworkDataNetworkName),
mobile_network_packet_core_data_plane_id: cdktf.stringToTerraform(this._mobileNetworkPacketCoreDataPlaneId),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(this._tags),
user_equipment_address_pool_prefixes: cdktf.listMapper(cdktf.stringToTerraform, false)(this._userEquipmentAddressPoolPrefixes),
user_equipment_static_address_pool_prefixes: cdktf.listMapper(cdktf.stringToTerraform, false)(this._userEquipmentStaticAddressPoolPrefixes),
user_plane_access_ipv4_address: cdktf.stringToTerraform(this._userPlaneAccessIpv4Address),
user_plane_access_ipv4_gateway: cdktf.stringToTerraform(this._userPlaneAccessIpv4Gateway),
user_plane_access_ipv4_subnet: cdktf.stringToTerraform(this._userPlaneAccessIpv4Subnet),
user_plane_access_name: cdktf.stringToTerraform(this._userPlaneAccessName),
network_address_port_translation: mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToTerraform(this._networkAddressPortTranslation.internalValue),
timeouts: mobileNetworkAttachedDataNetworkTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
dns_addresses: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._dnsAddresses),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
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_data_network_name: {
value: cdktf.stringToHclTerraform(this._mobileNetworkDataNetworkName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
mobile_network_packet_core_data_plane_id: {
value: cdktf.stringToHclTerraform(this._mobileNetworkPacketCoreDataPlaneId),
isBlock: false,
type: "simple",
storageClassType: "string",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(this._tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
user_equipment_address_pool_prefixes: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._userEquipmentAddressPoolPrefixes),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
user_equipment_static_address_pool_prefixes: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(this._userEquipmentStaticAddressPoolPrefixes),
isBlock: false,
type: "list",
storageClassType: "stringList",
},
user_plane_access_ipv4_address: {
value: cdktf.stringToHclTerraform(this._userPlaneAccessIpv4Address),
isBlock: false,
type: "simple",
storageClassType: "string",
},
user_plane_access_ipv4_gateway: {
value: cdktf.stringToHclTerraform(this._userPlaneAccessIpv4Gateway),
isBlock: false,
type: "simple",
storageClassType: "string",
},
user_plane_access_ipv4_subnet: {
value: cdktf.stringToHclTerraform(this._userPlaneAccessIpv4Subnet),
isBlock: false,
type: "simple",
storageClassType: "string",
},
user_plane_access_name: {
value: cdktf.stringToHclTerraform(this._userPlaneAccessName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
network_address_port_translation: {
value: mobileNetworkAttachedDataNetworkNetworkAddressPortTranslationToHclTerraform(this._networkAddressPortTranslation.internalValue),
isBlock: true,
type: "list",
storageClassType: "MobileNetworkAttachedDataNetworkNetworkAddressPortTranslationList",
},
timeouts: {
value: mobileNetworkAttachedDataNetworkTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "MobileNetworkAttachedDataNetworkTimeouts",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.MobileNetworkAttachedDataNetwork = MobileNetworkAttachedDataNetwork;
_d = JSII_RTTI_SYMBOL_1;
MobileNetworkAttachedDataNetwork[_d] = { fqn: "@cdktf/provider-azurerm.mobileNetworkAttachedDataNetwork.MobileNetworkAttachedDataNetwork", version: "12.27.0" };
// =================
// STATIC PROPERTIES
// =================
MobileNetworkAttachedDataNetwork.tfResourceType = "azurerm_mobile_network_attached_data_network";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9iaWxlLW5ldHdvcmstYXR0YWNoZWQtZGF0YS1uZXR3b3JrL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBU0EsK0JBQStCO0FBZ0YvQixTQUFnQixpRkFBaUYsQ0FBQyxNQUF1SztJQUN2USxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxPQUFPO1FBQ0wsT0FBTyxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsT0FBTyxDQUFDO1FBQ2pELE9BQU8sRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLE9BQU8sQ0FBQztLQUNsRCxDQUFBO0FBQ0gsQ0FBQztBQVRELDhLQVNDO0FBR0QsU0FBZ0Isb0ZBQW9GLENBQUMsTUFBdUs7SUFDMVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0hBQW9ILENBQUMsQ0FBQztJQUN4SSxDQUFDO0lBQ0QsTUFBTSxLQUFLLEdBQUc7UUFDWixPQUFPLEVBQUU7WUFDUCxLQUFLLEVBQUUs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