package android.arch.lifecycle {

  public abstract class Lifecycle {
    ctor public Lifecycle();
    method public abstract void addObserver(android.arch.lifecycle.LifecycleObserver);
    method public abstract android.arch.lifecycle.Lifecycle.State getCurrentState();
    method public abstract void removeObserver(android.arch.lifecycle.LifecycleObserver);
  }

  public static final class Lifecycle.Event extends java.lang.Enum {
    method public static android.arch.lifecycle.Lifecycle.Event valueOf(java.lang.String);
    method public static final android.arch.lifecycle.Lifecycle.Event[] values();
    enum_constant public static final android.arch.lifecycle.Lifecycle.Event ON_ANY;
    enum_constant public static final android.arch.lifecycle.Lifecycle.Event ON_CREATE;
    enum_constant public static final android.arch.lifecycle.Lifecycle.Event ON_DESTROY;
    enum_constant public static final android.arch.lifecycle.Lifecycle.Event ON_PAUSE;
    enum_constant public static final android.arch.lifecycle.Lifecycle.Event ON_RESUME;
    enum_constant public static final android.arch.lifecycle.Lifecycle.Event ON_START;
    enum_constant public static final android.arch.lifecycle.Lifecycle.Event ON_STOP;
  }

  public static final class Lifecycle.State extends java.lang.Enum {
    method public boolean isAtLeast(android.arch.lifecycle.Lifecycle.State);
    method public static android.arch.lifecycle.Lifecycle.State valueOf(java.lang.String);
    method public static final android.arch.lifecycle.Lifecycle.State[] values();
    enum_constant public static final android.arch.lifecycle.Lifecycle.State CREATED;
    enum_constant public static final android.arch.lifecycle.Lifecycle.State DESTROYED;
    enum_constant public static final android.arch.lifecycle.Lifecycle.State INITIALIZED;
    enum_constant public static final android.arch.lifecycle.Lifecycle.State RESUMED;
    enum_constant public static final android.arch.lifecycle.Lifecycle.State STARTED;
  }

  public abstract interface LifecycleObserver {
  }

  public abstract interface LifecycleOwner {
    method public abstract android.arch.lifecycle.Lifecycle getLifecycle();
  }

  public abstract class OnLifecycleEvent implements java.lang.annotation.Annotation {
  }

}