U
    g                     @   sH   d Z ddlmZ ddlmZ ddlmZ ddlmZ G dd deZ	dS )	zCThis module contains an object that represents a Telegram Document.    )Optional)_BaseThumbedMedium)	PhotoSize)JSONDictc                
       sR   e Zd ZdZdZdddeeee ee ee ee ee	 d fddZ
  ZS )	Documenta  This object represents a general file
    (as opposed to photos, voice messages and audio files).

    Objects of this class are comparable in terms of equality. Two objects of this class are
    considered equal, if their :attr:`file_unique_id` is equal.

    .. versionchanged:: 20.5
      |removed_thumb_note|

    Args:
        file_id (:obj:`str`): Identifier for this file, which can be used to download
            or reuse the file.
        file_unique_id (:obj:`str`): Unique identifier for this file, which is supposed to be
            the same over time and for different bots. Can't be used to download or reuse the file.
        file_name (:obj:`str`, optional): Original filename as defined by the sender.
        mime_type (:obj:`str`, optional): MIME type of the file as defined by the sender.
        file_size (:obj:`int`, optional): File size in bytes.
        thumbnail (:class:`telegram.PhotoSize`, optional): Document thumbnail as defined by the
            sender.

            .. versionadded:: 20.2

    Attributes:
        file_id (:obj:`str`): Identifier for this file, which can be used to download
            or reuse the file.
        file_unique_id (:obj:`str`): Unique identifier for this file, which is supposed to be
            the same over time and for different bots. Can't be used to download or reuse the file.
        file_name (:obj:`str`): Optional. Original filename as defined by the sender.
        mime_type (:obj:`str`): Optional. MIME type of the file as defined by the sender.
        file_size (:obj:`int`): Optional. File size in bytes.
        thumbnail (:class:`telegram.PhotoSize`): Optional. Document thumbnail as defined by the
            sender.

            .. versionadded:: 20.2

    )	file_name	mime_typeN)
api_kwargs)file_idfile_unique_idr   r   	file_size	thumbnailr	   c             	      s:   t  j|||||d |   || _|| _W 5 Q R X d S )N)r
   r   r   r   r	   )super__init__Z	_unfrozenr   r   )selfr
   r   r   r   r   r   r	   	__class__ </tmp/pip-unpacked-wheel-swnnwir2/telegram/_files/document.pyr   C   s    
zDocument.__init__)NNNN)__name__
__module____qualname____doc__	__slots__strr   intr   r   r   __classcell__r   r   r   r   r      s"   %    	r   N)
r   typingr   Z"telegram._files._basethumbedmediumr   Ztelegram._files.photosizer   Ztelegram._utils.typesr   r   r   r   r   r   <module>   s
   