import { Observable } from '../Observable'; import { Operator } from '../Operator'; import { Subscriber } from '../Subscriber'; import { OuterSubscriber } from '../OuterSubscriber'; import { InnerSubscriber } from '../InnerSubscriber'; /** * Returns an Observable that mirrors the first source Observable to emit an item * from the combination of this Observable and supplied Observables * @param {...Observables} ...observables sources used to race for which Observable emits first. * @returns {Observable} an Observable that mirrors the output of the first Observable to emit an item. */ export declare function race(...observables: Array | Array>>): Observable; /** * Returns an Observable that mirrors the first source Observable to emit an item. * @param {...Observables} ...observables sources used to race for which Observable emits first. * @returns {Observable} an Observable that mirrors the output of the first Observable to emit an item. */ export declare function raceStatic(...observables: Array | Array>>): Observable; export declare class RaceOperator implements Operator { call(subscriber: Subscriber): Subscriber; } export declare class RaceSubscriber extends OuterSubscriber { private hasFirst; private observables; private subscriptions; constructor(destination: Subscriber); protected _next(observable: any): void; protected _complete(): void; notifyNext(outerValue: T, innerValue: R, outerIndex: number, innerIndex: number, innerSub: InnerSubscriber): void; }