import { type Group } from '../../../shared/lib/router/utils/route-regex'; import type { NextConfigComplete } from '../../config-shared'; interface RouteInfo { path: string; groups: { [groupName: string]: Group; }; } export interface RouteTypesManifest { appRoutes: Record; pageRoutes: Record; layoutRoutes: Record; appRouteHandlerRoutes: Record; /** Map of redirect source => RouteInfo */ redirectRoutes: Record; /** Map of rewrite source => RouteInfo */ rewriteRoutes: Record; /** File paths for validation */ appPagePaths: Set; pagesRouterPagePaths: Set; layoutPaths: Set; appRouteHandlers: Set; pageApiRoutes: Set; /** Direct mapping from file paths to routes for validation */ filePathToRoute: Map; } export declare function convertCustomRouteSource(source: string): string[]; /** * Extracts route parameters from a route pattern */ export declare function extractRouteParams(route: string): { [groupName: string]: Group; }; /** * Creates a route types manifest from processed route data * (used for both build and dev) */ export declare function createRouteTypesManifest({ dir, pageRoutes, appRoutes, appRouteHandlers, pageApiRoutes, layoutRoutes, slots, redirects, rewrites, validatorFilePath, }: { dir: string; pageRoutes: Array<{ route: string; filePath: string; }>; appRoutes: Array<{ route: string; filePath: string; }>; appRouteHandlers: Array<{ route: string; filePath: string; }>; pageApiRoutes: Array<{ route: string; filePath: string; }>; layoutRoutes: Array<{ route: string; filePath: string; }>; slots: Array<{ name: string; parent: string; }>; redirects?: NextConfigComplete['redirects']; rewrites?: NextConfigComplete['rewrites']; validatorFilePath?: string; }): Promise; export declare function writeRouteTypesManifest(manifest: RouteTypesManifest, filePath: string, config: NextConfigComplete): Promise; export declare function writeValidatorFile(manifest: RouteTypesManifest, filePath: string): Promise; export {};