# ── CodeLytical FaceCapture SDK — consumer rules ─────────────────────────────
# These rules are applied automatically to any app that depends on this SDK.

# Keep public SDK surface
-keep public class com.codelyticalhub.facecapture.FaceCaptureSDK { *; }
-keep public class com.codelyticalhub.facecapture.FaceCaptureConfig { *; }
-keep public class com.codelyticalhub.facecapture.FaceCaptureResult { *; }
-keep public class com.codelyticalhub.facecapture.FaceCaptureResult$* { *; }

# Keep Parcelable
-keep class * implements android.os.Parcelable {
    public static final android.os.Parcelable$Creator *;
}

# Keep internal Activity (manifest reference must survive shrinking)
-keep class com.codelyticalhub.facecapture.internal.FaceCaptureActivity { *; }

# ML Kit
-keep class com.google.mlkit.** { *; }
-keep class com.google.android.gms.** { *; }
-dontwarn com.google.mlkit.**
-dontwarn com.google.android.gms.**

# CameraX
-keep class androidx.camera.** { *; }
-dontwarn androidx.camera.**

# Kotlin
-dontwarn kotlinx.coroutines.**
-keepclassmembernames class kotlinx.** {
    volatile <fields>;
}