1
0
mirror of https://github.com/InsanusMokrassar/TelegramBotAPI.git synced 2024-06-01 07:25:23 +00:00
tgbotapi/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/message/abstracts/GroupMessages.kt

45 lines
1.9 KiB
Kotlin
Raw Normal View History

package dev.inmo.tgbotapi.types.message.abstracts
2022-11-06 06:51:53 +00:00
import dev.inmo.tgbotapi.types.MessageThreadId
2023-10-11 07:07:07 +00:00
import dev.inmo.tgbotapi.types.chat.*
2022-05-01 05:52:02 +00:00
import dev.inmo.tgbotapi.types.message.content.MessageContent
2022-11-06 06:51:53 +00:00
sealed interface GroupContentMessage<T : MessageContent> : PublicContentMessage<T> {
2023-10-11 07:07:07 +00:00
override val chat: PreviewGroupChat
}
2024-02-16 15:38:28 +00:00
sealed interface PotentiallyFromUserGroupContentMessage<T : MessageContent> : GroupContentMessage<T> {
val senderBoostsCount: Int?
}
2022-11-07 18:21:16 +00:00
sealed interface ForumContentMessage<T : MessageContent> : GroupContentMessage<T>, PossiblyTopicMessage {
2023-10-11 07:07:07 +00:00
override val chat: PreviewForumChat
2022-11-07 18:21:16 +00:00
override val threadId: MessageThreadId
2022-11-06 06:51:53 +00:00
}
2021-02-07 10:54:48 +00:00
2022-11-06 06:51:53 +00:00
sealed interface FromChannelGroupContentMessage<T : MessageContent> : GroupContentMessage<T>, SignedMessage, WithSenderChatMessage {
2023-10-11 07:07:07 +00:00
val channel: PreviewChannelChat
override val senderChat: PreviewChannelChat
get() = channel
}
2021-02-07 10:54:48 +00:00
2021-12-20 08:07:45 +00:00
interface ConnectedFromChannelGroupContentMessage<T: MessageContent> : FromChannelGroupContentMessage<T>
interface UnconnectedFromChannelGroupContentMessage<T: MessageContent> : FromChannelGroupContentMessage<T>
2021-02-07 10:54:48 +00:00
interface AnonymousGroupContentMessage<T : MessageContent> : GroupContentMessage<T>, SignedMessage, WithSenderChatMessage {
2023-10-11 07:07:07 +00:00
override val senderChat: PreviewGroupChat
get() = chat
}
2021-02-07 10:54:48 +00:00
2024-02-16 15:38:28 +00:00
interface CommonGroupContentMessage<T : MessageContent> : GroupContentMessage<T>, PotentiallyFromUserGroupContentMessage<T>, FromUserMessage
2022-11-06 06:51:53 +00:00
interface FromChannelForumContentMessage<T: MessageContent> : FromChannelGroupContentMessage<T>, ForumContentMessage<T>
interface AnonymousForumContentMessage<T : MessageContent> : ForumContentMessage<T>, SignedMessage, WithSenderChatMessage {
2023-10-11 07:07:07 +00:00
override val senderChat: PreviewGroupChat
2022-11-06 06:51:53 +00:00
get() = chat
}
2024-02-16 15:38:28 +00:00
interface CommonForumContentMessage<T : MessageContent> : ForumContentMessage<T>, PotentiallyFromUserGroupContentMessage<T>, FromUserMessage