/// module Rx { export interface Observable { /** * Projects each notification of an observable sequence to an observable sequence and merges the resulting observable sequences into one observable sequence. * @param {Function} onNext A transform function to apply to each element; the second parameter of the function represents the index of the source element. * @param {Function} onError A transform function to apply when an error occurs in the source sequence. * @param {Function} onCompleted A transform function to apply when the end of the source sequence is reached. * @param {Any} [thisArg] An optional "this" to use to invoke each transform. * @returns {Observable} An observable sequence whose elements are the result of invoking the one-to-many transform function corresponding to each notification in the input sequence. */ selectManyObserver(onNext: (value: T, index: number) => Observable, onError: (exception: any) => Observable, onCompleted: () => Observable, thisArg?: any): Observable; /** * Projects each notification of an observable sequence to an observable sequence and merges the resulting observable sequences into one observable sequence. * @param {Function} onNext A transform function to apply to each element; the second parameter of the function represents the index of the source element. * @param {Function} onError A transform function to apply when an error occurs in the source sequence. * @param {Function} onCompleted A transform function to apply when the end of the source sequence is reached. * @param {Any} [thisArg] An optional "this" to use to invoke each transform. * @returns {Observable} An observable sequence whose elements are the result of invoking the one-to-many transform function corresponding to each notification in the input sequence. */ flatMapObserver(onNext: (value: T, index: number) => Observable, onError: (exception: any) => Observable, onCompleted: () => Observable, thisArg?: any): Observable; } } (function() { var os: Rx.Observable; var on: Rx.Observable; os.flatMapObserver((v, i) => Rx.Observable.just(i), (e) => Rx.Observable.just(e), () => Rx.Observable.empty()); os.selectManyObserver((v, i) => Rx.Observable.just(i), (e) => Rx.Observable.just(e), () => Rx.Observable.empty()); os.flatMapObserver((v, i) => Rx.Observable.just(i), (e) => Rx.Observable.just(e), () => Rx.Observable.empty(), {}); os.selectManyObserver((v, i) => Rx.Observable.just(i), (e) => Rx.Observable.just(e), () => Rx.Observable.empty(), {}); });