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

com.pulumi.vault.config.kotlin.UiCustomMessageArgs.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.4.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.vault.config.kotlin

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import com.pulumi.vault.config.UiCustomMessageArgs.builder
import com.pulumi.vault.config.kotlin.inputs.UiCustomMessageLinkArgs
import com.pulumi.vault.config.kotlin.inputs.UiCustomMessageLinkArgsBuilder
import kotlin.Any
import kotlin.Boolean
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.Map
import kotlin.jvm.JvmName

/**
 *
 * @property authenticated A flag indicating whether the custom message is displayed pre-login (false) or post-login (true)
 * @property endTime The ending time of the active period of the custom message. Can be omitted for non-expiring message
 * @property link A block containing a hyperlink associated with the custom message
 * @property messageBase64 The base64-encoded content of the custom message
 * @property namespace Target namespace. (requires Enterprise)
 * @property options A map containing additional options for the custom message
 * @property startTime The starting time of the active period of the custom message
 * @property title The title of the custom message
 * @property type The display type of custom message. Allowed values are banner and modal
 */
public data class UiCustomMessageArgs(
    public val authenticated: Output? = null,
    public val endTime: Output? = null,
    public val link: Output? = null,
    public val messageBase64: Output? = null,
    public val namespace: Output? = null,
    public val options: Output>? = null,
    public val startTime: Output? = null,
    public val title: Output? = null,
    public val type: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.vault.config.UiCustomMessageArgs =
        com.pulumi.vault.config.UiCustomMessageArgs.builder()
            .authenticated(authenticated?.applyValue({ args0 -> args0 }))
            .endTime(endTime?.applyValue({ args0 -> args0 }))
            .link(link?.applyValue({ args0 -> args0.let({ args0 -> args0.toJava() }) }))
            .messageBase64(messageBase64?.applyValue({ args0 -> args0 }))
            .namespace(namespace?.applyValue({ args0 -> args0 }))
            .options(options?.applyValue({ args0 -> args0.map({ args0 -> args0.key.to(args0.value) }).toMap() }))
            .startTime(startTime?.applyValue({ args0 -> args0 }))
            .title(title?.applyValue({ args0 -> args0 }))
            .type(type?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [UiCustomMessageArgs].
 */
@PulumiTagMarker
public class UiCustomMessageArgsBuilder internal constructor() {
    private var authenticated: Output? = null

    private var endTime: Output? = null

    private var link: Output? = null

    private var messageBase64: Output? = null

    private var namespace: Output? = null

    private var options: Output>? = null

    private var startTime: Output? = null

    private var title: Output? = null

    private var type: Output? = null

    /**
     * @param value A flag indicating whether the custom message is displayed pre-login (false) or post-login (true)
     */
    @JvmName("lvmvdjebtjyfruyd")
    public suspend fun authenticated(`value`: Output) {
        this.authenticated = value
    }

    /**
     * @param value The ending time of the active period of the custom message. Can be omitted for non-expiring message
     */
    @JvmName("bfavhigwntqcpant")
    public suspend fun endTime(`value`: Output) {
        this.endTime = value
    }

    /**
     * @param value A block containing a hyperlink associated with the custom message
     */
    @JvmName("nbvutdkwopxqiijl")
    public suspend fun link(`value`: Output) {
        this.link = value
    }

    /**
     * @param value The base64-encoded content of the custom message
     */
    @JvmName("oxotastnxnjucabi")
    public suspend fun messageBase64(`value`: Output) {
        this.messageBase64 = value
    }

    /**
     * @param value Target namespace. (requires Enterprise)
     */
    @JvmName("mwloaptwrcnfcvnu")
    public suspend fun namespace(`value`: Output) {
        this.namespace = value
    }

    /**
     * @param value A map containing additional options for the custom message
     */
    @JvmName("ayusdwttlrfcdepk")
    public suspend fun options(`value`: Output>) {
        this.options = value
    }

    /**
     * @param value The starting time of the active period of the custom message
     */
    @JvmName("aobtgaudrkhwfmty")
    public suspend fun startTime(`value`: Output) {
        this.startTime = value
    }

    /**
     * @param value The title of the custom message
     */
    @JvmName("hbpgipeohjixjoie")
    public suspend fun title(`value`: Output) {
        this.title = value
    }

    /**
     * @param value The display type of custom message. Allowed values are banner and modal
     */
    @JvmName("oljbypbiuavnpuqw")
    public suspend fun type(`value`: Output) {
        this.type = value
    }

    /**
     * @param value A flag indicating whether the custom message is displayed pre-login (false) or post-login (true)
     */
    @JvmName("ebvbksxaupjjunae")
    public suspend fun authenticated(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.authenticated = mapped
    }

    /**
     * @param value The ending time of the active period of the custom message. Can be omitted for non-expiring message
     */
    @JvmName("paotivtjqmeclnkb")
    public suspend fun endTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.endTime = mapped
    }

    /**
     * @param value A block containing a hyperlink associated with the custom message
     */
    @JvmName("mwpxqkkyxmvpsuhk")
    public suspend fun link(`value`: UiCustomMessageLinkArgs?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.link = mapped
    }

    /**
     * @param argument A block containing a hyperlink associated with the custom message
     */
    @JvmName("kkubjffytxfkpcqo")
    public suspend fun link(argument: suspend UiCustomMessageLinkArgsBuilder.() -> Unit) {
        val toBeMapped = UiCustomMessageLinkArgsBuilder().applySuspend { argument() }.build()
        val mapped = of(toBeMapped)
        this.link = mapped
    }

    /**
     * @param value The base64-encoded content of the custom message
     */
    @JvmName("gwsuknmslnsnrmya")
    public suspend fun messageBase64(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.messageBase64 = mapped
    }

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

    /**
     * @param value A map containing additional options for the custom message
     */
    @JvmName("sdirhmltngmjahdy")
    public suspend fun options(`value`: Map?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.options = mapped
    }

    /**
     * @param values A map containing additional options for the custom message
     */
    @JvmName("fogltiohoualcrgc")
    public fun options(vararg values: Pair) {
        val toBeMapped = values.toMap()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.options = mapped
    }

    /**
     * @param value The starting time of the active period of the custom message
     */
    @JvmName("sjkavmxbmsstuscy")
    public suspend fun startTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.startTime = mapped
    }

    /**
     * @param value The title of the custom message
     */
    @JvmName("mfkpmyhvnxwjvamb")
    public suspend fun title(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.title = mapped
    }

    /**
     * @param value The display type of custom message. Allowed values are banner and modal
     */
    @JvmName("cmswphyfcegmgbvj")
    public suspend fun type(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.type = mapped
    }

    internal fun build(): UiCustomMessageArgs = UiCustomMessageArgs(
        authenticated = authenticated,
        endTime = endTime,
        link = link,
        messageBase64 = messageBase64,
        namespace = namespace,
        options = options,
        startTime = startTime,
        title = title,
        type = type,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy