import type { AstroComponentMetadata } from '../../@types/astro-core';
import type { SSRElement } from '../../@types/astro-runtime';
export declare function serializeProps(value: any): string;
interface ExtractedProps {
    hydration: {
        directive: string;
        value: string;
        componentUrl: string;
        componentExport: {
            value: string;
        };
    } | null;
    props: Record<string | number, any>;
}
export declare function extractDirectives(inputProps: Record<string | number, any>): ExtractedProps;
interface HydrateScriptOptions {
    renderer: any;
    astroId: string;
    props: Record<string | number, any>;
}
/** For hydrated components, generate a <script type="module"> to load the component */
export declare function generateHydrateScript(scriptOptions: HydrateScriptOptions, metadata: Required<AstroComponentMetadata>): Promise<SSRElement>;
export {};
