///
import * as Express from "express";
export declare class ApplicationLoader {
private _server;
private _env;
private _rootDir;
private _srcDir;
private _publicDir;
private _logDir;
private _configDir;
private _dbDir;
private _port;
private _routes;
private _components;
readonly server: Express.Application;
readonly env: string;
readonly components: string[];
readonly routes: any;
readonly rootDir: string;
readonly srcDir: string;
readonly publicDir: string;
readonly logDir: string;
readonly configDir: string;
readonly dbDir: string;
readonly port: number | string;
/**
* Load user defined settings into ApplicationLoader
* Initialize settings
*/
constructor();
start(): Promise;
private init();
private invokeApplicationInitHook();
private loadExternalMiddlewares();
private loadComponents();
private loadMiddlewares();
private loadRoutes();
private loadErrorMiddlewares();
private run();
}