Skip to content

Commit 7916ef0

Browse files
style(typings): Updated for several types
1 parent 029206c commit 7916ef0

11 files changed

+182
-140
lines changed

src/Observable.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,4 +248,3 @@ export class Observable<T> implements CoreOperators<T> {
248248

249249
export type ObservableOrPromise<T> = Observable<T> | Promise<T>;
250250
export type ArrayOrIterator<T> = Iterator<T> | ArrayLike<T> | Array<T>;
251-
export type ObservableOrPromiseOrIterator<T> = ObservableOrPromise<T> | Iterator<T>;

src/operator-typings.ts

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* tslint:disable:class-name */ /* tslint:disable:no-unused-variable */ /* tslint:disable:max-line-length */
2-
import { Observable, ObservableOrPromise, ArrayOrIterator, ObservableOrPromiseOrIterator } from './Observable';
2+
import {Observable, ObservableOrPromise, ArrayOrIterator} from './Observable';
33
import {Scheduler} from './Scheduler';
44
import {Notification} from './Notification';
55
import {Subject} from './Subject';
@@ -31,13 +31,13 @@ export interface operator_proto_combineAll<T> {
3131
(): Observable<T[]>;
3232
}
3333
export interface operator_proto_combineLatest<T> {
34-
<T2>( second: ObservableOrPromiseOrIterator<T2>): Observable<[T, T2]>;
35-
<T2, TResult>( second: ObservableOrPromiseOrIterator<T2>, project: (v1: T, v2: T2) => TResult): Observable<TResult>;
36-
<T2, T3>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>): Observable<[T, T2, T3]>;
37-
<T2, T3, TResult>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, project: (v1: T, v2: T2, v3: T3) => TResult): Observable<TResult>;
38-
<T2, T3, T4>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, fourth: ObservableOrPromiseOrIterator<T4>): Observable<[T, T2, T3, T4]>;
39-
<T2, T3, T4, TResult>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, fourth: ObservableOrPromiseOrIterator<T4>, project: (v1: T, v2: T2, v3: T3, v4: T4) => TResult): Observable<TResult>;
40-
<A, R>( ...observables: Array<ObservableOrPromiseOrIterator<A> | ((...values: Array<T | A>) => R)>): Observable<R>;
34+
<T2>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>): Observable<[T, T2]>;
35+
<T2, TResult>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, project: (v1: T, v2: T2) => TResult): Observable<TResult>;
36+
<T2, T3>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>): Observable<[T, T2, T3]>;
37+
<T2, T3, TResult>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>, project: (v1: T, v2: T2, v3: T3) => TResult): Observable<TResult>;
38+
<T2, T3, T4>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>, fourth: ObservableOrPromise<T4> | ArrayOrIterator<T4>): Observable<[T, T2, T3, T4]>;
39+
<T2, T3, T4, TResult>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>, fourth: ObservableOrPromise<T4> | ArrayOrIterator<T4>, project: (v1: T, v2: T2, v3: T3, v4: T4) => TResult): Observable<TResult>;
40+
<A, R>( ...observables: Array<ObservableOrPromise<A> | ArrayOrIterator<A> | ((...values: Array<T | A>) => R)>): Observable<R>;
4141
(): Observable<[T]>;
4242
<TResult>( project: (v1: T) => TResult): Observable<TResult>;
4343
<A>( ...observables: Array<A>): Observable<(T | A)[]>;
@@ -134,10 +134,14 @@ export interface operator_proto_materialize<T> {
134134
(): Observable<Notification<T>>;
135135
}
136136
export interface operator_proto_merge<T> {
137-
<T2>( second: ObservableOrPromiseOrIterator<T2>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2>;
138-
<T2, T3>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2 | T3>;
139-
<T2, T3, T4>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, forth: ObservableOrPromiseOrIterator<T4>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2 | T3 | T4>;
140-
(...observables: (ObservableOrPromiseOrIterator<T> | Scheduler | number)[]): Observable<T>;
137+
<T2>( second: ObservableOrPromise<T2>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2>;
138+
<T2, T3>( second: ObservableOrPromise<T2>, third: ObservableOrPromise<T3>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2 | T3>;
139+
<T2, T3, T4>( second: ObservableOrPromise<T2>, third: ObservableOrPromise<T3>, forth: ObservableOrPromise<T4>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2 | T3 | T4>;
140+
(...observables: (ObservableOrPromise<T> | Scheduler | number)[]): Observable<T>;
141+
<T2>( second: ArrayOrIterator<T2>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2>;
142+
<T2, T3>( second: ArrayOrIterator<T2>, third: ArrayOrIterator<T3>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2 | T3>;
143+
<T2, T3, T4>( second: ArrayOrIterator<T2>, third: ArrayOrIterator<T3>, forth: ArrayOrIterator<T4>, concurrent?: number, scheduler?: Scheduler): Observable<T | T2 | T3 | T4>;
144+
(...observables: (ArrayOrIterator<T> | Scheduler | number)[]): Observable<T>;
141145
}
142146
export interface operator_proto_mergeAll<T> {
143147
<R>(concurrent: number): Observable<R>;
@@ -206,10 +210,10 @@ export interface operator_proto_switch<T> {
206210
(): Observable<T>;
207211
}
208212
export interface operator_proto_switchMap<T> {
209-
<TResult>( project: _ObservableMergeMapProjector<T, Observable<TResult>>): Observable<TResult>;
210-
<TOther, TResult>( project: _ObservableMergeMapProjector<T, Observable<TOther>>, resultSelector: _SwitchMapResultSelector<T, TOther, TResult>): Observable<TResult>;
211-
<TResult>( project: _IteratorMergeMapProjector<T, Observable<TResult>>): Observable<TResult>;
212-
<TOther, TResult>( project: _IteratorMergeMapProjector<T, Observable<TOther>>, resultSelector: _SwitchMapResultSelector<T, TOther, TResult>): Observable<TResult>;
213+
<TResult>( project: _ObservableMergeMapProjector<T, TResult>): Observable<TResult>;
214+
<TOther, TResult>( project: _ObservableMergeMapProjector<T, TOther>, resultSelector: _SwitchMapResultSelector<T, TOther, TResult>): Observable<TResult>;
215+
<TResult>( project: _IteratorMergeMapProjector<T, TResult>): Observable<TResult>;
216+
<TOther, TResult>( project: _IteratorMergeMapProjector<T, TOther>, resultSelector: _SwitchMapResultSelector<T, TOther, TResult>): Observable<TResult>;
213217
}
214218
export interface operator_proto_switchMapTo<T> {
215219
<R>(observable: Observable<R>): Observable<R>;
@@ -258,24 +262,24 @@ export interface operator_proto_windowWhen<T> {
258262
(closingSelector: () => Observable<any>): Observable<Observable<T>>;
259263
}
260264
export interface operator_proto_withLatestFrom<T> {
261-
<T2>( second: ObservableOrPromiseOrIterator<T2>): Observable<[T, T2]>;
262-
<T2, TResult>( second: ObservableOrPromiseOrIterator<T2>, project: (v1: T, v2: T2) => TResult): Observable<TResult>;
263-
<T2, T3>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>): Observable<[T, T2, T3]>;
264-
<T2, T3, TResult>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, project: (v1: T, v2: T2, v3: T3) => TResult): Observable<TResult>;
265-
<T2, T3, T4>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, fourth: ObservableOrPromiseOrIterator<T4>): Observable<[T, T2, T3, T4]>;
266-
<T2, T3, T4, TResult>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, fourth: ObservableOrPromiseOrIterator<T4>, project: (v1: T, v2: T2, v3: T3, v4: T4) => TResult): Observable<TResult>;
267-
<A, R>( ...observables: Array<ObservableOrPromiseOrIterator<A> | ((...values: Array<T | A>) => R)>): Observable<R>;
265+
<T2>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>): Observable<[T, T2]>;
266+
<T2, TResult>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, project: (v1: T, v2: T2) => TResult): Observable<TResult>;
267+
<T2, T3>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>): Observable<[T, T2, T3]>;
268+
<T2, T3, TResult>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>, project: (v1: T, v2: T2, v3: T3) => TResult): Observable<TResult>;
269+
<T2, T3, T4>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>, fourth: ObservableOrPromise<T4> | ArrayOrIterator<T4>): Observable<[T, T2, T3, T4]>;
270+
<T2, T3, T4, TResult>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>, fourth: ObservableOrPromise<T4> | ArrayOrIterator<T4>, project: (v1: T, v2: T2, v3: T3, v4: T4) => TResult): Observable<TResult>;
271+
<A, R>( ...observables: Array<ObservableOrPromise<A> | ArrayOrIterator<A> | ((...values: Array<T | A>) => R)>): Observable<R>;
268272
(): Observable<[T]>;
269273
<TResult>( project: (v1: T) => TResult): Observable<TResult>;
270-
<A>( ...observables: Array<A>): ObservableOrPromiseOrIterator<(T | A)[]>;
274+
<A>( ...observables: Array<A>): ObservableOrPromise<(T | A)[]> | ArrayOrIterator<(T | A)[]>;
271275
}
272276
export interface operator_proto_zip<T> {
273-
Proto<T, T2>( second: ObservableOrPromiseOrIterator<T2>): Observable<[T, T2]>;
274-
Proto<T, T2, TResult>( second: ObservableOrPromiseOrIterator<T2>, project: (v1: T, v2: T2) => TResult): Observable<TResult>;
275-
Proto<T, T2, T3>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>): Observable<[T, T2, T3]>;
276-
Proto<T, T2, T3, TResult>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, project: (v1: T, v2: T2, v3: T3) => TResult): Observable<TResult>;
277-
Proto<T, T2, T3, T4>( second: ObservableOrPromiseOrIterator<T2>, third: ObservableOrPromiseOrIterator<T3>, fourth: ObservableOrPromiseOrIterator<T4>): Observable<[T, T2, T3, T4]>;
278-
Proto<T, A, R>( ...observables: Array<ObservableOrPromiseOrIterator<A> | ((...values: Array<T | A>) => R)>): Observable<R>;
277+
Proto<T, T2>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>): Observable<[T, T2]>;
278+
Proto<T, T2, TResult>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, project: (v1: T, v2: T2) => TResult): Observable<TResult>;
279+
Proto<T, T2, T3>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>): Observable<[T, T2, T3]>;
280+
Proto<T, T2, T3, TResult>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>, project: (v1: T, v2: T2, v3: T3) => TResult): Observable<TResult>;
281+
Proto<T, T2, T3, T4>( second: ObservableOrPromise<T2> | ArrayOrIterator<T2>, third: ObservableOrPromise<T3> | ArrayOrIterator<T3>, fourth: ObservableOrPromise<T4> | ArrayOrIterator<T4>): Observable<[T, T2, T3, T4]>;
282+
Proto<T, A, R>( ...observables: Array<ObservableOrPromise<A> | ArrayOrIterator<A> | ((...values: Array<T | A>) => R)>): Observable<R>;
279283
Proto<T>(): Observable<[T]>;
280284
}
281285
export interface operator_proto_zipAll<T> {

src/operators/combineLatest-static.ts

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Observable, ObservableOrPromiseOrIterator} from '../Observable';
1+
import {Observable, ObservableOrPromise, ArrayOrIterator} from '../Observable';
22
import {ArrayObservable} from '../observables/ArrayObservable';
33
import {CombineLatestOperator} from './combineLatest-support';
44
import {Scheduler} from '../Scheduler';
@@ -15,42 +15,42 @@ import {isScheduler} from '../util/isScheduler';
1515
* the most recent values from each observable.
1616
*/
1717
export function combineLatest<T>(
18-
first: ObservableOrPromiseOrIterator<T>,
18+
first: ObservableOrPromise<T> | ArrayOrIterator<T>,
1919
scheduler?: Scheduler): Observable<[T]>;
2020
export function combineLatest<T, TResult>(
21-
first: ObservableOrPromiseOrIterator<T>,
21+
first: ObservableOrPromise<T> | ArrayOrIterator<T>,
2222
project: (v1: T) => TResult,
2323
scheduler?: Scheduler): Observable<TResult>;
2424
export function combineLatest<T, T2>(
25-
first: ObservableOrPromiseOrIterator<T>,
26-
second: ObservableOrPromiseOrIterator<T2>,
25+
first: ObservableOrPromise<T> | ArrayOrIterator<T>,
26+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
2727
scheduler?: Scheduler): Observable<[T, T2]>;
2828
export function combineLatest<T, T2, TResult>(
29-
first: ObservableOrPromiseOrIterator<T>,
30-
second: ObservableOrPromiseOrIterator<T2>,
29+
first: ObservableOrPromise<T> | ArrayOrIterator<T>,
30+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
3131
project: (v1: T, v2: T2) => TResult,
3232
scheduler?: Scheduler): Observable<TResult>;
3333
export function combineLatest<T, T2, T3>(
34-
first: ObservableOrPromiseOrIterator<T>,
35-
second: ObservableOrPromiseOrIterator<T2>,
36-
third: ObservableOrPromiseOrIterator<T3>,
34+
first: ObservableOrPromise<T> | ArrayOrIterator<T>,
35+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
36+
third: ObservableOrPromise<T3> | ArrayOrIterator<T3>,
3737
scheduler?: Scheduler): Observable<[T, T2, T3]>;
3838
export function combineLatest<T, T2, T3, TResult>(
39-
first: ObservableOrPromiseOrIterator<T>,
40-
second: ObservableOrPromiseOrIterator<T2>,
41-
third: ObservableOrPromiseOrIterator<T3>,
39+
first: ObservableOrPromise<T> | ArrayOrIterator<T>,
40+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
41+
third: ObservableOrPromise<T3> | ArrayOrIterator<T3>,
4242
project: (v1: T, v2: T2, v3: T3) => TResult,
4343
scheduler?: Scheduler): Observable<TResult>;
4444
export function combineLatest<T, T2, T3, T4>(
45-
first: ObservableOrPromiseOrIterator<T>,
46-
second: ObservableOrPromiseOrIterator<T2>,
47-
third: ObservableOrPromiseOrIterator<T3>,
48-
fourth: ObservableOrPromiseOrIterator<T4>,
45+
first: ObservableOrPromise<T> | ArrayOrIterator<T>,
46+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
47+
third: ObservableOrPromise<T3> | ArrayOrIterator<T3>,
48+
fourth: ObservableOrPromise<T4> | ArrayOrIterator<T4>,
4949
scheduler?: Scheduler): Observable<[T, T2, T3, T4]>;
5050
export function combineLatest<T>(
51-
...observables: Array<ObservableOrPromiseOrIterator<T> | ((...values: Array<T>) => T) | Scheduler>): Observable<T>;
51+
...observables: Array<ObservableOrPromise<T> | ArrayOrIterator<T> | ((...values: Array<T>) => T) | Scheduler>): Observable<T>;
5252
export function combineLatest<T, R>(
53-
...observables: Array<ObservableOrPromiseOrIterator<T> | ((...values: Array<T>) => R) | Scheduler>): Observable<R>;
53+
...observables: Array<ObservableOrPromise<T> | ArrayOrIterator<T> | ((...values: Array<T>) => R) | Scheduler>): Observable<R>;
5454
export function combineLatest(
5555
...observables: Array<any>): Observable<any> {
5656
let project, scheduler;

src/operators/combineLatest.ts

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Observable, ObservableOrPromiseOrIterator} from '../Observable';
1+
import {Observable, ObservableOrPromise, ArrayOrIterator} from '../Observable';
22
import {ArrayObservable} from '../observables/ArrayObservable';
33
import {CombineLatestOperator} from './combineLatest-support';
44

@@ -13,35 +13,35 @@ import {CombineLatestOperator} from './combineLatest-support';
1313
* the most recent values from each observable.
1414
*/
1515
export function combineLatest<T, T2>(
16-
second: ObservableOrPromiseOrIterator<T2>): Observable<[T, T2]>;
16+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>): Observable<[T, T2]>;
1717
export function combineLatest<T, T2, TResult>(
18-
second: ObservableOrPromiseOrIterator<T2>,
18+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
1919
project: (v1: T, v2: T2) => TResult): Observable<TResult>;
2020
export function combineLatest<T, T2, T3>(
21-
second: ObservableOrPromiseOrIterator<T2>,
22-
third: ObservableOrPromiseOrIterator<T3>): Observable<[T, T2, T3]>;
21+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
22+
third: ObservableOrPromise<T3> | ArrayOrIterator<T3>): Observable<[T, T2, T3]>;
2323
export function combineLatest<T, T2, T3, TResult>(
24-
second: ObservableOrPromiseOrIterator<T2>,
25-
third: ObservableOrPromiseOrIterator<T3>,
24+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
25+
third: ObservableOrPromise<T3> | ArrayOrIterator<T3>,
2626
project: (v1: T, v2: T2, v3: T3) => TResult): Observable<TResult>;
2727
export function combineLatest<T, T2, T3, T4>(
28-
second: ObservableOrPromiseOrIterator<T2>,
29-
third: ObservableOrPromiseOrIterator<T3>,
30-
fourth: ObservableOrPromiseOrIterator<T4>): Observable<[T, T2, T3, T4]>;
28+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
29+
third: ObservableOrPromise<T3> | ArrayOrIterator<T3>,
30+
fourth: ObservableOrPromise<T4> | ArrayOrIterator<T4>): Observable<[T, T2, T3, T4]>;
3131
export function combineLatest<T, T2, T3, T4, TResult>(
32-
second: ObservableOrPromiseOrIterator<T2>,
33-
third: ObservableOrPromiseOrIterator<T3>,
34-
fourth: ObservableOrPromiseOrIterator<T4>,
32+
second: ObservableOrPromise<T2> | ArrayOrIterator<T2>,
33+
third: ObservableOrPromise<T3> | ArrayOrIterator<T3>,
34+
fourth: ObservableOrPromise<T4> | ArrayOrIterator<T4>,
3535
project: (v1: T, v2: T2, v3: T3, v4: T4) => TResult): Observable<TResult>;
3636
export function combineLatest<T, A, R>(
37-
...observables: Array<ObservableOrPromiseOrIterator<A> | ((...values: Array<T | A>) => R)>): Observable<R>;
37+
...observables: Array<ObservableOrPromise<A> | ArrayOrIterator<A> | ((...values: Array<T | A>) => R)>): Observable<R>;
3838
export function combineLatest<T>(): Observable<[T]>;
3939
export function combineLatest<T, TResult>(
4040
project: (v1: T) => TResult): Observable<TResult>;
4141
export function combineLatest<T, A>(
4242
...observables: Array<A>): Observable<(T | A)[]>;
4343
export function combineLatest(
44-
...observables: Array<ObservableOrPromiseOrIterator<any> | ((...values: Array<any>) => any)>): Observable<any> {
44+
...observables: Array<ObservableOrPromise<any> | ArrayOrIterator<any> | ((...values: Array<any>) => any)>): Observable<any> {
4545
observables.unshift(this);
4646
let project;
4747
if (typeof observables[observables.length - 1] === 'function') {

0 commit comments

Comments
 (0)