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

import type {MessageID, AttachmentMessage, ServerMessage, FollowingMap, MetaDataMap} from '../../../constants/chat'

export type ProgressBarProps = {
  text: string,
  progress: number,
  style?: Object,
}

export class ProgressBar extends Component<void, ProgressBarProps, void> {}

export type ImageIconProps = {
  type: 'Downloaded' | 'Downloading',
  style: Object,
}

export class ImageIcon extends Component<void, ImageIconProps, void> {}

export type Props = {
  message: AttachmentMessage,
  includeHeader: boolean,
  isFirstNewMessage: boolean,
  onLoadAttachment: (messageID: MessageID, filename: string) => void,
  onAction: (message: ServerMessage, event: any) => void,
  onOpenInFileUI: (path: string) => void,
  onOpenInPopup: (message: AttachmentMessage) => void,
  style: Object,
  you: string,
  followingMap: FollowingMap,
  metaDataMap: MetaDataMap,
}

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