Files
fil/packages/elixir/lib/kreuzberg/format_metadata.ex

38 lines
1.9 KiB
Elixir
Raw Normal View History

2026-06-01 23:40:55 +02:00
# 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.FormatMetadata do
@moduledoc """
Format-specific metadata (discriminated union).
Only one format type can exist per extraction result. This provides
type-safe, clean metadata without nested optionals.
"""
@typedoc "Format-specific metadata (discriminated union)."
@type t :: term()
@type pdf :: %{type: :pdf, metadata: Kreuzberg.PdfMetadata.t()}
@type docx :: %{type: :docx, metadata: Kreuzberg.DocxMetadata.t()}
@type excel :: %{type: :excel, metadata: Kreuzberg.ExcelMetadata.t()}
@type email :: %{type: :email, metadata: Kreuzberg.EmailMetadata.t()}
@type pptx :: %{type: :pptx, metadata: Kreuzberg.PptxMetadata.t()}
@type archive :: %{type: :archive, metadata: Kreuzberg.ArchiveMetadata.t()}
@type image :: %{type: :image, metadata: Kreuzberg.ImageMetadata.t()}
@type xml :: %{type: :xml, metadata: Kreuzberg.XmlMetadata.t()}
@type text :: %{type: :text, metadata: Kreuzberg.TextMetadata.t()}
@type html :: %{type: :html, metadata: Kreuzberg.HtmlMetadata.t()}
@type ocr :: %{type: :ocr, metadata: Kreuzberg.OcrMetadata.t()}
@type csv :: %{type: :csv, metadata: Kreuzberg.CsvMetadata.t()}
@type bibtex :: %{type: :bibtex, metadata: Kreuzberg.BibtexMetadata.t()}
@type citation :: %{type: :citation, metadata: Kreuzberg.CitationMetadata.t()}
@type fiction_book :: %{type: :fiction_book, metadata: Kreuzberg.FictionBookMetadata.t()}
@type dbf :: %{type: :dbf, metadata: Kreuzberg.DbfMetadata.t()}
@type jats :: %{type: :jats, metadata: Kreuzberg.JatsMetadata.t()}
@type epub :: %{type: :epub, metadata: Kreuzberg.EpubMetadata.t()}
@type pst :: %{type: :pst, metadata: Kreuzberg.PstMetadata.t()}
@type code :: %{type: :code, value: String.t()}
end