1 # Stubs for nntplib (Python 3)
\r
6 from typing import Any, Dict, IO, Iterable, List, NamedTuple, Optional, Tuple, TypeVar, Union
\r
8 _SelfT = TypeVar('_SelfT', bound=_NNTPBase)
\r
9 _File = Union[IO[bytes], bytes, str, None]
\r
12 class NNTPError(Exception):
\r
14 class NNTPReplyError(NNTPError): ...
\r
15 class NNTPTemporaryError(NNTPError): ...
\r
16 class NNTPPermanentError(NNTPError): ...
\r
17 class NNTPProtocolError(NNTPError): ...
\r
18 class NNTPDataError(NNTPError): ...
\r
23 GroupInfo = NamedTuple('GroupInfo', [
\r
29 ArticleInfo = NamedTuple('ArticleInfo', [
\r
31 ('message_id', str),
\r
32 ('lines', List[bytes]),
\r
35 def decode_header(header_str: str) -> str: ...
\r
45 readermode_afterauth: bool
\r
48 nntp_implementation: str
\r
51 def __init__(self, file: IO[bytes], host: str,
\r
52 readermode: Optional[bool] = ..., timeout: float = ...) -> None: ...
\r
53 def __enter__(self: _SelfT) -> _SelfT: ...
\r
54 def __exit__(self, *args: Any) -> None: ...
\r
55 def getwelcome(self) -> str: ...
\r
56 def getcapabilities(self) -> Dict[str, List[str]]: ...
\r
57 def set_debuglevel(self, level: int) -> None: ...
\r
58 def debug(self, level: int) -> None: ...
\r
59 def capabilities(self) -> Tuple[str, Dict[str, List[str]]]: ...
\r
60 def newgroups(self, date: Union[datetime.date, datetime.datetime], *, file: _File = ...) -> Tuple[str, List[str]]: ...
\r
61 def newnews(self, group: str, date: Union[datetime.date, datetime.datetime], *, file: _File = ...) -> Tuple[str, List[str]]: ...
\r
62 def list(self, group_pattern: Optional[str] = ..., *, file: _File = ...) -> Tuple[str, List[str]]: ...
\r
63 def description(self, group: str) -> str: ...
\r
64 def descriptions(self, group_pattern: str) -> Tuple[str, Dict[str, str]]: ...
\r
65 def group(self, name: str) -> Tuple[str, int, int, int, str]: ...
\r
66 def help(self, *, file: _File = ...) -> Tuple[str, List[str]]: ...
\r
67 def stat(self, message_spec: Any = ...) -> Tuple[str, int, str]: ...
\r
68 def next(self) -> Tuple[str, int, str]: ...
\r
69 def last(self) -> Tuple[str, int, str]: ...
\r
70 def head(self, message_spec: Any = ..., *, file: _File = ...) -> Tuple[str, ArticleInfo]: ...
\r
71 def body(self, message_spec: Any = ..., *, file: _File = ...) -> Tuple[str, ArticleInfo]: ...
\r
72 def article(self, message_spec: Any = ..., *, file: _File = ...) -> Tuple[str, ArticleInfo]: ...
\r
73 def slave(self) -> str: ...
\r
74 def xhdr(self, hdr: str, str: Any, *, file: _File = ...) -> Tuple[str, List[str]]: ...
\r
75 def xover(self, start: int, end: int, *, file: _File = ...) -> Tuple[str, List[Tuple[int, Dict[str, str]]]]: ...
\r
76 def over(self, message_spec: Union[None, str, List[Any], Tuple[Any, ...]], *, file: _File = ...) -> Tuple[str, List[Tuple[int, Dict[str, str]]]]: ...
\r
77 def xgtitle(self, group: str, *, file: _File = ...) -> Tuple[str, List[Tuple[str, str]]]: ...
\r
78 def xpath(self, id: Any) -> Tuple[str, str]: ...
\r
79 def date(self) -> Tuple[str, datetime.datetime]: ...
\r
80 def post(self, data: Union[bytes, Iterable[bytes]]) -> str: ...
\r
81 def ihave(self, message_id: Any, data: Union[bytes, Iterable[bytes]]) -> str: ...
\r
82 def quit(self) -> str: ...
\r
83 def login(self, user: Optional[str] = ..., password: Optional[str] = ..., usenetrc: bool = ...) -> None: ...
\r
84 def starttls(self, ssl_context: Optional[ssl.SSLContext] = ...) -> None: ...
\r
87 class NNTP(_NNTPBase):
\r
91 def __init__(self, host: str, port: int = ..., user: Optional[str] = ..., password: Optional[str] = ...,
\r
92 readermode: Optional[bool] = ..., usenetrc: bool = ...,
\r
93 timeout: float = ...) -> None: ...
\r
96 class NNTP_SSL(_NNTPBase):
\r
99 def __init__(self, host: str, port: int = ..., user: Optional[str] = ..., password: Optional[str] = ...,
\r
100 ssl_context: Optional[ssl.SSLContext] = ...,
\r
101 readermode: Optional[bool] = ..., usenetrc: bool = ...,
\r
102 timeout: float = ...) -> None: ...
\r