package chats.data.remote.dto import com.google.gson.annotations.SerializedName data class UserBasicDto( @SerializedName("id") val id: String, @SerializedName("userName") val userName: String, @SerializedName("displayName") val displayName: String, @SerializedName("avatarUrl") val avatarUrl: String? ) data class MessageDto( @SerializedName("id") val id: String, @SerializedName("chatId") val chatId: String, @SerializedName("senderId") val senderId: String, @SerializedName("content") val content: String?, @SerializedName("type") val type: String, @SerializedName("sequenceId") val sequenceId: Int, @SerializedName("createdAt") val createdAt: String, @SerializedName("sender") val sender: UserBasicDto, @SerializedName("media") val media: List = emptyList() ) data class MediaItemDto( @SerializedName("id") val id: String, @SerializedName("type") val type: String, @SerializedName("url") val url: String ) data class ChatDto( @SerializedName("id") val id: String, @SerializedName("type") val type: String, @SerializedName("name") val name: String?, @SerializedName("avatar") val avatar: String?, @SerializedName("unreadCount") val unreadCount: Int, @SerializedName("messages") val messages: List = emptyList(), @SerializedName("members") val members: List = emptyList() ) data class ChatMemberDto( @SerializedName("userId") val userId: String, @SerializedName("user") val user: UserBasicDto? )