import { vec2 as Vec2 } from 'gl-matrix'; import Vector from './Vector'; /** * Encapsulates a 2D vector. Allows chaining methods by returning a reference to itself * @author badlogicgames@gmail.com */ declare class Vector2 implements Vector { data: Vec2; /** * Constructs a vector from the given vector * @param v The vector */ constructor(data?: Vec2); x: number; y: number; clone(): Vector2; len(): number; sqrLen(): number; copy(v: Vector2): Vector2; /** * Sets the components of this vector * @param x The x-component * @param y The y-component * @return This vector for chaining */ set(x: number, y: number): Vector2; sub(v: Vector2): Vector2; nor(): Vector2; add(v: Vector2): this; dot(v: Vector2): number; scale(scalar: number): Vector2; scaleAndAdd(vec: Vector2, scalar: number): Vector2; dst(v: Vector2): number; dst2(v: Vector2): number; limit(limit: number): Vector2; limit2(limit2: number): Vector2; epsilonEquals(other: Vector2, epsilon: number): boolean; isZero(): boolean; setZero(): Vector2; } export default Vector2;