package androidx.slice {

  public abstract class SliceManager {
    method public abstract androidx.slice.Slice bindSlice(android.net.Uri);
    method public abstract androidx.slice.Slice bindSlice(android.content.Intent);
    method public static androidx.slice.SliceViewManager getInstance(android.content.Context);
    method public abstract android.net.Uri mapIntentToUri(android.content.Intent);
    method public abstract void pinSlice(android.net.Uri);
    method public abstract void registerSliceCallback(android.net.Uri, androidx.slice.SliceViewManager.SliceCallback);
    method public abstract void registerSliceCallback(android.net.Uri, java.util.concurrent.Executor, androidx.slice.SliceViewManager.SliceCallback);
    method public abstract void unpinSlice(android.net.Uri);
    method public abstract void unregisterSliceCallback(android.net.Uri, androidx.slice.SliceViewManager.SliceCallback);
  }

  public static abstract interface SliceManager.SliceCallback {
    method public abstract void onSliceUpdated(androidx.slice.Slice);
  }

  public class SliceUtils {
    method public static int getLoadingState(androidx.slice.Slice);
    method public static java.util.List<androidx.slice.SliceItem> getSliceActions(androidx.slice.Slice);
    method public static androidx.slice.Slice parseSlice(java.io.InputStream, java.lang.String) throws java.io.IOException;
    method public static void serializeSlice(androidx.slice.Slice, android.content.Context, java.io.OutputStream, java.lang.String, androidx.slice.SliceUtils.SerializeOptions) throws java.io.IOException;
    field public static final int LOADING_ALL = 0; // 0x0
    field public static final int LOADING_COMPLETE = 2; // 0x2
    field public static final int LOADING_PARTIAL = 1; // 0x1
  }

  public static class SliceUtils.SerializeOptions {
    ctor public SliceUtils.SerializeOptions();
    method public androidx.slice.SliceUtils.SerializeOptions setActionMode(int);
    method public androidx.slice.SliceUtils.SerializeOptions setImageMode(int);
    field public static final int MODE_DISABLE = 2; // 0x2
    field public static final int MODE_REMOVE = 1; // 0x1
    field public static final int MODE_THROW = 0; // 0x0
  }

}

package androidx.slice.widget {

  public class EventInfo {
    ctor public EventInfo(int, int, int, int);
    method public void setPosition(int, int, int);
    field public static final int ACTION_TYPE_BUTTON = 1; // 0x1
    field public static final int ACTION_TYPE_CONTENT = 3; // 0x3
    field public static final int ACTION_TYPE_SEE_MORE = 4; // 0x4
    field public static final int ACTION_TYPE_SLIDER = 2; // 0x2
    field public static final int ACTION_TYPE_TOGGLE = 0; // 0x0
    field public static final int POSITION_CELL = 2; // 0x2
    field public static final int POSITION_END = 1; // 0x1
    field public static final int POSITION_START = 0; // 0x0
    field public static final int ROW_TYPE_GRID = 1; // 0x1
    field public static final int ROW_TYPE_LIST = 0; // 0x0
    field public static final int ROW_TYPE_MESSAGING = 2; // 0x2
    field public static final int ROW_TYPE_SHORTCUT = -1; // 0xffffffff
    field public static final int STATE_OFF = 0; // 0x0
    field public static final int STATE_ON = 1; // 0x1
    field public int actionCount;
    field public int actionIndex;
    field public int actionPosition;
    field public int actionType;
    field public int rowIndex;
    field public int rowTemplateType;
    field public int sliceMode;
    field public int state;
  }

  public final class SliceLiveData {
    ctor public SliceLiveData();
    method public static android.arch.lifecycle.LiveData<androidx.slice.Slice> fromIntent(android.content.Context, android.content.Intent);
    method public static android.arch.lifecycle.LiveData<androidx.slice.Slice> fromUri(android.content.Context, android.net.Uri);
  }

  public class SliceView extends android.view.ViewGroup implements android.arch.lifecycle.Observer {
    ctor public SliceView(android.content.Context);
    ctor public SliceView(android.content.Context, android.util.AttributeSet);
    ctor public SliceView(android.content.Context, android.util.AttributeSet, int);
    ctor public SliceView(android.content.Context, android.util.AttributeSet, int, int);
    method public int getMode();
    method public java.util.List<androidx.slice.SliceItem> getSliceActions();
    method public void onChanged(androidx.slice.Slice);
    method public void setMode(int);
    method public void setOnSliceActionListener(androidx.slice.widget.SliceView.OnSliceActionListener);
    method public void setScrollable(boolean);
    method public void setSlice(androidx.slice.Slice);
    method public void setSliceActions(java.util.List<androidx.slice.SliceItem>);
    method public void setTint(int);
    field public static final int MODE_LARGE = 2; // 0x2
    field public static final int MODE_SHORTCUT = 3; // 0x3
    field public static final int MODE_SMALL = 1; // 0x1
  }

  public static abstract interface SliceView.OnSliceActionListener {
    method public abstract void onSliceAction(androidx.slice.widget.EventInfo, androidx.slice.SliceItem);
  }

}

