flutter_chat_kits library

Classes

AudioMessage
BaseNotifier
BotProfile
BotProfileKeys
ChatAiAudioReplyRequest
ChatAiComeBackMessageRequest
ChatAiDelegate
ChatAiFirstMessageRequest
ChatAiImageReplyRequest
ChatAiLeaveMessageRequest
ChatAiLinkReplyRequest
ChatAiReplyRequest
ChatAiRequest
ChatAiTextReplyRequest
ChatAiVideoReplyRequest
ChatAppbar
ChatAppbarData
ChatCacheDelegate
ChatConnectionBanner
Watches RoomManager connectivity + pending queue and rebuilds when either changes. Pass a builder to render your own banner UI; or use the default banner via ChatConnectionBanner.defaultBuilder.
ChatCustomNotification
ChatDeleteMessageNotification
ChatErrorReporter
Pluggable error reporter. App provides an implementation (Crashlytics, Sentry, custom logger) and chat layer routes all caught exceptions to it instead of swallowing them silently.
ChatFieldValueNormalizer
ChatHelper
ChatInbox
ChatManager
ChatMessage
ChatMessageDelegate
ChatModelConfigs
ChatNewMessageNotification
ChatNewRoomNotification
ChatNotification
ChatNotificationContent
ChatNotificationDelegate
ChatProfileDelegate
ChatRoomDelegate
ChatSilentNotification
ChatStatusDelegate
ChatTypingDelegate
ChatUserSettingsDelegate
ChatValue
ChatValueAdd
ChatValueDelete
ChatValueIncrement
ChatValueRemove
ChatValueTimestamp
ChatVisibilityScope
CustomMessage
DefaultChatErrorReporter
Default reporter — logs to debug console only. Suitable for dev builds. Production apps should provide a real reporter via RoomManager.init.
DirectRoom
FileUploadHelper
Static helpers for inferring file extensions and storage-prefix labels from file paths and MessageType fallbacks.
GroupRoom
ImageMessage
LinkMessage
Message
MessageKeys
MessageUploadData
PaginatedMessageStream
A message stream with pagination control.
Profile
RetryHelper
Retries an async operation with exponential backoff and jitter.
Room
RoomKeys
RoomManager
RoomManagerBase
Status
StatusKeys
TextMessage
Typing
TypingKeys
UserProfile
UserProfileKeys
VideoMessage
VisibilityInfo

Enums

ChatConnectionState
Connection state for banner rendering.
MessageStatus
MessageType

Mixins

AutoRefreshMixin
BotResponseMixin
ManagerLifecycleMixin
MessageMixin
NotificationMixin
OfflineQueueMixin
Queues messages locally when offline and replays them when connectivity is restored. Each entry preserves the original message + notification settings so the eventual send is identical to a live send.
ParticipantMixin
PresenceMixin
RoomCrudMixin
RoomToggleMixin
RoomUpdateMixin
SubscriptionMixin
TokenMixin

Constants

kBotPrefix → const String

Properties

currentPlatform String
no setter

Typedefs

ChatConnectionBannerBuilder = Widget Function(BuildContext context, ChatConnectionState state, int pendingCount)
Builder for the connection banner. Receives the current state and queued message count so apps can render their own design.
ChatInboxDirectBuilder = Widget Function(BuildContext context, DirectRoom room, Profile profile, Status status, Typing? typing)
ChatInboxGroupBuilder = Widget Function(BuildContext context, GroupRoom room, Profile profile, Status status, List<Typing> typings)
ChatInboxVisibilityBuilder = Widget Function(BuildContext context, String id, Widget child, ChatInboxVisibilityCallback callback)
ChatInboxVisibilityCallback = void Function(VisibilityInfo info)
ChatMessageBuilder<T extends Message> = Widget Function(BuildContext context, T message)
ChatMessageVisibilityCallback = void Function(VisibilityInfo info)
ChatMessageVisibilityDetectorBuilder = Widget Function(BuildContext context, String id, Widget child, ChatMessageVisibilityCallback callback)
MessageExtra = Map<String, dynamic>
NotificationSender = Future<Profile?> Function()
OnChatPageOpeningCallback<T extends Object?> = Future<T?> Function(ChatManager manager)
OnDeniedToSendMessage = void Function(Room room)
OnDeniedToSendNotification = void Function(Room, UserProfile)
ProfileExtra = Map<String, dynamic>
RoomExtra = Map<String, dynamic>
VerifyToSendMessage = bool Function(Room room)
VerifyToSendNotification = bool Function(Room, UserProfile)