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

src.containeranalysis.v1beta1.Note.scala Maven / Gradle / Ivy

package besom.api.googlenative.containeranalysis.v1beta1

final case class Note private(
  urn: besom.types.Output[besom.types.URN],
  id: besom.types.Output[besom.types.ResourceId],
  attestationAuthority: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.AuthorityResponse],
  baseImage: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.BasisResponse],
  build: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.BuildResponse],
  createTime: besom.types.Output[String],
  deployable: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.DeployableResponse],
  discovery: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.DiscoveryResponse],
  expirationTime: besom.types.Output[String],
  intoto: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.InTotoResponse],
  kind: besom.types.Output[String],
  longDescription: besom.types.Output[String],
  name: besom.types.Output[String],
  noteId: besom.types.Output[String],
  `package`: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.PackageResponse],
  project: besom.types.Output[String],
  relatedNoteNames: besom.types.Output[scala.collection.immutable.List[String]],
  relatedUrl: besom.types.Output[scala.collection.immutable.List[besom.api.googlenative.containeranalysis.v1beta1.outputs.RelatedUrlResponse]],
  sbom: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.DocumentNoteResponse],
  sbomReference: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.SbomReferenceNoteResponse],
  shortDescription: besom.types.Output[String],
  spdxFile: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.FileNoteResponse],
  spdxPackage: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.PackageInfoNoteResponse],
  spdxRelationship: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.RelationshipNoteResponse],
  updateTime: besom.types.Output[String],
  vulnerability: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.VulnerabilityResponse],
  vulnerabilityAssessment: besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.VulnerabilityAssessmentNoteResponse]
) extends besom.CustomResource

object Note extends besom.ResourceCompanion[Note]:
  /** Resource constructor for Note. 
    * 
    * @param name [[besom.util.NonEmptyString]] The unique (stack-wise) name of the resource in Pulumi state (not on provider's side).
    *        NonEmptyString is inferred automatically from non-empty string literals, even when interpolated. If you encounter any
    *        issues with this, please try using `: NonEmptyString` type annotation. If you need to convert a dynamically generated
    *        string to NonEmptyString, use `NonEmptyString.apply` method - `NonEmptyString(str): Option[NonEmptyString]`.
    *
    * @param args [[NoteArgs]] The configuration to use to create this resource. 
    *
    * @param opts [[besom.CustomResourceOptions]] Resource options to use for this resource. 
    *        Defaults to empty options. If you need to set some options, use [[besom.opts]] function to create them, for example:
    *  
    *        {{{
    *        val res = Note(
    *          "my-resource",
    *          NoteArgs(...), // your args
    *          opts(provider = myProvider)
    *        )
    *        }}}
    */
  def apply(using ctx: besom.types.Context)(
    name: besom.util.NonEmptyString,
    args: NoteArgs,
    opts: besom.ResourceOptsVariant.Custom ?=> besom.CustomResourceOptions = besom.CustomResourceOptions()
  ): besom.types.Output[Note] =
    ctx.readOrRegisterResource[Note, NoteArgs]("google-native:containeranalysis/v1beta1:Note", name, args, opts(using besom.ResourceOptsVariant.Custom))

  private[besom] def typeToken: besom.types.ResourceType = "google-native:containeranalysis/v1beta1:Note"

  given resourceDecoder(using besom.types.Context): besom.types.ResourceDecoder[Note] =
    besom.internal.ResourceDecoder.derived[Note]

  given decoder(using besom.types.Context): besom.types.Decoder[Note] =
    besom.internal.Decoder.customResourceDecoder[Note]


  given outputOps: {} with
    extension(output: besom.types.Output[Note])
      def urn : besom.types.Output[besom.types.URN] = output.flatMap(_.urn)
      def id : besom.types.Output[besom.types.ResourceId] = output.flatMap(_.id)
      def attestationAuthority : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.AuthorityResponse] = output.flatMap(_.attestationAuthority)
      def baseImage : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.BasisResponse] = output.flatMap(_.baseImage)
      def build : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.BuildResponse] = output.flatMap(_.build)
      def createTime : besom.types.Output[String] = output.flatMap(_.createTime)
      def deployable : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.DeployableResponse] = output.flatMap(_.deployable)
      def discovery : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.DiscoveryResponse] = output.flatMap(_.discovery)
      def expirationTime : besom.types.Output[String] = output.flatMap(_.expirationTime)
      def intoto : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.InTotoResponse] = output.flatMap(_.intoto)
      def kind : besom.types.Output[String] = output.flatMap(_.kind)
      def longDescription : besom.types.Output[String] = output.flatMap(_.longDescription)
      def name : besom.types.Output[String] = output.flatMap(_.name)
      def noteId : besom.types.Output[String] = output.flatMap(_.noteId)
      def `package` : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.PackageResponse] = output.flatMap(_.`package`)
      def project : besom.types.Output[String] = output.flatMap(_.project)
      def relatedNoteNames : besom.types.Output[scala.collection.immutable.List[String]] = output.flatMap(_.relatedNoteNames)
      def relatedUrl : besom.types.Output[scala.collection.immutable.List[besom.api.googlenative.containeranalysis.v1beta1.outputs.RelatedUrlResponse]] = output.flatMap(_.relatedUrl)
      def sbom : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.DocumentNoteResponse] = output.flatMap(_.sbom)
      def sbomReference : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.SbomReferenceNoteResponse] = output.flatMap(_.sbomReference)
      def shortDescription : besom.types.Output[String] = output.flatMap(_.shortDescription)
      def spdxFile : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.FileNoteResponse] = output.flatMap(_.spdxFile)
      def spdxPackage : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.PackageInfoNoteResponse] = output.flatMap(_.spdxPackage)
      def spdxRelationship : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.RelationshipNoteResponse] = output.flatMap(_.spdxRelationship)
      def updateTime : besom.types.Output[String] = output.flatMap(_.updateTime)
      def vulnerability : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.VulnerabilityResponse] = output.flatMap(_.vulnerability)
      def vulnerabilityAssessment : besom.types.Output[besom.api.googlenative.containeranalysis.v1beta1.outputs.VulnerabilityAssessmentNoteResponse] = output.flatMap(_.vulnerabilityAssessment)





© 2015 - 2025 Weber Informatics LLC | Privacy Policy