from enum import Enum

class Position2Raw:
    """
    This is the wrapper around the C++ "Position2Raw" class.
    While Python does not support unsigned integers, they are used in C++ and will act as such.

    The "olives" prefix in the file indicates it is not meant to be edited manually,
    as this will most definitely result in breakage.
    """

    def __init(self, x: int, y: int): ...
    x: int
    y: int

class Position2:
    """
    This is the wrapper around the C++ "Position2" class.

    The "olives" prefix in the file indicates it is not meant to be edited manually,
    as this will most definitely result in breakage.
    """

    def __init(self, x: int, y: int): ...
    x: int
    y: int

class Position3:
    """
    This is the wrapper around the C++ "Position3" class.

    The "olives" prefix in the file indicates it is not meant to be edited manually,
    as this will most definitely result in breakage.
    """

    def __init(self, x: float, y: float, z: float): ...
    x: float
    y: float
    z: float

class LightInfo:
    """
    This is the wrapper around the C++ "LightInfo" class.

    The "olives" prefix in the file indicates it is not meant to be edited manually,
    as this will most definitely result in breakage.
    """
    def __init(self, light_type: int, intensity: float, cone_width: float, is_active: int, position: Position3, direction: Position3, colour: Position3): ...
    type: int
    intensity: float
    cone_width: float
    is_active: int

    def get_colour_r(self) -> float: ...
    def get_colour_g(self) -> float: ...
    def get_colour_b(self) -> float: ...

    def get_direction_x(self) -> float: ...
    def get_direction_y(self) -> float: ...
    def get_direction_z(self) -> float: ...

class TemperatureModifierInfo:
    """
    This is the wrapper around the C++ "TemperatureModifierInfo" class.

    The "olives" prefix in the file indicates it is not meant to be edited manually,
    as this will most definitely result in breakage.
    """
    def __init(self, type: TemperatureModifierType, temperature: float, intensity: float, is_active: bool, temperature_options, has_heat_pump: bool, is_heat_pump: bool): ...
    type: TemperatureModifierType
    temperature: float
    intensity: float
    is_active: bool
    has_heat_pump: bool
    is_heat_pump: bool

class TemperatureModifierType(Enum):
    UNDEFINED = 0,
    SITTING = 1