lib/spatio/model/public_invitation_payload.ex

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

defmodule Spatio.Model.PublicInvitationPayload do
  @moduledoc """
  Returned by `GET /invitations/{token}` (unauthenticated). Lets the renderer show invitation details (workspace name, inviter, role) before the user signs in. 
  """

  @derive JSON.Encoder
  defstruct [
    :kind,
    :id,
    :workspaceId,
    :organizationId,
    :email,
    :role,
    :status,
    :expiresAt,
    :createdAt,
    :workspace,
    :organization,
    :invitedBy
  ]

  @type t :: %__MODULE__{
    :kind => String.t,
    :id => String.t,
    :workspaceId => String.t | nil,
    :organizationId => String.t | nil,
    :email => String.t,
    :role => String.t,
    :status => String.t,
    :expiresAt => DateTime.t | nil,
    :createdAt => DateTime.t | nil,
    :workspace => %{optional(String.t) => any()} | nil,
    :organization => %{optional(String.t) => any()} | nil,
    :invitedBy => %{optional(String.t) => any()} | nil
  }

  def decode(value) do
    value
  end
end