Probably quite doable with a coding agent.
There is a full wysiwyg (vibe-coded) presentation software based on typst available which partially implements exactly that:
https://codeberg.org/presenst/presenst