import { NextRewrite } from "../config/next-config.js";
import { AppRoute, RouteManifest } from "../routing/app-route-graph.js";
import { VinextLinkPrefetchRoute, VinextPagesLinkPrefetchRoute } from "../client/vinext-next-data.js";
//#region src/entries/app-browser-entry.d.ts
/**
 * Generate the virtual browser entry module.
 *
 * This runs in the client (browser). It hydrates the page from the
 * embedded RSC payload and handles client-side navigation by re-fetching
 * RSC streams.
 */
declare function generateBrowserEntry(routes?: readonly AppRoute[], routeManifest?: RouteManifest | null, pagesPrefetchRoutes?: readonly VinextPagesLinkPrefetchRoute[], rewrites?: {
  afterFiles: NextRewrite[];
  beforeFiles: NextRewrite[];
  fallback: NextRewrite[];
}): string;
/** Project an `AppRoute` down to the public `VinextLinkPrefetchRoute` shape. */
declare function toLinkPrefetchRoute(route: AppRoute, hasSiblingInterceptLoading?: boolean): VinextLinkPrefetchRoute;
/** Project App routes together so sibling-intercept loading is applied to its target route. */
declare function toLinkPrefetchRoutes(routes: readonly AppRoute[]): VinextLinkPrefetchRoute[];
//#endregion
export { generateBrowserEntry, toLinkPrefetchRoute, toLinkPrefetchRoutes };