type Callback = (...args: any) => void; /** * eventbus 仅限制用于跨模块通讯,组件模块内部场景不要使用 * @author chentong * @date 2023-02-21 */ export default class EventBus { private eventsMap; private static _instance; private __ONCE__KEY__EVENT__; private constructor(); static instance(): EventBus; /** * 注册事件 * @param event * @param callback */ on(event: string, callback: Callback): void; /** * 解除注册事件 * @param event * @param callback * @returns */ off(event: string): void; /** * 发送事件 * @param event * @param args */ emit(event: string, ...args: any): void; emitOnce(event: string, ...args: any): void; /** * 一次性注册,接收事件后自动销毁 * @param event * @param callback */ once(event: string, callback: Callback): void; /** * 按照应用名字清理事件 * @param appName */ clear(appName: string): void; } export {};