/// import { Application, Router } from "express"; import { Container } from "inversify"; import { IControllerFactory, IControllerRegistry, ITravelAgentServer, IRoute } from "../interfaces"; import { IMiddlewareProvider } from "../middleware/middlewareProvider"; export default class TravelAgentServer implements ITravelAgentServer { app: Application; container: Container; controllerFactory: IControllerFactory; controllerRegistry: IControllerRegistry; middlewareResolver: IMiddlewareProvider; routes: IRoute[]; private defaultRouter; private cwd; private isProdEnv; constructor(express: Application, expressRouter: Router, middlewareResolver: IMiddlewareProvider, controllerFactory: IControllerFactory, controllerRegistry: IControllerRegistry, cwd: string, isProdEnv: boolean); use(...args: any[]): Application; setup(): void; postSetup(): void; bind(...args: any[]): any; addModules(): void; private buildRouteObjects(controller); private addDefaultRoute(router); private createDefaultRoute(method); private createViewEngine(); }