// @flow
import {Component} from 'react'
import {List} from 'immutable'

import type {ConversationIDKey} from '../../constants/chat'

export type RowProps = {
  backgroundColor: string,
  conversationIDKey: ConversationIDKey,
  hasUnread: boolean,
  isMuted: boolean,
  isSelected: boolean,
  onSelectConversation: (key: ConversationIDKey) => void,
  participantNeedToRekey: boolean,
  participants: any,
  rekeyInfo: any,
  showBold: boolean,
  snippet: string,
  subColor: string,
  timestamp: string,
  unreadCount: number,
  usernameColor: string,
  youNeedToRekey: boolean,
}

export type Props = {
  nowOverride?: number, // just for dumb rendering
  rows: List<ConversationIDKey>,
  onNewChat: () => void,
  loadInbox: () => void,
  children?: React$Element<*>,
  onUntrustedInboxVisible: (conversationIDKey: ConversationIDKey) => void,
}

export default class ConversationList extends Component<void, Props, void> { }
