The node type for this renderer (e.g., HTMLElement, VNode, string)
ReadonlyaddAdd an event listener to a node. Returns a cleanup function to remove the listener. Note: This may be a no-op for non-interactive renderers (SSR).
ReadonlyappendAppend a child node to a parent node.
ReadonlycreateCreate an element node of the given type.
The element tag name
Optionalnamespace: stringOptional namespace URI (e.g., "http://www.w3.org/2000/svg" for SVG)
ReadonlycreateCreate a slot for swappable content. Used by Boundary.suspense to swap fallback with actual content. Returns a Slot with a marker node and methods to set/clear content.
ReadonlycreateCreate a text node with the given content.
ReadonlyenvironmentA string identifying the rendering environment (e.g., "dom", "ssr", "terminal"). Useful for conditional logic in components that need to behave differently in different environments.
ReadonlyfinalizeSignal that an element created with createNode has been fully built (attributes set, children appended). Used by the hydration renderer to pop its traversal context. No-op for other renderers.
ReadonlygetGet children of a node (for traversal during hydration).
ReadonlyinsertInsert a child before a reference node.
ReadonlyisCheck if the renderer is in hydration mode.
ReadonlyremoveRemove an attribute from a node.
ReadonlyremoveRemove a child node from a parent node.
ReadonlyremoveRemove a CSS style property from a node.
ReadonlyreplaceReplace an old child node with a new one.
ReadonlysetSet an attribute on a node. If value is null/undefined, the attribute should be removed. If value is a boolean, true sets empty string, false removes.
ReadonlysetSet the className of a node.
ReadonlysetSet the innerHTML of a node. Note: This may not be supported by all renderers.
ReadonlysetSet the value property of an input-like node.
ReadonlysetSet a CSS style property on a node.
ReadonlysetSet the text content of a node.
ReadonlytoggleToggle a CSS class on a node.
Abstract renderer interface for creating and manipulating a node tree. Implementations can target DOM, strings (SSR), terminal, native, etc.