# PartNode

Represents a single dynamic interpolation part in the template AST.

## Signatures

```ts
export type PartNode = AttrPartNode | BooleanPartNode | ClassNamePartNode | DataPartNode | EventPartNode | NodePart | PropertyPartNode | PropertiesPartNode | RefPartNode | TextPartNode | CommentPartNode;
```

## Why

Each tag selects precise DOM update and SSR escaping behavior instead of one
generic interpolation operation.

## Ownership and lifetime

The part records an input index; the render Scope owns the eventual updater.

## Examples

```ts
import { TextPartNode, type PartNode } from "@typed/template/Template"

const part: PartNode = new TextPartNode(0)
```
