You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
789 B

4 months ago
interface EventType {
readonly callback: Function;
readonly once: boolean;
}
export default class EventEmitter {
private _events;
/**
*
* @param evt
* @param callback
* @param once
*/
on(evt: string, callback: Function, once?: boolean): this;
/**
*
* @param evt
* @param callback
*/
once(evt: string, callback: Function): this;
/**
*
* @param evt
* @param args
*/
emit(evt: string, ...args: any[]): void;
/**
* channel
* @param evt
* @param callback
*/
off(evt?: string, callback?: Function): this;
getEvents(): Record<string, EventType[]>;
}
export {};