SO
Вопрос твой понял. Но не обязательно ведь даггеровкие компоненты/модуи описывать в фичевых модулях (описывать там их хорошо для изоляции, это да, но пока в голову не приходит воркэраунда другого)
Если например, в :app весь вайринг зависимостей происходит. Сразу подумал про скоупы - но тут он возможны, потому что аннотацию скоупа ты будешь описывать в api модуле своей фичи, а о нем твой app знает. Все твои фичевые даггер модули описываются тут.
Если :B хочет использовать зависимость(интерфейс) из :A, то ему достаточно подключить :A:api. А реализацию ему спустит сверху app, который про всех знает