I can see how the Studio/Lua interface would be difficult. I think the most useful and flexible solution is to render regular GUI objects into a panel, so Lua would not need access to the whole Studio UI. Plugins can register new panels like they can buttons, then they can parent GUI objects to the panel. While not easy, I think this would be easier (and more flexible) than trying to allow Lua access to the whole native studio UI system.
I’ve written up a proposal containing some of those details before, but I’m trying to keep it simple avoid describing implementation this time.
Edit: Couldn’t find anything with a staff reply, but I found an old post by you and another post by me.