UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

879 lines 132 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; Object.defineProperty(exports, "__esModule", { value: true }); exports.MedialiveMultiplexProgram = exports.MedialiveMultiplexProgramTimeoutsOutputReference = exports.MedialiveMultiplexProgramMultiplexProgramSettingsList = exports.MedialiveMultiplexProgramMultiplexProgramSettingsOutputReference = exports.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsList = exports.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsOutputReference = exports.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsList = exports.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsOutputReference = exports.MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorList = exports.MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorOutputReference = void 0; exports.medialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorToTerraform = medialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorToTerraform; exports.medialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorToHclTerraform = medialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorToHclTerraform; exports.medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsToTerraform = medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsToTerraform; exports.medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsToHclTerraform = medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsToHclTerraform; exports.medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsToTerraform = medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsToTerraform; exports.medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsToHclTerraform = medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsToHclTerraform; exports.medialiveMultiplexProgramMultiplexProgramSettingsToTerraform = medialiveMultiplexProgramMultiplexProgramSettingsToTerraform; exports.medialiveMultiplexProgramMultiplexProgramSettingsToHclTerraform = medialiveMultiplexProgramMultiplexProgramSettingsToHclTerraform; exports.medialiveMultiplexProgramTimeoutsToTerraform = medialiveMultiplexProgramTimeoutsToTerraform; exports.medialiveMultiplexProgramTimeoutsToHclTerraform = medialiveMultiplexProgramTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function medialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorToTerraform(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 { provider_name: cdktf.stringToTerraform(struct.providerName), service_name: cdktf.stringToTerraform(struct.serviceName), }; } function medialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorToHclTerraform(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 = { provider_name: { value: cdktf.stringToHclTerraform(struct.providerName), isBlock: false, type: "simple", storageClassType: "string", }, service_name: { value: cdktf.stringToHclTerraform(struct.serviceName), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorOutputReference 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._providerName !== undefined) { hasAnyValues = true; internalValueResult.providerName = this._providerName; } if (this._serviceName !== undefined) { hasAnyValues = true; internalValueResult.serviceName = this._serviceName; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._providerName = undefined; this._serviceName = 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._providerName = value.providerName; this._serviceName = value.serviceName; } } get providerName() { return this.getStringAttribute('provider_name'); } set providerName(value) { this._providerName = value; } // Temporarily expose input value. Use with caution. get providerNameInput() { return this._providerName; } get serviceName() { return this.getStringAttribute('service_name'); } set serviceName(value) { this._serviceName = value; } // Temporarily expose input value. Use with caution. get serviceNameInput() { return this._serviceName; } } exports.MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorOutputReference = MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorOutputReference; _a = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorOutputReference[_a] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorOutputReference", version: "21.22.1" }; class MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorList 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 MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorList = MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorList; _b = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorList[_b] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorList", version: "21.22.1" }; function medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsToTerraform(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_bitrate: cdktf.numberToTerraform(struct.maximumBitrate), minimum_bitrate: cdktf.numberToTerraform(struct.minimumBitrate), priority: cdktf.numberToTerraform(struct.priority), }; } function medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsToHclTerraform(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_bitrate: { value: cdktf.numberToHclTerraform(struct.maximumBitrate), isBlock: false, type: "simple", storageClassType: "number", }, minimum_bitrate: { value: cdktf.numberToHclTerraform(struct.minimumBitrate), isBlock: false, type: "simple", storageClassType: "number", }, priority: { value: cdktf.numberToHclTerraform(struct.priority), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsOutputReference 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._maximumBitrate !== undefined) { hasAnyValues = true; internalValueResult.maximumBitrate = this._maximumBitrate; } if (this._minimumBitrate !== undefined) { hasAnyValues = true; internalValueResult.minimumBitrate = this._minimumBitrate; } if (this._priority !== undefined) { hasAnyValues = true; internalValueResult.priority = this._priority; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._maximumBitrate = undefined; this._minimumBitrate = undefined; this._priority = 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._maximumBitrate = value.maximumBitrate; this._minimumBitrate = value.minimumBitrate; this._priority = value.priority; } } get maximumBitrate() { return this.getNumberAttribute('maximum_bitrate'); } set maximumBitrate(value) { this._maximumBitrate = value; } resetMaximumBitrate() { this._maximumBitrate = undefined; } // Temporarily expose input value. Use with caution. get maximumBitrateInput() { return this._maximumBitrate; } get minimumBitrate() { return this.getNumberAttribute('minimum_bitrate'); } set minimumBitrate(value) { this._minimumBitrate = value; } resetMinimumBitrate() { this._minimumBitrate = undefined; } // Temporarily expose input value. Use with caution. get minimumBitrateInput() { return this._minimumBitrate; } get priority() { return this.getNumberAttribute('priority'); } set priority(value) { this._priority = value; } resetPriority() { this._priority = undefined; } // Temporarily expose input value. Use with caution. get priorityInput() { return this._priority; } } exports.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsOutputReference = MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsOutputReference; _c = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsOutputReference[_c] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsOutputReference", version: "21.22.1" }; class MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsList 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 MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsList = MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsList; _d = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsList[_d] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsList", version: "21.22.1" }; function medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsToTerraform(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 { constant_bitrate: cdktf.numberToTerraform(struct.constantBitrate), statmux_settings: cdktf.listMapper(medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsToTerraform, true)(struct.statmuxSettings), }; } function medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsToHclTerraform(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 = { constant_bitrate: { value: cdktf.numberToHclTerraform(struct.constantBitrate), isBlock: false, type: "simple", storageClassType: "number", }, statmux_settings: { value: cdktf.listMapperHcl(medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsToHclTerraform, true)(struct.statmuxSettings), isBlock: true, type: "list", storageClassType: "MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsOutputReference 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; // statmux_settings - computed: false, optional: true, required: false this._statmuxSettings = new MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsStatmuxSettingsList(this, "statmux_settings", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._constantBitrate !== undefined) { hasAnyValues = true; internalValueResult.constantBitrate = this._constantBitrate; } if (this._statmuxSettings?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.statmuxSettings = this._statmuxSettings?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._constantBitrate = undefined; this._statmuxSettings.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._constantBitrate = value.constantBitrate; this._statmuxSettings.internalValue = value.statmuxSettings; } } get constantBitrate() { return this.getNumberAttribute('constant_bitrate'); } set constantBitrate(value) { this._constantBitrate = value; } resetConstantBitrate() { this._constantBitrate = undefined; } // Temporarily expose input value. Use with caution. get constantBitrateInput() { return this._constantBitrate; } get statmuxSettings() { return this._statmuxSettings; } putStatmuxSettings(value) { this._statmuxSettings.internalValue = value; } resetStatmuxSettings() { this._statmuxSettings.internalValue = undefined; } // Temporarily expose input value. Use with caution. get statmuxSettingsInput() { return this._statmuxSettings.internalValue; } } exports.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsOutputReference = MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsOutputReference; _e = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsOutputReference[_e] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsOutputReference", version: "21.22.1" }; class MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsList 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 MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsList = MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsList; _f = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsList[_f] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsList", version: "21.22.1" }; function medialiveMultiplexProgramMultiplexProgramSettingsToTerraform(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 { preferred_channel_pipeline: cdktf.stringToTerraform(struct.preferredChannelPipeline), program_number: cdktf.numberToTerraform(struct.programNumber), service_descriptor: cdktf.listMapper(medialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorToTerraform, true)(struct.serviceDescriptor), video_settings: cdktf.listMapper(medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsToTerraform, true)(struct.videoSettings), }; } function medialiveMultiplexProgramMultiplexProgramSettingsToHclTerraform(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 = { preferred_channel_pipeline: { value: cdktf.stringToHclTerraform(struct.preferredChannelPipeline), isBlock: false, type: "simple", storageClassType: "string", }, program_number: { value: cdktf.numberToHclTerraform(struct.programNumber), isBlock: false, type: "simple", storageClassType: "number", }, service_descriptor: { value: cdktf.listMapperHcl(medialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorToHclTerraform, true)(struct.serviceDescriptor), isBlock: true, type: "list", storageClassType: "MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorList", }, video_settings: { value: cdktf.listMapperHcl(medialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsToHclTerraform, true)(struct.videoSettings), isBlock: true, type: "list", storageClassType: "MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class MedialiveMultiplexProgramMultiplexProgramSettingsOutputReference 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; // service_descriptor - computed: false, optional: true, required: false this._serviceDescriptor = new MedialiveMultiplexProgramMultiplexProgramSettingsServiceDescriptorList(this, "service_descriptor", false); // video_settings - computed: false, optional: true, required: false this._videoSettings = new MedialiveMultiplexProgramMultiplexProgramSettingsVideoSettingsList(this, "video_settings", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._preferredChannelPipeline !== undefined) { hasAnyValues = true; internalValueResult.preferredChannelPipeline = this._preferredChannelPipeline; } if (this._programNumber !== undefined) { hasAnyValues = true; internalValueResult.programNumber = this._programNumber; } if (this._serviceDescriptor?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.serviceDescriptor = this._serviceDescriptor?.internalValue; } if (this._videoSettings?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.videoSettings = this._videoSettings?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._preferredChannelPipeline = undefined; this._programNumber = undefined; this._serviceDescriptor.internalValue = undefined; this._videoSettings.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._preferredChannelPipeline = value.preferredChannelPipeline; this._programNumber = value.programNumber; this._serviceDescriptor.internalValue = value.serviceDescriptor; this._videoSettings.internalValue = value.videoSettings; } } get preferredChannelPipeline() { return this.getStringAttribute('preferred_channel_pipeline'); } set preferredChannelPipeline(value) { this._preferredChannelPipeline = value; } // Temporarily expose input value. Use with caution. get preferredChannelPipelineInput() { return this._preferredChannelPipeline; } get programNumber() { return this.getNumberAttribute('program_number'); } set programNumber(value) { this._programNumber = value; } // Temporarily expose input value. Use with caution. get programNumberInput() { return this._programNumber; } get serviceDescriptor() { return this._serviceDescriptor; } putServiceDescriptor(value) { this._serviceDescriptor.internalValue = value; } resetServiceDescriptor() { this._serviceDescriptor.internalValue = undefined; } // Temporarily expose input value. Use with caution. get serviceDescriptorInput() { return this._serviceDescriptor.internalValue; } get videoSettings() { return this._videoSettings; } putVideoSettings(value) { this._videoSettings.internalValue = value; } resetVideoSettings() { this._videoSettings.internalValue = undefined; } // Temporarily expose input value. Use with caution. get videoSettingsInput() { return this._videoSettings.internalValue; } } exports.MedialiveMultiplexProgramMultiplexProgramSettingsOutputReference = MedialiveMultiplexProgramMultiplexProgramSettingsOutputReference; _g = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramMultiplexProgramSettingsOutputReference[_g] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramMultiplexProgramSettingsOutputReference", version: "21.22.1" }; class MedialiveMultiplexProgramMultiplexProgramSettingsList 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 MedialiveMultiplexProgramMultiplexProgramSettingsOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.MedialiveMultiplexProgramMultiplexProgramSettingsList = MedialiveMultiplexProgramMultiplexProgramSettingsList; _h = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramMultiplexProgramSettingsList[_h] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramMultiplexProgramSettingsList", version: "21.22.1" }; function medialiveMultiplexProgramTimeoutsToTerraform(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), }; } function medialiveMultiplexProgramTimeoutsToHclTerraform(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", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class MedialiveMultiplexProgramTimeoutsOutputReference 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; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._create = 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; } } 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; } } exports.MedialiveMultiplexProgramTimeoutsOutputReference = MedialiveMultiplexProgramTimeoutsOutputReference; _j = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgramTimeoutsOutputReference[_j] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgramTimeoutsOutputReference", version: "21.22.1" }; /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/medialive_multiplex_program aws_medialive_multiplex_program} */ class MedialiveMultiplexProgram extends cdktf.TerraformResource { // ============== // STATIC Methods // ============== /** * Generates CDKTF code for importing a MedialiveMultiplexProgram 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 MedialiveMultiplexProgram to import * @param importFromId The id of the existing MedialiveMultiplexProgram that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/medialive_multiplex_program#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MedialiveMultiplexProgram to import is found */ static generateConfigForImport(scope, importToId, importFromId, provider) { return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "aws_medialive_multiplex_program", importId: importFromId, provider }); } // =========== // INITIALIZER // =========== /** * Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/medialive_multiplex_program aws_medialive_multiplex_program} 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 MedialiveMultiplexProgramConfig */ constructor(scope, id, config) { super(scope, id, { terraformResourceType: 'aws_medialive_multiplex_program', terraformGeneratorMetadata: { providerName: 'aws', providerVersion: '6.25.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 }); // multiplex_program_settings - computed: false, optional: true, required: false this._multiplexProgramSettings = new MedialiveMultiplexProgramMultiplexProgramSettingsList(this, "multiplex_program_settings", false); // timeouts - computed: false, optional: true, required: false this._timeouts = new MedialiveMultiplexProgramTimeoutsOutputReference(this, "timeouts"); this._multiplexId = config.multiplexId; this._programName = config.programName; this._region = config.region; this._multiplexProgramSettings.internalValue = config.multiplexProgramSettings; this._timeouts.internalValue = config.timeouts; } // ========== // ATTRIBUTES // ========== // id - computed: true, optional: false, required: false get id() { return this.getStringAttribute('id'); } get multiplexId() { return this.getStringAttribute('multiplex_id'); } set multiplexId(value) { this._multiplexId = value; } // Temporarily expose input value. Use with caution. get multiplexIdInput() { return this._multiplexId; } get programName() { return this.getStringAttribute('program_name'); } set programName(value) { this._programName = value; } // Temporarily expose input value. Use with caution. get programNameInput() { return this._programName; } get region() { return this.getStringAttribute('region'); } set region(value) { this._region = value; } resetRegion() { this._region = undefined; } // Temporarily expose input value. Use with caution. get regionInput() { return this._region; } get multiplexProgramSettings() { return this._multiplexProgramSettings; } putMultiplexProgramSettings(value) { this._multiplexProgramSettings.internalValue = value; } resetMultiplexProgramSettings() { this._multiplexProgramSettings.internalValue = undefined; } // Temporarily expose input value. Use with caution. get multiplexProgramSettingsInput() { return this._multiplexProgramSettings.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 { multiplex_id: cdktf.stringToTerraform(this._multiplexId), program_name: cdktf.stringToTerraform(this._programName), region: cdktf.stringToTerraform(this._region), multiplex_program_settings: cdktf.listMapper(medialiveMultiplexProgramMultiplexProgramSettingsToTerraform, true)(this._multiplexProgramSettings.internalValue), timeouts: medialiveMultiplexProgramTimeoutsToTerraform(this._timeouts.internalValue), }; } synthesizeHclAttributes() { const attrs = { multiplex_id: { value: cdktf.stringToHclTerraform(this._multiplexId), isBlock: false, type: "simple", storageClassType: "string", }, program_name: { value: cdktf.stringToHclTerraform(this._programName), isBlock: false, type: "simple", storageClassType: "string", }, region: { value: cdktf.stringToHclTerraform(this._region), isBlock: false, type: "simple", storageClassType: "string", }, multiplex_program_settings: { value: cdktf.listMapperHcl(medialiveMultiplexProgramMultiplexProgramSettingsToHclTerraform, true)(this._multiplexProgramSettings.internalValue), isBlock: true, type: "list", storageClassType: "MedialiveMultiplexProgramMultiplexProgramSettingsList", }, timeouts: { value: medialiveMultiplexProgramTimeoutsToHclTerraform(this._timeouts.internalValue), isBlock: true, type: "struct", storageClassType: "MedialiveMultiplexProgramTimeouts", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } } exports.MedialiveMultiplexProgram = MedialiveMultiplexProgram; _k = JSII_RTTI_SYMBOL_1; MedialiveMultiplexProgram[_k] = { fqn: "@cdktf/provider-aws.medialiveMultiplexProgram.MedialiveMultiplexProgram", version: "21.22.1" }; // ================= // STATIC PROPERTIES // ================= MedialiveMultiplexProgram.tfResourceType = "aws_medialive_multiplex_program"; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbWVkaWFsaXZlLW11bHRpcGxleC1wcm9ncmFtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFvREEsc0tBU0M7QUFHRCw0S0FzQkM7QUFpSEQsNExBVUM7QUFHRCxrTUE0QkM7QUEySUQsOEpBU0M7QUFHRCxvS0FzQkM7QUErSEQsb0lBV0M7QUFHRCwwSUFrQ0M7QUF1SkQsb0dBUUM7QUFHRCwwR0FnQkM7O0FBcnZCRCwrQkFBK0I7QUEyQy9CLFNBQWdCLDZFQUE2RSxDQUFDLE1BQStGO0lBQzNMLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFBQyxPQUFPLE1BQU0sQ0FBQztJQUFDLENBQUM7SUFDNUYsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxNQUFNLElBQUksS0FBSyxDQUFDLG9IQUFvSCxDQUFDLENBQUM7SUFDeEksQ0FBQztJQUNELE9BQU87UUFDTCxhQUFhLEVBQUUsS0FBSyxDQUFDLGlCQUFpQixDQUFDLE1BQU8sQ0FBQyxZQUFZLENBQUM7UUFDNUQsWUFBWSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsV0FBVyxDQUFDO0tBQzNELENBQUE7QUFDSCxDQUFDO0FBR0QsU0FBZ0IsZ0ZBQWdGLENBQUMsTUFBK0Y7SUFDOUwsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUFDLE9BQU8sTUFBTSxDQUFDO0lBQUMsQ0FBQztJQUM1RixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FB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