The result is an error message, callback successes if message is null
typedef ProviderAuthCallback = Future<String?>? Function();