import type { JSONType } from "@scandit/web-datacapture-core";
import type { Serializable } from "@scandit/web-datacapture-core/build/js/private/Serializable";
import { Duration } from "./Duration";
import type { DurationJSON } from "./SerializedTypes";
import { IdAnonymizationMode, IdCaptureTrigger, IdImageType } from "./Enums";
import type { IdCaptureDocument, IdCaptureDocumentJSON } from "./document/IdCaptureDocument";
import type { IdCaptureScanner, ScannerJSON } from "./scanner/Scanner";
export interface IdCaptureSettingsJSON {
    acceptedDocuments: IdCaptureDocumentJSON[];
    rejectedDocuments: IdCaptureDocumentJSON[];
    scannerType: ScannerJSON;
    imageToResult: Record<IdImageType, boolean>;
    anonymizationMode: IdAnonymizationMode;
    captureTrigger: IdCaptureTrigger;
    rejectVoidedIds: boolean;
    decodeBackOfEuropeanDrivingLicense: boolean;
    rejectExpiredIds: boolean;
    rejectNotRealIdCompliant: boolean;
    rejectInconsistentData: boolean;
    rejectHolderBelowAge: number | null;
    rejectIdsExpiringIn: DurationJSON | null;
    decodeMobileDriverLicenseViz: boolean;
    notifyOnSideCapture: boolean;
    properties: JSONType;
}
export declare class IdCaptureSettings implements Serializable<IdCaptureSettingsJSON> {
    acceptedDocuments: IdCaptureDocument[];
    rejectedDocuments: IdCaptureDocument[];
    scannerType: IdCaptureScanner;
    anonymizationMode: IdAnonymizationMode;
    captureTrigger: IdCaptureTrigger;
    rejectVoidedIds: boolean;
    decodeBackOfEuropeanDrivingLicense: boolean;
    rejectExpiredIds: boolean;
    rejectNotRealIdCompliant: boolean;
    rejectInconsistentData: boolean;
    rejectHolderBelowAge: number | null;
    rejectIdsExpiringIn: Duration | null;
    /**
     * @deprecated 7.6.0 This setting is deprecated and will be removed in SDK version 8.0. A replacement API will be introduced in version 8.0.
     */
    decodeMobileDriverLicenseViz: boolean;
    notifyOnSideCapture: boolean;
    private properties;
    private imageToResult;
    constructor();
    setProperty(name: string, value: any): void;
    getProperty(name: string): any;
    setShouldPassImageTypeToResult(type: IdImageType, shouldPass: boolean): void;
    getShouldPassImageTypeToResult(type: IdImageType): boolean;
    clone(): IdCaptureSettings;
    toJSONObject(): IdCaptureSettingsJSON;
    private static fromJSON;
    private static createDocumentFromJSON;
}
