import { Vec3 } from '../math/Vec3'; import { Transform } from '../math/Transform'; import { RaycastResult } from '../collision/RaycastResult'; import type { Body } from '../objects/Body'; export declare type WheelInfoOptions = { chassisConnectionPointLocal?: Vec3; chassisConnectionPointWorld?: Vec3; directionLocal?: Vec3; directionWorld?: Vec3; axleLocal?: Vec3; axleWorld?: Vec3; suspensionRestLength?: number; suspensionMaxLength?: number; radius?: number; suspensionStiffness?: number; dampingCompression?: number; dampingRelaxation?: number; frictionSlip?: number; steering?: number; rotation?: number; deltaRotation?: number; rollInfluence?: number; maxSuspensionForce?: number; isFrontWheel?: boolean; clippedInvContactDotSuspension?: number; suspensionRelativeVelocity?: number; suspensionForce?: number; slipInfo?: number; skidInfo?: number; suspensionLength?: number; maxSuspensionTravel?: number; useCustomSlidingRotationalSpeed?: boolean; customSlidingRotationalSpeed?: number; }; export declare type WheelRaycastResult = RaycastResult & Partial<{ suspensionLength: number; directionWorld: Vec3; groundObject: number; }>; export declare class WheelInfo { maxSuspensionTravel: number; customSlidingRotationalSpeed: number; useCustomSlidingRotationalSpeed: boolean; sliding: boolean; chassisConnectionPointLocal: Vec3; chassisConnectionPointWorld: Vec3; directionLocal: Vec3; directionWorld: Vec3; axleLocal: Vec3; axleWorld: Vec3; suspensionRestLength: number; suspensionMaxLength: number; radius: number; suspensionStiffness: number; dampingCompression: number; dampingRelaxation: number; frictionSlip: number; steering: number; rotation: number; deltaRotation: number; rollInfluence: number; maxSuspensionForce: number; engineForce: number; brake: number; isFrontWheel: boolean; clippedInvContactDotSuspension: number; suspensionRelativeVelocity: number; suspensionForce: number; slipInfo: number; skidInfo: number; suspensionLength: number; sideImpulse: number; forwardImpulse: number; raycastResult: WheelRaycastResult; worldTransform: Transform; isInContact: boolean; constructor(options?: WheelInfoOptions); updateWheel(chassis: Body): void; }