import { RangeCoords } from "../common-types"; export declare const EPSILON = 1e-9; /** * Normalize a range * @param minOrRange * @param max */ export declare function normalizeRange(minOrRange: number | RangeCoords, max?: number): RangeCoords; /** * Clamps a value to a range * @param value * @param min * @param max */ export declare function clamp(value: number, min: number | RangeCoords, max?: number): number; /** * Clamps a value to a range in a way, that when it is over in one end, then it appears from the other end * @param value * @param min * @param max */ export declare function overflow(value: number, min: number | RangeCoords, max?: number): number; /** * Checks if a number is equal to b number with epsilon tolerance * @param a * @param b * @param epsilon */ export declare function isEqual(a: number, b: number, epsilon?: number): boolean; /** * Checks if a number is equal to zero with epsilon tolerance * @param a * @param epsilon */ export declare function isZero(a: number, epsilon?: number): boolean; export declare class MathUtils { static equal(a: number, b: number, epsilon?: number): boolean; static clamp(value: number, min: number, max: number): number; static round(value: number, precision?: number, divider?: number): number; static approxIndex(x: number, values: number[], epsilon?: number): number; static approximate(x: number, values: number[], epsilon?: number): number; }