// Signature format: 4.0
package androidx.profileinstaller {

  public class ProfileInstallReceiver extends android.content.BroadcastReceiver {
    ctor public ProfileInstallReceiver();
    method public void onReceive(android.content.Context, android.content.Intent?);
    field public static final String ACTION_BENCHMARK_OPERATION = "androidx.profileinstaller.action.BENCHMARK_OPERATION";
    field public static final String ACTION_INSTALL_PROFILE = "androidx.profileinstaller.action.INSTALL_PROFILE";
    field public static final String ACTION_SAVE_PROFILE = "androidx.profileinstaller.action.SAVE_PROFILE";
    field public static final String ACTION_SKIP_FILE = "androidx.profileinstaller.action.SKIP_FILE";
  }

  public class ProfileInstaller {
    method @WorkerThread public static void writeProfile(android.content.Context);
    method @WorkerThread public static void writeProfile(android.content.Context, java.util.concurrent.Executor, androidx.profileinstaller.ProfileInstaller.DiagnosticsCallback);
    field public static final int DIAGNOSTIC_CURRENT_PROFILE_DOES_NOT_EXIST = 2; // 0x2
    field public static final int DIAGNOSTIC_CURRENT_PROFILE_EXISTS = 1; // 0x1
    field public static final int DIAGNOSTIC_PROFILE_IS_COMPRESSED = 5; // 0x5
    field public static final int DIAGNOSTIC_REF_PROFILE_DOES_NOT_EXIST = 4; // 0x4
    field public static final int DIAGNOSTIC_REF_PROFILE_EXISTS = 3; // 0x3
    field public static final int RESULT_ALREADY_INSTALLED = 2; // 0x2
    field public static final int RESULT_BASELINE_PROFILE_NOT_FOUND = 6; // 0x6
    field public static final int RESULT_BENCHMARK_OPERATION_FAILURE = 15; // 0xf
    field public static final int RESULT_BENCHMARK_OPERATION_SUCCESS = 14; // 0xe
    field public static final int RESULT_BENCHMARK_OPERATION_UNKNOWN = 16; // 0x10
    field public static final int RESULT_DELETE_SKIP_FILE_SUCCESS = 11; // 0xb
    field public static final int RESULT_DESIRED_FORMAT_UNSUPPORTED = 5; // 0x5
    field public static final int RESULT_INSTALL_SKIP_FILE_SUCCESS = 10; // 0xa
    field public static final int RESULT_INSTALL_SUCCESS = 1; // 0x1
    field public static final int RESULT_IO_EXCEPTION = 7; // 0x7
    field public static final int RESULT_META_FILE_REQUIRED_BUT_NOT_FOUND = 9; // 0x9
    field public static final int RESULT_NOT_WRITABLE = 4; // 0x4
    field public static final int RESULT_PARSE_EXCEPTION = 8; // 0x8
    field public static final int RESULT_SAVE_PROFILE_SIGNALLED = 12; // 0xc
    field public static final int RESULT_SAVE_PROFILE_SKIPPED = 13; // 0xd
    field public static final int RESULT_UNSUPPORTED_ART_VERSION = 3; // 0x3
  }

  public static interface ProfileInstaller.DiagnosticsCallback {
    method public void onDiagnosticReceived(int, Object?);
    method public void onResultReceived(int, Object?);
  }

  public class ProfileInstallerInitializer implements androidx.startup.Initializer<androidx.profileinstaller.ProfileInstallerInitializer.Result> {
    ctor public ProfileInstallerInitializer();
    method public androidx.profileinstaller.ProfileInstallerInitializer.Result create(android.content.Context);
    method public java.util.List<java.lang.Class<? extends androidx.startup.Initializer<?>>!> dependencies();
  }

  public static class ProfileInstallerInitializer.Result {
    ctor public ProfileInstallerInitializer.Result();
  }

  public final class ProfileVerifier {
    method public static com.google.common.util.concurrent.ListenableFuture<androidx.profileinstaller.ProfileVerifier.CompilationStatus!> getCompilationStatusAsync();
    method @WorkerThread public static androidx.profileinstaller.ProfileVerifier.CompilationStatus writeProfileVerification(android.content.Context);
  }

  public static class ProfileVerifier.CompilationStatus {
    method public int getProfileInstallResultCode();
    method public boolean hasProfileEnqueuedForCompilation();
    method public boolean isCompiledWithProfile();
    field public static final int RESULT_CODE_COMPILED_WITH_PROFILE = 1; // 0x1
    field public static final int RESULT_CODE_COMPILED_WITH_PROFILE_NON_MATCHING = 3; // 0x3
    field public static final int RESULT_CODE_ERROR_CACHE_FILE_EXISTS_BUT_CANNOT_BE_READ = 131072; // 0x20000
    field public static final int RESULT_CODE_ERROR_CANT_WRITE_PROFILE_VERIFICATION_RESULT_CACHE_FILE = 196608; // 0x30000
    field public static final int RESULT_CODE_ERROR_PACKAGE_NAME_DOES_NOT_EXIST = 65536; // 0x10000
    field public static final int RESULT_CODE_ERROR_UNSUPPORTED_API_VERSION = 262144; // 0x40000
    field public static final int RESULT_CODE_NO_PROFILE = 0; // 0x0
    field public static final int RESULT_CODE_PROFILE_ENQUEUED_FOR_COMPILATION = 2; // 0x2
  }

}

