@sitesoft/ssp-support
Version:
Various tools, data-structures and utils
34 lines • 963 B
TypeScript
import { BusEventType } from './BusEvent';
export interface Module {
endpoint: string;
name: string;
ns: string;
version: string;
vendor: {
name: string;
slug: string;
url: string;
};
}
export interface Modules {
[prop: string]: Module;
}
declare type ModuleCollectionOptions = {
logInConsole: boolean;
onRegistered?: Function;
};
export declare const EVENT_REGISTERED = "modules-registered";
export default class ModuleCollection {
private readonly modules;
private readonly eBus?;
private readonly options;
constructor(modules?: Modules, eBus?: BusEventType, options?: Partial<ModuleCollectionOptions>);
initModules(modules?: Modules): void;
registerModule(module: Module): void;
get(moduleName: string): Module | undefined;
count(): number;
isEmpty(): boolean;
onRegistered(callback: Function): void;
}
export {};
//# sourceMappingURL=ModuleCollection.d.ts.map