//#region src/generativeUIToJSX.d.ts
/** Options for {@link generativeUIToJSX}. */
export interface GenerativeUIToJSXOptions {
/** Escape string children so the output is safe to paste back into a JSX file. Defaults to `false`. */
escape?: boolean;
/** Pretty-print nested element trees with two-space indentation. Defaults to `false`. */
pretty?: boolean;
}
/**
* Serializes a generative-UI node to a JSX-like string for display: the "view source" of a model-produced tree. The wire form `{ $type: "Weather", id: "x" }` becomes ``, and nested `children` render between tags: `hello`. A model-provided `$key` becomes the JSX `key` attribute.
*
* By default this is a faithful textual rendering, not a parser: text children are emitted verbatim (not HTML/JSX-escaped), so the result is meant to be shown, not re-parsed. Returns `""` for nodes that aren't renderable (no `$type` yet, `null`, booleans).
*
* Pass `{ escape: true }` to make the output safe to paste back into JSX: any string child containing `<`, `>`, `&`, `{`, or `}` is emitted as a JSON-stringified expression (`{JSON.stringify(child)}`) instead of verbatim, while a string child with none of those characters still renders verbatim.
*
* Pass `{ pretty: true }` to pretty-print nested element trees with two-space indentation, while pure text children stay on one line.
*/
export declare function generativeUIToJSX(node: unknown, options?: GenerativeUIToJSXOptions): string;
//#endregion
//# sourceMappingURL=generativeUIToJSX.d.ts.map