import type express from 'express'; import { type TPathsWithMethod } from '@ibg/types/openapi'; import { type TFilterKeys } from '@ibg/types/utils'; import { type TBaseValidationSchema, type TExpressRequestHandler, type TOpenApiValidationSchema } from './types'; export declare class OpenApiRouter { private readonly router; constructor(router: express.Router); get, GPathOperation extends TFilterKeys>(path: GGetPaths | (string & Record), validation: TOpenApiValidationSchema, handler: TExpressRequestHandler): void; post, GPathOperation extends TFilterKeys>(path: GPostPaths | (string & Record), validation: TOpenApiValidationSchema, handler: TExpressRequestHandler): void; put, GPathOperation extends TFilterKeys>(path: GPutPaths | (string & Record), validation: TOpenApiValidationSchema, handler: TExpressRequestHandler): void; del, GPathOperation extends TFilterKeys>(path: GDeletePaths | (string & Record), validation: TOpenApiValidationSchema, handler: TExpressRequestHandler): void; formatPath(path: string): string; validationHandler(validationSchema: TBaseValidationSchema): express.RequestHandler; private validateRequestPart; handlerWrapper(handler: express.RequestHandler): express.RequestHandler; } //# sourceMappingURL=OpenApiRouter.d.ts.map