lib/mbta/model/alert_resource_attributes.ex

# NOTE: This file is auto generated by OpenAPI Generator 7.1.0 (https://openapi-generator.tech).
# Do not edit this file manually.

defmodule MBTA.Model.AlertResourceAttributes do
  @moduledoc """
  
  """

  @derive Jason.Encoder
  defstruct [
    :url,
    :updated_at,
    :timeframe,
    :short_header,
    :severity,
    :service_effect,
    :lifecycle,
    :informed_entity,
    :image_alternative_text,
    :image,
    :header,
    :effect_name,
    :effect,
    :description,
    :created_at,
    :cause,
    :banner,
    :active_period
  ]

  @type t :: %__MODULE__{
    :url => String.t | nil,
    :updated_at => DateTime.t | nil,
    :timeframe => String.t | nil,
    :short_header => String.t | nil,
    :severity => integer() | nil,
    :service_effect => String.t | nil,
    :lifecycle => String.t | nil,
    :informed_entity => [MBTA.Model.InformedEntity.t] | nil,
    :image_alternative_text => String.t | nil,
    :image => String.t | nil,
    :header => String.t | nil,
    :effect_name => String.t | nil,
    :effect => String.t | nil,
    :description => String.t | nil,
    :created_at => DateTime.t | nil,
    :cause => String.t | nil,
    :banner => String.t | nil,
    :active_period => [MBTA.Model.ActivePeriod.t] | nil
  }

  alias MBTA.Deserializer

  def decode(value) do
    value
     |> Deserializer.deserialize(:updated_at, :datetime, nil)
     |> Deserializer.deserialize(:informed_entity, :list, MBTA.Model.InformedEntity)
     |> Deserializer.deserialize(:created_at, :datetime, nil)
     |> Deserializer.deserialize(:active_period, :list, MBTA.Model.ActivePeriod)
  end
end