import { IterableX } from '../../iterable/iterablex' ; import { reduce } from '../../iterable/reduce' ; import { ReduceOptions } from '../../iterable/reduceoptions' ; ignore export function reduceProto < T , R = T > ( this , options ) ; export function reduceProto < T , R = T > ( this , accumulator , seed ? ) ; export function reduceProto < T , R = T > ( this , optionsOrAccumulator , seed ? ) { return reduce ( this , typeof optionsOrAccumulator === 'function' ? arguments . length > 1 ? { 'callback' : optionsOrAccumulator , 'seed' : seed } : { 'callback' : optionsOrAccumulator } : optionsOrAccumulator ) ; } IterableX . prototype . reduce = reduceProto ; declare module '../../iterable/iterablex' { interface IterableX < T > { reduce : typeof reduceProto ; } }