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

src.file.v1.InstanceArgs.scala Maven / Gradle / Ivy

The newest version!
package besom.api.googlenative.file.v1

final case class InstanceArgs private(
  description: besom.types.Output[scala.Option[String]],
  etag: besom.types.Output[scala.Option[String]],
  fileShares: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.file.v1.inputs.FileShareConfigArgs]]],
  instanceId: besom.types.Output[String],
  kmsKeyName: besom.types.Output[scala.Option[String]],
  labels: besom.types.Output[scala.Option[scala.Predef.Map[String, String]]],
  location: besom.types.Output[scala.Option[String]],
  networks: besom.types.Output[scala.Option[scala.collection.immutable.List[besom.api.googlenative.file.v1.inputs.NetworkConfigArgs]]],
  project: besom.types.Output[scala.Option[String]],
  tier: besom.types.Output[scala.Option[besom.api.googlenative.file.v1.enums.InstanceTier]]
)

object InstanceArgs:
  def apply(
    description: besom.types.Input.Optional[String] = scala.None,
    etag: besom.types.Input.Optional[String] = scala.None,
    fileShares: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.file.v1.inputs.FileShareConfigArgs]]] = scala.None,
    instanceId: besom.types.Input[String],
    kmsKeyName: besom.types.Input.Optional[String] = scala.None,
    labels: besom.types.Input.Optional[scala.Predef.Map[String, besom.types.Input[String]]] = scala.None,
    location: besom.types.Input.Optional[String] = scala.None,
    networks: besom.types.Input.Optional[scala.collection.immutable.List[besom.types.Input[besom.api.googlenative.file.v1.inputs.NetworkConfigArgs]]] = scala.None,
    project: besom.types.Input.Optional[String] = scala.None,
    tier: besom.types.Input.Optional[besom.api.googlenative.file.v1.enums.InstanceTier] = scala.None
  )(using besom.types.Context): InstanceArgs =
    new InstanceArgs(
      description = description.asOptionOutput(isSecret = false),
      etag = etag.asOptionOutput(isSecret = false),
      fileShares = fileShares.asOptionOutput(isSecret = false),
      instanceId = instanceId.asOutput(isSecret = false),
      kmsKeyName = kmsKeyName.asOptionOutput(isSecret = false),
      labels = labels.asOptionOutput(isSecret = false),
      location = location.asOptionOutput(isSecret = false),
      networks = networks.asOptionOutput(isSecret = false),
      project = project.asOptionOutput(isSecret = false),
      tier = tier.asOptionOutput(isSecret = false)
    )

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






© 2015 - 2025 Weber Informatics LLC | Privacy Policy