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

src.compute.beta.RegionCommitmentArgs.scala Maven / Gradle / Ivy

The newest version!
package besom.api.googlenative.compute.beta

final case class RegionCommitmentArgs private(
  autoRenew: besom.types.Output[scala.Option[Boolean]],
  category: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.RegionCommitmentCategory]],
  description: besom.types.Output[scala.Option[String]],
  licenseResource: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.inputs.LicenseResourceCommitmentArgs]],
  mergeSourceCommitments: besom.types.Output[scala.Option[scala.collection.immutable.List[String]]],
  name: besom.types.Output[scala.Option[String]],
  plan: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.RegionCommitmentPlan]],
  project: besom.types.Output[scala.Option[String]],
  region: besom.types.Output[String],
  requestId: besom.types.Output[scala.Option[String]],
  reservations: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.beta.inputs.ReservationArgs]]],
  resources: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.compute.beta.inputs.ResourceCommitmentArgs]]],
  splitSourceCommitment: besom.types.Output[scala.Option[String]],
  `type`: besom.types.Output[scala.Option[besom.api.googlenative.compute.beta.enums.RegionCommitmentType]]
)

object RegionCommitmentArgs:
  def apply(
    autoRenew: besom.types.Input.Optional[Boolean] = scala.None,
    category: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.RegionCommitmentCategory] = scala.None,
    description: besom.types.Input.Optional[String] = scala.None,
    licenseResource: besom.types.Input.Optional[besom.api.googlenative.compute.beta.inputs.LicenseResourceCommitmentArgs] = scala.None,
    mergeSourceCommitments: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[String]]] = scala.None,
    name: besom.types.Input.Optional[String] = scala.None,
    plan: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.RegionCommitmentPlan] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    region: besom.types.Input[String],
    requestId: besom.types.Input.Optional[String] = scala.None,
    reservations: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.beta.inputs.ReservationArgs]]] = scala.None,
    resources: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.compute.beta.inputs.ResourceCommitmentArgs]]] = scala.None,
    splitSourceCommitment: besom.types.Input.Optional[String] = scala.None,
    `type`: besom.types.Input.Optional[besom.api.googlenative.compute.beta.enums.RegionCommitmentType] = scala.None
  )(using besom.types.Context): RegionCommitmentArgs =
    new RegionCommitmentArgs(
      autoRenew = autoRenew.asOptionOutput(isSecret = false),
      category = category.asOptionOutput(isSecret = false),
      description = description.asOptionOutput(isSecret = false),
      licenseResource = licenseResource.asOptionOutput(isSecret = false),
      mergeSourceCommitments = mergeSourceCommitments.asOptionOutput(isSecret = false),
      name = name.asOptionOutput(isSecret = false),
      plan = plan.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      region = region.asOutput(isSecret = false),
      requestId = requestId.asOptionOutput(isSecret = false),
      reservations = reservations.asOptionOutput(isSecret = false),
      resources = resources.asOptionOutput(isSecret = false),
      splitSourceCommitment = splitSourceCommitment.asOptionOutput(isSecret = false),
      `type` = `type`.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy