import {EnumGrayscaleTransformationMode, EnumGrayscaleEnhancementMode} from "../core";

/**
 * The SimplifiedLabelRecognizerSettings interface defines simplified settings for label recognizing.
 * @see SimplifiedCaptureVisionSettings.labelSettings
 * */
export interface SimplifiedLabelRecognizerSettings {
    /**
     * Set the grayscale transformation modes with an array of enumeration GrayscaleTransformationMode.
     * View the reference page of GrayscaleTransformationModes for more detail about grayscale transformation modes.
     * @see EnumGrayscaleTransformationMode
     * */
    grayscaleTransformationModes?: Int32Array | Array<EnumGrayscaleTransformationMode>

    /**
     * Set the grayscale enhancement modes with an array of enumeration GrayscaleEnhancementMode.
     * View the reference page of GrayscaleEnhancementModes for more detail about grayscale enhancement modes.
     * @see EnumGrayscaleEnhancementMode
     * */
    grayscaleEnhancementModes?: Int32Array | Array<EnumGrayscaleEnhancementMode>

    /**Specifies a character model by its name.*/
    characterModelName?: string

    /**Sets the RegEx pattern of the text line string to filter out the unqualified results.*/
    lineStringRegExPattern?: string

    /**Sets the threshold value that determines when the original image is scaled down.*/
    scaleDownThreshold?: number

    /**Sets the maximum number of threads to be used in one task.*/
    maxThreadsInOneTask?: number
}
