
    iq                     N    d Z ddlmZ ddlmZ ddlmZmZ  G d de          ZdS )z2This module contains the LinkPreviewOptions class.    )TelegramObject)DEFAULT_NONE)JSONDictODVInputc                        e Zd ZdZdZeeeeefdddee         dee         dee         dee         d	ee         d
e	dz  f fdZ
 xZS )LinkPreviewOptionsa  
    Describes the options used for link preview generation.

    Objects of this class are comparable in terms of equality. Two objects of this class are
    considered equal, if their :attr:`is_disabled`, :attr:`url`, :attr:`prefer_small_media`,
    :attr:`prefer_large_media`, and :attr:`show_above_text` are equal.

    .. versionadded:: 20.8

    Args:
        is_disabled (:obj:`bool`, optional): :obj:`True`, if the link preview is disabled.
        url (:obj:`str`, optional): The URL to use for the link preview. If empty, then the first
            URL found in the message text will be used.
        prefer_small_media (:obj:`bool`, optional): :obj:`True`, if the media in the link preview
            is supposed to be shrunk; ignored if the URL isn't explicitly specified or media size
            change isn't supported for the preview.
        prefer_large_media (:obj:`bool`, optional): :obj:`True`, if the media in the link preview
            is supposed to be enlarged; ignored if the URL isn't explicitly specified or media
            size change isn't supported for the preview.
        show_above_text (:obj:`bool`, optional): :obj:`True`, if the link preview must be shown
            above the message text; otherwise, the link preview will be shown below the message
            text.

    Attributes:
        is_disabled (:obj:`bool`): Optional. :obj:`True`, if the link preview is disabled.
        url (:obj:`str`): Optional. The URL to use for the link preview. If empty, then the first
            URL found in the message text will be used.
        prefer_small_media (:obj:`bool`): Optional. :obj:`True`, if the media in the link preview
            is supposed to be shrunk; ignored if the URL isn't explicitly specified or media size
            change isn't supported for the preview.
        prefer_large_media (:obj:`bool`): Optional. :obj:`True`, if the media in the link preview
            is supposed to be enlarged; ignored if the URL isn't explicitly specified or media size
            change isn't supported for the preview.
        show_above_text (:obj:`bool`): Optional. :obj:`True`, if the link preview must be shown
            above the message text; otherwise, the link preview will be shown below the message
            text.
    )is_disabledprefer_large_mediaprefer_small_mediashow_above_texturlN
api_kwargsr	   r   r   r
   r   r   c                   t                                          |           || _        || _        || _        || _        || _        | j        | j        | j        | j        | j        f| _        |                                  d S )Nr   )	super__init__r	   r   r   r
   r   	_id_attrs_freeze)selfr	   r   r   r
   r   r   	__class__s          \/Users/shanyulin/my-agent/.venv/lib/python3.11/site-packages/telegram/_linkpreviewoptions.pyr   zLinkPreviewOptions.__init__I   s     	J/// ,7"%2D2D/> H## 
 	    )__name__
__module____qualname____doc__	__slots__r   r   boolstrr   r   __classcell__)r   s   @r   r   r      s        $ $LI '3)-9-9*6 '+  d^ c] %TN	
 %TN "$ tO         r   r   N)	r   telegram._telegramobjectr   telegram._utils.defaultvaluer   telegram._utils.typesr   r   r    r   r   <module>r%      s   & 9 8 3 3 3 3 3 3 5 5 5 5 5 5 4 4 4 4 4 4 4 4J J J J J J J J J Jr   