import { ForOfAwaitable } from './common.mjs';
export declare function map(f: (x: A) => B): (xs: ForOfAwaitable) => AsyncIterableIterator;
export declare function tap(f: (x: X) => any): (xs: ForOfAwaitable) => AsyncIterableIterator;
export declare const inspect: typeof tap;
export declare function forEach(f: (x: X) => any): (xs: ForOfAwaitable) => Promise;
export declare const subscribe: typeof forEach;
export declare function reduce(f: (acc: R, x: X) => R, init: R): (xs: ForOfAwaitable) => Promise;
export declare function scan(f: (acc: R, x: X) => R, init: R): (xs: ForOfAwaitable) => AsyncIterableIterator;
export declare const reducutions: typeof scan;
export declare function some(p: (x: X) => boolean): (xs: ForOfAwaitable) => Promise;
export declare function every(p: (x: X) => boolean): (xs: ForOfAwaitable) => Promise;
export declare function filter(p: (x: X) => boolean): (xs: ForOfAwaitable) => AsyncIterableIterator;
export declare function partition(p: (x: X) => boolean): (xs: ForOfAwaitable) => [AsyncIterableIterator, AsyncIterableIterator];
export declare function skip(n: number): (xs: ForOfAwaitable) => AsyncIterableIterator;
export declare function take(n: number): (xs: ForOfAwaitable) => AsyncIterableIterator;
export declare function partitionAt(n: number): (xs: ForOfAwaitable) => [AsyncIterableIterator, AsyncIterableIterator];
export declare const splitAt: typeof partitionAt;
export declare function skipWhile(f: (x: X) => boolean): (xs: ForOfAwaitable) => AsyncIterableIterator;
export declare function takeWhile(f: (x: X) => boolean): (xs: ForOfAwaitable) => AsyncIterableIterator;
export declare function partitionWhile(f: (x: X) => boolean): (xs: ForOfAwaitable) => [AsyncIterableIterator, AsyncIterableIterator];
export declare function find(p: (x: X) => boolean): (xs: ForOfAwaitable) => Promise;
export declare function findIndex(p: (x: X) => boolean): (xs: ForOfAwaitable) => Promise;
export declare function pluck(key: string | number): (xs: ForOfAwaitable