export { route };
export type { PageContextForRoute };
export type { PageContextFromRoute };
export type { PageRoutes };
export type { RouteMatches };
import type { PageFile } from '../getPageFiles.js';
import { type PageContextUrlInternal, type PageContextUrlSource } from '../getPageContextUrlComputed.js';
import type { PageRoutes, RouteType } from './loadPageRoutes.js';
import type { PageConfigRuntime, PageConfigGlobalRuntime } from '../page-configs/PageConfig.js';
import type { Hook } from '../hooks/getHook.js';
type PageContextForRoute = PageContextUrlInternal & {
    _pageFilesAll: PageFile[];
    _pageConfigs: PageConfigRuntime[];
    _allPageIds: string[];
    _pageConfigGlobal: PageConfigGlobalRuntime;
    _pageRoutes: PageRoutes;
    _onBeforeRouteHook: Hook | null;
} & PageContextUrlSource;
type PageContextFromRoute = {
    pageId: string | null;
    routeParams: Record<string, string>;
    _routingProvidedByOnBeforeRouteHook?: boolean;
    _debugRouteMatches: RouteMatches;
};
type RouteMatch = {
    pageId: string;
    routeString?: string;
    precedence?: number | null;
    routeType: RouteType;
    routeParams: Record<string, string>;
};
type RouteMatches = 'CUSTOM_ROUTING' | RouteMatch[];
declare function route(pageContext: PageContextForRoute, skipOnBeforeRouteHook?: true): Promise<PageContextFromRoute>;
