From d600c6cde498f5d471f35bd6061f36c616e4ff1b Mon Sep 17 00:00:00 2001 From: Roman Mogylatov Date: Wed, 26 Aug 2020 21:11:14 -0400 Subject: [PATCH] Add stubs for the extensions --- src/dependency_injector/ext/__init__.pyi | 0 src/dependency_injector/ext/aiohttp.pyi | 23 +++++++++++++++++++++++ src/dependency_injector/ext/flask.pyi | 24 ++++++++++++++++++++++++ 3 files changed, 47 insertions(+) create mode 100644 src/dependency_injector/ext/__init__.pyi create mode 100644 src/dependency_injector/ext/aiohttp.pyi create mode 100644 src/dependency_injector/ext/flask.pyi diff --git a/src/dependency_injector/ext/__init__.pyi b/src/dependency_injector/ext/__init__.pyi new file mode 100644 index 00000000..e69de29b diff --git a/src/dependency_injector/ext/aiohttp.pyi b/src/dependency_injector/ext/aiohttp.pyi new file mode 100644 index 00000000..05c68acc --- /dev/null +++ b/src/dependency_injector/ext/aiohttp.pyi @@ -0,0 +1,23 @@ +from typing import Awaitable as _Awaitable + +from dependency_injector import providers + + +class Application(providers.Singleton): ... + + +class Extension(providers.Singleton): ... + + +class Middleware(providers.DelegatedCallable): ... + + +class MiddlewareFactory(providers.Factory): ... + + +class View(providers.Callable): + def as_view(self) -> _Awaitable: ... + + +class ClassBasedView(providers.Factory): + def as_view(self) -> _Awaitable: ... diff --git a/src/dependency_injector/ext/flask.pyi b/src/dependency_injector/ext/flask.pyi new file mode 100644 index 00000000..37bffd36 --- /dev/null +++ b/src/dependency_injector/ext/flask.pyi @@ -0,0 +1,24 @@ +from typing import Union, Optional, Callable as _Callable, Any + +from flask import request as flask_request +from dependency_injector import providers + + +request: providers.Object[flask_request] + + +class Application(providers.Singleton): ... + + +class Extension(providers.Singleton): ... + + +class View(providers.Callable): + def as_view(self) -> _Callable[..., Any]: ... + + +class ClassBasedView(providers.Factory): + def as_view(self, name: str) -> _Callable[..., Any]: ... + + +def as_view(provider: Union[View, ClassBasedView], name: Optional[str] = None) -> _Callable[..., Any]: ...