export default Eyes;
export type Driver = TestController & { __applitoolsBrand?: undefined; };
export type Context = TestController & { __applitoolsBrand?: undefined; };
export type Element = globalThis.Selector & { __applitoolsBrand?: undefined; };
export type Selector = globalThis.Selector & { __applitoolsBrand?: undefined; };
export type SpecType = {
    driver: Context;
    context: Context;
    element: Element;
    selector: Selector;
    secondary: {
        driver: never;
        context: never;
        element: NodeSnapshot;
        selector: never;
        secondary: never;
        userFunction: unknown;
    };
    userFunction: unknown;
};
export class Eyes {
    static setViewportSize: (driver: Context, viewportSize: RectangleSize) => Promise<void>;
    static getExecutionCloudUrl: (config?: undefined | (ConfigurationPlain & { maskLog?: undefined | boolean; })) => Promise<string>;
    static setMobileCapabilities: <TCapabilities extends Record<string, any>>(capabilities: TCapabilities, config?: undefined | ConfigurationPlain) => TCapabilities;
    constructor(runner?: undefined | EyesRunner, config?: undefined | ConfigurationPlain);
    constructor(config?: undefined | ConfigurationPlain, runner?: undefined | EyesRunner);
    constructor(options: { configPath: string; runner?: undefined | EyesRunner; });
    get logger(): Logger;
    getLogger(): Logger;
    get runner(): EyesRunner;
    getRunner(): EyesRunner;
    get driver(): Context;
    getDriver(): Context;
    get configuration(): ConfigurationPlain;
    set configuration(configuration: ConfigurationPlain);
    getConfiguration(): Configuration;
    setConfiguration(config: ConfigurationPlain): void;
    get isOpen(): boolean;
    getIsOpen(): boolean;
    on(handler: (event: string, data?: undefined | Record<string, any>) => any): () => void;
    on(event: "setSizeWillStart", handler: (data: { viewportSize: RectangleSizePlain; }) => any): () => void;
    on(event: "setSizeEnded", handler: () => any): () => void;
    on(event: "initStarted", handler: () => any): () => void;
    on(event: "initEnded", handler: () => any): () => void;
    on(event: "testStarted", handler: (data: { sessionId: string; }) => any): () => void;
    on(event: "validationWillStart", handler: (data: { sessionId: string; validationInfo: ValidationInfoPlain; }) => any): () => void;
    on(event: "validationEnded", handler: (data: { sessionId: string; validationId: number; validationResult: ValidationResultPlain; }) => any): () => void;
    on(event: "testEnded", handler: (data: { sessionId: string; testResults: TestResultsPlain; }) => any): () => void;
    off(event: string): void;
    off(handler: (...args: Array<any>) => any): void;
    getExecutionCloudUrl(): Promise<string>;
    setMobileCapabilities<TCapabilities extends Record<string, any>>(capabilities: TCapabilities): TCapabilities;
    open(driver: Context, config?: undefined | ConfigurationPlain): Promise<Context>;
    open(driver: Context, appName?: undefined | string, testName?: undefined | string, viewportSize?: undefined | RectangleSizePlain, sessionType?: undefined | SessionTypePlain): Promise<Context>;
    open(config?: undefined | ConfigurationPlain): Promise<void>;
    open(appName?: undefined | string, testName?: undefined | string, viewportSize?: undefined | RectangleSizePlain, sessionType?: undefined | SessionTypePlain): Promise<void>;
    open(options: { t: Context; } & TestCafeConfiguration): Promise<Context>;
    check(name: string, checkSettings: CheckSettingsImage | CheckSettingsAutomation): Promise<MatchResult>;
    check(target: Image, checkSettings?: undefined | CheckSettingsImagePlain): Promise<MatchResult>;
    check(checkSettings?: undefined | CheckSettingsAutomationPlain): Promise<MatchResult>;
    checkWindow(name?: undefined | string, timeout?: undefined | number, fully?: undefined | boolean): Promise<MatchResult>;
    checkWindow(settings: TestCafeCheckSettings): Promise<MatchResult>;
    checkFrame(element: number | Element | EyesSelector<Selector>, timeout?: undefined | number, name?: undefined | string): Promise<MatchResult>;
    checkElement(element: Element, timeout?: undefined | number, name?: undefined | string): Promise<MatchResult>;
    checkElementBy(selector: EyesSelector<Selector>, timeout?: undefined | number, name?: undefined | string): Promise<MatchResult>;
    checkRegion(region: RegionPlain, name?: undefined | string, timeout?: undefined | number): Promise<MatchResult>;
    checkRegion(image: string | Buffer | URL, region: RegionPlain, name?: undefined | string, ignoreMismatch?: undefined | boolean): Promise<MatchResult>;
    checkRegionByElement(element: Element, name?: undefined | string, timeout?: undefined | number): Promise<MatchResult>;
    checkRegionBy(selector: EyesSelector<Selector>, name?: undefined | string, timeout?: undefined | number, fully?: undefined | boolean): Promise<MatchResult>;
    checkRegionInFrame(frame: number | Element | EyesSelector<Selector>, selector: EyesSelector<Selector>, timeout?: undefined | number, name?: undefined | string, fully?: undefined | boolean): Promise<MatchResult>;
    checkImage(image: string | Buffer | URL, name?: undefined | string, ignoreMismatch?: undefined | boolean): Promise<MatchResult>;
    locate<TLocator extends string>(target: Image, settings: VisualLocatorSettings<TLocator>): Promise<Record<TLocator, Array<RegionPlain>>>;
    locate<TLocator extends string>(settingsWithImage: VisualLocatorSettings<TLocator> & { image: string | Buffer | URL; }): Promise<Record<TLocator, Array<RegionPlain>>>;
    locate<TLocator extends string>(settings: VisualLocatorSettings<TLocator>): Promise<Record<TLocator, Array<RegionPlain>>>;
    extractTextRegions<TPattern extends string>(target: Image, settings: OCRSettings<TPattern>): Promise<Record<TPattern, Array<TextRegion>>>;
    extractTextRegions<TPattern extends string>(settingsWithImage: OCRSettings<TPattern> & { image: string | Buffer | URL; }): Promise<Record<TPattern, Array<TextRegion>>>;
    extractTextRegions<TPattern extends string>(settings: OCRSettings<TPattern>): Promise<Record<TPattern, Array<TextRegion>>>;
    extractText(target: Image, settings: Array<OCRRegion>): Promise<Array<string>>;
    extractText(settingsWithImage: Array<OCRRegion & { image: string | Buffer | URL; }>): Promise<Array<string>>;
    extractText(settings: Array<OCRRegion>): Promise<Array<string>>;
    close(throwErr?: undefined | boolean): Promise<TestResults>;
    closeAsync(): Promise<void>;
    abort(): Promise<TestResults>;
    abortAsync(): Promise<void>;
    abortIfNotClosed(): Promise<TestResultsPlain>;
    getResults(throwErr?: undefined | boolean): Promise<Array<TestResults>>;
    getViewportSize(): Promise<RectangleSize>;
    setViewportSize(size: RectangleSizePlain): Promise<void>;
    getScrollRootElement(): Element | EyesSelector<Selector>;
    setScrollRootElement(scrollRootElement: Element | EyesSelector<Selector>): void;
    setLogHandler(handler: LogHandler | LogHandlerPlain): void;
    getLogHandler(): LogHandler;
    setCutProvider(cutProvider: CutProvider): void;
    setImageCut(cutProvider: CutProvider): void;
    getIsCutProviderExplicitlySet(): boolean;
    getRotation(): ImageRotation;
    setRotation(rotation: ImageRotation | ImageRotationPlain): void;
    getScaleRatio(): number;
    setScaleRatio(scaleRatio: number): void;
    getSaveDebugScreenshots(): boolean;
    setSaveDebugScreenshots(save: boolean): void;
    getDebugScreenshotsPath(): string;
    setDebugScreenshotsPath(path: string): void;
    getDebugScreenshotsPrefix(): string;
    setDebugScreenshotsPrefix(prefix: string): void;
    addProperty(name: string, value: string): Configuration;
    clearProperties(): Configuration;
    getBatch(): BatchInfo;
    setBatch(batch: BatchInfoPlain): void;
    setBatch(name: string, id?: undefined | string, startedAt?: undefined | string | Date): void;
    getApiKey(): string;
    setApiKey(apiKey: string): void;
    getTestName(): string;
    setTestName(testName: string): void;
    getAppName(): string;
    setAppName(appName: string): void;
    getBaselineBranchName(): string;
    setBaselineBranchName(baselineBranchName: string): void;
    getBaselineName(): string;
    setBaselineName(baselineName: string): void;
    getBaselineEnvName(): string;
    setBaselineEnvName(baselineEnvName: string): void;
    getBranchName(): string;
    setBranchName(branchName: string): void;
    getHostApp(): string;
    setHostApp(hostApp: string): void;
    getHostOS(): string;
    setHostOS(hostOS: string): void;
    getHostAppInfo(): string;
    setHostAppInfo(hostAppInfo: string): void;
    getHostOSInfo(): string;
    setHostOSInfo(hostOSInfo: string): void;
    getDeviceInfo(): string;
    setDeviceInfo(deviceInfo: string): void;
    setIgnoreCaret(ignoreCaret: boolean): void;
    getIgnoreCaret(): boolean;
    getIsDisabled(): boolean;
    setIsDisabled(isDisabled: boolean): void;
    getMatchLevel(): MatchLevel;
    setMatchLevel(matchLevel: MatchLevelPlain): void;
    getMatchTimeout(): number;
    setMatchTimeout(matchTimeout: number): void;
    getParentBranchName(): string;
    setParentBranchName(parentBranchName: string): void;
    setProxy(proxy: ProxySettingsPlain): void;
    setProxy(url: string, username?: undefined | string, password?: undefined | string, isHttpOnly?: undefined | boolean): void;
    setProxy(isEnabled: false): void;
    getProxy(): ProxySettings;
    getSaveDiffs(): boolean;
    setSaveDiffs(saveDiffs: boolean): void;
    getSaveNewTests(): boolean;
    setSaveNewTests(saveNewTests: boolean): void;
    getServerUrl(): string;
    setServerUrl(serverUrl: string): void;
    getSendDom(): boolean;
    setSendDom(sendDom: boolean): void;
    getHideCaret(): boolean;
    setHideCaret(hideCaret: boolean): void;
    getHideScrollbars(): boolean;
    setHideScrollbars(hideScrollbars: boolean): void;
    getForceFullPageScreenshot(): boolean;
    setForceFullPageScreenshot(forceFullPageScreenshot: boolean): void;
    getWaitBeforeScreenshots(): number;
    setWaitBeforeScreenshots(waitBeforeScreenshots: number): void;
    getStitchMode(): StitchMode;
    setStitchMode(stitchMode: StitchModePlain): void;
    getStitchOverlap(): number;
    setStitchOverlap(stitchOverlap: number): void;
    getSessionEventHandlers(): SessionEventHandlers;
    addSessionEventHandler(handler: SessionEventHandler): void;
    removeSessionEventHandler(handler: SessionEventHandler): void;
    clearSessionEventHandlers(): void;
    waitForResults(throwErr: boolean): Promise<TestResultsSummary>;
}
export type CheckSettingsImagePlain = {
    name?: undefined | string;
    region?: undefined | RegionPlain | LegacyRegionPlain;
    matchLevel?: undefined | MatchLevelPlain;
    useDom?: undefined | boolean;
    sendDom?: undefined | boolean;
    enablePatterns?: undefined | boolean;
    ignoreDisplacements?: undefined | boolean;
    ignoreMismatch?: undefined | boolean;
    ignoreCaret?: undefined | boolean;
    ignoreRegions?: undefined | Array<RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>;
    layoutRegions?: undefined | Array<RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>;
    strictRegions?: undefined | Array<RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>;
    contentRegions?: undefined | Array<RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>;
    floatingRegions?: undefined | Array<RegionPlain | LegacyRegionPlain | {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    } | {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        maxUpOffset?: undefined | number;
        maxDownOffset?: undefined | number;
        maxLeftOffset?: undefined | number;
        maxRightOffset?: undefined | number;
    }>;
    accessibilityRegions?: undefined | Array<RegionPlain | LegacyRegionPlain | {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | AccessibilityRegionTypePlain;
    }>;
    dynamicRegions?: undefined | Array<RegionPlain | {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | string | Array<string>;
    }>;
    pageId?: undefined | string;
    variationGroupId?: undefined | string;
    densityMetrics?: undefined | { scaleRatio?: undefined | number; xdpi?: undefined | number; ydpi?: undefined | number; };
    stitchMode?: undefined | StitchModePlain;
};
export type CheckSettingsAutomationPlain = {
    name?: undefined | string;
    region?: undefined | (RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })));
    matchLevel?: undefined | MatchLevelPlain;
    useDom?: undefined | boolean;
    sendDom?: undefined | boolean;
    enablePatterns?: undefined | boolean;
    ignoreDisplacements?: undefined | boolean;
    ignoreMismatch?: undefined | boolean;
    ignoreCaret?: undefined | boolean;
    ignoreRegions?: undefined | Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>;
    layoutRegions?: undefined | Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>;
    strictRegions?: undefined | Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>;
    contentRegions?: undefined | Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>;
    floatingRegions?: undefined | Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    } | {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        maxUpOffset?: undefined | number;
        maxDownOffset?: undefined | number;
        maxLeftOffset?: undefined | number;
        maxRightOffset?: undefined | number;
    }>;
    accessibilityRegions?: undefined | Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | AccessibilityRegionTypePlain;
    }>;
    dynamicRegions?: undefined | Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | string | Array<string>;
    }>;
    pageId?: undefined | string;
    variationGroupId?: undefined | string;
    densityMetrics?: undefined | { scaleRatio?: undefined | number; xdpi?: undefined | number; ydpi?: undefined | number; };
    stitchMode?: undefined | StitchModePlain;
    frames?: undefined | Array<{ frame: number | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); } | (number | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))>;
    webview?: undefined | string | boolean;
    scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
    fully?: undefined | boolean;
    disableBrowserFetching?: undefined | boolean;
    layoutBreakpoints?: undefined | (boolean | Array<number> | { breakpoints: boolean | Array<number>; reload?: undefined | boolean; } | { breakpoints: boolean; heightBreakpoints: boolean; reload?: undefined | boolean; });
    visualGridOptions?: undefined | { [key: string]: any; };
    ufgOptions?: undefined | { [key: string]: any; };
    nmgOptions?: undefined | { [key: string]: any; };
    useSystemScreenshot?: undefined | boolean;
    hooks?: undefined | { beforeCaptureScreenshot: string; };
    timeout?: undefined | number;
    waitBeforeCapture?: undefined | number | (() => Promise<void>);
    lazyLoad?: undefined | boolean | { scrollLength?: undefined | number; waitingTime?: undefined | number; maxAmountToScroll?: undefined | number; };
};
export class CheckSettingsAutomation {
    constructor(settings?: undefined | CheckSettingsAutomation | CheckSettingsAutomationPlain);
    region(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    shadow(selector: string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }): CheckSettingsAutomation;
    frame(context: { frame: number | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); }): CheckSettingsAutomation;
    frame(frame: number | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })), scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    webview(webview?: undefined | string | boolean): CheckSettingsAutomation;
    scrollRootElement(scrollRootElement: Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })): CheckSettingsAutomation;
    fully(fully?: undefined | boolean): CheckSettingsAutomation;
    stitchContent(stitchContent?: undefined | boolean): CheckSettingsAutomation;
    disableBrowserFetching(disableBrowserFetching: boolean): CheckSettingsAutomation;
    layoutBreakpoints(breakpoints: boolean, heightBreakpoints: boolean, settings?: undefined | { reload?: undefined | boolean; }): CheckSettingsAutomation;
    layoutBreakpoints(breakpoints: boolean | Array<number>, settings?: undefined | { reload?: undefined | boolean; }): CheckSettingsAutomation;
    hook(name: string, script: string): CheckSettingsAutomation;
    beforeRenderScreenshotHook(script: string): CheckSettingsAutomation;
    webHook(script: string): CheckSettingsAutomation;
    ufgOption(key: string, value: any): CheckSettingsAutomation;
    ufgOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
    nmgOption(key: string, value: any): CheckSettingsAutomation;
    nmgOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
    visualGridOption(key: string, value: any): CheckSettingsAutomation;
    visualGridOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
    useSystemScreenshot(useSystemScreenshot?: undefined | boolean): CheckSettingsAutomation;
    timeout(timeout: number): CheckSettingsAutomation;
    waitBeforeCapture(waitBeforeCapture: number | (() => Promise<void>)): CheckSettingsAutomation;
    lazyLoad(options?: undefined | boolean | { scrollLength?: undefined | number; waitingTime?: undefined | number; maxAmountToScroll?: undefined | number; }): CheckSettingsAutomation;
    densityMetrics(options: { scaleRatio?: undefined | number; xdpi?: undefined | number; ydpi?: undefined | number; }): CheckSettingsAutomation;
    stitchMode(stitchMode: StitchModePlain): CheckSettingsAutomation;
    name(name: string): CheckSettingsAutomation;
    withName(name: string): CheckSettingsAutomation;
    ignoreRegion(region: (RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsAutomation;
    ignoreRegions(...regions: Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsAutomation;
    ignore(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    ignores(...regions: Array<RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))>): CheckSettingsAutomation;
    layoutRegion(region: (RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsAutomation;
    layoutRegions(...regions: Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsAutomation;
    strictRegion(region: (RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsAutomation;
    strictRegions(...regions: Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsAutomation;
    contentRegion(region: (RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsAutomation;
    contentRegions(...regions: Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsAutomation;
    floatingRegion(region: {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    }): CheckSettingsAutomation;
    floatingRegion(region: {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        maxUpOffset?: undefined | number;
        maxDownOffset?: undefined | number;
        maxLeftOffset?: undefined | number;
        maxRightOffset?: undefined | number;
    }): CheckSettingsAutomation;
    floatingRegion(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })), maxUpOffset?: undefined | number, maxDownOffset?: undefined | number, maxLeftOffset?: undefined | number, maxRightOffset?: undefined | number): CheckSettingsAutomation;
    floatingRegions(...regions: Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    }>): CheckSettingsAutomation;
    floatingRegions(maxOffset: number, ...regions: Array<RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))>): CheckSettingsAutomation;
    floating(region: {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    }): CheckSettingsAutomation;
    floating(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    floatings(...regions: Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    }>): CheckSettingsAutomation;
    floatings(maxOffset: number, ...regions: Array<RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))>): CheckSettingsAutomation;
    accessibilityRegion(region: {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | AccessibilityRegionTypePlain;
    }): CheckSettingsAutomation;
    accessibilityRegion(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })), type?: undefined | AccessibilityRegionTypePlain): CheckSettingsAutomation;
    accessibilityRegions(...regions: Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | AccessibilityRegionTypePlain;
    }>): CheckSettingsAutomation;
    accessibilityRegions(type: AccessibilityRegionTypePlain, ...regions: Array<RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))>): CheckSettingsAutomation;
    dynamicRegion(region: {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | string | Array<string>;
    }): CheckSettingsAutomation;
    dynamicRegion(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    dynamicRegion(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })), type?: undefined | string | Array<string>): CheckSettingsAutomation;
    dynamicRegions(...regions: Array<(RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
        region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | string | Array<string>;
    }>): CheckSettingsAutomation;
    matchLevel(matchLevel: MatchLevelPlain): CheckSettingsAutomation;
    layout(): CheckSettingsAutomation;
    exact(): CheckSettingsAutomation;
    strict(): CheckSettingsAutomation;
    ignoreColors(): CheckSettingsAutomation;
    dynamic(): CheckSettingsAutomation;
    content(): CheckSettingsAutomation;
    enablePatterns(enablePatterns?: undefined | boolean): CheckSettingsAutomation;
    ignoreDisplacements(ignoreDisplacements?: undefined | boolean): CheckSettingsAutomation;
    ignoreCaret(ignoreCaret?: undefined | boolean): CheckSettingsAutomation;
    useDom(useDom?: undefined | boolean): CheckSettingsAutomation;
    sendDom(sendDom?: undefined | boolean): CheckSettingsAutomation;
    pageId(pageId: string): CheckSettingsAutomation;
    variationGroupId(variationGroupId: string): CheckSettingsAutomation;
}
export class CheckSettings extends CheckSettingsAutomation {
}
export type TargetAutomation = {
    window(): CheckSettingsAutomation;
    region(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    frame(context: { frame: number | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); }): CheckSettingsAutomation;
    frame(frame: number | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })), scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    shadow(selector: string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }): CheckSettingsAutomation;
    webview(webview?: undefined | string | boolean): CheckSettingsAutomation;
};
export const TargetAutomation: {
    window(): CheckSettingsAutomation;
    region(region: RegionPlain | LegacyRegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    frame(context: { frame: number | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })); }): CheckSettingsAutomation;
    frame(frame: number | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })), scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
    shadow(selector: string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }): CheckSettingsAutomation;
    webview(webview?: undefined | string | boolean): CheckSettingsAutomation;
};
export type Target = TargetImage & TargetAutomation;
export const Target: TargetImage & TargetAutomation;
export type OCRRegion = { target: Element | RegionPlain | EyesSelector<Selector>; hint?: undefined | string; minMatch?: undefined | number; language?: undefined | string; };
export type ConfigurationPlain = {
    accessibilityValidation?: undefined | AccessibilitySettings;
    agentId?: undefined | string;
    apiKey?: undefined | string;
    appName?: undefined | string;
    autProxy?: undefined | (ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; });
    baselineBranchName?: undefined | string;
    baselineEnvName?: undefined | string;
    batch?: undefined | BatchInfoPlain;
    branchName?: undefined | string;
    browsersInfo?: undefined | Array<(DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { iosDeviceInfo: { deviceName: "iPhone X" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone SE (3rd generation)" | "iPhone SE (2nd generation)" | "iPhone 8" | "iPhone 8 Plus" | "iPhone 13 mini" | "iPhone 12 mini" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 Pro" | "iPhone 12 Pro Max" | "iPhone 13" | "iPhone 13 Pro" | "iPhone 13 Pro Max" | "iPhone 14" | "iPhone 14 Pro Max"; }; })>;
    captureStatusBar?: undefined | boolean;
    compareWithParentBranch?: undefined | boolean;
    concurrentSessions?: undefined | number;
    connectionTimeout?: undefined | number;
    cut?: undefined | CutProviderPlain;
    debugScreenshots?: undefined | { save: boolean; path?: undefined | string; prefix?: undefined | string; };
    defaultMatchSettings?: undefined | ImageMatchSettingsPlain;
    deviceInfo?: undefined | string;
    disableBrowserFetching?: undefined | boolean;
    disableNMLUrlCache?: undefined | boolean;
    displayName?: undefined | string;
    dontCloseBatches?: undefined | boolean;
    enablePatterns?: undefined | boolean;
    environmentName?: undefined | string;
    forceFullPageScreenshot?: undefined | boolean;
    fully?: undefined | boolean;
    gitMergeBaseTimestamp?: undefined | string;
    latestCommitInfo?: undefined | { timestamp: string; sha: string; };
    hideCaret?: undefined | boolean;
    hideScrollbars?: undefined | boolean;
    hostApp?: undefined | string;
    hostAppInfo?: undefined | string;
    hostOS?: undefined | string;
    hostOSInfo?: undefined | string;
    ignoreBaseline?: undefined | boolean;
    ignoreCaret?: undefined | boolean;
    ignoreDisplacements?: undefined | boolean;
    ignoreGitMergeBase?: undefined | boolean;
    isDisabled?: undefined | boolean;
    layoutBreakpoints?: undefined | boolean | Array<number> | { breakpoints: boolean | Array<number>; reload?: undefined | boolean; };
    matchLevel?: undefined | MatchLevelPlain;
    matchTimeout?: undefined | number;
    mobileOptions?: undefined | { keepNavigationBar?: undefined | boolean; };
    parentBranchName?: undefined | string;
    properties?: undefined | Array<PropertyDataPlain>;
    proxy?: undefined | ProxySettingsPlain;
    removeSession?: undefined | boolean;
    rotation?: undefined | ImageRotationPlain;
    saveDiffs?: undefined | boolean;
    saveFailedTests?: undefined | boolean;
    saveNewTests?: undefined | boolean;
    scaleRatio?: undefined | number;
    scrollRootElement?: undefined | Element | EyesSelector<Selector>;
    sendDom?: undefined | boolean;
    serverUrl?: undefined | string;
    sessionType?: undefined | SessionTypePlain;
    stitchMode?: undefined | StitchModePlain;
    stitchOverlap?: undefined | number;
    testName?: undefined | string;
    useDom?: undefined | boolean;
    viewportSize?: undefined | RectangleSizePlain;
    visualGridOptions?: undefined | Record<string, any>;
    waitBeforeCapture?: undefined | number | (() => Promise<void>);
    waitBeforeScreenshots?: undefined | number;
};
export class Configuration implements Required<ConfigurationPlain> {
    constructor(config?: undefined | ConfigurationPlain);
    get accessibilityValidation(): AccessibilitySettings;
    set accessibilityValidation(accessibilityValidation: AccessibilitySettings);
    getAccessibilityValidation(): AccessibilitySettings;
    setAccessibilityValidation(accessibilityValidation: AccessibilitySettings): Configuration;
    get agentId(): string;
    set agentId(agentId: string);
    getAgentId(): string;
    setAgentId(agentId: string): Configuration;
    get apiKey(): string;
    set apiKey(apiKey: string);
    getApiKey(): string;
    setApiKey(apiKey: string): Configuration;
    get appName(): string;
    set appName(appName: string);
    getAppName(): string;
    setAppName(appName: string): Configuration;
    get autProxy(): ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; };
    set autProxy(autProxy: ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; });
    getAutProxy(): ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; };
    setAutProxy(autProxy: ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; }): Configuration;
    get baselineBranchName(): string;
    set baselineBranchName(baselineBranchName: string);
    getBaselineBranchName(): string;
    setBaselineBranchName(baselineBranchName: string): Configuration;
    get baselineEnvName(): string;
    set baselineEnvName(baselineEnvName: string);
    getBaselineEnvName(): string;
    setBaselineEnvName(baselineEnvName: string): Configuration;
    get batch(): BatchInfoPlain;
    set batch(batch: BatchInfoPlain);
    getBatch(): BatchInfo;
    setBatch(batch: BatchInfoPlain): Configuration;
    get branchName(): string;
    set branchName(branchName: string);
    getBranchName(): string;
    setBranchName(branchName: string): Configuration;
    get browsersInfo(): Array<(DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { iosDeviceInfo: { deviceName: "iPhone X" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone SE (3rd generation)" | "iPhone SE (2nd generation)" | "iPhone 8" | "iPhone 8 Plus" | "iPhone 13 mini" | "iPhone 12 mini" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 Pro" | "iPhone 12 Pro Max" | "iPhone 13" | "iPhone 13 Pro" | "iPhone 13 Pro Max" | "iPhone 14" | "iPhone 14 Pro Max"; }; })>;
    set browsersInfo(browsersInfo: Array<(DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { iosDeviceInfo: { deviceName: "iPhone X" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone SE (3rd generation)" | "iPhone SE (2nd generation)" | "iPhone 8" | "iPhone 8 Plus" | "iPhone 13 mini" | "iPhone 12 mini" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 Pro" | "iPhone 12 Pro Max" | "iPhone 13" | "iPhone 13 Pro" | "iPhone 13 Pro Max" | "iPhone 14" | "iPhone 14 Pro Max"; }; })>);
    getBrowsersInfo(): Array<(DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { iosDeviceInfo: { deviceName: "iPhone X" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone SE (3rd generation)" | "iPhone SE (2nd generation)" | "iPhone 8" | "iPhone 8 Plus" | "iPhone 13 mini" | "iPhone 12 mini" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 Pro" | "iPhone 12 Pro Max" | "iPhone 13" | "iPhone 13 Pro" | "iPhone 13 Pro Max" | "iPhone 14" | "iPhone 14 Pro Max"; }; })>;
    setBrowsersInfo(browsersInfo: Array<(DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; })>): Configuration;
    addBrowsers(...browsersInfo: Array<(DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; })>): Configuration;
    addBrowser(browserInfo: (DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; })): Configuration;
    addBrowser(width: number, height: number, name?: undefined | BrowserTypePlain): Configuration;
    addDeviceEmulation(deviceName: DeviceNamePlain, screenOrientation?: undefined | ScreenOrientationPlain): Configuration;
    addMultiDeviceTarget(deviceName: "iPhone X" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone SE (3rd generation)" | "iPhone SE (2nd generation)" | "iPhone 8" | "iPhone 8 Plus" | "iPhone 13 mini" | "iPhone 12 mini" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 Pro" | "iPhone 12 Pro Max" | "iPhone 13" | "iPhone 13 Pro" | "iPhone 13 Pro Max" | "iPhone 14" | "iPhone 14 Pro Max"): Configuration;
    get captureStatusBar(): boolean;
    set captureStatusBar(captureStatusBar: boolean);
    getCaptureStatusBar(): boolean;
    setCaptureStatusBar(captureStatusBar: boolean): Configuration;
    get compareWithParentBranch(): boolean;
    set compareWithParentBranch(compareWithParentBranch: boolean);
    getCompareWithParentBranch(): boolean;
    setCompareWithParentBranch(compareWithParentBranch: boolean): Configuration;
    get concurrentSessions(): number;
    set concurrentSessions(concurrentSessions: number);
    getConcurrentSessions(): number;
    setConcurrentSessions(concurrentSessions: number): Configuration;
    get connectionTimeout(): number;
    set connectionTimeout(connectionTimeout: number);
    getConnectionTimeout(): number;
    setConnectionTimeout(connectionTimeout: number): Configuration;
    get cut(): CutProviderPlain;
    set cut(cut: CutProviderPlain);
    getCut(): CutProviderPlain;
    setCut(cut: CutProviderPlain): Configuration;
    get debugScreenshots(): { save: boolean; path?: undefined | string; prefix?: undefined | string; };
    set debugScreenshots(debugScreenshots: { save: boolean; path?: undefined | string; prefix?: undefined | string; });
    getSaveDebugScreenshots(): boolean;
    setSaveDebugScreenshots(save: boolean): Configuration;
    getDebugScreenshotsPath(): string;
    setDebugScreenshotsPath(path: string): Configuration;
    getDebugScreenshotsPrefix(): string;
    setDebugScreenshotsPrefix(prefix: string): Configuration;
    get defaultMatchSettings(): ImageMatchSettingsPlain;
    set defaultMatchSettings(defaultMatchSettings: ImageMatchSettingsPlain);
    getDefaultMatchSettings(): ImageMatchSettingsPlain;
    setDefaultMatchSettings(defaultMatchSettings: ImageMatchSettingsPlain): Configuration;
    get deviceInfo(): string;
    set deviceInfo(deviceInfo: string);
    getDeviceInfo(): string;
    setDeviceInfo(deviceInfo: string): Configuration;
    get disableBrowserFetching(): boolean;
    set disableBrowserFetching(disableBrowserFetching: boolean);
    getDisableBrowserFetching(): boolean;
    setDisableBrowserFetching(disableBrowserFetching: boolean): Configuration;
    get disableNMLUrlCache(): boolean;
    set disableNMLUrlCache(disableNMLUrlCache: boolean);
    getDisableNMLUrlCache(): boolean;
    setDisableNMLUrlCache(disableNMLUrlCache: boolean): Configuration;
    get displayName(): string;
    set displayName(displayName: string);
    getDisplayName(): string;
    setDisplayName(displayName: string): Configuration;
    get dontCloseBatches(): boolean;
    set dontCloseBatches(dontCloseBatches: boolean);
    getDontCloseBatches(): boolean;
    setDontCloseBatches(dontCloseBatches: boolean): Configuration;
    get enablePatterns(): boolean;
    set enablePatterns(enablePatterns: boolean);
    getEnablePatterns(): boolean;
    setEnablePatterns(enablePatterns: boolean): Configuration;
    get environmentName(): string;
    set environmentName(environmentName: string);
    getEnvironmentName(): string;
    setEnvironmentName(environmentName: string): Configuration;
    get forceFullPageScreenshot(): boolean;
    set forceFullPageScreenshot(forceFullPageScreenshot: boolean);
    getForceFullPageScreenshot(): boolean;
    setForceFullPageScreenshot(forceFullPageScreenshot: boolean): Configuration;
    get gitMergeBaseTimestamp(): string;
    set gitMergeBaseTimestamp(gitMergeBaseTimestamp: string);
    getGitMergeBaseTimestamp(): string;
    setGitMergeBaseTimestamp(gitMergeBaseTimestamp: string): Configuration;
    get latestCommitInfo(): { timestamp: string; sha: string; };
    set latestCommitInfo(latestCommitInfo: { timestamp: string; sha: string; });
    getLatestCommitInfo(): { timestamp: string; sha: string; };
    setLatestCommitInfo(latestCommitInfo: { timestamp: string; sha: string; }): Configuration;
    get hideCaret(): boolean;
    set hideCaret(hideCaret: boolean);
    getHideCaret(): boolean;
    setHideCaret(hideCaret: boolean): Configuration;
    get hideScrollbars(): boolean;
    set hideScrollbars(hideScrollbars: boolean);
    getHideScrollbars(): boolean;
    setHideScrollbars(hideScrollbars: boolean): Configuration;
    get hostApp(): string;
    set hostApp(hostApp: string);
    getHostApp(): string;
    setHostApp(hostApp: string): Configuration;
    get hostAppInfo(): string;
    set hostAppInfo(hostAppInfo: string);
    getHostAppInfo(): string;
    setHostAppInfo(hostAppInfo: string): Configuration;
    get hostOS(): string;
    set hostOS(hostOS: string);
    getHostOS(): string;
    setHostOS(hostOS: string): Configuration;
    get hostOSInfo(): string;
    set hostOSInfo(hostOSInfo: string);
    getHostOSInfo(): string;
    setHostOSInfo(hostOSInfo: string): Configuration;
    get ignoreBaseline(): boolean;
    set ignoreBaseline(ignoreBaseline: boolean);
    getIgnoreBaseline(): boolean;
    setIgnoreBaseline(ignoreBaseline: boolean): Configuration;
    get ignoreCaret(): boolean;
    set ignoreCaret(ignoreCaret: boolean);
    getIgnoreCaret(): boolean;
    setIgnoreCaret(ignoreCaret: boolean): Configuration;
    get ignoreDisplacements(): boolean;
    set ignoreDisplacements(ignoreDisplacements: boolean);
    getIgnoreDisplacements(): boolean;
    setIgnoreDisplacements(ignoreDisplacements: boolean): Configuration;
    get ignoreGitMergeBase(): boolean;
    set ignoreGitMergeBase(ignoreGitMergeBase: boolean);
    getIgnoreGitMergeBase(): boolean;
    setIgnoreGitMergeBase(ignoreGitMergeBase: boolean): Configuration;
    get isDisabled(): boolean;
    set isDisabled(isDisabled: boolean);
    getIsDisabled(): boolean;
    setIsDisabled(isDisabled: boolean): Configuration;
    get layoutBreakpoints(): boolean | Array<number> | { breakpoints: boolean | Array<number>; reload?: undefined | boolean; };
    set layoutBreakpoints(layoutBreakpoints: boolean | Array<number> | { breakpoints: boolean | Array<number>; reload?: undefined | boolean; });
    getLayoutBreakpoints(): boolean | Array<number> | { breakpoints: boolean | Array<number>; reload?: undefined | boolean; };
    setLayoutBreakpoints(layoutBreakpoints: boolean | Array<number> | { breakpoints: boolean | Array<number>; reload?: undefined | boolean; }): Configuration;
    get matchLevel(): MatchLevelPlain;
    set matchLevel(matchLevel: MatchLevelPlain);
    getMatchLevel(): MatchLevel;
    setMatchLevel(matchLevel: MatchLevelPlain): Configuration;
    get matchTimeout(): number;
    set matchTimeout(matchTimeout: number);
    getMatchTimeout(): number;
    setMatchTimeout(matchTimeout: number): Configuration;
    get mobileOptions(): { keepNavigationBar?: undefined | boolean; };
    set mobileOptions(mobileOptions: { keepNavigationBar?: undefined | boolean; });
    getMobileOptions(): { keepNavigationBar?: undefined | boolean; };
    setMobileOptions(mobileOptions: { keepNavigationBar?: undefined | boolean; }): Configuration;
    get parentBranchName(): string;
    set parentBranchName(parentBranchName: string);
    getParentBranchName(): string;
    setParentBranchName(parentBranchName: string): Configuration;
    get properties(): Array<PropertyDataPlain>;
    set properties(properties: Array<PropertyDataPlain>);
    getProperties(): Array<PropertyData>;
    setProperties(properties: Array<PropertyDataPlain>): Configuration;
    addProperty(name: string, value: string): Configuration;
    addProperty(prop: PropertyDataPlain): Configuration;
    clearProperties(): Configuration;
    get proxy(): ProxySettingsPlain;
    set proxy(proxy: ProxySettingsPlain);
    getProxy(): ProxySettings;
    setProxy(proxy: ProxySettingsPlain): Configuration;
    setProxy(url: string, username?: undefined | string, password?: undefined | string, deprecatedIsHttpOnly?: undefined | boolean): Configuration;
    setProxy(isEnabled: false): Configuration;
    get removeSession(): boolean;
    set removeSession(removeSession: boolean);
    getRemoveSession(): boolean;
    setRemoveSession(removeSession: boolean): Configuration;
    get rotation(): ImageRotationPlain;
    set rotation(rotation: ImageRotationPlain);
    getRotation(): ImageRotation;
    setRotation(rotation: ImageRotation | ImageRotationPlain): Configuration;
    get saveDiffs(): boolean;
    set saveDiffs(saveDiffs: boolean);
    getSaveDiffs(): boolean;
    setSaveDiffs(saveDiffs: boolean): Configuration;
    get saveFailedTests(): boolean;
    set saveFailedTests(saveFailedTests: boolean);
    getSaveFailedTests(): boolean;
    setSaveFailedTests(saveFailedTests: boolean): Configuration;
    get saveNewTests(): boolean;
    set saveNewTests(saveNewTests: boolean);
    getSaveNewTests(): boolean;
    setSaveNewTests(saveNewTests: boolean): Configuration;
    get scaleRatio(): number;
    set scaleRatio(scaleRatio: number);
    getScaleRatio(): number;
    setScaleRatio(scaleRatio: number): Configuration;
    get scrollRootElement(): Element | EyesSelector<Selector>;
    set scrollRootElement(scrollRootElement: Element | EyesSelector<Selector>);
    getScrollRootElement(): Element | EyesSelector<Selector>;
    setScrollRootElement(scrollRootElement: Element | EyesSelector<Selector>): Configuration;
    get sendDom(): boolean;
    set sendDom(sendDom: boolean);
    getSendDom(): boolean;
    setSendDom(sendDom: boolean): Configuration;
    get serverUrl(): string;
    set serverUrl(serverUrl: string);
    getServerUrl(): string;
    setServerUrl(serverUrl: string): Configuration;
    get sessionType(): SessionTypePlain;
    set sessionType(sessionType: SessionTypePlain);
    getSessionType(): SessionType;
    setSessionType(sessionType: SessionTypePlain): Configuration;
    get stitchMode(): StitchModePlain;
    set stitchMode(stitchMode: StitchModePlain);
    getStitchMode(): StitchMode;
    setStitchMode(stitchMode: StitchModePlain): Configuration;
    get stitchOverlap(): number;
    set stitchOverlap(stitchOverlap: number);
    getStitchOverlap(): number;
    setStitchOverlap(stitchOverlap: number): Configuration;
    get testName(): string;
    set testName(testName: string);
    getTestName(): string;
    setTestName(testName: string): Configuration;
    get useDom(): boolean;
    set useDom(useDom: boolean);
    getUseDom(): boolean;
    setUseDom(useDom: boolean): Configuration;
    get viewportSize(): RectangleSizePlain;
    set viewportSize(viewportSize: RectangleSizePlain);
    getViewportSize(): RectangleSize;
    setViewportSize(viewportSize: RectangleSizePlain): Configuration;
    get visualGridOptions(): { [key: string]: any; };
    set visualGridOptions(visualGridOptions: { [key: string]: any; });
    getVisualGridOptions(): { [key: string]: any; };
    setVisualGridOptions(visualGridOptions: { [key: string]: any; }): Configuration;
    setVisualGridOption(key: string, value: any): Configuration;
    get waitBeforeCapture(): number | (() => Promise<void>);
    set waitBeforeCapture(waitBeforeCapture: number | (() => Promise<void>));
    getWaitBeforeCapture(): number | (() => Promise<void>);
    setWaitBeforeCapture(waitBeforeCapture: number | (() => Promise<void>)): Configuration;
    get waitBeforeScreenshots(): number;
    set waitBeforeScreenshots(waitBeforeScreenshots: number);
    getWaitBeforeScreenshots(): number;
    setWaitBeforeScreenshots(waitBeforeScreenshots: number): Configuration;
    get fully(): boolean;
    set fully(fully: boolean);
    getFully(): boolean;
    setFully(fully: boolean): Configuration;
}
export class BatchClose {
    static close(settings: { batchIds: Array<string>; serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; }): Promise<void>;
    constructor(options?: undefined | { batchIds: Array<string>; serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; });
    close(): Promise<void>;
    setBatchIds(batchIds: Array<string>): BatchClose;
    setUrl(serverUrl: string): BatchClose;
    setApiKey(apiKey: string): BatchClose;
    setProxy(proxy: ProxySettingsPlain): BatchClose;
}
export const closeBatch: (options: { batchIds: Array<string>; serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; }) => Promise<void>;
export type TestCafeConfiguration = {
    apiKey?: undefined | string;
    serverUrl?: undefined | string;
    appName?: undefined | string;
    testName?: undefined | string;
    browser?: undefined | DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo>;
    batchId?: undefined | string;
    batchName?: undefined | string;
    batchSequenceName?: undefined | string;
    batchSequence?: undefined | string;
    baselineEnvName?: undefined | string;
    envName?: undefined | string;
    proxy?: undefined | string | ProxySettingsPlain;
    ignoreCaret?: undefined | boolean;
    matchLevel?: undefined | MatchLevel | MatchLevelPlain;
    baselineBranchName?: undefined | string;
    baselineBranch?: undefined | string;
    parentBranchName?: undefined | string;
    parentBranch?: undefined | string;
    branchName?: undefined | string;
    branch?: undefined | string;
    saveDiffs?: undefined | boolean;
    saveFailedTests?: undefined | boolean;
    saveNewTests?: undefined | boolean;
    properties?: undefined | Array<{ name: string; value: any; }>;
    compareWithParentBranch?: undefined | boolean;
    ignoreBaseline?: undefined | boolean;
    accessibilityValidation?: undefined | AccessibilitySettings;
    notifyOnCompletion?: undefined | boolean;
    batchNotify?: undefined | boolean;
    isDisabled?: undefined | boolean;
    ignoreDisplacements?: undefined | boolean;
    dontCloseBatches?: undefined | boolean;
    disableBrowserFetching?: undefined | boolean;
    concurrency?: undefined | number;
    failTestcafeOnDiff?: undefined | boolean;
    tapDirPath?: undefined | string;
    showLogs?: undefined | boolean;
};
export type TestCafeCheckSettings = {
    tag?: undefined | string;
    target?: undefined | "window" | "region";
    fully?: undefined | boolean;
    selector?: undefined | string | Selector;
    region?: undefined | RegionPlain | LegacyRegionPlain;
    ignore?: undefined | ((Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }) | Array<Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }>);
    floating?: undefined | (((Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }) & { maxUpOffset?: undefined | number; maxDownOffset?: undefined | number; maxLeftOffset?: undefined | number; maxRightOffset?: undefined | number; }) | Array<(Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }) & { maxUpOffset?: undefined | number; maxDownOffset?: undefined | number; maxLeftOffset?: undefined | number; maxRightOffset?: undefined | number; }>);
    layout?: undefined | ((Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }) | Array<Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }>);
    content?: undefined | ((Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }) | Array<Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }>);
    strict?: undefined | ((Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }) | Array<Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }>);
    accessibility?: undefined | (((Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }) & { accessibilityType: AccessibilityRegionType | AccessibilityRegionTypePlain; }) | Array<(Selector | RegionPlain | LegacyRegionPlain | { selector: string | Selector; }) & { accessibilityType: AccessibilityRegionType | AccessibilityRegionTypePlain; }>);
    scriptHooks?: undefined | { beforeCaptureScreenshot: string; };
    sendDom?: undefined | boolean;
    ignoreDisplacements?: undefined | boolean;
    enablePatterns?: undefined | boolean;
};
export type BrowserTypePlain = "chrome" | "chrome-one-version-back" | "chrome-two-versions-back" | "firefox" | "firefox-one-version-back" | "firefox-two-versions-back" | "ie" | "ie10" | "edge" | "edgechromium" | "edgelegacy" | "edgechromium-one-version-back" | "edgechromium-two-versions-back" | "safari" | "safari-one-version-back" | "safari-two-versions-back";
export enum BrowserType {
    CHROME = 'chrome',
    CHROME_ONE_VERSION_BACK = 'chrome-one-version-back',
    CHROME_TWO_VERSIONS_BACK = 'chrome-two-versions-back',
    FIREFOX = 'firefox',
    FIREFOX_ONE_VERSION_BACK = 'firefox-one-version-back',
    FIREFOX_TWO_VERSIONS_BACK = 'firefox-two-versions-back',
    IE_11 = 'ie',
    IE_10 = 'ie10',
    EDGE = 'edge',
    EDGE_CHROMIUM = 'edgechromium',
    EDGE_LEGACY = 'edgelegacy',
    EDGE_CHROMIUM_ONE_VERSION_BACK = 'edgechromium-one-version-back',
    EDGE_CHROMIUM_TWO_VERSIONS_BACK = 'edgechromium-two-versions-back',
    SAFARI = 'safari',
    SAFARI_ONE_VERSION_BACK = 'safari-one-version-back',
    SAFARI_TWO_VERSIONS_BACK = 'safari-two-versions-back'
}
export type CorsIframeHandlePlain = "BLANK" | "KEEP" | "SNAPSHOT";
export enum CorsIframeHandle {
    BLANK = 'BLANK',
    KEEP = 'KEEP',
    SNAPSHOT = 'SNAPSHOT'
}
export type DeviceNamePlain = "iPhone 4" | "iPhone 5/SE" | "iPhone SE 3rd Gen" | "iPhone 6/7/8" | "iPhone 6/7/8 Plus" | "iPhone X" | "iPhone 13 Mini" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 15 Pro" | "BlackBerry Z30" | "Nexus 4" | "Nexus 5" | "Nexus 5X" | "Nexus 6" | "Nexus 6P" | "Pixel 2" | "Pixel 2 XL" | "LG Optimus L70" | "Nokia N9" | "Nokia Lumia 520" | "Microsoft Lumia 550" | "Microsoft Lumia 950" | "Galaxy S3" | "Galaxy S III" | "Galaxy S5" | "Kindle Fire HDX" | "iPad Mini" | "iPad" | "iPad Pro" | "iPad 8th Gen" | "iPad 10th Gen" | "iPad Mini 4th Gen" | "iPad Mini 6th Gen" | "Blackberry PlayBook" | "Nexus 10" | "Nexus 7" | "Galaxy Note 3" | "Galaxy Note II" | "Galaxy Note 2" | "Galaxy S20" | "Galaxy S22" | "Galaxy S21" | "Galaxy S21 Ultra" | "Galaxy S22 Ultra" | "Laptop with touch" | "Laptop with HiDPI screen" | "Laptop with MDPI screen" | "iPhone XR" | "iPhone XS Max" | "iPhone XS" | "Samsung Galaxy A5" | "Galaxy A5" | "Samsung Galaxy S8" | "Galaxy S8" | "LG G6" | "iPad Air 2" | "iPad 6th Gen" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "Galaxy S10" | "Galaxy S9 Plus" | "Galaxy S9" | "Galaxy S10 Plus" | "Galaxy S8 Plus" | "Galaxy Note 10" | "Galaxy Note 10 Plus" | "Galaxy Note 9" | "Galaxy Note 8" | "Galaxy Note 4" | "Galaxy Tab A SM-T510" | "Galaxy Tab A7 SM-T500" | "Galaxy Tab S8" | "Galaxy Tab A8" | "Galaxy S23" | "Galaxy S23 Ultra" | "Galaxy A52s" | "Pixel 3" | "Pixel 3 XL" | "Pixel 4" | "Pixel 4 XL" | "Pixel 5" | "iPad 7th Gen" | "OnePlus 7T" | "OnePlus 7T Pro" | "Galaxy Tab S7" | "Sony Xperia 10 II" | "Huawei Mate 50 Pro" | "Huawei Matepad 11" | "Huawei P30" | "Xiaomi Mi A3" | "Huawei P40" | "Xiaomi Redmi Note 8" | "Xiaomi Mi Poco X3 Pro" | "Xiaomi Poco X3";
export enum DeviceName {
    iPhone_4 = 'iPhone 4',
    iPhone_5SE = 'iPhone 5/SE',
    iPhone_5S_E = 'iPhone 5/SE',
    iPhone_SE_3rd_Gen = 'iPhone SE 3rd Gen',
    iPhone_6_7_8 = 'iPhone 6/7/8',
    iPhone_6_7_8_Plus = 'iPhone 6/7/8 Plus',
    iPhone_X = 'iPhone X',
    iPhone_13_Mini = 'iPhone 13 Mini',
    iPhone_14_Plus = 'iPhone 14 Plus',
    iPhone_14_Pro = 'iPhone 14 Pro',
    iPhone_15_Pro = 'iPhone 15 Pro',
    BlackBerry_Z30 = 'BlackBerry Z30',
    Nexus_4 = 'Nexus 4',
    Nexus_5 = 'Nexus 5',
    Nexus_5X = 'Nexus 5X',
    Nexus_6 = 'Nexus 6',
    Nexus_6P = 'Nexus 6P',
    Pixel_2 = 'Pixel 2',
    Pixel_2_XL = 'Pixel 2 XL',
    LG_Optimus_L70 = 'LG Optimus L70',
    Nokia_N9 = 'Nokia N9',
    Nokia_Lumia_520 = 'Nokia Lumia 520',
    Microsoft_Lumia_550 = 'Microsoft Lumia 550',
    Microsoft_Lumia_950 = 'Microsoft Lumia 950',
    Galaxy_S3 = 'Galaxy S3',
    Galaxy_S_III = 'Galaxy S III',
    Galaxy_S5 = 'Galaxy S5',
    Kindle_Fire_HDX = 'Kindle Fire HDX',
    iPad_Mini = 'iPad Mini',
    iPad = 'iPad',
    iPad_Pro = 'iPad Pro',
    iPad_8th_Gen = 'iPad 8th Gen',
    iPad_10th_Gen = 'iPad 10th Gen',
    iPad_Mini_4th_Gen = 'iPad Mini 4th Gen',
    iPad_Mini_6th_Gen = 'iPad Mini 6th Gen',
    Blackberry_PlayBook = 'Blackberry PlayBook',
    Nexus_10 = 'Nexus 10',
    Nexus_7 = 'Nexus 7',
    Galaxy_Note_3 = 'Galaxy Note 3',
    Galaxy_Note_II = 'Galaxy Note II',
    Galaxy_Note_2 = 'Galaxy Note 2',
    Galaxy_S20 = 'Galaxy S20',
    Galaxy_S22 = 'Galaxy S22',
    Galaxy_S21 = 'Galaxy S21',
    Galaxy_S21_Ultra = 'Galaxy S21 Ultra',
    Galaxy_S22_Ultra = 'Galaxy S22 Ultra',
    Laptop_with_touch = 'Laptop with touch',
    Laptop_with_HiDPI_screen = 'Laptop with HiDPI screen',
    Laptop_with_MDPI_screen = 'Laptop with MDPI screen',
    iPhone_XR = 'iPhone XR',
    iPhone_XS_Max = 'iPhone XS Max',
    iPhone_XS = 'iPhone XS',
    Samsung_Galaxy_A5 = 'Samsung Galaxy A5',
    Galaxy_A5 = 'Galaxy A5',
    Samsung_Galaxy_S8 = 'Samsung Galaxy S8',
    Galaxy_S8 = 'Galaxy S8',
    LG_G6 = 'LG G6',
    iPad_Air_2 = 'iPad Air 2',
    iPad_6th_Gen = 'iPad 6th Gen',
    iPhone_11 = 'iPhone 11',
    iPhone_11_Pro_Max = 'iPhone 11 Pro Max',
    iPhone_11_Pro = 'iPhone 11 Pro',
    Galaxy_S10 = 'Galaxy S10',
    Galaxy_S9_Plus = 'Galaxy S9 Plus',
    Galaxy_S9 = 'Galaxy S9',
    Galaxy_S10_Plus = 'Galaxy S10 Plus',
    Galaxy_S8_Plus = 'Galaxy S8 Plus',
    Galaxy_Note_10 = 'Galaxy Note 10',
    Galaxy_Note_10_Plus = 'Galaxy Note 10 Plus',
    Galaxy_Note_9 = 'Galaxy Note 9',
    Galaxy_Note_8 = 'Galaxy Note 8',
    Galaxy_Note_4 = 'Galaxy Note 4',
    Galaxy_Tab_A_SM_T510 = 'Galaxy Tab A SM-T510',
    Galaxy_Tab_A7_SM_T500 = 'Galaxy Tab A7 SM-T500',
    Galaxy_Tab_S8 = 'Galaxy Tab S8',
    Galaxy_Tab_A8 = 'Galaxy Tab A8',
    Galaxy_S23 = 'Galaxy S23',
    Galaxy_S23_Ultra = 'Galaxy S23 Ultra',
    Galaxy_A52s = 'Galaxy A52s',
    Pixel_3 = 'Pixel 3',
    Pixel_3_XL = 'Pixel 3 XL',
    Pixel_4 = 'Pixel 4',
    Pixel_4_XL = 'Pixel 4 XL',
    Pixel_5 = 'Pixel 5',
    iPad_7th_Gen = 'iPad 7th Gen',
    OnePlus_7T = 'OnePlus 7T',
    OnePlus_7T_Pro = 'OnePlus 7T Pro',
    Galaxy_Tab_S7 = 'Galaxy Tab S7',
    Sony_Xperia_10_II = 'Sony Xperia 10 II',
    Huawei_Mate_50_Pro = 'Huawei Mate 50 Pro',
    Huawei_Matepad_11 = 'Huawei Matepad 11',
    Huawei_P30 = 'Huawei P30',
    Xiaomi_Mi_A3 = 'Xiaomi Mi A3',
    Huawei_P40 = 'Huawei P40',
    Xiaomi_Redmi_Note_8 = 'Xiaomi Redmi Note 8',
    Xiaomi_Mi_Poco_X3_Pro = 'Xiaomi Mi Poco X3 Pro',
    Xiaomi_Poco_X3 = 'Xiaomi Poco X3'
}
export type FailureReportPlain = "IMMEDIATE" | "ON_CLOSE";
export enum FailureReport {
    IMMEDIATE = 'IMMEDIATE',
    ON_CLOSE = 'ON_CLOSE'
}
export type IosDeviceNamePlain = "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 15 Pro" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone SE (3rd generation)" | "iPhone SE (2nd generation)" | "iPhone 13 mini" | "iPhone 12 mini" | "iPhone Xs" | "iPhone 12" | "iPhone 12 Pro" | "iPhone 12 Pro Max" | "iPhone 13" | "iPhone 13 Pro" | "iPhone 13 Pro Max" | "iPhone 14" | "iPhone 14 Pro Max" | "iPad (7th generation)" | "iPad (9th generation)" | "iPad (10th generation)" | "iPad mini (6th generation)" | "iPad Air (4th generation)" | "iPad Pro (12.9-inch) (3rd generation)" | "iPad Pro (11-inch) (4th generation)" | "iPhone 15" | "iPhone 15 Pro Max" | "iPhone 15 Plus" | "iPhone 16" | "iPhone 16 Pro Max" | "iPhone 16 Pro" | "iPhone 16 Plus";
export enum IosDeviceName {
    iPad_7 = 'iPad (7th generation)',
    iPad_9 = 'iPad (9th generation)',
    iPad_10 = 'iPad (10th generation)',
    iPad_mini_6 = 'iPad mini (6th generation)',
    iPad_Air_4 = 'iPad Air (4th generation)',
    iPad_Pro_3 = 'iPad Pro (12.9-inch) (3rd generation)',
    iPad_Pro_12_9_inch_3 = 'iPad Pro (12.9-inch) (3rd generation)',
    iPad_Pro_4 = 'iPad Pro (11-inch) (4th generation)',
    iPad_Pro_11_inch_4 = 'iPad Pro (11-inch) (4th generation)',
    iPhone_SE_2 = 'iPhone SE (2nd generation)',
    iPhone_SE_3 = 'iPhone SE (3rd generation)',
    iPhone_XR = 'iPhone XR',
    iPhone_XS = 'iPhone Xs',
    iPhone_Xs = 'iPhone Xs',
    iPhone_11 = 'iPhone 11',
    iPhone_11_Pro_Max = 'iPhone 11 Pro Max',
    iPhone_11_Pro = 'iPhone 11 Pro',
    iPhone_12 = 'iPhone 12',
    iPhone_12_mini = 'iPhone 12 mini',
    iPhone_12_Pro_Max = 'iPhone 12 Pro Max',
    iPhone_12_Pro = 'iPhone 12 Pro',
    iPhone_13 = 'iPhone 13',
    iPhone_13_mini = 'iPhone 13 mini',
    iPhone_13_Pro_Max = 'iPhone 13 Pro Max',
    iPhone_13_Pro = 'iPhone 13 Pro',
    iPhone_14 = 'iPhone 14',
    iPhone_14_Pro_Max = 'iPhone 14 Pro Max',
    iPhone_14_Pro = 'iPhone 14 Pro',
    iPhone_14_Plus = 'iPhone 14 Plus',
    iPhone_15 = 'iPhone 15',
    iPhone_15_Pro_Max = 'iPhone 15 Pro Max',
    iPhone_15_Pro = 'iPhone 15 Pro',
    iPhone_15_Plus = 'iPhone 15 Plus',
    iPhone_16 = 'iPhone 16',
    iPhone_16_Pro_Max = 'iPhone 16 Pro Max',
    iPhone_16_Pro = 'iPhone 16 Pro',
    iPhone_16_Plus = 'iPhone 16 Plus'
}
export type IosVersionPlain = "latest" | "latest-1";
export enum IosVersion {
    LATEST = 'latest',
    ONE_VERSION_BACK = 'latest-1',
    LATEST_ONE_VERSION_BACK = 'latest-1'
}
export type MatchLevelPlain = "None" | "Layout1" | "Layout" | "Layout2" | "Content" | "IgnoreColors" | "Strict" | "Dynamic" | "Exact";
export enum MatchLevel {
    None = 'None',
    LegacyLayout = 'Layout1',
    Layout = 'Layout',
    Layout2 = 'Layout2',
    Content = 'Content',
    IgnoreColors = 'IgnoreColors',
    Strict = 'Strict',
    Dynamic = 'Dynamic',
    Exact = 'Exact'
}
export type ScreenOrientationPlain = "portrait" | "landscape";
export enum ScreenOrientation {
    PORTRAIT = 'portrait',
    LANDSCAPE = 'landscape'
}
export type SessionTypePlain = "SEQUENTIAL" | "PROGRESSION";
export enum SessionType {
    SEQUENTIAL = 'SEQUENTIAL',
    PROGRESSION = 'PROGRESSION'
}
export type StitchModePlain = "Scroll" | "CSS" | "Resize";
export enum StitchMode {
    SCROLL = 'Scroll',
    Scroll = 'Scroll',
    CSS = 'CSS',
    RESIZE = 'Resize',
    Resize = 'Resize'
}
export type TestResultsStatusPlain = "Passed" | "Unresolved" | "Failed";
export enum TestResultsStatus {
    Passed = 'Passed',
    Unresolved = 'Unresolved',
    Failed = 'Failed'
}
export type AccessibilityGuidelinesVersionPlain = "WCAG_2_0" | "WCAG_2_1";
export enum AccessibilityGuidelinesVersion {
    WCAG_2_0 = 'WCAG_2_0',
    WCAG_2_1 = 'WCAG_2_1'
}
export type AccessibilityLevelPlain = "AA" | "AAA";
export enum AccessibilityLevel {
    AA = 'AA',
    AAA = 'AAA'
}
export type AccessibilityRegionTypePlain = "IgnoreContrast" | "RegularText" | "LargeText" | "BoldText" | "GraphicalObject";
export enum AccessibilityRegionType {
    IgnoreContrast = 'IgnoreContrast',
    RegularText = 'RegularText',
    LargeText = 'LargeText',
    BoldText = 'BoldText',
    GraphicalObject = 'GraphicalObject'
}
export type AccessibilityStatusPlain = "Passed" | "Failed";
export enum AccessibilityStatus {
    Passed = 'Passed',
    Failed = 'Failed'
}
export type DynamicTextTypePlain = "TextField" | "Number" | "Date" | "Link" | "Email" | "Currency";
export enum DynamicTextType {
    TextField = 'TextField',
    Number = 'Number',
    Date = 'Date',
    Link = 'Link',
    Email = 'Email',
    Currency = 'Currency'
}
export class EyesError extends Error {
}
export class TestFailedError extends EyesError {
    constructor(message: string, results: TestResultsPlain);
    constructor(results: TestResultsPlain);
    get testResults(): TestResultsPlain;
    getTestResults(): TestResults;
}
export class DiffsFoundError extends TestFailedError {
    constructor(message: string, results?: undefined | TestResultsPlain);
    constructor(results: TestResultsPlain);
}
export class NewTestError extends TestFailedError {
    constructor(message: string, results?: undefined | TestResultsPlain);
    constructor(results: TestResultsPlain);
}
export type AccessibilityMatchSettingsPlain = { region: RegionPlain; type?: undefined | AccessibilityRegionTypePlain; };
export class AccessibilityMatchSettings implements Required<AccessibilityMatchSettingsPlain> {
    constructor(settings: AccessibilityMatchSettingsPlain);
    constructor(region: RegionPlain);
    constructor(x: number, y: number, width: number, height: number, type?: undefined | AccessibilityRegionTypePlain);
    get region(): RegionPlain;
    set region(region: RegionPlain);
    getRegion(): Region;
    setRegion(region: RegionPlain): void;
    getLeft(): number;
    setLeft(left: number): void;
    getTop(): number;
    setTop(top: number): void;
    getWidth(): number;
    setWidth(width: number): void;
    getHeight(): number;
    setHeight(height: number): void;
    get type(): AccessibilityRegionTypePlain;
    set type(type: AccessibilityRegionTypePlain);
    getType(): AccessibilityRegionType;
    setType(type: AccessibilityRegionTypePlain): void;
}
export type AccessibilitySettings = { level?: undefined | AccessibilityLevelPlain; guidelinesVersion?: undefined | AccessibilityGuidelinesVersionPlain; };
export type BatchInfoPlain = {
    id?: undefined | string;
    name?: undefined | string;
    sequenceName?: undefined | string;
    startedAt?: undefined | string | Date;
    notifyOnCompletion?: undefined | boolean;
    properties?: undefined | Array<PropertyDataPlain>;
};
export class BatchInfo implements Required<BatchInfoPlain> {
    constructor();
    constructor(batch?: undefined | BatchInfoPlain);
    constructor(name?: undefined | string, startedAt?: undefined | string | Date, id?: undefined | string);
    get id(): string;
    set id(id: string);
    getId(): string;
    setId(id: string): BatchInfo;
    get name(): string;
    set name(name: string);
    getName(): string;
    setName(name: string): BatchInfo;
    get sequenceName(): string;
    set sequenceName(sequenceName: string);
    getSequenceName(): string;
    setSequenceName(sequenceName: string): BatchInfo;
    get startedAt(): string | Date;
    set startedAt(startedAt: string | Date);
    getStartedAt(): string | Date;
    setStartedAt(startedAt: string | Date): BatchInfo;
    get notifyOnCompletion(): boolean;
    set notifyOnCompletion(notifyOnCompletion: boolean);
    getNotifyOnCompletion(): boolean;
    setNotifyOnCompletion(notifyOnCompletion: boolean): BatchInfo;
    get properties(): Array<PropertyDataPlain>;
    set properties(properties: Array<PropertyDataPlain>);
    getProperties(): Array<PropertyData>;
    setProperties(properties: Array<PropertyDataPlain>): BatchInfo;
    addProperty(name: string, value: string): BatchInfo;
    addProperty(prop: PropertyDataPlain): BatchInfo;
}
export type Image = {
    image: string | Buffer | URL;
    name?: undefined | string;
    dom?: undefined | string;
    locationInViewport?: undefined | LocationPlain;
    locationInView?: undefined | LocationPlain;
    fullViewSize?: undefined | RectangleSizePlain;
};
export class CheckSettingsImage {
    constructor(settings?: undefined | CheckSettingsImage | CheckSettingsImagePlain, target?: undefined | Image, parent?: undefined | CheckSettingsImage);
    image(image: string | Buffer | URL): CheckSettingsImage;
    buffer(imageBuffer: Buffer): CheckSettingsImage;
    base64(imageBase64: Buffer): CheckSettingsImage;
    path(imagePath: string): CheckSettingsImage;
    url(imageUrl: string | URL): CheckSettingsImage;
    name(name: string): CheckSettingsImage;
    withDom(dom: string): CheckSettingsImage;
    withLocation(locationInViewport: LocationPlain): CheckSettingsImage;
    region(region: RegionPlain | LegacyRegionPlain): CheckSettingsImage;
    withName(name: string): CheckSettingsImage;
    ignoreRegion(region: RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsImage;
    ignoreRegions(...regions: Array<RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsImage;
    ignore(region: RegionPlain | LegacyRegionPlain): CheckSettingsImage;
    ignores(...regions: Array<RegionPlain | LegacyRegionPlain>): CheckSettingsImage;
    layoutRegion(region: RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsImage;
    layoutRegions(...regions: Array<RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsImage;
    strictRegion(region: RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsImage;
    strictRegions(...regions: Array<RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsImage;
    contentRegion(region: RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsImage;
    contentRegions(...regions: Array<RegionPlain | LegacyRegionPlain | { region: RegionPlain | LegacyRegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsImage;
    floatingRegion(region: {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    }): CheckSettingsImage;
    floatingRegion(region: {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        maxUpOffset?: undefined | number;
        maxDownOffset?: undefined | number;
        maxLeftOffset?: undefined | number;
        maxRightOffset?: undefined | number;
    }): CheckSettingsImage;
    floatingRegion(region: RegionPlain | LegacyRegionPlain, maxUpOffset?: undefined | number, maxDownOffset?: undefined | number, maxLeftOffset?: undefined | number, maxRightOffset?: undefined | number): CheckSettingsImage;
    floatingRegions(...regions: Array<RegionPlain | LegacyRegionPlain | {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    }>): CheckSettingsImage;
    floatingRegions(maxOffset: number, ...regions: Array<RegionPlain | LegacyRegionPlain>): CheckSettingsImage;
    floating(region: {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    }): CheckSettingsImage;
    floating(region: RegionPlain | LegacyRegionPlain): CheckSettingsImage;
    floatings(...regions: Array<RegionPlain | LegacyRegionPlain | {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
    }>): CheckSettingsImage;
    floatings(maxOffset: number, ...regions: Array<RegionPlain | LegacyRegionPlain>): CheckSettingsImage;
    accessibilityRegion(region: {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | AccessibilityRegionTypePlain;
    }): CheckSettingsImage;
    accessibilityRegion(region: RegionPlain | LegacyRegionPlain, type?: undefined | AccessibilityRegionTypePlain): CheckSettingsImage;
    accessibilityRegions(...regions: Array<RegionPlain | LegacyRegionPlain | {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | AccessibilityRegionTypePlain;
    }>): CheckSettingsImage;
    accessibilityRegions(type: AccessibilityRegionTypePlain, ...regions: Array<RegionPlain | LegacyRegionPlain>): CheckSettingsImage;
    dynamicRegion(region: {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | string | Array<string>;
    }): CheckSettingsImage;
    dynamicRegion(region: RegionPlain): CheckSettingsImage;
    dynamicRegion(region: RegionPlain, type?: undefined | string | Array<string>): CheckSettingsImage;
    dynamicRegions(...regions: Array<RegionPlain | {
        region: RegionPlain | LegacyRegionPlain;
        padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
        regionId?: undefined | string;
        type?: undefined | string | Array<string>;
    }>): CheckSettingsImage;
    matchLevel(matchLevel: MatchLevelPlain): CheckSettingsImage;
    layout(): CheckSettingsImage;
    exact(): CheckSettingsImage;
    strict(): CheckSettingsImage;
    ignoreColors(): CheckSettingsImage;
    dynamic(): CheckSettingsImage;
    content(): CheckSettingsImage;
    enablePatterns(enablePatterns?: undefined | boolean): CheckSettingsImage;
    ignoreDisplacements(ignoreDisplacements?: undefined | boolean): CheckSettingsImage;
    ignoreCaret(ignoreCaret?: undefined | boolean): CheckSettingsImage;
    useDom(useDom?: undefined | boolean): CheckSettingsImage;
    sendDom(sendDom?: undefined | boolean): CheckSettingsImage;
    pageId(pageId: string): CheckSettingsImage;
    variationGroupId(variationGroupId: string): CheckSettingsImage;
}
export type TargetImage = {
    image(image: string | Buffer | URL): CheckSettingsImage;
    buffer(imageBuffer: Buffer): CheckSettingsImage;
    base64(imageBase64: string): CheckSettingsImage;
    path(imagePath: string): CheckSettingsImage;
    url(imageUrl: string | URL): CheckSettingsImage;
};
export const TargetImage: {
    image(image: string | Buffer | URL): CheckSettingsImage;
    buffer(imageBuffer: Buffer): CheckSettingsImage;
    base64(imageBase64: string): CheckSettingsImage;
    path(imagePath: string): CheckSettingsImage;
    url(imageUrl: string | URL): CheckSettingsImage;
};
export type CutProviderPlain = { top: number; right: number; bottom: number; left: number; } | { x: number; y: number; width: number; height: number; };
export class CutProvider implements Required<{
    x: number;
    y: number;
    width: number;
    height: number;
    top: number;
    right: number;
    bottom: number;
    left: number;
}> {
    constructor(rectOrRegion: CutProviderPlain);
    constructor(top: number, bottom: number, left: number, right: number);
    get top(): number;
    get right(): number;
    get bottom(): number;
    get left(): number;
    get width(): number;
    get height(): number;
    get x(): number;
    get y(): number;
    scale(scaleRatio: number): CutProvider;
}
export class FixedCutProvider extends CutProvider {
}
export class UnscaledFixedCutProvider extends CutProvider {
    scale(): UnscaledFixedCutProvider;
}
export type ExactMatchSettingsPlain = { minDiffIntensity: number; minDiffWidth: number; minDiffHeight: number; matchThreshold: number; };
export class ExactMatchSettings implements Required<ExactMatchSettingsPlain> {
    constructor(settings: ExactMatchSettingsPlain);
    get minDiffIntensity(): number;
    set minDiffIntensity(minDiffIntensity: number);
    getMinDiffIntensity(): number;
    setMinDiffIntensity(value: number): void;
    get minDiffWidth(): number;
    set minDiffWidth(minDiffWidth: number);
    getMinDiffWidth(): number;
    setMinDiffWidth(value: number): void;
    get minDiffHeight(): number;
    set minDiffHeight(minDiffHeight: number);
    getMinDiffHeight(): number;
    setMinDiffHeight(value: number): void;
    get matchThreshold(): number;
    set matchThreshold(matchThreshold: number);
    getMatchThreshold(): number;
    setMatchThreshold(value: number): void;
}
export type FloatingMatchSettingsPlain = {
    region: RegionPlain;
    maxUpOffset?: undefined | number;
    maxDownOffset?: undefined | number;
    maxLeftOffset?: undefined | number;
    maxRightOffset?: undefined | number;
};
export class FloatingMatchSettings implements Required<FloatingMatchSettingsPlain> {
    constructor(settings: FloatingMatchSettingsPlain);
    constructor(region: RegionPlain);
    constructor(x: number, y: number, width: number, height: number, maxUpOffset?: undefined | number, maxDownOffset?: undefined | number, maxLeftOffset?: undefined | number, maxRightOffset?: undefined | number);
    get region(): RegionPlain;
    set region(region: RegionPlain);
    getRegion(): Region;
    setRegion(region: RegionPlain): void;
    getLeft(): number;
    setLeft(left: number): void;
    getTop(): number;
    setTop(top: number): void;
    getWidth(): number;
    setWidth(width: number): void;
    getHeight(): number;
    setHeight(height: number): void;
    get maxUpOffset(): number;
    set maxUpOffset(maxUpOffset: number);
    getMaxUpOffset(): number;
    setMaxUpOffset(maxUpOffset: number): void;
    get maxDownOffset(): number;
    set maxDownOffset(maxDownOffset: number);
    getMaxDownOffset(): number;
    setMaxDownOffset(maxDownOffset: number): void;
    get maxLeftOffset(): number;
    set maxLeftOffset(maxLeftOffset: number);
    getMaxLeftOffset(): number;
    setMaxLeftOffset(maxLeftOffset: number): void;
    get maxRightOffset(): number;
    set maxRightOffset(maxRightOffset: number);
    getMaxRightOffset(): number;
    setMaxRightOffset(maxRightOffset: number): void;
}
export type ImageMatchSettingsPlain = {
    exact?: undefined | ExactMatchSettingsPlain;
    matchLevel?: undefined | MatchLevelPlain;
    ignoreCaret?: undefined | boolean;
    useDom?: undefined | boolean;
    enablePatterns?: undefined | boolean;
    ignoreDisplacements?: undefined | boolean;
    ignoreRegions?: undefined | Array<RegionPlain>;
    layoutRegions?: undefined | Array<RegionPlain>;
    strictRegions?: undefined | Array<RegionPlain>;
    contentRegions?: undefined | Array<RegionPlain>;
    floatingRegions?: undefined | Array<RegionPlain | FloatingMatchSettingsPlain>;
    accessibilityRegions?: undefined | Array<RegionPlain | AccessibilityMatchSettingsPlain>;
    accessibilitySettings?: undefined | AccessibilitySettings;
};
export class ImageMatchSettings implements Required<ImageMatchSettingsPlain> {
    constructor(settings?: undefined | ImageMatchSettingsPlain);
    get exact(): ExactMatchSettingsPlain;
    set exact(exact: ExactMatchSettingsPlain);
    getExact(): ExactMatchSettings;
    setExact(exact: ExactMatchSettingsPlain): void;
    get matchLevel(): MatchLevelPlain;
    set matchLevel(matchLevel: MatchLevelPlain);
    getMatchLevel(): MatchLevel;
    setMatchLevel(matchLevel: MatchLevelPlain): void;
    get ignoreCaret(): boolean;
    set ignoreCaret(ignoreCaret: boolean);
    getIgnoreCaret(): boolean;
    setIgnoreCaret(ignoreCaret: boolean): void;
    get useDom(): boolean;
    set useDom(useDom: boolean);
    getUseDom(): boolean;
    setUseDom(useDom: boolean): void;
    get enablePatterns(): boolean;
    set enablePatterns(enablePatterns: boolean);
    getEnablePatterns(): boolean;
    setEnablePatterns(enablePatterns: boolean): void;
    get ignoreDisplacements(): boolean;
    set ignoreDisplacements(ignoreDisplacements: boolean);
    getIgnoreDisplacements(): boolean;
    setIgnoreDisplacements(ignoreDisplacements: boolean): void;
    get ignoreRegions(): Array<RegionPlain>;
    set ignoreRegions(ignoreRegions: Array<RegionPlain>);
    getIgnoreRegions(): Array<Region>;
    setIgnoreRegions(ignoreRegions: Array<RegionPlain>): void;
    get layoutRegions(): Array<RegionPlain>;
    set layoutRegions(layoutRegions: Array<RegionPlain>);
    get layout(): Array<RegionPlain>;
    set layout(layout: Array<RegionPlain>);
    getLayoutRegions(): Array<Region>;
    setLayoutRegions(layoutRegions: Array<RegionPlain>): void;
    get strictRegions(): Array<RegionPlain>;
    set strictRegions(strictRegions: Array<RegionPlain>);
    get strict(): Array<RegionPlain>;
    set strict(strict: Array<RegionPlain>);
    getStrictRegions(): Array<Region>;
    setStrictRegions(strictRegions: Array<RegionPlain>): void;
    get contentRegions(): Array<RegionPlain>;
    set contentRegions(contentRegions: Array<RegionPlain>);
    get content(): Array<RegionPlain>;
    set content(content: Array<RegionPlain>);
    getContentRegions(): Array<Region>;
    setContentRegions(contentRegions: Array<RegionPlain>): void;
    get floatingRegions(): Array<RegionPlain | FloatingMatchSettingsPlain>;
    set floatingRegions(floatingRegions: Array<RegionPlain | FloatingMatchSettingsPlain>);
    get floating(): Array<RegionPlain | FloatingMatchSettingsPlain>;
    set floating(floating: Array<RegionPlain | FloatingMatchSettingsPlain>);
    getFloatingRegions(): Array<FloatingMatchSettings>;
    setFloatingRegions(floatingRegions: Array<FloatingMatchSettingsPlain>): void;
    get accessibilityRegions(): Array<RegionPlain | AccessibilityMatchSettingsPlain>;
    set accessibilityRegions(accessibilityRegions: Array<RegionPlain | AccessibilityMatchSettingsPlain>);
    get accessibility(): Array<RegionPlain | AccessibilityMatchSettingsPlain>;
    set accessibility(accessibility: Array<RegionPlain | AccessibilityMatchSettingsPlain>);
    getAccessibilityRegions(): Array<AccessibilityMatchSettings>;
    setAccessibilityRegions(accessibilityRegions: Array<AccessibilityMatchSettingsPlain>): void;
    get accessibilitySettings(): AccessibilitySettings;
    set accessibilitySettings(accessibilitySettings: AccessibilitySettings);
    getAccessibilitySettings(): AccessibilitySettings;
    setAccessibilitySettings(accessibilitySettings: AccessibilitySettings): void;
}
export type ImageRotationPlain = 0 | 270 | -270 | 180 | -180 | 90 | -90;
export class ImageRotation {
    constructor(rotation: ImageRotationPlain);
    get rotation(): ImageRotationPlain;
    set rotation(rotation: ImageRotationPlain);
    getRotation(): ImageRotationPlain;
    setRotation(rotation: ImageRotationPlain): void;
}
export type LocationPlain = { x: number; y: number; };
export class Location implements Required<LocationPlain> {
    constructor(location: LocationPlain);
    constructor(x: number, y: number);
    get x(): number;
    set x(x: number);
    getX(): number;
    setX(x: number): void;
    get y(): number;
    set y(y: number);
    getY(): number;
    setY(y: number): void;
}
export type LogHandlerPlain = CustomLogHandlerPlain | FileLogHandlerPlain | ConsoleLogHandlerPlain;
export type CustomLogHandlerPlain = {
    log(message: any): void;
    warn?(message: any): void;
    error?(message: any): void;
    fatal?(message: any): void;
    open?(): void;
    close?(): void;
};
export type FileLogHandlerPlain = { type: "file"; filename?: undefined | string; append?: undefined | boolean; };
export type ConsoleLogHandlerPlain = { type: "console"; };
export abstract class LogHandler implements CustomLogHandlerPlain {
    constructor(verbose?: undefined | boolean);
    get verbose(): boolean;
    set verbose(verbose: boolean);
    getIsVerbose(): boolean;
    setIsVerbose(verbose: boolean): void;
    log(message: string): void;
    abstract onMessage(message: string): void;
    abstract open(): void;
    abstract close(): void;
}
export class FileLogHandler extends LogHandler implements FileLogHandlerPlain {
    constructor(verbose?: undefined | boolean, filename?: undefined | string, append?: undefined | boolean);
    readonly type: "file";
    readonly filename: string;
    readonly append: boolean;
    onMessage(): void;
    open(): void;
    close(): void;
}
export class ConsoleLogHandler extends LogHandler implements ConsoleLogHandlerPlain {
    readonly type: "console";
    onMessage(): void;
    open(): void;
    close(): void;
}
export class NullLogHandler extends LogHandler {
    onMessage(): void;
    open(): void;
    close(): void;
}
export type OCRSettings<TPattern extends string = string> = { patterns: Array<TPattern>; ignoreCase?: undefined | boolean; firstOnly?: undefined | boolean; language?: undefined | string; };
export type PropertyDataPlain = { name: string; value: string; };
export class PropertyData implements Required<PropertyDataPlain> {
    constructor(property: PropertyDataPlain);
    constructor(name: string, value: string);
    get name(): string;
    set name(name: string);
    getName(): string;
    setName(name: string): void;
    get value(): string;
    set value(value: string);
    getValue(): string;
    setValue(value: string): void;
}
export type ProxySettingsPlain = { url: string; username?: undefined | string; password?: undefined | string; };
export class ProxySettings implements Required<ProxySettingsPlain> {
    constructor(proxy: ProxySettingsPlain);
    constructor(url: string, username?: undefined | string, password?: undefined | string, deprecatedIsHttpOnly?: undefined | boolean);
    get url(): string;
    getUri(): string;
    getUrl(): string;
    get username(): string;
    getUsername(): string;
    get password(): string;
    getPassword(): string;
    get isHttpOnly(): boolean;
    getIsHttpOnly(): boolean;
}
export type RectangleSizePlain = { width: number; height: number; };
export class RectangleSize implements Required<RectangleSizePlain> {
    constructor(size: RectangleSizePlain);
    constructor(width: number, height: number);
    get width(): number;
    set width(width: number);
    getWidth(): number;
    setWidth(width: number): void;
    get height(): number;
    set height(height: number);
    getHeight(): number;
    setHeight(height: number): void;
}
export type RegionPlain = LocationPlain & RectangleSizePlain;
export type LegacyRegionPlain = { left: number; top: number; width: number; height: number; };
export class Region implements Required<RegionPlain> {
    constructor(region: RegionPlain);
    constructor(location: LocationPlain, size: RectangleSizePlain);
    constructor(x: number, y: number, width: number, height: number);
    get x(): number;
    set x(x: number);
    get left(): number;
    set left(left: number);
    getX(): number;
    setX(x: number): void;
    getLeft(): number;
    setLeft(left: number): void;
    get y(): number;
    set y(y: number);
    get top(): number;
    set top(top: number);
    getY(): number;
    setY(y: number): void;
    getTop(): number;
    setTop(top: number): void;
    get width(): number;
    set width(width: number);
    getWidth(): number;
    setWidth(width: number): void;
    get height(): number;
    set height(height: number);
    getHeight(): number;
    setHeight(height: number): void;
}
export type DesktopBrowserInfo = { name?: undefined | BrowserTypePlain; width: number; height: number; };
export type ChromeEmulationInfo = { chromeEmulationInfo: { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; }; };
export type IOSDeviceInfo = { iosDeviceInfo: { deviceName: IosDeviceNamePlain; iosVersion?: undefined | IosVersionPlain; screenOrientation?: undefined | ScreenOrientationPlain; }; };
export type RunnerOptionsPlain = { testConcurrency?: undefined | number; fetchConcurrency?: undefined | number; removeDuplicateTests?: undefined | boolean; maskLog?: undefined | boolean; };
export class RunnerOptionsFluent {
    testConcurrency(concurrency: number): RunnerOptionsFluent;
}
export function RunnerOptions(): RunnerOptionsFluent;
export type VisualLocatorSettings<TLocator extends string = string> = { locatorNames: Array<TLocator>; firstOnly: boolean; };
export type ApiUrlsPlain = {
    readonly baselineImage: string;
    readonly currentImage: string;
    readonly checkpointImage: string;
    readonly checkpointImageThumbnail: string;
    readonly diffImage: string;
    readonly sideBySideImage: string;
};
export class ApiUrls implements Required<ApiUrlsPlain> {
    get baselineImage(): string;
    getBaselineImage(): string;
    setBaselineImage(setBaselineImage: string): void;
    get currentImage(): string;
    getCurrentImage(): string;
    setCurrentImage(currentImage: string): void;
    get checkpointImage(): string;
    getCheckpointImage(): string;
    setCheckpointImage(checkpointImage: string): void;
    get checkpointImageThumbnail(): string;
    getCheckpointImageThumbnail(): string;
    setCheckpointImageThumbnail(checkpointImageThumbnail: string): void;
    get diffImage(): string;
    getDiffImage(): string;
    setDiffImage(diffImage: string): void;
    get sideBySideImage(): string;
    getSideBySideImage(): string;
}
export type AppUrlsPlain = { readonly step: string; readonly stepEditor: string; };
export class AppUrls implements Required<AppUrlsPlain> {
    get step(): string;
    getStep(): string;
    setStep(step: string): void;
    get stepEditor(): string;
    getStepEditor(): string;
    setStepEditor(stepEditor: string): void;
}
export type MatchResultPlain = { readonly asExpected?: undefined | boolean; readonly windowId?: undefined | number; };
export class MatchResult implements Required<MatchResultPlain> {
    get asExpected(): boolean;
    getAsExpected(): boolean;
    setAsExpected(asExpected: boolean): void;
    get windowId(): number;
    getWindowId(): number;
    setWindowId(windowId: number): void;
}
export type SessionUrlsPlain = { readonly batch: string; readonly session: string; };
export class SessionUrls implements Required<SessionUrlsPlain> {
    get batch(): string;
    getBatch(): string;
    setBatch(batch: string): void;
    get session(): string;
    getSession(): string;
    setSession(session: string): void;
}
export type StepInfoPlain = {
    readonly name: string;
    readonly isDifferent: boolean;
    readonly hasBaselineImage: boolean;
    readonly hasCurrentImage: boolean;
    readonly appUrls: AppUrlsPlain;
    readonly apiUrls: ApiUrlsPlain;
    readonly renderId: Array<string>;
};
export class StepInfo implements Required<StepInfoPlain> {
    get name(): string;
    getName(): string;
    setName(value: string): void;
    get isDifferent(): boolean;
    getIsDifferent(): boolean;
    setIsDifferent(value: boolean): void;
    get hasBaselineImage(): boolean;
    getHasBaselineImage(): boolean;
    setHasBaselineImage(value: boolean): void;
    get hasCurrentImage(): boolean;
    getHasCurrentImage(): boolean;
    setHasCurrentImage(hasCurrentImage: boolean): void;
    get appUrls(): AppUrlsPlain;
    getAppUrls(): AppUrls;
    setAppUrls(appUrls: AppUrlsPlain): void;
    get apiUrls(): ApiUrlsPlain;
    getApiUrls(): ApiUrls;
    setApiUrls(apiUrls: ApiUrlsPlain): void;
    get renderId(): Array<string>;
    getRenderId(): Array<string>;
    setRenderId(renderId: Array<string>): void;
}
export type TestAccessibilityStatus = { readonly status: AccessibilityStatusPlain; readonly level: AccessibilityLevelPlain; readonly version: AccessibilityGuidelinesVersionPlain; };
export type TestResultsPlain = {
    readonly id?: undefined | string;
    readonly name?: undefined | string;
    readonly secretToken?: undefined | string;
    readonly status?: undefined | TestResultsStatusPlain;
    readonly appName?: undefined | string;
    readonly batchId?: undefined | string;
    readonly batchName?: undefined | string;
    readonly branchName?: undefined | string;
    readonly hostOS?: undefined | string;
    readonly hostApp?: undefined | string;
    readonly hostDisplaySize?: undefined | RectangleSizePlain;
    readonly accessibilityStatus?: undefined | TestAccessibilityStatus;
    readonly startedAt?: undefined | string;
    readonly duration?: undefined | number;
    readonly isNew?: undefined | boolean;
    readonly isDifferent?: undefined | boolean;
    readonly isAborted?: undefined | boolean;
    readonly appUrls?: undefined | SessionUrlsPlain;
    readonly apiUrls?: undefined | SessionUrlsPlain;
    readonly stepsInfo?: undefined | Array<StepInfoPlain>;
    readonly steps?: undefined | number;
    readonly matches?: undefined | number;
    readonly mismatches?: undefined | number;
    readonly missing?: undefined | number;
    readonly exactMatches?: undefined | number;
    readonly strictMatches?: undefined | number;
    readonly contentMatches?: undefined | number;
    readonly layoutMatches?: undefined | number;
    readonly noneMatches?: undefined | number;
    readonly url?: undefined | string;
    readonly server?: undefined | { eyesServerUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; };
    readonly keepIfDuplicate?: undefined | boolean;
};
export class TestResults implements Required<TestResultsPlain> {
    get id(): string;
    getId(): string;
    setId(_id: string): void;
    get name(): string;
    getName(): string;
    setName(_name: string): void;
    get secretToken(): string;
    getSecretToken(): string;
    setSecretToken(_secretToken: string): void;
    get status(): TestResultsStatusPlain;
    getStatus(): TestResultsStatus;
    setStatus(_status: TestResultsStatus): void;
    get appName(): string;
    getAppName(): string;
    setAppName(_appName: string): void;
    get batchName(): string;
    getBatchName(): string;
    setBatchName(_batchName: string): void;
    get batchId(): string;
    getBatchId(): string;
    setBatchId(_batchId: string): void;
    get branchName(): string;
    getBranchName(): string;
    setBranchName(_branchName: string): void;
    get hostOS(): string;
    getHostOS(): string;
    setHostOS(_hostOS: string): void;
    get hostApp(): string;
    getHostApp(): string;
    setHostApp(_hostApp: string): void;
    get hostDisplaySize(): RectangleSizePlain;
    getHostDisplaySize(): RectangleSize;
    setHostDisplaySize(_hostDisplaySize: RectangleSizePlain): void;
    get accessibilityStatus(): TestAccessibilityStatus;
    getAccessibilityStatus(): TestAccessibilityStatus;
    setAccessibilityStatus(_accessibilityStatus: TestAccessibilityStatus): void;
    get startedAt(): string;
    getStartedAt(): Date;
    setStartedAt(_startedAt: string | Date): void;
    get duration(): number;
    getDuration(): number;
    setDuration(_duration: number): void;
    get isNew(): boolean;
    getIsNew(): boolean;
    setIsNew(_isNew: boolean): void;
    get isDifferent(): boolean;
    getIsDifferent(): boolean;
    setIsDifferent(_isDifferent: boolean): void;
    get isAborted(): boolean;
    getIsAborted(): boolean;
    setIsAborted(_isAborted: boolean): void;
    get appUrls(): SessionUrlsPlain;
    getAppUrls(): SessionUrls;
    setAppUrls(_appUrls: SessionUrlsPlain): void;
    get apiUrls(): SessionUrlsPlain;
    getApiUrls(): SessionUrls;
    setApiUrls(_apiUrls: SessionUrlsPlain): void;
    get stepsInfo(): Array<StepInfoPlain>;
    getStepsInfo(): Array<StepInfo>;
    setStepsInfo(_stepInfo: Array<StepInfoPlain>): void;
    get steps(): number;
    getSteps(): number;
    setSteps(_steps: number): void;
    get matches(): number;
    getMatches(): number;
    setMatches(_matches: number): void;
    get mismatches(): number;
    getMismatches(): number;
    setMismatches(_mismatches: number): void;
    get missing(): number;
    getMissing(): number;
    setMissing(_missing: number): void;
    get exactMatches(): number;
    getExactMatches(): number;
    setExactMatches(_exactMatches: number): void;
    get strictMatches(): number;
    getStrictMatches(): number;
    setStrictMatches(_strictMatches: number): void;
    get contentMatches(): number;
    getContentMatches(): number;
    setContentMatches(_contentMatches: number): void;
    get layoutMatches(): number;
    getLayoutMatches(): number;
    setLayoutMatches(_layoutMatches: number): void;
    get noneMatches(): number;
    getNoneMatches(): number;
    setNoneMatches(_noneMatches: number): void;
    get url(): string;
    getUrl(): string;
    setUrl(_url: string): void;
    get server(): {
        eyesServerUrl: string;
        apiKey: string;
        agentId?: undefined | string;
        proxy?: undefined | { url: string; username?: undefined | string; password?: undefined | string; };
        useDnsCache?: undefined | boolean;
    };
    get keepIfDuplicate(): boolean;
    isPassed(): boolean;
    delete(): Promise<void>;
    deleteSession(): Promise<void>;
}
export type TestResultContainerPlain = { readonly exception?: undefined | Error; readonly testResults?: undefined | TestResultsPlain; readonly browserInfo?: undefined | (DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; }); };
export class TestResultContainer implements Required<TestResultContainerPlain> {
    get testResults(): TestResultsPlain;
    getTestResults(): TestResults;
    get exception(): Error;
    getException(): Error;
    get browserInfo(): DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; };
    getBrowserInfo(): DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; };
}
export type TestResultsSummaryPlain = Iterable<TestResultContainerPlain>;
export class TestResultsSummary implements Iterable<TestResultContainer> {
    getAllResults(): Array<TestResultContainer>;
    [Symbol.iterator](): Iterator<TestResultContainer, any, undefined>;
}
export type TextRegion = {
    x: number;
    y: number;
    width: number;
    height: number;
    text: string;
};
export type ValidationInfoPlain = { readonly validationId: number; readonly tag: string; };
export class ValidationInfo implements Required<ValidationInfoPlain> {
    get validationId(): number;
    getValidationId(): number;
    get tag(): string;
    getTag(): string;
}
export type ValidationResultPlain = { readonly asExpected: boolean; };
export class ValidationResult implements Required<ValidationResultPlain> {
    get asExpected(): boolean;
    getAsExpected(): boolean;
}
export type EyesSelector<TSelector = never> = string | TSelector | { selector: string | TSelector; type?: undefined | string; shadow?: undefined | EyesSelector<TSelector>; frame?: undefined | EyesSelector<TSelector>; };
export class Logger {
    constructor(options?: undefined | { show?: undefined | boolean; label?: undefined | string; handler?: undefined | LogHandlerPlain; });
    constructor(show?: undefined | boolean);
    getLogHandler(): LogHandler | FileLogHandler | ConsoleLogHandler;
    setLogHandler(handler: LogHandlerPlain): void;
    verbose(...messages: Array<any>): void;
    log(...messages: Array<any>): void;
    warn(...messages: Array<any>): void;
    error(...messages: Array<any>): void;
    fatal(...messages: Array<any>): void;
    open(): void;
    close(): void;
}
export abstract class EyesRunner {
    constructor(options?: undefined | RunnerOptionsPlain);
    readonly _maskLog: boolean;
    abstract readonly type: "ufg" | "classic";
    getAllTestResults(throwErr?: undefined | boolean): Promise<TestResultsSummary>;
}
export class ClassicRunner extends EyesRunner {
    readonly type: "classic";
}
export class VisualGridRunner extends EyesRunner {
    constructor(options?: undefined | RunnerOptionsPlain);
    constructor(options?: undefined | RunnerOptionsFluent);
    constructor(legacyConcurrency?: undefined | number);
    readonly type: "ufg";
    get testConcurrency(): undefined | number;
    get legacyConcurrency(): undefined | number;
    getConcurrentSessions(): undefined | number;
}
export abstract class SessionEventHandler {
    abstract initStarted(): any;
    abstract initEnded(): any;
    abstract setSizeWillStart(viewportSize: RectangleSize): any;
    abstract setSizeEnded(): any;
    abstract testStarted(sessionId: string): any;
    abstract testEnded(sessionId: string, testResults: TestResults): any;
    abstract validationWillStart(sessionId: string, validationInfo: ValidationInfo): any;
    abstract validationEnded(sessionId: string, validationId: number, validationResult: ValidationResult): any;
}
export class SessionEventHandlers extends SessionEventHandler {
    addEventHandler(handler: SessionEventHandler): void;
    removeEventHandler(handler: SessionEventHandler): void;
    clearEventHandlers(): void;
    initStarted(): void;
    initEnded(): void;
    setSizeWillStart(viewportSize: RectangleSize): void;
    setSizeEnded(): void;
    testStarted(sessionId: string): void;
    testEnded(sessionId: string, testResults: TestResults): void;
    validationWillStart(sessionId: string, validationInfo: ValidationInfo): void;
    validationEnded(sessionId: string, validationId: number, validationResult: ValidationResult): void;
}
export class RemoteSessionEventHandler extends SessionEventHandler {
    constructor(options: { serverUrl: string; accessKey?: undefined | string; timeout?: undefined | number; });
    constructor(serverUrl: string, accessKey?: undefined | string, timeout?: undefined | number);
    get serverUrl(): string;
    set serverUrl(serverUrl: string);
    getServerUrl(): string;
    setServerUrl(serverUrl: string): void;
    get accessKey(): undefined | string;
    set accessKey(accessKey: undefined | string);
    getAccessKey(): undefined | string;
    setAccessKey(accessKey: string): void;
    get timeout(): undefined | number;
    set timeout(timeout: undefined | number);
    setTimeout(timeout: number): void;
    getTimeout(): undefined | number;
    initStarted(): void;
    initEnded(): void;
    setSizeWillStart(): void;
    setSizeEnded(): void;
    testStarted(): void;
    testEnded(): void;
    validationWillStart(): void;
    validationEnded(): void;
}
