/**
 * CardScan API
 * The official documentation for the CardScan API Clients.
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { ScanMetadataCameraCapabilities } from './scan-metadata-camera-capabilities';
import { ScanMetadataCaptureCanvas } from './scan-metadata-capture-canvas';
import { ScanMetadataCaptureScore } from './scan-metadata-capture-score';
import { ScanMetadataGuides } from './scan-metadata-guides';
import { ScanMetadataVideoBackground } from './scan-metadata-video-background';
import { ScanMetadataVideoTrack } from './scan-metadata-video-track';
import { ScanMetadataWindowInner } from './scan-metadata-window-inner';
import { KeysToCamelCase, KeysToSnakeCase } from "./";
/**
 *
 * @export
 * @interface ScanMetadata
 */
export interface ScanMetadataOriginal {
    /**
     * The type of capture (automatic or manual)
     * @type {string}
     * @memberof ScanMetadata
     */
    'captureType'?: ScanMetadataCaptureTypeEnum;
    /**
     *
     * @type {ScanMetadataGuides}
     * @memberof ScanMetadata
     */
    'guides'?: ScanMetadataGuides;
    /**
     *
     * @type {ScanMetadataCaptureCanvas}
     * @memberof ScanMetadata
     */
    'captureCanvas'?: ScanMetadataCaptureCanvas;
    /**
     *
     * @type {ScanMetadataVideoBackground}
     * @memberof ScanMetadata
     */
    'videoBackground'?: ScanMetadataVideoBackground;
    /**
     *
     * @type {ScanMetadataWindowInner}
     * @memberof ScanMetadata
     */
    'windowInner'?: ScanMetadataWindowInner;
    /**
     * Threshold for machine learning
     * @type {number}
     * @memberof ScanMetadata
     */
    'mlThreshold'?: number;
    /**
     * Threshold for Laplacian edge detection
     * @type {number}
     * @memberof ScanMetadata
     */
    'laplacianThreshold'?: number;
    /**
     * Name of the package
     * @type {string}
     * @memberof ScanMetadata
     */
    'package_name'?: string;
    /**
     * Version of the package
     * @type {string}
     * @memberof ScanMetadata
     */
    'package_version'?: string;
    /**
     *
     * @type {ScanMetadataVideoTrack}
     * @memberof ScanMetadata
     */
    'videoTrack'?: ScanMetadataVideoTrack;
    /**
     *
     * @type {ScanMetadataCameraCapabilities}
     * @memberof ScanMetadata
     */
    'cameraCapabilities'?: ScanMetadataCameraCapabilities;
    /**
     *
     * @type {ScanMetadataCaptureScore}
     * @memberof ScanMetadata
     */
    'capture_score'?: ScanMetadataCaptureScore;
}
export declare const ScanMetadataCaptureTypeEnum: {
    readonly Automatic: "automatic";
    readonly Manual: "manual";
};
export type ScanMetadataCaptureTypeEnum = typeof ScanMetadataCaptureTypeEnum[keyof typeof ScanMetadataCaptureTypeEnum];
export type ScanMetadata = KeysToCamelCase<ScanMetadataOriginal>;
export type ScanMetadataSnake = KeysToSnakeCase<ScanMetadataOriginal>;
