package com.aiwazian.messenger.data

import androidx.annotation.Keep
import com.aiwazian.messenger.enums.ChannelType
import com.aiwazian.messenger.interfaces.Profile
import com.google.gson.annotations.SerializedName

@Keep
data class ChannelInfo(
    @Keep override val id: Long = 0,
    @Keep val ownerId: Long = 0,
    @Keep val name: String = "",
    @Keep val bio: String = "",
    @Keep val subscribers: Int = 0,
    @Keep val removedUser: Int = 0,
    @Keep var channelType: Int = ChannelType.PRIVATE.ordinal,
    @Keep var publicLink: String? = null,
    @Keep val isSubscribed: Boolean = false
) : Profile

@Keep
data class CreateChannelRequest(
    @SerializedName("name") val name: String,
    @SerializedName("bio") val bio: String? = null,
    @SerializedName("channelType") val channelType: String,
    @SerializedName("username") val username: String? = null
)

@Keep
data class CreatedEntityResponse(@SerializedName("id") val id: Long)
