magnet-core
Version:
Magnet's core, a simple module loader.
25 lines (24 loc) • 618 B
TypeScript
import { LogAbstract } from './log';
import { App } from './app';
export interface RuntimeModule {
module: Module;
options: any;
}
export declare abstract class Module {
name: string;
originalModuleName: string;
moduleName: string;
namespace: string;
defaultConfig: any;
app: App;
log: LogAbstract;
config: any;
options: any;
private _name;
constructor(app: App, options?: any);
init(): void;
prepareConfig(ns?: string, defaultConfig?: any): any;
insert(currentModule: any, ns?: string): void;
setup(): Promise<void>;
teardown(): Promise<any>;
}