import type http from 'node:http'; import type { ComponentInstance, RoutesList } from '../types/astro.js'; import type { RouteData } from '../types/public/internal.js'; import type { DevPipeline } from './pipeline.js'; type AsyncReturnType Promise> = T extends (...args: any) => Promise ? R : any; interface MatchedRoute { route: RouteData; filePath: URL; resolvedPathname: string; preloadedComponent: ComponentInstance; mod: ComponentInstance; } export declare function matchRoute(pathname: string, routesList: RoutesList, pipeline: DevPipeline): Promise; type HandleRoute = { matchedRoute: AsyncReturnType; url: URL; pathname: string; body: ArrayBuffer | undefined; routesList: RoutesList; incomingRequest: http.IncomingMessage; incomingResponse: http.ServerResponse; pipeline: DevPipeline; }; export declare function handleRoute({ matchedRoute, url, pathname, body, pipeline, routesList, incomingRequest, incomingResponse, }: HandleRoute): Promise; export {};