# This file is auto-generated by alef — DO NOT EDIT.
# alef:hash:4e15143f4af1ae8bafbdb1506ef057da924484c66a19483966333558ad437e75
# To regenerate: alef generate
# To verify freshness: alef verify --exit-code
# Issues & docs: https://github.com/kreuzberg-dev/alef
defmodule Kreuzberg.OcrBackendType do
  @moduledoc "OCR backend types."

  @typedoc "OCR backend types."
  @type t :: :tesseract | :easy_ocr | :paddle_ocr | :custom

  @tesseract :tesseract
  @easy_ocr :easy_ocr
  @paddle_ocr :paddle_ocr
  @custom :custom

  @doc "Tesseract OCR (native Rust binding)"
  @spec tesseract() :: t()
  def tesseract, do: @tesseract
  @doc "EasyOCR (Python-based, via FFI)"
  @spec easy_ocr() :: t()
  def easy_ocr, do: @easy_ocr
  @doc "PaddleOCR (Python-based, via FFI)"
  @spec paddle_ocr() :: t()
  def paddle_ocr, do: @paddle_ocr
  @doc "Custom/third-party OCR backend"
  @spec custom() :: t()
  def custom, do: @custom
end
