import { DataOf, Reducer, PredicateFn, Mapper, AsyncMapper } from "../index"; export declare type INTERNAL_DONT_USE = { data: T[]; isSingular: boolean; }; export default class Data { private value; protected constructor(value: INTERNAL_DONT_USE); private flatMapHelper(newDatas); flatMap(fn: (it: T) => Data): Data; flatMapAsync(fn: (it: T) => Data | Promise>): Promise>; private mapHelper(newValues); map(fn: Mapper): Data; mapAsync(fn: AsyncMapper): Promise>; every(fn: PredicateFn): boolean; some(fn: PredicateFn): boolean; forEach(fn: (it: T) => void): this; reduce(fn: Reducer): T | undefined; reduce(fn: Reducer, initialValue: U): U; filter(fn: PredicateFn): Data; unwrap(): T | T[] | null; readonly isSingular: boolean; readonly values: T[]; readonly size: number; static fromJSON(data: DataOf): Data; static empty: Data; static of(data: U[]): Data; static pure(data: U): Data; }