# Auto-generated by openrct2-codegen 0.2.0
# OpenRCT2 v0.4.32 (API v110)
# Generated: 2026-03-14T22:51:35.781378+00:00
#
# DO NOT EDIT — regenerate with:
#   openrct2-codegen render --ir actions.json --template actions.py --out <path>

from __future__ import annotations

from pydantic import BaseModel, ConfigDict
from pydantic.alias_generators import to_camel

# API version this file was generated against.
# pyrct2 compares this against get_version() at connect time.
GENERATED_API_VERSION: int = 110


# ---------------------------------------------------------------------------
# Action parameter models
# ---------------------------------------------------------------------------

class _ActionParams(BaseModel):
    """Base for all action parameter models. Serializes fields as camelCase."""

    model_config = ConfigDict(alias_generator=to_camel, populate_by_name=True)

class BalloonPressParams(_ActionParams):
    id: int

class BannerPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    object: int
    primary_colour: int

class BannerRemoveParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int

class BannerSetColourParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    primary_colour: int

class BannerSetNameParams(_ActionParams):
    id: int
    name: str

class BannerSetStyleParams(_ActionParams):
    id: int
    type: int
    parameter: int

class CheatSetParams(_ActionParams):
    type: int
    param1: int
    param2: int

class ClearParams(_ActionParams):
    x1: int
    y1: int
    x2: int
    y2: int
    items_to_clear: int

class FootpathAdditionPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    object: int

class FootpathAdditionRemoveParams(_ActionParams):
    x: int
    y: int
    z: int

class FootpathLayoutPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    slope_type: int
    slope_direction: int
    object: int
    railings_object: int
    edges: int
    construct_flags: int

class FootpathPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    object: int
    railings_object: int
    direction: int
    slope_type: int
    slope_direction: int
    construct_flags: int

class FootpathRemoveParams(_ActionParams):
    x: int
    y: int
    z: int

class GameSetSpeedParams(_ActionParams):
    speed: int

class GuestSetFlagsParams(_ActionParams):
    peep: int
    guest_flags: int

class GuestSetNameParams(_ActionParams):
    peep: int
    name: str

class LandBuyRightsParams(_ActionParams):
    x1: int
    y1: int
    x2: int
    y2: int
    setting: int

class LandLowerParams(_ActionParams):
    x: int
    y: int
    x1: int
    y1: int
    x2: int
    y2: int
    selection_type: int

class LandRaiseParams(_ActionParams):
    x: int
    y: int
    x1: int
    y1: int
    x2: int
    y2: int
    selection_type: int

class LandSetHeightParams(_ActionParams):
    x: int
    y: int
    height: int
    style: int

class LandSetRightsParams(_ActionParams):
    x1: int
    y1: int
    x2: int
    y2: int
    setting: int
    ownership: int

class LandSmoothParams(_ActionParams):
    x: int
    y: int
    x1: int
    y1: int
    x2: int
    y2: int
    selection_type: int
    is_lowering: bool

class LargeSceneryPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    object: int
    primary_colour: int
    secondary_colour: int
    tertiary_colour: int

class LargeSceneryRemoveParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    tile_index: int

class LargeScenerySetColourParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    tile_index: int
    primary_colour: int
    secondary_colour: int
    tertiary_colour: int

class LoadOrQuitParams(_ActionParams):
    mode: int
    save_prompt_mode: int

class MapChangeSizeParams(_ActionParams):
    target_size_x: int
    target_size_y: int
    shift_x: int
    shift_y: int

class MazePlaceTrackParams(_ActionParams):
    x: int
    y: int
    z: int
    ride: int
    maze_entry: int

class MazeSetTrackParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    ride: int
    mode: int
    is_initial_placement: bool

class NetworkModifyGroupParams(_ActionParams):
    type: int
    group_id: int
    name: str
    permission_index: int
    permission_state: int

class ParkEntrancePlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    footpath_surface_object: int
    entrance_object: int
    footpath_type_is_legacy: bool

class ParkEntranceRemoveParams(_ActionParams):
    x: int
    y: int
    z: int

class ParkMarketingParams(_ActionParams):
    type: int
    item: int
    duration: int

class ParkSetDateParams(_ActionParams):
    year: int
    month: int
    day: int

class ParkSetEntranceFeeParams(_ActionParams):
    value: int

class ParkSetLoanParams(_ActionParams):
    value: int

class ParkSetNameParams(_ActionParams):
    name: str

class ParkSetParameterParams(_ActionParams):
    parameter: int
    value: int

class ParkSetResearchFundingParams(_ActionParams):
    priorities: int
    funding_amount: int

class PeepPickupParams(_ActionParams):
    type: int
    id: int
    x: int
    y: int
    z: int
    player_id: int

class PeepSpawnPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int

class PlayerKickParams(_ActionParams):
    player_id: int

class PlayerSetGroupParams(_ActionParams):
    player_id: int
    group_id: int

class RideCreateParams(_ActionParams):
    ride_type: int
    ride_object: int
    entrance_object: int
    colour1: int
    colour2: int
    inspection_interval: int

class RideDemolishParams(_ActionParams):
    ride: int
    modify_type: int

class RideEntranceExitPlaceParams(_ActionParams):
    x: int
    y: int
    direction: int
    ride: int
    station: int
    is_exit: bool

class RideEntranceExitRemoveParams(_ActionParams):
    x: int
    y: int
    ride: int
    station: int
    is_exit: bool

class RideFreezeRatingParams(_ActionParams):
    ride: int
    type: int
    value: int

class RideSetAppearanceParams(_ActionParams):
    ride: int
    type: int
    value: int
    index: int

class RideSetColourSchemeParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    track_type: int
    colour_scheme: int

class RideSetNameParams(_ActionParams):
    ride: int
    name: str

class RideSetPriceParams(_ActionParams):
    ride: int
    price: int
    is_primary_price: bool

class RideSetSettingParams(_ActionParams):
    ride: int
    setting: int
    value: int

class RideSetStatusParams(_ActionParams):
    ride: int
    status: int

class RideSetVehicleParams(_ActionParams):
    ride: int
    type: int
    value: int
    colour: int

class ScenarioSetSettingParams(_ActionParams):
    setting: int
    value: int

class SignSetNameParams(_ActionParams):
    id: int
    name: str

class SignSetStyleParams(_ActionParams):
    id: int
    main_colour: int
    text_colour: int
    is_large: bool

class SmallSceneryPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    quadrant: int
    object: int
    primary_colour: int
    secondary_colour: int
    tertiary_colour: int

class SmallSceneryRemoveParams(_ActionParams):
    x: int
    y: int
    z: int
    object: int
    quadrant: int

class SmallScenerySetColourParams(_ActionParams):
    x: int
    y: int
    z: int
    quadrant: int
    scenery_type: int
    primary_colour: int
    secondary_colour: int
    tertiary_colour: int

class StaffFireParams(_ActionParams):
    id: int

class StaffHireNewParams(_ActionParams):
    auto_position: bool
    staff_type: int
    costume_index: int
    staff_orders: int

class StaffSetColourParams(_ActionParams):
    staff_type: int
    colour: int

class StaffSetCostumeParams(_ActionParams):
    id: int
    costume: int

class StaffSetNameParams(_ActionParams):
    id: int
    name: str

class StaffSetOrdersParams(_ActionParams):
    id: int
    staff_orders: int

class StaffSetPatrolAreaParams(_ActionParams):
    id: int
    x1: int
    y1: int
    x2: int
    y2: int
    mode: int

class SurfaceSetStyleParams(_ActionParams):
    x1: int
    y1: int
    x2: int
    y2: int
    surface_style: int
    edge_style: int

class TileModifyParams(_ActionParams):
    x: int
    y: int
    setting: int
    value1: int
    value2: int

class TrackDesignParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int

class TrackPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    ride: int
    track_type: int
    ride_type: int
    brake_speed: int
    colour: int
    seat_rotation: int
    track_place_flags: int
    is_from_track_design: bool

class TrackRemoveParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    track_type: int
    sequence: int

class TrackSetBrakeSpeedParams(_ActionParams):
    x: int
    y: int
    z: int
    track_type: int
    brake_speed: int

class WallPlaceParams(_ActionParams):
    x: int
    y: int
    z: int
    object: int
    edge: int
    primary_colour: int
    secondary_colour: int
    tertiary_colour: int

class WallRemoveParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int

class WallSetColourParams(_ActionParams):
    x: int
    y: int
    z: int
    direction: int
    primary_colour: int
    secondary_colour: int
    tertiary_colour: int

class WaterLowerParams(_ActionParams):
    x1: int
    y1: int
    x2: int
    y2: int

class WaterRaiseParams(_ActionParams):
    x1: int
    y1: int
    x2: int
    y2: int

class WaterSetHeightParams(_ActionParams):
    x: int
    y: int
    height: int


# ---------------------------------------------------------------------------
# Actions mixin — inherited by RCT2
# ---------------------------------------------------------------------------

class ActionsProxy:
    """Auto-generated game action methods. Do not edit."""

    def __init__(self, client) -> None:
        self._client = client

    def balloon_press(
        self,
        id: int,
    ) -> dict:
        return self._client.execute(
            "balloonpress",
            BalloonPressParams(
                id=id,
            ),
        )

    def banner_place(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        object: int,
        primary_colour: int,
    ) -> dict:
        return self._client.execute(
            "bannerplace",
            BannerPlaceParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                object=object,
                primary_colour=primary_colour,
            ),
        )

    def banner_remove(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
    ) -> dict:
        return self._client.execute(
            "bannerremove",
            BannerRemoveParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
            ),
        )

    def banner_set_colour(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        primary_colour: int,
    ) -> dict:
        return self._client.execute(
            "bannersetcolour",
            BannerSetColourParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                primary_colour=primary_colour,
            ),
        )

    def banner_set_name(
        self,
        id: int,
        name: str,
    ) -> dict:
        return self._client.execute(
            "bannersetname",
            BannerSetNameParams(
                id=id,
                name=name,
            ),
        )

    def banner_set_style(
        self,
        id: int,
        type: int,
        parameter: int,
    ) -> dict:
        return self._client.execute(
            "bannersetstyle",
            BannerSetStyleParams(
                id=id,
                type=type,
                parameter=parameter,
            ),
        )

    def cheat_set(
        self,
        type: int,
        param1: int,
        param2: int,
    ) -> dict:
        return self._client.execute(
            "cheatset",
            CheatSetParams(
                type=type,
                param1=param1,
                param2=param2,
            ),
        )

    def clear(
        self,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
        items_to_clear: int,
    ) -> dict:
        return self._client.execute(
            "clearscenery",
            ClearParams(
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
                items_to_clear=items_to_clear,
            ),
        )

    def footpath_addition_place(
        self,
        x: int,
        y: int,
        z: int,
        object: int,
    ) -> dict:
        return self._client.execute(
            "footpathadditionplace",
            FootpathAdditionPlaceParams(
                x=x,
                y=y,
                z=z,
                object=object,
            ),
        )

    def footpath_addition_remove(
        self,
        x: int,
        y: int,
        z: int,
    ) -> dict:
        return self._client.execute(
            "footpathadditionremove",
            FootpathAdditionRemoveParams(
                x=x,
                y=y,
                z=z,
            ),
        )

    def footpath_layout_place(
        self,
        x: int,
        y: int,
        z: int,
        slope_type: int,
        slope_direction: int,
        object: int,
        railings_object: int,
        edges: int,
        construct_flags: int,
    ) -> dict:
        return self._client.execute(
            "footpathlayoutplace",
            FootpathLayoutPlaceParams(
                x=x,
                y=y,
                z=z,
                slope_type=slope_type,
                slope_direction=slope_direction,
                object=object,
                railings_object=railings_object,
                edges=edges,
                construct_flags=construct_flags,
            ),
        )

    def footpath_place(
        self,
        x: int,
        y: int,
        z: int,
        object: int,
        railings_object: int,
        direction: int,
        slope_type: int,
        slope_direction: int,
        construct_flags: int,
    ) -> dict:
        return self._client.execute(
            "footpathplace",
            FootpathPlaceParams(
                x=x,
                y=y,
                z=z,
                object=object,
                railings_object=railings_object,
                direction=direction,
                slope_type=slope_type,
                slope_direction=slope_direction,
                construct_flags=construct_flags,
            ),
        )

    def footpath_remove(
        self,
        x: int,
        y: int,
        z: int,
    ) -> dict:
        return self._client.execute(
            "footpathremove",
            FootpathRemoveParams(
                x=x,
                y=y,
                z=z,
            ),
        )

    def game_set_speed(
        self,
        speed: int,
    ) -> dict:
        return self._client.execute(
            "gamesetspeed",
            GameSetSpeedParams(
                speed=speed,
            ),
        )

    def guest_set_flags(
        self,
        peep: int,
        guest_flags: int,
    ) -> dict:
        return self._client.execute(
            "guestsetflags",
            GuestSetFlagsParams(
                peep=peep,
                guest_flags=guest_flags,
            ),
        )

    def guest_set_name(
        self,
        peep: int,
        name: str,
    ) -> dict:
        return self._client.execute(
            "guestsetname",
            GuestSetNameParams(
                peep=peep,
                name=name,
            ),
        )

    def land_buy_rights(
        self,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
        setting: int,
    ) -> dict:
        return self._client.execute(
            "landbuyrights",
            LandBuyRightsParams(
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
                setting=setting,
            ),
        )

    def land_lower(
        self,
        x: int,
        y: int,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
        selection_type: int,
    ) -> dict:
        return self._client.execute(
            "landlower",
            LandLowerParams(
                x=x,
                y=y,
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
                selection_type=selection_type,
            ),
        )

    def land_raise(
        self,
        x: int,
        y: int,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
        selection_type: int,
    ) -> dict:
        return self._client.execute(
            "landraise",
            LandRaiseParams(
                x=x,
                y=y,
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
                selection_type=selection_type,
            ),
        )

    def land_set_height(
        self,
        x: int,
        y: int,
        height: int,
        style: int,
    ) -> dict:
        return self._client.execute(
            "landsetheight",
            LandSetHeightParams(
                x=x,
                y=y,
                height=height,
                style=style,
            ),
        )

    def land_set_rights(
        self,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
        setting: int,
        ownership: int,
    ) -> dict:
        return self._client.execute(
            "landsetrights",
            LandSetRightsParams(
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
                setting=setting,
                ownership=ownership,
            ),
        )

    def land_smooth(
        self,
        x: int,
        y: int,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
        selection_type: int,
        is_lowering: bool,
    ) -> dict:
        return self._client.execute(
            "landsmooth",
            LandSmoothParams(
                x=x,
                y=y,
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
                selection_type=selection_type,
                is_lowering=is_lowering,
            ),
        )

    def large_scenery_place(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        object: int,
        primary_colour: int,
        secondary_colour: int,
        tertiary_colour: int,
    ) -> dict:
        return self._client.execute(
            "largesceneryplace",
            LargeSceneryPlaceParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                object=object,
                primary_colour=primary_colour,
                secondary_colour=secondary_colour,
                tertiary_colour=tertiary_colour,
            ),
        )

    def large_scenery_remove(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        tile_index: int,
    ) -> dict:
        return self._client.execute(
            "largesceneryremove",
            LargeSceneryRemoveParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                tile_index=tile_index,
            ),
        )

    def large_scenery_set_colour(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        tile_index: int,
        primary_colour: int,
        secondary_colour: int,
        tertiary_colour: int,
    ) -> dict:
        return self._client.execute(
            "largescenerysetcolour",
            LargeScenerySetColourParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                tile_index=tile_index,
                primary_colour=primary_colour,
                secondary_colour=secondary_colour,
                tertiary_colour=tertiary_colour,
            ),
        )

    def load_or_quit(
        self,
        mode: int,
        save_prompt_mode: int,
    ) -> dict:
        return self._client.execute(
            "loadorquit",
            LoadOrQuitParams(
                mode=mode,
                save_prompt_mode=save_prompt_mode,
            ),
        )

    def map_change_size(
        self,
        target_size_x: int,
        target_size_y: int,
        shift_x: int,
        shift_y: int,
    ) -> dict:
        return self._client.execute(
            "mapchangesize",
            MapChangeSizeParams(
                target_size_x=target_size_x,
                target_size_y=target_size_y,
                shift_x=shift_x,
                shift_y=shift_y,
            ),
        )

    def maze_place_track(
        self,
        x: int,
        y: int,
        z: int,
        ride: int,
        maze_entry: int,
    ) -> dict:
        return self._client.execute(
            "mazeplacetrack",
            MazePlaceTrackParams(
                x=x,
                y=y,
                z=z,
                ride=ride,
                maze_entry=maze_entry,
            ),
        )

    def maze_set_track(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        ride: int,
        mode: int,
        is_initial_placement: bool,
    ) -> dict:
        return self._client.execute(
            "mazesettrack",
            MazeSetTrackParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                ride=ride,
                mode=mode,
                is_initial_placement=is_initial_placement,
            ),
        )

    def network_modify_group(
        self,
        type: int,
        group_id: int,
        name: str,
        permission_index: int,
        permission_state: int,
    ) -> dict:
        return self._client.execute(
            "networkmodifygroup",
            NetworkModifyGroupParams(
                type=type,
                group_id=group_id,
                name=name,
                permission_index=permission_index,
                permission_state=permission_state,
            ),
        )

    def park_entrance_place(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        footpath_surface_object: int,
        entrance_object: int,
        footpath_type_is_legacy: bool,
    ) -> dict:
        return self._client.execute(
            "parkentranceplace",
            ParkEntrancePlaceParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                footpath_surface_object=footpath_surface_object,
                entrance_object=entrance_object,
                footpath_type_is_legacy=footpath_type_is_legacy,
            ),
        )

    def park_entrance_remove(
        self,
        x: int,
        y: int,
        z: int,
    ) -> dict:
        return self._client.execute(
            "parkentranceremove",
            ParkEntranceRemoveParams(
                x=x,
                y=y,
                z=z,
            ),
        )

    def park_marketing(
        self,
        type: int,
        item: int,
        duration: int,
    ) -> dict:
        return self._client.execute(
            "parkmarketing",
            ParkMarketingParams(
                type=type,
                item=item,
                duration=duration,
            ),
        )

    def park_set_date(
        self,
        year: int,
        month: int,
        day: int,
    ) -> dict:
        return self._client.execute(
            "parksetdate",
            ParkSetDateParams(
                year=year,
                month=month,
                day=day,
            ),
        )

    def park_set_entrance_fee(
        self,
        value: int,
    ) -> dict:
        return self._client.execute(
            "parksetentrancefee",
            ParkSetEntranceFeeParams(
                value=value,
            ),
        )

    def park_set_loan(
        self,
        value: int,
    ) -> dict:
        return self._client.execute(
            "parksetloan",
            ParkSetLoanParams(
                value=value,
            ),
        )

    def park_set_name(
        self,
        name: str,
    ) -> dict:
        return self._client.execute(
            "parksetname",
            ParkSetNameParams(
                name=name,
            ),
        )

    def park_set_parameter(
        self,
        parameter: int,
        value: int,
    ) -> dict:
        return self._client.execute(
            "parksetparameter",
            ParkSetParameterParams(
                parameter=parameter,
                value=value,
            ),
        )

    def park_set_research_funding(
        self,
        priorities: int,
        funding_amount: int,
    ) -> dict:
        return self._client.execute(
            "parksetresearchfunding",
            ParkSetResearchFundingParams(
                priorities=priorities,
                funding_amount=funding_amount,
            ),
        )

    def pause_toggle(
        self,
    ) -> dict:
        return self._client.execute("pausetoggle")

    def peep_pickup(
        self,
        type: int,
        id: int,
        x: int,
        y: int,
        z: int,
        player_id: int,
    ) -> dict:
        return self._client.execute(
            "peeppickup",
            PeepPickupParams(
                type=type,
                id=id,
                x=x,
                y=y,
                z=z,
                player_id=player_id,
            ),
        )

    def peep_spawn_place(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
    ) -> dict:
        return self._client.execute(
            "peepspawnplace",
            PeepSpawnPlaceParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
            ),
        )

    def player_kick(
        self,
        player_id: int,
    ) -> dict:
        return self._client.execute(
            "playerkick",
            PlayerKickParams(
                player_id=player_id,
            ),
        )

    def player_set_group(
        self,
        player_id: int,
        group_id: int,
    ) -> dict:
        return self._client.execute(
            "playersetgroup",
            PlayerSetGroupParams(
                player_id=player_id,
                group_id=group_id,
            ),
        )

    def ride_create(
        self,
        ride_type: int,
        ride_object: int,
        entrance_object: int,
        colour1: int,
        colour2: int,
        inspection_interval: int,
    ) -> dict:
        return self._client.execute(
            "ridecreate",
            RideCreateParams(
                ride_type=ride_type,
                ride_object=ride_object,
                entrance_object=entrance_object,
                colour1=colour1,
                colour2=colour2,
                inspection_interval=inspection_interval,
            ),
        )

    def ride_demolish(
        self,
        ride: int,
        modify_type: int,
    ) -> dict:
        return self._client.execute(
            "ridedemolish",
            RideDemolishParams(
                ride=ride,
                modify_type=modify_type,
            ),
        )

    def ride_entrance_exit_place(
        self,
        x: int,
        y: int,
        direction: int,
        ride: int,
        station: int,
        is_exit: bool,
    ) -> dict:
        return self._client.execute(
            "rideentranceexitplace",
            RideEntranceExitPlaceParams(
                x=x,
                y=y,
                direction=direction,
                ride=ride,
                station=station,
                is_exit=is_exit,
            ),
        )

    def ride_entrance_exit_remove(
        self,
        x: int,
        y: int,
        ride: int,
        station: int,
        is_exit: bool,
    ) -> dict:
        return self._client.execute(
            "rideentranceexitremove",
            RideEntranceExitRemoveParams(
                x=x,
                y=y,
                ride=ride,
                station=station,
                is_exit=is_exit,
            ),
        )

    def ride_freeze_rating(
        self,
        ride: int,
        type: int,
        value: int,
    ) -> dict:
        return self._client.execute(
            "ridefreezerating",
            RideFreezeRatingParams(
                ride=ride,
                type=type,
                value=value,
            ),
        )

    def ride_set_appearance(
        self,
        ride: int,
        type: int,
        value: int,
        index: int,
    ) -> dict:
        return self._client.execute(
            "ridesetappearance",
            RideSetAppearanceParams(
                ride=ride,
                type=type,
                value=value,
                index=index,
            ),
        )

    def ride_set_colour_scheme(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        track_type: int,
        colour_scheme: int,
    ) -> dict:
        return self._client.execute(
            "ridesetcolourscheme",
            RideSetColourSchemeParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                track_type=track_type,
                colour_scheme=colour_scheme,
            ),
        )

    def ride_set_name(
        self,
        ride: int,
        name: str,
    ) -> dict:
        return self._client.execute(
            "ridesetname",
            RideSetNameParams(
                ride=ride,
                name=name,
            ),
        )

    def ride_set_price(
        self,
        ride: int,
        price: int,
        is_primary_price: bool,
    ) -> dict:
        return self._client.execute(
            "ridesetprice",
            RideSetPriceParams(
                ride=ride,
                price=price,
                is_primary_price=is_primary_price,
            ),
        )

    def ride_set_setting(
        self,
        ride: int,
        setting: int,
        value: int,
    ) -> dict:
        return self._client.execute(
            "ridesetsetting",
            RideSetSettingParams(
                ride=ride,
                setting=setting,
                value=value,
            ),
        )

    def ride_set_status(
        self,
        ride: int,
        status: int,
    ) -> dict:
        return self._client.execute(
            "ridesetstatus",
            RideSetStatusParams(
                ride=ride,
                status=status,
            ),
        )

    def ride_set_vehicle(
        self,
        ride: int,
        type: int,
        value: int,
        colour: int,
    ) -> dict:
        return self._client.execute(
            "ridesetvehicle",
            RideSetVehicleParams(
                ride=ride,
                type=type,
                value=value,
                colour=colour,
            ),
        )

    def scenario_set_setting(
        self,
        setting: int,
        value: int,
    ) -> dict:
        return self._client.execute(
            "scenariosetsetting",
            ScenarioSetSettingParams(
                setting=setting,
                value=value,
            ),
        )

    def sign_set_name(
        self,
        id: int,
        name: str,
    ) -> dict:
        return self._client.execute(
            "signsetname",
            SignSetNameParams(
                id=id,
                name=name,
            ),
        )

    def sign_set_style(
        self,
        id: int,
        main_colour: int,
        text_colour: int,
        is_large: bool,
    ) -> dict:
        return self._client.execute(
            "signsetstyle",
            SignSetStyleParams(
                id=id,
                main_colour=main_colour,
                text_colour=text_colour,
                is_large=is_large,
            ),
        )

    def small_scenery_place(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        quadrant: int,
        object: int,
        primary_colour: int,
        secondary_colour: int,
        tertiary_colour: int,
    ) -> dict:
        return self._client.execute(
            "smallsceneryplace",
            SmallSceneryPlaceParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                quadrant=quadrant,
                object=object,
                primary_colour=primary_colour,
                secondary_colour=secondary_colour,
                tertiary_colour=tertiary_colour,
            ),
        )

    def small_scenery_remove(
        self,
        x: int,
        y: int,
        z: int,
        object: int,
        quadrant: int,
    ) -> dict:
        return self._client.execute(
            "smallsceneryremove",
            SmallSceneryRemoveParams(
                x=x,
                y=y,
                z=z,
                object=object,
                quadrant=quadrant,
            ),
        )

    def small_scenery_set_colour(
        self,
        x: int,
        y: int,
        z: int,
        quadrant: int,
        scenery_type: int,
        primary_colour: int,
        secondary_colour: int,
        tertiary_colour: int,
    ) -> dict:
        return self._client.execute(
            "smallscenerysetcolour",
            SmallScenerySetColourParams(
                x=x,
                y=y,
                z=z,
                quadrant=quadrant,
                scenery_type=scenery_type,
                primary_colour=primary_colour,
                secondary_colour=secondary_colour,
                tertiary_colour=tertiary_colour,
            ),
        )

    def staff_fire(
        self,
        id: int,
    ) -> dict:
        return self._client.execute(
            "stafffire",
            StaffFireParams(
                id=id,
            ),
        )

    def staff_hire_new(
        self,
        auto_position: bool,
        staff_type: int,
        costume_index: int,
        staff_orders: int,
    ) -> dict:
        return self._client.execute(
            "staffhire",
            StaffHireNewParams(
                auto_position=auto_position,
                staff_type=staff_type,
                costume_index=costume_index,
                staff_orders=staff_orders,
            ),
        )

    def staff_set_colour(
        self,
        staff_type: int,
        colour: int,
    ) -> dict:
        return self._client.execute(
            "staffsetcolour",
            StaffSetColourParams(
                staff_type=staff_type,
                colour=colour,
            ),
        )

    def staff_set_costume(
        self,
        id: int,
        costume: int,
    ) -> dict:
        return self._client.execute(
            "staffsetcostume",
            StaffSetCostumeParams(
                id=id,
                costume=costume,
            ),
        )

    def staff_set_name(
        self,
        id: int,
        name: str,
    ) -> dict:
        return self._client.execute(
            "staffsetname",
            StaffSetNameParams(
                id=id,
                name=name,
            ),
        )

    def staff_set_orders(
        self,
        id: int,
        staff_orders: int,
    ) -> dict:
        return self._client.execute(
            "staffsetorders",
            StaffSetOrdersParams(
                id=id,
                staff_orders=staff_orders,
            ),
        )

    def staff_set_patrol_area(
        self,
        id: int,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
        mode: int,
    ) -> dict:
        return self._client.execute(
            "staffsetpatrolarea",
            StaffSetPatrolAreaParams(
                id=id,
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
                mode=mode,
            ),
        )

    def surface_set_style(
        self,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
        surface_style: int,
        edge_style: int,
    ) -> dict:
        return self._client.execute(
            "surfacesetstyle",
            SurfaceSetStyleParams(
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
                surface_style=surface_style,
                edge_style=edge_style,
            ),
        )

    def tile_modify(
        self,
        x: int,
        y: int,
        setting: int,
        value1: int,
        value2: int,
    ) -> dict:
        return self._client.execute(
            "tilemodify",
            TileModifyParams(
                x=x,
                y=y,
                setting=setting,
                value1=value1,
                value2=value2,
            ),
        )

    def track_design(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
    ) -> dict:
        return self._client.execute(
            "trackdesign",
            TrackDesignParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
            ),
        )

    def track_place(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        ride: int,
        track_type: int,
        ride_type: int,
        brake_speed: int,
        colour: int,
        seat_rotation: int,
        track_place_flags: int,
        is_from_track_design: bool,
    ) -> dict:
        return self._client.execute(
            "trackplace",
            TrackPlaceParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                ride=ride,
                track_type=track_type,
                ride_type=ride_type,
                brake_speed=brake_speed,
                colour=colour,
                seat_rotation=seat_rotation,
                track_place_flags=track_place_flags,
                is_from_track_design=is_from_track_design,
            ),
        )

    def track_remove(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        track_type: int,
        sequence: int,
    ) -> dict:
        return self._client.execute(
            "trackremove",
            TrackRemoveParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                track_type=track_type,
                sequence=sequence,
            ),
        )

    def track_set_brake_speed(
        self,
        x: int,
        y: int,
        z: int,
        track_type: int,
        brake_speed: int,
    ) -> dict:
        return self._client.execute(
            "tracksetbrakespeed",
            TrackSetBrakeSpeedParams(
                x=x,
                y=y,
                z=z,
                track_type=track_type,
                brake_speed=brake_speed,
            ),
        )

    def wall_place(
        self,
        x: int,
        y: int,
        z: int,
        object: int,
        edge: int,
        primary_colour: int,
        secondary_colour: int,
        tertiary_colour: int,
    ) -> dict:
        return self._client.execute(
            "wallplace",
            WallPlaceParams(
                x=x,
                y=y,
                z=z,
                object=object,
                edge=edge,
                primary_colour=primary_colour,
                secondary_colour=secondary_colour,
                tertiary_colour=tertiary_colour,
            ),
        )

    def wall_remove(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
    ) -> dict:
        return self._client.execute(
            "wallremove",
            WallRemoveParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
            ),
        )

    def wall_set_colour(
        self,
        x: int,
        y: int,
        z: int,
        direction: int,
        primary_colour: int,
        secondary_colour: int,
        tertiary_colour: int,
    ) -> dict:
        return self._client.execute(
            "wallsetcolour",
            WallSetColourParams(
                x=x,
                y=y,
                z=z,
                direction=direction,
                primary_colour=primary_colour,
                secondary_colour=secondary_colour,
                tertiary_colour=tertiary_colour,
            ),
        )

    def water_lower(
        self,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
    ) -> dict:
        return self._client.execute(
            "waterlower",
            WaterLowerParams(
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
            ),
        )

    def water_raise(
        self,
        x1: int,
        y1: int,
        x2: int,
        y2: int,
    ) -> dict:
        return self._client.execute(
            "waterraise",
            WaterRaiseParams(
                x1=x1,
                y1=y1,
                x2=x2,
                y2=y2,
            ),
        )

    def water_set_height(
        self,
        x: int,
        y: int,
        height: int,
    ) -> dict:
        return self._client.execute(
            "watersetheight",
            WaterSetHeightParams(
                x=x,
                y=y,
                height=height,
            ),
        )
