# `Aludel.Interfaces.DocumentConverter.Behaviour`
[🔗](https://github.com/ccarvalho-eng/aludel/blob/main/lib/aludel/interfaces/document_converter/behaviour.ex#L1)

Behaviour for document conversion adapters.

Allows swapping between different conversion tools (ImageMagick, etc.)
or using test stubs.

# `convert_result`

```elixir
@type convert_result() :: {:ok, binary()} | {:error, term()}
```

# `document`

```elixir
@type document() :: %{data: binary(), content_type: String.t()}
```

# `convert_pdf_to_png`

```elixir
@callback convert_pdf_to_png(pdf_data :: binary(), opts :: keyword()) :: convert_result()
```

Converts a PDF to PNG format.

Returns the PNG binary data on success.

---

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