import { AnyIterable } from './types';
/**
 * Accumulates all items from an iterable into an array
 * @param iterable Source iterable to accumulate
 * @param concurrency Optional maximum number of concurrent operations
 */
export declare function accumulate<T>(iterable: AnyIterable<T>, concurrency?: number): Promise<T[]>;
/**
 * Creates a function that accumulates all items from an iterable into an array
 * @param concurrency Maximum number of concurrent operations
 */
export declare function accumulate<T>(concurrency: number): (iterable: AnyIterable<T>) => Promise<T[]>;
/**
 * Processes an iterable with optional concurrency and yields each item as it completes
 * @param iterable Source iterable to process
 * @param concurrency Optional maximum number of concurrent operations
 */
export declare function drain<T>(iterable: AnyIterable<T>, concurrency?: number): AsyncGenerator<T>;
/**
 * Creates a function that processes an iterable with concurrency and yields each item
 * @param concurrency Maximum number of concurrent operations
 */
export declare function drain<T>(concurrency: number): (iterable: AnyIterable<T>) => AsyncGenerator<T>;
//# sourceMappingURL=accumulate.d.ts.map