# NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
# https://openapi-generator.tech
# Do not edit the class manually.
defmodule ChatKitty.Model.TextMessageResource do
@moduledoc """
The message in which the user was mentioned
"""
@derive [Poison.Encoder]
defstruct [
:"type",
:"id",
:"channelId",
:"createdTime",
:"groupTag",
:"lastEditedTime",
:"nestedLevel",
:"properties",
:"reactions",
:"repliesCount",
:"_links",
:"body",
:"links",
:"mentions",
:"user"
]
@type t :: %__MODULE__{
:"type" => String.t,
:"id" => integer(),
:"channelId" => integer(),
:"createdTime" => DateTime.t,
:"groupTag" => String.t | nil,
:"lastEditedTime" => DateTime.t | nil,
:"nestedLevel" => integer(),
:"properties" => %{optional(String.t) => AnyType},
:"reactions" => [ChatKitty.Model.MessageReactionsSummaryProperties.t] | nil,
:"repliesCount" => integer() | nil,
:"_links" => %{optional(String.t) => ChatKitty.Model.Link.t} | nil,
:"body" => String.t,
:"links" => [ChatKitty.Model.MessageLinkProperties.t] | nil,
:"mentions" => [ChatKitty.Model.MessageMentionProperties.t] | nil,
:"user" => ChatKitty.Model.ChatUserProperties.t
}
end
defimpl Poison.Decoder, for: ChatKitty.Model.TextMessageResource do
import ChatKitty.Deserializer
def decode(value, options) do
value
|> deserialize(:"properties", :map, ChatKitty.Model.AnyType, options)
|> deserialize(:"reactions", :list, ChatKitty.Model.MessageReactionsSummaryProperties, options)
|> deserialize(:"_links", :map, ChatKitty.Model.Link, options)
|> deserialize(:"links", :list, ChatKitty.Model.MessageLinkProperties, options)
|> deserialize(:"mentions", :list, ChatKitty.Model.MessageMentionProperties, options)
|> deserialize(:"user", :struct, ChatKitty.Model.ChatUserProperties, options)
end
end