Ответ
@Module + @Provides или @Binds для предоставления зависимостей.
Для внедрения извне используй @Component.Builder или @Component.Factory:
@Component(modules = [MyModule::class])
interface MyComponent {
@Component.Factory
interface Factory {
fun create(@BindsInstance externalDep: ExternalDependency): MyComponent
}
}
// Использование:
val component = DaggerMyComponent.factory()
.create(ExternalDependencyImpl())