B
    fd<                 @   sx   d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
mZ d dlmZ d dlmZ d dlmZmZmZ G dd deZdS )	    )BytesIO)	IntLongInt128Int256BoolBytesStringDoubleVector)TLObject)raw)ListOptionalAnyc               @   s   e Zd ZU dZdddddddd	d
ddgZee ed< dZdZ	dddddddddd	ded e
e e
e e
e e
e e
e e
e e
e e
e dddddZeeed dddZedddZdS )SendMultiMediaa  Telegram API function.

    Details:
        - Layer: ``158``
        - ID: ``B6F11A1C``

    Parameters:
        peer (:obj:`InputPeer <pyrogram.raw.base.InputPeer>`):
            N/A

        multi_media (List of :obj:`InputSingleMedia <pyrogram.raw.base.InputSingleMedia>`):
            N/A

        silent (``bool``, *optional*):
            N/A

        background (``bool``, *optional*):
            N/A

        clear_draft (``bool``, *optional*):
            N/A

        noforwards (``bool``, *optional*):
            N/A

        update_stickersets_order (``bool``, *optional*):
            N/A

        reply_to_msg_id (``int`` ``32-bit``, *optional*):
            N/A

        top_msg_id (``int`` ``32-bit``, *optional*):
            N/A

        schedule_date (``int`` ``32-bit``, *optional*):
            N/A

        send_as (:obj:`InputPeer <pyrogram.raw.base.InputPeer>`, *optional*):
            N/A

    Returns:
        :obj:`Updates <pyrogram.raw.base.Updates>`
    peermulti_mediasilent
backgroundclear_draft
noforwardsupdate_stickersets_orderreply_to_msg_id
top_msg_idschedule_datesend_as	__slots__l   m z!functions.messages.SendMultiMediaN)	r   r   r   r   r   r   r   r   r   zraw.base.InputPeerzraw.base.InputSingleMedia)r   r   r   r   r   r   r   r   r   r   r   returnc            C   sF   || _ || _|| _|| _|| _|| _|| _|| _|	| _|
| _	|| _
d S )N)r   r   r   r   r   r   r   r   r   r   r   )selfr   r   r   r   r   r   r   r   r   r   r    r    T/tmp/pip-unpacked-wheel-rcokkf2l/pyrogram/raw/functions/messages/send_multi_media.py__init__S   s    zSendMultiMedia.__init__)bargsr   c             G   s   t | }|d@ rdnd}|d@ r&dnd}|d@ r6dnd}|d@ rFdnd}|d@ rVdnd}t| }|d@ rvt | nd }	|d	@ rt | nd }
t| }|d
@ rt | nd }|d@ rt| nd }t||||||||	|
||dS )N    TF@      i @  i      i   i   i    )r   r   r   r   r   r   r   r   r   r   r   )r   readr   r   )r#   r$   flagsr   r   r   r   r   r   r   r   r   r   r   r    r    r!   r)   `   s    


zSendMultiMedia.read)r   c             G   st  t  }|t| jd d}|| jr(dndO }|| jr:dndO }|| jrLdndO }|| jr^dndO }|| jrpdndO }|| j	d k	rdndO }|| j
d k	rd	ndO }|| jd k	rd
ndO }|| jd k	rdndO }|t| || j  | j	d k	r|t| j	 | j
d k	r$|t| j
 |t| j | jd k	rP|t| j | jd k	rl|| j  | S )NFr   r%   r&   r'   i @  i   r(   i   i   i    )r   writer   IDr   r   r   r   r   r   r   r   r   r   r   r   getvalue)r   r$   r#   r*   r    r    r!   r+   u   s0    zSendMultiMedia.write)__name__
__module____qualname____doc__r   r   str__annotations__r,   ZQUALNAMEr   boolintr"   staticmethodr   r   r)   bytesr+   r    r    r    r!   r   !   s   
+&^r   N)ior   Zpyrogram.raw.core.primitivesr   r   r   r   r   r   r	   r
   r   Zpyrogram.raw.corer   Zpyrogramr   typingr   r   r   r   r    r    r    r!   <module>   s
   ,	