# Dom.HostRenderer

Function signature for rendering an arbitrary DOM host.

## Signatures

```ts
export type HostRenderer<Element extends globalThis.Element, A = RenderEvent, E = never, R = never, Props extends HostProps<Element> = HostProps<Element>, Content extends RenderableInput = RenderableInput> = (props: Props, content: Content) => Fx<A, E, R> | Effect.Effect<A, E, R>;
```

## Why

Components can target native templates or external DOM-producing systems
through the same `Fx<RenderEvent, E, R>` substrate.

## Ownership and lifetime

Returning a value starts no work by itself. The caller's rendering Scope owns
the returned Effect or Fx and any nodes represented by its render events.
