U
    g	                     @   sd   d Z ddlmZmZmZmZ ddlmZ ddlm	Z	 ddl
mZ erPddlmZ G dd deZd	S )
zIThis module contains an object that represents a Telegram ShippingOption.    )TYPE_CHECKINGOptionalSequenceTuple)TelegramObject)parse_sequence_arg)JSONDict)LabeledPricec                       s>   e Zd ZdZdZddeeed ee d fddZ	  Z
S )	ShippingOptiona  This object represents one shipping option.

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

    Examples:
        :any:`Payment Bot <examples.paymentbot>`

    Args:
        id (:obj:`str`): Shipping option identifier.
        title (:obj:`str`): Option title.
        prices (Sequence[:class:`telegram.LabeledPrice`]): List of price portions.

            .. versionchanged:: 20.0
                |sequenceclassargs|

    Attributes:
        id (:obj:`str`): Shipping option identifier.
        title (:obj:`str`): Option title.
        prices (Tuple[:class:`telegram.LabeledPrice`]): List of price portions.

            .. versionchanged:: 20.0
                |tupleclassattrs|

    )idpricestitleN
api_kwargsr	   )r   r   r   r   c                   s:   t  j|d || _|| _t|| _| jf| _|   d S )Nr   )super__init__r   r   r   r   Z	_id_attrsZ_freeze)selfr   r   r   r   	__class__ D/tmp/pip-unpacked-wheel-swnnwir2/telegram/_payment/shippingoption.pyr   ;   s    

zShippingOption.__init__)__name__
__module____qualname____doc__	__slots__strr   r   r   r   __classcell__r   r   r   r   r
      s   r
   N)r   typingr   r   r   r   Ztelegram._telegramobjectr   Ztelegram._utils.argumentparsingr   Ztelegram._utils.typesr   Ztelegramr	   r
   r   r   r   r   <module>   s   