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

com.pulumi.gcp.billing.kotlin.inputs.BudgetAmountSpecifiedAmountArgs.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: 8.10.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.billing.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.billing.inputs.BudgetAmountSpecifiedAmountArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property currencyCode The 3-letter currency code defined in ISO 4217.
 * @property nanos Number of nano (10^-9) units of the amount.
 * The value must be between -999,999,999 and +999,999,999
 * inclusive. If units is positive, nanos must be positive or
 * zero. If units is zero, nanos can be positive, zero, or
 * negative. If units is negative, nanos must be negative or
 * zero. For example $-1.75 is represented as units=-1 and
 * nanos=-750,000,000.
 * - - -
 * @property units The whole units of the amount. For example if currencyCode
 * is "USD", then 1 unit is one US dollar.
 */
public data class BudgetAmountSpecifiedAmountArgs(
    public val currencyCode: Output? = null,
    public val nanos: Output? = null,
    public val units: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.billing.inputs.BudgetAmountSpecifiedAmountArgs =
        com.pulumi.gcp.billing.inputs.BudgetAmountSpecifiedAmountArgs.builder()
            .currencyCode(currencyCode?.applyValue({ args0 -> args0 }))
            .nanos(nanos?.applyValue({ args0 -> args0 }))
            .units(units?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [BudgetAmountSpecifiedAmountArgs].
 */
@PulumiTagMarker
public class BudgetAmountSpecifiedAmountArgsBuilder internal constructor() {
    private var currencyCode: Output? = null

    private var nanos: Output? = null

    private var units: Output? = null

    /**
     * @param value The 3-letter currency code defined in ISO 4217.
     */
    @JvmName("bepxpcavubjpcuik")
    public suspend fun currencyCode(`value`: Output) {
        this.currencyCode = value
    }

    /**
     * @param value Number of nano (10^-9) units of the amount.
     * The value must be between -999,999,999 and +999,999,999
     * inclusive. If units is positive, nanos must be positive or
     * zero. If units is zero, nanos can be positive, zero, or
     * negative. If units is negative, nanos must be negative or
     * zero. For example $-1.75 is represented as units=-1 and
     * nanos=-750,000,000.
     * - - -
     */
    @JvmName("secrnsltlvmwcidq")
    public suspend fun nanos(`value`: Output) {
        this.nanos = value
    }

    /**
     * @param value The whole units of the amount. For example if currencyCode
     * is "USD", then 1 unit is one US dollar.
     */
    @JvmName("xkvqbcypjkimclwk")
    public suspend fun units(`value`: Output) {
        this.units = value
    }

    /**
     * @param value The 3-letter currency code defined in ISO 4217.
     */
    @JvmName("aoebydifjcvkajyr")
    public suspend fun currencyCode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.currencyCode = mapped
    }

    /**
     * @param value Number of nano (10^-9) units of the amount.
     * The value must be between -999,999,999 and +999,999,999
     * inclusive. If units is positive, nanos must be positive or
     * zero. If units is zero, nanos can be positive, zero, or
     * negative. If units is negative, nanos must be negative or
     * zero. For example $-1.75 is represented as units=-1 and
     * nanos=-750,000,000.
     * - - -
     */
    @JvmName("xgibmnefnkambkic")
    public suspend fun nanos(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.nanos = mapped
    }

    /**
     * @param value The whole units of the amount. For example if currencyCode
     * is "USD", then 1 unit is one US dollar.
     */
    @JvmName("uxmdgivamnmonyqk")
    public suspend fun units(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.units = mapped
    }

    internal fun build(): BudgetAmountSpecifiedAmountArgs = BudgetAmountSpecifiedAmountArgs(
        currencyCode = currencyCode,
        nanos = nanos,
        units = units,
    )
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy