import type {
  GetConversationResponse,
  GetUserResponse,
  ListConversationMessagesResponse,
  ListParticipantsResponse,
} from '../../../gen/client'
import type { MessageStreamSnapshot } from './messageStream'

export type Initialize = {
  type: 'init'
  data: {
    conversation: GetConversationResponse['conversation']
    messages: ListConversationMessagesResponse['messages']
    participants: ListParticipantsResponse['participants']
    user: GetUserResponse['user'] & {
      userKey: string
    }
    messageStreams?: MessageStreamSnapshot[]
  }
}
