U
    g                     @   s<   d Z ddlmZ ddlmZ ddlmZ G dd deZdS )zQThis module contains objects related to the write access allowed service message.    )Optional)TelegramObject)JSONDictc                       sH   e Zd ZdZdZdddee ee ee ee d fddZ	  Z
S )	WriteAccessAllowedab  
    This object represents a service message about a user allowing a bot to write messages after
    adding it to the attachment menu, launching a Web App from a link, or accepting an explicit
    request from a Web App sent by the method
    `requestWriteAccess <https://core.telegram.org/bots/webapps#initializing-mini-apps>`_.

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

    .. versionadded:: 20.0
    .. versionchanged:: 20.6
       Added custom equality comparison for objects of this class.

    Args:
        web_app_name (:obj:`str`, optional): Name of the Web App, if the access was granted when
            the Web App was launched from a link.

            .. versionadded:: 20.3
        from_request (:obj:`bool`, optional): :obj:`True`, if the access was granted after the user
         accepted an explicit request from a Web App sent by the method
         `requestWriteAccess <https://core.telegram.org/bots/webapps#initializing-mini-apps>`_.

         .. versionadded:: 20.6
        from_attachment_menu (:obj:`bool`, optional): :obj:`True`, if the access was granted when
         the bot was added to the attachment or side menu.

         .. versionadded:: 20.6

    Attributes:
        web_app_name (:obj:`str`): Optional. Name of the Web App, if the access was granted when
            the Web App was launched from a link.

            .. versionadded:: 20.3
        from_request (:obj:`bool`): Optional. :obj:`True`, if the access was granted after the user
            accepted an explicit request from a Web App.

            .. versionadded:: 20.6
        from_attachment_menu (:obj:`bool`): Optional. :obj:`True`, if the access was granted when
            the bot was added to the attachment or side menu.

            .. versionadded:: 20.6

    )from_attachment_menufrom_requestweb_app_nameN
api_kwargs)r   r   r   r
   c                   s6   t  j|d || _|| _|| _| jf| _|   d S )Nr	   )super__init__r   r   r   Z	_id_attrsZ_freeze)selfr   r   r   r
   	__class__ @/tmp/pip-unpacked-wheel-swnnwir2/telegram/_writeaccessallowed.pyr   I   s    
zWriteAccessAllowed.__init__)NNN)__name__
__module____qualname____doc__	__slots__r   strboolr   r   __classcell__r   r   r   r   r      s   ,   r   N)r   typingr   Ztelegram._telegramobjectr   Ztelegram._utils.typesr   r   r   r   r   r   <module>   s   