Exchanges an authorization code for an access token with the given server.
Supports multiple client authentication methods as specified in OAuth 2.1:
The authorization server's base URL
Configuration object containing client info, auth code, etc.
Promise resolving to OAuth tokens
When token exchange fails or authentication is invalid
Exchanges an authorization code for an access token with the given server.
Supports multiple client authentication methods as specified in OAuth 2.1: