/**
* Server JSX Runtime for Radi.
*
* This runtime creates lazy nodes for string or streaming output. Configure:
*
* jsxImportSource: 'radi/server'
*
* when building for SSR so that maps to the server-side
* createElement exported here instead of the DOM-oriented client version.
*
* Differences from the client runtime:
* - Reactive/subscribable values are only evaluated/sampled once.
* - No DOM mutation or lifecycle events (connect/disconnect/update).
* - Output intended for `renderToString()` consumption.
*
* You can pair this with `radi/server` exports:
* import { renderToString } from 'radi/server';
* const html = renderToString();
*/
import "../_dnt.polyfills.js";
import { Fragment as SSRFragment } from '../server-html.js';
import type { ServerChild, ServerNode } from '../server-html.js';
/** JSX types are local to the server runtime, independent of DOM JSX globals. */
export declare namespace JSX {
type Element = ServerNode;
type ElementType = string | ((props: never) => ServerChild);
type LibraryManagedAttributes<_Component, Props> = Props extends () => infer Values ? Values : Props;
interface ElementChildrenAttribute {
children: unknown;
}
interface IntrinsicElements {
[tag: string]: Record;
}
}
interface SourceInfo {
fileName?: string;
lineNumber?: number;
columnNumber?: number;
}
/**
* jsx: Single child form (JSX factory).
*/
export declare function jsx(type: unknown, props: Record, key?: ServerChild): ServerNode;
/**
* jsxs: Multiple children form (JSX factory).
*/
export declare function jsxs(type: unknown, props: Record, key?: ServerChild): ServerNode;
/**
* Development JSX factory variant (mirrors React/Preact signature).
* Included for completeness; server dev tooling may choose to use a
* dedicated dev runtime file with richer diagnostics if needed.
*/
export declare function jsxDEV(type: unknown, props: Record, key: ServerChild | undefined, _isStaticChildren: boolean, source?: SourceInfo, self?: unknown): ServerNode;
/**
* Fragment export required by the JSX transform.
*/
export declare const Fragment: typeof SSRFragment;
declare const _default: {
jsx: typeof jsx;
jsxs: typeof jsxs;
jsxDEV: typeof jsxDEV;
Fragment: typeof SSRFragment;
};
export default _default;