@regulaforensics/face-sdk 6.5.67-beta → 6.5.84-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (184) hide show
  1. package/RNFaceSDK.podspec +2 -2
  2. package/android/build.gradle +2 -2
  3. package/android/cordova.gradle +2 -2
  4. package/examples/capacitor/README.md +4 -4
  5. package/examples/capacitor/package.json +5 -5
  6. package/examples/capacitor/scripts/android.sh +9 -0
  7. package/examples/capacitor/scripts/ios.sh +8 -0
  8. package/examples/capacitor/scripts/setup.sh +4 -0
  9. package/examples/cordova/README.md +4 -4
  10. package/examples/cordova/package.json +6 -11
  11. package/examples/cordova/scripts/android.sh +8 -0
  12. package/examples/cordova/scripts/ios.sh +8 -0
  13. package/examples/cordova/scripts/setup.sh +5 -0
  14. package/examples/ionic/README.md +4 -4
  15. package/examples/ionic/package.json +5 -5
  16. package/examples/ionic/scripts/android.sh +8 -0
  17. package/examples/ionic/scripts/ios.sh +8 -0
  18. package/examples/ionic/scripts/setup.sh +5 -0
  19. package/examples/ionic/src/app/home/home.page.ts +56 -5
  20. package/examples/react-native/README.md +4 -4
  21. package/examples/react-native/ios/Podfile.lock +319 -303
  22. package/examples/react-native/package.json +5 -6
  23. package/examples/react-native/scripts/android.sh +8 -0
  24. package/examples/react-native/scripts/ios.sh +8 -0
  25. package/examples/react-native/scripts/setup.sh +8 -0
  26. package/package.json +2 -1
  27. package/plugin.xml +2 -2
  28. package/www/capacitor/customization/customization.js +66 -0
  29. package/www/capacitor/customization/customization_colors.js +233 -0
  30. package/www/capacitor/customization/customization_fonts.js +106 -0
  31. package/www/capacitor/customization/customization_images.js +129 -0
  32. package/www/capacitor/customization/font.js +29 -0
  33. package/www/capacitor/detect_faces/detect_face_result.js +38 -0
  34. package/www/capacitor/detect_faces/detect_faces_attribute.js +15 -0
  35. package/www/capacitor/detect_faces/detect_faces_attribute_result.js +20 -0
  36. package/www/capacitor/detect_faces/detect_faces_backend_exception.js +23 -0
  37. package/www/capacitor/detect_faces/detect_faces_config.js +14 -0
  38. package/www/capacitor/detect_faces/detect_faces_exception.js +30 -0
  39. package/www/capacitor/detect_faces/detect_faces_request.js +67 -0
  40. package/www/capacitor/detect_faces/detect_faces_response.js +24 -0
  41. package/www/capacitor/detect_faces/detect_faces_scenario.js +10 -0
  42. package/www/capacitor/face_capture/face_capture_config.js +28 -0
  43. package/www/capacitor/face_capture/face_capture_exception.js +25 -0
  44. package/www/capacitor/face_capture/face_capture_image.js +26 -0
  45. package/www/capacitor/face_capture/face_capture_response.js +17 -0
  46. package/www/capacitor/image_params/output_image_crop.js +21 -0
  47. package/www/capacitor/image_params/output_image_params.js +9 -0
  48. package/www/capacitor/image_params/point.js +14 -0
  49. package/www/capacitor/image_params/rect.js +18 -0
  50. package/www/capacitor/image_params/size.js +9 -0
  51. package/www/capacitor/image_quality/image_quality_characteristic.js +24 -0
  52. package/www/capacitor/image_quality/image_quality_characteristic_name.js +58 -0
  53. package/www/capacitor/image_quality/image_quality_group.js +332 -0
  54. package/www/capacitor/image_quality/image_quality_range.js +26 -0
  55. package/www/capacitor/image_quality/image_quality_result.js +40 -0
  56. package/www/capacitor/index.js +179 -4
  57. package/www/capacitor/init/face_sdk_version.js +16 -0
  58. package/www/capacitor/match_faces/compared_face.js +21 -0
  59. package/www/capacitor/match_faces/compared_faces_pair.js +23 -0
  60. package/www/capacitor/match_faces/compared_faces_split.js +22 -0
  61. package/www/capacitor/match_faces/match_faces_backend_exception.js +14 -0
  62. package/www/capacitor/match_faces/match_faces_config.js +12 -0
  63. package/www/capacitor/match_faces/match_faces_detection.js +25 -0
  64. package/www/capacitor/match_faces/match_faces_detection_face.js +28 -0
  65. package/www/capacitor/match_faces/match_faces_exception.js +30 -0
  66. package/www/capacitor/match_faces/match_faces_image.js +25 -0
  67. package/www/capacitor/match_faces/match_faces_request.js +13 -0
  68. package/www/capacitor/match_faces/match_faces_response.js +28 -0
  69. package/www/capacitor/person_database/edit_group_persons_request.js +9 -0
  70. package/www/capacitor/person_database/image_upload.js +16 -0
  71. package/www/capacitor/person_database/pageable_item_list.js +22 -0
  72. package/www/capacitor/person_database/person.js +22 -0
  73. package/www/capacitor/person_database/person_database.js +145 -0
  74. package/www/capacitor/person_database/person_group.js +18 -0
  75. package/www/capacitor/person_database/person_image.js +22 -0
  76. package/www/capacitor/person_database/search_person.js +31 -0
  77. package/www/capacitor/person_database/search_person_detection.js +22 -0
  78. package/www/capacitor/person_database/search_person_image.js +26 -0
  79. package/www/capacitor/person_database/search_person_request.js +17 -0
  80. package/www/cordova.js +3478 -385
  81. package/www/react-native/customization/customization.js +66 -0
  82. package/www/react-native/customization/customization_colors.js +233 -0
  83. package/www/react-native/customization/customization_fonts.js +106 -0
  84. package/www/react-native/customization/customization_images.js +129 -0
  85. package/www/react-native/customization/font.js +29 -0
  86. package/www/react-native/detect_faces/detect_face_result.js +38 -0
  87. package/www/react-native/detect_faces/detect_faces_attribute.js +15 -0
  88. package/www/react-native/detect_faces/detect_faces_attribute_result.js +20 -0
  89. package/www/react-native/detect_faces/detect_faces_backend_exception.js +23 -0
  90. package/www/react-native/detect_faces/detect_faces_config.js +14 -0
  91. package/www/react-native/detect_faces/detect_faces_exception.js +30 -0
  92. package/www/react-native/detect_faces/detect_faces_request.js +67 -0
  93. package/www/react-native/detect_faces/detect_faces_response.js +24 -0
  94. package/www/react-native/detect_faces/detect_faces_scenario.js +10 -0
  95. package/www/react-native/face_capture/face_capture_config.js +28 -0
  96. package/www/react-native/face_capture/face_capture_exception.js +25 -0
  97. package/www/react-native/face_capture/face_capture_image.js +26 -0
  98. package/www/react-native/face_capture/face_capture_response.js +17 -0
  99. package/www/react-native/image_params/output_image_crop.js +21 -0
  100. package/www/react-native/image_params/output_image_params.js +9 -0
  101. package/www/react-native/image_params/point.js +14 -0
  102. package/www/react-native/image_params/rect.js +18 -0
  103. package/www/react-native/image_params/size.js +9 -0
  104. package/www/react-native/image_quality/image_quality_characteristic.js +24 -0
  105. package/www/react-native/image_quality/image_quality_characteristic_name.js +58 -0
  106. package/www/react-native/image_quality/image_quality_group.js +332 -0
  107. package/www/react-native/image_quality/image_quality_range.js +26 -0
  108. package/www/react-native/image_quality/image_quality_result.js +40 -0
  109. package/www/react-native/index.js +179 -4
  110. package/www/react-native/init/face_sdk_version.js +16 -0
  111. package/www/react-native/match_faces/compared_face.js +21 -0
  112. package/www/react-native/match_faces/compared_faces_pair.js +23 -0
  113. package/www/react-native/match_faces/compared_faces_split.js +22 -0
  114. package/www/react-native/match_faces/match_faces_backend_exception.js +14 -0
  115. package/www/react-native/match_faces/match_faces_config.js +12 -0
  116. package/www/react-native/match_faces/match_faces_detection.js +25 -0
  117. package/www/react-native/match_faces/match_faces_detection_face.js +28 -0
  118. package/www/react-native/match_faces/match_faces_exception.js +30 -0
  119. package/www/react-native/match_faces/match_faces_image.js +25 -0
  120. package/www/react-native/match_faces/match_faces_request.js +13 -0
  121. package/www/react-native/match_faces/match_faces_response.js +28 -0
  122. package/www/react-native/person_database/edit_group_persons_request.js +9 -0
  123. package/www/react-native/person_database/image_upload.js +16 -0
  124. package/www/react-native/person_database/pageable_item_list.js +22 -0
  125. package/www/react-native/person_database/person.js +22 -0
  126. package/www/react-native/person_database/person_database.js +145 -0
  127. package/www/react-native/person_database/person_group.js +18 -0
  128. package/www/react-native/person_database/person_image.js +22 -0
  129. package/www/react-native/person_database/search_person.js +31 -0
  130. package/www/react-native/person_database/search_person_detection.js +22 -0
  131. package/www/react-native/person_database/search_person_image.js +26 -0
  132. package/www/react-native/person_database/search_person_request.js +17 -0
  133. package/www/types/customization/customization.d.ts +46 -0
  134. package/www/types/customization/customization_colors.d.ts +37 -0
  135. package/www/types/customization/customization_fonts.d.ts +23 -0
  136. package/www/types/customization/customization_images.d.ts +24 -0
  137. package/www/types/customization/font.d.ts +41 -0
  138. package/www/types/detect_faces/detect_face_result.d.ts +16 -0
  139. package/www/types/detect_faces/detect_faces_attribute.d.ts +15 -0
  140. package/www/types/detect_faces/detect_faces_attribute_result.d.ts +11 -0
  141. package/www/types/detect_faces/detect_faces_backend_exception.d.ts +15 -0
  142. package/www/types/detect_faces/detect_faces_config.d.ts +37 -0
  143. package/www/types/detect_faces/detect_faces_exception.d.ts +24 -0
  144. package/www/types/detect_faces/detect_faces_request.d.ts +80 -0
  145. package/www/types/detect_faces/detect_faces_response.d.ts +12 -0
  146. package/www/types/detect_faces/detect_faces_scenario.d.ts +10 -0
  147. package/www/types/face_capture/face_capture_config.d.ts +39 -0
  148. package/www/types/face_capture/face_capture_exception.d.ts +17 -0
  149. package/www/types/face_capture/face_capture_image.d.ts +39 -0
  150. package/www/types/face_capture/face_capture_response.d.ts +9 -0
  151. package/www/types/image_params/output_image_crop.d.ts +49 -0
  152. package/www/types/image_params/output_image_params.d.ts +28 -0
  153. package/www/types/image_params/point.d.ts +9 -0
  154. package/www/types/image_params/rect.d.ts +8 -0
  155. package/www/types/image_params/size.d.ts +6 -0
  156. package/www/types/image_quality/image_quality_characteristic.d.ts +7 -0
  157. package/www/types/image_quality/image_quality_characteristic_name.d.ts +61 -0
  158. package/www/types/image_quality/image_quality_group.d.ts +418 -0
  159. package/www/types/image_quality/image_quality_range.d.ts +8 -0
  160. package/www/types/image_quality/image_quality_result.d.ts +30 -0
  161. package/www/types/index.d.ts +140 -4
  162. package/www/types/init/face_sdk_version.d.ts +16 -0
  163. package/www/types/match_faces/compared_face.d.ts +29 -0
  164. package/www/types/match_faces/compared_faces_pair.d.ts +36 -0
  165. package/www/types/match_faces/compared_faces_split.d.ts +8 -0
  166. package/www/types/match_faces/match_faces_backend_exception.d.ts +6 -0
  167. package/www/types/match_faces/match_faces_config.d.ts +14 -0
  168. package/www/types/match_faces/match_faces_detection.d.ts +30 -0
  169. package/www/types/match_faces/match_faces_detection_face.d.ts +43 -0
  170. package/www/types/match_faces/match_faces_exception.d.ts +21 -0
  171. package/www/types/match_faces/match_faces_image.d.ts +34 -0
  172. package/www/types/match_faces/match_faces_request.d.ts +34 -0
  173. package/www/types/match_faces/match_faces_response.d.ts +27 -0
  174. package/www/types/person_database/edit_group_persons_request.d.ts +8 -0
  175. package/www/types/person_database/image_upload.d.ts +20 -0
  176. package/www/types/person_database/pageable_item_list.d.ts +7 -0
  177. package/www/types/person_database/person.d.ts +33 -0
  178. package/www/types/person_database/person_database.d.ts +95 -0
  179. package/www/types/person_database/person_group.d.ts +22 -0
  180. package/www/types/person_database/person_image.d.ts +10 -0
  181. package/www/types/person_database/search_person.d.ts +31 -0
  182. package/www/types/person_database/search_person_detection.d.ts +11 -0
  183. package/www/types/person_database/search_person_image.d.ts +25 -0
  184. package/www/types/person_database/search_person_request.d.ts +39 -0
@@ -0,0 +1,418 @@
1
+ import { ImageQualityCharacteristic } from './image_quality_characteristic'
2
+ import { ImageQualityRange } from './image_quality_range'
3
+
4
+ /**
5
+ * Image Quality characteristic group
6
+ */
7
+ export class ImageQualityGroup {
8
+ /**
9
+ * The Image characteristics group includes width, height, width to height proportions,
10
+ * the image RGB channels number, and padding ratio.
11
+ */
12
+ static get image(): _Image
13
+ /**
14
+ * The Head size and position group includes the position of the "middle point"
15
+ * relative to the width and height of the image, the head width to the image
16
+ * width and height ratio, inter-eye distance, yaw, pitch, roll.
17
+ */
18
+ static get headSizeAndPosition(): _HeadSizeAndPosition
19
+ /**
20
+ * The Face image quality group includes blur and noise levels, unnatural skin tone,
21
+ * and face dynamic range checks.
22
+ */
23
+ static get faceImage(): _FaceImage
24
+ /**
25
+ * The Eyes characteristics group checks eyes closure, occlusion, hair coverage,
26
+ * red eye effect, and whether a person is looking directly at the camera.
27
+ */
28
+ static get eyes(): _Eyes
29
+ /**
30
+ * The Shadows and lightning characteristics group checks whether a photo
31
+ * is too dark or overexposed, if there are glares or shadows on the face.
32
+ */
33
+ static get shadowsAndLightning(): _ShadowsAndLightning
34
+ /**
35
+ * The Pose and expression characteristics group checks the shoulders pose,
36
+ * face expression, whether there is an open mouth or smile.
37
+ */
38
+ static get poseAndExpression(): _PoseAndExpression
39
+ /**
40
+ * The Head occlusion group includes checks of glasses, face occlusion, and head coverage.
41
+ */
42
+ static get headOcclusion(): _HeadOcclusion
43
+ /**
44
+ * The Background characteristics group checks the background uniformity,
45
+ * shadows on background, and other faces presence on the picture.
46
+ */
47
+ static get background(): _Background
48
+ }
49
+
50
+ export class _Image {
51
+ /**
52
+ * The image width, pixels.
53
+ * Doesn't have recommended value.
54
+ */
55
+ imageWidth(range: ImageQualityRange): ImageQualityCharacteristic
56
+
57
+ /**
58
+ * The image height, pixels.
59
+ * Doesn't have recommended value.
60
+ */
61
+ imageHeight(range: ImageQualityRange): ImageQualityCharacteristic
62
+
63
+ /**
64
+ * The image width to height proportion.
65
+ * Doesn't have recommended value.
66
+ */
67
+ imageWidthToHeight(range: ImageQualityRange): ImageQualityCharacteristic
68
+
69
+ /**
70
+ * The image RGB channels number.
71
+ * Doesn't have recommended value.
72
+ *
73
+ * @param channelsNumber - 3 is for RGB images.
74
+ */
75
+ imageChannelsNumber(channelsNumber: number): ImageQualityCharacteristic
76
+
77
+ /**
78
+ * The percentage of the area of the image that was "padded" during alignment.
79
+ * The characteristic is needed to determine if the head goes beyond the image.
80
+ * The range is from 0 to 1 where 0 is 0% of the image is "padded".
81
+ * Doesn't have recommended value.
82
+ */
83
+ paddingRatio(range: ImageQualityRange): ImageQualityCharacteristic
84
+
85
+ /**
86
+ * Whether the face in the image is a photo, not a drawing, sculpture, cartoon, etc.
87
+ * If the returned value is out of the recommended range, the image is not a photo.
88
+ * The range is from 0 to 1 where 0 means the image is a photo.
89
+ */
90
+ artFace(): ImageQualityCharacteristic
91
+
92
+ /**
93
+ * All Group characteristics with default (recommended) values.
94
+ * Doesn't include characteristics without default values.
95
+ */
96
+ allRecommended(): Array<ImageQualityCharacteristic>
97
+
98
+ private constructor()
99
+ }
100
+
101
+ export class _HeadSizeAndPosition {
102
+ /**
103
+ * The position of the "middle point" (the middle of the line connecting the eye centers)
104
+ * relative to the width of the image.
105
+ * The range is from 0 to 1 where range [0.5, 0.5] is for "middle point" strictly in the center .
106
+ */
107
+ faceMidPointHorizontalPosition(): ImageQualityCharacteristic
108
+
109
+ /**
110
+ * The position of the "middle point" (the middle of the line connecting the eye centers)
111
+ * relative to the height of the image.
112
+ * The range is from 0 to 1 where range [0.5, 0.5] is for "middle point" strictly in the center .
113
+ */
114
+ faceMidPointVerticalPosition(): ImageQualityCharacteristic
115
+
116
+ /**
117
+ * The head width to the image width ratio.
118
+ * The range is from 0 to 1.
119
+ */
120
+ headWidthRatio(): ImageQualityCharacteristic
121
+
122
+ /**
123
+ * The head height to the image height ratio.
124
+ * The range is from 0 to 1.
125
+ */
126
+ headHeightRatio(): ImageQualityCharacteristic
127
+
128
+ /**
129
+ * Inter-eye distance — the length of the line connecting the eye centers of the left and right eye, pixels.
130
+ */
131
+ eyesDistance(): ImageQualityCharacteristic
132
+
133
+ /**
134
+ * The yaw of the head, degrees.
135
+ * The range is from -90 to 90. Range value [0, 0] for strictly stright head position.
136
+ */
137
+ yaw(): ImageQualityCharacteristic
138
+
139
+ /**
140
+ * The pitch of the head, degrees.
141
+ * The range is from -90 to 90. Range value [0, 0] for strictly stright head position.
142
+ */
143
+ pitch(): ImageQualityCharacteristic
144
+
145
+ /**
146
+ * The roll of the head, degrees.
147
+ * The range is from -90 to 90. Range value [0, 0] for strictly stright head position.
148
+ */
149
+ roll(): ImageQualityCharacteristic
150
+
151
+ /**
152
+ * All Group characteristics with default (recommended) values.
153
+ * Doesn't include characteristics without default values.
154
+ */
155
+ allRecommended(): Array<ImageQualityCharacteristic>
156
+
157
+ private constructor()
158
+ }
159
+
160
+ export class _FaceImage {
161
+ /**
162
+ * The blur level.
163
+ * The range is from 0 to 1 where 0 is the absence of blur effect
164
+ */
165
+ blurLevel(): ImageQualityCharacteristic
166
+
167
+ /**
168
+ * The noise level.
169
+ * The range is from 0 to 1 where 0 is minimal noise level.
170
+ */
171
+ noiseLevel(): ImageQualityCharacteristic
172
+
173
+ /**
174
+ * The true-colour representation of the skin colour.
175
+ * The range is from 0 to 1.
176
+ */
177
+ unnaturalSkinTone(): ImageQualityCharacteristic
178
+
179
+ /**
180
+ * The range of tonal difference between the lightest light and darkest dark of an image, bits.
181
+ */
182
+ faceDynamicRange(): ImageQualityCharacteristic
183
+
184
+ /**
185
+ * All Group characteristics with default (recommended) values.
186
+ * Doesn't include characteristics without default values.
187
+ */
188
+ allRecommended(): Array<ImageQualityCharacteristic>
189
+
190
+ private constructor()
191
+ }
192
+
193
+ export class _Eyes {
194
+ /**
195
+ * Whether the right eye is closed.
196
+ * The range is from 0 to 1 where 1 is the eye is fully closed.
197
+ */
198
+ eyeRightClosed(): ImageQualityCharacteristic
199
+
200
+ /**
201
+ * Whether the left eye is closed.
202
+ * The range is from 0 to 1 where 1 is the eye is fully closed.
203
+ */
204
+ eyeLeftClosed(): ImageQualityCharacteristic
205
+
206
+ /**
207
+ * Whether the right eye is occluded.
208
+ * The range is from 0 to 1 where 1 is the eye is fully occluded.
209
+ */
210
+ eyeRightOccluded(): ImageQualityCharacteristic
211
+
212
+ /**
213
+ * Whether the left eye is occluded.
214
+ * The range is from 0 to 1 where 1 is the eye is fully occluded.
215
+ */
216
+ eyeLeftOccluded(): ImageQualityCharacteristic
217
+
218
+ /**
219
+ * Whether there is the red-eye effect.
220
+ * The range is from 0 to 1 where 0 is the absence of red-eye effect.
221
+ */
222
+ eyesRed(): ImageQualityCharacteristic
223
+
224
+ /**
225
+ * Whether the right eye is covered with hair.
226
+ * The range is from 0 to 1 where 1 is 100% of the eye is covered by hair.
227
+ */
228
+ eyeRightCoveredWithHair(): ImageQualityCharacteristic
229
+
230
+ /**
231
+ * Whether the left eye is covered with hair.
232
+ * The range is from 0 to 1 where 1 is 100% of the eye is covered by hair.
233
+ */
234
+ eyeLeftCoveredWithHair(): ImageQualityCharacteristic
235
+
236
+ /**
237
+ * Whether the person is not looking directly at the camera.
238
+ * The range is from 0 to 1 where 0 is for absolutely direct look.
239
+ */
240
+ offGaze(): ImageQualityCharacteristic
241
+
242
+ /**
243
+ * All Group characteristics with default (recommended) values.
244
+ * Doesn't include characteristics without default values.
245
+ */
246
+ allRecommended(): Array<ImageQualityCharacteristic>
247
+
248
+ private constructor()
249
+ }
250
+
251
+ export class _ShadowsAndLightning {
252
+ /**
253
+ * Whether the photo is too dark.
254
+ * The range is from 0 to 1.
255
+ */
256
+ tooDark(): ImageQualityCharacteristic
257
+
258
+ /**
259
+ * Whether the photo is overexposed.
260
+ * The range is from 0 to 1.
261
+ */
262
+ tooLight(): ImageQualityCharacteristic
263
+
264
+ /**
265
+ * Whether there is glare on the face.
266
+ * The range is from 0 to 1 where 0 is the absence of glare.
267
+ */
268
+ faceGlare(): ImageQualityCharacteristic
269
+
270
+ /**
271
+ * Whether there are shadows on the face.
272
+ * The range is from 0 to 1 where 0 is the absence of shadows on the face.
273
+ */
274
+ shadowsOnFace(): ImageQualityCharacteristic
275
+
276
+ /**
277
+ * All Group characteristics with default (recommended) values.
278
+ * Doesn't include characteristics without default values.
279
+ */
280
+ allRecommended(): Array<ImageQualityCharacteristic>
281
+
282
+ private constructor()
283
+ }
284
+
285
+ export class _PoseAndExpression {
286
+ /**
287
+ * Checks the symmetry of the shoulders.
288
+ * The range is from 0 to 1 where 1 is for absolutely symmetrical shoulders.
289
+ */
290
+ shouldersPose(): ImageQualityCharacteristic
291
+
292
+ /**
293
+ * Checks the presence of any emotional facial expression.
294
+ * The range is from 0 to 1 where 0 is for absolutely non-emotional expression.
295
+ */
296
+ expressionLevel(): ImageQualityCharacteristic
297
+
298
+ /**
299
+ * Whether the mouth is open.
300
+ * The range is from 0 to 1 where 0 is closed mouth.
301
+ */
302
+ mouthOpen(): ImageQualityCharacteristic
303
+
304
+ /**
305
+ * Whether the person smiles.
306
+ * The range is from 0 to 1 where 0 is smile absence.
307
+ */
308
+ smile(): ImageQualityCharacteristic
309
+
310
+ /**
311
+ * All Group characteristics with default (recommended) values.
312
+ * Doesn't include characteristics without default values.
313
+ */
314
+ allRecommended(): Array<ImageQualityCharacteristic>
315
+
316
+ private constructor()
317
+ }
318
+
319
+ export class _HeadOcclusion {
320
+ /**
321
+ * Whether the person wears dark glasses.
322
+ * The range is from 0 to 1 where 0 is dark glasses absence.
323
+ */
324
+ darkGlasses(): ImageQualityCharacteristic
325
+
326
+ /**
327
+ * Whether there are reflections on glasses.
328
+ * The range is from 0 to 1 where 0 is reflections absence.
329
+ * In the current release, always succeeds. Will be developed in the coming releases.
330
+ */
331
+ reflectionOnGlasses(): ImageQualityCharacteristic
332
+
333
+ /**
334
+ * Whether the glasses frames do not obscure eye details and the irises of both eyes are visible.
335
+ * The range is from 0 to 20 where 0 the absence of frames (glasses).
336
+ */
337
+ framesTooHeavy(): ImageQualityCharacteristic
338
+
339
+ /**
340
+ * Whether the face is visible and not occluded.
341
+ * The range is from 0 to 1 where 0 is face occlusion absence.
342
+ */
343
+ faceOccluded(): ImageQualityCharacteristic
344
+
345
+ /**
346
+ * Whether there is any head coverage other than religious headwear.
347
+ * The range is from 0 to 1.
348
+ */
349
+ headCovering(): ImageQualityCharacteristic
350
+
351
+ /**
352
+ * Whether the forehead is covered.
353
+ * The range is from 0 to 1.
354
+ */
355
+ foreheadCovering(): ImageQualityCharacteristic
356
+
357
+ /**
358
+ * Whether the makeup is too strong.
359
+ * In the current release, always succeeds. Will be developed in the coming releases.
360
+ * The range is from 0 to 1.
361
+ */
362
+ strongMakeup(): ImageQualityCharacteristic
363
+
364
+ /**
365
+ * Whether the person is wearing headphones.
366
+ * The range is from 0 to 1 where 0 is headphones absence.
367
+ */
368
+ headphones(): ImageQualityCharacteristic
369
+
370
+ /**
371
+ * Whether the person is wearing a medical mask.
372
+ * The range is from 0 to 1 where 0 is medical mask absence.
373
+ */
374
+ medicalMask(): ImageQualityCharacteristic
375
+
376
+ /**
377
+ * All Group characteristics with default (recommended) values.
378
+ * Doesn't include characteristics without default values.
379
+ */
380
+ allRecommended(): Array<ImageQualityCharacteristic>
381
+
382
+ private constructor()
383
+ }
384
+
385
+ export class _Background {
386
+ /**
387
+ * Checks uniformity of the portrait background.
388
+ * The range is from 0 to 1 where 1 is absolute background uniformity.
389
+ */
390
+ backgroundUniformity(): ImageQualityCharacteristic
391
+
392
+ /**
393
+ * Whether there are shadows on the portrait background.
394
+ * The range is from 0 to 1 where 1 is the absence of shadows on the portrait background.
395
+ */
396
+ shadowsOnBackground(): ImageQualityCharacteristic
397
+
398
+ /**
399
+ * The number of faces on the photo.
400
+ * The range is from 0 to 1 where 1 is full background color match.
401
+ */
402
+ otherFaces(): ImageQualityCharacteristic
403
+
404
+ /**
405
+ * Whether the background color matches default background color.
406
+ * Default color is white (RGB(255,255,255) or hex #FFFFFF)
407
+ * The range is from 0 to 1 where 1 is full background color match.
408
+ */
409
+ backgroundColorMatch(params?: { color?: number }): ImageQualityCharacteristic
410
+
411
+ /**
412
+ * Whether the background color matches the required color.
413
+ * The range is from 0 to 1 where 1 is full background color match.
414
+ */
415
+ allRecommended(): Array<ImageQualityCharacteristic>
416
+
417
+ private constructor()
418
+ }
@@ -0,0 +1,8 @@
1
+ export class ImageQualityRange {
2
+ get min(): number
3
+ get max(): number
4
+
5
+ constructor(min: number, max: number)
6
+
7
+ static withValue(value: number): ImageQualityRange
8
+ }
@@ -0,0 +1,30 @@
1
+ import { ImageQualityRange } from './image_quality_range'
2
+ import { ImageQualityCharacteristicName } from './image_quality_characteristic_name'
3
+
4
+ export class ImageQualityResult {
5
+ get group(): ImageQualityGroupName
6
+ get name(): ImageQualityCharacteristicName
7
+ get status(): ImageQualityResultStatus
8
+ get value(): number
9
+ get range(): ImageQualityRange
10
+
11
+ private constructor()
12
+ }
13
+
14
+ export enum ImageQualityGroupName {
15
+ IMAGE_CHARACTERISTICS,
16
+ HEAD_SIZE_AND_POSITION,
17
+ FACE_QUALITY,
18
+ EYES_CHARACTERISTICS,
19
+ SHADOWS_AND_LIGHTNING,
20
+ POSE_AND_EXPRESSION,
21
+ HEAD_OCCLUSION,
22
+ BACKGROUND,
23
+ UNKNOWN,
24
+ }
25
+
26
+ export enum ImageQualityResultStatus {
27
+ FALSE,
28
+ TRUE,
29
+ UNDETERMINED,
30
+ }
@@ -1,24 +1,135 @@
1
+ import { CameraPosition } from './customization/camera_position'
2
+ import { CustomizationColors } from './customization/customization_colors'
3
+ import { CustomizationFonts } from './customization/customization_fonts'
4
+ import { CustomizationImages } from './customization/customization_images'
5
+ import { Customization, CustomButtonTappedCompletion } from './customization/customization'
6
+ import { Font } from './customization/font'
7
+ import { ScreenOrientation } from './customization/screen_orientation'
8
+ export { CameraPosition, CustomizationColors, CustomizationFonts, CustomizationImages, Customization, CustomButtonTappedCompletion, Font, ScreenOrientation }
1
9
 
10
+ import { FaceSDKVersion } from './init/face_sdk_version'
2
11
  import { InitConfig } from './init/init_config'
3
12
  import { InitException } from './init/init_exception'
4
13
  import { InitErrorCode } from './init/init_exception'
5
14
  import { LicenseException } from './init/license_exception'
6
15
  import { LicensingResultCode } from './init/license_exception'
7
- export { InitConfig, InitException, InitErrorCode, LicenseException, LicensingResultCode }
16
+ export { FaceSDKVersion, InitConfig, InitException, InitErrorCode, LicenseException, LicensingResultCode }
17
+
18
+ import { DetectFaceResult } from './detect_faces/detect_face_result'
19
+ import { DetectFacesAttributeResult } from './detect_faces/detect_faces_attribute_result'
20
+ import { DetectFacesAttribute } from './detect_faces/detect_faces_attribute'
21
+ import { DetectFacesBackendException, DetectFacesBackendErrorCode } from './detect_faces/detect_faces_backend_exception'
22
+ import { DetectFacesConfig } from './detect_faces/detect_faces_config'
23
+ import { DetectFacesException, DetectFacesErrorCode } from './detect_faces/detect_faces_exception'
24
+ import { DetectFacesRequest } from './detect_faces/detect_faces_request'
25
+ import { DetectFacesResponse } from './detect_faces/detect_faces_response'
26
+ import { DetectFacesScenario } from './detect_faces/detect_faces_scenario'
27
+ export { DetectFaceResult, DetectFacesAttributeResult, DetectFacesAttribute, DetectFacesBackendException, DetectFacesBackendErrorCode, DetectFacesConfig, DetectFacesException, DetectFacesErrorCode, DetectFacesRequest, DetectFacesResponse, DetectFacesScenario }
28
+
29
+ import { FaceCaptureConfig } from './face_capture/face_capture_config'
30
+ import { FaceCaptureException, FaceCaptureErrorCode } from './face_capture/face_capture_exception'
31
+ import { FaceCaptureImage, ImageType } from './face_capture/face_capture_image'
32
+ import { FaceCaptureResponse } from './face_capture/face_capture_response'
33
+ export { FaceCaptureConfig, FaceCaptureException, FaceCaptureErrorCode, FaceCaptureImage, ImageType, FaceCaptureResponse }
34
+
35
+ import { OutputImageCrop, OutputImageCropAspectRatio } from './image_params/output_image_crop'
36
+ import { OutputImageParams } from './image_params/output_image_params'
37
+ import { Point } from './image_params/point'
38
+ import { Rect } from './image_params/rect'
39
+ import { Size } from './image_params/size'
40
+ export { OutputImageCrop, OutputImageCropAspectRatio, OutputImageParams, Point, Rect, Size }
41
+
42
+ import { ImageQualityCharacteristicName } from './image_quality/image_quality_characteristic_name'
43
+ import { ImageQualityCharacteristic } from './image_quality/image_quality_characteristic'
44
+ import { ImageQualityGroup } from './image_quality/image_quality_group'
45
+ import { ImageQualityRange } from './image_quality/image_quality_range'
46
+ import { ImageQualityResult, ImageQualityGroupName, ImageQualityResultStatus } from './image_quality/image_quality_result'
47
+ export { ImageQualityCharacteristicName, ImageQualityCharacteristic, ImageQualityGroup, ImageQualityRange, ImageQualityResult, ImageQualityGroupName, ImageQualityResultStatus }
8
48
 
9
- import { CameraPosition } from './customization/camera_position'
10
- import { ScreenOrientation } from './customization/screen_orientation'
11
49
  import { LivenessBackendException, LivenessBackendErrorCode } from './liveness/liveness_backend_exception'
12
50
  import { LivenessConfig, RecordingProcess, LivenessType, LivenessSkipStep } from './liveness/liveness_config'
13
51
  import { LivenessException, LivenessErrorCode } from './liveness/liveness_exception'
14
52
  import { LivenessNotification, LivenessProcessStatus, LivenessNotificationCompletion } from './liveness/liveness_notification'
15
53
  import { LivenessResponse, LivenessStatus } from './liveness/liveness_response'
16
- export { LivenessBackendException, LivenessBackendErrorCode, LivenessConfig, RecordingProcess, LivenessType, LivenessSkipStep, LivenessException, LivenessErrorCode, LivenessNotification, LivenessProcessStatus, LivenessNotificationCompletion, LivenessResponse, LivenessStatus, CameraPosition, ScreenOrientation }
54
+ export { LivenessBackendException, LivenessBackendErrorCode, LivenessConfig, RecordingProcess, LivenessType, LivenessSkipStep, LivenessException, LivenessErrorCode, LivenessNotification, LivenessProcessStatus, LivenessNotificationCompletion, LivenessResponse, LivenessStatus }
55
+
56
+ import { ComparedFace } from './match_faces/compared_face'
57
+ import { ComparedFacesPair } from './match_faces/compared_faces_pair'
58
+ import { ComparedFacesSplit } from './match_faces/compared_faces_split'
59
+ import { MatchFacesBackendException } from './match_faces/match_faces_backend_exception'
60
+ import { MatchFacesConfig, ProcessingMode } from './match_faces/match_faces_config'
61
+ import { MatchFacesDetectionFace } from './match_faces/match_faces_detection_face'
62
+ import { MatchFacesDetection } from './match_faces/match_faces_detection'
63
+ import { MatchFacesException, MatchFacesErrorCode } from './match_faces/match_faces_exception'
64
+ import { MatchFacesImage } from './match_faces/match_faces_image'
65
+ import { MatchFacesRequest } from './match_faces/match_faces_request'
66
+ import { MatchFacesResponse } from './match_faces/match_faces_response'
67
+ export { ComparedFace, ComparedFacesPair, ComparedFacesSplit, MatchFacesBackendException, MatchFacesConfig, ProcessingMode, MatchFacesDetectionFace, MatchFacesDetection, MatchFacesException, MatchFacesErrorCode, MatchFacesImage, MatchFacesRequest, MatchFacesResponse }
68
+
69
+ import { EditGroupPersonsRequest } from './person_database/edit_group_persons_request'
70
+ import { ImageUpload } from './person_database/image_upload'
71
+ import { PageableItemList } from './person_database/pageable_item_list'
72
+ import { PersonDatabase } from './person_database/person_database'
73
+ import { PersonGroup } from './person_database/person_group'
74
+ import { PersonImage } from './person_database/person_image'
75
+ import { Person } from './person_database/person'
76
+ import { SearchPersonDetection } from './person_database/search_person_detection'
77
+ import { SearchPersonImage } from './person_database/search_person_image'
78
+ import { SearchPersonRequest } from './person_database/search_person_request'
79
+ import { SearchPerson } from './person_database/search_person'
80
+ export { EditGroupPersonsRequest, ImageUpload, PageableItemList, PersonDatabase, PersonGroup, PersonImage, Person, SearchPersonDetection, SearchPersonImage, SearchPersonRequest, SearchPerson }
17
81
 
18
82
  /**
19
83
  * Entry point of the Regula Face SDK.
20
84
  */
21
85
  export class FaceSDK {
86
+ /**
87
+ * The only instance of singleton class {@link FaceSDK}.
88
+ */
89
+ static get instance(): FaceSDK
90
+ private constructor()
91
+
92
+ /**
93
+ * Information about the SDK.
94
+ */
95
+ get version(): FaceSDKVersion | null
96
+
97
+ get serviceUrl(): string | null
98
+ set serviceUrl(val: string | null)
99
+
100
+ /**
101
+ * A localization dictionary to override default localization logic.
102
+ * Allows to replace any string of FaceSDK with an arbitrary string.
103
+ *
104
+ * To see all the localization keys, look up the RegulaSDK.strings file at
105
+ * ios/Pods/FaceSDK/FaceSDK.xcframework/ios-arm64/FaceSDK.framework/FaceSDK.bundle/en.lproj/FaceSDK.strings.
106
+ *
107
+ * Immutable property. Use setter instead of editing.
108
+ */
109
+ get localizationDictionary(): Record<string, string> | null
110
+ set localizationDictionary(val: Record<string, string> | null)
111
+
112
+ /**
113
+ * Immutable property. Use setter instead of editing.
114
+ */
115
+ get requestHeaders(): Record<string, string> | null
116
+ set requestHeaders(val: Record<string, string> | null)
117
+
118
+ get customization(): Customization
119
+ set customization(val: Customization)
120
+
121
+ /**
122
+ * Allows user to receive a video file of current session.
123
+ */
124
+ set videoEncoderCompletion(completion: VideoEncoderCompletion)
125
+
126
+ get personDatabase(): PersonDatabase
127
+
128
+ /**
129
+ * Checks if FaceSDK is initialized.
130
+ */
131
+ isInitialized(): Promise<boolean>
132
+
22
133
  /**
23
134
  * Allows you to initialize FaceSDK.
24
135
  *
@@ -39,6 +150,15 @@ export class FaceSDK {
39
150
  */
40
151
  deinitialize(): void
41
152
 
153
+ startFaceCapture(
154
+ params?: {
155
+ config?: FaceCaptureConfig,
156
+ cameraSwitchCallback?: CameraSwitchCallback,
157
+ }
158
+ ): Promise<FaceCaptureResponse>
159
+
160
+ stopFaceCapture(): void
161
+
42
162
  startLiveness(
43
163
  params?: {
44
164
  config?: LivenessConfig,
@@ -48,6 +168,22 @@ export class FaceSDK {
48
168
  ): Promise<LivenessResponse>
49
169
 
50
170
  stopLiveness(): void
171
+
172
+ matchFaces(
173
+ request: MatchFacesRequest,
174
+ params?: {
175
+ config?: MatchFacesConfig
176
+ }
177
+ ): Promise<MatchFacesResponse>
178
+
179
+ splitComparedFaces(
180
+ facesPairs: Array<ComparedFacesPair>,
181
+ similarityThreshold: number
182
+ ): Promise<ComparedFacesSplit>
183
+
184
+ detectFaces(request: DetectFacesRequest): Promise<DetectFacesResponse>
51
185
  }
52
186
 
187
+ export type VideoEncoderCompletion = (transactionId: string, success: boolean) => void
188
+
53
189
  export type CameraSwitchCallback = (cameraId: number) => void
@@ -0,0 +1,16 @@
1
+ export class FaceSDKVersion {
2
+ /**
3
+ * Version of the API module.
4
+ */
5
+ get api(): string | null
6
+ /**
7
+ * Version of the CORE module.
8
+ */
9
+ get core(): string | null
10
+ /**
11
+ * CORE module variant.
12
+ */
13
+ get coreMode(): string | null
14
+
15
+ private constructor()
16
+ }
@@ -0,0 +1,29 @@
1
+ import { MatchFacesImage } from './match_faces_image'
2
+ import { MatchFacesDetectionFace } from './match_faces_detection_face'
3
+
4
+ /**
5
+ * Represents a reference information of the compared face.
6
+ */
7
+ export class ComparedFace {
8
+ /**
9
+ * The index to the input image in the input array provided to the request.
10
+ */
11
+ get imageIndex(): number
12
+
13
+ /**
14
+ * The input image used for comparison operation.
15
+ */
16
+ get image(): MatchFacesImage
17
+
18
+ /**
19
+ * The index to the array of `faces` in the `detection` results.
20
+ */
21
+ get faceIndex(): number | null
22
+
23
+ /**
24
+ * The face detection result.
25
+ */
26
+ get face(): MatchFacesDetectionFace | null
27
+
28
+ private constructor()
29
+ }