// 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> toArray(optional SubscribeOptions options = {}); Promise forEach(Visitor callback, optional SubscribeOptions options = {}); Promise every(Predicate predicate, optional SubscribeOptions options = {}); Promise first(optional SubscribeOptions options = {}); Promise last(optional SubscribeOptions options = {}); Promise find(Predicate predicate, optional SubscribeOptions options = {}); Promise some(Predicate predicate, optional SubscribeOptions options = {}); Promise 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 = {}); };