/// // Type definitions for RxJS-Binding package // Project: http://rx.codeplex.com/ // Definitions by: Carl de Billy // Revision by: Igor Oleinikov // Definitions: https://github.com/borisyankov/DefinitelyTyped declare module Rx { export interface BehaviorSubject extends Subject { } interface BehaviorSubjectStatic { new (initialValue: T): BehaviorSubject; } export var BehaviorSubject: BehaviorSubjectStatic; export interface ReplaySubject extends Subject { } interface ReplaySubjectStatic { new (bufferSize?: number, window?: number, scheduler?: IScheduler): ReplaySubject; } export var ReplaySubject: ReplaySubjectStatic; interface ConnectableObservable extends Observable { connect(): IDisposable; refCount(): Observable; } interface ConnectableObservableStatic { new (): ConnectableObservable; } export var ConnectableObservable: ConnectableObservableStatic; export interface Observable { publish(): ConnectableObservable; publish(selector: (item: T) => Observable): ConnectableObservable; publishLast(): ConnectableObservable; publishLast(selector: (item: T) => Observable): ConnectableObservable; publishValue(initialValue: T): ConnectableObservable; publishValue(selector: (item: T) => TResult, initialValue: TResult): ConnectableObservable; replay(selector?: (source: Observable) => ReplaySubject, bufferSize?: number, window?: number, scheduler?: IScheduler): ReplaySubject; } }