1 | // Type definitions for rx-lite-backpressure 4.0
|
2 | // Project: https://github.com/Reactive-Extensions/RxJS
|
3 | // Definitions by: Igor Oleinikov <https://github.com/Igorbek>
|
4 | // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
5 |
|
6 | /// <reference types="rx-lite" />
|
7 |
|
8 | declare namespace Rx {
|
9 | interface Observable<T> {
|
10 | /**
|
11 | * Pauses the underlying observable sequence based upon the observable sequence which yields true/false.
|
12 | * @example
|
13 | * var pauser = new Rx.Subject();
|
14 | * var source = Rx.Observable.interval(100).pausable(pauser);
|
15 | * @param pauser The observable sequence used to pause the underlying sequence.
|
16 | * @returns The observable sequence which is paused based upon the pauser.
|
17 | */
|
18 | pausable(pauser?: Observable<boolean>): PausableObservable<T>;
|
19 |
|
20 | /**
|
21 | * Pauses the underlying observable sequence based upon the observable sequence which yields true/false,
|
22 | * and yields the values that were buffered while paused.
|
23 | * @example
|
24 | * var pauser = new Rx.Subject();
|
25 | * var source = Rx.Observable.interval(100).pausableBuffered(pauser);
|
26 | * @param pauser The observable sequence used to pause the underlying sequence.
|
27 | * @returns The observable sequence which is paused based upon the pauser.
|
28 | */
|
29 | pausableBuffered(pauser?: Observable<boolean>): PausableObservable<T>;
|
30 |
|
31 | /**
|
32 | * Attaches a controller to the observable sequence with the ability to queue.
|
33 | * @example
|
34 | * var source = Rx.Observable.interval(100).controlled();
|
35 | * source.request(3); // Reads 3 values
|
36 | */
|
37 | controlled(enableQueue?: boolean): ControlledObservable<T>;
|
38 | }
|
39 |
|
40 | interface ControlledObservable<T> extends Observable<T> {
|
41 | request(numberOfItems?: number): IDisposable;
|
42 | }
|
43 |
|
44 | interface PausableObservable<T> extends Observable<T> {
|
45 | pause(): void;
|
46 | resume(): void;
|
47 | }
|
48 | }
|
49 |
|
50 | declare module "rx-lite-backpressure" {
|
51 | export = Rx;
|
52 | }
|