UNPKG

@breautek/storm

Version:

Object-Oriented REST API framework

48 lines (47 loc) 2.42 kB
import { Application } from './Application'; import { Request } from './Request'; import { Response, TSupportedResponseTypes } from './Response'; import { Middleware } from './Middleware'; import { StormError } from './StormError'; import { ResponseData } from './ResponseData'; export declare class Handler<TApplication extends Application = Application, TGetRequest = void, TGetResponse extends TSupportedResponseTypes = TSupportedResponseTypes, TPostRequest = void, TPostResponse extends TSupportedResponseTypes = TSupportedResponseTypes, TPutRequest = void, TPutResponse extends TSupportedResponseTypes = TSupportedResponseTypes, TDeleteRequest = void, TDeleteResponse extends TSupportedResponseTypes = TSupportedResponseTypes> { private static $requestDuration; private $app; /** * @deprecated */ private $middlewares; constructor(app: TApplication); getApplication(): TApplication; /** * @deprecated */ protected _initMiddlewares(): Middleware[]; getAccessToken(request: Request<unknown>): string; /** * @deprecated * @param request * @param response * @returns */ private $executeMiddlewares; /** * @deprecated * @param request * @param response * @param error */ protected _onMiddlewareReject(request: Request, response: Response<any>, error: StormError): void; private $handleResponse; private $handleResponseError; protected _logRequestStart(request: Request<unknown>): void; protected _logRequestEnd(request: Request<unknown>, response: Response<any>, elapsed: number): void; get(request: Request<TGetRequest>, response: Response<TGetResponse>): Promise<void>; put(request: Request<TPutRequest>, response: Response<TPutResponse>): Promise<void>; post(request: Request<TPostRequest>, response: Response<TPostResponse>): Promise<void>; delete(request: Request<TDeleteRequest>, response: Response<TDeleteResponse>): Promise<void>; protected _get(request: Request<TGetRequest>): Promise<TGetResponse | ResponseData<TGetResponse>>; protected _post(request: Request<TPostRequest>): Promise<TPostResponse | ResponseData<TPostResponse>>; protected _put(request: Request<TPutRequest>): Promise<TPutResponse | ResponseData<TPutResponse>>; protected _delete(request: Request<TDeleteRequest>): Promise<TDeleteResponse | ResponseData<TDeleteResponse>>; }