// Path: Rabbits/rabbits/src/main/java/com/kyleduo/rabbits/rules/Rule.java
// public interface Rule {
//     enum Operator {
//         IS, STARTS_WITH, ENDS_WITH, IN, CONTAINS, EXISTS
//     }
// 
//     boolean verify(Action action);
// }


import android.os.Bundle;
import android.support.annotation.NonNull;
import com.kyleduo.rabbits.rules.Rule;
import java.util.Map;
package com.kyleduo.rabbits;




/**
 * Represent a Navigation into which the caller put extras and configures and perform the navigation.
 *
 * Created by kyle on 26/01/2018.
 */

@SuppressWarnings("unused")
public interface Navigation {
    Navigation addIntentFlags(int flags);

    Navigation setIntentFlags(int flags);

    Navigation newTask();

    Navigation clearTop();

    Navigation singleTop();

    Navigation putExtra(@NonNull String key, Object value);

    Navigation putExtras(Bundle bundle);

    Navigation putExtras(Map<String, Object> extras);

    Navigation addInterceptor(Interceptor interceptor);

// Path: Rabbits/rabbits/src/main/java/com/kyleduo/rabbits/rules/Rule.java
// public interface Rule {
//     enum Operator {
//         IS, STARTS_WITH, ENDS_WITH, IN, CONTAINS, EXISTS
//     }
// 
//     boolean verify(Action action);
// }


// Path: Rabbits/rabbits/src/main/java/com/kyleduo/rabbits/Navigation.java
import android.os.Bundle;
import android.support.annotation.NonNull;
import com.kyleduo.rabbits.rules.Rule;
import java.util.Map;

package com.kyleduo.rabbits;




/**
 * Represent a Navigation into which the caller put extras and configures and perform the navigation.
 *
 * Created by kyle on 26/01/2018.
 */

@SuppressWarnings("unused")
public interface Navigation {
    Navigation addIntentFlags(int flags);

    Navigation setIntentFlags(int flags);

    Navigation newTask();

    Navigation clearTop();

    Navigation singleTop();

    Navigation putExtra(@NonNull String key, Object value);

    Navigation putExtras(Bundle bundle);

    Navigation putExtras(Map<String, Object> extras);

    Navigation addInterceptor(Interceptor interceptor);

    Navigation addInterceptor(Interceptor interceptor, Rule rule);