import { SerializableBackend } from "./backend.js"; //#region src/headless.d.ts /** A headless host node: an element (with tag/props/children) or a text node. */ interface HeadlessNode { /** `"#text"` for text nodes, otherwise the element tag. */ type: string; /** Applied props (elements only). */ props: Record; /** Text content (text nodes only). */ text: string; /** Child nodes (elements only). */ children: HeadlessNode[]; /** Back-pointer to the parent, or `null` when detached. */ parent: HeadlessNode | null; } /** Options for {@link createHeadlessBackend}. */ interface HeadlessBackendOptions { /** * A designated overlay node for portals. Omit (the default) and `overlayRoot` is unimplemented, * so portals mount IN PLACE — the SSR-correct behavior (`renderToString` only serializes the * root's own children). Pass a node to test relocated portal placement. */ readonly overlayRoot?: HeadlessNode; } /** Create a {@link SerializableBackend} backed by an in-memory tree. */ declare function createHeadlessBackend(options?: HeadlessBackendOptions): SerializableBackend; /** Convenience: create a detached headless root element (default tag `"root"`). */ declare function createHeadlessRoot(type?: string): HeadlessNode; //#endregion export { HeadlessBackendOptions, HeadlessNode, createHeadlessBackend, createHeadlessRoot }; //# sourceMappingURL=headless.d.ts.map