o 6a@sddlZddlmZmZmZmZmZmZmZm Z ej dkr(ddlm Z m Z m Z n ddlm Z m Z m Z dZGddde ZGdd d e ZGd d d e ZGd d d e Ze eefZe eeefZGddde ZGddde ZGddde ZGddde ZGddde ZGddde ZGddde ZGddde ZGddde ZGd d!d!e ZGd"d#d#e Z Gd$d%d%e Z!Gd&d'd'e Z"Gd(d)d)e Z#Gd*d+d+e Z$Gd,d-d-e Z%Gd.d/d/e Z&Gd0d1d1e Z'Gd2d3d3e Z(e eeeee!e#e$fZ)e eeeeeeee e"e%e&e'e(f Z*egee)fZ+ee*gedfZ,Gd4d5d5e Z-ee-Z.eee+e,gedfZ/e e.e/fZ0dS)6N) AwaitableCallableDictIterableOptionalTupleTypeUnion))LiteralProtocol TypedDict)! ASGIVersions HTTPScopeWebSocketScope LifespanScopeWWWScopeScopeHTTPRequestEventHTTPResponseStartEventHTTPResponseBodyEventHTTPServerPushEventHTTPDisconnectEventWebSocketConnectEventWebSocketAcceptEventWebSocketReceiveEventWebSocketSendEventWebSocketResponseStartEventWebSocketResponseBodyEventWebSocketDisconnectEventWebSocketCloseEventLifespanStartupEventLifespanShutdownEventLifespanStartupCompleteEventLifespanStartupFailedEventLifespanShutdownCompleteEventLifespanShutdownFailedEventASGIReceiveEvent ASGISendEventASGIReceiveCallableASGISendCallable ASGI2ProtocolASGI2ApplicationASGI3ApplicationASGIApplicationc@s.eZdZUeed<eededfed<dS)r spec_versionz2.0z3.0versionN)__name__ __module__ __qualname__str__annotations__r r r7r70/usr/lib/python3/dist-packages/asgiref/typing.pyr.s rc@seZdZUeded<eed<eed<eed<eed<eed<eed<eed <eed <ee eefed <e e ee fed <e e ee e fed <e e ee e e ffed<dS)rhttptypeasgi http_versionmethodschemepathraw_path query_string root_pathheadersclientserver extensionsNr2r3r4r r6rr5bytesrrrintrobjectr7r7r7r8r3s  rc@seZdZUeded<eed<eed<eed<eed<eed<eed<eed <ee eefed <e e ee fed <e e ee e fed <eeed <e e ee e e ffed<dS)r websocketr:r;r<r>r?r@rArBrCrDrE subprotocolsrFNrGr7r7r7r8rCs   rc@"eZdZUeded<eed<dS)rlifespanr:r;N)r2r3r4r r6rr7r7r7r8rS  rc@*eZdZUeded<eed<eed<dS)rz http.requestr:body more_bodyNr2r3r4r r6rHboolr7r7r7r8r\  rc@6eZdZUeded<eed<eeeefed<dS)rzhttp.response.startr:statusrCN r2r3r4r r6rIrrrHr7r7r7r8rb rc@rP)rzhttp.response.bodyr:rQrRNrSr7r7r7r8rhrUrc@rV)rzhttp.response.pushr:r?rCN) r2r3r4r r6r5rrrHr7r7r7r8rnrYrc@eZdZUeded<dS)rzhttp.disconnectr:Nr2r3r4r r6r7r7r7r8rt rc@rZ)rzwebsocket.connectr:Nr[r7r7r7r8rxr\rc@s:eZdZUeded<eeed<eee e fed<dS)rzwebsocket.acceptr: subprotocolrCN) r2r3r4r r6rr5rrrHr7r7r7r8r|s  rc@2eZdZUeded<eeed<eeed<dS)rzwebsocket.receiver:rHtextNr2r3r4r r6rrHr5r7r7r7r8r  rc@r^)rzwebsocket.sendr:rHr_Nr`r7r7r7r8rrarc@rV)rzwebsocket.http.response.startr:rWrCNrXr7r7r7r8rrYrc@rP)rzwebsocket.http.response.bodyr:rQrRNrSr7r7r7r8rrUrc@rM)r zwebsocket.disconnectr:codeN)r2r3r4r r6rIr7r7r7r8r rOr c@s.eZdZUeded<eed<eeed<dS)r!zwebsocket.closer:rbreasonN)r2r3r4r r6rIrr5r7r7r7r8r!s r!c@rZ)r"zlifespan.startupr:Nr[r7r7r7r8r"r\r"c@rZ)r#zlifespan.shutdownr:Nr[r7r7r7r8r#r\r#c@rZ)r$zlifespan.startup.completer:Nr[r7r7r7r8r$r\r$c@rM)r%zlifespan.startup.failedr:messageNr2r3r4r r6r5r7r7r7r8r%rOr%c@rZ)r&zlifespan.shutdown.completer:Nr[r7r7r7r8r&r\r&c@rM)r'zlifespan.shutdown.failedr:rdNrer7r7r7r8r'rOr'c@s4eZdZdeddfddZdededdfdd ZdS) r,scopereturnNcCsdSNr7)selfrfr7r7r8__init__szASGI2Protocol.__init__receivesendcsdSrhr7)rirkrlr7r7r8__call__szASGI2Protocol.__call__)r2r3r4rrjr*r+rmr7r7r7r8r,sr,)1systypingrrrrrrrr version_infor r rtyping_extensions__all__rrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r7r7r7r8s( %