export declare const epsilon = 1e-12; export declare const pi: number; export declare const halfPi: number; export declare const tau: number; export declare const NEWTON_ITERATIONS = 4; export declare const NEWTON_MIN_SLOPE = 0.001; export declare const SUBDIVISION_PRECISION = 1e-7; export declare const SUBDIVISION_MAX_ITERATIONS = 10; export declare const pi2: number; export type vec2 = [number, number] | Float32Array; export type vec3 = [number, number, number] | Float32Array; export type vec4 = [number, number, number, number] | Float32Array; export type vec8 = [number, number, number, number, number, number, number, number] | Float32Array; export type mat4 = [ number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number ] | Float32Array; export declare const abs: (x: number) => number; export declare const atan2: (y: number, x: number) => number; export declare const cos: (x: number) => number; export declare const max: (...values: number[]) => number; export declare const min: (...values: number[]) => number; export declare const sin: (x: number) => number; export declare const sqrt: (x: number) => number; export declare const pow: (x: number, y: number) => number; export declare function acos(x: number): number; export declare function asin(x: number): number; export declare function pointAt(x1: number | null | undefined, y1: number | null | undefined, x2: number | null | undefined, y2: number | null | undefined, t: number): { x: undefined | number; y: undefined | number; }; export declare function lengthFromPointToLine(point: { x: number; y: number; }, point1: { x: number; y: number; }, point2: { x: number; y: number; }): number; export declare function crossProduct(dir1: vec2, dir2: vec2): number; export declare function crossProductPoint(dir1: { x: number; y: number; }, dir2: { x: number; y: number; }): number; export declare function dotProduct(a: number[] | Float32Array, b: number[] | Float32Array): number; export declare function fuzzyEqualNumber(a: number, b: number): boolean; export declare function fuzzyEqualVec(a: vec2, b: vec2): boolean; export declare function fixPrecision(num: number, precision?: number): number; export declare function getDecimalPlaces(n: number): number; export declare function precisionAdd(a: number, b: number): number; export declare function precisionSub(a: number, b: number): number;