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 )zEThis module contains an object that represents a Telegram WebAppData.    )Optional)TelegramObject)JSONDictc                       s8   e Zd ZdZdZddeeee d fddZ  Z	S )
WebAppDataa  Contains data sent from a `Web App <https://core.telegram.org/bots/webapps>`_ to the bot.

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

    Examples:
        :any:`Webapp Bot <examples.webappbot>`

    .. versionadded:: 20.0

    Args:
        data (:obj:`str`): The data. Be aware that a bad client can send arbitrary data in this
            field.
        button_text (:obj:`str`): Text of the :paramref:`~telegram.KeyboardButton.web_app` keyboard
            button, from which the Web App was opened.

    Attributes:
        data (:obj:`str`): The data. Be aware that a bad client can send arbitrary data in this
            field.
        button_text (:obj:`str`): Text of the :paramref:`~telegram.KeyboardButton.web_app` keyboard
            button, from which the Web App was opened.

            Warning:
                Be aware that a bad client can send arbitrary data in this field.
    )button_textdataN
api_kwargs)r   r   r	   c                   s4   t  j|d || _|| _| j| jf| _|   d S )Nr   )super__init__r   r   Z	_id_attrsZ_freeze)selfr   r   r	   	__class__ 8/tmp/pip-unpacked-wheel-swnnwir2/telegram/_webappdata.pyr   8   s
    zWebAppData.__init__)
__name__
__module____qualname____doc__	__slots__strr   r   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   