import { IDisposable, ILogger, MaybePromise } from '@opensumi/ide-core-common'; import { IActivationEventService } from './types'; /** * 管理和发出插件 activateEvents * event 格式 * topic:data */ export declare class ActivationEventServiceImpl implements IActivationEventService { private eventListeners; private collectTopicData; private wildCardTopics; activatedEventSet: Set; protected readonly logger: ILogger; constructor(); getTopicsData(topic: string): string[]; fireEvent(topic: string, data?: string): Promise; addWildCardTopic(topic: string): { dispose: () => void; }; onEvent(event: string, listener: () => MaybePromise): IDisposable; /** * 为了性能考虑, * 对于接受通配符的topic,以topic为单位存储listener * 对于不接受通配符的topic,直接以event作为单位存储listener * @param topic * @param listener */ private addListener; tryRun(topic: string, data: string, listener: IActivationEventListener): Promise; } interface IActivationEventListener { topic: string; data: string; execute: () => MaybePromise; } export {}; //# sourceMappingURL=activation.service.d.ts.map