/** 3D vector with x, y, z components. */ export declare class Vector3 { #private; constructor(x?: number, y?: number, z?: number); get x(): number; set x(value: number); get y(): number; set y(value: number); get z(): number; set z(value: number); get length(): number; get lengthSq(): number; add(v: Vector3): this; /** Applies an Euler rotation (XYZ order) in-place. */ applyEuler(euler: { x: number; y: number; z: number; order: string; }): this; /** Multiplies this vector by a 3x3 matrix (column-major flat array). */ applyMatrix3(m: { elements: ArrayLike; }): this; /** Multiplies this vector by a 4x4 matrix (column-major flat array), treating w=1. */ applyMatrix4(m: { elements: ArrayLike; }): this; /** Rotates this vector by a quaternion. */ applyQuaternion(q: { x: number; y: number; z: number; w: number; }): this; clone(): Vector3; copy(v: Vector3): this; /** Cross product of two 3D vectors, returned as a new Vector3. */ static cross(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): Vector3; /** Sets this vector to the cross product of this x v. */ cross(v: Vector3): this; /** Sets this vector to the cross product of a x b. */ crossVectors(a: Vector3, b: Vector3): this; distanceTo(v: Vector3): number; distanceSqTo(v: Vector3): number; divScalar(scalar: number): this; /** Dot product of (x, y, z) with a target vector. */ static dot(x: number, y: number, z: number, target?: Vector3): number; dot(v: { x: number; y: number; z: number; }): number; equals(v: Vector3): boolean; fromArray(array: number[]): this; /** Linearly interpolates toward v by t. */ lerp(v: Vector3, t: number): this; mulScalar(scalar: number): this; negate(): this; /** Normalizes this vector to unit length. */ normalize(): this; /** * Projects this world-space vector into normalized device coordinates * using the camera's matrixWorldInverse and projectionMatrix. */ project(camera: { matrixWorldInverse: { elements: ArrayLike; }; projectionMatrix: { elements: ArrayLike; }; }): this; set(x: number, y: number, z: number): this; /** Reads the translation column from a 4x4 column-major matrix. */ setFromMatrixPosition(m: { elements: ArrayLike; }): this; setScalar(scalar: number): this; sub(v: Vector3): this; /** Sets this vector to a - b. */ subVectors(a: Vector3, b: Vector3): this; /** Sets this vector from spherical coordinates. */ setFromSpherical(s: { radius: number; phi: number; theta: number; }): this; /** * Sets this vector from spherical coordinates (radius, phi, theta). * phi is polar angle from Y+ axis, theta is azimuthal angle from Z+ axis. */ setFromSphericalCoords(radius: number, phi: number, theta: number): this; [Symbol.iterator](): Generator; } //# sourceMappingURL=Vector3.d.ts.map