sipp
Version:
An Opinionated, High-Productivity MVC Web Framework in TypeScript
40 lines (39 loc) • 1.6 kB
TypeScript
/// <reference types="node" />
import { Server } from 'http';
import { Application } from 'express';
import { ExceptionHandler } from './exceptions';
import { Middleware, Controller } from './http';
import { IAppConfig, IMiddlewareFunc } from './interfaces';
import { Logger } from './logger';
import { ServiceProvider } from './framework/services/ServiceProvider';
export declare class App {
private app;
private controllers;
private providers;
private globalMiddleware;
private middleware;
private exceptionHandler;
private readonly routeMapper;
private readonly connection;
private readonly config;
private readonly logger;
constructor(app: Application, config: IAppConfig, controllers?: Controller[]);
static bootstrap(config?: IAppConfig, controllers?: Controller[]): App;
init(): App;
getLogger(): Logger;
getExceptionHandler(): ExceptionHandler;
withMiddleware(route?: string | RegExp | IMiddlewareFunc | Middleware, ...middleware: Array<IMiddlewareFunc | Middleware>): App;
withGlobalMiddleware(route?: string | RegExp | IMiddlewareFunc | Middleware, ...middleware: Array<IMiddlewareFunc | Middleware>): App;
withControllers(...controllers: Controller[]): App;
withProviders(...providers: ServiceProvider[]): App;
withExceptionHandler(handler: ExceptionHandler): App;
wire(): Promise<App>;
listen(): Server;
express(): Application;
private registerControllers;
private constructPath;
private onException;
private wrapMiddleware;
private handleResponse;
private afterResponse;
}