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

com.pulumi.azure.media.kotlin.outputs.TransformOutputCustomPreset.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.media.kotlin.outputs

import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.collections.Map

/**
 *
 * @property codecs One or more `codec` blocks as defined above.
 * @property experimentalOptions Dictionary containing key value pairs for parameters not exposed in the preset itself.
 * @property filter A `filter` block as defined below.
 * @property formats One or more `format` blocks as defined below.
 */
public data class TransformOutputCustomPreset(
    public val codecs: List,
    public val experimentalOptions: Map? = null,
    public val filter: TransformOutputCustomPresetFilter? = null,
    public val formats: List,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.azure.media.outputs.TransformOutputCustomPreset): TransformOutputCustomPreset = TransformOutputCustomPreset(
            codecs = javaType.codecs().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azure.media.kotlin.outputs.TransformOutputCustomPresetCodec.Companion.toKotlin(args0)
                })
            }),
            experimentalOptions = javaType.experimentalOptions().map({ args0 ->
                args0.key.to(args0.value)
            }).toMap(),
            filter = javaType.filter().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azure.media.kotlin.outputs.TransformOutputCustomPresetFilter.Companion.toKotlin(args0)
                })
            }).orElse(null),
            formats = javaType.formats().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.azure.media.kotlin.outputs.TransformOutputCustomPresetFormat.Companion.toKotlin(args0)
                })
            }),
        )
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy