Есть вот вот такое представление схемы где показано направление dependency rule:
1) UI зависит от ViewModel потому что имеет ссылку на экземпляр класса ViewModel
2) ViewModel зависит от UseCase потому что имеет ссылку на экземпляр класса UseCase (в данном случае UseCase это класс без всякой имплементации интерфейсов)
3) UseCase содержит ссылку на репозиторий (интерфейс), но на схеме показана зависимость от Repository к UseCase. Это потому что используется принцип Dependency inversion?
4) Тоже самое для DataBase. Ссылка на интерфейс, а значит DIP. Поэтому зависимость обратная?