# 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.DocumentRevision do
  @moduledoc """
  A single tracked change embedded in a document.

  Populated by per-format extractors that understand change-tracking metadata
  (DOCX `w:ins`/`w:del`/`w:rPrChange`, ODT `text:change-*`, …). Every
  extractor defaults to `ExtractionResult.revisions = None` until a
  format-specific implementation is added.
  """

  @typedoc "A single tracked change embedded in a document."
  @type t :: %__MODULE__{
          revision_id: String.t() | nil,
          author: String.t() | nil,
          timestamp: String.t() | nil,
          kind: String.t() | nil,
          anchor: String.t() | nil | nil,
          delta: map()
        }

  defstruct revision_id: nil,
            author: nil,
            timestamp: nil,
            kind: :insertion,
            anchor: nil,
            delta: nil
end
