@DeviceScope @Component( modules = [ DeviceModule::class ], dependencies = [ // shared dependencies AppComponent::class ] ) interface DeviceComponent { fun provideViewModel(): DeviceViewModel @Component.Factory interface Factory { fun create( appComponent: AppComponent ): DeviceComponent } }