@wdio/image-comparison-core
Version:
Image comparison core module for @wdio/visual-service - WebdriverIO visual testing framework
64 lines • 2.9 kB
TypeScript
import type { ClassOptions, DefaultOptions } from './options.interfaces.js';
import type { MethodImageCompareCompareOptions, ScreenMethodImageCompareCompareOptions } from '../methods/images.interfaces.js';
import type { BeforeScreenshotOptions } from './beforeScreenshot.interfaces.js';
import type { AfterScreenshotOptions } from './afterScreenshot.interfaces.js';
import type { BeforeScreenshotResult } from './beforeScreenshot.interfaces.js';
import type { InstanceData } from '../methods/instanceData.interfaces.js';
import type { ComparisonIgnoreOption } from '../resemble/compare.interfaces.js';
/**
* Determine the default options by merging user options with sensible defaults
*/
export declare function defaultOptions(options: ClassOptions): DefaultOptions;
/**
* Determine the screen method compare options with proper type safety
*/
export declare function screenMethodCompareOptions(options: ScreenMethodImageCompareCompareOptions): ScreenMethodImageCompareCompareOptions;
/**
* Determine the method compare options with improved type safety
*/
export declare function methodCompareOptions(options: MethodImageCompareCompareOptions): MethodImageCompareCompareOptions;
/**
* Creates BeforeScreenshotOptions by extracting common options from method and wic configurations
*/
export declare function createBeforeScreenshotOptions(instanceData: any, methodOptions: {
hideElements?: HTMLElement[];
removeElements?: HTMLElement[];
disableBlinkingCursor?: boolean;
disableCSSAnimation?: boolean;
enableLayoutTesting?: boolean;
hideScrollBars?: boolean;
waitForFontsLoaded?: boolean;
}, wicOptions: {
addressBarShadowPadding: number;
toolBarShadowPadding: number;
disableBlinkingCursor?: boolean;
disableCSSAnimation?: boolean;
enableLayoutTesting?: boolean;
hideScrollBars?: boolean;
waitForFontsLoaded?: boolean;
}): BeforeScreenshotOptions;
export interface BuildAfterScreenshotOptionsInput {
base64Image: string;
folders: {
actualFolder: string;
};
tag: string;
isNativeContext: boolean;
instanceData: InstanceData;
wicOptions: {
formatImageName: string;
savePerInstance: boolean;
};
enrichedInstanceData?: BeforeScreenshotResult;
beforeOptions?: BeforeScreenshotOptions;
}
/**
* Builds AfterScreenshotOptions consistently across all commands
* Handles differences between native and web commands automatically
*/
export declare function buildAfterScreenshotOptions({ base64Image, folders, tag, isNativeContext, instanceData, enrichedInstanceData, beforeOptions, wicOptions }: BuildAfterScreenshotOptionsInput): AfterScreenshotOptions;
/**
* Prepare ignore options for resemble.js comparison
*/
export declare function prepareIgnoreOptions(imageCompareOptions: MethodImageCompareCompareOptions): ComparisonIgnoreOption[];
//# sourceMappingURL=options.d.ts.map