from ._mixin import FieldStruct
from caterpillar.abc import _ContextLike
from caterpillar.options import Flag
from typing import Tuple, Type

VARINT_LSB: Flag[None]

class VarInt(FieldStruct[int, int]):
    def __type__(self) -> Type[int]: ...
    def __size__(self, context: _ContextLike) -> int: ...
    def bit_config(self, context: _ContextLike) -> Tuple[int, int]: ...
    def pack_single(self, obj: int, context: _ContextLike) -> None: ...
    def unpack_single(self, context: _ContextLike) -> int: ...

vint: VarInt
