# 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.ProcessingStage do
  @moduledoc """
  Processing stages for post-processors.

  Post-processors are executed in stage order (Early → Middle → Late).
  Use stages to control the order of post-processing operations.
  """

  @typedoc "Processing stages for post-processors."
  @type t :: :early | :middle | :late

  @early :early
  @middle :middle
  @late :late

  @doc "Early stage - foundational processing."
  @spec early() :: t()
  def early, do: @early
  @doc "Middle stage - content transformation."
  @spec middle() :: t()
  def middle, do: @middle
  @doc "Late stage - final enrichment."
  @spec late() :: t()
  def late, do: @late
end
