o
    ˷e                     @   s  d dl Z d dlmZmZmZmZmZmZmZm	Z	 e j
dkr(d dlmZmZmZ n
d dlmZmZmZ dZG dd deZG dd	 d	eZG d
d deZG dd deZe	eef Ze	eeef ZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG d d! d!eZG d"d# d#eZ G d$d% d%eZ!G d&d' d'eZ"G d(d) d)eZ#G d*d+ d+eZ$G d,d- d-eZ%G d.d/ d/eZ&G d0d1 d1eZ'G d2d3 d3eZ(e	eeeee!e#e$f Z)e	eeeeeeee e"e%e&e'e(f Z*eg ee) f Z+ee*ged f Z,G d4d5 d5eZ-ee- Z.eee+e,ged f Z/e	e.e/f Z0dS )6    N)	AwaitableCallableDictIterableOptionalTupleTypeUnion)      )LiteralProtocol	TypedDict)!ASGIVersions	HTTPScopeWebSocketScopeLifespanScopeWWWScopeScopeHTTPRequestEventHTTPResponseStartEventHTTPResponseBodyEventHTTPServerPushEventHTTPDisconnectEventWebSocketConnectEventWebSocketAcceptEventWebSocketReceiveEventWebSocketSendEventWebSocketResponseStartEventWebSocketResponseBodyEventWebSocketDisconnectEventWebSocketCloseEventLifespanStartupEventLifespanShutdownEventLifespanStartupCompleteEventLifespanStartupFailedEventLifespanShutdownCompleteEventLifespanShutdownFailedEventASGIReceiveEventASGISendEventASGIReceiveCallableASGISendCallableASGI2ProtocolASGI2ApplicationASGI3ApplicationASGIApplicationc                   @   s.   e Zd ZU eed< eed ed f ed< dS )r   spec_versionz2.0z3.0versionN)__name__
__module____qualname__str__annotations__r	   r    r7   r7   E/var/www/ideatree/venv/lib/python3.10/site-packages/asgiref/typing.pyr   .   s   
 r   c                   @   s   e Zd ZU ed ed< eed< eed< eed< eed< eed< eed< eed	< eed
< ee	eef  ed< e
e	eef  ed< e
e	ee
e f  ed< e
eeeeef f  ed< dS )r   httptypeasgihttp_versionmethodschemepathraw_pathquery_string	root_pathheadersclientserver
extensionsNr2   r3   r4   r   r6   r   r5   bytesr   r   r   intr   objectr7   r7   r7   r8   r   3   s   
  r   c                   @   s   e Zd ZU ed ed< eed< eed< eed< eed< eed< eed< eed	< ee	eef  ed
< e
e	eef  ed< e
e	ee
e f  ed< ee ed< e
eeeeef f  ed< dS )r   	websocketr:   r;   r<   r>   r?   r@   rA   rB   rC   rD   rE   subprotocolsrF   NrG   r7   r7   r7   r8   r   C   s   
  r   c                   @   "   e Zd ZU ed ed< eed< dS )r   lifespanr:   r;   N)r2   r3   r4   r   r6   r   r7   r7   r7   r8   r   S      
 r   c                   @   *   e Zd ZU ed ed< eed< eed< dS )r   zhttp.requestr:   body	more_bodyNr2   r3   r4   r   r6   rH   boolr7   r7   r7   r8   r   \      
 r   c                   @   6   e Zd ZU ed ed< eed< eeeef  ed< dS )r   zhttp.response.startr:   statusrC   N	r2   r3   r4   r   r6   rI   r   r   rH   r7   r7   r7   r8   r   b      
 r   c                   @   rP   )r   zhttp.response.bodyr:   rQ   rR   NrS   r7   r7   r7   r8   r   h   rU   r   c                   @   rV   )r   zhttp.response.pushr:   r?   rC   N)	r2   r3   r4   r   r6   r5   r   r   rH   r7   r7   r7   r8   r   n   rY   r   c                   @      e Zd ZU ed ed< dS )r   zhttp.disconnectr:   Nr2   r3   r4   r   r6   r7   r7   r7   r8   r   t      
 r   c                   @   rZ   )r   zwebsocket.connectr:   Nr[   r7   r7   r7   r8   r   x   r\   r   c                   @   s:   e Zd ZU ed ed< ee ed< eee	e	f  ed< dS )r   zwebsocket.acceptr:   subprotocolrC   N)
r2   r3   r4   r   r6   r   r5   r   r   rH   r7   r7   r7   r8   r   |   s   
 r   c                   @   2   e Zd ZU ed ed< ee ed< ee ed< dS )r   zwebsocket.receiver:   rH   textNr2   r3   r4   r   r6   r   rH   r5   r7   r7   r7   r8   r         
 r   c                   @   r^   )r   zwebsocket.sendr:   rH   r_   Nr`   r7   r7   r7   r8   r      ra   r   c                   @   rV   )r   zwebsocket.http.response.startr:   rW   rC   NrX   r7   r7   r7   r8   r      rY   r   c                   @   rP   )r   zwebsocket.http.response.bodyr:   rQ   rR   NrS   r7   r7   r7   r8   r      rU   r   c                   @   rM   )r    zwebsocket.disconnectr:   codeN)r2   r3   r4   r   r6   rI   r7   r7   r7   r8   r       rO   r    c                   @   s.   e Zd ZU ed ed< eed< ee ed< dS )r!   zwebsocket.closer:   rb   reasonN)r2   r3   r4   r   r6   rI   r   r5   r7   r7   r7   r8   r!      s   
 r!   c                   @   rZ   )r"   zlifespan.startupr:   Nr[   r7   r7   r7   r8   r"      r\   r"   c                   @   rZ   )r#   zlifespan.shutdownr:   Nr[   r7   r7   r7   r8   r#      r\   r#   c                   @   rZ   )r$   zlifespan.startup.completer:   Nr[   r7   r7   r7   r8   r$      r\   r$   c                   @   rM   )r%   zlifespan.startup.failedr:   messageNr2   r3   r4   r   r6   r5   r7   r7   r7   r8   r%      rO   r%   c                   @   rZ   )r&   zlifespan.shutdown.completer:   Nr[   r7   r7   r7   r8   r&      r\   r&   c                   @   rM   )r'   zlifespan.shutdown.failedr:   rd   Nre   r7   r7   r7   r8   r'      rO   r'   c                   @   s4   e Zd ZdeddfddZdededdfdd	ZdS )
r,   scopereturnNc                 C   s   d S Nr7   )selfrf   r7   r7   r8   __init__   s   zASGI2Protocol.__init__receivesendc                    s   d S rh   r7   )ri   rk   rl   r7   r7   r8   __call__   s   zASGI2Protocol.__call__)r2   r3   r4   r   rj   r*   r+   rm   r7   r7   r7   r8   r,      s    r,   )1systypingr   r   r   r   r   r   r   r	   version_infor   r   r   typing_extensions__all__r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r7   r7   r7   r8   <module>   s    (
%
