import BigNumber from "bignumber.js";

/** 高精度数值计算 */
export default {
    /**
     * 加法运算
     * @param {*} a 
     * @param {*} b 
     * @returns 
     */
    plus: (a: number, b: number) => new BigNumber(a).plus(new BigNumber(b)).toNumber(),

    /**
     * 减法运算
     * @param {*} a 
     * @param {*} b 
     * @returns 
     */
    minus: (a: number, b: number) => new BigNumber(a).minus(new BigNumber(b)).toNumber(),

    /**
     * 除法运算
     * @param {*} a 
     * @param {*} b 
     * @returns 
     */
    div: (a: number, b: number) => new BigNumber(a).dividedBy(new BigNumber(b)).toNumber(),

    /**
     * 乘法运算
     * @param {*} a 
     * @param {*} b 
     * @returns 
     */
    mul: (a: number, b: number) => new BigNumber(a).multipliedBy(new BigNumber(b)).toNumber(),
};
