import type { RuntimeAdapter } from "../../platform/adapters/base.js"; import type { ApiRouteMatcher } from "../../routing/api/index.js"; import type { VeryfrontConfig } from "../../config/index.js"; export declare class RouteDiscovery { private projectDir; private adapter; private router; private config?; private useRelativePaths; constructor(projectDir: string, adapter: RuntimeAdapter, router: ApiRouteMatcher, config?: VeryfrontConfig | undefined); discoverRoutes(): Promise; /** The configured route directory names, resolved once for every caller. */ private routeDirectoryNames; /** The directories discovery prefers, in order, before any fallback. */ private routeDirectoryCandidates; /** * Every directory discovery probes before giving up, which is a wider set * than {@link routeDirectoryCandidates}: `.veryfront` is always checked, and * when the configured router's directory is missing the other router's is * tried as a fallback. The warning reports this list so it cannot claim a * directory went unsearched when it did not. * * @internal exported shape for tests */ searchedRouteDirectoryNames(): string[]; private resolveRouteDirectories; private directoryExists; private discoverPagesRoutes; private discoverAppRoutes; private discoverAppRoutesRecursive; private normalizeAppPathSegment; private buildAppRoutePattern; private toProjectRelativePath; } //# sourceMappingURL=route-discovery.d.ts.map