U
    ‰¾úg  ã                   @   sL   d Z ddlmZ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 represent a Telegram bots name.é    )ÚFinalÚOptional)Ú	constants)ÚTelegramObject)ÚJSONDictc                       sL   e Zd ZU dZdZddœeee dœ‡ fdd„Ze	j
jZee ed< ‡  ZS )	ÚBotNameaN  This object represents the bot's name.

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

    .. versionadded:: 20.3

    Args:
        name (:obj:`str`): The bot's name.

    Attributes:
        name (:obj:`str`): The bot's name.

    )ÚnameN©Ú
api_kwargs)r   r
   c                   s*   t ƒ j|d || _| jf| _|  ¡  d S )Nr	   )ÚsuperÚ__init__r   Z	_id_attrsZ_freeze)Úselfr   r
   ©Ú	__class__© ú5/tmp/pip-unpacked-wheel-swnnwir2/telegram/_botname.pyr   -   s    
zBotName.__init__Ú
MAX_LENGTH)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__Ústrr   r   r   r   ZBotNameLimitZMAX_NAME_LENGTHr   r   ÚintÚ__annotations__Ú__classcell__r   r   r   r   r      s
   
r   N)r   Útypingr   r   Ztelegramr   Ztelegram._telegramobjectr   Ztelegram._utils.typesr   r   r   r   r   r   Ú<module>   s
   