events property
Stream of real-time events (messages, typing, presence, etc.).
Subscribe once at startup and route events through your own state-management layer. The stream is broadcast: multiple listeners are allowed, but each one will receive every event so dedupe on the consumer side if needed.
Implementation
@override
Stream<ChatEvent> get events => _eventController.stream;