Como verificar se um endereço de email já está em uso Firebase

trabalhando em algunsFirAuth coisas, mas por algum motivo não consigo descobrir como verificar se os endereços de e-mail propostos pelos usuários já foram usados. Eu tentei ligar.fetchProvidersForEmail como sugerido em outras perguntas há algum tempo, mas por qualquer motivo, simplesmente não funcionará. Além disso, sou muito verde quando se trata de manipuladores de conclusão, portanto, qualquer crítica construtiva sobre isso também seria bem-vinda. Então, por enquanto, as partes do meu código que pertencem a isso são:

import UIKit
import Firebase
class LoginViewController: UIViewController {
var reply : Bool = true
@IBOutlet weak var emailTxt: UITextField!

@IBAction func nextScreen(sender: UIButton) {
print(emailCheck(emailTxt.text!))
}

 func emailCheck(input : String)->Bool{
    let pullEmails = FIRAuth.auth()!.fetchProvidersForEmail(input, completion:{
        result,error in
        var decision : Bool = true
        if error == "nil" {
            print(error)
            self.reply = true
        }else{
            print(error)
            self.reply = false
        }
    })
    return reply
}
}

Então, o que acontece com isso é que a resposta sempre imprimetrue, provavelmente porque eu o defini explicitamente no topo. De qualquer forma, é quase como se o manipulador de conclusão não estivesse esperando para ser realmente concluído antes dereturns O valor que. Eu tentei descobrir como usá-los, bem comoAsyncTasks, mas eu queria saber se houve um erro simples que cometi aqui que poderia resolver isso. Obrigado a todos!

questionAnswers(2)

yourAnswerToTheQuestion