
    di1                     r    d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 erddlmZ  G d d	e          Zd
S )zDThis module contains an object that represents a Telegram OrderInfo.    )TYPE_CHECKING)ShippingAddress)TelegramObject)de_json_optional)JSONDict)Botc                        e Zd ZdZdZ	 	 	 	 ddddedz  dedz  dedz  dedz  d	edz  f
 fd
Ze	ddedddd f fd            Z
 xZS )	OrderInfoa5  This object represents information about an order.

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

    Args:
        name (:obj:`str`, optional): User name.
        phone_number (:obj:`str`, optional): User's phone number.
        email (:obj:`str`, optional): User email.
        shipping_address (:class:`telegram.ShippingAddress`, optional): User shipping address.

    Attributes:
        name (:obj:`str`): Optional. User name.
        phone_number (:obj:`str`): Optional. User's phone number.
        email (:obj:`str`): Optional. User email.
        shipping_address (:class:`telegram.ShippingAddress`): Optional. User shipping address.

    )emailnamephone_numbershipping_addressN
api_kwargsr   r   r   r   r   c                    t                                          |           || _        || _        || _        || _        | j        | j        | j        | j        f| _        |                                  d S )Nr   )super__init__r   r   r   r   	_id_attrs_freeze)selfr   r   r   r   r   	__class__s         X/root/projects/qq-shell/venv/lib/python3.11/site-packages/telegram/_payment/orderinfo.pyr   zOrderInfo.__init__7   si     	J/// $	(4!&
8H)T%6
DDYZ    databotz
Bot | Nonereturnc                     |                      |          }t          |                    d          t          |          |d<   t	                                          ||          S )z,See :meth:`telegram.TelegramObject.de_json`.r   )r   r   )_parse_datar   getr   r   de_json)clsr   r   r   s      r   r    zOrderInfo.de_jsonJ   s[     t$$#3HH'((/3$
 $
  wwDc222r   )NNNN)N)__name__
__module____qualname____doc__	__slots__strr   r   r   classmethodr    __classcell__)r   s   @r   r
   r
       s         ( FI  #' 37 '+  Dj Dj Tz	
 *D0 tO     & 3 38 3, 3+ 3 3 3 3 3 [3 3 3 3 3r   r
   N)r%   typingr   !telegram._payment.shippingaddressr   telegram._telegramobjectr   telegram._utils.argumentparsingr   telegram._utils.typesr   telegramr   r
    r   r   <module>r1      s   & K J             = = = = = = 3 3 3 3 3 3 < < < < < < * * * * * * 33 33 33 33 33 33 33 33 33 33r   