import type { VizMrzComparisonCheckResult } from "./Enums";
import type { CapturedId } from "./captured-id/CapturedId";
import { DateResult } from "./captured-id/DateResult";
export interface VizMrzComparisonCheck<T> {
    readonly mrzValue: T | null;
    readonly checkResult: VizMrzComparisonCheckResult;
    readonly resultDescription: string;
    readonly vizValue: T | null;
}
export declare class VizMrzComparisonVerifier {
    private loader;
    static create(): VizMrzComparisonVerifier;
    verify(capturedId: CapturedId): Promise<VizMrzComparisonResult | null>;
    private constructor();
}
export declare class VizMrzComparisonResult {
    private json;
    get checksPassed(): boolean;
    get resultDescription(): string;
    get issuingCountryIsoMatch(): VizMrzComparisonCheck<string>;
    get documentNumbersMatch(): VizMrzComparisonCheck<string>;
    get fullNamesMatch(): VizMrzComparisonCheck<string>;
    get datesOfBirthMatch(): VizMrzComparisonCheck<DateResult>;
    get datesOfExpiryMatch(): VizMrzComparisonCheck<DateResult>;
    private static fromJSON;
}
