UNPKG

core-sdk-raro

Version:

core-sdk--raro

281 lines (280 loc) 10.7 kB
/* eslint-disable @typescript-eslint/no-explicit-any */ import { FaceTecCustomization, FaceTecOvalCustomization, FaceTecCancelButtonCustomization, FaceTecFeedbackBarCustomization, FaceTecFrameCustomization, FaceTecExitAnimationCustomization, FaceTecSessionTimerCustomization, FaceTecExitAnimationStyle, FaceTecCancelButtonLocation, FaceTecOverlayCustomization, FaceTecGuidanceCustomization, FaceTecResultScreenCustomization, FaceTecEnterFullScreenCustomization, FaceTecSecurityWatermarkImage, FaceTecSecurityWatermarkCustomization, } from './FaceTecCustomization' import { FaceTecLoggingMode } from './FaceTecLogging' import { FaceTecSession, FaceTecSessionFromIFrame } from './FaceTecSession' import { FaceTecAuditTrailType, FaceTecSDKStatus, FaceTecSessionStatus, FaceTecIDScanStatus, FaceTecFaceScanProcessor, FaceTecIDScanProcessor, FaceTecIDScanNextStep, FaceTecFaceScanResultCallback, FaceTecIDScanResultCallback, FaceTecRetryScreen, InitializeCallback, FaceTecAuditTrailImagesToReturn, } from './FaceTecPublicApi' export declare let FaceTecSDK: { /** * Initialize FaceTecSDK in development mode using a Device Identifier Key - HTTPS Log mode. **/ initializeInDevelopmentMode: ( deviceKeyIdentifier: string, publicEncryptionKey: string, onInitializationComplete: InitializeCallback ) => void /** * Initialize FaceTecSDK in production mode using a Production Key - SFTP Log mode. **/ initializeInProductionMode: ( productionKey: string, deviceKeyIdentifier: string, publicEncryptionKey: string, onInitializationComplete: InitializeCallback ) => void /** * Ensure that the FaceTecSDK is initialized and ready before attempting to start a Session. **/ getStatus: () => FaceTecSDKStatus /** * Return Enums associated with FaceTecSDK.getStatus. **/ FaceTecSDKStatus: typeof FaceTecSDKStatus /** * Return friendly names for the enums in FaceTecSDKStatus. **/ getFriendlyDescriptionForFaceTecSDKStatus: ( enumValue: FaceTecSDKStatus ) => string /** * Core function calls that create and launch the FaceTec SDK Interface. **/ FaceTecSession: typeof FaceTecSession /** * Core function calls that create and launch the FaceTec SDK Interface in an IFrame. **/ FaceTecSessionFromIFrame: typeof FaceTecSessionFromIFrame /** * Developer created class for handling processing of the FaceTec SDK FaceScan. **/ FaceTecFaceScanProcessor: typeof FaceTecFaceScanProcessor /** * Developer created class for handling processing of the FaceTec SDK ID Scan. **/ FaceTecIDScanProcessor: typeof FaceTecIDScanProcessor /** * FaceTec SDK Logging Mode API. **/ FaceTecLoggingMode: typeof FaceTecLoggingMode /** * The Session status from the session that was just performed. **/ FaceTecSessionStatus: typeof FaceTecSessionStatus /** * The ID Scan status from the ID Scan that was just performed. **/ FaceTecIDScanStatus: typeof FaceTecIDScanStatus /** * Return Friendly names for the enums FaceTecIDScanStatus. **/ getFriendlyDescriptionForFaceTecIDScanStatus: ( enumValue: FaceTecIDScanStatus ) => string /** * FaceTec SDK ID Scan process behavior on starting. * Configure whether to show the ID Type Selection Screen, or skip the entire ID Scan process and exit. **/ FaceTecIDScanNextStep: typeof FaceTecIDScanNextStep /** * An object of this type is passed back to the developer inside of FaceTecFaceScanProcessor.processSessionResultWhileFaceTecSDKWaits. * in order to control the FaceTec SDK UX flow based on the result of the processing of the FaceTec SDK 3D FaceScan. **/ FaceTecFaceScanResultCallback: typeof FaceTecFaceScanResultCallback /** * An object of this type is passed back to the developer inside of FaceTecIDScanProcessor.processSessionResultWhileFaceTecSDKWaits. * in order to control the FaceTec SDK UX flow based on the result of the processing of the FaceTec SDK 3D FaceScan. **/ FaceTecIDScanResultCallback: typeof FaceTecIDScanResultCallback /** * Return friendly names for the enums in FaceTecSessionStatus. **/ getFriendlyDescriptionForFaceTecSessionStatus: ( enumValue: FaceTecSessionStatus ) => string /** * Return the FaceTecSDK customization object. **/ FaceTecCustomization: typeof FaceTecCustomization /** * Return the FaceTecSDK oval customization object. **/ FaceTecOvalCustomization: typeof FaceTecOvalCustomization /** * Return the FaceTecSDK cancel button customization object. **/ FaceTecCancelButtonCustomization: typeof FaceTecCancelButtonCustomization /** * Return the FaceTecSDK exit animation customization object. **/ FaceTecExitAnimationCustomization: typeof FaceTecExitAnimationCustomization /** * Return the FaceTecSDK feedback customization object. **/ FaceTecFeedbackBarCustomization: typeof FaceTecFeedbackBarCustomization /** * Return the FaceTecSDK frame customization object. **/ FaceTecFrameCustomization: typeof FaceTecFrameCustomization /** * Return the FaceTecSDK session timer customization object. **/ FaceTecSessionTimerCustomization: typeof FaceTecSessionTimerCustomization /** * Return the FaceTecSDK Interface customization object. **/ FaceTecOverlayCustomization: typeof FaceTecOverlayCustomization /** * Return the FaceTecSDK Guidance customization object. **/ FaceTecGuidanceCustomization: typeof FaceTecGuidanceCustomization /** * Return the FaceTecSDK Result customization object. **/ FaceTecResultScreenCustomization: typeof FaceTecResultScreenCustomization /** * Return the FaceTecSDK Result customization object. **/ FaceTecEnterFullScreenCustomization: typeof FaceTecEnterFullScreenCustomization /** * Apply the specified customization parameters for FaceTec SDK. **/ setCustomization: ( customizationOrSecurityChangeOperation: FaceTecCustomization ) => void /** * Apply the specified customization parameters for FaceTec SDK to use when low light mode is active. * If not configured or set to nil, we will fallback to using the FaceTecCustomization instance configured with setCustomization(), or our default customizations if setCustomization() has not been called. **/ setLowLightCustomization: ( lowLightCustomization: FaceTecCustomization | null ) => void /** * Apply the specified customization parameters for FaceTec SDK to use when dynamic dimming is active. * If not configured or set to nil, we will fallback to using the FaceTecCustomization instance configured with setCustomization(), or our default customizations if setCustomization() has not been called. **/ setDynamicDimmingCustomization: ( dynamicDimmingCustomization: FaceTecCustomization | null ) => void /** * Return the available FaceTecSDK exit animation styles. **/ FaceTecExitAnimationStyle: typeof FaceTecExitAnimationStyle /** * Return the available FaceTecSDK cancel button locations. **/ FaceTecCancelButtonLocation: typeof FaceTecCancelButtonLocation /** * Return the FaceTecSDK Security Watermark customization object. */ FaceTecSecurityWatermarkCustomization: typeof FaceTecSecurityWatermarkCustomization /** * Return the available FaceTecSDK Watermark image names. */ FaceTecSecurityWatermarkImage: typeof FaceTecSecurityWatermarkImage /** * Convenience method to get the time when a lockout will end. * This will be null if the user is not locked out. */ getLockoutEndTime: number | null /** * True if the user is locked out of FaceTec SDK. **/ isLockedOut: () => boolean /** * Get the available FaceTecSDK audit trail types. **/ FaceTecAuditTrailType: typeof FaceTecAuditTrailType /** * Get the available FaceTecSDK Device Security Flag types */ FaceTecRetryScreen: typeof FaceTecRetryScreen /** * To be deprecated in a future release - replaced by configureLocalization. */ configureLocalizationWithJSON: (localizationJSON: { [key: string]: string }) => void /** * API to set FaceTec Localization Strings with the strings passed in as arguments. */ configureLocalization: (localizationJSON: { [key: string]: string }) => void /** * Configure the custom localized strings to be used for groups, fields, and placeholder text on ID Scan's User OCR Confirmation Screen. * @param ocrLocalizationJSON Optional object created from a JSON that follows our template file of configurable groups, fields, and placeholder texts: "FaceTec_OCR_Customization.json". By default, this is null and the strings used will be our internal defaults. */ configureOCRLocalization: (ocrLocalizationJSON: { [key: string]: any }) => void /** * Set the desired FaceTecSDK audit trail behavior. **/ auditTrailType: FaceTecAuditTrailType /** * Set the maximum number of FaceTecSDK audit trail images to return. Valid values are ONE or UP_TO_SIX, default is ONE. **/ setMaxAuditTrailImages: ( auditTrailImagesToReturn: FaceTecAuditTrailImagesToReturn ) => void /** * Maximum number of Audit Trail images to return. * Default is ONE. **/ FaceTecAuditTrailImagesToReturn: typeof FaceTecAuditTrailImagesToReturn /** * Unload FaceTecSDK and all its resources. **/ unload: (callback: () => void) => void /** * Developer API to set logging mode to enumerated FaceTecLoggingMode. * Default - Log all important messages to the console. * LocalhostOnly - Remove all logging except for when developing on Localhost. * Usage Example - FaceTecSDK.setFaceTecLoggingMode(FaceTecSDK.FaceTecLoggingMode.LocalhostOnly). */ setFaceTecLoggingMode: (enumValue: FaceTecLoggingMode) => void /** * Return the current FaceTecSDK version. **/ version: () => string /** * Change the default location of the FaceTecSDK resources to be loaded. Default is "../FaceTecSDK.js/resources". **/ setResourceDirectory: (resourceDirectory: string) => void /** * Change the default location of the FaceTec SDK images to be loaded. Default is "./FaceTec_images". * Images must all exist in one flat directory in the directory specified. * Please see the sample-custom-images-location for a working example of this API in action. **/ setImagesDirectory: (directory: string) => void /** * Create a FaceTec Rest API compatible User Agent string to be used in header element X-User-Agent when using FaceTec's Rest Api Services. **/ createFaceTecAPIUserAgentString: (sessionID: string) => string }