// Path: ferro-mvp/src/main/java/com/agna/ferro/mvp/component/ScreenComponent.java
// public interface ScreenComponent<V extends BaseView> {
//     void inject(V view);
// }
// 
// Path: sample/src/main/java/com/agna/ferro/sample/app/AppComponent.java
// @PerApplication
// @Component(modules = AppModule.class)
// public interface AppComponent {
// 
//     //Exposed to sub-graphs.
//     Context context();
// 
//     BookRepository bookRepository();
// 
// }


import com.agna.ferro.mvp.component.ScreenComponent;
import com.agna.ferro.mvp.component.scope.PerScreen;
import com.agna.ferro.sample.app.AppComponent;
import dagger.Component;
package com.agna.ferro.sample.ui.screen.book;



/**
 * component for Book screen
 */
@PerScreen
@Component(dependencies = AppComponent.class, modules = BookScreenModule.class)
// Path: ferro-mvp/src/main/java/com/agna/ferro/mvp/component/ScreenComponent.java
// public interface ScreenComponent<V extends BaseView> {
//     void inject(V view);
// }
// 
// Path: sample/src/main/java/com/agna/ferro/sample/app/AppComponent.java
// @PerApplication
// @Component(modules = AppModule.class)
// public interface AppComponent {
// 
//     //Exposed to sub-graphs.
//     Context context();
// 
//     BookRepository bookRepository();
// 
// }


// Path: sample/src/main/java/com/agna/ferro/sample/ui/screen/book/BookScreenComponent.java
import com.agna.ferro.mvp.component.ScreenComponent;
import com.agna.ferro.mvp.component.scope.PerScreen;
import com.agna.ferro.sample.app.AppComponent;
import dagger.Component;

package com.agna.ferro.sample.ui.screen.book;



/**
 * component for Book screen
 */
@PerScreen
@Component(dependencies = AppComponent.class, modules = BookScreenModule.class)
interface BookScreenComponent extends ScreenComponent<BookFragmentView> {