1 | import { Observable } from './Observable';
|
2 | import { Subscription } from './Subscription';
|
3 |
|
4 |
|
5 |
|
6 |
|
7 | declare global {
|
8 | interface SymbolConstructor {
|
9 | readonly observable: symbol;
|
10 | }
|
11 | }
|
12 |
|
13 | export interface UnaryFunction<T, R> {
|
14 | (source: T): R;
|
15 | }
|
16 | export interface OperatorFunction<T, R> extends UnaryFunction<Observable<T>, Observable<R>> {
|
17 | }
|
18 | export declare type FactoryOrValue<T> = T | (() => T);
|
19 | export interface MonoTypeOperatorFunction<T> extends OperatorFunction<T, T> {
|
20 | }
|
21 | export interface Timestamp<T> {
|
22 | value: T;
|
23 | timestamp: number;
|
24 | }
|
25 | export interface TimeInterval<T> {
|
26 | value: T;
|
27 | interval: number;
|
28 | }
|
29 | /** SUBSCRIPTION INTERFACES */
|
30 | export interface Unsubscribable {
|
31 | unsubscribe(): void;
|
32 | }
|
33 | export declare type TeardownLogic = Unsubscribable | Function | void;
|
34 | export interface SubscriptionLike extends Unsubscribable {
|
35 | unsubscribe(): void;
|
36 | readonly closed: boolean;
|
37 | }
|
38 | export declare type SubscribableOrPromise<T> = Subscribable<T> | Subscribable<never> | PromiseLike<T> | InteropObservable<T>;
|
39 | /** OBSERVABLE INTERFACES */
|
40 | export interface Subscribable<T> {
|
41 | subscribe(observer?: PartialObserver<T>): Unsubscribable;
|
42 | /** @deprecated Use an observer instead of a complete callback */
|
43 | subscribe(next: null | undefined, error: null | undefined, complete: () => void): Unsubscribable;
|
44 | /** @deprecated Use an observer instead of an error callback */
|
45 | subscribe(next: null | undefined, error: (error: any) => void, complete?: () => void): Unsubscribable;
|
46 | /** @deprecated Use an observer instead of a complete callback */
|
47 | subscribe(next: (value: T) => void, error: null | undefined, complete: () => void): Unsubscribable;
|
48 | subscribe(next?: (value: T) => void, error?: (error: any) => void, complete?: () => void): Unsubscribable;
|
49 | }
|
50 | export declare type ObservableInput<T> = SubscribableOrPromise<T> | ArrayLike<T> | Iterable<T>;
|
51 | /** @deprecated use {@link InteropObservable } */
|
52 | export declare type ObservableLike<T> = InteropObservable<T>;
|
53 | export declare type InteropObservable<T> = {
|
54 | [Symbol.observable]: () => Subscribable<T>;
|
55 | };
|
56 |
|
57 | export interface NextObserver<T> {
|
58 | closed?: boolean;
|
59 | next: (value: T) => void;
|
60 | error?: (err: any) => void;
|
61 | complete?: () => void;
|
62 | }
|
63 | export interface ErrorObserver<T> {
|
64 | closed?: boolean;
|
65 | next?: (value: T) => void;
|
66 | error: (err: any) => void;
|
67 | complete?: () => void;
|
68 | }
|
69 | export interface CompletionObserver<T> {
|
70 | closed?: boolean;
|
71 | next?: (value: T) => void;
|
72 | error?: (err: any) => void;
|
73 | complete: () => void;
|
74 | }
|
75 | export declare type PartialObserver<T> = NextObserver<T> | ErrorObserver<T> | CompletionObserver<T>;
|
76 | export interface Observer<T> {
|
77 | closed?: boolean;
|
78 | next: (value: T) => void;
|
79 | error: (err: any) => void;
|
80 | complete: () => void;
|
81 | }
|
82 |
|
83 | export interface SchedulerLike {
|
84 | now(): number;
|
85 | schedule<T>(work: (this: SchedulerAction<T>, state?: T) => void, delay?: number, state?: T): Subscription;
|
86 | }
|
87 | export interface SchedulerAction<T> extends Subscription {
|
88 | schedule(state?: T, delay?: number): Subscription;
|
89 | }
|
90 | export declare type ObservedValueOf<O> = O extends ObservableInput<infer T> ? T : never;
|
91 | export declare type ObservedValuesFromArray<X> = X extends Array<ObservableInput<infer T>> ? T : never;
|
92 |
|
\ | No newline at end of file |