
    Yi                     p    S r SSKJrJr  SSKJr  SSKJr  SSKJ	r	J
r
  \(       a  SSKJr   " S S\5      rg	)
z#Common base class for media objects    )TYPE_CHECKINGOptional)TelegramObject)DEFAULT_NONE)JSONDictODVInput)Filec                      ^  \ rS rSrSrSr SSS.S\S\S\\   S	\\	   4U 4S
 jjjjr
\\\\SS.S\\   S\\   S\\   S\\   S	\\	   SS4S jjrSrU =r$ )_BaseMedium   ak  Base class for objects representing the various media file types.
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.

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_size (:obj:`int`, optional): File size.

Attributes:
    file_id (:obj:`str`): File identifier.
    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_size (:obj:`int`): Optional. File size.


)file_id	file_sizefile_unique_idN
api_kwargsr   r   r   r   c                   > [         TU ]  US9  [        U5      U l        [        U5      U l        X0l        U R                  4U l        g )Nr   )super__init__strr   r   r   	_id_attrs)selfr   r   r   r   	__class__s        F/app/.venv/lib/python3.13/site-packages/telegram/_files/_basemedium.pyr   _BaseMedium.__init__7   sD     	J/  L#&~#6(1--/    )read_timeoutwrite_timeoutconnect_timeoutpool_timeoutr   r   r   r   r   returnr	   c          	      v   #    U R                  5       R                  U R                  UUUUUS9I Sh  vN $  N7f)zConvenience wrapper over :meth:`telegram.Bot.get_file`

For the documentation of the arguments, please see :meth:`telegram.Bot.get_file`.

Returns:
    :class:`telegram.File`

Raises:
    :class:`telegram.error.TelegramError`

)r   r   r   r   r   r   N)get_botget_filer   )r   r   r   r   r   r   s         r   r#   _BaseMedium.get_fileI   sE     ( \\^,,LL%'+%! - 
 
 	
 
s   0979)r   r   r   r   )N)__name__
__module____qualname____firstlineno____doc__	__slots__r   r   intr   r   r   r   floatr#   __static_attributes____classcell__)r   s   @r   r   r      s    , ;I $(	0 *.00 0 C=	0 X&0 0* )5)5+7(4)-
 uo
  	

 "%
 uo
 X&
 

 
r   r   N)r)   typingr   r   telegram._telegramobjectr   telegram._utils.defaultvaluer   telegram._utils.typesr   r   telegramr	   r    r   r   <module>r5      s*   & * * 3 5 4F
. F
r   