Ошибка Cannot create an instance of class

У меня есть ViewModel, в конструкторе которого есть интерфейс. Реализация этого интерфейса занимается класс WorkoutDataImpl. Всё это связывает hilt.

@HiltViewModel
class AddNewWorkoutViewModel @Inject constructor(
    private val contract: Contract,
) : ViewModel(), ButtonSaveContract {

    private val inputFieldMap = mutableMapOf<String, String>()
    fun addNewWorkout(rowID: String, nameWorkout: String) {
        inputFieldMap[rowID] = nameWorkout
    }
    override fun onButtonSave() {
        viewModelScope.launch {

        }
    }
}

interface Contract{
    operator fun invoke(rowID: String, nameWorkout: String): String
}

class WorkoutDataImpl @Inject constructor(): Contract {
    override fun invoke(rowID: String, nameWorkout: String): String {
        TODO("Not yet implemented")
    }
}

@Module
@InstallIn(ViewModelComponent::class)
abstract class ViewModelModule {

    @ViewModelScoped
    @Binds
    abstract fun bindDataRepository(repository: WorkoutDataImpl): Contract
}

Вызов этого ViewModel происходит в конструкторе composable функции:

addNewWorkoutViewModel: AddNewWorkoutViewModel = viewModel()

Почему у меня при запуске приложения, вылетает ошибка:

Cannot create an instance of class com.example...
at androidx.lifecycle.ViewModelProvider$NewInstanceFactory.create(ViewModelProvider.kt:204)
at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:322)
at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:304)
at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:278)
и так далее

Ответы (0 шт):