Yep we can do that by detecting if the first arg is a function and then using it as the callback if `params` are optional. If params are null we can always see if the second function and assume it's the callback as normal.