UNPKG

queueable

Version:

Convert push-based streams to pull-based async iterables

13 lines (12 loc) 824 B
import { PushAdapter } from './common'; export type EventMap = GlobalEventHandlersEventMap; /** * Convert DOM events to an async iterable iterator. */ declare const fromDom: <T extends keyof GlobalEventHandlersEventMap>(init: () => PushAdapter<GlobalEventHandlersEventMap[T]>) => (type: T, target: Target<T, Listener<T>, boolean | AddEventListenerOptions>, options?: boolean | AddEventListenerOptions) => AsyncIterableIterator<GlobalEventHandlersEventMap[T]>; export type Listener<T extends keyof EventMap> = (e: EventMap[T]) => void; export type Target<T extends keyof EventMap, L = Listener<T>, O = boolean | AddEventListenerOptions> = EventTarget & { addEventListener(type: T, listener: L, options?: O): void; removeEventListener(type: T, listener: L, options?: O): void; }; export default fromDom;