UNPKG

@ha_tecno/react-native-sdk

Version:

React Native SDK for biometric authentication, liveness detection, and fingerprint recognition

98 lines (92 loc) 2.01 kB
import { api } from '../http/api'; export type BiometricLoginParams = { deviceModel: string; uid: string; image: string; finger: string; exposure: number; zoom: number; meanScore: number; stdScore: number; varScore: number; }; export type BiometricRegisterParams = { deviceModel: string; uid: string; imagens: string[]; finger: string; exposure: number; zoom: number; meanScore: number; stdScore: number; varScore: number; }; export type BiometricResponse = { status: number; message?: string; [key: string]: any; }; export const biometricService = { loginWithFingerprint: async ({ deviceModel, uid, image, finger, exposure, zoom, meanScore, stdScore, varScore, }: BiometricLoginParams): Promise<BiometricResponse> => { try { const result = await api.post('/v3/verify', { device_model: deviceModel, UID: uid, image, finger, exposure, zoom, mean_score: meanScore, std_score: stdScore, var_score: varScore, }); return result as BiometricResponse; } catch (error: any) { return { status: error?.status || 400, message: error?.message || 'Erro ao verificar biometria', }; } }, registerWithFingerprint: async ({ deviceModel, uid, imagens, finger, exposure, zoom, meanScore, stdScore, varScore, }: BiometricRegisterParams): Promise<BiometricResponse> => { try { const result = await api.post('/v3/enroll-imagens', { device_model: deviceModel, UID: uid, imagens, finger, exposure, zoom, mean_score: meanScore, std_score: stdScore, var_score: varScore, }); return result as BiometricResponse; } catch (error: any) { return { status: error?.status || 400, message: error?.message || 'Erro ao cadastrar biometria', }; } }, };