import type { VextFrontendMode, VextFrontendUserConfig } from "../../frontend/contract/types.js"; import type { RouteOptions } from "../../types/app.js"; import type { VextMiddleware } from "../../types/middleware.js"; export interface CreateFrontendFreshnessMiddlewareOptions { rootDir: string; config: VextFrontendUserConfig | undefined; mode: VextFrontendMode; } /** * Makes RouteOptions.frontend the sole policy input for runtime freshness. * Route/cache and frontend/page concerns intentionally remain separate: this * store owns only public render payloads, then replays them through the * current renderer for document versus page-envelope negotiation. */ export declare function buildFrontendFreshnessMiddleware(routeOptions: RouteOptions | undefined, options: CreateFrontendFreshnessMiddlewareOptions): VextMiddleware | undefined;