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

defmodule Nuon.Model.AppAppInstaller do
  @moduledoc """
  
  """

  @derive Jason.Encoder
  defstruct [
    :app,
    :app_id,
    :app_installer_metadata,
    :created_at,
    :created_by,
    :created_by_id,
    :id,
    :installer_url,
    :org_id,
    :slug,
    :updated_at
  ]

  @type t :: %__MODULE__{
    :app => Nuon.Model.AppApp.t | nil,
    :app_id => String.t | nil,
    :app_installer_metadata => Nuon.Model.AppAppInstallerMetadata.t | nil,
    :created_at => String.t | nil,
    :created_by => Nuon.Model.AppUserToken.t | nil,
    :created_by_id => String.t | nil,
    :id => String.t | nil,
    :installer_url => String.t | nil,
    :org_id => String.t | nil,
    :slug => String.t | nil,
    :updated_at => String.t | nil
  }

  alias Nuon.Deserializer

  def decode(value) do
    value
     |> Deserializer.deserialize(:app, :struct, Nuon.Model.AppApp)
     |> Deserializer.deserialize(:app_installer_metadata, :struct, Nuon.Model.AppAppInstallerMetadata)
     |> Deserializer.deserialize(:created_by, :struct, Nuon.Model.AppUserToken)
  end
end

