# 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.ResultFormat do
  @moduledoc """
  Result-shape selection for extraction results.

  Distinct from `OutputFormat` (which controls rendering — Plain, Markdown,
  HTML, etc.). `ResultFormat` controls the *shape* of the result: a unified content
  blob vs. an element-based decomposition.
  """

  @typedoc "Result-shape selection for extraction results."
  @type t :: :unified | :element_based

  @unified :unified
  @element_based :element_based

  @doc "Unified format with all content in `content` field"
  @spec unified() :: t()
  def unified, do: @unified
  @doc "Element-based format with semantic element extraction"
  @spec element_based() :: t()
  def element_based, do: @element_based
end
