From 1094494b18d329b3d3019af548fb110834d904a3 Mon Sep 17 00:00:00 2001 From: Igor Oleinikov Date: Wed, 19 Mar 2014 15:52:52 +0400 Subject: [PATCH] Fixed `publishValue` and `replay` method signatures; Added `shareValue` and `replayWhileObserved` methods. --- rx.js/rx.binding.d.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/rx.js/rx.binding.d.ts b/rx.js/rx.binding.d.ts index b75bc55f4..9fd94191a 100644 --- a/rx.js/rx.binding.d.ts +++ b/rx.js/rx.binding.d.ts @@ -54,8 +54,20 @@ declare module Rx { publishLast(): ConnectableObservable; publishLast(selector: (source: ConnectableObservable) => Observable): Observable; publishValue(initialValue: T): ConnectableObservable; - publishValue(selector: (source: ConnectableObservable) => Observable, initialValue: TResult): Observable; - - replay(selector?: (source: Observable) => ReplaySubject, bufferSize?: number, window?: number, scheduler?: IScheduler): ReplaySubject; + publishValue(selector: (source: ConnectableObservable) => Observable, initialValue: T): Observable; + /** + * Returns an observable sequence that shares a single subscription to the underlying sequence and starts with an initialValue. + * This operator is a specialization of publishValue which creates a subscription when the number of observers goes from zero to one, then shares that subscription with all subsequent observers until the number of observers returns to zero, at which point the subscription is disposed. + * + * @example + * var res = source.shareValue(42); + * + * @param initialValue Initial value received by observers upon subscription. + * @returns An observable sequence that contains the elements of a sequence produced by multicasting the source sequence. + */ + shareValue(initialValue: T): Observable; + replay(selector?: boolean, bufferSize?: number, window?: number, scheduler?: IScheduler): ConnectableObservable; // hack to catch first omitted parameter + replay(selector: (source: ConnectableObservable) => Observable, bufferSize?: number, window?: number, scheduler?: IScheduler): Observable; + replayWhileObserved(bufferSize?: number, window?: number, scheduler?: IScheduler): Observable; } }