1 from typing import Any, Generic, Iterator, Text, TypeVar, Union
3 from google.protobuf.descriptor import FieldDescriptor
4 from google.protobuf.internal.containers import RepeatedCompositeFieldContainer, RepeatedScalarFieldContainer
5 from google.protobuf.message import Message
7 _ContainerMessageT = TypeVar("_ContainerMessageT", bound=Message)
8 _ExtenderMessageT = TypeVar(
10 bound=Union[Message, RepeatedScalarFieldContainer[Any], RepeatedCompositeFieldContainer[Any], bool, int, float, Text, bytes],
13 class _ExtensionFieldDescriptor(FieldDescriptor, Generic[_ContainerMessageT, _ExtenderMessageT]): ...
15 class _ExtensionDict(Generic[_ContainerMessageT]):
16 def __init__(self, extended_message: _ContainerMessageT) -> None: ...
18 self, extension_handle: _ExtensionFieldDescriptor[_ContainerMessageT, _ExtenderMessageT]
19 ) -> _ExtenderMessageT: ...
21 self, extension_handle: _ExtensionFieldDescriptor[_ContainerMessageT, _ExtenderMessageT], value: _ExtenderMessageT
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: ...