import { Vec2, Vec3 } from '../types/common';
export declare function negateVec3(vec: Vec3): Vec3;
export declare function getVec3(buffer: number[], id: number): Vec3;
export declare function setVec3(buffer: number[], id: number, value: Vec3): void;
export declare function addVec3(v1: Vec3, v2: Vec3): Vec3;
export declare function subVec3(v1: Vec3, v2: Vec3): Vec3;
export declare function scaleVec3(vec: Vec3, factor: number): Vec3;
export declare function lengthVec3(vec: Vec3): number;
export declare function crossVec3(v1: Vec3, v2: Vec3): Vec3;
export declare function dotVec3(v1: Vec3, v2: Vec3): number;
export declare function normalizeVec3(v: Vec3): Vec3;
export declare function mixVec3(v1: Vec3, v2: Vec3, t?: number): Vec3;
export declare function copyVec3(vec: Vec3): Vec3;
export declare function angleVec3(v1: Vec3, v2: Vec3): number;
export declare function rotateVec3(vector: Vec3, axis?: Vec3, angle?: number): Vec3;
export declare function directionVec3(v1: Vec3, v2: Vec3): Vec3;
export declare function distanceVec3(v1: Vec3, v2: Vec3): number;
export declare function getVec2(buffer: number[], id: number): Vec2;
export declare function setVec2(buffer: number[], id: number, value: Vec2): void;
export declare function normalizeVec2(v: Vec2): Vec2;
export declare function addVec2(v1: Vec2, v2: Vec2): Vec2;
export declare function subVec2(v1: Vec2, v2: Vec2): Vec2;
export declare function dotVec2(v1: Vec2, v2: Vec2): number;
export declare function negateVec2(vec: Vec2): Vec2;
export declare function scaleVec2(vec: Vec2, factor: number): Vec2;
export declare function lengthVec2(vec: Vec2): number;
export declare function mixVec2(v1: Vec2, v2: Vec2, t?: number): Vec2;
export declare function directionVec2(v1: Vec2, v2: Vec2): Vec2;
export declare function distanceVec2(v1: Vec2, v2: Vec2): number;
