use async_trait;
use Result;
use Debug;
/// The authorization code handed back by the provider, after `state` was verified.
;
/// Receives the provider's redirect.
///
/// The implementation must be ready to receive *before* the authorization URL is
/// opened, which is why [`RedirectListener::redirect_uri`] is available immediately —
/// a loopback listener has already bound its port by then.