/** * @license Use of this source code is governed by an MIT-style license that * can be found in the LICENSE file at https://github.com/cartant/rxjs-etc */ import { Observable, queueScheduler } from "rxjs"; import { observeOn } from "rxjs/operators"; export function queue(s1: Observable): [Observable]; export function queue( s1: Observable, s2: Observable ): [Observable, Observable]; export function queue( s1: Observable, s2: Observable, s3: Observable ): [Observable, Observable, Observable]; export function queue( s1: Observable, s2: Observable, s3: Observable, s4: Observable ): [Observable, Observable, Observable, Observable]; export function queue( s1: Observable, s2: Observable, s3: Observable, s4: Observable, s5: Observable ): [ Observable, Observable, Observable, Observable, Observable ]; export function queue( s1: Observable, s2: Observable, s3: Observable, s4: Observable, s5: Observable, s6: Observable ): [ Observable, Observable, Observable, Observable, Observable, Observable ]; export function queue(...sources: Observable[]): Observable[]; export function queue(...sources: Observable[]): Observable[] { return sources.map((source) => source.pipe(observeOn(queueScheduler))); }