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

com.pulumi.azurenative.billing.kotlin.inputs.AzurePlanArgs.kt Maven / Gradle / Ivy

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

package com.pulumi.azurenative.billing.kotlin.inputs

import com.pulumi.azurenative.billing.inputs.AzurePlanArgs.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.jvm.JvmName

/**
 * Details of the Azure plan.
 * @property productId The ID that uniquely identifies a product.
 * @property skuDescription The sku description.
 * @property skuId The ID that uniquely identifies a sku.
 */
public data class AzurePlanArgs(
    public val productId: Output? = null,
    public val skuDescription: Output? = null,
    public val skuId: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azurenative.billing.inputs.AzurePlanArgs =
        com.pulumi.azurenative.billing.inputs.AzurePlanArgs.builder()
            .productId(productId?.applyValue({ args0 -> args0 }))
            .skuDescription(skuDescription?.applyValue({ args0 -> args0 }))
            .skuId(skuId?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [AzurePlanArgs].
 */
@PulumiTagMarker
public class AzurePlanArgsBuilder internal constructor() {
    private var productId: Output? = null

    private var skuDescription: Output? = null

    private var skuId: Output? = null

    /**
     * @param value The ID that uniquely identifies a product.
     */
    @JvmName("bvttkdpapiquoesj")
    public suspend fun productId(`value`: Output) {
        this.productId = value
    }

    /**
     * @param value The sku description.
     */
    @JvmName("kyrbiybwtedsdfpm")
    public suspend fun skuDescription(`value`: Output) {
        this.skuDescription = value
    }

    /**
     * @param value The ID that uniquely identifies a sku.
     */
    @JvmName("ycdnqakjcstglrei")
    public suspend fun skuId(`value`: Output) {
        this.skuId = value
    }

    /**
     * @param value The ID that uniquely identifies a product.
     */
    @JvmName("mtbfidirunoknrqd")
    public suspend fun productId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.productId = mapped
    }

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

    /**
     * @param value The ID that uniquely identifies a sku.
     */
    @JvmName("hcyccxssvxsiqelk")
    public suspend fun skuId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.skuId = mapped
    }

    internal fun build(): AzurePlanArgs = AzurePlanArgs(
        productId = productId,
        skuDescription = skuDescription,
        skuId = skuId,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy