import command_pb2 as _command_pb2
import replacement_pb2 as _replacement_pb2
import common_pb2 as _common_pb2
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union

DESCRIPTOR: _descriptor.FileDescriptor

class Environment(_message.Message):
    __slots__ = ["field", "frame", "goals_blue", "goals_yellow", "step"]
    FIELD_FIELD_NUMBER: _ClassVar[int]
    FRAME_FIELD_NUMBER: _ClassVar[int]
    GOALS_BLUE_FIELD_NUMBER: _ClassVar[int]
    GOALS_YELLOW_FIELD_NUMBER: _ClassVar[int]
    STEP_FIELD_NUMBER: _ClassVar[int]
    field: _common_pb2.Field
    frame: _common_pb2.Frame
    goals_blue: int
    goals_yellow: int
    step: int
    def __init__(self, step: _Optional[int] = ..., frame: _Optional[_Union[_common_pb2.Frame, _Mapping]] = ..., field: _Optional[_Union[_common_pb2.Field, _Mapping]] = ..., goals_blue: _Optional[int] = ..., goals_yellow: _Optional[int] = ...) -> None: ...

class Packet(_message.Message):
    __slots__ = ["cmd", "replace"]
    CMD_FIELD_NUMBER: _ClassVar[int]
    REPLACE_FIELD_NUMBER: _ClassVar[int]
    cmd: _command_pb2.Commands
    replace: _replacement_pb2.Replacement
    def __init__(self, cmd: _Optional[_Union[_command_pb2.Commands, _Mapping]] = ..., replace: _Optional[_Union[_replacement_pb2.Replacement, _Mapping]] = ...) -> None: ...
