Если вам нужно проверить данные, находящиеся в нескольких коллекциях, вы не сможете сделать это с помощью одного запроса Firestore. (В Firestore нет запросов на присоединение.) Вы также не можете писать запросы, чтобы выборочно исключать определенные значения из полей.
С вашей текущей структурой вам сначала нужно будет загрузить всех соответствующих друзей в память. Затем вы можете настроить постраничный запрос для пользователей и просматривать его, пока не найдете достаточно документов, соответствующих вашим критериям, которые вы проверяете индивидуально в коде клиента.