@thegrizzlylabs/react-native-genius-scan 5.0.2 → 5.0.4

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 (73) hide show
  1. package/android/build.gradle +1 -1
  2. package/ios/GSSDK/GSSDK.xcframework/Info.plist +5 -5
  3. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/GSSDK +0 -0
  4. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/GSSDK_GSSDKObjC.bundle/PrivacyInfo.xcprivacy +19 -0
  5. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/GSSDK_GSSDKObjC.bundle/en.lproj/GSSDK.strings +0 -0
  6. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKBackgroundKind.h +14 -0
  7. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKCurvatureCorrectionConfiguration.h +28 -0
  8. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKDefaultLogger.h +1 -1
  9. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKDocumentComposition.h +16 -0
  10. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKDocumentDetector.h +3 -0
  11. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKEdgeCleaning.h +14 -0
  12. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKEnhancementConfiguration.h +51 -0
  13. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKFilterColorPalette.h +13 -0
  14. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKFilterStyle.h +19 -0
  15. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKFilterType.h +11 -1
  16. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKLog.h +2 -0
  17. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKLogger.h +4 -0
  18. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKOutputConfiguration.h +41 -0
  19. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKPerspectiveCorrectionConfiguration.h +35 -0
  20. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKProcessingConfiguration.h +54 -0
  21. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKProcessingResult.h +56 -0
  22. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKResizeConfiguration.h +22 -0
  23. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKResizeResult.h +22 -0
  24. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKRotation.h +27 -0
  25. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKRotationConfiguration.h +35 -0
  26. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSKScanProcessor.h +11 -210
  27. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSSDK-Swift.h +207 -11
  28. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Headers/GSSDK.h +30 -20
  29. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Info.plist +0 -0
  30. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Modules/GSSDK.swiftmodule/arm64-apple-ios.abi.json +5562 -1703
  31. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Modules/GSSDK.swiftmodule/arm64-apple-ios.private.swiftinterface +131 -7
  32. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Modules/GSSDK.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  33. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/Modules/GSSDK.swiftmodule/arm64-apple-ios.swiftinterface +131 -7
  34. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/PrivacyInfo.xcprivacy +19 -0
  35. package/ios/GSSDK/GSSDK.xcframework/ios-arm64/GSSDK.framework/en.lproj/GSSDK.strings +0 -0
  36. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/GSSDK +0 -0
  37. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/GSSDK_GSSDKObjC.bundle/PrivacyInfo.xcprivacy +19 -0
  38. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/GSSDK_GSSDKObjC.bundle/en.lproj/GSSDK.strings +0 -0
  39. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKBackgroundKind.h +14 -0
  40. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKCurvatureCorrectionConfiguration.h +28 -0
  41. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKDefaultLogger.h +1 -1
  42. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKDocumentComposition.h +16 -0
  43. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKDocumentDetector.h +3 -0
  44. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKEdgeCleaning.h +14 -0
  45. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKEnhancementConfiguration.h +51 -0
  46. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKFilterColorPalette.h +13 -0
  47. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKFilterStyle.h +19 -0
  48. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKFilterType.h +11 -1
  49. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKLog.h +2 -0
  50. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKLogger.h +4 -0
  51. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKOutputConfiguration.h +41 -0
  52. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKPerspectiveCorrectionConfiguration.h +35 -0
  53. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKProcessingConfiguration.h +54 -0
  54. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKProcessingResult.h +56 -0
  55. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKResizeConfiguration.h +22 -0
  56. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKResizeResult.h +22 -0
  57. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKRotation.h +27 -0
  58. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKRotationConfiguration.h +35 -0
  59. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSKScanProcessor.h +11 -210
  60. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSSDK-Swift.h +414 -22
  61. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Headers/GSSDK.h +30 -20
  62. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Info.plist +0 -0
  63. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Modules/GSSDK.swiftmodule/arm64-apple-ios-simulator.abi.json +5562 -1703
  64. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Modules/GSSDK.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +131 -7
  65. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Modules/GSSDK.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  66. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Modules/GSSDK.swiftmodule/arm64-apple-ios-simulator.swiftinterface +131 -7
  67. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Modules/GSSDK.swiftmodule/x86_64-apple-ios-simulator.abi.json +5562 -1703
  68. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Modules/GSSDK.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +131 -7
  69. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Modules/GSSDK.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  70. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/Modules/GSSDK.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +131 -7
  71. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/PrivacyInfo.xcprivacy +19 -0
  72. package/ios/GSSDK/GSSDK.xcframework/ios-arm64_x86_64-simulator/GSSDK.framework/en.lproj/GSSDK.strings +0 -0
  73. package/package.json +1 -1
@@ -12,221 +12,22 @@
12
12
  #import <UIKit/UIKit.h>
13
13
 
14
14
  #import <GSSDK/GSKFilterType.h>
15
- #import <GSSDK/GSKDetectQuadrangleOptions.h>
15
+ #import <GSSDK/GSKRotation.h>
16
16
 
17
17
  NS_ASSUME_NONNULL_BEGIN
18
18
 
19
+ @class GSKCurvatureCorrectionConfiguration;
20
+ @class GSKEnhancementConfiguration;
21
+ @class GSKFilterColorConfiguration;
22
+ @class GSKFilterConfiguration;
23
+ @class GSKOutputConfiguration;
24
+ @class GSKPerspectiveCorrectionConfiguration;
25
+ @class GSKProcessingConfiguration;
26
+ @class GSKProcessingResult;
19
27
  @class GSKQuadrangle;
20
28
  @class GSKQuadrangleDetectionConfiguration;
21
- @class GSKPerspectiveCorrectionConfiguration;
22
-
23
- /// A GSKCurvatureCorrectionConfiguration defines the behavior of a GSKScanProcessor when applying curvature correction.
24
- @interface GSKCurvatureCorrectionConfiguration: NSObject
25
-
26
- /// The default configuration. This currently doesn't apply the curvature correction configuration, but this can change in future versions
27
- /// of the SDK.
28
- + (instancetype)defaultCurvatureCorrectionConfiguration;
29
-
30
- /// No curvature correction
31
- + (instancetype)noCurvatureCorrectionConfiguration;
32
-
33
- /// Specifies whether or not you want curvature correction
34
- + (instancetype)curvatureCorrectionConfigurationWithCurvatureCorrection:(BOOL)curvatureCorrection;
35
-
36
- @end
37
-
38
- /// A GSKPerspectiveCorrectionConfiguration defines the behavior of a GSKScanProcessor when applying perspective correction.
39
- @interface GSKPerspectiveCorrectionConfiguration: NSObject
40
-
41
- /**
42
- A configuration that will result in the document being auto-detected, and the perspective correction subsequently applied.
43
- */
44
- + (instancetype)automaticPerspectiveCorrectionConfiguration;
45
-
46
- /**
47
- A configuration that will result in no perspective correction being applied.
48
- */
49
- + (instancetype)noPerspectiveCorrectionConfiguration;
50
-
51
- /**
52
- A configuration that will result in applying the perspective correction defined by the quadrangle.
53
- */
54
- + (instancetype)perspectiveCorrectionConfigurationWithQuadrangle:(GSKQuadrangle *)quadrangle;
55
-
56
- @end
57
-
58
- /// A GSKEnhancementConfiguration defines the behavior of a GSKScanProcessor when applying legibility enhancements.
59
- @interface GSKEnhancementConfiguration: NSObject
60
-
61
- /**
62
- An enhancement configuration that will result in using the best filter, as detected by the Genius Scan SDK. Edge cleaning will be applied.
63
- */
64
- + (instancetype)automaticEnhancementConfiguration;
65
-
66
- /**
67
- An enhancement configuration that will result in using the specified filter.
68
- */
69
- + (instancetype)enhancementConfigurationWithFilter:(GSKFilterType)filter;
70
-
71
- /**
72
- An enhancement configuration that will result in using the specified filter, applying edge cleaning if requested and if applicable.
73
- */
74
- + (instancetype)enhancementConfigurationWithFilter:(GSKFilterType)filter cleanEdges:(BOOL)cleanEdges;
75
-
76
- @end
77
-
78
- /// Defines an image rotation by increment of 90 degrees.
79
- typedef NS_ENUM(NSInteger, GSKRotation) {
80
- GSKRotationNone = 0,
81
- GSKRotationClockwise = 1,
82
- GSKRotation180 = 2,
83
- GSKRotationCounterClockwise = 3
84
- };
85
-
86
- /// Returns the resulting rotation when applying firstRotation, then secondRotation.
87
- FOUNDATION_EXPORT GSKRotation GSKCombineRotation(GSKRotation firstRotation, GSKRotation secondRotation);
88
- /// Returns the resulting rotation when applying firstRotation, then subtracting secondRotation.
89
- FOUNDATION_EXPORT GSKRotation GSKSubtractRotation(GSKRotation firstRotation, GSKRotation secondRotation);
90
-
91
- /// A GSKRotationConfiguration defines the behavior of a GSKScanProcessor when rotating the processed image.
92
- @interface GSKRotationConfiguration: NSObject
93
-
94
- /**
95
- A rotation configuration where no rotation is applied.
96
- */
97
- + (instancetype)noRotationConfiguration;
98
-
99
- /**
100
- A rotation configuration where Genius Scan automatically detects the document's orientation.
101
- */
102
- + (instancetype)automaticRotationConfiguration;
103
-
104
- /**
105
- A rotation with a specific angle. No automatic rotation is applied.
106
- */
107
- + (instancetype)rotationConfigurationWithRotation:(GSKRotation)rotation;
108
-
109
- @end
110
-
111
- /// A GSKResizeConfiguration defines the behavior of a GSKScanProcessor when resizing the processed image.
112
- @interface GSKResizeConfiguration: NSObject
113
-
114
- - (instancetype)initWithMaxDimension:(NSUInteger)maxDimension;
115
-
116
- @property (nonatomic, assign, readonly) NSUInteger maxDimension;
117
-
118
- @end
119
-
120
- /**
121
- A configuration that defines the output of the processing.
122
- */
123
- @interface GSKOutputConfiguration: NSObject
124
- /**
125
- JPEG for color images.
126
- PNG for monochrome images.
127
- A default, sensible configuration: jpegQuality: 0.60
128
- */
129
- + (instancetype)defaultConfiguration;
130
-
131
- /**
132
- JPEG for color images with the specified quality.
133
- PNG for monochrome images.
134
- */
135
- + (instancetype)automaticConfigurationWithJPEGQuality:(CGFloat)quality;
136
-
137
-
138
- /// Image output will be JPEG, quality 0.60.
139
- + (instancetype)jpegOutputConfiguration;
140
-
141
- /// Image output will be JPEG with specified quality.
142
- + (instancetype)jpegOutputConfigurationWithQuality:(CGFloat)quality;
143
-
144
- /// Image output will be PNG.
145
- + (instancetype)pngOutputConfiguration;
146
-
147
- @end
148
-
149
- @interface GSKProcessingResult: NSObject
150
- /// The output file.
151
- /// It's located in the temporary directory, so you need to move it to a permanent destination.
152
- @property (nonatomic, readonly) NSString *processedImagePath;
153
-
154
- /// The quadrangle that was used for perspective correction
155
- @property (nonatomic, strong, readonly) GSKQuadrangle *appliedQuadrangle;
156
-
157
- /// The filter that was applied during the enhancement phase
158
- @property (nonatomic, assign, readonly) GSKFilterType appliedFilter;
159
-
160
- /**
161
- The rotation applied during the rotation phase.
162
-
163
- If you specified a rotation angle as part of GSKRotationConfiguration, you will get this angle back here.
164
- If you requested an automatic orientation detection as part of the GSKRotationConfiguration, appliedRotation will correspond the rotation applied by the SDK
165
- to rotate the image according to the estimated orientation.
166
-
167
- Note: The output of the processing is always an up-oriented image, even if the original image had an EXIF orientation (see UIImage's imageOrientation property).
168
- `appliedRotation` doesn't include the rotation applied to the image buffer to remove the EXIF information. The `appliedRotation` only includes the "visual" rotation
169
- needed to display the image to the user:
170
-
171
- - If the input image imageOrientation is UIImageOrientationUp, and you request a clockwise rotation, appliedRotation will be GSKRotationClockwise.
172
- - If the input image imageOrientation is UIImageOrientationUp, and you request an automatic rotation, which detects that the image must be rotated clockwise to
173
- look "straight", appliedRotation will be GSKRotationClockwise.
174
- - If the input image imageOrientation is UIImageOrientationRight, and you request a clockwise rotation, appliedRotation will be GSKRotationClockwise. The output
175
- image orientation will be UIImageOrientationUp.
176
- - If the input image imageOrientation is UIImageOrientationUp, and you request an automatic rotation, which detects that the image must be rotated clockwise to
177
- look "straight", appliedRotation will be GSKRotationClockwise. The output image orientation will be UIImageOrientationUp.
178
- */
179
- @property (nonatomic, assign, readonly) GSKRotation appliedRotation;
180
-
181
- @end
182
-
183
- /// The result of a resizing operation
184
- @interface GSKResizeResult: NSObject
185
-
186
- - (instancetype)initWithResizedImagePath:(NSString *)path;
187
-
188
- @property (nonatomic, readonly) NSString *resizedImagePath;
189
-
190
- @end
191
-
192
- // MARK: -
193
-
194
- /**
195
- The configuration object to configure the GSKProcessor's behavior.
196
-
197
- You can use the default constructors.
198
- */
199
- @interface GSKProcessingConfiguration : NSObject
200
-
201
- + (instancetype)configurationWithPerspectiveCorrectionConfiguration:(GSKPerspectiveCorrectionConfiguration *)perspectiveCorrectionConfiguration
202
- curvatureCorrectionConfiguration:(GSKCurvatureCorrectionConfiguration *)curvatureCorrectionConfiguration
203
- enhancementConfiguration:(GSKEnhancementConfiguration *)enhancementConfiguration
204
- rotationConfiguration:(GSKRotationConfiguration *)rotationConfiguration
205
- outputConfiguration:(GSKOutputConfiguration *)outputConfiguration;
206
-
207
- /**
208
- Automatic perspective correction, distortion correction, followed by automatic enhancement and automatic rotation. Output is JPEG.
209
- */
210
- + (instancetype)defaultConfiguration;
211
-
212
- /// Specify how to correct perspective distortions present in the scan (such as when the scan was taken with an angle)
213
- @property (nonatomic, strong, readonly) GSKPerspectiveCorrectionConfiguration *perspectiveCorrectionConfiguration;
214
-
215
- /// Specify how to correct curvature distortions present in the scan (such as a bent book)
216
- @property (nonatomic, strong, readonly) GSKCurvatureCorrectionConfiguration *curvatureCorrectionConfiguration;
217
-
218
- /// The enhancement configuration. This includes the filters enhancing the legibility of the document.
219
- @property (nonatomic, strong, readonly) GSKEnhancementConfiguration *enhancementConfiguration;
220
-
221
- /// The rotation configuration. The rotation will be applied after all the other processing.
222
- @property (nonatomic, strong, readonly) GSKRotationConfiguration *rotationConfiguration;
223
-
224
- /// Configures the output format of the processing.
225
- @property (nonatomic, strong, readonly) GSKOutputConfiguration *outputConfiguration;
226
-
227
- @end
228
-
229
- // MARK: -
29
+ @class GSKResizeConfiguration;
30
+ @class GSKResizeResult;
230
31
 
231
32
  /**
232
33
  The document processor is the central class of the GSSDK's image processing algorithms.
@@ -277,6 +277,7 @@ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
277
277
  #if __has_warning("-Watimport-in-framework-header")
278
278
  #pragma clang diagnostic ignored "-Watimport-in-framework-header"
279
279
  #endif
280
+ @import CoreFoundation;
280
281
  @import Dispatch;
281
282
  @import Foundation;
282
283
  @import ObjectiveC;
@@ -425,6 +426,183 @@ SWIFT_PROTOCOL("_TtP5GSSDK25GSKDocumentImageProcessor_")
425
426
  @end
426
427
 
427
428
 
429
+ /// A configuration to specify the background cleaning to apply with GSKScanProcessor.
430
+ SWIFT_CLASS("_TtC5GSSDK40GSKFilterBackgroundCleaningConfiguration")
431
+ @interface GSKFilterBackgroundCleaningConfiguration : NSObject
432
+ /// Determines if the edges of the document must be cleaned or not. Cleaning the edges might result in erasing
433
+ /// some information that’s close the edges but yields a much cleaner document.
434
+ @property (nonatomic, readonly) GSKEdgeCleaning edgeCleaning;
435
+ /// Determines if the document’s background is rather light (white) or dark (black).
436
+ @property (nonatomic, readonly) GSKBackgroundKind backgroundKind;
437
+ /// Determines if the document is composed mainly of text, or contains a mix of text and photos.
438
+ @property (nonatomic, readonly) GSKDocumentComposition documentComposition;
439
+ /// Determines the strength of the background cleaning. Value between 0 and 1.
440
+ @property (nonatomic, readonly) CGFloat strength;
441
+ /// \param edgeCleaning If enabled, the document edges will be cleaned up. This helps if the document is torn or folded in
442
+ /// the corners, of if the cropping wasn’t perfectly accurate.
443
+ ///
444
+ /// \param backgroundKind If set to dark, the document is considered as having a dark background, and will be processed
445
+ /// consequently.
446
+ ///
447
+ /// \param documentComposition If set to “Text and photo”, indicates that document is a composite of text and photos (such
448
+ /// as a magazine page). The filter will be less aggressive to preserve the photos.
449
+ ///
450
+ /// \param strength The strength of the filter, between 0 and 1.
451
+ ///
452
+ - (nonnull instancetype)initWithEdgeCleaning:(GSKEdgeCleaning)edgeCleaning backgroundKind:(GSKBackgroundKind)backgroundKind documentComposition:(GSKDocumentComposition)documentComposition strength:(CGFloat)strength OBJC_DESIGNATED_INITIALIZER;
453
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
454
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
455
+ @end
456
+
457
+
458
+ @interface GSKFilterBackgroundCleaningConfiguration (SWIFT_EXTENSION(GSSDK))
459
+ @property (nonatomic, readonly, copy) NSString * _Nonnull description;
460
+ @end
461
+
462
+
463
+ @interface GSKFilterBackgroundCleaningConfiguration (SWIFT_EXTENSION(GSSDK))
464
+ - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
465
+ @property (nonatomic, readonly) NSUInteger hash;
466
+ @end
467
+
468
+
469
+ /// A configuration to determine the colors of the output of the GSKScanProcessor.
470
+ SWIFT_CLASS("_TtC5GSSDK27GSKFilterColorConfiguration")
471
+ @interface GSKFilterColorConfiguration : NSObject
472
+ /// A configuration that results in a monochrome document.
473
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterColorConfiguration * _Nonnull monochrome;)
474
+ + (GSKFilterColorConfiguration * _Nonnull)monochrome SWIFT_WARN_UNUSED_RESULT;
475
+ /// A configuration that results in a grayscale document.
476
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterColorConfiguration * _Nonnull grayscale;)
477
+ + (GSKFilterColorConfiguration * _Nonnull)grayscale SWIFT_WARN_UNUSED_RESULT;
478
+ /// A configuration that results in a color document.
479
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterColorConfiguration * _Nonnull color;)
480
+ + (GSKFilterColorConfiguration * _Nonnull)color SWIFT_WARN_UNUSED_RESULT;
481
+ /// The palette of colors
482
+ @property (nonatomic, readonly) GSKFilterColorPalette palette;
483
+ - (nonnull instancetype)initWithPalette:(GSKFilterColorPalette)palette OBJC_DESIGNATED_INITIALIZER;
484
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
485
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
486
+ @end
487
+
488
+
489
+ @interface GSKFilterColorConfiguration (SWIFT_EXTENSION(GSSDK))
490
+ @property (nonatomic, readonly, copy) NSString * _Nonnull description;
491
+ @end
492
+
493
+
494
+ @interface GSKFilterColorConfiguration (SWIFT_EXTENSION(GSSDK))
495
+ - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
496
+ @property (nonatomic, readonly) NSUInteger hash;
497
+ @end
498
+
499
+ @class GSKFilterLightingCorrectionConfiguration;
500
+
501
+ /// The configuration to use when applying a document enhancement filter.
502
+ SWIFT_CLASS("_TtC5GSSDK22GSKFilterConfiguration")
503
+ @interface GSKFilterConfiguration : NSObject
504
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterConfiguration * _Nonnull noOp;)
505
+ + (GSKFilterConfiguration * _Nonnull)noOp SWIFT_WARN_UNUSED_RESULT;
506
+ /// A photo filter configuration (no background cleaning)
507
+ /// \param lightingCorrectionConfiguration an optional lighting correction configuration. If nil, no correction is applied.
508
+ ///
509
+ /// \param colorConfiguration an optional color configuration. If nil, the color configuration is used.
510
+ ///
511
+ + (GSKFilterConfiguration * _Nonnull)photoWithLightingCorrectionConfiguration:(GSKFilterLightingCorrectionConfiguration * _Nullable)lightingCorrectionConfiguration colorConfiguration:(GSKFilterColorConfiguration * _Nullable)colorConfiguration SWIFT_WARN_UNUSED_RESULT;
512
+ /// The lighting configuration
513
+ /// Determines the parameters to tune the image levels, contrast.
514
+ @property (nonatomic, readonly, strong) GSKFilterLightingCorrectionConfiguration * _Nullable lightingCorrectionConfiguration;
515
+ /// The background cleaning configuration
516
+ /// Determines the cleaning up of the document’s background.
517
+ @property (nonatomic, readonly, strong) GSKFilterBackgroundCleaningConfiguration * _Nullable backgroundCleaningConfiguration;
518
+ /// The color configuration
519
+ /// Determines the filter’s output colors.
520
+ @property (nonatomic, readonly, strong) GSKFilterColorConfiguration * _Nullable colorConfiguration;
521
+ + (GSKFilterConfiguration * _Nonnull)configurationWithLightingCorrectionConfiguration:(GSKFilterLightingCorrectionConfiguration * _Nullable)lightingCorrectionConfiguration backgroundCleaningConfiguration:(GSKFilterBackgroundCleaningConfiguration * _Nullable)backgroundCleaningConfiguration colorConfiguration:(GSKFilterColorConfiguration * _Nullable)colorConfiguration SWIFT_WARN_UNUSED_RESULT;
522
+ /// A filter configuration.
523
+ /// \param lightingCorrectionConfiguration an optional lighting correction configuration. If nil, no correction is applied.
524
+ ///
525
+ /// \param backgroundCleaningConfiguration an optional background cleaning configuration. If nil, no background
526
+ /// cleaning is applied.
527
+ ///
528
+ /// \param colorConfiguration an optional color configuration. If nil, the color configuration is used.
529
+ ///
530
+ - (nonnull instancetype)initWithLightingCorrectionConfiguration:(GSKFilterLightingCorrectionConfiguration * _Nullable)lightingCorrectionConfiguration backgroundCleaningConfiguration:(GSKFilterBackgroundCleaningConfiguration * _Nullable)backgroundCleaningConfiguration colorConfiguration:(GSKFilterColorConfiguration * _Nullable)colorConfiguration OBJC_DESIGNATED_INITIALIZER;
531
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
532
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
533
+ @end
534
+
535
+
536
+ @interface GSKFilterConfiguration (SWIFT_EXTENSION(GSSDK))
537
+ - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
538
+ @property (nonatomic, readonly) NSUInteger hash;
539
+ @end
540
+
541
+
542
+ @interface GSKFilterConfiguration (SWIFT_EXTENSION(GSSDK))
543
+ /// A soft document filter resulting in a grayscale document.
544
+ /// This filter is ideal for documents with light print such as carbon copy,
545
+ /// documents with pale text that you need to preserve, or documents where the
546
+ /// text has little contrast with the background.
547
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterConfiguration * _Nonnull softGrayscale;)
548
+ + (GSKFilterConfiguration * _Nonnull)softGrayscale SWIFT_WARN_UNUSED_RESULT;
549
+ /// A soft document filter resulting in a color document.
550
+ /// This filter is ideal for documents that mix text and images and it also preserves
551
+ /// text with low contrast.
552
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterConfiguration * _Nonnull softColor;)
553
+ + (GSKFilterConfiguration * _Nonnull)softColor SWIFT_WARN_UNUSED_RESULT;
554
+ /// A strong document filter resulting in a monochrome document.
555
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterConfiguration * _Nonnull strongMonochrome;)
556
+ + (GSKFilterConfiguration * _Nonnull)strongMonochrome SWIFT_WARN_UNUSED_RESULT;
557
+ /// A strong document filter resulting in a grayscale document.
558
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterConfiguration * _Nonnull strongGrayscale;)
559
+ + (GSKFilterConfiguration * _Nonnull)strongGrayscale SWIFT_WARN_UNUSED_RESULT;
560
+ /// A strong document filter resulting in a color document.
561
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterConfiguration * _Nonnull strongColor;)
562
+ + (GSKFilterConfiguration * _Nonnull)strongColor SWIFT_WARN_UNUSED_RESULT;
563
+ /// A filter specially designed for photos.
564
+ /// Unlike document filters, this filter will not attempt any background cleaning but will
565
+ /// slightly improve the lighting of the image.
566
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterConfiguration * _Nonnull photo;)
567
+ + (GSKFilterConfiguration * _Nonnull)photo SWIFT_WARN_UNUSED_RESULT;
568
+ /// A filter specially designed to treat documents with a dark background, in particular white text
569
+ /// over a black background.
570
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterConfiguration * _Nonnull darkBackground;)
571
+ + (GSKFilterConfiguration * _Nonnull)darkBackground SWIFT_WARN_UNUSED_RESULT;
572
+ @end
573
+
574
+
575
+ /// A configuration to adjust the lighting of a document with GSKScanProcessor.
576
+ SWIFT_CLASS("_TtC5GSSDK40GSKFilterLightingCorrectionConfiguration")
577
+ @interface GSKFilterLightingCorrectionConfiguration : NSObject
578
+ /// A configuration that doesn’t adjust the lighting of a document.
579
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterLightingCorrectionConfiguration * _Nonnull noOp;)
580
+ + (GSKFilterLightingCorrectionConfiguration * _Nonnull)noOp SWIFT_WARN_UNUSED_RESULT;
581
+ /// A configuration to adjust the lighting of document containing text.
582
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterLightingCorrectionConfiguration * _Nonnull textDocument;)
583
+ + (GSKFilterLightingCorrectionConfiguration * _Nonnull)textDocument SWIFT_WARN_UNUSED_RESULT;
584
+ /// A configuration to adjust the lighting of a document looking like a photo.
585
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) GSKFilterLightingCorrectionConfiguration * _Nonnull photos;)
586
+ + (GSKFilterLightingCorrectionConfiguration * _Nonnull)photos SWIFT_WARN_UNUSED_RESULT;
587
+ @property (nonatomic, readonly) CGFloat minThreshold;
588
+ @property (nonatomic, readonly) CGFloat maxThreshold;
589
+ - (nonnull instancetype)initWithMinThreshold:(CGFloat)minThreshold maxThreshold:(CGFloat)maxThreshold OBJC_DESIGNATED_INITIALIZER;
590
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
591
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
592
+ @end
593
+
594
+
595
+ @interface GSKFilterLightingCorrectionConfiguration (SWIFT_EXTENSION(GSSDK))
596
+ @property (nonatomic, readonly, copy) NSString * _Nonnull description;
597
+ @end
598
+
599
+
600
+ @interface GSKFilterLightingCorrectionConfiguration (SWIFT_EXTENSION(GSSDK))
601
+ - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
602
+ @property (nonatomic, readonly) NSUInteger hash;
603
+ @end
604
+
605
+
428
606
 
429
607
  /// Internal use.
430
608
  SWIFT_CLASS("_TtC5GSSDK22GSKLicenseKeyRefresher")
@@ -678,11 +856,6 @@ SWIFT_CLASS("_TtC5GSSDK24GSKScanFlowConfiguration")
678
856
  @end
679
857
 
680
858
 
681
- @interface GSKScanFlowConfiguration (SWIFT_EXTENSION(GSSDK))
682
- - (BOOL)validate:(NSError * _Nullable * _Nullable)error;
683
- @end
684
-
685
-
686
859
  @interface GSKScanFlowConfiguration (SWIFT_EXTENSION(GSSDK))
687
860
  /// Create a configuration from a dictionary.
688
861
  /// This is particularly useful for interfacing with React Native but shouldn’t
@@ -692,6 +865,11 @@ SWIFT_CLASS("_TtC5GSSDK24GSKScanFlowConfiguration")
692
865
 
693
866
 
694
867
 
868
+ @interface GSKScanFlowConfiguration (SWIFT_EXTENSION(GSSDK))
869
+ - (BOOL)validate:(NSError * _Nullable * _Nullable)error;
870
+ @end
871
+
872
+
695
873
  /// Enum that defines various errors that can occur during a scan flow.
696
874
  typedef SWIFT_ENUM(NSInteger, GSKScanFlowError, open) {
697
875
  /// User has canceled the scan flow
@@ -704,12 +882,30 @@ typedef SWIFT_ENUM(NSInteger, GSKScanFlowError, open) {
704
882
  /// The different possible filters for the scanner UI.
705
883
  /// All cases match <code>GSKFilterType</code> values except <code>.automatic</code>.
706
884
  typedef SWIFT_ENUM(NSInteger, GSKScanFlowFilterType, open) {
707
- GSKScanFlowFilterAutomatic SWIFT_COMPILE_NAME("automatic") = 0,
708
- GSKScanFlowFilterNone SWIFT_COMPILE_NAME("none") = 1,
709
- GSKScanFlowFilterBlackAndWhite SWIFT_COMPILE_NAME("blackAndWhite") = 2,
710
- GSKScanFlowFilterColor SWIFT_COMPILE_NAME("color") = 3,
711
- GSKScanFlowFilterPhoto SWIFT_COMPILE_NAME("photo") = 4,
712
- GSKScanFlowFilterMonochrome SWIFT_COMPILE_NAME("monochrome") = 5,
885
+ GSKScanFlowFilterNone SWIFT_COMPILE_NAME("none") = 0,
886
+ /// Automatic filter
887
+ GSKScanFlowFilterAutomatic SWIFT_COMPILE_NAME("automatic") = 1,
888
+ /// Automatic filter with a monochrome output
889
+ GSKScanFlowFilterAutomaticDocumentMonochrome SWIFT_COMPILE_NAME("automaticDocumentMonochrome") = 2,
890
+ /// Automatic filter with a grayscale output
891
+ GSKScanFlowFilterAutomaticDocumentGrayscale SWIFT_COMPILE_NAME("automaticDocumentGrayscale") = 3,
892
+ /// Automatic filter with a color output
893
+ GSKScanFlowFilterAutomaticDocumentColor SWIFT_COMPILE_NAME("automaticDocumentColor") = 4,
894
+ /// A soft gray scale filter, ideal for documents containing both text and photos, or for text documents with
895
+ /// a low-contrast between the text and the background.
896
+ GSKScanFlowFilterSoftGrayscale SWIFT_COMPILE_NAME("softGrayscale") = 5,
897
+ /// A soft color filter, ideal for documents containing both text and photos
898
+ GSKScanFlowFilterSoftColor SWIFT_COMPILE_NAME("softColor") = 6,
899
+ /// A strong monochrome filter, ideal for text documents
900
+ GSKScanFlowFilterStrongMonochrome SWIFT_COMPILE_NAME("strongMonochrome") = 7,
901
+ /// A strong grayscale filter, ideal for text documents
902
+ GSKScanFlowFilterStrongGrayscale SWIFT_COMPILE_NAME("strongGrayscale") = 8,
903
+ /// A strong color filter, ideal for text documents with some color
904
+ GSKScanFlowFilterStrongColor SWIFT_COMPILE_NAME("strongColor") = 9,
905
+ /// A filter that ensures best results for documents with a dark background
906
+ GSKScanFlowFilterDarkBackground SWIFT_COMPILE_NAME("darkBackground") = 10,
907
+ /// A filter designed to improve scans of photos.
908
+ GSKScanFlowFilterPhoto SWIFT_COMPILE_NAME("photo") = 11,
713
909
  };
714
910
 
715
911
  /// The capture screen flash mode.
@@ -11,32 +11,42 @@ FOUNDATION_EXPORT double GSSDKVersionNumber;
11
11
  //! Project version string for GSSDK.
12
12
  FOUNDATION_EXPORT const unsigned char GSSDKVersionString[];
13
13
 
14
+ #import <GSSDK/GSKBackgroundKind.h>
15
+ #import <GSSDK/GSKCameraSession.h>
16
+ #import <GSSDK/GSKCameraViewController.h>
14
17
  #import <GSSDK/GSKCore.h>
18
+ #import <GSSDK/GSKCurvatureCorrectionConfiguration.h>
19
+ #import <GSSDK/GSKDefaultLogger.h>
20
+ #import <GSSDK/GSKDocumentComposition.h>
15
21
  #import <GSSDK/GSKDocumentDetector.h>
16
- #import <GSSDK/GSKScanProcessor.h>
22
+ #import <GSSDK/GSKEdgeCleaning.h>
23
+ #import <GSSDK/GSKEditFrameView.h>
24
+ #import <GSSDK/GSKEditFrameViewController.h>
25
+ #import <GSSDK/GSKEditableFrame.h>
26
+ #import <GSSDK/GSKEnhancementConfiguration.h>
17
27
  #import <GSSDK/GSKError.h>
18
- #import <GSSDK/UIImage+GSKUtils.h>
28
+ #import <GSSDK/GSKFilterColorPalette.h>
29
+ #import <GSSDK/GSKFilterStyle.h>
30
+ #import <GSSDK/GSKLicenseKeyChecker.h>
19
31
  #import <GSSDK/GSKLog.h>
20
32
  #import <GSSDK/GSKLoggerSeverity.h>
21
- #import <GSSDK/GSKDefaultLogger.h>
22
- #import <GSSDK/GSKLicenseKeyChecker.h>
23
-
24
- // UI
25
- #import <GSSDK/GSKCameraSession.h>
26
- #import <GSSDK/GSKCameraViewController.h>
27
- #import <GSSDK/GSKEditableFrame.h>
28
- #import <GSSDK/GSKEditFrameView.h>
29
- #import <GSSDK/GSKEditFrameViewController.h>
30
- #import <GSSDK/GSKShutterView.h>
31
- #import <GSSDK/GSKView.h>
33
+ #import <GSSDK/GSKMagnifierView.h>
34
+ #import <GSSDK/GSKOutputConfiguration.h>
35
+ #import <GSSDK/GSKPerspectiveCorrectionConfiguration.h>
36
+ #import <GSSDK/GSKProcessingConfiguration.h>
37
+ #import <GSSDK/GSKProcessingResult.h>
32
38
  #import <GSSDK/GSKQuadrangle.h>
39
+ #import <GSSDK/GSKResizeConfiguration.h>
40
+ #import <GSSDK/GSKResizeResult.h>
41
+ #import <GSSDK/GSKRotationConfiguration.h>
33
42
  #import <GSSDK/GSKScan.h>
34
- #import <GSSDK/GSKTriggerDecider.h>
35
- #import <GSSDK/GSKMagnifierView.h>
36
- #import <GSSDK/MBProgressHUD.h>
37
-
38
- // ScanFlow
43
+ #import <GSSDK/GSKScanFlowErrorDomain.h>
44
+ #import <GSSDK/GSKScanFlowOCROutputFormats.h>
39
45
  #import <GSSDK/GSKScanFlowPostProcessingActions.h>
40
46
  #import <GSSDK/GSKScanFlowStructuredData.h>
41
- #import <GSSDK/GSKScanFlowOCROutputFormats.h>
42
- #import <GSSDK/GSKScanFlowErrorDomain.h>
47
+ #import <GSSDK/GSKScanProcessor.h>
48
+ #import <GSSDK/GSKShutterView.h>
49
+ #import <GSSDK/GSKTriggerDecider.h>
50
+ #import <GSSDK/GSKView.h>
51
+ #import <GSSDK/MBProgressHUD.h>
52
+ #import <GSSDK/UIImage+GSKUtils.h>