import { ILifecycle } from './lifecycle'; export interface ISystem { getStartedComponents(): T; } export interface IComponentDescription { instance: ILifecycle; dependenciesList: string[]; } export interface IComponentMap { [name: string]: IComponentDescription; } export declare class System implements ISystem, ILifecycle { private componentMap; private startedComponents; constructor(componentMap: IComponentMap); start(): Promise; stop(): Promise; getStartedComponents(): T; }