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