import { AsyncIterableX } from '../../asynciterable/asynciterablex.js'; import { JoinAsyncIterable } from '../../asynciterable/operators/innerjoin.js'; /** * @ignore */ export function innerJoinProto( this: AsyncIterableX, inner: AsyncIterable, outerSelector: (value: TOuter) => TKey | Promise, innerSelector: (value: TInner) => TKey | Promise, resultSelector: (outer: TOuter, inner: TInner) => TResult | Promise ): AsyncIterableX { return new JoinAsyncIterable( this, inner, outerSelector, innerSelector, resultSelector ); } AsyncIterableX.prototype.innerJoin = innerJoinProto; declare module '../../asynciterable/asynciterablex' { interface AsyncIterableX { innerJoin: typeof innerJoinProto; } }