import { ClassType, CompilerContext } from '@deepkit/core'; import { InjectorModule } from '@deepkit/injector'; import { ReflectionParameter, Type } from '@deepkit/type'; import { HttpRequest } from './model.js'; import { RouteConfig } from './router.js'; import { HttpParserOptions } from './module.config.js'; export declare class ParameterForRequestParser { parameter: ReflectionParameter; regexPosition?: number; constructor(parameter: ReflectionParameter); get body(): boolean; get requestParser(): boolean; get bodyValidation(): boolean; getType(): Type; get header(): boolean; get query(): boolean; get queries(): boolean; get typePath(): string | undefined; getName(): string; isPartOfPath(): boolean; } export declare function parseRoutePathToRegex(path: string, params: ReflectionParameter[]): { regex: string; parameterNames: { [name: string]: number; }; }; export declare function buildRequestParser(parseOptions: HttpParserOptions, parameters: ReflectionParameter[], routeConfig?: RouteConfig): (request: HttpRequest) => any[]; export declare function getRequestParserCodeForParameters(compiler: CompilerContext, parseOptions: HttpParserOptions, parameters: ParameterForRequestParser[], config: { module?: InjectorModule; resolverForParameterName?: Map; resolverForToken?: Map; pathParameterNames?: { [name: string]: number; }; routeConfig?: RouteConfig; }): string;