scandit-datacapture-frameworks-label 8.1.0-beta.1 → 8.2.0-beta.1

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 (47) hide show
  1. package/__mocks__/ScanditDataCaptureCore.ts +94 -0
  2. package/dist/dts/defaults/LabelCaptureDefaults.d.ts +2 -0
  3. package/dist/dts/defaults/index.d.ts +1 -1
  4. package/dist/dts/generated/LabelProxy.d.ts +30 -0
  5. package/dist/dts/generated/LabelProxyAdapter.d.ts +256 -0
  6. package/dist/dts/generated/index.d.ts +6 -0
  7. package/dist/dts/labelcapture/AdaptiveRecognitionResult.d.ts +4 -0
  8. package/dist/dts/labelcapture/AdaptiveRecognitionResultType.d.ts +3 -0
  9. package/dist/dts/labelcapture/CustomBarcode.d.ts +5 -0
  10. package/dist/dts/labelcapture/CustomText.d.ts +4 -0
  11. package/dist/dts/labelcapture/ExpiryDateText.d.ts +4 -0
  12. package/dist/dts/labelcapture/ImeiOneBarcode.d.ts +5 -0
  13. package/dist/dts/labelcapture/ImeiTwoBarcode.d.ts +5 -0
  14. package/dist/dts/labelcapture/LabelCaptureAdaptiveRecognitionSettings.d.ts +11 -0
  15. package/dist/dts/labelcapture/LabelCaptureValidationFlowListener.d.ts +1 -0
  16. package/dist/dts/labelcapture/LabelCaptureValidationFlowSettings.d.ts +22 -0
  17. package/dist/dts/labelcapture/PackingDateText.d.ts +4 -0
  18. package/dist/dts/labelcapture/PartNumberBarcode.d.ts +5 -0
  19. package/dist/dts/labelcapture/ReceiptScanningLineItem.d.ts +13 -0
  20. package/dist/dts/labelcapture/ReceiptScanningResult.d.ts +27 -0
  21. package/dist/dts/labelcapture/SerialNumberBarcode.d.ts +5 -0
  22. package/dist/dts/labelcapture/TotalPriceText.d.ts +4 -0
  23. package/dist/dts/labelcapture/UnitPriceText.d.ts +4 -0
  24. package/dist/dts/labelcapture/WeightText.d.ts +4 -0
  25. package/dist/dts/labelcapture/controller/LabelCaptureAdaptiveRecognitionOverlayController.d.ts +29 -0
  26. package/dist/dts/labelcapture/controller/LabelCaptureAdvancedOverlayController.d.ts +7 -47
  27. package/dist/dts/labelcapture/controller/LabelCaptureBasicOverlayController.d.ts +7 -25
  28. package/dist/dts/labelcapture/controller/LabelCaptureController.d.ts +4 -26
  29. package/dist/dts/labelcapture/controller/LabelCaptureValidationFlowOverlayController.d.ts +13 -15
  30. package/dist/dts/labelcapture/index.d.ts +8 -0
  31. package/dist/dts/labelcapture/private/PrivateLabelField.d.ts +2 -2
  32. package/dist/dts/labelcapture/view/LabelCaptureAdaptiveRecognitionListener.d.ts +5 -0
  33. package/dist/dts/labelcapture/view/LabelCaptureAdaptiveRecognitionOverlay.d.ts +20 -0
  34. package/dist/dts/labelcapture/view/LabelCaptureAdvancedOverlay.d.ts +1 -0
  35. package/dist/dts/labelcapture/view/LabelCaptureBasicOverlay.d.ts +2 -1
  36. package/dist/dts/labelcapture/view/LabelCaptureValidationFlowOverlay.d.ts +1 -0
  37. package/dist/dts/proxy-types.d.ts +1 -1
  38. package/dist/index.js +1163 -53
  39. package/dist/index.js.map +1 -1
  40. package/jest.config.js +38 -0
  41. package/package.json +3 -3
  42. package/test/AdaptiveRecognitionResultType.test.ts +19 -0
  43. package/test/LabelCaptureAdaptiveRecognitionSettings.test.ts +115 -0
  44. package/test/LabelCaptureValidationFlowOverlayController.test.ts +427 -0
  45. package/test/LabelCaptureValidationFlowSettings.test.ts +120 -0
  46. package/test/ReceiptScanningLineItem.test.ts +99 -0
  47. package/test/ReceiptScanningResult.test.ts +247 -0
@@ -0,0 +1,94 @@
1
+ import { jest } from '@jest/globals';
2
+ import { DataCaptureContext, DataCaptureMode, DataCaptureOverlay, DataCaptureView, NativeCaller, PrivateDataCaptureOverlay } from 'scandit-datacapture-frameworks-core';
3
+ import { EventEmitter } from "scandit-datacapture-frameworks-core/node_modules/eventemitter3"
4
+
5
+ export class MockDataCaptureView implements DataCaptureView {
6
+ public get viewId(): number {
7
+ return 1;
8
+ }
9
+
10
+ addOverlay = jest.fn((overlay: DataCaptureOverlay): Promise<void> => {
11
+ // @ts-ignore
12
+ (overlay as any as PrivateDataCaptureOverlay).view = this;
13
+ return Promise.resolve();
14
+ });
15
+
16
+ removeOverlay = jest.fn((overlay: DataCaptureOverlay): Promise<void> => {
17
+ (overlay as any as PrivateDataCaptureOverlay).view = null;
18
+ return Promise.resolve();
19
+ });
20
+ }
21
+
22
+ // @ts-ignore
23
+ export class MockDataCaptureContext implements DataCaptureContext {
24
+ addMode = jest.fn((mode: DataCaptureMode): Promise<void> => {
25
+ // @ts-ignore
26
+ (mode as any as PrivateDataCaptureMode)._context = this;
27
+ return Promise.resolve();
28
+ });
29
+
30
+ setMode = jest.fn((mode: DataCaptureMode): Promise<void> => {
31
+ // @ts-ignore
32
+ (mode as any as PrivateDataCaptureMode)._context = this;
33
+ return Promise.resolve();
34
+ });
35
+
36
+ update = jest.fn(() => Promise.resolve());
37
+ initializeAsync = jest.fn(() => Promise.resolve())
38
+ }
39
+
40
+ // Mock subscription object that mimics React Native's EmitterSubscription
41
+ class MockEmitterSubscription {
42
+ constructor(
43
+ private emitter: EventEmitter,
44
+ private eventType: string,
45
+ private listener: (...args: any[]) => void
46
+ ) {}
47
+
48
+ remove(): void {
49
+ this.emitter.removeListener(this.eventType, this.listener);
50
+ }
51
+ }
52
+
53
+ // Mock NativeEventEmitter that mimics React Native's NativeEventEmitter
54
+ export class MockNativeEventEmitter {
55
+ private emitter: EventEmitter;
56
+
57
+ constructor() {
58
+ this.emitter = new EventEmitter();
59
+ }
60
+
61
+ addListener(eventType: string, listener: (...args: any[]) => void): MockEmitterSubscription {
62
+ this.emitter.addListener(eventType, listener);
63
+ return new MockEmitterSubscription(this.emitter, eventType, listener);
64
+ }
65
+
66
+ removeAllListeners(eventType?: string): void {
67
+ this.emitter.removeAllListeners(eventType);
68
+ }
69
+
70
+ emit(eventType: string, ...args: any[]): boolean {
71
+ return this.emitter.emit(eventType, ...args);
72
+ }
73
+ }
74
+
75
+ export class MockCaller implements NativeCaller {
76
+ constructor(public nativeModule: any, public emmiter: MockNativeEventEmitter) {
77
+ }
78
+
79
+ eventHook(args: any) {
80
+ return args;
81
+ }
82
+ callFn(fnName: string, args: object | undefined | null): Promise<any> {
83
+ return this.nativeModule[fnName](args);
84
+ }
85
+ async registerEvent(evName: string, handler: (args: any) => Promise<void>): Promise<any> {
86
+ return this.emmiter.addListener(evName, handler);
87
+ }
88
+ async unregisterEvent(evName: string, subscription: any): Promise<void> {
89
+ if (subscription && subscription.remove) {
90
+ await subscription.remove();
91
+ }
92
+ }
93
+ }
94
+
@@ -22,5 +22,7 @@ export interface LabelCaptureDefaults {
22
22
  };
23
23
  };
24
24
  }
25
+ export declare function setLabelCaptureDefaultsLoader(loader: () => void): void;
26
+ export declare function ensureLabelCaptureDefaults(): LabelCaptureDefaults;
25
27
  export declare function loadLabelCaptureDefaults(jsonDefaults: any): void;
26
28
  export declare function getLabelCaptureDefaults(): LabelCaptureDefaults;
@@ -1 +1 @@
1
- export { loadLabelCaptureDefaults, getLabelCaptureDefaults, LabelCaptureDefaults } from './LabelCaptureDefaults';
1
+ export { loadLabelCaptureDefaults, getLabelCaptureDefaults, LabelCaptureDefaults, setLabelCaptureDefaultsLoader, ensureLabelCaptureDefaults } from './LabelCaptureDefaults';
@@ -0,0 +1,30 @@
1
+ import { BaseProxy } from 'scandit-datacapture-frameworks-core';
2
+ /**
3
+ * Label module - retail and transportation label scanning
4
+ * Generated from schema definition.
5
+ *
6
+ * Single entry point interface - all operations go through $executeLabel.
7
+ * The LabelController handles method-specific logic and calls this proxy.
8
+ * The NativeProxy automatically handles the `$` prefix for native method calls.
9
+ */
10
+ export interface LabelProxy extends BaseProxy {
11
+ /**
12
+ * Single entry point for all Label operations.
13
+ * Routes to appropriate native command based on moduleName and methodName.
14
+ *
15
+ * @param params Object containing:
16
+ * - moduleName: The name of the module to execute against
17
+ * - methodName: The name of the method to execute
18
+ * - ...other parameters specific to the method
19
+ *
20
+ * @returns Promise resolving to the result (type depends on methodName)
21
+ *
22
+ * Note: This method is called with the `$` prefix ($executeLabel) which is
23
+ * automatically handled by NativeProxy to route to native implementation.
24
+ */
25
+ $executeLabel(params: {
26
+ moduleName: string;
27
+ methodName: string;
28
+ [key: string]: any;
29
+ }): Promise<any>;
30
+ }
@@ -0,0 +1,256 @@
1
+ import { LabelProxy } from './LabelProxy';
2
+ /**
3
+ * Adapter class for Label operations.
4
+ * Provides typed methods that internally call $executeLabel.
5
+ * Generated from schema definition to ensure parameter and method name consistency.
6
+ */
7
+ export declare class LabelProxyAdapter {
8
+ private proxy;
9
+ constructor(proxy: LabelProxy);
10
+ /**
11
+ * Finish callback for label capture did update session event
12
+ * @param modeId Unique identifier of the label capture mode
13
+ * @param isEnabled Whether the mode is enabled
14
+ */
15
+ finishLabelCaptureListenerDidUpdateSession({ modeId, isEnabled, }: {
16
+ modeId: number;
17
+ isEnabled: boolean;
18
+ }): Promise<void>;
19
+ /**
20
+ * Register persistent event listener for label capture events
21
+ * @param modeId Unique identifier of the label capture mode
22
+ */
23
+ addLabelCaptureListener({ modeId }: {
24
+ modeId: number;
25
+ }): Promise<void>;
26
+ /**
27
+ * Unregister event listener for label capture events
28
+ * @param modeId Unique identifier of the label capture mode
29
+ */
30
+ removeLabelCaptureListener({ modeId }: {
31
+ modeId: number;
32
+ }): Promise<void>;
33
+ /**
34
+ * Sets the enabled state of the label capture mode
35
+ * @param modeId Unique identifier of the label capture mode
36
+ * @param isEnabled Whether the mode is enabled
37
+ */
38
+ setLabelCaptureModeEnabledState({ modeId, isEnabled, }: {
39
+ modeId: number;
40
+ isEnabled: boolean;
41
+ }): Promise<void>;
42
+ /**
43
+ * Updates the label capture mode configuration
44
+ * @param modeJson Label capture mode configuration as JSON string
45
+ */
46
+ updateLabelCaptureMode({ modeJson }: {
47
+ modeJson: string;
48
+ }): Promise<void>;
49
+ /**
50
+ * Updates the label capture mode settings
51
+ * @param modeId Unique identifier of the label capture mode
52
+ * @param settingsJson Label capture mode settings as JSON string
53
+ */
54
+ updateLabelCaptureSettings({ modeId, settingsJson, }: {
55
+ modeId: number;
56
+ settingsJson: string;
57
+ }): Promise<void>;
58
+ /**
59
+ * Updates the label capture feedback configuration
60
+ * @param modeId Unique identifier of the label capture mode
61
+ * @param feedbackJson Label capture feedback configuration as JSON string
62
+ */
63
+ updateLabelCaptureFeedback({ modeId, feedbackJson, }: {
64
+ modeId: number;
65
+ feedbackJson: string;
66
+ }): Promise<void>;
67
+ /**
68
+ * Sets the view for a captured label in advanced overlay
69
+ * @param dataCaptureViewId Unique identifier of the data capture view
70
+ * @param viewJson View configuration as JSON string, or null
71
+ * @param trackingId Tracking identifier of the captured label
72
+ */
73
+ setViewForCapturedLabel({ dataCaptureViewId, viewJson, trackingId, }: {
74
+ dataCaptureViewId: number;
75
+ viewJson?: object | string | null;
76
+ trackingId: number;
77
+ }): Promise<void>;
78
+ /**
79
+ * Sets the view for a captured label field in advanced overlay
80
+ * @param dataCaptureViewId Unique identifier of the data capture view
81
+ * @param identifier Unique identifier of the captured label field
82
+ * @param viewJson View configuration as JSON string, or null
83
+ */
84
+ setViewForCapturedLabelField({ dataCaptureViewId, identifier, viewJson, }: {
85
+ dataCaptureViewId: number;
86
+ identifier: string;
87
+ viewJson?: object | string | null;
88
+ }): Promise<void>;
89
+ /**
90
+ * Sets the anchor for a captured label in advanced overlay
91
+ * @param dataCaptureViewId Unique identifier of the data capture view
92
+ * @param anchorJson Anchor configuration as JSON string
93
+ * @param trackingId Tracking identifier of the captured label
94
+ */
95
+ setAnchorForCapturedLabel({ dataCaptureViewId, anchorJson, trackingId, }: {
96
+ dataCaptureViewId: number;
97
+ anchorJson: string;
98
+ trackingId: number;
99
+ }): Promise<void>;
100
+ /**
101
+ * Sets the anchor for a captured label field in advanced overlay
102
+ * @param dataCaptureViewId Unique identifier of the data capture view
103
+ * @param anchorJson Anchor configuration as JSON string
104
+ * @param identifier Unique identifier of the captured label field
105
+ */
106
+ setAnchorForCapturedLabelField({ dataCaptureViewId, anchorJson, identifier, }: {
107
+ dataCaptureViewId: number;
108
+ anchorJson: string;
109
+ identifier: string;
110
+ }): Promise<void>;
111
+ /**
112
+ * Sets the offset for a captured label in advanced overlay
113
+ * @param dataCaptureViewId Unique identifier of the data capture view
114
+ * @param offsetJson Offset configuration as JSON string
115
+ * @param trackingId Tracking identifier of the captured label
116
+ */
117
+ setOffsetForCapturedLabel({ dataCaptureViewId, offsetJson, trackingId, }: {
118
+ dataCaptureViewId: number;
119
+ offsetJson: string;
120
+ trackingId: number;
121
+ }): Promise<void>;
122
+ /**
123
+ * Sets the offset for a captured label field in advanced overlay
124
+ * @param dataCaptureViewId Unique identifier of the data capture view
125
+ * @param offsetJson Offset configuration as JSON string
126
+ * @param identifier Unique identifier of the captured label field
127
+ */
128
+ setOffsetForCapturedLabelField({ dataCaptureViewId, offsetJson, identifier, }: {
129
+ dataCaptureViewId: number;
130
+ offsetJson: string;
131
+ identifier: string;
132
+ }): Promise<void>;
133
+ /**
134
+ * Clears all views for captured labels in advanced overlay
135
+ * @param dataCaptureViewId Unique identifier of the data capture view
136
+ */
137
+ clearCapturedLabelViews({ dataCaptureViewId }: {
138
+ dataCaptureViewId: number;
139
+ }): Promise<void>;
140
+ /**
141
+ * Register persistent event listener for label capture basic overlay events
142
+ * @param dataCaptureViewId Unique identifier of the data capture view
143
+ */
144
+ addLabelCaptureBasicOverlayListener({ dataCaptureViewId, }: {
145
+ dataCaptureViewId: number;
146
+ }): Promise<void>;
147
+ /**
148
+ * Unregister event listener for label capture basic overlay events
149
+ * @param dataCaptureViewId Unique identifier of the data capture view
150
+ */
151
+ removeLabelCaptureBasicOverlayListener({ dataCaptureViewId, }: {
152
+ dataCaptureViewId: number;
153
+ }): Promise<void>;
154
+ /**
155
+ * Updates the label capture basic overlay configuration
156
+ * @param dataCaptureViewId Unique identifier of the data capture view
157
+ * @param basicOverlayJson Label capture basic overlay configuration as JSON string
158
+ */
159
+ updateLabelCaptureBasicOverlay({ dataCaptureViewId, basicOverlayJson, }: {
160
+ dataCaptureViewId: number;
161
+ basicOverlayJson: string;
162
+ }): Promise<void>;
163
+ /**
164
+ * Sets the brush for a captured label in basic overlay
165
+ * @param dataCaptureViewId Unique identifier of the data capture view
166
+ * @param brushJson Brush configuration as JSON string, or null
167
+ * @param trackingId Tracking identifier of the captured label
168
+ */
169
+ setLabelCaptureBasicOverlayBrushForLabel({ dataCaptureViewId, brushJson, trackingId, }: {
170
+ dataCaptureViewId: number;
171
+ brushJson?: string | null;
172
+ trackingId: number;
173
+ }): Promise<void>;
174
+ /**
175
+ * Sets the brush for a captured label field in basic overlay
176
+ * @param dataCaptureViewId Unique identifier of the data capture view
177
+ * @param brushJson Brush configuration as JSON string, or null
178
+ * @param fieldName Name of the label field
179
+ * @param trackingId Tracking identifier of the captured label
180
+ */
181
+ setLabelCaptureBasicOverlayBrushForFieldOfLabel({ dataCaptureViewId, brushJson, fieldName, trackingId, }: {
182
+ dataCaptureViewId: number;
183
+ brushJson?: string | null;
184
+ fieldName: string;
185
+ trackingId: number;
186
+ }): Promise<void>;
187
+ /**
188
+ * Register persistent event listener for label capture advanced overlay events
189
+ * @param dataCaptureViewId Unique identifier of the data capture view
190
+ */
191
+ addLabelCaptureAdvancedOverlayListener({ dataCaptureViewId, }: {
192
+ dataCaptureViewId: number;
193
+ }): Promise<void>;
194
+ /**
195
+ * Unregister event listener for label capture advanced overlay events
196
+ * @param dataCaptureViewId Unique identifier of the data capture view
197
+ */
198
+ removeLabelCaptureAdvancedOverlayListener({ dataCaptureViewId, }: {
199
+ dataCaptureViewId: number;
200
+ }): Promise<void>;
201
+ /**
202
+ * Updates the label capture advanced overlay configuration
203
+ * @param dataCaptureViewId Unique identifier of the data capture view
204
+ * @param advancedOverlayJson Label capture advanced overlay configuration as JSON string
205
+ */
206
+ updateLabelCaptureAdvancedOverlay({ dataCaptureViewId, advancedOverlayJson, }: {
207
+ dataCaptureViewId: number;
208
+ advancedOverlayJson: string;
209
+ }): Promise<void>;
210
+ /**
211
+ * Register persistent event listener for label capture validation flow overlay events
212
+ * @param dataCaptureViewId Unique identifier of the data capture view
213
+ */
214
+ registerListenerForValidationFlowEvents({ dataCaptureViewId, }: {
215
+ dataCaptureViewId: number;
216
+ }): Promise<void>;
217
+ /**
218
+ * Unregister event listener for label capture validation flow overlay events
219
+ * @param dataCaptureViewId Unique identifier of the data capture view
220
+ */
221
+ unregisterListenerForValidationFlowEvents({ dataCaptureViewId, }: {
222
+ dataCaptureViewId: number;
223
+ }): Promise<void>;
224
+ /**
225
+ * Updates the label capture validation flow overlay configuration
226
+ * @param dataCaptureViewId Unique identifier of the data capture view
227
+ * @param overlayJson Label capture validation flow overlay configuration as JSON string
228
+ */
229
+ updateLabelCaptureValidationFlowOverlay({ dataCaptureViewId, overlayJson, }: {
230
+ dataCaptureViewId: number;
231
+ overlayJson: string;
232
+ }): Promise<void>;
233
+ /**
234
+ * Register persistent event listener for label capture adaptive recognition overlay events
235
+ * @param dataCaptureViewId Unique identifier of the data capture view
236
+ */
237
+ registerListenerForAdaptiveRecognitionOverlayEvents({ dataCaptureViewId, }: {
238
+ dataCaptureViewId: number;
239
+ }): Promise<void>;
240
+ /**
241
+ * Unregister event listener for label capture adaptive recognition overlay events
242
+ * @param dataCaptureViewId Unique identifier of the data capture view
243
+ */
244
+ unregisterListenerForAdaptiveRecognitionOverlayEvents({ dataCaptureViewId, }: {
245
+ dataCaptureViewId: number;
246
+ }): Promise<void>;
247
+ /**
248
+ * Applies adaptive recognition settings to the label capture overlay
249
+ * @param dataCaptureViewId Unique identifier of the data capture view
250
+ * @param overlayJson Label capture adaptive recognition overlay configuration as JSON string
251
+ */
252
+ applyLabelCaptureAdaptiveRecognitionSettings({ dataCaptureViewId, overlayJson, }: {
253
+ dataCaptureViewId: number;
254
+ overlayJson: string;
255
+ }): Promise<void>;
256
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Generated exports for Label module.
3
+ * Exports all generated proxy interfaces and adapters.
4
+ */
5
+ export * from './LabelProxy';
6
+ export * from './LabelProxyAdapter';
@@ -0,0 +1,4 @@
1
+ import { AdaptiveRecognitionResultType } from "./AdaptiveRecognitionResultType";
2
+ export declare abstract class AdaptiveRecognitionResult {
3
+ get resultType(): AdaptiveRecognitionResultType;
4
+ }
@@ -0,0 +1,3 @@
1
+ export declare enum AdaptiveRecognitionResultType {
2
+ Receipt = "receipt"
3
+ }
@@ -12,4 +12,9 @@ export declare class CustomBarcode extends BarcodeField {
12
12
  get anchorRegexes(): string[];
13
13
  set anchorRegexes(value: string[]);
14
14
  private static get barcodeDefaults();
15
+ get name(): string;
16
+ get valueRegexes(): string[];
17
+ set valueRegexes(value: string[]);
18
+ get isOptional(): boolean;
19
+ get symbologies(): SymbologySettings[];
15
20
  }
@@ -7,4 +7,8 @@ export declare class CustomText extends TextField {
7
7
  constructor(name: string);
8
8
  get anchorRegexes(): string[];
9
9
  set anchorRegexes(value: string[]);
10
+ get name(): string;
11
+ get valueRegexes(): string[];
12
+ set valueRegexes(value: string[]);
13
+ get isOptional(): boolean;
10
14
  }
@@ -9,4 +9,8 @@ export declare class ExpiryDateText extends TextField {
9
9
  set labelDateFormat(value: LabelDateFormat | null);
10
10
  get anchorRegexes(): string[];
11
11
  set anchorRegexes(value: string[]);
12
+ get name(): string;
13
+ get valueRegexes(): string[];
14
+ set valueRegexes(value: string[]);
15
+ get isOptional(): boolean;
12
16
  }
@@ -6,5 +6,10 @@ export declare class ImeiOneBarcode extends BarcodeField {
6
6
  static initWithNameAndSymbologies(name: string, symbologies: Symbology[]): ImeiOneBarcode;
7
7
  static initWithNameAndSymbology(name: string, symbology: Symbology): ImeiOneBarcode;
8
8
  private static get barcodeDefaults();
9
+ get name(): string;
10
+ get valueRegexes(): string[];
11
+ set valueRegexes(value: string[]);
12
+ get isOptional(): boolean;
13
+ get symbologies(): SymbologySettings[];
9
14
  private constructor();
10
15
  }
@@ -6,5 +6,10 @@ export declare class ImeiTwoBarcode extends BarcodeField {
6
6
  static initWithNameAndSymbologies(name: string, symbologies: Symbology[]): ImeiTwoBarcode;
7
7
  static initWithNameAndSymbology(name: string, symbology: Symbology): ImeiTwoBarcode;
8
8
  private static get barcodeDefaults();
9
+ get name(): string;
10
+ get valueRegexes(): string[];
11
+ set valueRegexes(value: string[]);
12
+ get isOptional(): boolean;
13
+ get symbologies(): SymbologySettings[];
9
14
  private constructor();
10
15
  }
@@ -0,0 +1,11 @@
1
+ import { DefaultSerializeable } from 'scandit-datacapture-frameworks-core';
2
+ import { AdaptiveRecognitionResultType } from './AdaptiveRecognitionResultType';
3
+ export declare class LabelCaptureAdaptiveRecognitionSettings extends DefaultSerializeable {
4
+ private _processingHintText;
5
+ private _resultType;
6
+ constructor(resultType: AdaptiveRecognitionResultType);
7
+ get processingHintText(): string;
8
+ set processingHintText(text: string);
9
+ get resultType(): AdaptiveRecognitionResultType;
10
+ set resultType(resultType: AdaptiveRecognitionResultType);
11
+ }
@@ -1,4 +1,5 @@
1
1
  import { LabelField } from "./LabelField";
2
2
  export interface LabelCaptureValidationFlowListener {
3
3
  didCaptureLabelWithFields(fields: LabelField[]): void;
4
+ didSubmitManualInputForField(field: LabelField, oldValue: string | null, newValue: string): void;
4
5
  }
@@ -6,9 +6,16 @@ export declare class LabelCaptureValidationFlowSettings extends DefaultSerialize
6
6
  private _validationErrorText;
7
7
  private _requiredFieldErrorText;
8
8
  private _manualInputButtonText;
9
+ private _labelDefinitionsPlaceholders;
9
10
  static create(): LabelCaptureValidationFlowSettings;
10
11
  private constructor();
12
+ /**
13
+ * @deprecated This property is deprecated and will be removed in a future release.
14
+ */
11
15
  get missingFieldsHintText(): string;
16
+ /**
17
+ * @deprecated This property is deprecated and will be removed in a future release.
18
+ */
12
19
  set missingFieldsHintText(text: string);
13
20
  get standbyHintText(): string;
14
21
  set standbyHintText(text: string);
@@ -16,8 +23,23 @@ export declare class LabelCaptureValidationFlowSettings extends DefaultSerialize
16
23
  set validationHintText(text: string);
17
24
  get validationErrorText(): string;
18
25
  set validationErrorText(text: string);
26
+ /**
27
+ * @deprecated This property is deprecated and will be removed in a future release.
28
+ */
19
29
  get requiredFieldErrorText(): string;
30
+ /**
31
+ * @deprecated This property is deprecated and will be removed in a future release.
32
+ */
20
33
  set requiredFieldErrorText(text: string);
34
+ /**
35
+ * @deprecated This property is deprecated and will be removed in a future release.
36
+ */
21
37
  get manualInputButtonText(): string;
38
+ /**
39
+ * @deprecated This property is deprecated and will be removed in a future release.
40
+ */
22
41
  set manualInputButtonText(text: string);
42
+ setPlaceholderTextForLabelDefinition(fieldName: string, placeholder: string | null): void;
43
+ getPlaceholderTextForLabelDefinition(fieldName: string): string | null;
44
+ toJSON(): object;
23
45
  }
@@ -8,4 +8,8 @@ export declare class PackingDateText extends TextField {
8
8
  get anchorRegexes(): string[];
9
9
  get labelDateFormat(): LabelDateFormat | null;
10
10
  set labelDateFormat(value: LabelDateFormat | null);
11
+ get isOptional(): boolean;
12
+ get name(): string;
13
+ get valueRegexes(): string[];
14
+ set valueRegexes(value: string[]);
11
15
  }
@@ -7,4 +7,9 @@ export declare class PartNumberBarcode extends BarcodeField {
7
7
  static initWithNameAndSymbology(name: string, symbology: Symbology): PartNumberBarcode;
8
8
  private static get barcodeDefaults();
9
9
  private constructor();
10
+ get isOptional(): boolean;
11
+ get name(): string;
12
+ get valueRegexes(): string[];
13
+ set valueRegexes(value: string[]);
14
+ get symbologies(): SymbologySettings[];
10
15
  }
@@ -0,0 +1,13 @@
1
+ export declare class ReceiptScanningLineItem {
2
+ private _name;
3
+ private _unitPrice;
4
+ private _discount;
5
+ private _quantity;
6
+ private _totalPrice;
7
+ constructor(name: string, unitPrice: number | null, discount: number | null, quantity: number, totalPrice: number | null);
8
+ get name(): string;
9
+ get unitPrice(): number | null;
10
+ get discount(): number | null;
11
+ get quantity(): number;
12
+ get totalPrice(): number | null;
13
+ }
@@ -0,0 +1,27 @@
1
+ import { AdaptiveRecognitionResult } from "./AdaptiveRecognitionResult";
2
+ import { ReceiptScanningLineItem } from "./ReceiptScanningLineItem";
3
+ import { AdaptiveRecognitionResultType } from "./AdaptiveRecognitionResultType";
4
+ export declare class ReceiptScanningResult implements AdaptiveRecognitionResult {
5
+ private _date;
6
+ private _lineItems;
7
+ private _loyaltyNumber;
8
+ private _paymentPreTaxTotal;
9
+ private _paymentTax;
10
+ private _paymentTotal;
11
+ private _storeAddress;
12
+ private _storeCity;
13
+ private _storeName;
14
+ private _time;
15
+ constructor(date: string | null, lineItems: ReceiptScanningLineItem[], loyaltyNumber: number | null, paymentPreTaxTotal: number | null, paymentTax: number | null, paymentTotal: number | null, storeAddress: string | null, storeCity: string | null, storeName: string | null, time: string | null);
16
+ get resultType(): AdaptiveRecognitionResultType;
17
+ get date(): string | null;
18
+ get lineItems(): ReceiptScanningLineItem[];
19
+ get loyaltyNumber(): number | null;
20
+ get paymentPreTaxTotal(): number | null;
21
+ get paymentTax(): number | null;
22
+ get paymentTotal(): number | null;
23
+ get storeAddress(): string | null;
24
+ get storeCity(): string | null;
25
+ get storeName(): string | null;
26
+ get time(): string | null;
27
+ }
@@ -7,4 +7,9 @@ export declare class SerialNumberBarcode extends BarcodeField {
7
7
  static initWithNameAndSymbology(name: string, symbology: Symbology): SerialNumberBarcode;
8
8
  private static get barcodeDefaults();
9
9
  private constructor();
10
+ get isOptional(): boolean;
11
+ get name(): string;
12
+ get valueRegexes(): string[];
13
+ set valueRegexes(value: string[]);
14
+ get symbologies(): SymbologySettings[];
10
15
  }
@@ -5,4 +5,8 @@ export declare class TotalPriceText extends TextField {
5
5
  constructor(name: string);
6
6
  get anchorRegexes(): string[];
7
7
  set anchorRegexes(value: string[]);
8
+ get isOptional(): boolean;
9
+ get name(): string;
10
+ get valueRegexes(): string[];
11
+ set valueRegexes(value: string[]);
8
12
  }
@@ -5,4 +5,8 @@ export declare class UnitPriceText extends TextField {
5
5
  constructor(name: string);
6
6
  get anchorRegexes(): string[];
7
7
  set anchorRegexes(value: string[]);
8
+ get isOptional(): boolean;
9
+ get name(): string;
10
+ get valueRegexes(): string[];
11
+ set valueRegexes(value: string[]);
8
12
  }
@@ -5,4 +5,8 @@ export declare class WeightText extends TextField {
5
5
  constructor(name: string);
6
6
  get anchorRegexes(): string[];
7
7
  set anchorRegexes(value: string[]);
8
+ get isOptional(): boolean;
9
+ get name(): string;
10
+ get valueRegexes(): string[];
11
+ set valueRegexes(value: string[]);
8
12
  }
@@ -0,0 +1,29 @@
1
+ import { BaseController } from "scandit-datacapture-frameworks-core";
2
+ import { LabelCaptureAdaptiveRecognitionOverlay } from "../view/LabelCaptureAdaptiveRecognitionOverlay";
3
+ import { AdaptiveRecognitionResult } from "../AdaptiveRecognitionResult";
4
+ import { LabelProxy } from "../../generated";
5
+ export declare enum LabelCaptureAdaptiveRecognitionListenerEvents {
6
+ recognized = "LabelCaptureAdaptiveRecognitionListener.recognized",
7
+ failure = "LabelCaptureAdaptiveRecognitionListener.failure"
8
+ }
9
+ export declare class LabelCaptureAdaptiveRecognitionOverlayController extends BaseController<LabelProxy> {
10
+ private overlay;
11
+ private adapter;
12
+ private hasListeners;
13
+ private hasPendingListenerRegistration;
14
+ private get dataCaptureViewId();
15
+ constructor(overlay: LabelCaptureAdaptiveRecognitionOverlay);
16
+ subscribeListener(): Promise<void>;
17
+ onViewChanged(): Promise<void>;
18
+ unsubscribeListener(): Promise<void>;
19
+ applySettings(): Promise<void>;
20
+ dispose(): void;
21
+ private initialize;
22
+ private handleRecognized;
23
+ private handleFailure;
24
+ private handleRecognizedWrapper;
25
+ private handleFailureWrapper;
26
+ }
27
+ export interface LabelCaptureAdaptiveRecognitionOverlayEventPayload {
28
+ result: AdaptiveRecognitionResult;
29
+ }