
    ՟f                     R    d Z ddlmZ ddlmZ ddlmZ ddlmZm	Z	  G d de      Z
y)	z2This module contains the LinkPreviewOptions class.    )Optional)TelegramObject)DEFAULT_NONE)JSONDictODVInputc                   v     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	e
   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| _        | j                          y )Nr   )	super__init__r
   r   r   r   r   	_id_attrs_freeze)selfr
   r   r   r   r   r   	__class__s          W/var/www/cvtools/html/venv/lib/python3.12/site-packages/telegram/_linkpreviewoptions.pyr   zLinkPreviewOptions.__init__L   s     	J/ ,7"%2D2D/> HH####  
 	    )__name__
__module____qualname____doc__	__slots__r   r   boolstrr   r   r   __classcell__)r   s   @r   r	   r	      s    $LI '3)-9-9*6 *.d^ c] %TN	
 %TN "$ X& r   r	   N)r   typingr   telegram._telegramobjectr   telegram._utils.defaultvaluer   telegram._utils.typesr   r   r	    r   r   <module>r'      s&   & 9  3 5 4J Jr   