import {useCallback} from 'react'; import {useCameraPermission} from 'react-native-vision-camera'; export interface PPGCameraPermissionController { hasCameraPermission: boolean; requestCameraPermission: () => Promise; } export function usePPGCamera(): PPGCameraPermissionController { const {hasPermission, requestPermission} = useCameraPermission(); const requestCameraPermission = useCallback(async (): Promise => { if (hasPermission) { return true; } return requestPermission(); }, [hasPermission, requestPermission]); return { hasCameraPermission: hasPermission, requestCameraPermission, }; }