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

src.bigqueryreservation.v1.CapacityCommitmentArgs.scala Maven / Gradle / Ivy

package besom.api.googlenative.bigqueryreservation.v1

final case class CapacityCommitmentArgs private(
  capacityCommitmentId: besom.types.Output[scala.Option[String]],
  edition: besom.types.Output[scala.Option[besom.api.googlenative.bigqueryreservation.v1.enums.CapacityCommitmentEdition]],
  enforceSingleAdminProjectPerOrg: besom.types.Output[scala.Option[Boolean]],
  location: besom.types.Output[scala.Option[String]],
  multiRegionAuxiliary: besom.types.Output[scala.Option[Boolean]],
  plan: besom.types.Output[scala.Option[besom.api.googlenative.bigqueryreservation.v1.enums.CapacityCommitmentPlan]],
  project: besom.types.Output[scala.Option[String]],
  renewalPlan: besom.types.Output[scala.Option[besom.api.googlenative.bigqueryreservation.v1.enums.CapacityCommitmentRenewalPlan]],
  slotCount: besom.types.Output[scala.Option[String]]
)

object CapacityCommitmentArgs:
  def apply(
    capacityCommitmentId: besom.types.Input.Optional[String] = scala.None,
    edition: besom.types.Input.Optional[besom.api.googlenative.bigqueryreservation.v1.enums.CapacityCommitmentEdition] = scala.None,
    enforceSingleAdminProjectPerOrg: besom.types.Input.Optional[Boolean] = scala.None,
    location: besom.types.Input.Optional[String] = scala.None,
    multiRegionAuxiliary: besom.types.Input.Optional[Boolean] = scala.None,
    plan: besom.types.Input.Optional[besom.api.googlenative.bigqueryreservation.v1.enums.CapacityCommitmentPlan] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    renewalPlan: besom.types.Input.Optional[besom.api.googlenative.bigqueryreservation.v1.enums.CapacityCommitmentRenewalPlan] = scala.None,
    slotCount: besom.types.Input.Optional[String] = scala.None
  )(using besom.types.Context): CapacityCommitmentArgs =
    new CapacityCommitmentArgs(
      capacityCommitmentId = capacityCommitmentId.asOptionOutput(isSecret = false),
      edition = edition.asOptionOutput(isSecret = false),
      enforceSingleAdminProjectPerOrg = enforceSingleAdminProjectPerOrg.asOptionOutput(isSecret = false),
      location = location.asOptionOutput(isSecret = false),
      multiRegionAuxiliary = multiRegionAuxiliary.asOptionOutput(isSecret = false),
      plan = plan.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      renewalPlan = renewalPlan.asOptionOutput(isSecret = false),
      slotCount = slotCount.asOptionOutput(isSecret = false)
    )

  given encoder(using besom.types.Context): besom.types.Encoder[CapacityCommitmentArgs] =
    besom.internal.Encoder.derived[CapacityCommitmentArgs]
  given argsEncoder(using besom.types.Context): besom.types.ArgsEncoder[CapacityCommitmentArgs] =
    besom.internal.ArgsEncoder.derived[CapacityCommitmentArgs]






© 2015 - 2025 Weber Informatics LLC | Privacy Policy