import Vector from '../math/Vector'; /** * {@code SteeringAcceleration} is a movement requested by the steering system. It is made up of two components, linear and angular * acceleration. * * @param Type of vector, either 2D or 3D, implementing the {@link Vector} interface * * @author davebaol */ declare class SteeringAcceleration> { /** The linear component of this steering acceleration. */ linear: T; /** The angular component of this steering acceleration. */ angular: number; /** * Creates a {@code SteeringAcceleration} with the given linear and angular components. * * @param linear The initial linear acceleration to give this SteeringAcceleration. * @param angular The initial angular acceleration to give this SteeringAcceleration. */ constructor(linear: T, angular?: number); /** Returns {@code true} if both linear and angular components of this steering acceleration are zero; {@code false} otherwise. */ isZero(): boolean; /** * Zeros the linear and angular components of this steering acceleration. * @return this steering acceleration for chaining */ setZero(): SteeringAcceleration; /** * Adds the given steering acceleration to this steering acceleration. * * @param steering the steering acceleration * @return this steering acceleration for chaining */ add(steering: SteeringAcceleration): SteeringAcceleration; /** * Scales this steering acceleration by the specified scalar. * * @param scalar the scalar * @return this steering acceleration for chaining */ scl(scalar: number): SteeringAcceleration; /** * First scale a supplied steering acceleration, then add it to this steering acceleration. * * @param steering the steering acceleration * @param scalar the scalar * @return this steering acceleration for chaining */ mulAdd(steering: SteeringAcceleration, scalar: number): SteeringAcceleration; /** Returns the square of the magnitude of this steering acceleration. This includes the angular component. */ calculateSquareMagnitude(): number; /** Returns the magnitude of this steering acceleration. This includes the angular component. */ calculateMagnitude(): number; } export default SteeringAcceleration;