massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stdlib / http / cookiejar.pyi
1 import sys
2 from _typeshed import StrPath
3 from http.client import HTTPResponse
4 from typing import ClassVar, Iterable, Iterator, Pattern, Sequence, Tuple, TypeVar, overload
5 from urllib.request import Request
6
7 _T = TypeVar("_T")
8
9 class LoadError(OSError): ...
10
11 class CookieJar(Iterable[Cookie]):
12     non_word_re: ClassVar[Pattern[str]]  # undocumented
13     quote_re: ClassVar[Pattern[str]]  # undocumented
14     strict_domain_re: ClassVar[Pattern[str]]  # undocumented
15     domain_re: ClassVar[Pattern[str]]  # undocumented
16     dots_re: ClassVar[Pattern[str]]  # undocumented
17     magic_re: ClassVar[Pattern[str]]  # undocumented
18     def __init__(self, policy: CookiePolicy | None = ...) -> None: ...
19     def add_cookie_header(self, request: Request) -> None: ...
20     def extract_cookies(self, response: HTTPResponse, request: Request) -> None: ...
21     def set_policy(self, policy: CookiePolicy) -> None: ...
22     def make_cookies(self, response: HTTPResponse, request: Request) -> Sequence[Cookie]: ...
23     def set_cookie(self, cookie: Cookie) -> None: ...
24     def set_cookie_if_ok(self, cookie: Cookie, request: Request) -> None: ...
25     def clear(self, domain: str | None = ..., path: str | None = ..., name: str | None = ...) -> None: ...
26     def clear_session_cookies(self) -> None: ...
27     def clear_expired_cookies(self) -> None: ...  # undocumented
28     def __iter__(self) -> Iterator[Cookie]: ...
29     def __len__(self) -> int: ...
30     def __repr__(self) -> str: ...
31     def __str__(self) -> str: ...
32
33 class FileCookieJar(CookieJar):
34     filename: str
35     delayload: bool
36     if sys.version_info >= (3, 8):
37         def __init__(self, filename: StrPath | None = ..., delayload: bool = ..., policy: CookiePolicy | None = ...) -> None: ...
38     else:
39         def __init__(self, filename: str | None = ..., delayload: bool = ..., policy: CookiePolicy | None = ...) -> None: ...
40     def save(self, filename: str | None = ..., ignore_discard: bool = ..., ignore_expires: bool = ...) -> None: ...
41     def load(self, filename: str | None = ..., ignore_discard: bool = ..., ignore_expires: bool = ...) -> None: ...
42     def revert(self, filename: str | None = ..., ignore_discard: bool = ..., ignore_expires: bool = ...) -> None: ...
43
44 class MozillaCookieJar(FileCookieJar):
45     header: ClassVar[str]  # undocumented
46
47 class LWPCookieJar(FileCookieJar):
48     def as_lwp_str(self, ignore_discard: bool = ..., ignore_expires: bool = ...) -> str: ...  # undocumented
49
50 class CookiePolicy:
51     netscape: bool
52     rfc2965: bool
53     hide_cookie2: bool
54     def set_ok(self, cookie: Cookie, request: Request) -> bool: ...
55     def return_ok(self, cookie: Cookie, request: Request) -> bool: ...
56     def domain_return_ok(self, domain: str, request: Request) -> bool: ...
57     def path_return_ok(self, path: str, request: Request) -> bool: ...
58
59 class DefaultCookiePolicy(CookiePolicy):
60     rfc2109_as_netscape: bool
61     strict_domain: bool
62     strict_rfc2965_unverifiable: bool
63     strict_ns_unverifiable: bool
64     strict_ns_domain: int
65     strict_ns_set_initial_dollar: bool
66     strict_ns_set_path: bool
67     DomainStrictNoDots: ClassVar[int]
68     DomainStrictNonDomain: ClassVar[int]
69     DomainRFC2965Match: ClassVar[int]
70     DomainLiberal: ClassVar[int]
71     DomainStrict: ClassVar[int]
72     if sys.version_info >= (3, 8):
73         def __init__(
74             self,
75             blocked_domains: Sequence[str] | None = ...,
76             allowed_domains: Sequence[str] | None = ...,
77             netscape: bool = ...,
78             rfc2965: bool = ...,
79             rfc2109_as_netscape: bool | None = ...,
80             hide_cookie2: bool = ...,
81             strict_domain: bool = ...,
82             strict_rfc2965_unverifiable: bool = ...,
83             strict_ns_unverifiable: bool = ...,
84             strict_ns_domain: int = ...,
85             strict_ns_set_initial_dollar: bool = ...,
86             strict_ns_set_path: bool = ...,
87             secure_protocols: Sequence[str] = ...,
88         ) -> None: ...
89     else:
90         def __init__(
91             self,
92             blocked_domains: Sequence[str] | None = ...,
93             allowed_domains: Sequence[str] | None = ...,
94             netscape: bool = ...,
95             rfc2965: bool = ...,
96             rfc2109_as_netscape: bool | None = ...,
97             hide_cookie2: bool = ...,
98             strict_domain: bool = ...,
99             strict_rfc2965_unverifiable: bool = ...,
100             strict_ns_unverifiable: bool = ...,
101             strict_ns_domain: int = ...,
102             strict_ns_set_initial_dollar: bool = ...,
103             strict_ns_set_path: bool = ...,
104         ) -> None: ...
105     def blocked_domains(self) -> Tuple[str, ...]: ...
106     def set_blocked_domains(self, blocked_domains: Sequence[str]) -> None: ...
107     def is_blocked(self, domain: str) -> bool: ...
108     def allowed_domains(self) -> Tuple[str, ...] | None: ...
109     def set_allowed_domains(self, allowed_domains: Sequence[str] | None) -> None: ...
110     def is_not_allowed(self, domain: str) -> bool: ...
111     def set_ok_version(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
112     def set_ok_verifiability(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
113     def set_ok_name(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
114     def set_ok_path(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
115     def set_ok_domain(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
116     def set_ok_port(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
117     def return_ok_version(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
118     def return_ok_verifiability(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
119     def return_ok_secure(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
120     def return_ok_expires(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
121     def return_ok_port(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
122     def return_ok_domain(self, cookie: Cookie, request: Request) -> bool: ...  # undocumented
123
124 class Cookie:
125     version: int | None
126     name: str
127     value: str | None
128     port: str | None
129     path: str
130     path_specified: bool
131     secure: bool
132     expires: int | None
133     discard: bool
134     comment: str | None
135     comment_url: str | None
136     rfc2109: bool
137     port_specified: bool
138     domain: str  # undocumented
139     domain_specified: bool
140     domain_initial_dot: bool
141     def __init__(
142         self,
143         version: int | None,
144         name: str,
145         value: str | None,  # undocumented
146         port: str | None,
147         port_specified: bool,
148         domain: str,
149         domain_specified: bool,
150         domain_initial_dot: bool,
151         path: str,
152         path_specified: bool,
153         secure: bool,
154         expires: int | None,
155         discard: bool,
156         comment: str | None,
157         comment_url: str | None,
158         rest: dict[str, str],
159         rfc2109: bool = ...,
160     ) -> None: ...
161     def has_nonstandard_attr(self, name: str) -> bool: ...
162     @overload
163     def get_nonstandard_attr(self, name: str) -> str | None: ...
164     @overload
165     def get_nonstandard_attr(self, name: str, default: _T) -> str | _T: ...
166     def set_nonstandard_attr(self, name: str, value: str) -> None: ...
167     def is_expired(self, now: int | None = ...) -> bool: ...