export { MessagePipelineProvider, useActiveRoom, useMessagePipeline, useRoomMessages, useRoomMeta, useWatchRoom, } from './model/message-pipeline' export { RoomWatcher, type WatchedRoom } from './ui/room-watcher' // Public API of features/chat — the 聊天室 column of the workspace page: the // transcript, the composer, the thread/pin/member panels and the room's // own dialogs. Realtime comes from the app-level socket in '@app/services/realtime'; message // rows and transport live in '@app/domains/chat/model'. // Consumers import from '@app/domains/chat', never from deeper files. export { prefetchRoomView } from './model/prefetch' export type { ChatPanelKind, ChatViewState } from './model/view-state' export { installVoiceSession, type JoinVoiceRoomOptions, joinVoiceRoom, voiceCredentials, } from './model/voice-connection' export { ChatRoom, type ChatRoomProps } from './ui/chat-room' export { VoiceCallBar } from './ui/voice/voice-call-bar'