# `Codex.Protocol.TextElement`
[🔗](https://github.com/nshkrdotcom/codex_sdk/blob/v0.16.1/lib/codex/protocol/text_element.ex#L1)

Text element with byte range for rich text input.

Used to preserve UI element metadata in user input text.

# `t`

```elixir
@type t() :: %Codex.Protocol.TextElement{
  byte_range: Codex.Protocol.ByteRange.t(),
  placeholder: (String.t() | nil) | nil
}
```

A text element with byte range and optional placeholder

# `from_map`

```elixir
@spec from_map(map()) :: t()
```

# `to_map`

```elixir
@spec to_map(t()) :: map()
```

---

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