import type { CreateHandlerOptions, PanicThreshold } from "../types.js";
/**
 * Serializable handler options that can be safely passed to workers
 *
 * This extracts only the serializable parts of CreateHandlerOptions,
 * excluding functions, React components, and other non-serializable data.
 *
 * WHAT'S INCLUDED:
 * - All primitive values (strings, numbers, booleans)
 * - Configuration objects (build, userOptions, etc.)
 * - File paths and URLs
 * - CSS data (cssFiles, globalCss)
 *
 * WHAT'S EXCLUDED:
 * - React components (PageComponent, RootComponent, HtmlComponent)
 * - Functions (loader, normalizer, onEvent, onMetrics)
 * - Logger instances
 * - Module IDs and autoDiscover functions
 */
export interface SerializableHandlerOptions {
    id?: string;
    route: string;
    url: string;
    pagePath: string;
    propsPath?: string;
    rootPath?: string;
    htmlPath?: string;
    pageExportName: string;
    propsExportName: string;
    rootExportName: string;
    htmlExportName: string;
    projectRoot: string;
    moduleRootPath: string;
    moduleBaseURL: string;
    moduleBasePath: string;
    moduleBase?: string;
    publicOrigin: string;
    build: CreateHandlerOptions["build"];
    dev: CreateHandlerOptions["dev"];
    css: CreateHandlerOptions["css"];
    autoDiscover?: CreateHandlerOptions["autoDiscover"];
    cssFiles?: Map<string, any>;
    globalCss?: Map<string, any>;
    pageProps: any;
    panicThreshold: PanicThreshold;
    htmlTimeout?: number;
    clientPipeableStreamOptions?: Omit<NonNullable<CreateHandlerOptions["clientPipeableStreamOptions"]>, `on${string}` | 'filterStackFrame'>;
    serverPipeableStreamOptions?: Omit<NonNullable<CreateHandlerOptions["serverPipeableStreamOptions"]>, `on${string}`>;
}
/**
 * Creates serializable handler options from full CreateHandlerOptions
 *
 * This function strips out non-serializable parts (React components, functions)
 * and returns only the data that can be safely passed to workers.
 *
 * @param options - Full CreateHandlerOptions object
 * @returns Serializable options for worker communication
 */
export declare function createSerializableHandlerOptions(options: Partial<CreateHandlerOptions>): SerializableHandlerOptions;
//# sourceMappingURL=createSerializableHandlerOptions.d.ts.map