defmodule GitHub.Dependabot.Alert.SecurityVulnerability do
@moduledoc """
Provides struct and type for DependabotAlertSecurityVulnerability
"""
@type t :: %__MODULE__{
first_patched_version: map | nil,
package: GitHub.Dependabot.Alert.Package.t(),
severity: String.t(),
vulnerable_version_range: String.t()
}
defstruct [:first_patched_version, :package, :severity, :vulnerable_version_range]
@doc false
@spec __fields__(atom) :: keyword
def __fields__(type \\ :t)
def __fields__(:t) do
[
first_patched_version: {:nullable, :map},
package: {GitHub.Dependabot.Alert.Package, :t},
severity: :string,
vulnerable_version_range: :string
]
end
end