From 9664806862ed7943683fbe749713d49398e65bd3 Mon Sep 17 00:00:00 2001 From: Igor Oleinikov Date: Tue, 18 Mar 2014 11:46:07 +0400 Subject: [PATCH] Added overloads of `selectMany`/`flatMap` taking promises instead of observables. --- rx.js/rx.d.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/rx.js/rx.d.ts b/rx.js/rx.d.ts index 1ab2d3574..640fe8ff7 100644 --- a/rx.js/rx.d.ts +++ b/rx.js/rx.d.ts @@ -245,7 +245,8 @@ declare module Rx { mergeObservable(): T; // alias for mergeAll onErrorResumeNext(second: Observable): Observable; skipUntil(other: Observable): Observable; - switchLatest(): T; + switch(): T; + switchLatest(): T; // alias for switch takeUntil(other: Observable): Observable; zip(second: Observable, resultSelector: (v1: T, v2: T2) => TResult): Observable; zip(second: Observable, third: Observable, resultSelector: (v1: T, v2: T2, v3: T3) => TResult): Observable; @@ -285,11 +286,17 @@ declare module Rx { select(selector: (value: T, index: number, source: Observable) => TResult, thisArg?: any): Observable; map(selector: (value: T, index: number, source: Observable) => TResult, thisArg?: any): Observable; // alias for select selectMany(selector: (value: T) => Observable, resultSelector: (item: T, other: TOther) => TResult): Observable; + selectMany(selector: (value: T) => IPromise, resultSelector: (item: T, other: TOther) => TResult): Observable; selectMany(selector: (value: T) => Observable): Observable; + selectMany(selector: (value: T) => IPromise): Observable; selectMany(other: Observable): Observable; + selectMany(other: IPromise): Observable; flatMap(selector: (value: T) => Observable, resultSelector: (item: T, other: TOther) => TResult): Observable; // alias for selectMany + flatMap(selector: (value: T) => IPromise, resultSelector: (item: T, other: TOther) => TResult): Observable; // alias for selectMany flatMap(selector: (value: T) => Observable): Observable; // alias for selectMany + flatMap(selector: (value: T) => IPromise): Observable; // alias for selectMany flatMap(other: Observable): Observable; // alias for selectMany + flatMap(other: IPromise): Observable; // alias for selectMany skip(count: number): Observable; skipWhile(predicate: (value: T, index: number, source: Observable) => boolean, thisArg?: any): Observable; take(count: number, scheduler?: IScheduler): Observable;