import { AsyncIterableX } from '../../asynciterable/asynciterablex.js'; import { share } from '../../asynciterable/operators/share.js'; export function shareProto(this: AsyncIterableX): AsyncIterableX; export function shareProto( this: AsyncIterableX, selector?: ( value: AsyncIterable ) => AsyncIterable | Promise> ): AsyncIterableX; /** * @ignore */ export function shareProto( this: AsyncIterableX, selector?: ( value: AsyncIterable ) => AsyncIterable | Promise> ): AsyncIterableX { return share(selector)(this); } AsyncIterableX.prototype.share = shareProto; declare module '../../asynciterable/asynciterablex' { interface AsyncIterableX { share: typeof shareProto; } }