import type { XMLNode } from 'xmlbuilder'; export declare class Vector2 { x: number; y: number; constructor(buf?: Buffer | number[] | Vector2 | number, pos?: number, double?: boolean | number); static getXML(doc: XMLNode, v?: Vector2): void; static getZero(): Vector2; writeToBuffer(buf: Buffer, pos: number, double?: boolean): void; toString(): string; getBuffer(double?: boolean): Buffer; compareApprox(vec: Vector2): boolean; toArray(): number[]; equals(vec: Vector2, epsilon?: number): boolean; dot(vec: Vector2): number; cross(vec: Vector2): number; distance(vec: Vector2): number; squaredDistance(vec: Vector2): number; direction(vec: Vector2): Vector2; mix(vec: Vector2, t: number): Vector2; sum(vec: Vector2): Vector2; difference(vec: Vector2): Vector2; product(vec: Vector2): Vector2; quotient(vec: Vector2): Vector2; reset(): void; copy(): Vector2; negate(): Vector2; length(): number; squaredLength(): number; add(vec: Vector2): Vector2; subtract(vec: Vector2): Vector2; multiply(value: number | Vector2): Vector2; divide(value: number | Vector2): Vector2; scale(scalar: number): Vector2; normalize(): Vector2; angle(): number; rotate(angle: number): Vector2; perpendicular(): Vector2; projectOnto(vec: Vector2): Vector2; }