# Dom.ElementProperties

Reactive writable properties for a DOM element, excluding events and refs.

## Signatures

```ts
export type ElementProperties<Element extends globalThis.Element> = {
    readonly [K in WritableKeys<Element> as K extends string ? K extends `on${string}` | "ref" ? never : K : never]?: RenderableInput<Element[K] | null | undefined>;
};
```

## Why

Property assignment preserves native element behavior for values that are
not accurately represented as string attributes.

## Ownership and lifetime

Reactive values are subscribed within the rendered part's Scope; the exact
element remains browser-owned DOM rather than a virtual-node copy.
