There is currently no way to change the path where moc_predefs.h is generated.
I prefer to have my build tree separate from my source code, for which I use $(OutDir) defined in General tab of Visual Studio 2019.
Under Qt Meta_Object Compiler -> moc settings, I can set the Output Directory to $(OutDir). I was assuming that the moc_predefs.h would be generated at this location, but this is not the case. It is always generated at $(Configuration) location, which seems to be hardcoded somewhere and I cannot find it.
Reporting this as a bug because it breaks my workflow and I suppose having a build tree separate from the source tree is quite a common and reasonable requirement. With the current setting I have to live with having a debug folder having the moc_predefs.h file created within my source tree.