import { PrivateReceiptScanningListener } from './PrivateReceiptScanningListener.js';
import '../NativeProxy-BpXwaSl-.js';
import '@scandit/web-datacapture-barcode';
import '@scandit/web-datacapture-core/build/js/worker/dataCaptureWorkerRelated';
import '../djinni-types/sdcBarcodeInternalSdkData.js';
import '../djinni-types/sdcBarcodeData.js';
import '../djinni-types/sdcCoreCommonGeometry.js';
import '../djinni-types/sdcCoreCommonBuffer.js';
import '../sdcLabelInternalModuleCapture-CxPSiq2o.js';
import '../djinni-types/sdcSymbologySettings.js';
import '../djinni-types/sdcCoreInternalSdkArea.js';
import '../djinni-types/sdcCoreInternalSdkCommonGeometry.js';
import '../djinni-types/sdcCoreCommonGraphic.js';
import '../djinni-types/sdcCoreInternalSdkCommonAsync.js';
import '../djinni-types/sdcCoreInternalSdkOcr.js';
import '../djinni-types/sdcCoreCommon.js';
import '../djinni-types/sdcLabelData.js';
import '../djinni-types/sdcLabelInternalModuleData.js';
import '../djinni-types/sdcCoreInternalSdkUiViewfinder.js';
import '../djinni-types/sdcCoreInternalSdkCommonGraphics.js';
import '../djinni-types/sdcLabelInternalModuleUiOverlay.js';
import '../djinni-types/sdcCoreInternalSdkCapture.js';
import '../djinni-types/sdcCoreInternalSdkUiStyle.js';
import '@scandit/web-datacapture-core';
import './AdaptiveRecognitionMode.js';
import './CapturedLabel.js';
import './LabelField.js';
import './LabelFieldState.js';
import './LabelFieldType.js';
import './LabelFieldValueType.js';
import './LabelDateResult.js';
import '@scandit/web-datacapture-core/build/js/private/nativeHandle.js';
import './LabelCaptureSession.js';
import './LabelDateFormat.js';
import './LabelDateComponentFormat.js';
import './LabelFieldLocationType.js';
import './ReceiptScanningLineItem.js';
import './ValidationFlowField.js';

/**
 * Handler for receipt scanning functionality.
 * Manages the flow of receipt scanning and notification of listeners.
 * This handler bridges between the native Djinni receipt scanning handler
 * and TypeScript listeners, providing a clean API for receipt scanning in the web platform.
 */
declare class PrivateReceiptScanningHandler {
    private labelCaptureHandle;
    private listeners;
    private onWorkerMessageHandler;
    private constructor();
    /**
     * Starts the receipt scanning flow.
     */
    startFlow(): Promise<void>;
    /**
     * Finishes the receipt scanning flow.
     */
    finishFlow(): Promise<void>;
    /**
     * Adds a listener to receive receipt scanning events.
     * @param listener - The listener to add
     */
    addListener(listener: PrivateReceiptScanningListener): void;
    /**
     * Removes a listener from receipt scanning events.
     * @param listener - The listener to remove
     */
    removeListener(listener: PrivateReceiptScanningListener): void;
    private onWorkerMessage;
    private onReceiptScanned;
    private onReceiptScanningFailed;
    private onProcessingStarted;
}

export { PrivateReceiptScanningHandler };
