# `HuggingfaceClient.ResponseHandler`
[🔗](https://github.com/huggingface/huggingface_client/blob/v0.1.0/lib/huggingface_client/inference/response_handler.ex#L1)

Resolves provider response tuples, including async/polling patterns used by
providers like Fal.ai, Novita, and Black Forest Labs.

## Response types handled

- `{:ok, value}` / `{:error, exception}` — passed through unchanged
- `{:fetch_url, url}` — fetches binary content at `url`
- `{:novita_video_poll, task_id}` — polls Novita video task endpoint
- `{:fal_queue, response, opts}` — polls Fal.ai queue
- `{:bfl_polling, response}` — polls Black Forest Labs result endpoint
- `{:fal_segmentation_url, url}` — fetches Fal segmentation result

# `resolution`

```elixir
@type resolution() :: {:ok, term()} | {:error, Exception.t()}
```

# `resolve`

```elixir
@spec resolve(term(), map()) :: resolution()
```

Resolves a provider response tuple to `{:ok, result}` or `{:error, exception}`.

---

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