import 'package:freezed_annotation/freezed_annotation.dart'; part 'chat_event.freezed.dart'; @freezed class ChatEvent with _$ChatEvent { const factory ChatEvent.started() = ChatEventStarted; const factory ChatEvent.chatsLoaded() = ChatEventChatsLoaded; const factory ChatEvent.chatSelected(String chatId) = ChatEventChatSelected; const factory ChatEvent.messagesRequested(String chatId, {String? lastMessageId}) = ChatEventMessagesRequested; const factory ChatEvent.messageSent(String chatId, String content) = ChatEventMessageSent; const factory ChatEvent.messageRead(String chatId, String messageId) = ChatEventMessageRead; const factory ChatEvent.chatCreated(String title, List participantIds) = ChatEventChatCreated; }