Наверняка вы не раз видели тип FutureOr в Dart. В документации сказано что это тип, представляющий значения Future<T> или T. Размышления зачем подобная конструкция может быть нужна, в статье от Hasan Basri Bayat. #статья