tgbotapi/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/member/AdministratorChatMemberImpl.kt

46 lines
1.7 KiB
Kotlin
Raw Normal View History

2022-04-21 17:24:01 +00:00
package dev.inmo.tgbotapi.types.chat.member
import dev.inmo.tgbotapi.types.*
2022-04-21 18:16:41 +00:00
import dev.inmo.tgbotapi.types.chat.User
import dev.inmo.tgbotapi.utils.internal.ClassCastsExcluded
2022-04-21 17:24:01 +00:00
import kotlinx.serialization.*
@Serializable
@ClassCastsExcluded
2022-04-21 17:24:01 +00:00
data class AdministratorChatMemberImpl(
@SerialName(userField)
override val user: User,
@SerialName(canBeEditedField)
override val canBeEdited: Boolean = false,
@SerialName(canChangeInfoField)
override val canChangeInfo: Boolean = false,
@SerialName(canPostMessagesField)
override val canPostMessages: Boolean = false,
@SerialName(canEditMessagesField)
override val canEditMessages: Boolean = false,
@SerialName(canDeleteMessagesField)
override val canRemoveMessages: Boolean = false,
@SerialName(canInviteUsersField)
override val canInviteUsers: Boolean = false,
@SerialName(canRestrictMembersField)
override val canRestrictMembers: Boolean = false,
@SerialName(canPinMessagesField)
override val canPinMessages: Boolean = false,
@SerialName(canPromoteMembersField)
override val canPromoteMembers: Boolean = false,
@SerialName(canManageVideoChatsField)
override val canManageVideoChats: Boolean = false,
@SerialName(canManageChatField)
override val canManageChat: Boolean = false,
@SerialName(isAnonymousField)
override val isAnonymous: Boolean = false,
@SerialName(customTitleField)
2022-11-06 08:18:34 +00:00
override val customTitle: String? = null,
@SerialName(canManageTopicsField)
override val canManageTopics: Boolean = false
2022-04-21 17:24:01 +00:00
) : AdministratorChatMember {
@SerialName(statusField)
@Required
private val type: String = "administrator"
}