B
    f’»dŸ  ã               @   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ddgZee ed< dZdZ	dddœdede
e
e
e
e
e
e
e
dee
 ddœdd„Zeeed dœdd„ƒZedœdd„ZdS )ÚSearchañ  Telegram API function.

    Details:
        - Layer: ``158``
        - ID: ``A0FDA762``

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

        q (``str``):
            N/A

        filter (:obj:`MessagesFilter <pyrogram.raw.base.MessagesFilter>`):
            N/A

        min_date (``int`` ``32-bit``):
            N/A

        max_date (``int`` ``32-bit``):
            N/A

        offset_id (``int`` ``32-bit``):
            N/A

        add_offset (``int`` ``32-bit``):
            N/A

        limit (``int`` ``32-bit``):
            N/A

        max_id (``int`` ``32-bit``):
            N/A

        min_id (``int`` ``32-bit``):
            N/A

        hash (``int`` ``64-bit``):
            N/A

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

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

    Returns:
        :obj:`messages.Messages <pyrogram.raw.base.messages.Messages>`
    ÚpeerÚqÚfilterÚmin_dateÚmax_dateÚ	offset_idÚ
add_offsetÚlimitÚmax_idÚmin_idÚhashÚfrom_idÚ
top_msg_idÚ	__slots__l   b'ûA zfunctions.messages.SearchN)r   r   zraw.base.InputPeerzraw.base.MessagesFilter)r   r   r   r   r   r   r   r   r   r   r   r   r   Úreturnc            C   sR   || _ || _|| _|| _|| _|| _|| _|| _|	| _|
| _	|| _
|| _|| _d S )N)r   r   r   r   r   r   r   r   r   r   r   r   r   )Úselfr   r   r   r   r   r   r   r   r   r   r   r   r   © r"   úJ/tmp/pip-unpacked-wheel-rcokkf2l/pyrogram/raw/functions/messages/search.pyÚ__init__Y   s    zSearch.__init__)ÚbÚargsr    c             G   sÆ   t  | ¡}t | ¡}t | ¡}|d@ r0t | ¡nd }|d@ rFt  | ¡nd }t | ¡}t  | ¡}t  | ¡}	t  | ¡}
t  | ¡}t  | ¡}t  | ¡}t  | ¡}t | ¡}t|||||	|
|||||||dS )Né   é   )r   r   r   r   r   r   r   r   r   r   r   r   r   )r   Úreadr   r	   r   r   )r%   r&   Úflagsr   r   r   r   r   r   r   r   r   r   r   r   r   r"   r"   r#   r)   h   s    











zSearch.read)r    c             G   sB  t ƒ }| t| jdƒ¡ d}|| jd k	r,dndO }|| jd k	rBdndO }| t|ƒ¡ | | j ¡ ¡ | t| jƒ¡ | jd k	r| | j ¡ ¡ | jd k	rª| t| jƒ¡ | | j	 ¡ ¡ | t| j
ƒ¡ | t| jƒ¡ | t| jƒ¡ | t| jƒ¡ | t| jƒ¡ | t| jƒ¡ | t| jƒ¡ | t| jƒ¡ | ¡ S )NFr   r'   r(   )r   Úwriter   ÚIDr   r   r   r	   r   r   r   r   r   r   r   r   r   r   r   Úgetvalue)r!   r&   r%   r*   r"   r"   r#   r+   ˆ   s,    

zSearch.write)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   ÚstrÚ__annotations__r,   ZQUALNAMEÚintr   r$   Ústaticmethodr   r   r)   Úbytesr+   r"   r"   r"   r#   r   !   s   
1*4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
   ,	