import { TextPatternScannerResult } from '../text_pattern_scanner/TextPatternScannerTypes';
import { ToJsonConfiguration } from '../utils/json/JsonSerializationTypes';
import type { DeepPartial, Point } from '../utils/utils';
import { PartiallyConstructible } from '../utils/utils';
/**
Status of the barcode extraction.

- `SUCCESS`:
   Barcode containing a VIN was successfully extracted.
- `BARCODE_WITHOUT_VIN`:
   Barcode was found but it does not contain a VIN.
- `NO_BARCODE_FOUND`:
   No barcode was found in the image.
- `BARCODE_EXTRACTION_DISABLED`:
   Barcode extraction is disabled in the configuration.
*/
export type VinBarcodeExtractionStatus = 'SUCCESS' | 'BARCODE_WITHOUT_VIN' | 'NO_BARCODE_FOUND' | 'BARCODE_EXTRACTION_DISABLED';
export declare const VinBarcodeExtractionStatusValues: VinBarcodeExtractionStatus[];
/**
Result of the barcode scanner.
*/
export declare class VinBarcodeResult extends PartiallyConstructible {
    /**
      Text result of the barcode scanner.
      */
    readonly extractedVIN: string;
    /**
      Rectangle of the barcode in the image.
      */
    readonly rectangle: Point[];
    /**
      Status of the barcode extraction.
      */
    readonly status: VinBarcodeExtractionStatus;
    /** @param source {@displayType `DeepPartial<VinBarcodeResult>`} */
    constructor(source?: DeepPartial<VinBarcodeResult>);
    serialize(config?: ToJsonConfiguration): DeepPartial<VinBarcodeResult>;
}
/**
Result of the VIN scanner.
*/
export declare class VinScannerResult extends PartiallyConstructible {
    /**
      Text result of the VIN scanner.
      */
    readonly textResult: TextPatternScannerResult;
    /**
      Barcode result of the VIN scanner.
      */
    readonly barcodeResult: VinBarcodeResult;
    /** @param source {@displayType `DeepPartial<VinScannerResult>`} */
    constructor(source?: DeepPartial<VinScannerResult>);
    serialize(config?: ToJsonConfiguration): DeepPartial<VinScannerResult>;
}
