# `LLMProxy.Stream.Heartbeat`
[🔗](https://github.com/elixir-vibe/llm_proxy/blob/v0.3.1/lib/llm_proxy/stream/heartbeat.ex#L1)

Adds periodic heartbeat markers while an upstream enumerable is silent.

The producer is pulled at most one event ahead so slow HTTP clients cannot cause
unbounded buffering. Consumers render heartbeat markers as SSE comments.

# `t`

```elixir
@type t() :: %LLMProxy.Stream.Heartbeat{}
```

# `wrap`

```elixir
@spec wrap(Enumerable.t()) :: Enumerable.t()
```

# `wrap`

```elixir
@spec wrap(Enumerable.t(), pos_integer() | keyword()) :: Enumerable.t()
```

# `wrap`

```elixir
@spec wrap(Enumerable.t(), pos_integer(), keyword()) :: Enumerable.t()
```

---

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