# `Kreuzberg.ElementType`
[🔗](https://github.com/kreuzberg-dev/kreuzberg/blob/main/lib/kreuzberg/element_type.ex#L1)

Enumeration of semantic element types in a document.

Matches the Rust `ElementType` enum.

## Values

  * `:title` - Document title
  * `:narrative_text` - Main narrative text body
  * `:heading` - Section heading
  * `:list_item` - List item
  * `:table` - Table element
  * `:image` - Image element
  * `:page_break` - Page break marker
  * `:code_block` - Code block
  * `:block_quote` - Block quote
  * `:footer` - Footer text
  * `:header` - Header text

# `t`

```elixir
@type t() ::
  :title
  | :narrative_text
  | :heading
  | :list_item
  | :table
  | :image
  | :page_break
  | :code_block
  | :block_quote
  | :footer
  | :header
```

# `values`

```elixir
@spec values() :: [t()]
```

Returns all valid ElementType values.

## Examples

    iex> Kreuzberg.ElementType.values()
    [:title, :narrative_text, :heading, :list_item, :table, :image, :page_break, :code_block, :block_quote, :footer, :header]

---

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