nralcm
Version:
This is a framework based on NodeJs to manage rest api request lifecycle
97 lines (96 loc) • 2.64 kB
TypeScript
import { IAuthenticate } from "../security";
import { IAuthorize } from "../security";
import { IExceptionHandler } from "../exception-handler";
import { IAuthHandler } from "../security";
import { IHttpResponseHandler } from "../http-handler";
import { IModelValidation } from "../validation";
import { IFilter } from "../filter";
import { IHttpRequestHandler } from "../http-handler";
import { IRoute } from "../../common";
/**
* RestApiConfiguration class provides property and methods to configure Rest api
*/
export declare class RestApiConfiguration {
private _authenticationFilter;
private _authorizeFilter;
private _exceptionHandler;
private _authHandler;
private _modelValidationHandler;
private _httpResponseHandler;
private _filters;
private _httpRrequestHandler;
private _routes;
/**
* get AuthenticationFilter
*/
/**
* set AuthenticationFilter
* @param filter - class that implemented interface IAuthenticate
*/
AuthenticationFilter: IAuthenticate;
/**
* get AuthorizeFilter
*/
/**
* set AuthorizeFilter
* @param filter - class that implemented interface IAuthorize
*/
AuthorizeFilter: IAuthorize;
/**
* get ExceptionHandler
*/
/**
* set ExceptionHandler
* @param handler - class that implemented interface IExceptionHandler
*/
ExceptionHandler: IExceptionHandler;
/**
* get AuthHandler
*/
/**
* set IAuthHandler
*/
AuthHandler: IAuthHandler;
/**
* get ModelValidationHandler
*/
/**
* set ModelValidationHandler
* @param handler - class that implemented interface IExceptionHandler
*/
ModelValidationHandler: IModelValidation;
/**
* get HttpResponseHandler
*/
/**
* set HttpResponseHandler
* @param handler - class that implemented interface IHttpResponseHandler
*/
HttpResponseHandler: IHttpResponseHandler;
/**
* get registered filters
*/
readonly Filters: IFilter[];
/**
* register global filters
* @param filter - class that implemented interface IFilter
*/
addFilter(filter: IFilter): void;
/**
* get HttpRequestHandler
*/
/**
* set HttpRequestHandler
* @param httpRequestHandler - class that implemented interface IHttpRequestHandler
*/
HttpRequestHandler: IHttpRequestHandler;
/**
* get registered api routes
*/
readonly routes: IRoute[];
/**
* method to add api routes
* @param routes Route Object array
*/
addRoutes(routes: IRoute[]): void;
}