-keep class com.android.rkpdapp.metrics.ProvisioningAttempt { *; }
-keep class com.android.rkpdapp.interfaces.ServiceManagerInterface { *; }
-keep class com.android.rkpdapp.service.** { *; }
-keep class com.android.rkpdapp.utils.Settings { *; }
-keep class com.android.rkpdapp.ConfirmCertificates { *; }
-keep class com.android.rkpdapp.provisioner.PeriodicProvisioner {
  public static java.lang.AutoCloseable lock();
}

# Required for tests that use Mockito's thenThrow with checked exceptions.
-keepattributes Exceptions

# Minimal set of keep rules for mocked methods with checked exceptions.
# This can be relaxed to specific packages if that simplifies testing.
# See also https://r8.googlesource.com/r8/+/refs/heads/master/compatibility-faq.md#r8-full-mode.
-keepclassmembers,allowshrinking,allowoptimization,allowobfuscation,allowaccessmodification class android.hardware.security.keymint.IRemotelyProvisionedComponent { public <methods>; }
-keepclassmembers,allowshrinking,allowoptimization,allowobfuscation,allowaccessmodification class com.android.rkpdapp.IGetRegistrationCallback { public <methods>; }
-keepclassmembers,allowshrinking,allowoptimization,allowobfuscation,allowaccessmodification class com.android.rkpdapp.interfaces.SystemInterface { public <methods>; }
-keepclassmembers,allowshrinking,allowoptimization,allowobfuscation,allowaccessmodification class com.android.rkpdapp.provisioner.Provisioner { public <methods>; }
