import type { HtmlComponentType, PageComponentType, PagePropOpt, ResolvedUserOptions, RootComponentType } from "../../types.js";
import type { Logger } from "vite";
import type { RscRenderMessage } from "./types.js";
import type { React } from "../../vendor/vendor.server.js";
/**
 * Main function that hydrates an RSC render message with all necessary context
 *
 * This function orchestrates the process of preparing a render message for execution
 * by validating, resolving URLs, merging defaults, and setting up components and loaders.
 */
export declare function hydrateRscRenderMessage({ message, pageProps, PageComponent, RootComponent, HtmlComponent, userOptions, logger, manifest, }: {
    message: RscRenderMessage;
    pageProps: PagePropOpt;
    PageComponent: PageComponentType<PagePropOpt>;
    RootComponent: RootComponentType | typeof React.Fragment;
    HtmlComponent: HtmlComponentType | typeof React.Fragment | undefined;
    userOptions: ResolvedUserOptions;
    logger: Logger;
    manifest: Record<string, {
        file: string;
    } | string>;
}, { userOptions: defaultUserOptions }?: any): {
    url: string;
    pageProps: any;
    RootComponent: import("react").ExoticComponent<import("react").FragmentProps> | RootComponentType;
    HtmlComponent: import("react").ExoticComponent<import("react").FragmentProps> | HtmlComponentType<any, any, any, any> | HtmlComponentType;
    PageComponent: PageComponentType<any>;
    loader: import("../../types.js").GenericModuleLoader;
    normalizer: import("../../types.js").InputNormalizer;
    moduleID: ((id: string, sourceContent?: string, isClientByDirective?: boolean) => string) | undefined;
    logger: Logger;
    autoDiscover: Required<import("../../types.js").AutoDiscoverConfig>;
    onMetrics: undefined;
    cssFiles: Map<string, import("../../types.js").StyleCssProps | import("../../types.js").LinkCssProps> & Map<string, import("../../types.js").CssContent>;
    globalCss: Map<string, import("../../types.js").StyleCssProps | import("../../types.js").LinkCssProps> & Map<string, import("../../types.js").CssContent>;
    build: {
        pages: string[];
        client: string;
        server: string;
        static: string;
        outDir: string;
        assetsDir: string;
        preserveModulesRoot: boolean;
        rscOutputPath: string;
        htmlOutputPath: string;
    };
    as?: keyof import("react").JSX.IntrinsicElements | import("react").JSXElementConstructor<any> | undefined;
    children?: import("react").ReactNode;
    manifest: import("vite").Manifest;
    server?: import("vite").ViteDevServer | undefined;
    css: import("../../types.js").RootOptions<boolean>;
    worker?: import("worker_threads").Worker | undefined;
    dev: Pick<ResolvedUserOptions["dev"], "useHtmlWorker" | "useRscWorker">;
    htmlWorkerPath: string;
    rscWorkerPath: string;
    htmlTimeout: number;
    fileWriteTimeout: number;
    workerShutdownTimeout: number;
    clientPipeableStreamOptions?: import("react-dom/server").RenderToPipeableStreamOptions | undefined;
    components?: {
        Html?: HtmlComponentType<any, keyof import("react").JSX.IntrinsicElements | import("react").JSXElementConstructor<any>, boolean | undefined, import("react").ReactNode> | undefined;
        Root?: RootComponentType<any, keyof import("react").JSX.IntrinsicElements | import("react").JSXElementConstructor<any>, boolean | undefined, import("react").ReactNode> | undefined;
        Page?: PageComponentType<any, import("react").ReactNode> | undefined;
    } | undefined;
    reuseHeadlessStreamId?: string | undefined;
    headlessStreamElements?: Map<string, {
        PageComponent: any;
        errored: boolean;
    }> | undefined;
    signal?: AbortSignal | undefined;
    staticManifest?: import("vite").Manifest | undefined;
    serverManifest?: import("vite").Manifest | undefined;
    clientManifest?: import("vite").Manifest | undefined;
    rscWorker?: import("worker_threads").Worker | undefined;
    htmlWorker?: import("worker_threads").Worker | undefined;
    importedCss?: Set<string> | undefined;
    rscStream?: import("stream").Readable | undefined;
    htmlStream?: import("stream").Readable | undefined;
    metrics?: import("../../types.js").StreamMetrics | undefined;
    resolvedPageProps?: Record<string, unknown>;
    dataPort: MessagePort;
    controlPort: MessagePort;
    options: Omit<import("../../types.js").CreateHandlerOptions<ResolvedUserOptions>, "onEvent" | "onMetrics" | "loader" | "build" | "autoDiscover" | "normalizer" | "moduleID" | "url" | "logger"> & {
        cssFiles?: Map<string, import("../../types.js").CssContent>;
        globalCss?: Map<string, import("../../types.js").CssContent>;
        url?: string;
        build: Omit<import("../../types.js").CreateHandlerOptions<ResolvedUserOptions>["build"], "entryFileNames" | "chunkFileNames" | "assetFileNames" | "pages"> & {
            pages: string[];
        };
        PageComponent?: any;
        pageProps?: any;
        RootComponent?: any;
        HtmlComponent?: any;
        resolvedPageProps?: Record<string, unknown>;
    };
    type: "INIT";
    id: string;
    route: string;
    pagePath: string;
    propsPath: string | undefined;
    rootPath: string | undefined;
    htmlPath: string | undefined;
    rootExportName: string;
    htmlExportName: string;
    pageExportName: string;
    propsExportName: string;
    projectRoot: string;
    moduleRootPath: string;
    moduleBaseURL: string;
    moduleBasePath: string;
    moduleBase: string;
    serverPipeableStreamOptions: any;
    verbose: boolean;
    rscTimeout: number;
    panicThreshold: import("../../types.js").PanicThreshold;
    publicOrigin: string;
};
//# sourceMappingURL=hydrateRscRenderMessage.server.d.ts.map