/**
 * "If the input is a number, return it, otherwise try to convert it to a number, and if that fails,
 * return the fallback value."
 *
 * @param {unknown} input - The value to convert to a number.
 * @param {number} [fallbackValue] - The value to return if the input is not a number.
 * @returns {number} A function that takes two parameters, input and fallbackValue.
 */
export declare const convertToNumber: (input: unknown, fallbackValue?: number) => number;
/**
 * Given an input string, check if the string match the size percentage format.
 *
 * @param {string} input - size string
 * @returns {boolean} - size percentage format validation
 */
export declare const isValidPercentage: (input: string) => boolean;
/**
 * It returns the input number, unless it's less than the minimum, in which case it returns the
 * minimum, or more than the maximum, in which case it returns the maximum.
 *
 * @param {number} input - The number to be normalized.
 * @param {number} [min] - The minimum value that the input can be.
 * @param {number} [max] - The maximum value that the number can be.
 * @returns {number} A function that takes in a number, a min, and a max and returns a number.
 */
export declare const normalizeNumberByRanger: (input: number, min?: number, max?: number) => number;
/**
 * The sum function takes two numbers and returns the sum of those two numbers.
 *
 * @param {number} accumulator - The accumulator accumulates the callback's return values; it is the
 * accumulated value previously returned in the last invocation of the callback, or initialValue, if
 * supplied (see below).
 * @param {number} value - The current element being processed in the array.
 * @returns {number} - return the calculated sum
 */
export declare const sum: (accumulator: number, value: number) => number;
/**
 * "Given a string, return an array of numbers that are in the string."
 *
 * The function is written in TypeScript, but it's not too hard to understand even if you don't know
 * TypeScript
 *
 * @param {string} value - string - The value that is passed in from the input field.
 * @returns {number[]} - return a number[]
 */
export declare const mapStringToNumberArray: (value: string) => number[];
/**
 * "Given an array of numbers, and a strategy for determining which numbers to double, return an array
 * of numbers with the doubled numbers summed."
 *
 * The strategy is a function that takes an index and returns a boolean. The strategy is used to
 * determine which numbers to double
 *
 * @param {number[]} values - number[] - an array of numbers to be summed
 * @param {(index: number) => boolean} strategy - (index: number) => boolean
 * @returns {number[]} - return a number[]
 */
export declare const mapParityDigits: (values: number[], strategy: (index: number) => boolean) => number[];
/**
 * Calculates the number of decimal in a given number.
 *
 * @param {number} value - number.
 * @returns {number} - The number of decimal.
 */
export declare const countDecimals: (value: number) => number;
