There’s good news and bad news…
The good news is that there is some support in the Lua API for presets contained in src/lua/modules.c.
The bad news is that it was written 10 years ago and doesn’t appear to do much. I came across it several weeks ago and haven’t had time to play with it.