@allgemein/moduls
Version:
Commons-moduls handles and manages contextual moduls for complex and modular applications.
18 lines (17 loc) • 812 B
TypeScript
import { ModuleDescriptor } from '../registry/ModuleDescriptor';
import { AbstractModuleHandle } from './AbstractModuleHandle';
import { ModuleRegistry } from '../registry/ModuleRegistry';
import { IModuleOptions } from './IModuleOptions';
import { IModuleLoader } from './IModuleLoader';
export declare abstract class AbstractModuleLoader<T extends AbstractModuleHandle, OPT extends IModuleOptions> implements IModuleLoader<T> {
_options: OPT;
protected readonly registry: ModuleRegistry;
_handles: T[];
constructor(registry: ModuleRegistry, options?: OPT);
handles(): T[];
add(handle: T): T;
protected abstract loadOne(modul: ModuleDescriptor): Promise<T>;
load(module: ModuleDescriptor): Promise<T>;
load(modules: ModuleDescriptor[]): Promise<T[]>;
private _loadOne;
}