PinLockScreen

fun PinLockScreen(onPinEntered: (String) -> Unit, modifier: Modifier = Modifier, pinLength: Int = 6, title: String = "Enter PIN", subtitle: String? = "Unlock your app", isVerifying: Boolean = false, isError: Boolean = false, attemptsRemaining: Int? = null, biometricEnabled: Boolean = false, biometricPromptTitle: String = "Unlock", biometricPromptSubtitle: String? = null, secureScreen: Boolean = false, onBiometricSuccess: () -> Unit? = null, onBiometricError: (BiometricAuthResult) -> Unit? = null, onForgotPin: () -> Unit? = null, onCancel: () -> Unit? = null, headerContent: @Composable () -> Unit? = null)

Reusable app lock screen for PIN entry.

Verification is the caller's responsibility — pass onPinEntered and validate against your stored hash. Optionally supports biometric unlock via BiometricAuthenticator.

Requires androidx.biometric:biometric when biometricEnabled is true.