UNPKG

@regulaforensics/face-sdk

Version:

This is an npm module for Regula Face SDK. It allows you to easily compaire faces using your phone's camera.

190 lines (161 loc) • 9.45 kB
import { CameraPosition } from './customization/camera_position' import { CustomizationColors } from './customization/customization_colors' import { CustomizationFonts } from './customization/customization_fonts' import { CustomizationImages } from './customization/customization_images' import { Customization, CustomButtonTappedCompletion } from './customization/customization' import { Font } from './customization/font' import { ScreenOrientation } from './customization/screen_orientation' export { CameraPosition, CustomizationColors, CustomizationFonts, CustomizationImages, Customization, CustomButtonTappedCompletion, Font, ScreenOrientation } import { FaceSDKVersion } from './init/face_sdk_version' import { InitConfig } from './init/init_config' import { InitException } from './init/init_exception' import { InitErrorCode } from './init/init_exception' import { LicenseException } from './init/license_exception' import { LicensingResultCode } from './init/license_exception' export { FaceSDKVersion, InitConfig, InitException, InitErrorCode, LicenseException, LicensingResultCode } import { DetectFaceResult } from './detect_faces/detect_face_result' import { DetectFacesAttributeResult } from './detect_faces/detect_faces_attribute_result' import { DetectFacesAttribute } from './detect_faces/detect_faces_attribute' import { DetectFacesBackendException, DetectFacesBackendErrorCode } from './detect_faces/detect_faces_backend_exception' import { DetectFacesConfig } from './detect_faces/detect_faces_config' import { DetectFacesException, DetectFacesErrorCode } from './detect_faces/detect_faces_exception' import { DetectFacesRequest } from './detect_faces/detect_faces_request' import { DetectFacesResponse } from './detect_faces/detect_faces_response' import { DetectFacesScenario } from './detect_faces/detect_faces_scenario' export { DetectFaceResult, DetectFacesAttributeResult, DetectFacesAttribute, DetectFacesBackendException, DetectFacesBackendErrorCode, DetectFacesConfig, DetectFacesException, DetectFacesErrorCode, DetectFacesRequest, DetectFacesResponse, DetectFacesScenario } import { FaceCaptureConfig } from './face_capture/face_capture_config' import { FaceCaptureException, FaceCaptureErrorCode } from './face_capture/face_capture_exception' import { FaceCaptureImage, ImageType } from './face_capture/face_capture_image' import { FaceCaptureResponse } from './face_capture/face_capture_response' export { FaceCaptureConfig, FaceCaptureException, FaceCaptureErrorCode, FaceCaptureImage, ImageType, FaceCaptureResponse } import { OutputImageCrop, OutputImageCropAspectRatio } from './image_params/output_image_crop' import { OutputImageParams } from './image_params/output_image_params' import { Point } from './image_params/point' import { Rect } from './image_params/rect' import { Size } from './image_params/size' export { OutputImageCrop, OutputImageCropAspectRatio, OutputImageParams, Point, Rect, Size } import { ImageQualityCharacteristicName } from './image_quality/image_quality_characteristic_name' import { ImageQualityCharacteristic } from './image_quality/image_quality_characteristic' import { ImageQualityGroup } from './image_quality/image_quality_group' import { ImageQualityRange } from './image_quality/image_quality_range' import { ImageQualityResult, ImageQualityGroupName, ImageQualityResultStatus } from './image_quality/image_quality_result' export { ImageQualityCharacteristicName, ImageQualityCharacteristic, ImageQualityGroup, ImageQualityRange, ImageQualityResult, ImageQualityGroupName, ImageQualityResultStatus } import { LivenessBackendException, LivenessBackendErrorCode } from './liveness/liveness_backend_exception' import { LivenessConfig, RecordingProcess, LivenessType, LivenessSkipStep } from './liveness/liveness_config' import { LivenessException, LivenessErrorCode } from './liveness/liveness_exception' import { LivenessNotification, LivenessProcessStatus, LivenessNotificationCompletion } from './liveness/liveness_notification' import { LivenessResponse, LivenessStatus } from './liveness/liveness_response' export { LivenessBackendException, LivenessBackendErrorCode, LivenessConfig, RecordingProcess, LivenessType, LivenessSkipStep, LivenessException, LivenessErrorCode, LivenessNotification, LivenessProcessStatus, LivenessNotificationCompletion, LivenessResponse, LivenessStatus } import { ComparedFace } from './match_faces/compared_face' import { ComparedFacesPair } from './match_faces/compared_faces_pair' import { ComparedFacesSplit } from './match_faces/compared_faces_split' import { MatchFacesBackendException } from './match_faces/match_faces_backend_exception' import { MatchFacesConfig, ProcessingMode } from './match_faces/match_faces_config' import { MatchFacesDetectionFace } from './match_faces/match_faces_detection_face' import { MatchFacesDetection } from './match_faces/match_faces_detection' import { MatchFacesException, MatchFacesErrorCode } from './match_faces/match_faces_exception' import { MatchFacesImage } from './match_faces/match_faces_image' import { MatchFacesRequest } from './match_faces/match_faces_request' import { MatchFacesResponse } from './match_faces/match_faces_response' export { ComparedFace, ComparedFacesPair, ComparedFacesSplit, MatchFacesBackendException, MatchFacesConfig, ProcessingMode, MatchFacesDetectionFace, MatchFacesDetection, MatchFacesException, MatchFacesErrorCode, MatchFacesImage, MatchFacesRequest, MatchFacesResponse } import { EditGroupPersonsRequest } from './person_database/edit_group_persons_request' import { ImageUpload } from './person_database/image_upload' import { PageableItemList } from './person_database/pageable_item_list' import { PersonDatabase } from './person_database/person_database' import { PersonGroup } from './person_database/person_group' import { PersonImage } from './person_database/person_image' import { Person } from './person_database/person' import { SearchPersonDetection } from './person_database/search_person_detection' import { SearchPersonImage } from './person_database/search_person_image' import { SearchPersonRequest } from './person_database/search_person_request' import { SearchPerson } from './person_database/search_person' export { EditGroupPersonsRequest, ImageUpload, PageableItemList, PersonDatabase, PersonGroup, PersonImage, Person, SearchPersonDetection, SearchPersonImage, SearchPersonRequest, SearchPerson } /** * Entry point of the Regula Face SDK. */ export class FaceSDK { /** * The only instance of singleton class {@link FaceSDK}. */ static get instance(): FaceSDK private constructor() /** * Information about the SDK. */ get version(): FaceSDKVersion | null get serviceUrl(): string | null set serviceUrl(val: string | null) /** * A localization dictionary to override default localization logic. * Allows to replace any string of FaceSDK with an arbitrary string. * * To see all the localization keys, look up the RegulaSDK.strings file at * ios/Pods/FaceSDK/FaceSDK.xcframework/ios-arm64/FaceSDK.framework/FaceSDK.bundle/en.lproj/FaceSDK.strings. * * Immutable property. Use setter instead of editing. */ get localizationDictionary(): Record<string, string> | null set localizationDictionary(val: Record<string, string> | null) /** * Immutable property. Use setter instead of editing. */ get requestHeaders(): Record<string, string> | null set requestHeaders(val: Record<string, string> | null) get customization(): Customization set customization(val: Customization) /** * Allows user to receive a video file of current session. */ set videoEncoderCompletion(completion: VideoEncoderCompletion) get personDatabase(): PersonDatabase /** * Checks if FaceSDK is initialized. */ isInitialized(): Promise<boolean> /** * Allows you to initialize FaceSDK. * * @param params.config - configuration file for FaceSDK initialization. * * @returns Returns boolean indicating success of initialization * and a nullable {@link InitException}. */ initialize( params?: { config?: InitConfig } ): Promise<[boolean, InitException | null]> /** * Used to deinitialize FaceSDK and free up RAM as a * consequence of this. */ deinitialize(): void startFaceCapture( params?: { config?: FaceCaptureConfig, cameraSwitchCallback?: CameraSwitchCallback, } ): Promise<FaceCaptureResponse> stopFaceCapture(): void startLiveness( params?: { config?: LivenessConfig, notificationCompletion?: LivenessNotificationCompletion, cameraSwitchCallback?: CameraSwitchCallback, } ): Promise<LivenessResponse> stopLiveness(): void matchFaces( request: MatchFacesRequest, params?: { config?: MatchFacesConfig } ): Promise<MatchFacesResponse> splitComparedFaces( facesPairs: Array<ComparedFacesPair>, similarityThreshold: number ): Promise<ComparedFacesSplit> detectFaces(request: DetectFacesRequest): Promise<DetectFacesResponse> } export type VideoEncoderCompletion = (transactionId: string, success: boolean) => void export type CameraSwitchCallback = (cameraId: number) => void