import { Numbers } from './Numbers'; export declare namespace Vector { function set(target?: T, ...args: number[]): T; function every(vector: Readonly, operator: (current: number, index: number) => boolean): boolean; function reduce(vector: Readonly, operator: (previousValue: U, currentValue: number, currentIndex: number) => U, initialValue: U): U; function itr(vector: Readonly): Generator; function magnitudeSquared(vector: Readonly): number; function magnitude(vector: Readonly): number; function isNormalized(vector: Readonly, epsilon?: number): boolean; function dot(left: Readonly, right: Readonly): number; function distanceSquared(left: Readonly, right: Readonly): number; function distance(left: Readonly, right: Readonly): number; function equals(left: Readonly, right: Readonly): boolean; function equalsEpsilon(left: Readonly, right: Readonly, epsilon?: number): boolean; function op1(vector: Readonly, operator: (value: number, index: number) => number, target?: T): T; function op2(left: Readonly, right: Readonly, operator: (a: number, b: number) => number, target?: T): T; function clone(vector: Readonly, target?: T): T; function multiplyByScalar(vector: Readonly, scalar: number, target?: T): T; function normalize(vector: Readonly, target?: T, epsilon?: number): T | undefined; function negate(vector: Readonly, target?: T): T; function abs(vector: Readonly, target?: T): T; function fract(vector: Readonly, target?: T): T; function subtract(left: Readonly, right: Readonly, target?: T): T; function add(left: Readonly, right: Readonly, target?: T): T; function multiply(left: Readonly, right: Readonly, target?: T): T; function divide(left: Readonly, right: Readonly, target?: T): T; function lerp(left: Readonly, right: Readonly, t: number, target?: T): T; }