#pragma once #include #include namespace ZShell::llm { class LlmMarkdown : public QObject { Q_OBJECT QML_ELEMENT QML_UNCREATABLE("Blocks are produced by LlmSegment") public: enum class Type : int { Text = 0, // Paragraph, list, quote, table; "text" is markdown source Heading, // "level" + "text" (markdown source of the content) Code, // "language" + "code" Math // "latex" (display math, without the $$ delimiters) }; Q_ENUM(Type) explicit LlmMarkdown(QObject* parent = nullptr) : QObject(parent) {} }; } // namespace ZShell::llm