// Path: privvy/src/main/java/com/metova/privvy/RouteData.java
// @AutoValue
// public abstract class RouteData {
// 
//     public abstract ViewType viewType();
//     public abstract Class<?> viewClass();
//     public abstract int viewId();
// 
//     public static Builder Builder() {
//         return new AutoValue_RouteData.Builder().viewId(0);
//     }
// 
//     public String tag() {
//         return viewClass().getSimpleName();
//     }
// 
//     @AutoValue.Builder
//     public interface Builder {
//         Builder viewType(ViewType viewType);
//         Builder viewClass(Class<?> viewClass);
//         Builder viewId(@IdRes int viewId);
//         RouteData build();
//     }
// }
// 
// Path: privvy/src/main/java/com/metova/privvy/ViewType.java
// public enum ViewType {
//     ACTIVITY,
//     FRAGMENT
// }


import com.metova.privvy.RouteData;
import com.metova.privvy.ViewType;
import com.metova.privvy.sample.R;
import dagger.Subcomponent;
package com.metova.privvy.sample.ui.floatingnumber.buttons;


@ButtonScope
@Subcomponent(modules = {ButtonModule.class})
public interface ButtonComponent {

    RouteData ROUTE_DATA = RouteData.Builder()
            .viewType(ViewType.FRAGMENT)
            .viewClass(ButtonFragment.class)
            .viewId(R.id.button_component)
            .build();

// Path: privvy/src/main/java/com/metova/privvy/RouteData.java
// @AutoValue
// public abstract class RouteData {
// 
//     public abstract ViewType viewType();
//     public abstract Class<?> viewClass();
//     public abstract int viewId();
// 
//     public static Builder Builder() {
//         return new AutoValue_RouteData.Builder().viewId(0);
//     }
// 
//     public String tag() {
//         return viewClass().getSimpleName();
//     }
// 
//     @AutoValue.Builder
//     public interface Builder {
//         Builder viewType(ViewType viewType);
//         Builder viewClass(Class<?> viewClass);
//         Builder viewId(@IdRes int viewId);
//         RouteData build();
//     }
// }
// 
// Path: privvy/src/main/java/com/metova/privvy/ViewType.java
// public enum ViewType {
//     ACTIVITY,
//     FRAGMENT
// }


// Path: sample/src/main/java/com/metova/privvy/sample/ui/floatingnumber/buttons/ButtonComponent.java
import com.metova.privvy.RouteData;
import com.metova.privvy.ViewType;
import com.metova.privvy.sample.R;
import dagger.Subcomponent;

package com.metova.privvy.sample.ui.floatingnumber.buttons;


@ButtonScope
@Subcomponent(modules = {ButtonModule.class})
public interface ButtonComponent {

    RouteData ROUTE_DATA = RouteData.Builder()
            .viewType(ViewType.FRAGMENT)
            .viewClass(ButtonFragment.class)
            .viewId(R.id.button_component)
            .build();

    ButtonContract.Presenter presenter();