use windows::Security::Credentials::UI::{UserConsentVerifier, UserConsentVerifierAvailability};
pub fn is_windows_hello_configured() -> bool {
check_windows_hello_availability().unwrap_or_default()
}
fn check_windows_hello_availability() -> Result<bool, windows::core::Error> {
let availability_async = UserConsentVerifier::CheckAvailabilityAsync()?;
let availability = availability_async.join()?;
match availability {
UserConsentVerifierAvailability::Available => Ok(true),
UserConsentVerifierAvailability::DeviceNotPresent => Ok(false),
UserConsentVerifierAvailability::NotConfiguredForUser => Ok(false),
UserConsentVerifierAvailability::DisabledByPolicy => Ok(false),
_ => Ok(false),
}
}