import EventEmitter = require('events');
import { FluentAsyncIterable, FluentEmitOptions, FluentIterable } from './types';
declare function f<T>(iterable: Iterable<T>): FluentIterable<T>;
declare function f<T>(iterable: AsyncIterable<T>): FluentAsyncIterable<T>;
declare function f<T extends object, K extends keyof T>(iterable: T): FluentAsyncIterable<[K, T[K]]>;
declare function f<T = any>(emitter: EventEmitter, options?: FluentEmitOptions): FluentAsyncIterable<T>;
export { f };
