// Public API. Components land in Plan 2; adapters/kernel in Plan 3. // // `runAdapterConformance` is deliberately NOT exported here — it imports vitest and // ships from the './conformance' subpath so consumers never pull a test runner into // their production bundle. export { MessagingProvider, useAdapter } from './provider'; export { useConversations } from './hooks/use-conversations'; export { useMessages } from './hooks/use-messages'; export { useChannels } from './hooks/use-channels'; export { useMembers } from './hooks/use-members'; export { isOwnMessage } from './types'; // Rendered UI. Pair with the './styles.css' export (or override the --miu-* tokens). export { Messenger } from './components/messenger'; export { ConversationList } from './components/conversation-list'; export { ChannelBrowser } from './components/channel-browser'; export { Thread } from './components/thread'; export { ThreadPane } from './components/thread-pane'; // ── Inbox domain (work items + mail) ── export { InboxProvider, useInboxAdapter } from './inbox/provider'; export { useInbox, useMailThread, useCompose } from './inbox/hooks'; export { Inbox, MailReader } from './inbox/inbox'; export type { InboxAdapter } from './inbox/adapter'; export type { InboxItem, InboxState, MailAttachment, MailMessage, MailPerson } from './inbox/types'; export type { MessagingAdapter } from './adapter'; export type { ConversationsState } from './hooks/use-conversations'; export type { MessagesState, UiMessage } from './hooks/use-messages'; export type { ChannelsState } from './hooks/use-channels'; export type { Attachment, ChannelSummary, ChannelVisibility, Conversation, CreateChannelInput, Membership, Message, MessageEvent, Person, Reaction, SendOpts, Unsubscribe, } from './types';