@hazae41/plume
Version:
Typed async events with sequenced and parallel dispatching
9 lines (6 loc) • 641 B
TypeScript
import { CloseEvents } from './closed.js';
import { ErrorEvents } from './errored.js';
import { SuperEventMap, SuperEventTarget, SuperEventWaiter } from './target.js';
declare function waitOrThrow<M extends SuperEventMap, K extends keyof M, R>(target: SuperEventTarget<M>, type: K, callback: SuperEventWaiter<M[K], R>, signal?: AbortSignal): Promise<R>;
declare function waitWithCloseAndErrorOrThrow<M extends SuperEventMap & CloseEvents & ErrorEvents, K extends keyof M, R>(target: SuperEventTarget<M>, type: K, callback: SuperEventWaiter<M[K], R>, signal?: AbortSignal): Promise<R>;
export { waitOrThrow, waitWithCloseAndErrorOrThrow };