import type { StaticConfig } from '../../types/build';
export type PrerenderResult = {
    /** Map of route path → rendered HTML file path on disk */
    routes: Map<string, string>;
    /** Directory where pre-rendered files are stored */
    dir: string;
};
type LogFn = (message: string) => void;
/** Header used to bypass the prerender cache during ISR re-renders */
export declare const PRERENDER_BYPASS_HEADER = "X-Absolute-Prerender-Bypass";
/** Convert a URL path to a filename: "/" → "index.html", "/vue" → "vue.html" */
export declare const routeToFilename: (route: string) => string;
/** Read the render timestamp for a pre-rendered page. Returns 0 if not found. */
export declare const readTimestamp: (htmlPath: string) => number;
/**
 * Re-render a single route by fetching it from the running server
 * with the bypass header so it hits SSR instead of the cache.
 */
export declare const rerenderRoute: (route: string, port: number, prerenderDir: string) => Promise<boolean>;
/**
 * Pre-render routes by fetching them from a running server and saving the HTML to disk.
 *
 * Used by both `absolute start` (SSG) and `absolute compile`.
 */
export declare const prerender: (port: number, outDir: string, staticConfig: StaticConfig, log?: LogFn) => Promise<PrerenderResult>;
/**
 * Start the bundled production server, wait for it to be ready, pre-render,
 * then kill it.
 */
export declare const prerenderWithServer: (serverBundlePath: string, port: number, outDir: string, staticConfig: StaticConfig, env: Record<string, string>, log?: LogFn) => Promise<PrerenderResult>;
export {};
