// Signature format: 4.0
package androidx.slice {

  @RequiresApi(19) public final class Slice implements androidx.versionedparcelable.VersionedParcelable {
    method public java.util.List<java.lang.String!> getHints();
    method public java.util.List<androidx.slice.SliceItem!> getItems();
    method public android.net.Uri getUri();
    field public static final String EXTRA_SELECTION = "android.app.slice.extra.SELECTION";
  }

  @RequiresApi(28) public class SliceConvert {
    method public static android.app.slice.Slice? unwrap(androidx.slice.Slice?);
    method public static androidx.slice.Slice? wrap(android.app.slice.Slice?, android.content.Context);
  }

  @RequiresApi(19) public final class SliceItem implements androidx.versionedparcelable.VersionedParcelable {
    method public static android.text.ParcelableSpan createSensitiveSpan();
    method public void fireAction(android.content.Context?, android.content.Intent?) throws android.app.PendingIntent.CanceledException;
    method public android.app.PendingIntent? getAction();
    method public String getFormat();
    method public java.util.List<java.lang.String!> getHints();
    method public androidx.core.graphics.drawable.IconCompat? getIcon();
    method public int getInt();
    method public long getLong();
    method public CharSequence? getRedactedText();
    method public androidx.slice.Slice? getSlice();
    method public String? getSubType();
    method public CharSequence? getText();
    method public boolean hasHint(String);
    method public void onPostParceling();
    method public void onPreParceling(boolean);
  }

  @RequiresApi(19) public abstract class SliceManager {
    method public abstract int checkSlicePermission(android.net.Uri, int, int);
    method public static androidx.slice.SliceManager getInstance(android.content.Context);
    method public abstract java.util.List<android.net.Uri!> getPinnedSlices();
    method public abstract void grantSlicePermission(String, android.net.Uri);
    method public abstract void revokeSlicePermission(String, android.net.Uri);
  }

  public abstract class SliceProvider extends android.content.ContentProvider {
    ctor public SliceProvider();
    ctor public SliceProvider(java.lang.String!...);
    method public final int bulkInsert(android.net.Uri, android.content.ContentValues![]);
    method @RequiresApi(19) public final android.net.Uri? canonicalize(android.net.Uri);
    method public final int delete(android.net.Uri, String?, String![]?);
    method @RequiresApi(19) public java.util.List<android.net.Uri!> getPinnedSlices();
    method public final String? getType(android.net.Uri);
    method public final android.net.Uri? insert(android.net.Uri, android.content.ContentValues?);
    method @RequiresApi(19) public abstract androidx.slice.Slice? onBindSlice(android.net.Uri);
    method public final boolean onCreate();
    method public android.app.PendingIntent? onCreatePermissionRequest(android.net.Uri, String);
    method @RequiresApi(19) public abstract boolean onCreateSliceProvider();
    method @RequiresApi(19) public java.util.Collection<android.net.Uri!> onGetSliceDescendants(android.net.Uri);
    method @RequiresApi(19) public android.net.Uri onMapIntentToUri(android.content.Intent);
    method @RequiresApi(19) public void onSlicePinned(android.net.Uri);
    method @RequiresApi(19) public void onSliceUnpinned(android.net.Uri);
    method @RequiresApi(28) public final android.database.Cursor? query(android.net.Uri, String![]?, android.os.Bundle?, android.os.CancellationSignal?);
    method public final android.database.Cursor? query(android.net.Uri, String![]?, String?, String![]?, String?);
    method @RequiresApi(16) public final android.database.Cursor? query(android.net.Uri, String![]?, String?, String![]?, String?, android.os.CancellationSignal?);
    method public final int update(android.net.Uri, android.content.ContentValues?, String?, String![]?);
  }

}

package androidx.slice.core {

  @RequiresApi(19) public interface SliceAction {
    method public android.app.PendingIntent getAction();
    method public CharSequence? getContentDescription();
    method public androidx.core.graphics.drawable.IconCompat? getIcon();
    method public int getImageMode();
    method public String? getKey();
    method public int getPriority();
    method public CharSequence getTitle();
    method public boolean isActivity();
    method public boolean isChecked();
    method public boolean isDefaultToggle();
    method public boolean isToggle();
    method public androidx.slice.core.SliceAction setChecked(boolean);
    method public androidx.slice.core.SliceAction setContentDescription(CharSequence);
    method public androidx.slice.core.SliceAction setKey(String);
    method public androidx.slice.core.SliceAction setPriority(@IntRange(from=0) int);
  }

}

