import { Predicate } from '@johngw/stream-common/Function';
import { Flushable } from '@johngw/stream-common/Stream';
/**
 * Runs every chunk through a predicate. If anything suceeds the
 * predicate, `true` is queued and the stream terminated.
 * Otherwise this will wait for the entire stream to finish
 * before queuing `false`.
 *
 * @group Transformers
 * @see {@link every:function}
 * @example
 * When every chunk failes the predicate.
 * ```
 * --1--2--3--4--5--6--7--8--9-|
 *
 * every((x) => x > 10)
 *
 * ----------------------------F-|
 * ```
 *
 * When something passes the predicate.
 * ```
 * --1--2--3--4--5--6--X
 *
 * every((x) => x > 5)
 *
 * -----------------T--|
 * ```
 *
 * A `flushes` stream can be used to force the transformer to queue
 * it's current state downstream.
 *
 * ```
 * --1--2--3--4--5--6--7--8--9-|
 *
 * some((x) => x > 10, { flushes:
 * -----------N-----------------
 * })
 *
 * -----------F----------------F-|
 */
export declare function some<T>(predicate: Predicate<T>, options?: Flushable): TransformStream<T, boolean>;
