null внутри стрима - это другая задача, о которой вопрошающий ничего не заявлял. В очередной раз Вы, как и участники утренней переписки, додумали что-то и патаетесь решать назаявленную проблему
отсутствие самого стрима решается добавлением вопроса перед pipe:
number$ =
data.stream$?.pipe(map(({number}) => number));
[number]="number$ | async"
с чем прекрасно работает async
если в стриме есть какие-то внутренние ограничения, то это отдельно дорабатывается фильтром, либо мапом. Но об этом не было вопроса