massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stdlib / gettext.pyi
1 import sys
2 from _typeshed import StrPath
3 from typing import IO, Any, Container, Iterable, Sequence, Type, TypeVar, overload
4 from typing_extensions import Literal
5
6 class NullTranslations:
7     def __init__(self, fp: IO[str] | None = ...) -> None: ...
8     def _parse(self, fp: IO[str]) -> None: ...
9     def add_fallback(self, fallback: NullTranslations) -> None: ...
10     def gettext(self, message: str) -> str: ...
11     def lgettext(self, message: str) -> str: ...
12     def ngettext(self, msgid1: str, msgid2: str, n: int) -> str: ...
13     def lngettext(self, msgid1: str, msgid2: str, n: int) -> str: ...
14     if sys.version_info >= (3, 8):
15         def pgettext(self, context: str, message: str) -> str: ...
16         def npgettext(self, context: str, msgid1: str, msgid2: str, n: int) -> str: ...
17     def info(self) -> Any: ...
18     def charset(self) -> Any: ...
19     def output_charset(self) -> Any: ...
20     def set_output_charset(self, charset: str) -> None: ...
21     def install(self, names: Container[str] | None = ...) -> None: ...
22
23 class GNUTranslations(NullTranslations):
24     LE_MAGIC: int
25     BE_MAGIC: int
26     CONTEXT: str
27     VERSIONS: Sequence[int]
28
29 def find(domain: str, localedir: StrPath | None = ..., languages: Iterable[str] | None = ..., all: bool = ...) -> Any: ...
30
31 _T = TypeVar("_T")
32
33 @overload
34 def translation(
35     domain: str,
36     localedir: StrPath | None = ...,
37     languages: Iterable[str] | None = ...,
38     class_: None = ...,
39     fallback: bool = ...,
40     codeset: str | None = ...,
41 ) -> NullTranslations: ...
42 @overload
43 def translation(
44     domain: str,
45     localedir: StrPath | None = ...,
46     languages: Iterable[str] | None = ...,
47     class_: Type[_T] = ...,
48     fallback: Literal[False] = ...,
49     codeset: str | None = ...,
50 ) -> _T: ...
51 @overload
52 def translation(
53     domain: str,
54     localedir: StrPath | None = ...,
55     languages: Iterable[str] | None = ...,
56     class_: Type[Any] = ...,
57     fallback: Literal[True] = ...,
58     codeset: str | None = ...,
59 ) -> Any: ...
60 def install(
61     domain: str, localedir: StrPath | None = ..., codeset: str | None = ..., names: Container[str] | None = ...
62 ) -> None: ...
63 def textdomain(domain: str | None = ...) -> str: ...
64 def bindtextdomain(domain: str, localedir: StrPath | None = ...) -> str: ...
65 def bind_textdomain_codeset(domain: str, codeset: str | None = ...) -> str: ...
66 def dgettext(domain: str, message: str) -> str: ...
67 def ldgettext(domain: str, message: str) -> str: ...
68 def dngettext(domain: str, msgid1: str, msgid2: str, n: int) -> str: ...
69 def ldngettext(domain: str, msgid1: str, msgid2: str, n: int) -> str: ...
70 def gettext(message: str) -> str: ...
71 def lgettext(message: str) -> str: ...
72 def ngettext(msgid1: str, msgid2: str, n: int) -> str: ...
73 def lngettext(msgid1: str, msgid2: str, n: int) -> str: ...
74
75 if sys.version_info >= (3, 8):
76     def pgettext(context: str, message: str) -> str: ...
77     def dpgettext(domain: str, context: str, message: str) -> str: ...
78     def npgettext(context: str, msgid1: str, msgid2: str, n: int) -> str: ...
79     def dnpgettext(domain: str, context: str, msgid1: str, msgid2: str, n: int) -> str: ...
80
81 Catalog = translation