Primitive functions return elements that back standard Markdown syntax. Each one accepts parameters that plain Markdown may not, and can be intercepted via .extend to customize their behavior and appearance across the entire document, even if created via standard Markdown syntax.
For example, extending .heading affects every #, ##, and so on. Extending .math affects every $ ... $ and $$$ ... $$$. See Element styling for the full mechanism.
.heading docs ↗ backs #, ##, … headings. Exposes explicit control over depth, numbering, page breaks, and cross-reference identifiers.
.paragraph docs ↗ backs regular paragraphs.
.link docs ↗ backs [label](url "title").
.image docs ↗ backs , with additional control over figure wrapping and media storage.
.figure docs ↗ backs the block that wraps an image or other content.
.pagebreak docs ↗ backs <<<. Can be extended to decorate every forced page break in the document.