import { IterableX } from '../iterablex.js'; import { MonoTypeOperatorFunction } from '../../interfaces.js'; import { DistinctOptions } from './distinctoptions.js'; /** @ignore */ export declare class DistinctIterable extends IterableX { private _source; private _keySelector; private _cmp; constructor(source: Iterable, keySelector: (value: TSource) => TKey, cmp: (x: TKey, y: TKey) => boolean); [Symbol.iterator](): Generator; } /** * Returns an iterable sequence that contains only distinct elements according to the keySelector and comparer. * * @template TSource The type of the elements in the source sequence. * @template TKey The type of the discriminator key computed for each element in the source sequence. * @param {DistinctOptions} [options] The optional arguments for a key selector and comparer function. * @returns {MonoTypeOperatorFunction} An operator that returns distinct elements according to the keySelector and options. */ export declare function distinct(options?: DistinctOptions): MonoTypeOperatorFunction;