import mitt, { Emitter, EventType } from "mitt"; export class BaseEvent { protected _eventbus: Emitter>; constructor() { this._eventbus = mitt(); } addEventListener(eventName: string, callback) { this._eventbus.on(eventName, callback); return this; } removeEventListener(eventName: string, callback?) { this._eventbus.off(eventName, callback); return this; } allClear() { this._eventbus.all.clear(); } }