The Custom Data source has quite a few more configurable options compared to the built-in data source types. This because the built-in types are predictable.
For the Ajax() one we do not need a parameterMap function to be exposed and the parameter transformation happens under the hood in such way that the request can bind to the DataSourceRequest class and attribute on the server.
The custom data source needs to provide far more configurable options as we have no way of knowing all the possible variances of parameter names and what the server side would expect.
I am pleased to let you know that we have now released a new API reference for ASP.NET and Core where you can easily see the available options by typing into a convenient search as you type input: