/** * 纯函数 * @filename packages/utils/src/utils/pureFunction.ts * @author Mr Prince * @date 2023-04-20 10:42:54 */ /** * 返回所有真值 */ export declare function compact(arr: unknown[]): unknown[]; /** * 如果是 null 或者 undefined 或者NaN * * 则返回 默认值 */ export declare function defaultTo(value: T | null | undefined, defaultValue: T): T; /** * 返回原来的值 */ export declare function identity(value: T): T; /** * 判断两个值是否相同 */ export declare const isSame: (value1: unknown, value2: unknown) => boolean; export declare const not: (fn: T) => T; /** * 延迟求值 */ export declare const lazy: (fn: T) => () => any; /** * 预先求值 */ export declare const eager: (fn: T) => () => any; /** * 缓存执行结果 * @param fn 需要缓存结果的函数 * @param resolver 计算出缓存 key 的函数 */ export declare const memorize: (fn: T, resolver: (...args: any[]) => string) => T; /** * 类型是可以实现的 * 使用多个泛型 n个参数的泛型,一个返回值的泛型 * 但是实现非常繁琐,没必要 */ export declare const currying: (fn: T) => T;