"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import google.protobuf.descriptor
import google.protobuf.message
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class Decimal(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALUE_FIELD_NUMBER: builtins.int
    value: builtins.str
    def __init__(
        self,
        *,
        value: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["value", b"value"]) -> None: ...

global___Decimal = Decimal

@typing.final
class Spread(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FRONT_FIELD_NUMBER: builtins.int
    BACK_FIELD_NUMBER: builtins.int
    front: builtins.str
    back: builtins.str
    def __init__(
        self,
        *,
        front: builtins.str = ...,
        back: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["back", b"back", "front", b"front"]) -> None: ...

global___Spread = Spread

@typing.final
class Butterfly(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FRONT_FIELD_NUMBER: builtins.int
    MIDDLE_FIELD_NUMBER: builtins.int
    BACK_FIELD_NUMBER: builtins.int
    front: builtins.str
    middle: builtins.str
    back: builtins.str
    def __init__(
        self,
        *,
        front: builtins.str = ...,
        middle: builtins.str = ...,
        back: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["back", b"back", "front", b"front", "middle", b"middle"]) -> None: ...

global___Butterfly = Butterfly

@typing.final
class TradableSymbol(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FLAT_FIELD_NUMBER: builtins.int
    SPREAD_FIELD_NUMBER: builtins.int
    BUTTERFLY_FIELD_NUMBER: builtins.int
    flat: builtins.str
    @property
    def spread(self) -> global___Spread: ...
    @property
    def butterfly(self) -> global___Butterfly: ...
    def __init__(
        self,
        *,
        flat: builtins.str = ...,
        spread: global___Spread | None = ...,
        butterfly: global___Butterfly | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["butterfly", b"butterfly", "flat", b"flat", "spread", b"spread", "symbol", b"symbol"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["butterfly", b"butterfly", "flat", b"flat", "spread", b"spread", "symbol", b"symbol"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["symbol", b"symbol"]) -> typing.Literal["flat", "spread", "butterfly"] | None: ...

global___TradableSymbol = TradableSymbol
