
    Yi                         S r SSKJrJr  SSKJr  SSK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)zKThis module contains an object that represents a Telegram PreCheckoutQuery.    )TYPE_CHECKINGOptional)	OrderInfo)TelegramObject)User)DEFAULT_NONE)JSONDictODVInput)Botc                     ^  \ rS rSrSrSr  SSS.S\S\S\S	\S
\S\	\   S\	\
   S\	\   4U 4S jjjjr\ SS\	\   S\	S   S\	S    4U 4S jjj5       r S\\\\SS.S\S\	\   S\\   S\\   S\\   S\\   S\	\   S\4S jjjrSrU =r$ )PreCheckoutQuery!   am  This object contains information about an incoming pre-checkout query.

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

Note:
    In Python :keyword:`from` is a reserved word. Use :paramref:`from_user` instead.

Args:
    id (:obj:`str`): Unique query identifier.
    from_user (:class:`telegram.User`): User who sent the query.
    currency (:obj:`str`): Three-letter ISO 4217 currency code, or ``XTR`` for payments in
        |tg_stars|.
    total_amount (:obj:`int`): Total price in the smallest units of the currency (integer,
        **not** float/double). For example, for a price of ``US$ 1.45`` pass ``amount = 145``.
        See the ``exp`` parameter in
        `currencies.json <https://core.telegram.org/bots/payments/currencies.json>`_,
        it shows the number of digits past the decimal point for each currency
        (2 for the majority of currencies).
    invoice_payload (:obj:`str`): Bot-specified invoice payload.
    shipping_option_id (:obj:`str`, optional): Identifier of the shipping option chosen by the
        user.
    order_info (:class:`telegram.OrderInfo`, optional): Order info provided by the user.

Attributes:
    id (:obj:`str`): Unique query identifier.
    from_user (:class:`telegram.User`): User who sent the query.
    currency (:obj:`str`): Three-letter ISO 4217 currency code, or ``XTR`` for payments in
        |tg_stars|.
    total_amount (:obj:`int`): Total price in the smallest units of the currency (integer,
        **not** float/double). For example, for a price of ``US$ 1.45`` pass ``amount = 145``.
        See the ``exp`` parameter in
        `currencies.json <https://core.telegram.org/bots/payments/currencies.json>`_,
        it shows the number of digits past the decimal point for each currency
        (2 for the majority of currencies).
    invoice_payload (:obj:`str`): Bot-specified invoice payload.
    shipping_option_id (:obj:`str`): Optional. Identifier of the shipping option chosen by the
        user.
    order_info (:class:`telegram.OrderInfo`): Optional. Order info provided by the user.


)currency	from_useridinvoice_payload
order_infoshipping_option_idtotal_amountN
api_kwargsr   r   r   r   r   r   r   r   c                   > [         T	U ]  US9  Xl        X l        X0l        X@l        XPl        X`l        Xpl        U R                  4U l	        U R                  5         g )Nr   )super__init__r   r   r   r   r   r   r   	_id_attrs_freeze)
selfr   r   r   r   r   r   r   r   	__class__s
            M/app/.venv/lib/python3.13/site-packages/telegram/_payment/precheckoutquery.pyr   PreCheckoutQuery.__init__W   sQ     	J/(%!-$31C/9''    databotr   returnc                    > U R                  U5      nU(       d  g[        R                  " UR                  SS5      U5      US'   [        R                  " UR                  S5      U5      US'   [        TU ]	  XS9$ )z,See :meth:`telegram.TelegramObject.de_json`.Nfromr   r   )r"   r#   )_parse_datar   de_jsonpopr   getr   )clsr"   r#   r   s      r   r(   PreCheckoutQuery.de_jsonp   sj    
 t$ LL&$)?E[&..txx/EsK\wD22r!   )read_timeoutwrite_timeoutconnect_timeoutpool_timeoutr   okerror_messager-   r.   r/   r0   c                z   #    U R                  5       R                  U R                  UUUUUUUS9I Sh  vN $  N7f)zShortcut for::

     await bot.answer_pre_checkout_query(update.pre_checkout_query.id, *args, **kwargs)

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

)pre_checkout_query_idr1   r2   r-   r.   r/   r0   r   N)get_botanswer_pre_checkout_queryr   )r   r1   r2   r-   r.   r/   r0   r   s           r   answerPreCheckoutQuery.answer   sK     & \\^=="&'''%'+%! > 	
 	
 		
 	
s   2;9;)r   r   r   r   r   r   r   r   )NN)N)__name__
__module____qualname____firstlineno____doc__	__slots__strr   intr   r   r	   r   classmethodr(   r   boolr
   floatr7   __static_attributes____classcell__)r   s   @r   r   r   !   sR   )VI" -1*. *.  	
   %SM Y' X& 2 >B3H%3,4UO3	$	%3 3" (,

 )5)5+7(4)-

  }

 uo
  
 "%
 uo
 X&
 

 
r!   r   N)r=   typingr   r   telegram._payment.orderinfor   telegram._telegramobjectr   telegram._userr   telegram._utils.defaultvaluer   telegram._utils.typesr	   r
   telegramr   r    r!   r   <module>rN      s1   & R * 1 3  5 4z
~ z
r!   