import { AsyncIterableX } from './../asynciterablex';
import { MonoTypeOperatorAsyncFunction } from '../../interfaces';
export declare class DistinctAsyncIterable<TSource, TKey> extends AsyncIterableX<TSource> {
    private _source;
    private _keySelector;
    private _comparer;
    constructor(source: AsyncIterable<TSource>, keySelector: (value: TSource) => TKey | Promise<TKey>, comparer: (x: TKey, y: TKey) => boolean | Promise<boolean>);
    [Symbol.asyncIterator](): AsyncGenerator<TSource, void, unknown>;
}
export declare function distinct<TSource, TKey>(keySelector?: (value: TSource) => TKey | Promise<TKey>, comparer?: (x: TKey, y: TKey) => boolean | Promise<boolean>): MonoTypeOperatorAsyncFunction<TSource>;
