import { Module } from "./Module"; import type { InputState } from "../core/input"; import * as RAPIER from "@dimforge/rapier3d-compat"; import { ECSContext } from "../core/ecs"; type MotionSourceModuleSchema = { type: "static"; params: any; } | { type: "dynamicRigidBody"; params: any; } | { type: "characterController"; params: any; } | { type: "vehicleController"; params: any; }; export type Controller = { type: "character"; controller: RAPIER.KinematicCharacterController; speed: number; jumpHeight: number; } | { type: "vehicle"; controller: RAPIER.DynamicRayCastVehicleController; speed: number; }; export interface MotionSourceResolved { bodyType: "static" | "dynamic" | "kinematic"; mass?: number; gravityScale?: number; controller?: Controller; apply?: (eid: number, input: InputState) => void; } export declare const motionSourceModule: (ctx: ECSContext) => Module; export {}; //# sourceMappingURL=motionSource.d.ts.map