All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.aws.medialive.kotlin.inputs.ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgs.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 6.57.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.aws.medialive.kotlin.inputs

import com.pulumi.aws.medialive.inputs.ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property adMarkers The ad marker type for this output group.
 * @property baseUrlContent
 * @property baseUrlContent1
 * @property baseUrlManifest
 * @property baseUrlManifest1
 * @property captionLanguageMappings
 * @property captionLanguageSetting
 * @property clientCache
 * @property codecSpecification
 * @property constantIv
 * @property destination
 * @property directoryStructure
 * @property discontinuityTags
 * @property encryptionType
 * @property hlsCdnSettings
 * @property hlsId3SegmentTagging
 * @property iframeOnlyPlaylists
 * @property incompleteSegmentBehavior
 * @property indexNSegments
 * @property inputLossAction
 * @property ivInManifest
 * @property ivSource
 * @property keepSegments
 * @property keyFormat
 * @property keyFormatVersions
 * @property keyProviderSettings
 * @property manifestCompression
 * @property manifestDurationFormat
 * @property minSegmentLength
 * @property mode
 * @property outputSelection
 * @property programDateTime
 * @property programDateTimeClock
 * @property programDateTimePeriod
 * @property redundantManifest
 * @property segmentLength
 * @property segmentsPerSubdirectory
 * @property streamInfResolution
 * @property timedMetadataId3Frame Indicates ID3 frame that has the timecode.
 * @property timedMetadataId3Period
 * @property timestampDeltaMilliseconds
 * @property tsFileMode
 */
public data class ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgs(
    public val adMarkers: Output>? = null,
    public val baseUrlContent: Output? = null,
    public val baseUrlContent1: Output? = null,
    public val baseUrlManifest: Output? = null,
    public val baseUrlManifest1: Output? = null,
    public val captionLanguageMappings: Output>? =
        null,
    public val captionLanguageSetting: Output? = null,
    public val clientCache: Output? = null,
    public val codecSpecification: Output? = null,
    public val constantIv: Output? = null,
    public val destination: Output,
    public val directoryStructure: Output? = null,
    public val discontinuityTags: Output? = null,
    public val encryptionType: Output? = null,
    public val hlsCdnSettings: Output>? =
        null,
    public val hlsId3SegmentTagging: Output? = null,
    public val iframeOnlyPlaylists: Output? = null,
    public val incompleteSegmentBehavior: Output? = null,
    public val indexNSegments: Output? = null,
    public val inputLossAction: Output? = null,
    public val ivInManifest: Output? = null,
    public val ivSource: Output? = null,
    public val keepSegments: Output? = null,
    public val keyFormat: Output? = null,
    public val keyFormatVersions: Output? = null,
    public val keyProviderSettings: Output? =
        null,
    public val manifestCompression: Output? = null,
    public val manifestDurationFormat: Output? = null,
    public val minSegmentLength: Output? = null,
    public val mode: Output? = null,
    public val outputSelection: Output? = null,
    public val programDateTime: Output? = null,
    public val programDateTimeClock: Output? = null,
    public val programDateTimePeriod: Output? = null,
    public val redundantManifest: Output? = null,
    public val segmentLength: Output? = null,
    public val segmentsPerSubdirectory: Output? = null,
    public val streamInfResolution: Output? = null,
    public val timedMetadataId3Frame: Output? = null,
    public val timedMetadataId3Period: Output? = null,
    public val timestampDeltaMilliseconds: Output? = null,
    public val tsFileMode: Output? = null,
) :
    ConvertibleToJava {
    override fun toJava(): com.pulumi.aws.medialive.inputs.ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgs =
        com.pulumi.aws.medialive.inputs.ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgs.builder()
            .adMarkers(adMarkers?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .baseUrlContent(baseUrlContent?.applyValue({ args0 -> args0 }))
            .baseUrlContent1(baseUrlContent1?.applyValue({ args0 -> args0 }))
            .baseUrlManifest(baseUrlManifest?.applyValue({ args0 -> args0 }))
            .baseUrlManifest1(baseUrlManifest1?.applyValue({ args0 -> args0 }))
            .captionLanguageMappings(
                captionLanguageMappings?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .captionLanguageSetting(captionLanguageSetting?.applyValue({ args0 -> args0 }))
            .clientCache(clientCache?.applyValue({ args0 -> args0 }))
            .codecSpecification(codecSpecification?.applyValue({ args0 -> args0 }))
            .constantIv(constantIv?.applyValue({ args0 -> args0 }))
            .destination(destination.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .directoryStructure(directoryStructure?.applyValue({ args0 -> args0 }))
            .discontinuityTags(discontinuityTags?.applyValue({ args0 -> args0 }))
            .encryptionType(encryptionType?.applyValue({ args0 -> args0 }))
            .hlsCdnSettings(
                hlsCdnSettings?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .hlsId3SegmentTagging(hlsId3SegmentTagging?.applyValue({ args0 -> args0 }))
            .iframeOnlyPlaylists(iframeOnlyPlaylists?.applyValue({ args0 -> args0 }))
            .incompleteSegmentBehavior(incompleteSegmentBehavior?.applyValue({ args0 -> args0 }))
            .indexNSegments(indexNSegments?.applyValue({ args0 -> args0 }))
            .inputLossAction(inputLossAction?.applyValue({ args0 -> args0 }))
            .ivInManifest(ivInManifest?.applyValue({ args0 -> args0 }))
            .ivSource(ivSource?.applyValue({ args0 -> args0 }))
            .keepSegments(keepSegments?.applyValue({ args0 -> args0 }))
            .keyFormat(keyFormat?.applyValue({ args0 -> args0 }))
            .keyFormatVersions(keyFormatVersions?.applyValue({ args0 -> args0 }))
            .keyProviderSettings(
                keyProviderSettings?.applyValue({ args0 ->
                    args0.let({ args0 ->
                        args0.toJava()
                    })
                }),
            )
            .manifestCompression(manifestCompression?.applyValue({ args0 -> args0 }))
            .manifestDurationFormat(manifestDurationFormat?.applyValue({ args0 -> args0 }))
            .minSegmentLength(minSegmentLength?.applyValue({ args0 -> args0 }))
            .mode(mode?.applyValue({ args0 -> args0 }))
            .outputSelection(outputSelection?.applyValue({ args0 -> args0 }))
            .programDateTime(programDateTime?.applyValue({ args0 -> args0 }))
            .programDateTimeClock(programDateTimeClock?.applyValue({ args0 -> args0 }))
            .programDateTimePeriod(programDateTimePeriod?.applyValue({ args0 -> args0 }))
            .redundantManifest(redundantManifest?.applyValue({ args0 -> args0 }))
            .segmentLength(segmentLength?.applyValue({ args0 -> args0 }))
            .segmentsPerSubdirectory(segmentsPerSubdirectory?.applyValue({ args0 -> args0 }))
            .streamInfResolution(streamInfResolution?.applyValue({ args0 -> args0 }))
            .timedMetadataId3Frame(timedMetadataId3Frame?.applyValue({ args0 -> args0 }))
            .timedMetadataId3Period(timedMetadataId3Period?.applyValue({ args0 -> args0 }))
            .timestampDeltaMilliseconds(timestampDeltaMilliseconds?.applyValue({ args0 -> args0 }))
            .tsFileMode(tsFileMode?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgs].
 */
@PulumiTagMarker
public class ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgsBuilder
internal constructor() {
    private var adMarkers: Output>? = null

    private var baseUrlContent: Output? = null

    private var baseUrlContent1: Output? = null

    private var baseUrlManifest: Output? = null

    private var baseUrlManifest1: Output? = null

    private var captionLanguageMappings:
        Output>? =
        null

    private var captionLanguageSetting: Output? = null

    private var clientCache: Output? = null

    private var codecSpecification: Output? = null

    private var constantIv: Output? = null

    private var destination:
        Output? =
        null

    private var directoryStructure: Output? = null

    private var discontinuityTags: Output? = null

    private var encryptionType: Output? = null

    private var hlsCdnSettings:
        Output>? =
        null

    private var hlsId3SegmentTagging: Output? = null

    private var iframeOnlyPlaylists: Output? = null

    private var incompleteSegmentBehavior: Output? = null

    private var indexNSegments: Output? = null

    private var inputLossAction: Output? = null

    private var ivInManifest: Output? = null

    private var ivSource: Output? = null

    private var keepSegments: Output? = null

    private var keyFormat: Output? = null

    private var keyFormatVersions: Output? = null

    private var keyProviderSettings:
        Output? =
        null

    private var manifestCompression: Output? = null

    private var manifestDurationFormat: Output? = null

    private var minSegmentLength: Output? = null

    private var mode: Output? = null

    private var outputSelection: Output? = null

    private var programDateTime: Output? = null

    private var programDateTimeClock: Output? = null

    private var programDateTimePeriod: Output? = null

    private var redundantManifest: Output? = null

    private var segmentLength: Output? = null

    private var segmentsPerSubdirectory: Output? = null

    private var streamInfResolution: Output? = null

    private var timedMetadataId3Frame: Output? = null

    private var timedMetadataId3Period: Output? = null

    private var timestampDeltaMilliseconds: Output? = null

    private var tsFileMode: Output? = null

    /**
     * @param value The ad marker type for this output group.
     */
    @JvmName("jqmypdhsircrlopi")
    public suspend fun adMarkers(`value`: Output>) {
        this.adMarkers = value
    }

    @JvmName("uacnqhvkpdgnbdqw")
    public suspend fun adMarkers(vararg values: Output) {
        this.adMarkers = Output.all(values.asList())
    }

    /**
     * @param values The ad marker type for this output group.
     */
    @JvmName("huryhaklvlgvksfi")
    public suspend fun adMarkers(values: List>) {
        this.adMarkers = Output.all(values)
    }

    /**
     * @param value
     */
    @JvmName("brpwiiatvqlcjvho")
    public suspend fun baseUrlContent(`value`: Output) {
        this.baseUrlContent = value
    }

    /**
     * @param value
     */
    @JvmName("xsdlxkspuddgmbyb")
    public suspend fun baseUrlContent1(`value`: Output) {
        this.baseUrlContent1 = value
    }

    /**
     * @param value
     */
    @JvmName("nwvxdxfklsavkgha")
    public suspend fun baseUrlManifest(`value`: Output) {
        this.baseUrlManifest = value
    }

    /**
     * @param value
     */
    @JvmName("sgcbxsilcnnghvvg")
    public suspend fun baseUrlManifest1(`value`: Output) {
        this.baseUrlManifest1 = value
    }

    /**
     * @param value
     */
    @JvmName("pxovjjyjxppjbymu")
    public suspend fun captionLanguageMappings(`value`: Output>) {
        this.captionLanguageMappings = value
    }

    @JvmName("kvjkilsffsgsavva")
    public suspend fun captionLanguageMappings(vararg values: Output) {
        this.captionLanguageMappings = Output.all(values.asList())
    }

    /**
     * @param values
     */
    @JvmName("wqcjfwcunrexoklr")
    public suspend fun captionLanguageMappings(values: List>) {
        this.captionLanguageMappings = Output.all(values)
    }

    /**
     * @param value
     */
    @JvmName("alyxykuayupyptdw")
    public suspend fun captionLanguageSetting(`value`: Output) {
        this.captionLanguageSetting = value
    }

    /**
     * @param value
     */
    @JvmName("dolqqxxrtjosotru")
    public suspend fun clientCache(`value`: Output) {
        this.clientCache = value
    }

    /**
     * @param value
     */
    @JvmName("jksqtxcdusjsbojv")
    public suspend fun codecSpecification(`value`: Output) {
        this.codecSpecification = value
    }

    /**
     * @param value
     */
    @JvmName("ceqgulldwocsecrk")
    public suspend fun constantIv(`value`: Output) {
        this.constantIv = value
    }

    /**
     * @param value
     */
    @JvmName("lpsjwgfqppftogqi")
    public suspend fun destination(`value`: Output) {
        this.destination = value
    }

    /**
     * @param value
     */
    @JvmName("hhlbfxmmmlwcomcm")
    public suspend fun directoryStructure(`value`: Output) {
        this.directoryStructure = value
    }

    /**
     * @param value
     */
    @JvmName("yjswtwryfpgvbfot")
    public suspend fun discontinuityTags(`value`: Output) {
        this.discontinuityTags = value
    }

    /**
     * @param value
     */
    @JvmName("xeiuycpjekcevkwf")
    public suspend fun encryptionType(`value`: Output) {
        this.encryptionType = value
    }

    /**
     * @param value
     */
    @JvmName("hxlodibxsaybkdck")
    public suspend fun hlsCdnSettings(`value`: Output>) {
        this.hlsCdnSettings = value
    }

    @JvmName("jmtkkqvuiwqylvno")
    public suspend fun hlsCdnSettings(vararg values: Output) {
        this.hlsCdnSettings = Output.all(values.asList())
    }

    /**
     * @param values
     */
    @JvmName("apwpdhsxqesrthuv")
    public suspend fun hlsCdnSettings(values: List>) {
        this.hlsCdnSettings = Output.all(values)
    }

    /**
     * @param value
     */
    @JvmName("ixwamjgppnkmmgqv")
    public suspend fun hlsId3SegmentTagging(`value`: Output) {
        this.hlsId3SegmentTagging = value
    }

    /**
     * @param value
     */
    @JvmName("kmlnwenlvtpbownt")
    public suspend fun iframeOnlyPlaylists(`value`: Output) {
        this.iframeOnlyPlaylists = value
    }

    /**
     * @param value
     */
    @JvmName("qmkulqogjiyanmfh")
    public suspend fun incompleteSegmentBehavior(`value`: Output) {
        this.incompleteSegmentBehavior = value
    }

    /**
     * @param value
     */
    @JvmName("ikholjpnbroggkge")
    public suspend fun indexNSegments(`value`: Output) {
        this.indexNSegments = value
    }

    /**
     * @param value
     */
    @JvmName("brtjnpcbkuxwabpy")
    public suspend fun inputLossAction(`value`: Output) {
        this.inputLossAction = value
    }

    /**
     * @param value
     */
    @JvmName("ybxjpamuyjdxnebo")
    public suspend fun ivInManifest(`value`: Output) {
        this.ivInManifest = value
    }

    /**
     * @param value
     */
    @JvmName("jtfvvtukpchmnyuh")
    public suspend fun ivSource(`value`: Output) {
        this.ivSource = value
    }

    /**
     * @param value
     */
    @JvmName("ltuwtiwtdrstcmjh")
    public suspend fun keepSegments(`value`: Output) {
        this.keepSegments = value
    }

    /**
     * @param value
     */
    @JvmName("xmxorwfcmiwyutmy")
    public suspend fun keyFormat(`value`: Output) {
        this.keyFormat = value
    }

    /**
     * @param value
     */
    @JvmName("bbyiovlqynawdkef")
    public suspend fun keyFormatVersions(`value`: Output) {
        this.keyFormatVersions = value
    }

    /**
     * @param value
     */
    @JvmName("bvftaifddufsnaql")
    public suspend fun keyProviderSettings(`value`: Output) {
        this.keyProviderSettings = value
    }

    /**
     * @param value
     */
    @JvmName("hhwxyboaouuqugqb")
    public suspend fun manifestCompression(`value`: Output) {
        this.manifestCompression = value
    }

    /**
     * @param value
     */
    @JvmName("dibpceuxhxqysfsc")
    public suspend fun manifestDurationFormat(`value`: Output) {
        this.manifestDurationFormat = value
    }

    /**
     * @param value
     */
    @JvmName("bnnklcnfumnxmvud")
    public suspend fun minSegmentLength(`value`: Output) {
        this.minSegmentLength = value
    }

    /**
     * @param value
     */
    @JvmName("jncowslresubmhbm")
    public suspend fun mode(`value`: Output) {
        this.mode = value
    }

    /**
     * @param value
     */
    @JvmName("eegxmcsxckxvrngv")
    public suspend fun outputSelection(`value`: Output) {
        this.outputSelection = value
    }

    /**
     * @param value
     */
    @JvmName("hnbbfthruwtpjchi")
    public suspend fun programDateTime(`value`: Output) {
        this.programDateTime = value
    }

    /**
     * @param value
     */
    @JvmName("ghwkxysfatbvamwf")
    public suspend fun programDateTimeClock(`value`: Output) {
        this.programDateTimeClock = value
    }

    /**
     * @param value
     */
    @JvmName("rmbaykogajhhmsgp")
    public suspend fun programDateTimePeriod(`value`: Output) {
        this.programDateTimePeriod = value
    }

    /**
     * @param value
     */
    @JvmName("loepkwebruhyyuym")
    public suspend fun redundantManifest(`value`: Output) {
        this.redundantManifest = value
    }

    /**
     * @param value
     */
    @JvmName("vmkyipjindqwxbxc")
    public suspend fun segmentLength(`value`: Output) {
        this.segmentLength = value
    }

    /**
     * @param value
     */
    @JvmName("alpguwbqtkonxvxd")
    public suspend fun segmentsPerSubdirectory(`value`: Output) {
        this.segmentsPerSubdirectory = value
    }

    /**
     * @param value
     */
    @JvmName("bcrpmereqvmqraps")
    public suspend fun streamInfResolution(`value`: Output) {
        this.streamInfResolution = value
    }

    /**
     * @param value Indicates ID3 frame that has the timecode.
     */
    @JvmName("qebeiqiijsdqslng")
    public suspend fun timedMetadataId3Frame(`value`: Output) {
        this.timedMetadataId3Frame = value
    }

    /**
     * @param value
     */
    @JvmName("olfuqadkknimjuft")
    public suspend fun timedMetadataId3Period(`value`: Output) {
        this.timedMetadataId3Period = value
    }

    /**
     * @param value
     */
    @JvmName("clvgqsvpqufdpivk")
    public suspend fun timestampDeltaMilliseconds(`value`: Output) {
        this.timestampDeltaMilliseconds = value
    }

    /**
     * @param value
     */
    @JvmName("xfvinwscokippnml")
    public suspend fun tsFileMode(`value`: Output) {
        this.tsFileMode = value
    }

    /**
     * @param value The ad marker type for this output group.
     */
    @JvmName("jaergergpupplvyt")
    public suspend fun adMarkers(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.adMarkers = mapped
    }

    /**
     * @param values The ad marker type for this output group.
     */
    @JvmName("obydssxxtcyfipmc")
    public suspend fun adMarkers(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.adMarkers = mapped
    }

    /**
     * @param value
     */
    @JvmName("musrjcchvaptiiha")
    public suspend fun baseUrlContent(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.baseUrlContent = mapped
    }

    /**
     * @param value
     */
    @JvmName("ahmupjskeugmtvlj")
    public suspend fun baseUrlContent1(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.baseUrlContent1 = mapped
    }

    /**
     * @param value
     */
    @JvmName("wltsudlyvcrmtpgs")
    public suspend fun baseUrlManifest(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.baseUrlManifest = mapped
    }

    /**
     * @param value
     */
    @JvmName("sdnrvkdyepqbhmup")
    public suspend fun baseUrlManifest1(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.baseUrlManifest1 = mapped
    }

    /**
     * @param value
     */
    @JvmName("wltmobjwphgnvowg")
    public suspend fun captionLanguageMappings(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.captionLanguageMappings = mapped
    }

    /**
     * @param argument
     */
    @JvmName("grvqssixoaormyhs")
    public suspend fun captionLanguageMappings(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsCaptionLanguageMappingArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.captionLanguageMappings = mapped
    }

    /**
     * @param argument
     */
    @JvmName("xxursubfmjtgbkcf")
    public suspend fun captionLanguageMappings(vararg argument: suspend ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsCaptionLanguageMappingArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsCaptionLanguageMappingArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.captionLanguageMappings = mapped
    }

    /**
     * @param argument
     */
    @JvmName("hlceleocpttnxgrh")
    public suspend fun captionLanguageMappings(argument: suspend ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsCaptionLanguageMappingArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsCaptionLanguageMappingArgsBuilder().applySuspend
                    { argument() }.build(),
            )
        val mapped = of(toBeMapped)
        this.captionLanguageMappings = mapped
    }

    /**
     * @param values
     */
    @JvmName("jrfpwmcktuudxvgc")
    public suspend fun captionLanguageMappings(vararg values: ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsCaptionLanguageMappingArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.captionLanguageMappings = mapped
    }

    /**
     * @param value
     */
    @JvmName("nqoorgexwonuaeiv")
    public suspend fun captionLanguageSetting(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.captionLanguageSetting = mapped
    }

    /**
     * @param value
     */
    @JvmName("ofobrjeukwfkmxir")
    public suspend fun clientCache(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.clientCache = mapped
    }

    /**
     * @param value
     */
    @JvmName("ryplbfarywrfkggm")
    public suspend fun codecSpecification(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.codecSpecification = mapped
    }

    /**
     * @param value
     */
    @JvmName("xexpwsurqgadvhaw")
    public suspend fun constantIv(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.constantIv = mapped
    }

    /**
     * @param value
     */
    @JvmName("oqqjxchsghkcxjtm")
    public suspend fun destination(`value`: ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsDestinationArgs) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.destination = mapped
    }

    /**
     * @param argument
     */
    @JvmName("cnggfttcnuwudhvk")
    public suspend fun destination(argument: suspend ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsDestinationArgsBuilder.() -> Unit) {
        val toBeMapped =
            ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsDestinationArgsBuilder().applySuspend {
                argument()
            }.build()
        val mapped = of(toBeMapped)
        this.destination = mapped
    }

    /**
     * @param value
     */
    @JvmName("cthepjaekqhtgavk")
    public suspend fun directoryStructure(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.directoryStructure = mapped
    }

    /**
     * @param value
     */
    @JvmName("awsrjxyysfthmvom")
    public suspend fun discontinuityTags(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.discontinuityTags = mapped
    }

    /**
     * @param value
     */
    @JvmName("vmfagovgnyscfjsf")
    public suspend fun encryptionType(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.encryptionType = mapped
    }

    /**
     * @param value
     */
    @JvmName("rvscvixjtfdtnfyg")
    public suspend fun hlsCdnSettings(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hlsCdnSettings = mapped
    }

    /**
     * @param argument
     */
    @JvmName("wkifjuoxviqkoxab")
    public suspend fun hlsCdnSettings(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsHlsCdnSettingArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.hlsCdnSettings = mapped
    }

    /**
     * @param argument
     */
    @JvmName("xihyxtunnkooexel")
    public suspend fun hlsCdnSettings(vararg argument: suspend ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsHlsCdnSettingArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsHlsCdnSettingArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.hlsCdnSettings = mapped
    }

    /**
     * @param argument
     */
    @JvmName("ljdwjaufsyjcrfdv")
    public suspend fun hlsCdnSettings(argument: suspend ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsHlsCdnSettingArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsHlsCdnSettingArgsBuilder().applySuspend
                    { argument() }.build(),
            )
        val mapped = of(toBeMapped)
        this.hlsCdnSettings = mapped
    }

    /**
     * @param values
     */
    @JvmName("hqyynjhltfkdtjen")
    public suspend fun hlsCdnSettings(vararg values: ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsHlsCdnSettingArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.hlsCdnSettings = mapped
    }

    /**
     * @param value
     */
    @JvmName("cuymugooxdlvxlgk")
    public suspend fun hlsId3SegmentTagging(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.hlsId3SegmentTagging = mapped
    }

    /**
     * @param value
     */
    @JvmName("apcwwnkncoblgjtu")
    public suspend fun iframeOnlyPlaylists(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.iframeOnlyPlaylists = mapped
    }

    /**
     * @param value
     */
    @JvmName("ddqiohpwkebsspow")
    public suspend fun incompleteSegmentBehavior(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.incompleteSegmentBehavior = mapped
    }

    /**
     * @param value
     */
    @JvmName("qsmqdpajjbfgefjd")
    public suspend fun indexNSegments(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.indexNSegments = mapped
    }

    /**
     * @param value
     */
    @JvmName("uiplsvtwyslodaqb")
    public suspend fun inputLossAction(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.inputLossAction = mapped
    }

    /**
     * @param value
     */
    @JvmName("uvvhuvcvkoqnayij")
    public suspend fun ivInManifest(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ivInManifest = mapped
    }

    /**
     * @param value
     */
    @JvmName("lylsnquvptplikpw")
    public suspend fun ivSource(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ivSource = mapped
    }

    /**
     * @param value
     */
    @JvmName("fxdvjtgginqaacxr")
    public suspend fun keepSegments(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.keepSegments = mapped
    }

    /**
     * @param value
     */
    @JvmName("stwgptwsfsinpndn")
    public suspend fun keyFormat(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.keyFormat = mapped
    }

    /**
     * @param value
     */
    @JvmName("jlmdwvbgxgkiegqj")
    public suspend fun keyFormatVersions(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.keyFormatVersions = mapped
    }

    /**
     * @param value
     */
    @JvmName("lmoqylnjpoikkhum")
    public suspend fun keyProviderSettings(`value`: ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsKeyProviderSettingsArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.keyProviderSettings = mapped
    }

    /**
     * @param argument
     */
    @JvmName("pfgylqlcvmejcjjx")
    public suspend fun keyProviderSettings(argument: suspend ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsKeyProviderSettingsArgsBuilder.() -> Unit) {
        val toBeMapped =
            ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsKeyProviderSettingsArgsBuilder().applySuspend {
                argument()
            }.build()
        val mapped = of(toBeMapped)
        this.keyProviderSettings = mapped
    }

    /**
     * @param value
     */
    @JvmName("sfjunpriwbibxkng")
    public suspend fun manifestCompression(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.manifestCompression = mapped
    }

    /**
     * @param value
     */
    @JvmName("dqnrnjufxnkuifro")
    public suspend fun manifestDurationFormat(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.manifestDurationFormat = mapped
    }

    /**
     * @param value
     */
    @JvmName("nencuthdlpwpngwx")
    public suspend fun minSegmentLength(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.minSegmentLength = mapped
    }

    /**
     * @param value
     */
    @JvmName("skdwfhllvgamqnet")
    public suspend fun mode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mode = mapped
    }

    /**
     * @param value
     */
    @JvmName("loxolsxaaxcbxxgw")
    public suspend fun outputSelection(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.outputSelection = mapped
    }

    /**
     * @param value
     */
    @JvmName("mpqlmcfjmtpinsfu")
    public suspend fun programDateTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.programDateTime = mapped
    }

    /**
     * @param value
     */
    @JvmName("aujyqyvnhgvvtppb")
    public suspend fun programDateTimeClock(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.programDateTimeClock = mapped
    }

    /**
     * @param value
     */
    @JvmName("jalkwctgrkdlengm")
    public suspend fun programDateTimePeriod(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.programDateTimePeriod = mapped
    }

    /**
     * @param value
     */
    @JvmName("ixcwnhmmvkgktihj")
    public suspend fun redundantManifest(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.redundantManifest = mapped
    }

    /**
     * @param value
     */
    @JvmName("dinwqajxmwkhgpxo")
    public suspend fun segmentLength(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.segmentLength = mapped
    }

    /**
     * @param value
     */
    @JvmName("frnivhachjolpvex")
    public suspend fun segmentsPerSubdirectory(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.segmentsPerSubdirectory = mapped
    }

    /**
     * @param value
     */
    @JvmName("wrmewgmfxjvjuirn")
    public suspend fun streamInfResolution(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.streamInfResolution = mapped
    }

    /**
     * @param value Indicates ID3 frame that has the timecode.
     */
    @JvmName("phxhwkyqiahcukbn")
    public suspend fun timedMetadataId3Frame(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.timedMetadataId3Frame = mapped
    }

    /**
     * @param value
     */
    @JvmName("wvwrornsjaypuwyd")
    public suspend fun timedMetadataId3Period(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.timedMetadataId3Period = mapped
    }

    /**
     * @param value
     */
    @JvmName("vnnysvmeierkjuqa")
    public suspend fun timestampDeltaMilliseconds(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.timestampDeltaMilliseconds = mapped
    }

    /**
     * @param value
     */
    @JvmName("hwgqqubdipqngnnt")
    public suspend fun tsFileMode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.tsFileMode = mapped
    }

    internal fun build(): ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgs =
        ChannelEncoderSettingsOutputGroupOutputGroupSettingsHlsGroupSettingsArgs(
            adMarkers = adMarkers,
            baseUrlContent = baseUrlContent,
            baseUrlContent1 = baseUrlContent1,
            baseUrlManifest = baseUrlManifest,
            baseUrlManifest1 = baseUrlManifest1,
            captionLanguageMappings = captionLanguageMappings,
            captionLanguageSetting = captionLanguageSetting,
            clientCache = clientCache,
            codecSpecification = codecSpecification,
            constantIv = constantIv,
            destination = destination ?: throw PulumiNullFieldException("destination"),
            directoryStructure = directoryStructure,
            discontinuityTags = discontinuityTags,
            encryptionType = encryptionType,
            hlsCdnSettings = hlsCdnSettings,
            hlsId3SegmentTagging = hlsId3SegmentTagging,
            iframeOnlyPlaylists = iframeOnlyPlaylists,
            incompleteSegmentBehavior = incompleteSegmentBehavior,
            indexNSegments = indexNSegments,
            inputLossAction = inputLossAction,
            ivInManifest = ivInManifest,
            ivSource = ivSource,
            keepSegments = keepSegments,
            keyFormat = keyFormat,
            keyFormatVersions = keyFormatVersions,
            keyProviderSettings = keyProviderSettings,
            manifestCompression = manifestCompression,
            manifestDurationFormat = manifestDurationFormat,
            minSegmentLength = minSegmentLength,
            mode = mode,
            outputSelection = outputSelection,
            programDateTime = programDateTime,
            programDateTimeClock = programDateTimeClock,
            programDateTimePeriod = programDateTimePeriod,
            redundantManifest = redundantManifest,
            segmentLength = segmentLength,
            segmentsPerSubdirectory = segmentsPerSubdirectory,
            streamInfResolution = streamInfResolution,
            timedMetadataId3Frame = timedMetadataId3Frame,
            timedMetadataId3Period = timedMetadataId3Period,
            timestampDeltaMilliseconds = timestampDeltaMilliseconds,
            tsFileMode = tsFileMode,
        )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy