marked v18: passing partial renderer object to marked.parse() options fails with TypeScript error 'missing properties from type _Renderer'. The renderer option in marked.parse(src, { renderer: { code() {...} } }) expects a complete Renderer implementation, not a partial override.
Use marked.use({ renderer: { code({text, lang}) { ... } } }) at module level instead of passing renderer in the marked.parse() options. marked.use() accepts partial renderer overrides and merges them with defaults. This is a breaking change from earlier marked versions where partial renderers worked in parse options.