massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stubs / protobuf / google / protobuf / internal / containers.pyi
1 from typing import (
2     Any,
3     Callable,
4     Iterable,
5     Iterator,
6     List,
7     Mapping as Mapping,
8     MutableMapping as MutableMapping,
9     Optional,
10     Sequence,
11     Text,
12     TypeVar,
13     Union,
14     overload,
15 )
16
17 from google.protobuf.descriptor import Descriptor
18 from google.protobuf.internal.message_listener import MessageListener
19 from google.protobuf.internal.python_message import GeneratedProtocolMessageType
20 from google.protobuf.message import Message
21
22 _T = TypeVar("_T")
23 _K = TypeVar("_K", bound=Union[bool, int, Text])
24 _ScalarV = TypeVar("_ScalarV", bound=Union[bool, int, float, Text, bytes])
25 _MessageV = TypeVar("_MessageV", bound=Message)
26 _M = TypeVar("_M")
27
28 class BaseContainer(Sequence[_T]):
29     def __init__(self, message_listener: MessageListener) -> None: ...
30     def __len__(self) -> int: ...
31     def __ne__(self, other: object) -> bool: ...
32     def __hash__(self) -> int: ...
33     def __repr__(self) -> str: ...
34     def sort(self, *, key: Optional[Callable[[_T], Any]] = ..., reverse: bool = ...) -> None: ...
35     @overload
36     def __getitem__(self, key: int) -> _T: ...
37     @overload
38     def __getitem__(self, key: slice) -> List[_T]: ...
39
40 class RepeatedScalarFieldContainer(BaseContainer[_ScalarV]):
41     def __init__(self, message_listener: MessageListener, message_descriptor: Descriptor) -> None: ...
42     def append(self, value: _ScalarV) -> None: ...
43     def insert(self, key: int, value: _ScalarV) -> None: ...
44     def extend(self, elem_seq: Optional[Iterable[_ScalarV]]) -> None: ...
45     def MergeFrom(self: _M, other: _M) -> None: ...
46     def remove(self, elem: _ScalarV) -> None: ...
47     def pop(self, key: int = ...) -> _ScalarV: ...
48     @overload
49     def __setitem__(self, key: int, value: _ScalarV) -> None: ...
50     @overload
51     def __setitem__(self, key: slice, value: Iterable[_ScalarV]) -> None: ...
52     def __getslice__(self, start: int, stop: int) -> List[_ScalarV]: ...
53     def __setslice__(self, start: int, stop: int, values: Iterable[_ScalarV]) -> None: ...
54     def __delitem__(self, key: Union[int, slice]) -> None: ...
55     def __delslice__(self, start: int, stop: int) -> None: ...
56     def __eq__(self, other: object) -> bool: ...
57
58 class RepeatedCompositeFieldContainer(BaseContainer[_MessageV]):
59     def __init__(self, message_listener: MessageListener, type_checker: Any) -> None: ...
60     def add(self, **kwargs: Any) -> _MessageV: ...
61     def append(self, value: _MessageV) -> None: ...
62     def insert(self, key: int, value: _MessageV) -> None: ...
63     def extend(self, elem_seq: Iterable[_MessageV]) -> None: ...
64     def MergeFrom(self: _M, other: _M) -> None: ...
65     def remove(self, elem: _MessageV) -> None: ...
66     def pop(self, key: int = ...) -> _MessageV: ...
67     def __getslice__(self, start: int, stop: int) -> List[_MessageV]: ...
68     def __delitem__(self, key: Union[int, slice]) -> None: ...
69     def __delslice__(self, start: int, stop: int) -> None: ...
70     def __eq__(self, other: object) -> bool: ...
71
72 class ScalarMap(MutableMapping[_K, _ScalarV]):
73     def __setitem__(self, k: _K, v: _ScalarV) -> None: ...
74     def __delitem__(self, v: _K) -> None: ...
75     def __getitem__(self, k: _K) -> _ScalarV: ...
76     def __len__(self) -> int: ...
77     def __iter__(self) -> Iterator[_K]: ...
78     def __eq__(self, other: object) -> bool: ...
79     def MergeFrom(self: _M, other: _M): ...
80     def InvalidateIterators(self) -> None: ...
81     def GetEntryClass(self) -> GeneratedProtocolMessageType: ...
82
83 class MessageMap(MutableMapping[_K, _MessageV]):
84     def __setitem__(self, k: _K, v: _MessageV) -> None: ...
85     def __delitem__(self, v: _K) -> None: ...
86     def __getitem__(self, k: _K) -> _MessageV: ...
87     def __len__(self) -> int: ...
88     def __iter__(self) -> Iterator[_K]: ...
89     def __eq__(self, other: object) -> bool: ...
90     def get_or_create(self, key: _K) -> _MessageV: ...
91     def MergeFrom(self: _M, other: _M): ...
92     def InvalidateIterators(self) -> None: ...
93     def GetEntryClass(self) -> GeneratedProtocolMessageType: ...