title: Riverpod FutureProvider provides AsyncValue Dependency Injection not possible
body: <p>I have an abstract class <code>LectureRepository</code> implemented by <code>LectureRepositoryImpl</code>. <code>LectureRepositoryImpl</code> initialises <code>SharedPreferences sharedPreferences</code> with</p>
  <pre><code>LectureLocalDataSourceImpl({@required this.sharedPreferences})
  </code></pre>
  <p>Now I want to use Riverpod to access the repository so I do:</p>
  <pre><code>    FutureProvider&lt;LectureLocalDataSource&gt;(
    (ref) async {
      return LectureLocalDataSourceImpl(sharedPreferences: await SharedPreferences.getInstance());
    },
  );
  </code></pre>
  <p>but now in <code>lectureRepositoryProvider</code>, wenn I read the <code>lectureLocalDataRepositoryProvider</code> I get an AsyncValue in the value <code>localDataSource</code>, which I cannot assign here:</p>
  <pre><code>final lectureRepositoryProvider = FutureProvider&lt;LectureRepository&gt;((ref) async {
    final localDataSource = ref.read(lectureLocalDataRepositoryProvider);
    return LectureRepositoryImpl(localDataSource: localDataSource);
  });
  </code></pre>
  <p>How should I handle the AsyncValue?</p>