import * as O from '../option'; import { Group, Monoid } from '../../typeclass/groups'; export declare const reduce: (f: (acc: B, item: A) => B, initial: B) => (fa: Generator) => B; export declare const some: (f: (a: A) => boolean) => (fa: Generator) => boolean; export declare const every: (f: (a: A) => boolean) => (fa: Generator) => boolean; export declare const find: (f: (a: A) => boolean) => (fa: Generator) => O.Option; export declare const includes: (a: A) => (fa: Generator) => boolean; export declare const fold: (m: Monoid) => (fa: Generator) => A; export declare const sum: (fa: Generator) => number; export declare const product: (fa: Generator) => number; export declare const min: (fa: Generator) => number; export declare const max: (fa: Generator) => number; export declare const alternateFold: (g: Group) => (fa: Generator) => A; export declare const alternateSum: (fa: Generator) => number; export declare const alternateProduct: (fa: Generator) => number; export declare const average: (fa: Generator) => number; export declare const count: (fa: Generator) => number; export declare const unzip: (fa: Generator<[A, B], any, unknown>) => [A[], B[]]; export declare const partition: (f: (a: A) => boolean) => (fa: Generator) => [A[], A[]]; export declare const collect: (fa: Generator) => A[]; export declare const collectSet: (fa: Generator) => Set; export declare const collectMap: (fa: Generator<[A, B], any, unknown>) => Map;