📦 p4: type stubs (.pyi) + py.typed — mypy-clean DX
swadhinbiswas committed 2 months ago
d663625
1 parent bfff404
commit d663625
6 files changed
+45 -68
Showing 6 changed files+45-68
▼crates/justapi-py/python/justapi/__init__.pyi
+2-2
| @@ -1,11 +1,11 @@ | ||
1 | 1 | from . import testing as testing, tracing as tracing, status as status |
2 | 2 | from ._justapi import Dag as Dag, DagNode as DagNode, Database as Database, RateLimitResult as RateLimitResult, RateLimiter as RateLimiter, Request as Request, TokenStreamResponse as TokenStreamResponse, WebSocket as WebSocket, serve as serve |
3 | -from .app import APIRouter as APIRouter, Controller as Controller, Depends as Depends, JustAPIApp as JustAPIApp, JustAPI as JustAPI, JustAPP as JustAPP, JustAPITestClient as JustAPITestClient, adaptive_batch as adaptive_batch, controller as controller, route_delete as route_delete, route_get as route_get, route_post as route_post, route_put as route_put, route_query as route_query, route_sse as route_sse, route_websocket as route_websocket | |
3 | +from .app import APIRouter as APIRouter, Controller as Controller, Depends as Depends, JustAPIApp as JustAPIApp, JustAPI as JustAPI, JustAPP as JustAPP, JustAPITestClient as JustAPITestClient, adaptive_batch as adaptive_batch, controller as controller, native_async as native_async, route_delete as route_delete, route_get as route_get, route_post as route_post, route_put as route_put, route_query as route_query, route_sse as route_sse, route_websocket as route_websocket | |
4 | 4 | from .background import BackgroundTasks as BackgroundTasks |
5 | 5 | from .responses import HTMLResponse as HTMLResponse, JSONResponse as JSONResponse, PlainTextResponse as PlainTextResponse, RedirectResponse as RedirectResponse, Response as Response, StreamingResponse as StreamingResponse |
6 | 6 | from .templating import Jinja2Templates as Jinja2Templates |
7 | 7 | |
8 | -__all__ = ['serve', 'JustAPIApp', 'JustAPI', 'JustAPP', 'Depends', 'Database', 'Schema', 'pydantic_schema', 'JustAPITestClient', 'testing', 'tracing', 'Jinja2Templates', 'BackgroundTasks', 'TokenStreamResponse', 'WebSocket', 'Dag', 'DagNode', 'RateLimiter', 'RateLimitResult', 'adaptive_batch', 'APIRouter', 'Controller', 'controller', 'route_get', 'route_post', 'route_put', 'route_delete', 'route_query', 'route_sse', 'route_websocket', 'Request', 'Response', 'HTMLResponse', 'PlainTextResponse', 'JSONResponse', 'RedirectResponse', 'StreamingResponse', 'status'] | |
8 | +__all__ = ['serve', 'JustAPIApp', 'JustAPI', 'JustAPP', 'Depends', 'Database', 'Schema', 'pydantic_schema', 'JustAPITestClient', 'testing', 'tracing', 'Jinja2Templates', 'BackgroundTasks', 'TokenStreamResponse', 'WebSocket', 'Dag', 'DagNode', 'RateLimiter', 'RateLimitResult', 'adaptive_batch', 'native_async', 'APIRouter', 'Controller', 'controller', 'route_get', 'route_post', 'route_put', 'route_delete', 'route_query', 'route_sse', 'route_websocket', 'Request', 'Response', 'HTMLResponse', 'PlainTextResponse', 'JSONResponse', 'RedirectResponse', 'StreamingResponse', 'status'] | |
9 | 9 | |
10 | 10 | class Schema: |
11 | 11 | def __init_subclass__(cls, **kwargs) -> None: ... |
12 | 12 | |
▼crates/justapi-py/python/justapi/_justapi.pyi
+7-0
| @@ -295,3 +295,10 @@ class _StreamSender: | ||
295 | 295 | def send(self, data: Any) -> Any: ... |
296 | 296 | def send_error(self, msg: Any) -> Any: ... |
297 | 297 | |
298 | + | |
299 | +class DbPool: | |
300 | + def query(self, sql: str, params: list | None = ...) -> list: ... | |
301 | + def execute(self, sql: str, params: list | None = ...) -> int: ... | |
302 | + def query_async(self, sql: str, params: list | None = ...) -> Any: ... | |
303 | + def execute_async(self, sql: str, params: list | None = ...) -> Any: ... | |
304 | + def transaction(self, stmts: list, isolation: str | None = ...) -> Any: ... | |
298 | 305 | |
▼crates/justapi-py/python/justapi/app.pyi
+34-65
| @@ -1,3 +1,4 @@ | ||
1 | +from typing import Any, Callable | |
1 | 2 | import typing |
2 | 3 | from ._justapi import TokenStreamResponse as TokenStreamResponse |
3 | 4 | from _typeshed import Incomplete |
| @@ -54,35 +55,18 @@ class HTTPConnection: | ||
54 | 55 | path_params: dict[str, str] |
55 | 56 | cookies: dict[str, str] |
56 | 57 | query_string: bytes |
57 | - def receive(self) -> Incomplete: ... | |
58 | - def url_for(self, name: str, **path_params) -> Incomplete: ... | |
59 | - def get(self, key: str, default: Incomplete = ...) -> Incomplete: ... | |
60 | - def __getitem__(self, key: str) -> Incomplete: ... | |
61 | - def __setitem__(self, key: str, value: Incomplete) -> None: ... | |
62 | - def __contains__(self, key: str) -> bool: ... | |
63 | 58 | |
64 | 59 | class Headers: |
65 | 60 | raw: list[tuple[bytes, bytes]] |
66 | - def get(self, key: str, default: Incomplete = ...) -> str | Incomplete: ... | |
67 | 61 | def keys(self) -> list[str]: ... |
68 | 62 | def values(self) -> list[str]: ... |
69 | 63 | def items(self) -> list[tuple[str, str]]: ... |
70 | 64 | def mutable(self) -> bool: ... |
71 | - def __getitem__(self, key: str) -> str: ... | |
72 | - def __contains__(self, key: str) -> bool: ... | |
73 | 65 | def __iter__(self) -> typing.Iterator[str]: ... |
74 | 66 | |
75 | 67 | class QueryParams: |
76 | - def get(self, key: str, default: Incomplete = ...) -> str | Incomplete: ... | |
77 | 68 | def getlist(self, key: str) -> list[str]: ... |
78 | 69 | def multi_items(self) -> list[tuple[str, str]]: ... |
79 | - def keys(self) -> list[str]: ... | |
80 | - def values(self) -> list[str]: ... | |
81 | - def items(self) -> list[tuple[str, str]]: ... | |
82 | - def mutable(self) -> bool: ... | |
83 | - def __getitem__(self, key: str) -> str: ... | |
84 | - def __contains__(self, key: str) -> bool: ... | |
85 | - def __iter__(self) -> typing.Iterator[str]: ... | |
86 | 70 | |
87 | 71 | class URL: |
88 | 72 | scheme: str |
| @@ -98,10 +82,7 @@ class URL: | ||
98 | 82 | class State: |
99 | 83 | def __getattr__(self, name: str) -> Incomplete: ... |
100 | 84 | def __setattr__(self, name: str, value: Incomplete) -> None: ... |
101 | - def __getitem__(self, key: str) -> Incomplete: ... | |
102 | - def __setitem__(self, key: str, value: Incomplete) -> None: ... | |
103 | 85 | def __delitem__(self, key: str) -> None: ... |
104 | - def __contains__(self, key: str) -> bool: ... | |
105 | 86 | |
106 | 87 | class RequestStream: |
107 | 88 | def __aiter__(self) -> Incomplete: ... |
| @@ -115,97 +96,85 @@ class RequestValidationError(Exception): | ||
115 | 96 | class Depends: |
116 | 97 | dependency: Incomplete |
117 | 98 | use_cache: Incomplete |
118 | - def __init__(self, dependency: typing.Callable, use_cache: bool = True) -> None: ... | |
119 | 99 | |
120 | 100 | def adaptive_batch(max_size: int = 32, window_ms: int = 10): ... |
121 | 101 | |
102 | +def native_async(func=None): ... | |
103 | + | |
122 | 104 | class JustAPIApp: |
123 | 105 | dependencies: Incomplete |
124 | 106 | exception_handlers: Incomplete |
125 | 107 | middlewares: Incomplete |
126 | - def __init__(self, dependencies: list[Depends] = None) -> None: ... | |
127 | 108 | def middleware(self, middleware_type: str = 'http'): ... |
128 | - def add_cors(self, allow_origins: list[str] = None, allow_methods: list[str] = None, allow_headers: list[str] = None, allow_credentials: bool = False, expose_headers: list[str] = None, max_age: int = None) -> None: ... | |
109 | + def add_cors(self, allow_origins: list[str] | None = None, allow_methods: list[str] | None = None, allow_headers: list[str] | None = None, allow_credentials: bool = False, expose_headers: list[str] | None = None, max_age: int | None = None) -> None: ... | |
129 | 110 | def set_jwt_auth(self, secret: str, algorithm: str = "HS256") -> None: ... |
130 | 111 | def add_exception_handler(self, exc_class, handler) -> None: ... |
131 | - def get(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
132 | - def post(self, path: str, handler=None, body_schema=None, schema=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
133 | - def put(self, path: str, handler=None, body_schema=None, schema=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
134 | - def delete(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
135 | - def patch(self, path: str, handler=None, body_schema=None, schema=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
136 | - def query(self, path: str, handler=None, body_schema=None, schema=None, experimental: bool = True, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
137 | - def head(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
138 | - def options(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
139 | - def trace(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
140 | - def url_for(self, name: str, **path_params) -> str: ... | |
112 | + def post(self, path: str, handler: Any | None = None, body_schema: Any | None = None, schema: Any | None = None, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None): ... | |
113 | + def put(self, path: str, handler: Any | None = None, body_schema: Any | None = None, schema: Any | None = None, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None): ... | |
114 | + def delete(self, path: str, handler: Any | None = None, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None): ... | |
115 | + def patch(self, path: str, handler: Any | None = None, body_schema: Any | None = None, schema: Any | None = None, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None): ... | |
116 | + def query(self, path: str, handler: Any | None = None, body_schema: Any | None = None, schema: Any | None = None, experimental: bool = True, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None): ... | |
117 | + def get(self, path: str, handler: Any | None = None, body_schema: Any | None = None, schema: Any | None = None, query_schema: Any | None = None, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None, native: bool = False): ... | |
118 | + def connect_database(self) -> None: ... | |
119 | + @property | |
120 | + def db(self): ... | |
121 | + def sse_native(self, path: str, count: int = 10, interval_ms: int = 100): ... | |
122 | + def head(self, path: str, handler: Any | None = None, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None): ... | |
123 | + def options(self, path: str, handler: Any | None = None, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None): ... | |
124 | + def trace(self, path: str, handler: Any | None = None, dependencies: list[Depends] | None = None, middlewares: list[typing.Callable] | None = None, tags: list[str] | None = None, summary: str | None = None, description: str | None = None, deprecated: bool = False, status_code: int | None = None, responses: dict | None = None, operation_id: str | None = None, openapi_extra: dict | None = None, include_in_schema: bool = True, name: str | None = None): ... | |
141 | 125 | def frontend(self, path: str, directory: str, html: bool = True, check_dir: bool = True): ... |
142 | 126 | def add_plugin(self, plugin) -> None: ... |
143 | 127 | def use(self, plugin) -> None: ... |
144 | 128 | def set_database(self, db) -> None: ... |
129 | + def enable_http3(self, cert_path: str, key_path: str): ... | |
145 | 130 | def enable_gateway(self, config_path: str): ... |
131 | + | |
146 | 132 | def enable_circuit_breaker(self, failure_threshold: int = 5, reset_timeout_ms: int = 10000): ... |
147 | - def enable_request_coalescing(self, headers: list[str] = None): ... | |
133 | + def enable_request_coalescing(self, headers: list[str] | None = None): ... | |
148 | 134 | def set_grpc_addr(self, addr: str): ... |
149 | 135 | def add_grpc_service(self, servicer, add_func_to_server) -> None: ... |
150 | 136 | def include_controller(self, controller_cls) -> None: ... |
151 | - def url_for(self, name: str, **path_params) -> str: ... | |
152 | - def include_router(self, router, prefix: str = '', tags: list[str] = None): ... | |
137 | + def include_router(self, router, prefix: str = '', tags: list[str] | None = None): ... | |
153 | 138 | def run(self, addr: str): ... |
154 | - def sse(self, path: str, handler=None): ... | |
155 | - def websocket(self, path: str, handler=None): ... | |
139 | + def sse(self, path: str, handler: Any | None = None): ... | |
140 | + def websocket(self, path: str, handler: Any | None = None): ... | |
156 | 141 | def enable_system_routes(self) -> JustAPIApp: ... |
157 | - def tool(self, name: str = None, description: str = None, input_schema: Incomplete = None, annotations: Incomplete = None): ... | |
142 | + def tool(self, name: str | None = None, description: str | None = None, input_schema: Incomplete = None, annotations: Incomplete = None): ... | |
158 | 143 | def list_tools(self) -> list[dict]: ... |
159 | - def call_tool(self, name: str, arguments: dict = None) -> Incomplete: ... | |
160 | - def create_session(self, data: dict = None) -> str: ... | |
144 | + def call_tool(self, name: str, arguments: dict | None = None) -> Incomplete: ... | |
145 | + def create_session(self, data: dict | None = None) -> str: ... | |
161 | 146 | def get_session(self, id: str) -> Incomplete: ... |
162 | 147 | def set_session(self, id: str, data: dict) -> bool: ... |
163 | 148 | def update_session(self, id: str, **fields) -> bool: ... |
164 | 149 | def delete_session(self, id: str) -> bool: ... |
165 | 150 | def enable_sessions(self, cookie_name: str = ...) -> JustAPIApp: ... |
166 | - def stream_json(self, path: str, schema: Incomplete = None, mode: str = ..., handler=None): ... | |
151 | + def stream_json(self, path: str, schema: Incomplete = None, mode: str = ..., handler: Any | None = None): ... | |
167 | 152 | |
168 | 153 | class APIRouter: |
169 | 154 | prefix: Incomplete |
170 | 155 | dependencies: Incomplete |
171 | 156 | middlewares: Incomplete |
172 | 157 | routes: Incomplete |
173 | - def __init__(self, prefix: str = '', tags: list[str] = None, responses: dict = None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, callbacks: list[typing.Callable] = None, deprecated: bool = False, include_in_schema: bool = True) -> None: ... | |
174 | - def get(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
175 | - def post(self, path: str, handler=None, body_schema=None, schema=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
176 | - def put(self, path: str, handler=None, body_schema=None, schema=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
177 | - def patch(self, path: str, handler=None, body_schema=None, schema=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
178 | - def delete(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
179 | - def query(self, path: str, handler=None, body_schema=None, schema=None, experimental: bool = True, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
180 | - def head(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
181 | - def options(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
182 | - def trace(self, path: str, handler=None, dependencies: list[Depends] = None, middlewares: list[typing.Callable] = None, tags: list[str] = None, summary: str = None, description: str = None, deprecated: bool = False, status_code: int = None, responses: dict = None, operation_id: str = None, openapi_extra: dict = None, include_in_schema: bool = True, name: str = None): ... | |
183 | - def url_for(self, name: str, **path_params) -> str: ... | |
184 | - def frontend(self, path: str, directory: str, html: bool = True, check_dir: bool = True): ... | |
185 | - def sse(self, path: str, handler=None, dependencies: list[Depends] = None): ... | |
186 | - def websocket(self, path: str, handler=None, dependencies: list[Depends] = None): ... | |
187 | 158 | |
188 | 159 | class Controller: ... |
189 | 160 | |
190 | -def controller(path: str, dependencies: list[Depends] = None): ... | |
161 | +def controller(path: str, dependencies: list[Depends] | None = None): ... | |
191 | 162 | def route_get(path: str, dependencies: list[Depends] | None = None) -> typing.Callable: ... |
192 | -def route_post(path: str, body_schema=None, schema=None, dependencies: list[Depends] | None = None) -> typing.Callable: ... | |
193 | -def route_put(path: str, body_schema=None, schema=None, dependencies: list[Depends] | None = None) -> typing.Callable: ... | |
194 | -def route_patch(path: str, body_schema=None, schema=None, dependencies: list[Depends] | None = None) -> typing.Callable: ... | |
163 | +def route_post(path: str, body_schema: Any | None = None, schema: Any | None = None, dependencies: list[Depends] | None = None) -> typing.Callable: ... | |
164 | +def route_put(path: str, body_schema: Any | None = None, schema: Any | None = None, dependencies: list[Depends] | None = None) -> typing.Callable: ... | |
165 | +def route_patch(path: str, body_schema: Any | None = None, schema: Any | None = None, dependencies: list[Depends] | None = None) -> typing.Callable: ... | |
195 | 166 | def route_delete(path: str, dependencies: list[Depends] | None = None) -> typing.Callable: ... |
196 | -def route_query(path: str, body_schema=None, schema=None, experimental: bool = True, dependencies: list[Depends] = None): ... | |
197 | -def route_sse(path: str, dependencies: list[Depends] = None): ... | |
198 | -def route_websocket(path: str, dependencies: list[Depends] = None): ... | |
167 | +def route_query(path: str, body_schema: Any | None = None, schema: Any | None = None, experimental: bool = True, dependencies: list[Depends] | None = None): ... | |
168 | +def route_sse(path: str, dependencies: list[Depends] | None = None): ... | |
169 | +def route_websocket(path: str, dependencies: list[Depends] | None = None): ... | |
199 | 170 | |
200 | 171 | class _JustAPIGrpcContext: |
201 | - def __init__(self) -> None: ... | |
202 | 172 | def set_code(self, code) -> None: ... |
203 | 173 | def set_details(self, details) -> None: ... |
204 | 174 | def abort(self, code, details) -> None: ... |
205 | 175 | |
206 | 176 | class _JustAPIGrpcMockServer: |
207 | 177 | app: Incomplete |
208 | - def __init__(self, app) -> None: ... | |
209 | 178 | def add_generic_rpc_handlers(self, generic_rpc_handlers) -> None: ... |
210 | 179 | def add_registered_method_handlers(self, service_name, method_handlers) -> None: ... |
211 | 180 | |
212 | 181 | |
▼crates/justapi-py/python/justapi/py.typed
+0-0
0 | 0 |
▼crates/justapi-py/python/justapi/responses.pyi
+1-0
| @@ -1,3 +1,4 @@ | ||
1 | +from ._justapi import TokenStreamResponse | |
1 | 2 | """Type stubs for justapi.responses (auto-generated from runtime introspection).""" |
2 | 3 | from _typeshed import Incomplete |
3 | 4 | from typing import Any, Optional, Iterator, Mapping, List, Dict, Callable |
4 | 5 | |
▼crates/justapi-py/python/justapi/templating.pyi
+1-1
| @@ -7,4 +7,4 @@ class Jinja2Templates: | ||
7 | 7 | env: Incomplete |
8 | 8 | def __init__(self, directory: str) -> None: ... |
9 | 9 | def get_template(self, name: str) -> jinja2.Template: ... |
10 | - def TemplateResponse(self, name: str, context: dict[str, Any], status_code: int = 200, headers: list = None) -> dict: ... | |
10 | + def TemplateResponse(self, name: str, context: dict[str, Any], status_code: int = 200, headers: list | None = None) -> dict: ... | |
11 | 11 | |