package hu.naturlecso.naturshutd

import javax.inject.Singleton

import dagger.Component
import hu.naturlecso.naturshutd.host.HostComponent
import hu.naturlecso.naturshutd.ui.adapter.CommandListAdapter
import hu.naturlecso.naturshutd.ui.viewmodel.CommandViewModel
import hu.naturlecso.naturshutd.ui.viewmodel.HostEditViewModel
import hu.naturlecso.naturshutd.ui.viewmodel.HostItemViewModel

@Singleton
@Component(modules = [(AppModule::class)])
interface AppComponent {
    fun hostComponentBuilder(): HostComponent.Builder

    fun inject(commandViewModel: CommandViewModel)
    fun inject(hostItemViewModel: HostItemViewModel)
    fun inject(hostEditViewModel: HostEditViewModel)
    fun inject(commandListAdapter: CommandListAdapter)
}
