UNPKG

6.32 kBTypeScriptView Raw
1/// <reference types="rx-lite" />
2
3declare namespace Rx {
4 interface ObservableStatic {
5 /**
6 * Invokes the asynchronous function, surfacing the result through an observable sequence.
7 * @param functionAsync Asynchronous function which returns a Promise to run.
8 * @returns An observable sequence exposing the function's result value, or an exception.
9 */
10 startAsync<T>(functionAsync: () => IPromise<T>): Observable<T>;
11
12 start<T>(func: () => T, context?: any, scheduler?: IScheduler): Observable<T>;
13
14 toAsync<TResult>(func: () => TResult, context?: any, scheduler?: IScheduler): () => Observable<TResult>;
15 toAsync<T1, TResult>(
16 func: (arg1: T1) => TResult,
17 context?: any,
18 scheduler?: IScheduler,
19 ): (arg1: T1) => Observable<TResult>;
20 toAsync<T1, TResult>(
21 func: (arg1?: T1) => TResult,
22 context?: any,
23 scheduler?: IScheduler,
24 ): (arg1?: T1) => Observable<TResult>;
25 toAsync<T1, TResult>(
26 func: (...args: T1[]) => TResult,
27 context?: any,
28 scheduler?: IScheduler,
29 ): (...args: T1[]) => Observable<TResult>;
30 toAsync<T1, T2, TResult>(
31 func: (arg1: T1, arg2: T2) => TResult,
32 context?: any,
33 scheduler?: IScheduler,
34 ): (arg1: T1, arg2: T2) => Observable<TResult>;
35 toAsync<T1, T2, TResult>(
36 func: (arg1: T1, arg2?: T2) => TResult,
37 context?: any,
38 scheduler?: IScheduler,
39 ): (arg1: T1, arg2?: T2) => Observable<TResult>;
40 toAsync<T1, T2, TResult>(
41 func: (arg1?: T1, arg2?: T2) => TResult,
42 context?: any,
43 scheduler?: IScheduler,
44 ): (arg1?: T1, arg2?: T2) => Observable<TResult>;
45 toAsync<T1, T2, TResult>(
46 func: (arg1: T1, ...args: T2[]) => TResult,
47 context?: any,
48 scheduler?: IScheduler,
49 ): (arg1: T1, ...args: T2[]) => Observable<TResult>;
50 toAsync<T1, T2, TResult>(
51 func: (arg1?: T1, ...args: T2[]) => TResult,
52 context?: any,
53 scheduler?: IScheduler,
54 ): (arg1?: T1, ...args: T2[]) => Observable<TResult>;
55 toAsync<T1, T2, T3, TResult>(
56 func: (arg1: T1, arg2: T2, arg3: T3) => TResult,
57 context?: any,
58 scheduler?: IScheduler,
59 ): (arg1: T1, arg2: T2, arg3: T3) => Observable<TResult>;
60 toAsync<T1, T2, T3, TResult>(
61 func: (arg1: T1, arg2: T2, arg3?: T3) => TResult,
62 context?: any,
63 scheduler?: IScheduler,
64 ): (arg1: T1, arg2: T2, arg3?: T3) => Observable<TResult>;
65 toAsync<T1, T2, T3, TResult>(
66 func: (arg1: T1, arg2?: T2, arg3?: T3) => TResult,
67 context?: any,
68 scheduler?: IScheduler,
69 ): (arg1: T1, arg2?: T2, arg3?: T3) => Observable<TResult>;
70 toAsync<T1, T2, T3, TResult>(
71 func: (arg1?: T1, arg2?: T2, arg3?: T3) => TResult,
72 context?: any,
73 scheduler?: IScheduler,
74 ): (arg1?: T1, arg2?: T2, arg3?: T3) => Observable<TResult>;
75 toAsync<T1, T2, T3, TResult>(
76 func: (arg1: T1, arg2: T2, ...args: T3[]) => TResult,
77 context?: any,
78 scheduler?: IScheduler,
79 ): (arg1: T1, arg2: T2, ...args: T3[]) => Observable<TResult>;
80 toAsync<T1, T2, T3, TResult>(
81 func: (arg1: T1, arg2?: T2, ...args: T3[]) => TResult,
82 context?: any,
83 scheduler?: IScheduler,
84 ): (arg1: T1, arg2?: T2, ...args: T3[]) => Observable<TResult>;
85 toAsync<T1, T2, T3, TResult>(
86 func: (arg1?: T1, arg2?: T2, ...args: T3[]) => TResult,
87 context?: any,
88 scheduler?: IScheduler,
89 ): (arg1?: T1, arg2?: T2, ...args: T3[]) => Observable<TResult>;
90 toAsync<T1, T2, T3, T4, TResult>(
91 func: (arg1: T1, arg2: T2, arg3: T3, arg4: T4) => TResult,
92 context?: any,
93 scheduler?: IScheduler,
94 ): (arg1: T1, arg2: T2, arg3: T3, arg4: T4) => Observable<TResult>;
95 toAsync<T1, T2, T3, T4, TResult>(
96 func: (arg1: T1, arg2: T2, arg3: T3, arg4?: T4) => TResult,
97 context?: any,
98 scheduler?: IScheduler,
99 ): (arg1: T1, arg2: T2, arg3: T3, arg4?: T4) => Observable<TResult>;
100 toAsync<T1, T2, T3, T4, TResult>(
101 func: (arg1: T1, arg2: T2, arg3?: T3, arg4?: T4) => TResult,
102 context?: any,
103 scheduler?: IScheduler,
104 ): (arg1: T1, arg2: T2, arg3?: T3, arg4?: T4) => Observable<TResult>;
105 toAsync<T1, T2, T3, T4, TResult>(
106 func: (arg1: T1, arg2?: T2, arg3?: T3, arg4?: T4) => TResult,
107 context?: any,
108 scheduler?: IScheduler,
109 ): (arg1: T1, arg2?: T2, arg3?: T3, arg4?: T4) => Observable<TResult>;
110 toAsync<T1, T2, T3, T4, TResult>(
111 func: (arg1?: T1, arg2?: T2, arg3?: T3, arg4?: T4) => TResult,
112 context?: any,
113 scheduler?: IScheduler,
114 ): (arg1?: T1, arg2?: T2, arg3?: T3, arg4?: T4) => Observable<TResult>;
115 toAsync<T1, T2, T3, T4, TResult>(
116 func: (arg1: T1, arg2: T2, arg3: T3, ...args: T4[]) => TResult,
117 context?: any,
118 scheduler?: IScheduler,
119 ): (arg1: T1, arg2: T2, arg3: T3, ...args: T4[]) => Observable<TResult>;
120 toAsync<T1, T2, T3, T4, TResult>(
121 func: (arg1: T1, arg2: T2, arg3?: T3, ...args: T4[]) => TResult,
122 context?: any,
123 scheduler?: IScheduler,
124 ): (arg1: T1, arg2: T2, arg3?: T3, ...args: T4[]) => Observable<TResult>;
125 toAsync<T1, T2, T3, T4, TResult>(
126 func: (arg1: T1, arg2?: T2, arg3?: T3, ...args: T4[]) => TResult,
127 context?: any,
128 scheduler?: IScheduler,
129 ): (arg1: T1, arg2?: T2, arg3?: T3, ...args: T4[]) => Observable<TResult>;
130 toAsync<T1, T2, T3, T4, TResult>(
131 func: (arg1?: T1, arg2?: T2, arg3?: T3, ...args: T4[]) => TResult,
132 context?: any,
133 scheduler?: IScheduler,
134 ): (arg1?: T1, arg2?: T2, arg3?: T3, ...args: T4[]) => Observable<TResult>;
135 }
136}
137
138declare module "rx-lite-async" {
139 export = Rx;
140}