import mat4 from './mat4'; export default class vec4 { get x(): number; get y(): number; get z(): number; get w(): number; get xy(): [number, number]; get xyz(): [number, number, number]; get xyzw(): [number, number, number, number]; set x(value: number); set y(value: number); set z(value: number); set w(value: number); set xy(values: [number, number]); set xyz(values: [number, number, number]); set xyzw(values: [number, number, number, number]); get r(): number; get g(): number; get b(): number; get a(): number; get rg(): [number, number]; get rgb(): [number, number, number]; get rgba(): [number, number, number, number]; set r(value: number); set g(value: number); set b(value: number); set a(value: number); set rg(values: [number, number]); set rgb(values: [number, number, number]); set rgba(values: [number, number, number, number]); constructor(values?: [number, number, number, number]); private values; static readonly zero: vec4; static readonly one: vec4; at(index: number): number; reset(): void; copy(dest?: vec4): vec4; negate(dest?: vec4): vec4; equals(vector: vec4, threshold?: number): boolean; length(): number; squaredLength(): number; add(vector: vec4): vec4; subtract(vector: vec4): vec4; multiply(vector: vec4): vec4; divide(vector: vec4): vec4; scale(value: number, dest?: vec4): vec4; normalize(dest?: vec4): vec4; multiplyMat4(matrix: mat4, dest?: vec4): vec4; static mix(vector: vec4, vector2: vec4, time: number, dest?: vec4): vec4; static sum(vector: vec4, vector2: vec4, dest?: vec4): vec4; static difference(vector: vec4, vector2: vec4, dest?: vec4): vec4; static product(vector: vec4, vector2: vec4, dest?: vec4): vec4; static quotient(vector: vec4, vector2: vec4, dest?: vec4): vec4; }