31 lines
820 B
Text
31 lines
820 B
Text
[Exposed=*]
|
|
interface Subscriber {
|
|
undefined next(any value);
|
|
undefined error(any error);
|
|
undefined complete();
|
|
undefined addTeardown(VoidFunction teardown);
|
|
readonly attribute boolean active;
|
|
readonly attribute AbortSignal signal;
|
|
};
|
|
|
|
|
|
callback SubscribeCallback = undefined (Subscriber subscriber);
|
|
callback SubscriptionObserverCallback = undefined (any value);
|
|
|
|
dictionary SubscriptionObserver {
|
|
SubscriptionObserverCallback next;
|
|
SubscriptionObserverCallback error;
|
|
VoidFunction complete;
|
|
};
|
|
|
|
typedef (SubscriptionObserverCallback or Observer) ObserverUnion;
|
|
|
|
dictionary SubscribeOptions {
|
|
AbortSignal signal;
|
|
};
|
|
|
|
[Exposed=*]
|
|
interface Observable {
|
|
constructor(SubscribeCallback callback);
|
|
undefined subscribe(optional ObserverUnion observer = {}, optional SubscribeOptions options = {});
|
|
};
|