export interface Reduce {
(fn: (accumulator: B, currentValue: A, currentIndex: number, xs: A[]) => B, initialValue: B, xs: A[]): B;
}
export interface ReduceU {
(fn: (accumulator: B, currentValue: A, currentIndex: number, xs: A[]) => B): (initialValue: B) => (xs: A[]) => B;
}
export declare const reduce: Reduce;
export declare const reduceU: ReduceU;