from google.protobuf import struct_pb2

from proto.marshal.collections import maps as maps, repeated as repeated

class ValueRule:
    def __init__(self, marshal) -> None: ...
    def to_python(self, value, *, absent: bool = ...): ...
    def to_proto(self, value) -> struct_pb2.Value: ...

class ListValueRule:
    def __init__(self, marshal) -> None: ...
    def to_python(self, value, *, absent: bool = ...): ...
    def to_proto(self, value) -> struct_pb2.ListValue: ...

class StructRule:
    def __init__(self, marshal) -> None: ...
    def to_python(self, value, *, absent: bool = ...): ...
    def to_proto(self, value) -> struct_pb2.Struct: ...
