export { ChannelHttpFallback } from "./fallback";
export { ChannelSocketClient, channelSocket } from "./manager";
export { channelSocketStore, useChannelSocketState } from "./state";
export { DedupManager } from "./dedup";
export { ReconnectManager } from "./reconnect";
export { RoomSubscriptionManager } from "./subscription";
export type {
  ChannelConnectionStatus,
  ChannelErrorPayload,
  ChannelEventHandler,
  ChannelMessage,
  ChannelOutEvent,
  ChannelRequestOptions,
  ChannelResponse,
  ChannelSocketOptions,
  ChannelSocketState,
  ChannelTransport,
  WsTokenRequest,
  WsTokenResponse,
} from "./types";
export type {
  AttachmentUploadedService,
  BannedService,
  CategoryCreatedService,
  CategoryDeletedService,
  CategoryUpdatedService,
  ConversationMutedService,
  ConversationPinnedService,
  ConversationSummary,
  ConversationUnmutedService,
  ConversationUnpinnedService,
  ConversationUnreadUpdatedService,
  CustomStatusUpdatedService,
  DraftClearedService,
  DraftSavedService,
  InviteAcceptedService,
  InviteCreatedService,
  MessageEditedService,
  MessageForwardedService,
  MessageListService,
  MessageNewService,
  MessageReadBatchService,
  MessageReaderEntry,
  MessageReadersService,
  MessageReadService,
  MessageRevokedService,
  MessageStarredService,
  MessageStreamChunkService,
  MessageStreamDoneService,
  MessageStreamStartService,
  MessageUnstarredService,
  MemberJoinedService,
  MemberRemovedService,
  NotifyCreatedService,
  NotifyReadService,
  PinAddedService,
  PinRemovedService,
  PresenceChangedService,
  ReactionAddedService,
  ReactionBatchUpdatedService,
  ReactionGroup,
  ReactionRemovedService,
  ReadReceiptService,
  RoomCreatedService,
  RoomDeletedService,
  RoomInfo,
  RoomMovedService,
  RoomRenamedService,
  RoomSettingsUpdatedService,
  RoomTopicUpdatedService,
  SearchResultService,
  SearchMessageHitService,
  StarredMessageEntry,
  TypingStartService,
  TypingStopService,
  ThreadArchivedService,
  ThreadCreatedService,
  ThreadResolvedService,
  ThreadUpdatedService,
  UnbannedService,
  UserPresenceStatus,
  UserInfo,
  VoiceChannelJoinedService,
  VoiceChannelLeftService,
  WorkspaceInfo,
  WorkspaceRoomCreatedService,
  WorkspaceRoomDeletedService,
  WsError,
  WsOutEvent,
} from "./schema";
// IndexedDB message cache
export { db } from "@/lib/db";
export { MessageRepository } from "@/lib/db/repository";
export type { CachedMessage, RoomSyncMeta } from "@/lib/db";
