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

com.pulumi.azurenative.domainregistration.kotlin.inputs.DomainPurchaseConsentArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.domainregistration.kotlin.inputs

import com.pulumi.azurenative.domainregistration.inputs.DomainPurchaseConsentArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 * Domain purchase consent object, representing acceptance of applicable legal agreements.
 * @property agreedAt Timestamp when the agreements were accepted.
 * @property agreedBy Client IP address.
 * @property agreementKeys List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under TopLevelDomain resource.
 */
public data class DomainPurchaseConsentArgs(
    public val agreedAt: Output? = null,
    public val agreedBy: Output? = null,
    public val agreementKeys: Output>? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.domainregistration.inputs.DomainPurchaseConsentArgs = com.pulumi.azurenative.domainregistration.inputs.DomainPurchaseConsentArgs.builder()
        .agreedAt(agreedAt?.applyValue({ args0 -> args0 }))
        .agreedBy(agreedBy?.applyValue({ args0 -> args0 }))
        .agreementKeys(agreementKeys?.applyValue({ args0 -> args0.map({ args0 -> args0 }) })).build()
}

/**
 * Builder for [DomainPurchaseConsentArgs].
 */
@PulumiTagMarker
public class DomainPurchaseConsentArgsBuilder internal constructor() {
    private var agreedAt: Output? = null

    private var agreedBy: Output? = null

    private var agreementKeys: Output>? = null

    /**
     * @param value Timestamp when the agreements were accepted.
     */
    @JvmName("efbxpliimvyagykb")
    public suspend fun agreedAt(`value`: Output) {
        this.agreedAt = value
    }

    /**
     * @param value Client IP address.
     */
    @JvmName("qwuicpjxhkicvbpj")
    public suspend fun agreedBy(`value`: Output) {
        this.agreedBy = value
    }

    /**
     * @param value List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under TopLevelDomain resource.
     */
    @JvmName("yroinlntnhelsnef")
    public suspend fun agreementKeys(`value`: Output>) {
        this.agreementKeys = value
    }

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

    /**
     * @param values List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under TopLevelDomain resource.
     */
    @JvmName("thobmyjedjitblvb")
    public suspend fun agreementKeys(values: List>) {
        this.agreementKeys = Output.all(values)
    }

    /**
     * @param value Timestamp when the agreements were accepted.
     */
    @JvmName("oedorrkppjupbhlh")
    public suspend fun agreedAt(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.agreedAt = mapped
    }

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

    /**
     * @param value List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under TopLevelDomain resource.
     */
    @JvmName("xwdmwipwffqiupxh")
    public suspend fun agreementKeys(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.agreementKeys = mapped
    }

    /**
     * @param values List of applicable legal agreement keys. This list can be retrieved using ListLegalAgreements API under TopLevelDomain resource.
     */
    @JvmName("cjawhqojqariaygq")
    public suspend fun agreementKeys(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.agreementKeys = mapped
    }

    internal fun build(): DomainPurchaseConsentArgs = DomainPurchaseConsentArgs(
        agreedAt = agreedAt,
        agreedBy = agreedBy,
        agreementKeys = agreementKeys,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy