I feel bad not taking the time to answer this sooner. The documentation can be found here. I suggest reading getting familiar with Rule based model configuration, Software model concept and Implementing model rules in a plugin.
Generally speaking, the Gradle internal API, especially for the native, should be avoided when extending the model as Gradle doesn’t make any promise in terms of backward compatibility and breaking changes. That been said, if you simply want to prototype a proof of concept, you would definitely cut down your work in using certain API that handles the binaries dimension, etc. The documentation for those API won’t be on your side but thanks to the software model rules, it’s quite easy to understand without documentation. Start by looking at how the plugins are implemented. This should give you lots of good information.
I hope this helps, don’t hesitate to ask more questions,