UNPKG

@cardscan.ai/insurance-cardscan-react

Version:

A library that makes it easy to add health insurance card scanning to any web application

53 lines (52 loc) 2.49 kB
import React, { ReactNode } from "react"; import "./styles.scss"; import { Messages, IndicatorOptions, InternalOptions, TCameraOptions, ResponseTypeMap, EligibilityResponseTypeMap, ProgressInfoResponseTypeMap } from "../types/scanview.types"; import { CameraPermissionModalConfig } from "../types/Modals/ErrorModal"; import { HelpModalConfig } from "../components/ErrorModal/components/HelpModal/HelpModal"; import { RequestPermissionModalConfig } from "../components/RequestingPermissionModal/RequestingPermissionModal"; import { NoCameraModalConfig } from "../types/Modals/NoCameraModal"; import { CardScanError, EligibilityInfo, LogLevel, NameCase } from "../types/types"; import { WebToMobileHandOffConfig } from "../components/ErrorModal/components/WebToMobile/WebToMobile"; declare global { interface Window { Cypress?: any; } } declare const CardScanView: <Name extends NameCase = "snake">(props: CardScanViewProps<Name>) => React.ReactElement; export interface CardScanViewProps<Name extends NameCase = "snake"> { logging?: LogLevel; live?: boolean; sessionToken: string; fullScreen?: boolean; autoScanTimeout?: number; onSuccess: (detail: ResponseTypeMap[Name]) => void; onEligibilitySuccess?: (detail: EligibilityResponseTypeMap[Name]) => void; onEligibilityError?: (error: CardScanError) => void; onCancel?: () => void; onError?: (error: CardScanError) => void; onRetry?: () => void; onProgress?: (progressInfo: ProgressInfoResponseTypeMap[Name]) => void; onScanStart?: (cardId: string, isBackside: boolean) => void; messages?: Messages; backsideSupport?: boolean; eligibility?: EligibilityInfo; closeButton?: ReactNode; successIndicator?: ReactNode; errorIndicator?: ReactNode; indicatorOptions?: IndicatorOptions; cameraPermissionModalConfig?: CameraPermissionModalConfig; autoSwitchActiveColor?: string; autoSwitchInactiveColor?: string; progressBarColor?: string; widgetBackgroundColor?: string; messageFontSize?: string; messageTextColor?: string; messageBackgroundColor?: string; webToMobileHandoffConfig?: WebToMobileHandOffConfig; helpModalConfig?: HelpModalConfig; requestPermissionModalConfig?: RequestPermissionModalConfig; noCameraModalConfig?: NoCameraModalConfig; _internal?: InternalOptions<Name>; cameraOptions?: TCameraOptions; } export default CardScanView;