export declare namespace Vector3Tools { /** * clamps the vector between the numbers */ function Clamp(vector: Vector3, min: number, max: number): Vector3; function ClampWithVector(vector: Vector3, min_vector: Vector3, max_vector: Vector3): Vector3; function LerpWithMagnitude(start_vector: Vector3, target_vector: Vector3, step: number): Vector3; function ClampMagnitude(vector: Vector3, min: number, max: number): Vector3; /** * @returns mirrors a around b */ function Mirror(a: Vector3, b: Vector3): Vector3; /** * will not return nan if Vector3.zero is normalized */ function Normalize(vector: Vector3): Vector3; function Slerp(start: Vector3, finish: Vector3, alpha: number): Vector3; function InverseSlerp(a: Vector3, b: Vector3, x: Vector3): number; function InverseLerp(a: Vector3, b: Vector3, x: Vector3): number; /** * * @param vector * @returns turns every nan component into 0 */ function FixVector3(vector: Vector3): Vector3; const vector3_inf: Vector3; const vector3_neg_inf: Vector3; /** * same as Vector3.Min but not limited by limitation of unpack * @param vector */ function Min(vectors: readonly Vector3[]): Vector3; /** * same as Vector3.Min but not limited by limitation of unpack * @param vectors * @returns */ function Max(vectors: readonly Vector3[]): Vector3; function RandomVector(min?: Vector3, max?: Vector3): Vector3; }