from cmvr.api import common_pb2 as _common_pb2
from google.protobuf.internal import containers as _containers
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from collections.abc import Iterable as _Iterable, Mapping as _Mapping
from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union

DESCRIPTOR: _descriptor.FileDescriptor

class FacialExpression(_message.Message):
    __slots__ = ("eyebrow", "eyelid", "eyeball", "nose", "mouth", "jaw")
    class Eyebrow(_message.Message):
        __slots__ = ("left_outside_y", "left_inside_y", "right_outside_y", "right_inside_y")
        LEFT_OUTSIDE_Y_FIELD_NUMBER: _ClassVar[int]
        LEFT_INSIDE_Y_FIELD_NUMBER: _ClassVar[int]
        RIGHT_OUTSIDE_Y_FIELD_NUMBER: _ClassVar[int]
        RIGHT_INSIDE_Y_FIELD_NUMBER: _ClassVar[int]
        left_outside_y: float
        left_inside_y: float
        right_outside_y: float
        right_inside_y: float
        def __init__(self, left_outside_y: _Optional[float] = ..., left_inside_y: _Optional[float] = ..., right_outside_y: _Optional[float] = ..., right_inside_y: _Optional[float] = ...) -> None: ...
    class Eyelid(_message.Message):
        __slots__ = ("left_upper_y", "left_lower_y", "right_upper_y", "right_lower_y")
        LEFT_UPPER_Y_FIELD_NUMBER: _ClassVar[int]
        LEFT_LOWER_Y_FIELD_NUMBER: _ClassVar[int]
        RIGHT_UPPER_Y_FIELD_NUMBER: _ClassVar[int]
        RIGHT_LOWER_Y_FIELD_NUMBER: _ClassVar[int]
        left_upper_y: float
        left_lower_y: float
        right_upper_y: float
        right_lower_y: float
        def __init__(self, left_upper_y: _Optional[float] = ..., left_lower_y: _Optional[float] = ..., right_upper_y: _Optional[float] = ..., right_lower_y: _Optional[float] = ...) -> None: ...
    class Eyeball(_message.Message):
        __slots__ = ("left_x", "left_y", "right_x", "right_y")
        LEFT_X_FIELD_NUMBER: _ClassVar[int]
        LEFT_Y_FIELD_NUMBER: _ClassVar[int]
        RIGHT_X_FIELD_NUMBER: _ClassVar[int]
        RIGHT_Y_FIELD_NUMBER: _ClassVar[int]
        left_x: float
        left_y: float
        right_x: float
        right_y: float
        def __init__(self, left_x: _Optional[float] = ..., left_y: _Optional[float] = ..., right_x: _Optional[float] = ..., right_y: _Optional[float] = ...) -> None: ...
    class Nose(_message.Message):
        __slots__ = ("left_y", "right_y")
        LEFT_Y_FIELD_NUMBER: _ClassVar[int]
        RIGHT_Y_FIELD_NUMBER: _ClassVar[int]
        left_y: float
        right_y: float
        def __init__(self, left_y: _Optional[float] = ..., right_y: _Optional[float] = ...) -> None: ...
    class Mouth(_message.Message):
        __slots__ = ("upper_lip_y", "upper_lip_z", "lower_lip_y", "lower_lip_z", "left_lip", "right_lip")
        class LeftLip(_message.Message):
            __slots__ = ("upper_x", "upper_y", "corner_x", "corner_y", "lower_x", "lower_y")
            UPPER_X_FIELD_NUMBER: _ClassVar[int]
            UPPER_Y_FIELD_NUMBER: _ClassVar[int]
            CORNER_X_FIELD_NUMBER: _ClassVar[int]
            CORNER_Y_FIELD_NUMBER: _ClassVar[int]
            LOWER_X_FIELD_NUMBER: _ClassVar[int]
            LOWER_Y_FIELD_NUMBER: _ClassVar[int]
            upper_x: float
            upper_y: float
            corner_x: float
            corner_y: float
            lower_x: float
            lower_y: float
            def __init__(self, upper_x: _Optional[float] = ..., upper_y: _Optional[float] = ..., corner_x: _Optional[float] = ..., corner_y: _Optional[float] = ..., lower_x: _Optional[float] = ..., lower_y: _Optional[float] = ...) -> None: ...
        class RightLip(_message.Message):
            __slots__ = ("upper_x", "upper_y", "corner_x", "corner_y", "lower_x", "lower_y")
            UPPER_X_FIELD_NUMBER: _ClassVar[int]
            UPPER_Y_FIELD_NUMBER: _ClassVar[int]
            CORNER_X_FIELD_NUMBER: _ClassVar[int]
            CORNER_Y_FIELD_NUMBER: _ClassVar[int]
            LOWER_X_FIELD_NUMBER: _ClassVar[int]
            LOWER_Y_FIELD_NUMBER: _ClassVar[int]
            upper_x: float
            upper_y: float
            corner_x: float
            corner_y: float
            lower_x: float
            lower_y: float
            def __init__(self, upper_x: _Optional[float] = ..., upper_y: _Optional[float] = ..., corner_x: _Optional[float] = ..., corner_y: _Optional[float] = ..., lower_x: _Optional[float] = ..., lower_y: _Optional[float] = ...) -> None: ...
        UPPER_LIP_Y_FIELD_NUMBER: _ClassVar[int]
        UPPER_LIP_Z_FIELD_NUMBER: _ClassVar[int]
        LOWER_LIP_Y_FIELD_NUMBER: _ClassVar[int]
        LOWER_LIP_Z_FIELD_NUMBER: _ClassVar[int]
        LEFT_LIP_FIELD_NUMBER: _ClassVar[int]
        RIGHT_LIP_FIELD_NUMBER: _ClassVar[int]
        upper_lip_y: float
        upper_lip_z: float
        lower_lip_y: float
        lower_lip_z: float
        left_lip: FacialExpression.Mouth.LeftLip
        right_lip: FacialExpression.Mouth.RightLip
        def __init__(self, upper_lip_y: _Optional[float] = ..., upper_lip_z: _Optional[float] = ..., lower_lip_y: _Optional[float] = ..., lower_lip_z: _Optional[float] = ..., left_lip: _Optional[_Union[FacialExpression.Mouth.LeftLip, _Mapping]] = ..., right_lip: _Optional[_Union[FacialExpression.Mouth.RightLip, _Mapping]] = ...) -> None: ...
    class Jaw(_message.Message):
        __slots__ = ("x", "y")
        X_FIELD_NUMBER: _ClassVar[int]
        Y_FIELD_NUMBER: _ClassVar[int]
        x: float
        y: float
        def __init__(self, x: _Optional[float] = ..., y: _Optional[float] = ...) -> None: ...
    EYEBROW_FIELD_NUMBER: _ClassVar[int]
    EYELID_FIELD_NUMBER: _ClassVar[int]
    EYEBALL_FIELD_NUMBER: _ClassVar[int]
    NOSE_FIELD_NUMBER: _ClassVar[int]
    MOUTH_FIELD_NUMBER: _ClassVar[int]
    JAW_FIELD_NUMBER: _ClassVar[int]
    eyebrow: FacialExpression.Eyebrow
    eyelid: FacialExpression.Eyelid
    eyeball: FacialExpression.Eyeball
    nose: FacialExpression.Nose
    mouth: FacialExpression.Mouth
    jaw: FacialExpression.Jaw
    def __init__(self, eyebrow: _Optional[_Union[FacialExpression.Eyebrow, _Mapping]] = ..., eyelid: _Optional[_Union[FacialExpression.Eyelid, _Mapping]] = ..., eyeball: _Optional[_Union[FacialExpression.Eyeball, _Mapping]] = ..., nose: _Optional[_Union[FacialExpression.Nose, _Mapping]] = ..., mouth: _Optional[_Union[FacialExpression.Mouth, _Mapping]] = ..., jaw: _Optional[_Union[FacialExpression.Jaw, _Mapping]] = ...) -> None: ...

class SetFacialExpression(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header", "expression")
        HEADER_FIELD_NUMBER: _ClassVar[int]
        EXPRESSION_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        expression: FacialExpression
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ..., expression: _Optional[_Union[FacialExpression, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header", "execution_id", "execution_time_ms")
        HEADER_FIELD_NUMBER: _ClassVar[int]
        EXECUTION_ID_FIELD_NUMBER: _ClassVar[int]
        EXECUTION_TIME_MS_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        execution_id: str
        execution_time_ms: float
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ..., execution_id: _Optional[str] = ..., execution_time_ms: _Optional[float] = ...) -> None: ...
    def __init__(self) -> None: ...

class StreamFacialExpression(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header", "expr", "eof")
        HEADER_FIELD_NUMBER: _ClassVar[int]
        EXPR_FIELD_NUMBER: _ClassVar[int]
        EOF_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        expr: FacialExpression
        eof: bool
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ..., expr: _Optional[_Union[FacialExpression, _Mapping]] = ..., eof: _Optional[bool] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header", "expr_diff")
        HEADER_FIELD_NUMBER: _ClassVar[int]
        EXPR_DIFF_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        expr_diff: FacialExpression
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ..., expr_diff: _Optional[_Union[FacialExpression, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...

class GetStatus(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header", "is_moving", "last_request_id", "current_positions", "camera_recording", "active_recording_id")
        HEADER_FIELD_NUMBER: _ClassVar[int]
        IS_MOVING_FIELD_NUMBER: _ClassVar[int]
        LAST_REQUEST_ID_FIELD_NUMBER: _ClassVar[int]
        CURRENT_POSITIONS_FIELD_NUMBER: _ClassVar[int]
        CAMERA_RECORDING_FIELD_NUMBER: _ClassVar[int]
        ACTIVE_RECORDING_ID_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        is_moving: bool
        last_request_id: str
        current_positions: _containers.RepeatedScalarFieldContainer[float]
        camera_recording: bool
        active_recording_id: str
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ..., is_moving: _Optional[bool] = ..., last_request_id: _Optional[str] = ..., current_positions: _Optional[_Iterable[float]] = ..., camera_recording: _Optional[bool] = ..., active_recording_id: _Optional[str] = ...) -> None: ...
    def __init__(self) -> None: ...

class EmergencyStop(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header", "stopped_processes")
        HEADER_FIELD_NUMBER: _ClassVar[int]
        STOPPED_PROCESSES_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        stopped_processes: str
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ..., stopped_processes: _Optional[str] = ...) -> None: ...
    def __init__(self) -> None: ...

class SpeakStart(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...

class SpeakStop(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...

class Happy(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...

class Surprise(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...

class ExpressionTired(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...

class ExpressionAngry(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...

class ExpressionSadness(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...

class ExpressionYawn(_message.Message):
    __slots__ = ()
    class Request(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Request
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Request, _Mapping]] = ...) -> None: ...
    class Feedback(_message.Message):
        __slots__ = ("header",)
        HEADER_FIELD_NUMBER: _ClassVar[int]
        header: _common_pb2.CommandHeader.Feedback
        def __init__(self, header: _Optional[_Union[_common_pb2.CommandHeader.Feedback, _Mapping]] = ...) -> None: ...
    def __init__(self) -> None: ...
