/** * Returns reduced `memo` iterating over `a` with `fn(memo, a[], i, a)`. */ export declare function reduce( a:readonly I[], fn:reduce_fn_T, memo:O ):O export declare type reduce_fn_T = ( memo:O, item:I, idx:number, a:readonly I[] )=>O export declare function maybe_reduce( maybe_a:readonly I[]|undefined, fn:reduce_fn_T, memo:O, or?:Or ):O|Or /** * Return Function that returns from `reduce` with `fn` and factory `memo_(a)`. */ export declare function reduce_( fn:reduce_fn_T, memo_:memo_fn_T ):(a:readonly I[], memo:O)=>O export declare type memo_fn_T = (a:readonly I[])=>O export declare function maybe_reduce_( fn:reduce_fn_T, memo_fn:memo_fn_T|undefined, or?:Or ):(a:readonly I[], memo:O)=>O|Or export { reduce_ as _reduce, reduce_ as _fn__reduce, maybe_reduce_ as _maybe_reduce, }