106 lines
3.9 KiB
Text
106 lines
3.9 KiB
Text
// GENERATED CONTENT - DO NOT EDIT
|
|
// Content was automatically extracted by Reffy into webref
|
|
// (https://github.com/w3c/webref)
|
|
// Source: Observable (https://wicg.github.io/observable/)
|
|
|
|
[Exposed=*]
|
|
interface Subscriber {
|
|
undefined next(any value);
|
|
undefined error(any error);
|
|
undefined complete();
|
|
undefined addTeardown(VoidFunction teardown);
|
|
|
|
// True after the Subscriber is created, up until either
|
|
// complete()/error() are invoked, or the subscriber unsubscribes. Inside
|
|
// complete()/error(), this attribute is true.
|
|
readonly attribute boolean active;
|
|
|
|
readonly attribute AbortSignal signal;
|
|
};
|
|
|
|
// SubscribeCallback is where the Observable "creator's" code lives. It's
|
|
// called when subscribe() is called, to set up a new subscription.
|
|
callback SubscribeCallback = undefined (Subscriber subscriber);
|
|
callback ObservableSubscriptionCallback = undefined (any value);
|
|
|
|
dictionary SubscriptionObserver {
|
|
ObservableSubscriptionCallback next;
|
|
ObservableSubscriptionCallback error;
|
|
VoidFunction complete;
|
|
};
|
|
|
|
callback ObservableInspectorAbortHandler = undefined (any value);
|
|
|
|
dictionary ObservableInspector {
|
|
ObservableSubscriptionCallback next;
|
|
ObservableSubscriptionCallback error;
|
|
VoidFunction complete;
|
|
|
|
VoidFunction subscribe;
|
|
ObservableInspectorAbortHandler abort;
|
|
};
|
|
|
|
typedef (ObservableSubscriptionCallback or SubscriptionObserver) ObserverUnion;
|
|
typedef (ObservableSubscriptionCallback or ObservableInspector) ObservableInspectorUnion;
|
|
|
|
dictionary SubscribeOptions {
|
|
AbortSignal signal;
|
|
};
|
|
|
|
callback Predicate = boolean (any value, unsigned long long index);
|
|
callback Reducer = any (any accumulator, any currentValue, unsigned long long index);
|
|
callback Mapper = any (any value, unsigned long long index);
|
|
// Differs from Mapper only in return type, since this callback is exclusively
|
|
// used to visit each element in a sequence, not transform it.
|
|
callback Visitor = undefined (any value, unsigned long long index);
|
|
|
|
// This callback returns an `any` that must convert into an `Observable`, via
|
|
// the `Observable` conversion semantics.
|
|
callback CatchCallback = any (any value);
|
|
|
|
[Exposed=*]
|
|
interface Observable {
|
|
constructor(SubscribeCallback callback);
|
|
undefined subscribe(optional ObserverUnion observer = {}, optional SubscribeOptions options = {});
|
|
|
|
// Constructs a native Observable from value if it's any of the following:
|
|
// - Observable
|
|
// - AsyncIterable
|
|
// - Iterable
|
|
// - Promise
|
|
static Observable from(any value);
|
|
|
|
// Observable-returning operators. See "Operators" section in the spec.
|
|
//
|
|
// takeUntil() can consume promises, iterables, async iterables, and other
|
|
// observables.
|
|
Observable takeUntil(any value);
|
|
Observable map(Mapper mapper);
|
|
Observable filter(Predicate predicate);
|
|
Observable take(unsigned long long amount);
|
|
Observable drop(unsigned long long amount);
|
|
Observable flatMap(Mapper mapper);
|
|
Observable switchMap(Mapper mapper);
|
|
Observable inspect(optional ObservableInspectorUnion inspectorUnion = {});
|
|
Observable catch(CatchCallback callback);
|
|
Observable finally(VoidFunction callback);
|
|
|
|
// Promise-returning operators.
|
|
Promise<sequence<any>> toArray(optional SubscribeOptions options = {});
|
|
Promise<undefined> forEach(Visitor callback, optional SubscribeOptions options = {});
|
|
Promise<boolean> every(Predicate predicate, optional SubscribeOptions options = {});
|
|
Promise<any> first(optional SubscribeOptions options = {});
|
|
Promise<any> last(optional SubscribeOptions options = {});
|
|
Promise<any> find(Predicate predicate, optional SubscribeOptions options = {});
|
|
Promise<boolean> some(Predicate predicate, optional SubscribeOptions options = {});
|
|
Promise<any> reduce(Reducer reducer, optional any initialValue, optional SubscribeOptions options = {});
|
|
};
|
|
|
|
dictionary ObservableEventListenerOptions {
|
|
boolean capture = false;
|
|
boolean passive;
|
|
};
|
|
|
|
partial interface EventTarget {
|
|
Observable when(DOMString type, optional ObservableEventListenerOptions options = {});
|
|
};
|