OptionalbrandCSS custom-property snapshot emitted as a :root{} block in the exported
document, so the export's stylesheet (which reads var(--mj-…, fallback))
renders in the app's theme. HTML export only. Keys must be valid
custom-property names (--like-this). Entries are DROPPED when the key is
invalid or the value carries declaration-escape / network-call characters
(<>{};@\, url(, expression() — plain colors, var(), and
color-mix() pass. When omitted and ExportOptions.includeTheme is true,
the current theme is auto-snapshotted from document.documentElement (see
DEFAULT_EXPORT_THEME_TOKENS).
OptionallogoLogo URL. In HTML it is fetched and inlined as a data URI (so the file stays
self-contained) and rendered above the title — requires
ExportOptions.includeCSS, since it needs its stylesheet rule. In markdown it is
referenced by URL. JSON carries it as a string; plain text omits it.
If the fetch fails, or the response isn't content-type: image/*, the raw URL is
emitted instead — so the exported file will reach out to that URL when opened.
There is no size or timeout guard on the fetch: a very large logo inflates the
export.
OptionaltitleOverrides the exported document's title (defaults to the conversation name).
OptionaltrademarkA short trademark / attribution line (e.g. © 2026 Acme Association · Powered by Betty) rendered at the FOOT of the exported document: a styled HTML
footer, a markdown/text trailer, and a field in the JSON branding block.
In HTML it needs its stylesheet rule, so — like the logo — it is emitted only when
ExportOptions.includeCSS is true. The markdown/text/JSON trailers have no such
dependency and always emit.
NOT escaped for markdown: a value containing _, ], ), or a newline can break
the surrounding markdown. Supply plain text (HTML and JSON are escaped).
Branding applied to exported files, across EVERY format. HTML gets the full treatment (theme colors, an inlined logo, the title, and a trademark footer); JSON/markdown/text carry the title and trademark (markdown also references the logo). Hosts supply this via
mj-conversation-chat-area'sexportBrandinginput. Color theming (brandTokens) is HTML-only — it has no meaning in the data/plain-text formats.