import { MicroframeworkSettings } from "./MicroframeworkSettings"; import { MicroframeworkLoader } from "./MicroframeworkLoader"; import { MicroframeworkConfig } from "./MicroframeworkConfig"; /** * Launches microframework. */ export declare class Microframework { /** * Stores framework configuration. */ private frameworkConfig?; /** * Stores configurations from all configuration files provided to microframework. */ private allConfiguration; /** * Stores all registered microframework loaders. */ private loaders; /** * Stores all settings of loaders bootstrapped by microframework. * If its undefined it means framework is not bootstrapped yet. */ private frameworkSettings?; /** * Configs microframework. */ config(config: MicroframeworkConfig | string | string[]): this; /** * Registers loader in the framework. */ registerLoader(loader: MicroframeworkLoader): this; /** * Registers loaders in the framework. */ registerLoaders(loaders: MicroframeworkLoader[]): this; /** * Registers loaders in the framework. */ registerLoaders(...loaders: MicroframeworkLoader[]): this; /** * Bootstraps microframework and loads all loaders. */ bootstrap(): Promise; /** * Shutdowns microframework and everything loaders registered for shutdown. */ shutdown(): Promise; /** * Returns microframework settings used and modified by bootstrapped loaders. * If framework was not bootstrapped yet, this accessor will throw an error. */ readonly settings: MicroframeworkSettings; /** * Runs given callback that returns promise for each item in the given collection in order. * Operations executed after each other, right after previous promise being resolved. */ private runInSequence(collection, callback); /** * Prints the logo if it was set in the configuration. */ private generateLogo(); /** * Creates a promise which will resolve when bootstrap timeout is out. */ private createBootstrapTimeout(); }