UNPKG

dev-utils-plus

Version:

Type-safe utility functions for JavaScript/TypeScript: string, array, object, date, validation, crypto, format, math

158 lines 5.03 kB
/** * Math utility functions for common mathematical operations */ /** * Clamps a number between min and max values * @param value - The number to clamp * @param min - Minimum value * @param max - Maximum value * @returns Clamped number between min and max * @example * clamp(10, 0, 5) // 5 * clamp(-5, 0, 5) // 0 * clamp(3, 0, 5) // 3 */ export declare function clamp(value: number, min: number, max: number): number; /** * Linear interpolation between two values */ export declare function lerp(start: number, end: number, t: number): number; /** * Maps a value from one range to another */ export declare function mapRange(value: number, inMin: number, inMax: number, outMin: number, outMax: number): number; /** * Checks if a number is between two values (inclusive) * @param value - The number to check * @param min - Minimum value (inclusive) * @param max - Maximum value (inclusive) * @returns True if value is between min and max * @example * isBetween(5, 1, 10) // true * isBetween(0, 1, 10) // false */ export declare function isBetween(value: number, min: number, max: number): boolean; /** * Rounds a number to a specified number of decimal places * @param value - The number to round * @param decimals - Number of decimal places (must be non-negative integer) * @returns Rounded number * @example * roundTo(3.14159, 2) // 3.14 * roundTo(1.235, 2) // 1.24 */ export declare function roundTo(value: number, decimals: number): number; /** * Calculates the percentage of a value relative to a total */ export declare function percentage(value: number, total: number): number; /** * Calculates the factorial of a number */ export declare function factorial(n: number): number; /** * Calculates the greatest common divisor of two numbers */ export declare function gcd(a: number, b: number): number; /** * Calculates the least common multiple of two numbers */ export declare function lcm(a: number, b: number): number; /** * Checks if a number is prime */ export declare function isPrime(n: number): boolean; /** * Generates an array of prime numbers up to a limit */ export declare function generatePrimes(limit: number): number[]; /** * Calculates the sum of an array of numbers */ export declare function sum(numbers: number[]): number; /** * Calculates the average of an array of numbers */ export declare function average(numbers: number[]): number; /** * Calculates the median of an array of numbers */ export declare function median(numbers: number[]): number; /** * Calculates the mode of an array of numbers */ export declare function mode(numbers: number[]): number[]; /** * Calculates the standard deviation of an array of numbers */ export declare function standardDeviation(numbers: number[]): number; /** * Calculates the variance of an array of numbers */ export declare function variance(numbers: number[]): number; /** * Generates a random integer between min and max (inclusive) * @param min - Minimum value (inclusive) * @param max - Maximum value (inclusive) * @returns Random integer between min and max * @example * randomInt(1, 10) // 7 (random integer between 1 and 10) */ export declare function randomInt(min: number, max: number): number; /** * Generates a random float between min and max * @param min - Minimum value (inclusive) * @param max - Maximum value (exclusive) * @returns Random float between min and max * @example * randomFloat(1, 5) // 3.742891 */ export declare function randomFloat(min: number, max: number): number; /** * Calculates the distance between two points * @param x1 - First point x coordinate * @param y1 - First point y coordinate * @param x2 - Second point x coordinate * @param y2 - Second point y coordinate * @returns Distance between the two points * @example * distance(0, 0, 3, 4) // 5 */ export declare function distance(x1: number, y1: number, x2: number, y2: number): number; /** * Converts degrees to radians * @param degrees - Angle in degrees * @returns Angle in radians * @example * degreesToRadians(180) // 3.141592653589793 */ export declare function degreesToRadians(degrees: number): number; /** * Converts radians to degrees * @param radians - Angle in radians * @returns Angle in degrees * @example * radiansToDegrees(Math.PI) // 180 */ export declare function radiansToDegrees(radians: number): number; /** * Calculates the nth root of a number * @param value - The number to find the root of * @param n - The root degree * @returns The nth root of the value * @example * nthRoot(8, 3) // 2 (cube root of 8) * nthRoot(16, 4) // 2 (4th root of 16) */ export declare function nthRoot(value: number, n: number): number; /** * Calculates the binomial coefficient (n choose k) * @param n - Total number of items * @param k - Number of items to choose * @returns Binomial coefficient * @example * binomial(5, 2) // 10 * binomial(10, 3) // 120 */ export declare function binomial(n: number, k: number): number; //# sourceMappingURL=index.d.ts.map