import { AsyncSequence } from "../../sequency"; export declare class Merge { /** * Merges the elements of both sequences into a new sequence. Each element of this sequence is eventually replaced with * an element of the other sequence by comparing results of the given `selector` function. If no value is found in the other * sequence the element is retained. New elements of the other sequence are appended to the end of the new sequence or * prepended to the start of the new sequence, if `prependNewValues` is set to `true`. This operation is not lazy evaluated. * * @param {AsyncSequence} other * @param {(value: T) => Promise | S} selector * @param prependNewValues * @returns {AsyncSequence} */ merge(this: AsyncSequence, other: AsyncSequence | AsyncIterable | Iterable, selector: (value: T) => Promise | S, prependNewValues?: boolean): AsyncSequence; }