Ë
    :É„j  ã                   óL   — d dl mZmZmZ d dlZd dlmZmZmZmZ  G d„ d«      Z	y)é    )ÚListÚOptionalÚUnionN)ÚenumsÚrawÚtypesÚutilsc                   óŽ   — e Zd Z	 	 	 	 	 ddddedeeeef      deeeee   f      dee   ded	   d
eed      deded   f   fd„Zy)ÚTranslateTextNÚselfzpyrogram.ClientÚto_language_codeÚchat_idÚmessage_idsÚtextÚ
parse_modezenums.ParseModeÚentitiesztypes.MessageEntityÚreturnztypes.TranslatedTextc           
   ƒ   óT  K  — |�˜t        j                  | |||«      ƒ d{  –—† j                  «       \  }}| j                  t        j
                  j                  j                  |t        j                  j                  ||xs g ¬«      g¬«      «      ƒ d{  –—† }n|�r|�pt        |t        «      s|gn|}	| j                  t        j
                  j                  j                  || j                  |«      ƒ d{  –—† |	¬«      «      ƒ d{  –—† }nt        d«      ‚t        |j                  «      dk(  r-t        j                   j#                  | |j                  d   «      S |j                  D �
cg c]"  }
t        j                   j#                  | |
«      ‘Œ$ c}
S 7 �Œy7 �Œ7 Œ¥7 Œ•c c}
w ­w)a×  Translates a text or message(s) to the given language. If the current user is a Telegram Premium user, then text formatting is preserved.

        Parameters:
            to_language_code (``str``):
                Language code of the language to which the message/text is translated.
                Must be one of the supported language codes.

            chat_id (``Optional[int | str]``):
                Unique identifier (int) or username (str) of the target chat.

            message_ids (``Optional[int | List[int]]``):
                Identifier or list of message identifiers of the target message(s).

            text (``Optional[str]``):
                Text to translate.

            parse_mode (:obj:`~pyrogram.enums.ParseMode`, *optional*):
                By default, texts are parsed using both Markdown and HTML styles.
                You can combine both syntaxes together.

            entities (List of :obj:`~pyrogram.types.MessageEntity`):
                List of special entities that appear in message text, which can be specified instead of *parse_mode*.

        Example:
            .. code-block:: python

                # Using chat_id and message_ids
                await app.translate_message_text("en", chat_id, message_ids)

                # Using text
                await app.translate_message_text("en", text="Hello, how are you?")

                # Using text with parse_mode
                await app.translate_message_text("en", text="*Hello*, how are you?", parse_mode=ParseMode.MARKDOWN)

                # Using text with entities
                entities = [types.MessageEntityBold(offset=0, length=5)]
                await app.translate_message_text("en", text="*Hello*, how are you?", entities=entities)

        Returns:
            :obj:`~pyrogram.types.TranslatedText` | List of :obj:`~pyrogram.types.TranslatedText`: In case *message_ids* was not
            a list, a single result is returned, otherwise a list of results is returned.
        N)r   r   )Úto_langr   )r   ÚpeerÚidzCEither 'text' or both 'chat_id' and 'message_ids' must be provided.é   r   )r	   Úparse_text_entitiesÚvaluesÚinvoker   Ú	functionsÚmessagesr   r   ÚTextWithEntitiesÚ
isinstanceÚlistÚresolve_peerÚ
ValueErrorÚlenÚresultÚTranslatedTextÚ_parse)r   r   r   r   r   r   r   ÚmessageÚrÚidsÚis              ú_/var/www/html/GAP/venv/lib/python3.12/site-packages/pyrogram/methods/messages/translate_text.pyÚtranslate_message_textz$TranslateText.translate_message_text   s—  è ø€ ðh Ðä×/Ñ/ØØØØó	÷ ÷ ‰f‹hñ ˆG�Xð —k‘kÜ—‘×&Ñ&×4Ñ4Ø,äŸ	™	×2Ñ2Ø!(Ø%-¢^°ð 3ó ðð 5ó ó
÷ 
‰Að Ð  [Ð%<Ü'1°+¼tÔ'D�;‘-È+ˆCà—k‘kÜ—‘×&Ñ&×4Ñ4Ø,Ø#×0Ñ0°Ó9×9Øð 5ó ó÷ ‰Aô ÐbÓcÐcô �1—8‘8‹} Ò!ô × Ñ ×'Ñ'¨¨a¯h©h°q©kÓ:ð	
ð
 Ÿ™öàô ×$Ñ$×+Ñ+¨D°!Õ4òð	
ðCùð
ùð$ :øðúòùsZ   ‚F( F¡A6F(ÂFÂA!F(Ã9FÃ:F(ÄF!ÄA#F(Å/'F#ÆF(ÆF(ÆF(Æ!F(Æ#F()NNNNN)	Ú__name__Ú
__module__Ú__qualname__Ústrr   r   Úintr   r,   © ó    r+   r   r      s²   „ ð .2Ø7;Ø"Ø26Ø:>ñ^
Øð^
àð^
ð ˜%  S ™/Ñ*ð^
ð ˜e C¨¨c© NÑ3Ñ4ð	^
ð
 �s‰mð^
ð Ð.Ñ/ð^
ð ˜4Ð 5Ñ6Ñ7ð^
ð 
Ð% tÐ,BÑ'CÐCÑ	Dô^
r3   r   )
Útypingr   r   r   Úpyrogramr   r   r   r	   r   r2   r3   r+   ú<module>r6      s"   ð÷( )Ñ (ã ß -Ó -÷_
ò _
r3   