
    di!                         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
 ddlmZ ddlmZmZ erdd	lmZ  G d
 de          ZdS )zGThis module contains an object that represents a Telegram InputSticker.    )Sequence)TYPE_CHECKING)MaskPosition)TelegramObject)parse_sequence_arg)parse_file_input)	FileInputJSONDict)	InputFilec                   v     e Zd ZdZdZ	 	 ddddedee         dededz  d	ee         dz  d
e	dz  f fdZ
 xZS )InputStickera   
    This object describes a sticker to be added to a sticker set.

    .. versionadded:: 20.2

    .. versionchanged:: 21.1
        As of Bot API 7.2, the new argument :paramref:`format` is a required argument, and thus the
        order of the arguments has changed.

    Args:
        sticker (:obj:`str` | :term:`file object` | :class:`~telegram.InputFile` | :obj:`bytes`             | :class:`pathlib.Path`): The
            added sticker. |uploadinputnopath| Animated and video stickers can't be uploaded via
            HTTP URL.
        emoji_list (Sequence[:obj:`str`]): Sequence of
            :tg-const:`telegram.constants.StickerLimit.MIN_STICKER_EMOJI` -
            :tg-const:`telegram.constants.StickerLimit.MAX_STICKER_EMOJI` emoji associated with the
            sticker.
        mask_position (:class:`telegram.MaskPosition`, optional): Position where the mask should be
            placed on faces. For ":tg-const:`telegram.constants.StickerType.MASK`" stickers only.
        keywords (Sequence[:obj:`str`], optional): Sequence of
            0-:tg-const:`telegram.constants.StickerLimit.MAX_SEARCH_KEYWORDS` search keywords
            for the sticker with the total length of up to
            :tg-const:`telegram.constants.StickerLimit.MAX_KEYWORD_LENGTH` characters. For
            ":tg-const:`telegram.constants.StickerType.REGULAR`" and
            ":tg-const:`telegram.constants.StickerType.CUSTOM_EMOJI`" stickers only.
        format (:obj:`str`): Format of the added sticker, must be one of
            :tg-const:`telegram.constants.StickerFormat.STATIC` for a
            ``.WEBP`` or ``.PNG`` image, :tg-const:`telegram.constants.StickerFormat.ANIMATED`
            for a ``.TGS`` animation, :tg-const:`telegram.constants.StickerFormat.VIDEO` for a
            ``.WEBM`` video.

            .. versionadded:: 21.1

    Attributes:
        sticker (:obj:`str` | :class:`telegram.InputFile`): The added sticker.
        emoji_list (tuple[:obj:`str`]): Tuple of
            :tg-const:`telegram.constants.StickerLimit.MIN_STICKER_EMOJI` -
            :tg-const:`telegram.constants.StickerLimit.MAX_STICKER_EMOJI` emoji associated with the
            sticker.
        mask_position (:class:`telegram.MaskPosition`): Optional. Position where the mask should be
            placed on faces. For ":tg-const:`telegram.constants.StickerType.MASK`" stickers only.
        keywords (tuple[:obj:`str`]): Optional. Tuple of
            0-:tg-const:`telegram.constants.StickerLimit.MAX_SEARCH_KEYWORDS` search keywords
            for the sticker with the total length of up to
            :tg-const:`telegram.constants.StickerLimit.MAX_KEYWORD_LENGTH` characters. For
            ":tg-const:`telegram.constants.StickerType.REGULAR`" and
            ":tg-const:`telegram.constants.StickerType.CUSTOM_EMOJI`" stickers only.
            ":tg-const:`telegram.constants.StickerType.CUSTOM_EMOJI`" stickers only.
        format (:obj:`str`): Format of the added sticker, must be one of
            :tg-const:`telegram.constants.StickerFormat.STATIC` for a
            ``.WEBP`` or ``.PNG`` image, :tg-const:`telegram.constants.StickerFormat.ANIMATED`
            for a ``.TGS`` animation, :tg-const:`telegram.constants.StickerFormat.VIDEO` for a
            ``.WEBM`` video.

            .. versionadded:: 21.1
    )
emoji_listformatkeywordsmask_positionstickerN
api_kwargsr   r   r   r   r   r   c                   t                                          |           t          |dd          | _        t	          |          | _        || _        || _        t	          |          | _        | 	                                 d S )Nr   T)
local_modeattach)
super__init__r   r   r   r   r   r   r   _freeze)selfr   r   r   r   r   r   	__class__s          Y/root/projects/qq-shell/venv/lib/python3.11/site-packages/telegram/_files/inputsticker.pyr   zInputSticker.__init___   s     	J/// )9)
 )
 )

 ,>j+I+I!2?);H)E)E    )NN)__name__
__module____qualname____doc__	__slots__r	   r   strr   r
   r   __classcell__)r   s   @r   r   r   "   s        8 8t QI .2)- '+   SM 	
 $d* 3-$& tO         r   r   N)r"   collections.abcr   typingr   telegram._files.stickerr   telegram._telegramobjectr   telegram._utils.argumentparsingr   telegram._utils.filesr   telegram._utils.typesr	   r
   telegram._files.inputfiler   r    r   r   <module>r/      s   & N M $ $ $ $ $ $             0 0 0 0 0 0 3 3 3 3 3 3 > > > > > > 2 2 2 2 2 2 5 5 5 5 5 5 5 5 4333333U U U U U> U U U U Ur   