1313dab298eda1cdfa2c673546a6413a8f65a3622a56e105ba8c41b637dbe950cd277bb8a1ecfc681b536ade4f5ed0e01a5069ed4fa1eec22d241302a81970 1.3 KB

123456789101112131415161718
  1. import { Observable } from '../Observable';
  2. import { Subscriber } from '../Subscriber';
  3. import { ObservableInput, SchedulerLike } from '../types';
  4. /**
  5. * A process embodying the general "merge" strategy. This is used in
  6. * `mergeMap` and `mergeScan` because the logic is otherwise nearly identical.
  7. * @param source The original source observable
  8. * @param subscriber The consumer subscriber
  9. * @param project The projection function to get our inner sources
  10. * @param concurrent The number of concurrent inner subscriptions
  11. * @param onBeforeNext Additional logic to apply before nexting to our consumer
  12. * @param expand If `true` this will perform an "expand" strategy, which differs only
  13. * in that it recurses, and the inner subscription must be schedule-able.
  14. * @param innerSubScheduler A scheduler to use to schedule inner subscriptions,
  15. * this is to support the expand strategy, mostly, and should be deprecated
  16. */
  17. export declare function mergeInternals<T, R>(source: Observable<T>, subscriber: Subscriber<R>, project: (value: T, index: number) => ObservableInput<R>, concurrent: number, onBeforeNext?: (innerValue: R) => void, expand?: boolean, innerSubScheduler?: SchedulerLike, additionalFinalizer?: () => void): () => void;
  18. //# sourceMappingURL=mergeInternals.d.ts.map