diff --git a/stdlib/3/email/message.pyi b/stdlib/3/email/message.pyi index 824493968..6e30176b2 100644 --- a/stdlib/3/email/message.pyi +++ b/stdlib/3/email/message.pyi @@ -6,6 +6,7 @@ from typing import ( import sys from email.charset import Charset from email.errors import MessageDefect +from email.header import Header if sys.version_info >= (3, 3): from email.policy import Policy if sys.version_info >= (3, 4): @@ -19,6 +20,7 @@ _PayloadType = Union[List[Message], str, bytes] _CharsetType = Union[Charset, str, None] _ParamsType = Union[str, None, Tuple[str, Optional[str], str]] _ParamType = Union[str, Tuple[Optional[str], Optional[str], str]] +_HeaderType = Union[str, Header] class Message: preamble = ... # type: Optional[str] @@ -36,16 +38,16 @@ class Message: def get_charset(self) -> _CharsetType: ... def __len__(self) -> int: ... def __contains__(self, name: str) -> bool: ... - def __getitem__(self, name: str) -> Optional[str]: ... - def __setitem__(self, name: str, val: str) -> None: ... + def __getitem__(self, name: str) -> Optional[_HeaderType]: ... + def __setitem__(self, name: str, val: _HeaderType) -> None: ... def __delitem__(self, name: str) -> None: ... def keys(self) -> List[str]: ... - def values(self) -> List[str]: ... - def items(self) -> List[Tuple[str, str]]: ... - def get(self, name: str, failobj: _T = ...) -> Union[str, _T]: ... - def get_all(self, name: str, failobj: _T = ...) -> Union[List[str], _T]: ... + def values(self) -> List[_HeaderType]: ... + def items(self) -> List[Tuple[str, _HeaderType]]: ... + def get(self, name: str, failobj: _T = ...) -> Union[_HeaderType, _T]: ... + def get_all(self, name: str, failobj: _T = ...) -> Union[List[_HeaderType], _T]: ... def add_header(self, _name: str, _value: str, **_params: _ParamsType) -> None: ... - def replace_header(self, _name: str, _value: str) -> None: ... + def replace_header(self, _name: str, _value: _HeaderType) -> None: ... def get_content_type(self) -> str: ... def get_content_maintype(self) -> str: ... def get_content_subtype(self) -> str: ...