import type { PatchRoutesOnNavigationFunction } from "../../context";
import type { Router as RemixRouter } from "../../router/router";
import type { AssetsManifest } from "./entry";
import type { RouteModules } from "./routeModules";
declare global {
    interface Navigator {
        connection?: {
            saveData: boolean;
        };
    }
}
export declare function isFogOfWarEnabled(isSpaMode: boolean): boolean;
export declare function getPartialManifest(manifest: AssetsManifest, router: RemixRouter): {
    routes: {};
    entry: {
        imports: string[];
        module: string;
    };
    url: string;
    version: string;
    hmr?: {
        timestamp?: number | undefined;
        runtime: string;
    } | undefined;
};
export declare function getPatchRoutesOnNavigationFunction(manifest: AssetsManifest, routeModules: RouteModules, isSpaMode: boolean, basename: string | undefined): PatchRoutesOnNavigationFunction | undefined;
export declare function useFogOFWarDiscovery(router: RemixRouter, manifest: AssetsManifest, routeModules: RouteModules, isSpaMode: boolean): void;
export declare function fetchAndApplyManifestPatches(paths: string[], manifest: AssetsManifest, routeModules: RouteModules, isSpaMode: boolean, basename: string | undefined, patchRoutes: RemixRouter["patchRoutes"]): Promise<void>;
