UNPKG

evt

Version:

Type safe replacement for node's EventEmitter

15 lines (13 loc) 518 B
import type { StatefulEvtLike, StatefulEvt, StatefulReadonlyEvtLike, StatefulReadonlyEvt, EvtLike, Evt, NonPostableEvtLike, NonPostableEvt } from "../interfaces"; /** https://docs.evt.land/api/helpertypes#swapevttype-less-than-e-t-greater-than */ export type SwapEvtType<E extends NonPostableEvtLike<any>, T> = E extends StatefulEvtLike<any> ? StatefulEvt<T> : E extends StatefulReadonlyEvtLike<any> ? StatefulReadonlyEvt<T> : E extends EvtLike<any> ? Evt<T> : NonPostableEvt<T> ;