Привет, я пытаюсь создать виджет Visiblity, который отображается, если пользователь находится в массиве базы данных Firebase. Выглядит это так (массив членов): 
Как видите, я создал StreamBuilder, который должен возвращать виджет Visibility, если имя пользователя текущего пользователя находится в этом массиве:
StreamBuilder<QuerySnapshot>(
stream: _firestore.collection('chats').snapshots(),
builder: (context, snapshot){
if(!snapshot.hasData){
}else {
final chats = snapshot.data.documents;
List<ChatCard> chatCards = [];
for (var chat in chats) {
final String nameOfChat = chat.data['name'];
final String lastMessageSent = chat.data['lastMessageSent'];
final List members = chat.data['members'];
final ChatCard chatCard = ChatCard(
nameOfChat: nameOfChat ?? '',
lastMessageSent: lastMessageSent ?? '',
);
chatCards.add(chatCard);
}
return Visibility(
visible: checkIfOnAnyChats(),
child: Expanded(
child: ListView(
children: chatCards,
),
),
);
}
}
),
Вот как выглядит будущее 'checkIfOnAnyChats()
':
Future<bool> checkIfOnAnyChats() async {
FirebaseUser user = await _auth.currentUser();
final QuerySnapshot result = await _firestore
.collection('chats')
.where('members', arrayContains: _username)
.getDocuments();
final List<DocumentSnapshot> documents = result.documents;
if(documents.length > 0) {
setState(() {
return true;
});
}else{
setState(() {
return false;
});
}
}
Я пытаюсь присвоить это значение логическому значению «visible», но оно не работает потому что это Future bool , а не обычный bool.
Есть предложения?
Спасибо.