dino-express
Version:
DinO enabled REST framework based on express
24 lines (23 loc) • 1.44 kB
TypeScript
import { type ApplicationContext } from 'dino-core';
import { type NextFunction, type Request } from 'express';
import { type OpenAPI, type OpenAPIV2, type OpenAPIV3, type OpenAPIV3_1 } from 'openapi-types';
import { type Response } from '../../../Response';
import { BeforeHandlerMiddleware } from '../../before.handler.middleware';
export type SecurityDefinition = OpenAPIV2.SecuritySchemeObject | OpenAPIV3_1.ReferenceObject | OpenAPIV3.SecuritySchemeObject;
type SecurityDefinitions = Record<string, OpenAPIV2.SecuritySchemeObject | OpenAPIV3_1.ReferenceObject | OpenAPIV3.SecuritySchemeObject> | undefined;
export declare class SecurityMiddleware extends BeforeHandlerMiddleware {
private readonly api;
private readonly apiDocument;
private readonly applicationContext;
constructor(applicationContext: ApplicationContext, api: OpenAPI.Operation, components: OpenAPI.Document);
/**
* Definition of the function that will handle the security business logic associated with this middleware.
*
* @param {import('express').Request} req Express request instance
* @param {import('express').Response} res express response instance
* @param {Function} next the next function that will be invoked as part of the express chain
*/
handle(req: Request, res: Response, next: NextFunction): void;
protected getSecurityDefinition(document: OpenAPI.Document): SecurityDefinitions;
}
export {};