Skip to content

Commit 91a349a

Browse files
style(typings): added enhanced typings for bindCallback.create
1 parent e4c7b52 commit 91a349a

File tree

1 file changed

+67
-1
lines changed

1 file changed

+67
-1
lines changed

src/observable/bindCallback.ts

Lines changed: 67 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,75 @@ import {AsyncSubject} from '../subject/AsyncSubject';
99
export class BoundCallbackObservable<T> extends Observable<T> {
1010
subject: AsyncSubject<T>;
1111

12+
static create<TResult>(callbackFunc: (callback: (result: TResult) => any) => any ): () => Observable<TResult>;
13+
static create<T, TResult>(callbackFunc: (v1: T, callback: (result: TResult) => any) => any ): (v1: T) => Observable<TResult>;
14+
static create<T, T2, TResult>(callbackFunc: (v1: T, v2: T2, callback: (result: TResult) => any) => any ): (v1: T, v2: T2) => Observable<TResult>;
15+
static create<T, T2, T3, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3,
16+
callback: (result: TResult) => any) => any ): (v1: T, v2: T2, v3: T3) => Observable<TResult>;
17+
static create<T, T2, T3, T4, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4,
18+
callback: (result: TResult) => any) => any ): (v1: T, v2: T2, v3: T3, v4: T4) => Observable<TResult>;
19+
static create<T, T2, T3, T4, T5, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, v5: T5,
20+
callback: (result: TResult) => any) => any ): (v1: T, v2: T2, v3: T3, v4: T4, v5: T5) => Observable<TResult>;
21+
static create<T, T2, T3, T4, T5, T6, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6,
22+
callback: (result: TResult) => any) => any ): (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => Observable<TResult>;
23+
static create<T, TResult>(callbackFunc: (v1: T, callback: (result: TResult) => any) => any,
24+
selector: void,
25+
scheduler: Scheduler): (v1: T) => Observable<TResult>;
26+
static create<T, T2, TResult>(callbackFunc: (v1: T, v2: T2, callback: (result: TResult) => any) => any,
27+
selector: void,
28+
scheduler: Scheduler): (v1: T, v2: T2) => Observable<TResult>;
29+
static create<T, T2, T3, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, callback: (result: TResult) => any) => any,
30+
selector: void,
31+
scheduler: Scheduler): (v1: T, v2: T2, v3: T3) => Observable<TResult>;
32+
static create<T, T2, T3, T4, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, callback: (result: TResult) => any) => any,
33+
selector: void,
34+
scheduler: Scheduler): (v1: T, v2: T2, v3: T3, v4: T4) => Observable<TResult>;
35+
static create<T, T2, T3, T4, T5, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, callback: (result: TResult) => any) => any,
36+
selector: void,
37+
scheduler: Scheduler): (v1: T, v2: T2, v3: T3, v4: T4, v5: T5) => Observable<TResult>;
38+
static create<T, T2, T3, T4, T5, T6, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6,
39+
callback: (result: TResult) => any) => any,
40+
selector: void,
41+
scheduler: Scheduler): (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => Observable<TResult>;
42+
static create<T>(callbackFunc: (v1: T, callback: (...args: any[]) => any) => any): (v1: T) => Observable<any[]>;
43+
static create<T>(callbackFunc: (v1: T, callback: (...args: any[]) => any) => any): (v1: T) => Observable<any[]>;
44+
static create<T, T2>(callbackFunc: (v1: T, v2: T2, callback: (...args: any[]) => any) => any): (v1: T, v2: T2) => Observable<any[]>;
45+
static create<T, T2, T3>(callbackFunc: (v1: T, v2: T2, v3: T3,
46+
callback: (...args: any[]) => any) => any): (v1: T, v2: T2, v3: T3) => Observable<any[]>;
47+
static create<T, T2, T3, T4>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4,
48+
callback: (...args: any[]) => any) => any): (v1: T, v2: T2, v3: T3, v4: T4) => Observable<any[]>;
49+
static create<T, T2, T3, T4, T5>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, v5: T5,
50+
callback: (...args: any[]) => any) => any): (v1: T, v2: T2, v3: T3, v4: T4, v5: T5) => Observable<any[]>;
51+
static create<T, T2, T3, T4, T5, T6>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6,
52+
callback: (...args: any[]) => any) => any): (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => Observable<any[]>;
53+
static create<TResult>(callbackFunc: (callback: (...args: any[]) => any) => any,
54+
selector: (...args: any[]) => TResult,
55+
scheduler?: Scheduler): () => Observable<TResult>;
56+
static create<T, TResult>(callbackFunc: (v1: T, callback: (...args: any[]) => any) => any,
57+
selector: (...args: any[]) => TResult,
58+
scheduler?: Scheduler): (v1: T) => Observable<TResult>;
59+
static create<T, T2, TResult>(callbackFunc: (v1: T, v2: T2, callback: (...args: any[]) => any) => any,
60+
selector: (...args: any[]) => TResult,
61+
scheduler?: Scheduler): (v1: T, v2: T2) => Observable<TResult>;
62+
static create<T, T2, T3, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, callback: (...args: any[]) => any) => any,
63+
selector: (...args: any[]) => TResult,
64+
scheduler?: Scheduler): (v1: T, v2: T2, v3: T3) => Observable<TResult>;
65+
static create<T, T2, T3, T4, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, callback: (...args: any[]) => any) => any,
66+
selector: (...args: any[]) => TResult,
67+
scheduler?: Scheduler): (v1: T, v2: T2, v3: T3, v4: T4) => Observable<TResult>;
68+
static create<T, T2, T3, T4, T5, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, callback: (...args: any[]) => any) => any,
69+
selector: (...args: any[]) => TResult,
70+
scheduler?: Scheduler): (v1: T, v2: T2, v3: T3, v4: T4, v5: T5) => Observable<TResult>;
71+
static create<T, T2, T3, T4, T5, T6, TResult>(callbackFunc: (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6,
72+
callback: (...args: any[]) => any) => any,
73+
selector: (...args: any[]) => TResult,
74+
scheduler?: Scheduler): (v1: T, v2: T2, v3: T3, v4: T4, v5: T5, v6: T6) => Observable<TResult>;
75+
static create<T>(callbackFunc: Function): (...args: any[]) => Observable<T>;
76+
static create<T>(callbackFunc: Function, selector: void, scheduler: Scheduler): (...args: any[]) => Observable<T>;
77+
static create<T>(callbackFunc: Function, selector?: (...args: any[]) => T, scheduler?: Scheduler): (...args: any[]) => Observable<T>;
1278
static create<T>(callbackFunc: Function,
1379
selector: Function = undefined,
14-
scheduler?: Scheduler): Function {
80+
scheduler?: Scheduler): (...args: any[]) => Observable<T> {
1581
return (...args): Observable<T> => {
1682
return new BoundCallbackObservable(callbackFunc, selector, args, scheduler);
1783
};

0 commit comments

Comments
 (0)