| from typing import ( |
| Any, |
| Callable, |
| Generic, |
| Literal, |
| Optional, |
| Type, |
| TypeVar, |
| Union, |
| overload, |
| ) |
|
|
| from typing_extensions import Buffer |
|
|
|
|
| T = TypeVar("T") |
|
|
| enc_hook_sig = Optional[Callable[[Any], Any]] |
| ext_hook_sig = Optional[Callable[[int, memoryview], Any]] |
| dec_hook_sig = Optional[Callable[[type, Any], Any]] |
|
|
| class Ext: |
| code: int |
| data: Union[bytes, bytearray, memoryview] |
| def __init__( |
| self, code: int, data: Union[bytes, bytearray, memoryview] |
| ) -> None: ... |
|
|
| class Decoder(Generic[T]): |
| type: Type[T] |
| strict: bool |
| dec_hook: dec_hook_sig |
| ext_hook: ext_hook_sig |
| @overload |
| def __init__( |
| self: Decoder[Any], |
| *, |
| strict: bool = True, |
| dec_hook: dec_hook_sig = None, |
| ext_hook: ext_hook_sig = None, |
| ) -> None: ... |
| @overload |
| def __init__( |
| self: Decoder[T], |
| type: Type[T] = ..., |
| *, |
| strict: bool = True, |
| dec_hook: dec_hook_sig = None, |
| ext_hook: ext_hook_sig = None, |
| ) -> None: ... |
| @overload |
| def __init__( |
| self: Decoder[Any], |
| type: Any = ..., |
| *, |
| strict: bool = True, |
| dec_hook: dec_hook_sig = None, |
| ext_hook: ext_hook_sig = None, |
| ) -> None: ... |
| def decode(self, buf: Buffer, /) -> T: ... |
|
|
| class Encoder: |
| enc_hook: enc_hook_sig |
| decimal_format: Literal["string", "number"] |
| uuid_format: Literal["canonical", "hex", "bytes"] |
| order: Literal[None, "deterministic", "sorted"] |
| def __init__( |
| self, |
| *, |
| enc_hook: enc_hook_sig = None, |
| decimal_format: Literal["string", "number"] = "string", |
| uuid_format: Literal["canonical", "hex", "bytes"] = "canonical", |
| order: Literal[None, "deterministic", "sorted"] = None, |
| ): ... |
| def encode(self, obj: Any, /) -> bytes: ... |
| def encode_into( |
| self, obj: Any, buffer: bytearray, offset: Optional[int] = 0, / |
| ) -> None: ... |
|
|
| @overload |
| def decode( |
| buf: Buffer, |
| /, |
| *, |
| strict: bool = True, |
| dec_hook: dec_hook_sig = None, |
| ext_hook: ext_hook_sig = None, |
| ) -> Any: ... |
| @overload |
| def decode( |
| buf: Buffer, |
| /, |
| *, |
| type: Type[T] = ..., |
| strict: bool = True, |
| dec_hook: dec_hook_sig = None, |
| ext_hook: ext_hook_sig = None, |
| ) -> T: ... |
| @overload |
| def decode( |
| buf: Buffer, |
| /, |
| *, |
| type: Any = ..., |
| strict: bool = True, |
| dec_hook: dec_hook_sig = None, |
| ext_hook: ext_hook_sig = None, |
| ) -> Any: ... |
| def encode(obj: Any, /, *, enc_hook: enc_hook_sig = None, order: Literal[None, "deterministic", "sorted"] = None) -> bytes: ... |
|
|