import { Delay, Stream } from '@motorcycle/types';
/**
 * Collects events for a given amount of time.
 * @name collectEventsFor<A>(delay: Delay, stream: Stream<A>): Promise<ReadonlyArray<A>>
 * @example
 * // Mocha style tests
 * it('increasing value by one', () => {
 *   const stream = scan(x => x + 1, skip(1, periodic(10)))
 *
 *   return collectEventsFor(30, stream).then(events => assert.deepEqual(events, [0, 1, 2, 3]))
 * })
 */
export declare const collectEventsFor: CollectEventsFor;
export interface CollectEventsFor {
    <A>(delay: Delay, stream: Stream<A>): Promise<ReadonlyArray<A>>;
    (delay: Delay): <A>(stream: Stream<A>) => Promise<ReadonlyArray<A>>;
    <A>(delay: Delay): (stream: Stream<A>) => Promise<ReadonlyArray<A>>;
}
