massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stubs / waitress / waitress / proxy_headers.pyi
1 from logging import Logger
2 from typing import Any, Callable, Mapping, NamedTuple, Sequence
3
4 from .utilities import BadRequest as BadRequest
5
6 PROXY_HEADERS: frozenset[Any]
7
8 class Forwarded(NamedTuple):
9     by: Any
10     for_: Any
11     host: Any
12     proto: Any
13
14 class MalformedProxyHeader(Exception):
15     header: str = ...
16     reason: str = ...
17     value: str = ...
18     def __init__(self, header: str, reason: str, value: str) -> None: ...
19
20 def proxy_headers_middleware(
21     app: Any,
22     trusted_proxy: str | None = ...,
23     trusted_proxy_count: int = ...,
24     trusted_proxy_headers: set[str] | None = ...,
25     clear_untrusted: bool = ...,
26     log_untrusted: bool = ...,
27     logger: Logger = ...,
28 ) -> Callable[..., Any]: ...
29 def parse_proxy_headers(
30     environ: Mapping[str, str], trusted_proxy_count: int, trusted_proxy_headers: set[str], logger: Logger = ...
31 ) -> set[str]: ...
32 def strip_brackets(addr: str) -> str: ...
33 def clear_untrusted_headers(
34     environ: Mapping[str, str], untrusted_headers: Sequence[str], log_warning: bool = ..., logger: Logger = ...
35 ) -> None: ...