I’m not quite sure what you mean?
You can create your own MIDI controller (based on custom CC messages in Waveform and the Engine) already.
And now the code is open source you could create your own subclass if you need something specific?
I would warn that the control surface code is some of the oldest in the codebase and because it supports a lot of 3rd party devices we no longer physically have we don’t refactor it. It certainly wouldn’t be written like that today…
FYI, I don’t have Waveform so maybe my questions are a bit off but I am trying to get an overview of everything that pertains to implementation not dealing with Waveform(code we use) and that bit of code confused me.
I would definitely grab Waveform as it has a feature for everything in the Engine and might help give an idea of how the classes map on to end-user features?