There is a usecase where I need to have an AppiumCommandExecutor constructed with my HttpClient.Factory then pass it to the AppiumDriver constructors. Not limited to this case only but the usecase I have is to add some extra headers to the underlaying RemoteWebDriver HttpRequests by overriding HttpClient execute method in my HttpClient.Factory.
Some enterprise companies have a service gateway that requires an auth headers. We can make the desktop browser RemoteWebDriver requests pass the gateway with the required headers because RemoteWebDriver allows my CommandExecutor. The same is blocked with Appium RemoteWebDriver.
Please add additional AppiumDriver const which takes user-provided CommandExecutor.