title: Dagger Hilt: cannot be provided without an @Provides-annotated method
body: <p>When I use interface like below in viewmodel</p>
  <pre><code>class MainViewModel @ViewModelInject constructor(
      private val trafficImagesRepository: TrafficImageRepository, &lt;----------------- Not working
      @Assisted private val savedStateHandle: SavedStateHandle
  ) : ViewModel() 
  </code></pre>
  <p>I am getting an error like below</p>
  <pre><code>cannot be provided without an @Provides-annotated method.
    public abstract static class SingletonC implements MainApplication_GeneratedInjector,
  </code></pre>
  <p>My interface is like below</p>
  <pre><code>interface TrafficImageRepository {
      suspend fun getTrafficImages() : NetworkResponse&lt;TrafficData, ErrorTrafficImages&gt;
  }
  </code></pre>
  <p>And Repository class is like below</p>
  <pre><code>class DefaultTrafficImagesRepository @Inject constructor(private val trafficImageService: TrafficImageService) : TrafficImageRepository {
  
      override suspend fun getTrafficImages(): NetworkResponse&lt;TrafficData, ErrorTrafficImages&gt; {
          lateinit var response: NetworkResponse&lt;TrafficData, ErrorTrafficImages&gt;
          withContext(IO) {
              val currentTimestamp = Constants.getCurrentTime()
              response = trafficImageService.getTrafficImages(currentTimestamp)
          }
          return response
      }
  }
  </code></pre>
  <p>But when I use DefaultTrafficImagesRepository class directly instead of Interface my app is able to build without any error.</p>
  <pre><code>class MainViewModel @ViewModelInject constructor(
      private val trafficImagesRepository: DefaultTrafficImagesRepository , &lt;----------------- Working Fine
      @Assisted private val savedStateHandle: SavedStateHandle
  ) : ViewModel()
  </code></pre>