/**
 * Returns `true` if the value is one of the type: `null`, `undefined` or `NaN`.
 *
 * @param {*} value The value to check.
 * @returns {boolean}
 */ "use strict";
Object.defineProperty(exports, "__esModule", {
    value: true
});
function _export(target, all) {
    for(var name in all)Object.defineProperty(target, name, {
        enumerable: true,
        get: Object.getOwnPropertyDescriptor(all, name).get
    });
}
_export(exports, {
    get isNullishOrNaN () {
        return isNullishOrNaN;
    },
    get roundFloat () {
        return roundFloat;
    }
});
function isNullishOrNaN(value) {
    return value === null || value === undefined || isNaN(value);
}
function roundFloat(value, option) {
    if (typeof value !== 'number') {
        return value;
    }
    const stringifyValue = (number)=>number.toString();
    switch(typeof option){
        case 'number':
            return stringifyValue(value.toFixed(Math.min(Math.max(0, option), 100)));
        case 'boolean':
            return option ? stringifyValue(Math.round(value)) : value;
        case 'string':
            if (option === 'auto') {
                const integerDigits = Math.round(value).toString().length;
                // Make the entire number fit into 8 digits
                return stringifyValue(value.toFixed(8 - integerDigits));
            }
            return value;
        default:
            return value;
    }
}
