+
    Pj(                    J   ^ RI Ht ^ RIt^ RIt^ RIt]P
                  R8  d   ^ RIHt M^ RIHt ^ RIH	t	H
t
 ^ RIHtHt ^ RIHt ^ RIHt ^ RIHt ^ R	IHt ^ R
IHt ^ RIHtHt ^ RIHtHtHtHtH t H!t! ^ RI"H#t# ]PH                  ! RRR7      t%]! R4      t& ! R R4      t'R# )    )annotationsN)	ParamSpec)StateURLPath)
Middleware_MiddlewareFactory)BaseHTTPMiddleware)ServerErrorMiddleware)ExceptionMiddleware)Request)Response)	BaseRouteRouter)ASGIAppExceptionHandlerLifespanReceiveScopeSend)	WebSocketAppType	Starlette)boundPc                     ] tR t^tRtR&R R lltR R lt]R R l4       tR	 R
 lt	R R lt
R R ltR'R R lltR'R R lltR R ltR R ltR R ltR(R R lltR'R R lltR R ltR(R R  lltR'R! R" lltR# R$ ltR%tR# ))r   a  
Creates an application instance.

**Parameters:**

* **debug** - Boolean indicating if debug tracebacks should be returned on errors.
* **routes** - A list of routes to serve incoming HTTP and WebSocket requests.
* **middleware** - A list of middleware to run for every request. A starlette
application will always automatically include two middleware classes.
`ServerErrorMiddleware` is added as the very outermost middleware, to handle
any uncaught errors occurring anywhere in the entire stack.
`ExceptionMiddleware` is added as the very innermost middleware, to deal
with handled exception cases occurring in the routing or endpoints.
* **exception_handlers** - A mapping of either integer status codes,
or exception class types onto callables which handle the exceptions.
Exception handler callables should be of the form
`handler(request, exc) -> response` and may be either standard functions, or
async functions.
* **on_startup** - A list of callables to run on application startup.
Startup handler callables do not take any arguments, and may be either
standard functions, or async functions.
* **on_shutdown** - A list of callables to run on application shutdown.
Shutdown handler callables do not take any arguments, and may be either
standard functions, or async functions.
* **lifespan** - A lifespan context function, which can be used to perform
startup and shutdown tasks. This is a newer style that replaces the
`on_startup` and `on_shutdown` handlers. Use one or the other, not both.
Nc               <    V ^8  d   QhRRRRRRRRR	R
RRRRRRRR/	# )   selfr   debugboolroutesz!typing.Sequence[BaseRoute] | None
middlewarez"typing.Sequence[Middleware] | Noneexception_handlersz3typing.Mapping[typing.Any, ExceptionHandler] | None
on_startupz7typing.Sequence[typing.Callable[[], typing.Any]] | Noneon_shutdownlifespanzLifespan[AppType] | NonereturnNone )formats   "o/Users/ahmed/devFolder/Ultron/claude-voice/gateway/.venv/lib/python3.14/site-packages/starlette/applications.py__annotate__Starlette.__annotate__9   se     5 555 25 7	5
 P5 L5 M5 +5 
5    c                	    Ve   Vf   Ve   Q R4       hWn         \        4       V n        \        W%WgR7      V n        Vf   / M
\        V4      V n        Vf   . M
\        V4      V n        R V n	        R # )Nz>Use either 'lifespan' or 'on_startup'/'on_shutdown', not both.)r$   r%   r&   )
r   r   stater   routerdictr#   listuser_middlewaremiddleware_stack)r   r   r!   r"   r#   r$   r%   r&   s   &&&&&&&&r+   __init__Starlette.__init__9   sx     ;#6	LK	L 
 
W
Vg(:(B"M_H`%/%7rT*=M04r.   c                   V ^8  d   QhRR/# )r   r'   r   r)   )r*   s   "r+   r,   r-   P   s       r.   c                	d   V P                   pR p/ pV P                  P                  4        F  w  rEVR\        39   d   TpK  WSV&   K  	  \	        \
        W!R7      .V P                  ,           \	        \        W1R7      .,           pV P                  p\        V4       F  w  rp
V! V.V	O5/ V
B pK  	  V# )Ni  )handlerr   )handlersr   )
r   r#   items	Exceptionr   r
   r4   r   r1   reversed)r   r   error_handlerr#   keyvaluer"   appclsargskwargss   &          r+   build_middleware_stack Starlette.build_middleware_stackP   s    

`b11779JCsI&& %*/3'	 : -}RS""#-8JXYZ 	 kk!)*!5Cvc+D+F+C "6
r.   c                   V ^8  d   QhRR/# )r   r'   zlist[BaseRoute]r)   )r*   s   "r+   r,   r-   g   s     " " "r.   c                	.    V P                   P                  # N)r1   r!   )r   s   &r+   r!   Starlette.routesf   s    {{!!!r.   c               $    V ^8  d   QhRRRRRR/# )r   namestrpath_paramsz
typing.Anyr'   r   r)   )r*   s   "r+   r,   r-   j   s!     = = =
 =w =r.   c               	<    V P                   P                  ! V3/ VB # rJ   )r1   url_path_for)r   rM   rO   s   "",r+   rQ   Starlette.url_path_forj   s    {{''<<<r.   c               (    V ^8  d   QhRRRRRRRR/# )	r   scoper   receiver   sendr   r'   r(   r)   )r*   s   "r+   r,   r-   m   s(     : :E :G :4 :D :r.   c                	   "   WR &   V P                   f   V P                  4       V n         V P                  WV4      G Rj  xL
  R#  L5i)rB   N)r5   rF   )r   rT   rU   rV   s   &&&&r+   __call__Starlette.__call__m   s?     e  ($($?$?$AD!##ED999s   =AA Ac                    V ^8  d   QhRRRR/# )r   
event_typerN   r'   typing.Callabler)   )r*   s   "r+   r,   r-   s   s     0 03 0? 0r.   c                	8    V P                   P                  V4      # rJ   )r1   on_event)r   r[   s   &&r+   r^   Starlette.on_events   s    {{##J//r.   c               (    V ^8  d   QhRRRRRRRR/# )	r   pathrN   rB   r   rM   
str | Noner'   r(   r)   )r*   s   "r+   r,   r-   v   s(     4 4# 4G 4: 4 4r.   c                	@    V P                   P                  WVR 7       R# )rB   rM   N)r1   mount)r   ra   rB   rM   s   &&&&r+   re   Starlette.mountv   s    $d3r.   c               (    V ^8  d   QhRRRRRRRR/# )	r   hostrN   rB   r   rM   rb   r'   r(   r)   )r*   s   "r+   r,   r-   y   s(     3 3 37 3* 3 3r.   c                	@    V P                   P                  WVR 7       R# rd   )r1   rh   )r   rh   rB   rM   s   &&&&r+   rh   Starlette.hosty   s    T2r.   c               (    V ^8  d   QhRRRRRRRR/# )	r   middleware_classz_MiddlewareFactory[P]rD   zP.argsrE   zP.kwargsr'   r(   r)   )r*   s   "r+   r,   r-   |   s8     V V/V V 	V
 
Vr.   c                	    V P                   e   \        R4      hV P                  P                  ^ \	        V.VO5/ VB 4       R # )Nz6Cannot add middleware after an application has started)r5   RuntimeErrorr4   insertr   )r   rl   rD   rE   s   &&*,r+   add_middlewareStarlette.add_middleware|   sB       ,WXX##Az2B'TT'TV'TUr.   c               $    V ^8  d   QhRRRRRR/# )r   exc_class_or_status_codeint | type[Exception]r:   r   r'   r(   r)   )r*   s   "r+   r,   r-      s-     D D"7D "D 
	Dr.   c                	"    W P                   V&   R # rJ   )r#   )r   rs   r:   s   &&&r+   add_exception_handlerStarlette.add_exception_handler   s    
 =D 89r.   c               $    V ^8  d   QhRRRRRR/# )r   r[   rN   funcr\   r'   r(   r)   )r*   s   "r+   r,   r-      s(     8 88 8 
	8r.   c                	<    V P                   P                  W4       R # rJ   )r1   add_event_handler)r   r[   ry   s   &&&r+   r{   Starlette.add_event_handler   s    
 	%%j7r.   c               0    V ^8  d   QhRRRRRRRRR	R
RR/# )r   ra   rN   routezAtyping.Callable[[Request], typing.Awaitable[Response] | Response]methodslist[str] | NonerM   rb   include_in_schemar    r'   r(   r)   )r*   s   "r+   r,   r-      sO     l ll Ql "	l
 l  l 
lr.   c                	B    V P                   P                  WW4VR 7       R# )r   rM   r   Nr1   	add_route)r   ra   r~   r   rM   r   s   &&&&&&r+   r   Starlette.add_route   s     	d7Yjkr.   c               (    V ^8  d   QhRRRRRRRR/# )	r   ra   rN   r~   z4typing.Callable[[WebSocket], typing.Awaitable[None]]rM   rb   r'   r(   r)   )r*   s   "r+   r,   r-      s9     @ @@ D@ 	@
 
@r.   c                	@    V P                   P                  WVR 7       R# )rM   Nr1   add_websocket_route)r   ra   r~   rM   s   &&&&r+   r   Starlette.add_websocket_route   s     	''$'?r.   c                    V ^8  d   QhRRRR/# )r   rs   rt   r'   r\   r)   )r*   s   "r+   r,   r-      s      :O Tc r.   c                	T   a a \         P                  ! R \        4       R VV 3R llpV# )zThe `exception_handler` decorator is deprecated, and will be removed in version 1.0.0. Refer to https://www.starlette.io/exceptions/ for the recommended approach.c                    V ^8  d   QhRRRR/# r   ry   r\   r'   r)   )r*   s   "r+   r,   1Starlette.exception_handler.<locals>.__annotate__        	 	O 	 	r.   c                ,   < SP                  SV 4       V # rJ   )rv   )ry   rs   r   s   &r+   	decorator.Starlette.exception_handler.<locals>.decorator   s    &&'?FKr.   warningswarnDeprecationWarning)r   rs   r   s   ff r+   exception_handlerStarlette.exception_handler   s*    Z	
	 	 r.   c          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )r   ra   rN   r   r   rM   rb   r   r    r'   r\   r)   )r*   s   "r+   r,   r-      s<       " 	
   
r.   c                `   a aaaa \         P                  ! R\        4       R VVVVV 3R llpV# )z
We no longer document this decorator style API, and its usage is discouraged.
Instead you should use the following approach:

>>> routes = [Route(path, endpoint=...), ...]
>>> app = Starlette(routes=routes)
zThe `route` decorator is deprecated, and will be removed in version 1.0.0. Refer to https://www.starlette.io/routing/ for the recommended approach.c                    V ^8  d   QhRRRR/# r   r)   )r*   s   "r+   r,   %Starlette.route.<locals>.__annotate__   s     	 	O 	 	r.   c                H   < SP                   P                  SV SSSR 7       V # )r   r   )ry   r   r   rM   ra   r   s   &r+   r   "Starlette.route.<locals>.decorator   s0    KK!!"3 "  Kr.   r   )r   ra   r   rM   r   r   s   fffff r+   r~   Starlette.route   s,     	W	
	 	 r.   c               $    V ^8  d   QhRRRRRR/# )r   ra   rN   rM   rb   r'   r\   r)   )r*   s   "r+   r,   r-      s!      C z _ r.   c                X   a aa \         P                  ! R\        4       R VVV 3R llpV# )z
We no longer document this decorator style API, and its usage is discouraged.
Instead you should use the following approach:

>>> routes = [WebSocketRoute(path, endpoint=...), ...]
>>> app = Starlette(routes=routes)
zThe `websocket_route` decorator is deprecated, and will be removed in version 1.0.0. Refer to https://www.starlette.io/routing/#websocket-routing for the recommended approach.c                    V ^8  d   QhRRRR/# r   r)   )r*   s   "r+   r,   /Starlette.websocket_route.<locals>.__annotate__   r   r.   c                D   < SP                   P                  SV SR 7       V # )r   r   )ry   rM   ra   r   s   &r+   r   ,Starlette.websocket_route.<locals>.decorator   s!    KK++D$T+BKr.   r   )r   ra   rM   r   s   fff r+   websocket_routeStarlette.websocket_route   s,     	i	
	 	 r.   c                    V ^8  d   QhRRRR/# )r   middleware_typerN   r'   r\   r)   )r*   s   "r+   r,   r-      s      # / r.   c                l   a  \         P                  ! R\        4       VR8X  g   Q R4       hR V 3R llpV# )z
We no longer document this decorator style API, and its usage is discouraged.
Instead you should use the following approach:

>>> middleware = [Middleware(...), ...]
>>> app = Starlette(middleware=middleware)
zThe `middleware` decorator is deprecated, and will be removed in version 1.0.0. Refer to https://www.starlette.io/middleware/#using-middleware for recommended approach.httpz/Currently only middleware("http") is supported.c                    V ^8  d   QhRRRR/# r   r)   )r*   s   "r+   r,   *Starlette.middleware.<locals>.__annotate__   r   r.   c                6   < SP                  \        V R 7       V # ))dispatch)rp   r	   )ry   r   s   &r+   r   'Starlette.middleware.<locals>.decorator   s     2TBKr.   r   )r   r   r   s   f& r+   r"   Starlette.middleware   sB     	g	

 &([*[[(	 	 r.   )r   r#   r5   r1   r0   r4   )FNNNNNNrJ   )NNT)__name__
__module____qualname____firstlineno____doc__r6   rF   propertyr!   rQ   rX   r^   re   rh   rp   rv   r{   r   r   r   r~   r   r"   __static_attributes__r)   r.   r+   r   r      su    :5., " "=:043VD8l@@( r.   )   
   )(
__future__r   systypingr   version_infor   typing_extensionsstarlette.datastructuresr   r   starlette.middlewarer   r   starlette.middleware.baser	   starlette.middleware.errorsr
   starlette.middleware.exceptionsr   starlette.requestsr   starlette.responsesr   starlette.routingr   r   starlette.typesr   r   r   r   r   r   starlette.websocketsr   TypeVarr   r   r   r)   r.   r+   <module>r      sk    " 
  w + 3 ? 8 = ? & ( / U U *
..+
6cN_ _r.   