import { CoordBounds } from 'looks-same';
import { DiffOptions, ImageFile } from '../types';
import type { ValueOf } from 'type-fest';
export declare const ErrorName: {
    readonly GENERAL_ERROR: "Error";
    readonly IMAGE_DIFF: "ImageDiffError";
    readonly NO_REF_IMAGE: "NoRefImageError";
    readonly INVALID_REF_IMAGE: "InvalidRefImageError";
    readonly ASSERT_VIEW: "AssertViewError";
};
export type ErrorName = ValueOf<typeof ErrorName>;
export type ErrorNames = typeof ErrorName;
export interface ImageDiffError {
    name: ErrorNames['IMAGE_DIFF'];
    message: string;
    stack: string;
    stateName: string;
    diffOpts: DiffOptions;
    currImg: ImageFile;
    refImg: ImageFile;
    diffClusters: CoordBounds[];
    diffBuffer?: ArrayBuffer;
    diffImg?: ImageFile;
    differentPixels?: number;
    diffRatio?: number;
}
export interface NoRefImageError {
    name: ErrorNames['NO_REF_IMAGE'];
    stateName: string;
    message: string;
    stack?: string;
    currImg: ImageFile;
    refImg: ImageFile;
}
/** @note Can be thrown by Testplane after version 8.20.7 */
export interface InvalidRefImageError {
    name: ErrorNames['INVALID_REF_IMAGE'];
    stateName: string;
    message: string;
    stack?: string;
    currImg: ImageFile;
    refImg: ImageFile;
}
