@hat-open/util
    Preparing search index...

    Variable reduceConst

    reduce: {
        <T1, T2>():
            | Curried3<
                (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
                T2,
                T1[],
                T2,
            >
            | Curried3<
                (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
                T2,
                Record<string, T1>,
                T2,
            >;
        <T1, T2>(
            fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
        ): Curried2<T2, T1[], T2>;
        <T1, T2>(
            fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
        ): Curried2<T2, Record<string, T1>, T2>;
        <T1, T2>(
            fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
            val: T2,
        ): Curried1<T1[], T2>;
        <T1, T2>(
            fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
            val: T2,
        ): Curried1<Record<string, T1>, T2>;
        <T1, T2>(
            fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
            val: T2,
            arr: T1[],
        ): T2;
        <T1, T2>(
            fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
            val: T2,
            obj: Record<string, T1>,
        ): T2;
    } = ...

    Curried _reduce

    Type declaration

      • <T1, T2>():
            | Curried3<
                (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
                T2,
                T1[],
                T2,
            >
            | Curried3<
                (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
                T2,
                Record<string, T1>,
                T2,
            >
      • Type Parameters

        • T1
        • T2

        Returns
            | Curried3<
                (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
                T2,
                T1[],
                T2,
            >
            | Curried3<
                (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
                T2,
                Record<string, T1>,
                T2,
            >

      • <T1, T2>(
            fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
        ): Curried2<T2, T1[], T2>
      • Type Parameters

        • T1
        • T2

        Parameters

        • fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2

        Returns Curried2<T2, T1[], T2>

      • <T1, T2>(
            fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
        ): Curried2<T2, Record<string, T1>, T2>
      • Type Parameters

        • T1
        • T2

        Parameters

        • fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2

        Returns Curried2<T2, Record<string, T1>, T2>

      • <T1, T2>(
            fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
            val: T2,
        ): Curried1<T1[], T2>
      • Type Parameters

        • T1
        • T2

        Parameters

        • fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2
        • val: T2

        Returns Curried1<T1[], T2>

      • <T1, T2>(
            fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
            val: T2,
        ): Curried1<Record<string, T1>, T2>
      • Type Parameters

        • T1
        • T2

        Parameters

        • fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2
        • val: T2

        Returns Curried1<Record<string, T1>, T2>

      • <T1, T2>(
            fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2,
            val: T2,
            arr: T1[],
        ): T2
      • Type Parameters

        • T1
        • T2

        Parameters

        • fn: (acc: T2, val: T1, index?: number, arr?: T1[]) => T2
        • val: T2
        • arr: T1[]

        Returns T2

      • <T1, T2>(
            fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2,
            val: T2,
            obj: Record<string, T1>,
        ): T2
      • Type Parameters

        • T1
        • T2

        Parameters

        • fn: (acc: T2, val: T1, key?: string, obj?: Record<string, T1>) => T2
        • val: T2
        • obj: Record<string, T1>

        Returns T2