import { g as RequestHandlerDefaultInfo, R as RequestHandler, a as ResponseResolver, c as RequestHandlerOptions, h as ResponseResolutionContext } from '../HttpResponse-5Sn2vNaJ.js'; import { Path, Match, PathParams } from '../utils/matching/matchRequestUrl.js'; import '../utils/internal/isIterable.js'; import '../typeUtils.js'; type HttpHandlerMethod = string | RegExp; interface HttpHandlerInfo extends RequestHandlerDefaultInfo { method: HttpHandlerMethod; path: Path; } declare enum HttpMethods { HEAD = "HEAD", GET = "GET", POST = "POST", PUT = "PUT", PATCH = "PATCH", OPTIONS = "OPTIONS", DELETE = "DELETE" } type RequestQuery = { [queryName: string]: string; }; type HttpRequestParsedResult = { match: Match; cookies: Record; }; type HttpRequestResolverExtras = { params: Params; cookies: Record; }; /** * Request handler for HTTP requests. * Provides request matching based on method and URL. */ declare class HttpHandler extends RequestHandler> { constructor(method: HttpHandlerMethod, path: Path, resolver: ResponseResolver, any, any>, options?: RequestHandlerOptions); private checkRedundantQueryParameters; parse(args: { request: Request; resolutionContext?: ResponseResolutionContext; }): Promise<{ match: Match; cookies: Record; }>; predicate(args: { request: Request; parsedResult: HttpRequestParsedResult; }): boolean; private matchMethod; protected extendResolverArgs(args: { request: Request; parsedResult: HttpRequestParsedResult; }): { params: PathParams; cookies: Record; }; log(args: { request: Request; response: Response; }): Promise; } export { HttpHandler, type HttpHandlerInfo, HttpMethods, type HttpRequestParsedResult, type HttpRequestResolverExtras, type RequestQuery };