# 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.Chunk do
  @moduledoc """
  A text chunk with optional embedding and metadata.

  Chunks are created when chunking is enabled in `ExtractionConfig`. Each chunk
  contains the text content, optional embedding vector (if embedding generation
  is configured), and metadata about its position in the document.
  """

  @typedoc "A text chunk with optional embedding and metadata."
  @type t :: %__MODULE__{
          content: String.t() | nil,
          chunk_type: String.t() | nil,
          embedding: [float()] | nil,
          metadata: map()
        }

  defstruct content: nil,
            chunk_type: :unknown,
            embedding: nil,
            metadata: nil
end
