Type Aliases
ArgumentMap
ArgumentMap<T>: { [ K in keyof T]: T[K] extends ((...args: any[]) => void) ? Parameters<T[K]> : T[K] extends any[] ? T[K] : any[] }
Type Parameters
EventArgs
Type Parameters
EventListener
Event
Listener
<T, K>: T extends string | symbol ? ((...args
: any[]) => void) : ((...args
: ArgumentMap<Exclude<T, string | symbol>>[Extract<K, keyof T>]) => void)Type Parameters
EventNames
EventNames<T>: T extends string | symbol ? T : keyof T
Type Parameters
ValidEventTypes
ValidEventTypes: string | symbol | object
objectshould be in either of the following forms: