Packages
html_to_markdown
3.6.20
3.9.0
3.8.3
3.8.2
3.8.1
3.8.0
3.8.0-rc.2
3.8.0-rc.1
3.7.2
3.7.1
3.7.0
3.6.21
3.6.20
3.6.19
3.6.18
3.6.17
3.6.16
3.6.15
3.6.14
3.6.13
3.6.11
3.6.10
3.6.9
3.6.8
3.6.3
3.6.1
3.6.0
3.6.0-rc.25
3.6.0-rc.23
3.6.0-rc.22
3.6.0-rc.21
3.6.0-rc.20
3.6.0-rc.17
3.6.0-rc.16
3.6.0-rc.14
3.6.0-rc.13
3.6.0-rc.12
3.6.0-rc.11
3.6.0-rc.10
3.6.0-rc.9
3.6.0-rc.7
3.6.0-rc.3
3.6.0-rc.2
3.6.0-rc.1
3.5.7
3.5.5
3.5.3
3.5.2
3.5.1
3.5.0
3.5.0-rc.1
3.4.0
3.4.0-rc.45
3.4.0-rc.44
3.4.0-rc.42
3.4.0-rc.41
3.4.0-rc.40
3.4.0-rc.25
3.4.0-rc.24
3.4.0-rc.23
3.4.0-rc.21
3.4.0-rc.20
3.4.0-rc.18
3.4.0-rc.16
3.4.0-rc.15
3.4.0-rc.14
3.4.0-rc.13
3.4.0-rc.12
3.4.0-rc.11
3.4.0-rc.9
3.4.0-rc.8
3.4.0-rc.2
3.4.0-rc.1
3.3.2
3.2.4
3.2.2
3.2.1
3.2.0
3.1.0
3.0.2
3.0.1
3.0.0
2.30.0
2.29.0
2.28.6
2.28.5
2.28.4
2.28.3
2.28.2
2.28.1
2.28.0
2.27.3
2.27.2
2.27.1
2.27.0
2.26.3
2.26.2
2.26.1
2.25.1
2.25.0
2.24.6
2.24.5
2.24.4
2.24.3
2.24.1
2.23.4
2.23.3
2.23.2
2.23.1
2.23.0
2.22.5
2.22.2
2.22.1
2.22.0
2.21.1
2.20.0
2.19.8
2.19.7
2.19.6
2.19.5
2.19.4
2.19.3
2.19.2
2.19.1
2.19.0
2.18.0
2.16.1
2.16.0
2.15.0
2.14.11
2.14.10
2.14.9
2.14.8
2.14.7
2.14.6
2.14.3
2.14.2
2.14.1
2.14.0
2.13.0
2.12.1
2.12.0
2.11.4
2.11.3
2.11.1
2.10.1
2.9.2
2.9.1
2.9.0
2.8.3
High-performance HTML to Markdown converter
Current section
Files
Jump to
Current section
Files
lib/html_to_markdown/node_content.ex
# This file is auto-generated by alef — DO NOT EDIT.
# alef:hash:06a07f59ff322c5fa6ed3766823355b3456bd29753f0289e14bc8234d55bb3e7
# To regenerate: alef generate
# To verify freshness: alef verify --exit-code
defmodule HtmlToMarkdown.NodeContent do
@moduledoc """
The semantic content type of a document node.
Uses internally tagged representation (`"node_type": "heading"`) for JSON serialization.
"""
@typedoc "The semantic content type of a document node."
@type t :: term()
@typedoc "A heading element (h1-h6)."
@type heading :: %{type: :heading, level: non_neg_integer(), text: String.t()}
@typedoc "A paragraph of text."
@type paragraph :: %{type: :paragraph, text: String.t()}
@typedoc "A list container (ordered or unordered). Children are `ListItem` nodes."
@type list_variant :: %{type: :list, ordered: boolean()}
@typedoc "A single list item."
@type list_item :: %{type: :list_item, text: String.t()}
@typedoc "A table with structured cell data."
@type table :: %{type: :table, grid: HtmlToMarkdown.TableGrid.t()}
@typedoc "An image element."
@type image :: %{type: :image, description: String.t(), src: String.t(), image_index: non_neg_integer()}
@typedoc "A code block or inline code."
@type code :: %{type: :code, text: String.t(), language: String.t()}
@typedoc "A block quote container."
@type quote :: :quote
@typedoc "A definition list container."
@type definition_list :: :definition_list
@typedoc "A definition list entry with term and description."
@type definition_item :: %{type: :definition_item, term: String.t(), definition: String.t()}
@typedoc "A raw block preserved as-is (e.g. `<script>`, `<style>` content)."
@type raw_block :: %{type: :raw_block, format: String.t(), content: String.t()}
@typedoc "A block of key-value metadata pairs (from `<head>` meta tags)."
@type metadata_block :: %{type: :metadata_block, entries: [map()]}
@typedoc "A section grouping container (auto-generated from heading hierarchy)."
@type group :: %{type: :group, label: String.t(), heading_level: non_neg_integer(), heading_text: String.t()}
end