# `HtmlToMarkdown.HeaderMetadata`

Header element metadata with hierarchy tracking.

Captures heading elements (h1-h6) with their text content, identifiers,
and position in the document structure.

# Examples

```
let header = HeaderMetadata {
    level: 1,
    text: "Main Title".to_string(),
    id: Some("main-title".to_string()),
    depth: 0,
    html_offset: 145,
};

assert_eq!(header.level, 1);
assert!(header.is_valid());
```

# `t`

```elixir
@type t() :: %HtmlToMarkdown.HeaderMetadata{
  depth: non_neg_integer(),
  html_offset: non_neg_integer(),
  id: String.t() | nil,
  level: non_neg_integer(),
  text: String.t() | nil
}
```

Header element metadata with hierarchy tracking.

# `valid?`

```elixir
@spec valid?(t()) :: boolean()
```

Validate that the header level is within valid range (1-6).

---

*Consult [api-reference.md](api-reference.md) for complete listing*
