massive update, probably broken
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-pyright / node_modules / pyright / dist / typeshed-fallback / stubs / protobuf / google / protobuf / internal / extension_dict.pyi
1 from typing import Any, Generic, Iterator, Text, TypeVar, Union
2
3 from google.protobuf.descriptor import FieldDescriptor
4 from google.protobuf.internal.containers import RepeatedCompositeFieldContainer, RepeatedScalarFieldContainer
5 from google.protobuf.message import Message
6
7 _ContainerMessageT = TypeVar("_ContainerMessageT", bound=Message)
8 _ExtenderMessageT = TypeVar(
9     "_ExtenderMessageT",
10     bound=Union[Message, RepeatedScalarFieldContainer[Any], RepeatedCompositeFieldContainer[Any], bool, int, float, Text, bytes],
11 )
12
13 class _ExtensionFieldDescriptor(FieldDescriptor, Generic[_ContainerMessageT, _ExtenderMessageT]): ...
14
15 class _ExtensionDict(Generic[_ContainerMessageT]):
16     def __init__(self, extended_message: _ContainerMessageT) -> None: ...
17     def __getitem__(
18         self, extension_handle: _ExtensionFieldDescriptor[_ContainerMessageT, _ExtenderMessageT]
19     ) -> _ExtenderMessageT: ...
20     def __setitem__(
21         self, extension_handle: _ExtensionFieldDescriptor[_ContainerMessageT, _ExtenderMessageT], value: _ExtenderMessageT
22     ) -> None: ...
23     def __delitem__(self, extension_handle: _ExtensionFieldDescriptor[_ContainerMessageT, _ExtenderMessageT]) -> None: ...
24     def __contains__(self, extension_handle: _ExtensionFieldDescriptor[_ContainerMessageT, _ExtenderMessageT]) -> bool: ...
25     def __iter__(self) -> Iterator[_ExtensionFieldDescriptor[_ContainerMessageT, Any]]: ...
26     def __len__(self) -> int: ...