lib/vrchat/model/group_member.ex

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

defmodule VRChat.Model.GroupMember do
  @moduledoc """

  """

  @derive [Poison.Encoder]
  defstruct [
    :id,
    :groupId,
    :userId,
    :isRepresenting,
    :user,
    :roleIds,
    :joinedAt,
    :membershipStatus,
    :visibility,
    :isSubscribedToAnnouncements,
    :createdAt,
    :bannedAt,
    :managerNotes
  ]

  @type t :: %__MODULE__{
          :id => String.t() | nil,
          :groupId => String.t() | nil,
          :userId => String.t() | nil,
          :isRepresenting => boolean() | nil,
          :user => VRChat.Model.GroupMemberLimitedUser.t() | nil,
          :roleIds => [String.t()] | nil,
          :joinedAt => DateTime.t() | nil,
          :membershipStatus => String.t() | nil,
          :visibility => String.t() | nil,
          :isSubscribedToAnnouncements => boolean() | nil,
          :createdAt => DateTime.t() | nil,
          :bannedAt => DateTime.t() | nil,
          :managerNotes => String.t() | nil
        }
end

defimpl Poison.Decoder, for: VRChat.Model.GroupMember do
  import VRChat.Deserializer

  def decode(value, options) do
    value
    |> deserialize(:user, :struct, VRChat.Model.GroupMemberLimitedUser, options)
  end
end