如何使对Firebase的多个调用更安全? -迅速

因此,我的应用程序中有一个“删除帐户”按钮,当用户点击它时,它将删除Auth帐户以及其他3个Firestore文档。我担心一个功能可能成功而其他功能可能失败。如何确保如果一项功能失败,所有功能都会失败?

    func deleteUser () {
        let currentUser = Auth.auth().currentUser

        Auth.auth().currentUser?.delete(completion: { (error) in
            if error != nil { return }
            else {
                Firestore.firestore().collection("Users").document(currentUser!.uid).delete { (error) in
                    if error != nil { return }
                    else {
                        Firestore.firestore().collection("Posts").document(currentUser!.uid).delete { (error) in
                            if error != nil { return }
                            else {
                                transitionToHomeScreen()
                            }
                        }
                    }
                }
            }
        })
    }