@applitools/eyes-puppeteer 1.14.0 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -11,6 +11,19 @@
11
11
 
12
12
 
13
13
 
14
+ ## 1.15.0 - 2023/4/4
15
+
16
+ ### Features
17
+ - Added `removeDuplicateTests` property to the `RunnerOptions` to remove duplicated tests in the runner at the end of execution
18
+ ### Bug fixes
19
+
20
+ ## 1.14.1 - 2023/3/22
21
+
22
+ ### Features
23
+ ### Bug fixes
24
+ - Fixed slowness during ufg tests
25
+ - Optimized number of requests during polling
26
+
14
27
  ## 1.14.0 - 2023/2/21
15
28
 
16
29
  ### Features
package/README.md CHANGED
@@ -29,6 +29,7 @@
29
29
  - [Scroll root element](#scroll-root-element)
30
30
  - [Tag (`withName`)](#tag-withname)
31
31
  - [Lazy loading (`lazyLoad`)](#lazy-loading-lazyload)
32
+ - [Density metrics](#density-metrics-densitymetrics)
32
33
  - [Other checkSettings configuration](#other-checksettings-configuration)
33
34
  - [close](#close)
34
35
  - [Runners](#runners)
@@ -386,6 +387,23 @@ Other details:
386
387
  - The SDK will repeatedly scroll the page using the `scrollLength` until either the page cannot be scrolled further or the `maxAmountToScroll` has been reached (whichever happens first)
387
388
  - If more time is needed for additional content to load, then increase the waitingTime to a value higher than 500 milliseconds. If better performance is desired and additional content lazily loads faster than the default waitingTime, then reduce it to a value below 500 milliseconds
388
389
 
390
+ ##### Density metrics (`densityMetrics`)
391
+
392
+ In order to set the density metrics for the screenshot, use the `densityMetrics` method. This method accepts a object value with the following properties:
393
+
394
+ - `xdpi` - The exact physical pixels per inch of the screen in the X dimension.
395
+ - `ydpi` - The exact physical pixels per inch of the screen in the Y dimension.
396
+ - `scaleRatio` - The scale ratio.
397
+
398
+ ```js
399
+ // set density metrics
400
+ eyes.check(Target.window().densityMetrics({
401
+ xdpi: 100,
402
+ ydpi: 100,
403
+ scaleRatio: 1
404
+ }))
405
+ ```
406
+
389
407
  ###### Other checkSettings configuration
390
408
 
391
409
  <!-- TODO add explanation -->
package/dist/api.js CHANGED
@@ -26,33 +26,30 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
26
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.closeBatch = exports.BatchClose = exports.Target = exports.CheckSettings = exports.CheckSettingsAutomation = exports.Configuration = exports.Eyes = void 0;
30
- const core_1 = require("@applitools/core");
31
- const api = __importStar(require("@applitools/eyes-api"));
29
+ exports.closeBatch = exports.BatchClose = exports.Configuration = exports.Target = exports.TargetAutomation = exports.CheckSettings = exports.CheckSettingsAutomation = exports.Eyes = void 0;
30
+ const eyes = __importStar(require("@applitools/eyes"));
32
31
  const spec = __importStar(require("@applitools/spec-driver-puppeteer"));
33
- const sdk = (0, core_1.makeCore)({
34
- agentId: `eyes.puppeteer/${require('../package.json').version}`,
35
- spec,
36
- });
37
- __exportStar(require("@applitools/eyes-api"), exports);
38
- class Eyes extends api.Eyes {
32
+ __exportStar(require("@applitools/eyes"), exports);
33
+ const sdk = { agentId: `eyes.puppeteer/${require('../package.json').version}`, spec };
34
+ class Eyes extends eyes.Eyes {
39
35
  }
40
36
  exports.Eyes = Eyes;
41
- Eyes._spec = sdk;
42
- class Configuration extends api.Configuration {
43
- }
44
- exports.Configuration = Configuration;
45
- Configuration._spec = sdk;
46
- class CheckSettingsAutomation extends api.CheckSettingsAutomation {
37
+ Eyes._sdk = sdk;
38
+ class CheckSettingsAutomation extends eyes.CheckSettingsAutomation {
47
39
  }
48
40
  exports.CheckSettingsAutomation = CheckSettingsAutomation;
49
- CheckSettingsAutomation._spec = sdk;
41
+ CheckSettingsAutomation._spec = spec;
50
42
  class CheckSettings extends CheckSettingsAutomation {
51
43
  }
52
44
  exports.CheckSettings = CheckSettings;
53
- exports.Target = { ...api.Target, spec: sdk };
54
- class BatchClose extends api.BatchClose {
45
+ exports.TargetAutomation = { ...eyes.TargetAutomation, spec };
46
+ exports.Target = { ...eyes.Target, spec };
47
+ class Configuration extends eyes.Configuration {
48
+ }
49
+ exports.Configuration = Configuration;
50
+ Configuration._spec = spec;
51
+ class BatchClose extends eyes.BatchClose {
55
52
  }
56
53
  exports.BatchClose = BatchClose;
57
- BatchClose._spec = sdk;
58
- exports.closeBatch = api.closeBatch(sdk);
54
+ BatchClose._sdk = sdk;
55
+ exports.closeBatch = eyes.closeBatch(sdk);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@applitools/eyes-puppeteer",
3
- "version": "1.14.0",
3
+ "version": "1.15.0",
4
4
  "description": "Applitools Eyes SDK for Puppeteer",
5
5
  "keywords": [
6
6
  "eyes-puppeteer",
@@ -42,31 +42,28 @@
42
42
  "build": "node ../../node_modules/.bin/ttsc --project ./tsconfig.build.json",
43
43
  "generate:tests": "coverage-tests generate https://raw.githubusercontent.com/applitools/sdk.coverage.tests/universal-sdk/js/config.js --name 'eyes-puppeteer'",
44
44
  "test": "yarn test:coverage",
45
+ "test:coverage": "yarn generate:tests && APPLITOOLS_BATCH_NAME='JS Coverage Tests: eyes-puppeteer' APPLITOOLS_BATCH_ID=$(uuidgen) MOCHA_GROUP=coverage node ../../node_modules/.bin/mocha './test/generic/*.spec.js' --parallel --jobs ${MOCHA_JOBS:-15} --exit",
45
46
  "test:sanity": "echo 'create sanity suite'",
46
- "test:coverage": "yarn generate:tests && APPLITOOLS_BATCH_NAME='JS Coverage Tests: eyes-puppeteer' APPLITOOLS_BATCH_ID=$(uuidgen) mocha --exit --config .mocharc.cvg.js",
47
- "report": "coverage-tests report https://raw.githubusercontent.com/applitools/sdk.coverage.tests/master/js/config.js --name 'eyes-puppeteer'",
47
+ "report": "bongo report --name 'puppeteer'",
48
48
  "upgrade:framework": "if [ ! -z $APPLITOOLS_PUPPETEER_VERSION ]; then packagejson=`cat package.json`; yarn upgrade --no-lockfile puppeteer@$APPLITOOLS_PUPPETEER_VERSION; echo \"$packagejson\" > package.json; fi",
49
49
  "deps": "bongo deps",
50
- "gh:test": "gh workflow run test.yml --ref $(git rev-parse --abbrev-ref HEAD) -f packages='puppeteer' -f links='types test-utils eyes-sdk-core visual-grid-client eyes-api spec-driver-puppeteer utils driver snippets screenshoter'",
50
+ "gh:test": "gh workflow run test.yml --ref $(git rev-parse --abbrev-ref HEAD) -f packages='puppeteer' -f links='types test-utils eyes-sdk-core visual-grid-client eyes spec-driver-puppeteer utils driver snippets screenshoter'",
51
51
  "gh:publish": "gh workflow run publish-puppeteer.yml --ref $(git rev-parse --abbrev-ref HEAD)",
52
52
  "preversion": "bongo preversion --verifyPendingChanges",
53
53
  "version": "bongo version --withPendingChanges",
54
- "postversion": "bongo postversion"
54
+ "postversion": "bongo postversion",
55
+ "postpublish": "bongo send-release-notification --name 'puppeteer'"
55
56
  },
56
57
  "dependencies": {
57
- "@applitools/core": "2.3.6",
58
- "@applitools/eyes-api": "1.13.6",
59
- "@applitools/spec-driver-puppeteer": "1.1.44"
58
+ "@applitools/eyes": "1.1.2",
59
+ "@applitools/spec-driver-puppeteer": "1.1.52"
60
60
  },
61
61
  "devDependencies": {
62
- "@applitools/api-extractor": "1.2.11",
63
- "@applitools/bongo": "^2.2.5",
64
- "@applitools/sdk-coverage-tests": "2.7.10",
65
- "@applitools/test-utils": "1.5.12",
66
- "@types/mocha": "^9.1.1",
67
- "@types/node": "12",
68
- "mocha": "^9.2.2",
69
- "mocha-multi": "^1.1.7",
62
+ "@applitools/api-extractor": "1.2.12",
63
+ "@applitools/bongo": "^3.0.3",
64
+ "@applitools/sdk-coverage-tests": "3.0.0",
65
+ "@applitools/test-utils": "1.5.15",
66
+ "@types/node": "^12.20.55",
70
67
  "puppeteer": "^18.0.5"
71
68
  },
72
69
  "peerDependencies": {
package/types/index.d.ts CHANGED
@@ -59,7 +59,9 @@ export class Eyes {
59
59
  }, settings: Array<OCRRegion>): Promise<Array<string>>;
60
60
  extractText(settings: Array<OCRRegion>): Promise<Array<string>>;
61
61
  close(throwErr?: undefined | boolean): Promise<TestResults>;
62
+ closeAsync(): Promise<void>;
62
63
  abort(): Promise<TestResults>;
64
+ abortAsync(): Promise<void>;
63
65
  getViewportSize(): Promise<RectangleSize>;
64
66
  setViewportSize(size: RectangleSizePlain): Promise<void>;
65
67
  getScrollRootElement(): Element | EyesSelector<Selector>;
@@ -141,6 +143,115 @@ export class Eyes {
141
143
  getStitchOverlap(): number;
142
144
  setStitchOverlap(stitchOverlap: number): void;
143
145
  }
146
+ export type CheckSettingsAutomationPlain = CheckSettingsImagePlain & {
147
+ 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>; })))>;
148
+ webview?: undefined | string | boolean;
149
+ scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
150
+ fully?: undefined | boolean;
151
+ disableBrowserFetching?: undefined | boolean;
152
+ layoutBreakpoints?: undefined | boolean | Array<number>;
153
+ visualGridOptions?: undefined | { [key: string]: any; };
154
+ nmgOptions?: undefined | { [key: string]: any; };
155
+ hooks?: undefined | { beforeCaptureScreenshot: string; };
156
+ renderId?: undefined | string;
157
+ timeout?: undefined | number;
158
+ waitBeforeCapture?: undefined | number;
159
+ lazyLoad?: undefined | boolean | { scrollLength?: undefined | number; waitingTime?: undefined | number; maxAmountToScroll?: undefined | number; };
160
+ };
161
+ export class CheckSettingsAutomation {
162
+ constructor(settings?: undefined | CheckSettingsAutomation | CheckSettingsAutomationPlain);
163
+ region(region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
164
+ shadow(selector: string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }): CheckSettingsAutomation;
165
+ 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;
166
+ 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;
167
+ webview(webview?: undefined | string | boolean): CheckSettingsAutomation;
168
+ scrollRootElement(scrollRootElement: Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })): CheckSettingsAutomation;
169
+ fully(fully?: undefined | boolean): CheckSettingsAutomation;
170
+ disableBrowserFetching(disableBrowserFetching: boolean): CheckSettingsAutomation;
171
+ layoutBreakpoints(layoutBreakpoints?: undefined | boolean | Array<number>): CheckSettingsAutomation;
172
+ hook(name: string, script: string): CheckSettingsAutomation;
173
+ beforeRenderScreenshotHook(script: string): CheckSettingsAutomation;
174
+ ufgOption(key: string, value: any): CheckSettingsAutomation;
175
+ ufgOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
176
+ nmgOption(key: string, value: any): CheckSettingsAutomation;
177
+ nmgOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
178
+ renderId(renderId: string): CheckSettingsAutomation;
179
+ timeout(timeout: number): CheckSettingsAutomation;
180
+ waitBeforeCapture(waitBeforeCapture: number): CheckSettingsAutomation;
181
+ lazyLoad(options?: undefined | boolean | { scrollLength?: undefined | number; waitingTime?: undefined | number; maxAmountToScroll?: undefined | number; }): CheckSettingsAutomation;
182
+ densityMetrics(options: { scaleRatio?: undefined | number; xdpi?: undefined | number; ydpi?: undefined | number; }): CheckSettingsAutomation;
183
+ name(name: string): CheckSettingsAutomation;
184
+ withName(name: string): CheckSettingsAutomation;
185
+ ignoreRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
186
+ ignoreRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
187
+ layoutRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
188
+ layoutRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
189
+ strictRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
190
+ strictRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
191
+ contentRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
192
+ contentRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
193
+ floatingRegion(region: {
194
+ region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
195
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
196
+ regionId?: undefined | string;
197
+ offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
198
+ }): CheckSettingsAutomation;
199
+ floatingRegion(region: {
200
+ region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
201
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
202
+ regionId?: undefined | string;
203
+ maxUpOffset?: undefined | number;
204
+ maxDownOffset?: undefined | number;
205
+ maxLeftOffset?: undefined | number;
206
+ maxRightOffset?: undefined | number;
207
+ }): CheckSettingsAutomation;
208
+ floatingRegion(region: LegacyRegionPlain | (RegionPlain | (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;
209
+ floatingRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
210
+ region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
211
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
212
+ regionId?: undefined | string;
213
+ offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
214
+ }>): CheckSettingsAutomation;
215
+ floatingRegions(maxOffset: number, ...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))>): CheckSettingsAutomation;
216
+ accessibilityRegion(region: {
217
+ region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
218
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
219
+ regionId?: undefined | string;
220
+ type?: undefined | "IgnoreContrast" | "RegularText" | "LargeText" | "BoldText" | "GraphicalObject";
221
+ }): CheckSettingsAutomation;
222
+ accessibilityRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))), type?: undefined | "IgnoreContrast" | "RegularText" | "LargeText" | "BoldText" | "GraphicalObject"): CheckSettingsAutomation;
223
+ accessibilityRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
224
+ region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
225
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
226
+ regionId?: undefined | string;
227
+ type?: undefined | "IgnoreContrast" | "RegularText" | "LargeText" | "BoldText" | "GraphicalObject";
228
+ }>): CheckSettingsAutomation;
229
+ accessibilityRegions(type: AccessibilityRegionTypePlain, ...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))>): CheckSettingsAutomation;
230
+ matchLevel(matchLevel: MatchLevelPlain): CheckSettingsAutomation;
231
+ layout(): CheckSettingsAutomation;
232
+ exact(): CheckSettingsAutomation;
233
+ strict(): CheckSettingsAutomation;
234
+ ignoreColors(): CheckSettingsAutomation;
235
+ enablePatterns(enablePatterns?: undefined | boolean): CheckSettingsAutomation;
236
+ ignoreDisplacements(ignoreDisplacements?: undefined | boolean): CheckSettingsAutomation;
237
+ ignoreCaret(ignoreCaret?: undefined | boolean): CheckSettingsAutomation;
238
+ useDom(useDom?: undefined | boolean): CheckSettingsAutomation;
239
+ sendDom(sendDom?: undefined | boolean): CheckSettingsAutomation;
240
+ pageId(pageId: string): CheckSettingsAutomation;
241
+ variationGroupId(variationGroupId: string): CheckSettingsAutomation;
242
+ }
243
+ export class CheckSettings extends CheckSettingsAutomation {
244
+ }
245
+ export type TargetAutomation = {
246
+ window(): CheckSettingsAutomation;
247
+ region(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))): CheckSettingsAutomation;
248
+ 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;
249
+ 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;
250
+ shadow(selector: string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }): CheckSettingsAutomation;
251
+ webview(webview?: undefined | string | boolean): CheckSettingsAutomation;
252
+ };
253
+ export const Target: TargetImage & TargetAutomation;
254
+ export type OCRRegion = { target: RegionPlain | Element | EyesSelector<Selector>; hint?: undefined | string; minMatch?: undefined | number; language?: undefined | string; };
144
255
  export type ConfigurationPlain = {
145
256
  agentId?: undefined | string;
146
257
  apiKey?: undefined | string;
@@ -176,7 +287,7 @@ export type ConfigurationPlain = {
176
287
  matchTimeout?: undefined | number;
177
288
  forceFullPageScreenshot?: undefined | boolean;
178
289
  waitBeforeScreenshots?: undefined | number;
179
- stitchMode?: undefined | "Scroll" | "CSS";
290
+ stitchMode?: undefined | "Scroll" | "CSS" | "Resize";
180
291
  hideScrollbars?: undefined | boolean;
181
292
  hideCaret?: undefined | boolean;
182
293
  stitchOverlap?: undefined | number;
@@ -184,14 +295,14 @@ export type ConfigurationPlain = {
184
295
  cut?: undefined | CutProviderPlain;
185
296
  rotation?: undefined | ImageRotationPlain;
186
297
  scaleRatio?: undefined | number;
187
- waitBeforeCapture?: undefined | number;
188
298
  browsersInfo?: undefined | Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>;
189
299
  visualGridOptions?: undefined | Record<string, any>;
190
300
  layoutBreakpoints?: undefined | boolean | Array<number>;
191
301
  disableBrowserFetching?: undefined | boolean;
302
+ waitBeforeCapture?: undefined | number;
192
303
  };
193
304
  export class Configuration implements Required<ConfigurationPlain> {
194
- constructor(config?: undefined | ConfigurationPlain, spec?: undefined | {});
305
+ constructor(config?: undefined | ConfigurationPlain);
195
306
  get appName(): string;
196
307
  set appName(appName: string);
197
308
  getAppName(): string;
@@ -405,106 +516,6 @@ export class Configuration implements Required<ConfigurationPlain> {
405
516
  getDisableBrowserFetching(): boolean;
406
517
  setDisableBrowserFetching(disableBrowserFetching: boolean): Configuration;
407
518
  }
408
- export type OCRRegion = { target: RegionPlain | Element | EyesSelector<Selector>; hint?: undefined | string; minMatch?: undefined | number; language?: undefined | string; };
409
- export type CheckSettingsAutomationPlain = CheckSettingsImagePlain & {
410
- 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>; })))>;
411
- webview?: undefined | string | boolean;
412
- scrollRootElement?: undefined | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
413
- fully?: undefined | boolean;
414
- disableBrowserFetching?: undefined | boolean;
415
- layoutBreakpoints?: undefined | boolean | Array<number>;
416
- visualGridOptions?: undefined | { [key: string]: any; };
417
- nmgOptions?: undefined | { [key: string]: any; };
418
- hooks?: undefined | { beforeCaptureScreenshot: string; };
419
- renderId?: undefined | string;
420
- timeout?: undefined | number;
421
- waitBeforeCapture?: undefined | number;
422
- lazyLoad?: undefined | boolean | { scrollLength?: undefined | number; waitingTime?: undefined | number; maxAmountToScroll?: undefined | number; };
423
- };
424
- export class CheckSettingsAutomation {
425
- constructor(settings?: undefined | CheckSettingsAutomation | CheckSettingsAutomationPlain, spec?: undefined | {});
426
- region(region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))): CheckSettingsAutomation;
427
- shadow(selector: string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }): CheckSettingsAutomation;
428
- 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;
429
- 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;
430
- webview(webview?: undefined | string | boolean): CheckSettingsAutomation;
431
- scrollRootElement(scrollRootElement: Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })): CheckSettingsAutomation;
432
- fully(fully?: undefined | boolean): CheckSettingsAutomation;
433
- disableBrowserFetching(disableBrowserFetching: boolean): CheckSettingsAutomation;
434
- layoutBreakpoints(layoutBreakpoints?: undefined | boolean | Array<number>): CheckSettingsAutomation;
435
- hook(name: string, script: string): CheckSettingsAutomation;
436
- beforeRenderScreenshotHook(script: string): CheckSettingsAutomation;
437
- ufgOption(key: string, value: any): CheckSettingsAutomation;
438
- ufgOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
439
- nmgOption(key: string, value: any): CheckSettingsAutomation;
440
- nmgOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
441
- renderId(renderId: string): CheckSettingsAutomation;
442
- timeout(timeout: number): CheckSettingsAutomation;
443
- waitBeforeCapture(waitBeforeCapture: number): CheckSettingsAutomation;
444
- lazyLoad(options?: undefined | boolean | { scrollLength?: undefined | number; waitingTime?: undefined | number; maxAmountToScroll?: undefined | number; }): CheckSettingsAutomation;
445
- name(name: string): CheckSettingsAutomation;
446
- withName(name: string): CheckSettingsAutomation;
447
- ignoreRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
448
- ignoreRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
449
- layoutRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
450
- layoutRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
451
- strictRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
452
- strictRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
453
- contentRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
454
- contentRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | { region: RegionPlain | (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;
455
- floatingRegion(region: {
456
- region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
457
- padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
458
- regionId?: undefined | string;
459
- offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
460
- }): CheckSettingsAutomation;
461
- floatingRegion(region: {
462
- region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
463
- padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
464
- regionId?: undefined | string;
465
- maxUpOffset?: undefined | number;
466
- maxDownOffset?: undefined | number;
467
- maxLeftOffset?: undefined | number;
468
- maxRightOffset?: undefined | number;
469
- }): CheckSettingsAutomation;
470
- floatingRegion(region: LegacyRegionPlain | (RegionPlain | (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;
471
- floatingRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
472
- region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
473
- padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
474
- regionId?: undefined | string;
475
- offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
476
- }>): CheckSettingsAutomation;
477
- floatingRegions(maxOffset: number, ...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))>): CheckSettingsAutomation;
478
- accessibilityRegion(region: {
479
- region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
480
- padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
481
- regionId?: undefined | string;
482
- type?: undefined | "IgnoreContrast" | "RegularText" | "LargeText" | "BoldText" | "GraphicalObject";
483
- }): CheckSettingsAutomation;
484
- accessibilityRegion(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))), type?: undefined | "IgnoreContrast" | "RegularText" | "LargeText" | "BoldText" | "GraphicalObject"): CheckSettingsAutomation;
485
- accessibilityRegions(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
486
- region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
487
- padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
488
- regionId?: undefined | string;
489
- type?: undefined | "IgnoreContrast" | "RegularText" | "LargeText" | "BoldText" | "GraphicalObject";
490
- }>): CheckSettingsAutomation;
491
- accessibilityRegions(type: AccessibilityRegionTypePlain, ...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))>): CheckSettingsAutomation;
492
- matchLevel(matchLevel: MatchLevelPlain): CheckSettingsAutomation;
493
- layout(): CheckSettingsAutomation;
494
- exact(): CheckSettingsAutomation;
495
- strict(): CheckSettingsAutomation;
496
- ignoreColors(): CheckSettingsAutomation;
497
- enablePatterns(enablePatterns?: undefined | boolean): CheckSettingsAutomation;
498
- ignoreDisplacements(ignoreDisplacements?: undefined | boolean): CheckSettingsAutomation;
499
- ignoreCaret(ignoreCaret?: undefined | boolean): CheckSettingsAutomation;
500
- useDom(useDom?: undefined | boolean): CheckSettingsAutomation;
501
- sendDom(sendDom?: undefined | boolean): CheckSettingsAutomation;
502
- pageId(pageId: string): CheckSettingsAutomation;
503
- variationGroupId(variationGroupId: string): CheckSettingsAutomation;
504
- }
505
- export class CheckSettings extends CheckSettingsAutomation {
506
- }
507
- export const Target: TargetImage & TargetAutomation<SpecType>;
508
519
  export class BatchClose {
509
520
  static close(settings: { batchIds: Array<string>; serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; }): Promise<void>;
510
521
  constructor(options?: undefined | { batchIds: Array<string>; serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; });
@@ -706,7 +717,7 @@ export enum AndroidVersion {
706
717
  LATEST = 'latest',
707
718
  ONE_VERSION_BACK = 'latest-1'
708
719
  }
709
- export type MatchLevelPlain = "None" | "Layout" | "Layout1" | "Layout2" | "Content" | "IgnoreColors" | "Strict" | "Exact";
720
+ export type MatchLevelPlain = "None" | "Layout1" | "Layout" | "Layout2" | "Content" | "IgnoreColors" | "Strict" | "Exact";
710
721
  export enum MatchLevel {
711
722
  None = 'None',
712
723
  LegacyLayout = 'Layout1',
@@ -727,12 +738,15 @@ export enum SessionType {
727
738
  SEQUENTIAL = 'SEQUENTIAL',
728
739
  PROGRESSION = 'PROGRESSION'
729
740
  }
730
- export type StitchModePlain = "Scroll" | "CSS";
741
+ export type StitchModePlain = "Scroll" | "CSS" | "Resize";
731
742
  export enum StitchMode {
732
743
  SCROLL = 'Scroll',
733
- CSS = 'CSS'
744
+ Scroll = 'Scroll',
745
+ CSS = 'CSS',
746
+ RESIZE = 'Resize',
747
+ Resize = 'Resize'
734
748
  }
735
- export type TestResultsStatusPlain = "Passed" | "Unresolved" | "Failed";
749
+ export type TestResultsStatusPlain = "Passed" | "Failed" | "Unresolved";
736
750
  export enum TestResultsStatus {
737
751
  Passed = 'Passed',
738
752
  Unresolved = 'Unresolved',
@@ -819,7 +833,7 @@ export class BatchInfo implements Required<BatchInfoPlain> {
819
833
  export type CheckSettingsImagePlain = {
820
834
  name?: undefined | string;
821
835
  region?: undefined | RegionPlain;
822
- matchLevel?: undefined | "None" | "Layout" | "Layout1" | "Layout2" | "Content" | "IgnoreColors" | "Strict" | "Exact";
836
+ matchLevel?: undefined | "None" | "Layout1" | "Layout" | "Layout2" | "Content" | "IgnoreColors" | "Strict" | "Exact";
823
837
  useDom?: undefined | boolean;
824
838
  sendDom?: undefined | boolean;
825
839
  enablePatterns?: undefined | boolean;
@@ -852,6 +866,7 @@ export type CheckSettingsImagePlain = {
852
866
  }>;
853
867
  pageId?: undefined | string;
854
868
  variationGroupId?: undefined | string;
869
+ densityMetrics?: undefined | { scaleRatio?: undefined | number; xdpi?: undefined | number; ydpi?: undefined | number; };
855
870
  };
856
871
  export class CheckSettingsImage {
857
872
  constructor(settings?: undefined | CheckSettingsImagePlain | CheckSettingsImage, target?: undefined | {
@@ -937,14 +952,6 @@ export type TargetImage = {
937
952
  path(imagePath: string): CheckSettingsImage;
938
953
  url(imageUrl: string | URL): CheckSettingsImage;
939
954
  };
940
- export type TargetAutomation<TSpec extends SpecType = SpecType> = {
941
- window(): CheckSettingsAutomation;
942
- region(region: LegacyRegionPlain | (RegionPlain | (TSpec["element"] | (string | TSpec["selector"] | { selector: string | TSpec["selector"]; type?: undefined | string; shadow?: undefined | EyesSelector<TSpec["selector"]>; frame?: undefined | EyesSelector<TSpec["selector"]>; })))): CheckSettingsAutomation;
943
- frame(context: { frame: number | (TSpec["element"] | (string | TSpec["selector"] | { selector: string | TSpec["selector"]; type?: undefined | string; shadow?: undefined | EyesSelector<TSpec["selector"]>; frame?: undefined | EyesSelector<TSpec["selector"]>; })); scrollRootElement?: undefined | (TSpec["element"] | (string | TSpec["selector"] | { selector: string | TSpec["selector"]; type?: undefined | string; shadow?: undefined | EyesSelector<TSpec["selector"]>; frame?: undefined | EyesSelector<TSpec["selector"]>; })); }): CheckSettingsAutomation;
944
- frame(frame: number | (TSpec["element"] | (string | TSpec["selector"] | { selector: string | TSpec["selector"]; type?: undefined | string; shadow?: undefined | EyesSelector<TSpec["selector"]>; frame?: undefined | EyesSelector<TSpec["selector"]>; })), scrollRootElement?: undefined | (TSpec["element"] | (string | TSpec["selector"] | { selector: string | TSpec["selector"]; type?: undefined | string; shadow?: undefined | EyesSelector<TSpec["selector"]>; frame?: undefined | EyesSelector<TSpec["selector"]>; }))): CheckSettingsAutomation;
945
- shadow(selector: string | TSpec["selector"] | { selector: string | TSpec["selector"]; type?: undefined | string; shadow?: undefined | EyesSelector<TSpec["selector"]>; frame?: undefined | EyesSelector<TSpec["selector"]>; }): CheckSettingsAutomation;
946
- webview(webview?: undefined | string | boolean): CheckSettingsAutomation;
947
- };
948
955
  export type CutProviderPlain = { top: number; right: number; bottom: number; left: number; } | { x: number; y: number; width: number; height: number; };
949
956
  export class CutProvider implements Required<{
950
957
  x: number;
@@ -1035,7 +1042,7 @@ export class FloatingMatchSettings implements Required<FloatingMatchSettingsPlai
1035
1042
  }
1036
1043
  export type ImageMatchSettingsPlain = {
1037
1044
  exact?: undefined | ExactMatchSettingsPlain;
1038
- matchLevel?: undefined | "None" | "Layout" | "Layout1" | "Layout2" | "Content" | "IgnoreColors" | "Strict" | "Exact";
1045
+ matchLevel?: undefined | "None" | "Layout1" | "Layout" | "Layout2" | "Content" | "IgnoreColors" | "Strict" | "Exact";
1039
1046
  ignoreCaret?: undefined | boolean;
1040
1047
  useDom?: undefined | boolean;
1041
1048
  enablePatterns?: undefined | boolean;
@@ -1245,18 +1252,18 @@ export type DesktopBrowserInfo = { name?: undefined | "chrome" | "chrome-one-ver
1245
1252
  export type ChromeEmulationInfo = { chromeEmulationInfo: { deviceName: DeviceNamePlain; screenOrientation?: undefined | "landscape" | "portrait"; }; };
1246
1253
  export type IOSDeviceInfo = { iosDeviceInfo: { deviceName: IosDeviceNamePlain; iosVersion?: undefined | "latest" | "latest-1"; screenOrientation?: undefined | "landscape" | "portrait"; }; };
1247
1254
  export type AndroidDeviceInfo = { androidDeviceInfo: { deviceName: AndroidDeviceNamePlain; version?: undefined | "latest" | "latest-1"; screenOrientation?: undefined | "landscape" | "portrait"; }; };
1248
- export type RunnerOptionsPlain = { testConcurrency?: undefined | number; };
1255
+ export type RunnerOptionsPlain = { testConcurrency?: undefined | number; removeDuplicateTests?: undefined | boolean; };
1249
1256
  export class RunnerOptionsFluent {
1250
1257
  testConcurrency(concurrency: number): RunnerOptionsFluent;
1251
1258
  }
1252
1259
  export function RunnerOptions(): RunnerOptionsFluent;
1253
1260
  export type VisualLocatorSettings<TLocator extends string = string> = { locatorNames: Array<TLocator>; firstOnly: boolean; };
1254
1261
  export type ApiUrlsPlain = {
1255
- readonly baselineImage?: undefined | string;
1256
- readonly currentImage?: undefined | string;
1257
- readonly checkpointImage?: undefined | string;
1258
- readonly checkpointImageThumbnail?: undefined | string;
1259
- readonly diffImage?: undefined | string;
1262
+ readonly baselineImage: string;
1263
+ readonly currentImage: string;
1264
+ readonly checkpointImage: string;
1265
+ readonly checkpointImageThumbnail: string;
1266
+ readonly diffImage: string;
1260
1267
  };
1261
1268
  export class ApiUrls implements Required<ApiUrlsPlain> {
1262
1269
  get baselineImage(): string;
@@ -1270,7 +1277,7 @@ export class ApiUrls implements Required<ApiUrlsPlain> {
1270
1277
  get diffImage(): string;
1271
1278
  getDiffImage(): string;
1272
1279
  }
1273
- export type AppUrlsPlain = { readonly step?: undefined | string; readonly stepEditor?: undefined | string; };
1280
+ export type AppUrlsPlain = { readonly step: string; readonly stepEditor: string; };
1274
1281
  export class AppUrls implements Required<AppUrlsPlain> {
1275
1282
  get step(): string;
1276
1283
  getStep(): string;
@@ -1284,7 +1291,7 @@ export class MatchResult implements Required<MatchResultPlain> {
1284
1291
  get windowId(): number;
1285
1292
  getWindowId(): number;
1286
1293
  }
1287
- export type SessionUrlsPlain = { readonly batch?: undefined | string; readonly session?: undefined | string; };
1294
+ export type SessionUrlsPlain = { readonly batch: string; readonly session: string; };
1288
1295
  export class SessionUrls implements Required<SessionUrlsPlain> {
1289
1296
  get batch(): string;
1290
1297
  getBatch(): string;
@@ -1292,13 +1299,13 @@ export class SessionUrls implements Required<SessionUrlsPlain> {
1292
1299
  getSession(): string;
1293
1300
  }
1294
1301
  export type StepInfoPlain = {
1295
- readonly name?: undefined | string;
1296
- readonly isDifferent?: undefined | boolean;
1297
- readonly hasBaselineImage?: undefined | boolean;
1298
- readonly hasCurrentImage?: undefined | boolean;
1299
- readonly appUrls?: undefined | AppUrlsPlain;
1300
- readonly apiUrls?: undefined | ApiUrlsPlain;
1301
- readonly renderId?: undefined | Array<string>;
1302
+ readonly name: string;
1303
+ readonly isDifferent: boolean;
1304
+ readonly hasBaselineImage: boolean;
1305
+ readonly hasCurrentImage: boolean;
1306
+ readonly appUrls: AppUrlsPlain;
1307
+ readonly apiUrls: ApiUrlsPlain;
1308
+ readonly renderId: Array<string>;
1302
1309
  };
1303
1310
  export class StepInfo implements Required<StepInfoPlain> {
1304
1311
  get name(): string;
@@ -1321,7 +1328,7 @@ export type TestResultsPlain = {
1321
1328
  readonly id?: undefined | string;
1322
1329
  readonly name?: undefined | string;
1323
1330
  readonly secretToken?: undefined | string;
1324
- readonly status?: undefined | "Passed" | "Unresolved" | "Failed";
1331
+ readonly status?: undefined | "Passed" | "Failed" | "Unresolved";
1325
1332
  readonly appName?: undefined | string;
1326
1333
  readonly batchId?: undefined | string;
1327
1334
  readonly batchName?: undefined | string;
@@ -1330,7 +1337,7 @@ export type TestResultsPlain = {
1330
1337
  readonly hostApp?: undefined | string;
1331
1338
  readonly hostDisplaySize?: undefined | RectangleSizePlain;
1332
1339
  readonly accessibilityStatus?: undefined | TestAccessibilityStatus;
1333
- readonly startedAt?: undefined | string | Date;
1340
+ readonly startedAt?: undefined | string;
1334
1341
  readonly duration?: undefined | number;
1335
1342
  readonly isNew?: undefined | boolean;
1336
1343
  readonly isDifferent?: undefined | boolean;
@@ -1348,6 +1355,8 @@ export type TestResultsPlain = {
1348
1355
  readonly layoutMatches?: undefined | number;
1349
1356
  readonly noneMatches?: undefined | number;
1350
1357
  readonly url?: undefined | string;
1358
+ readonly server: { serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; };
1359
+ readonly keepIfDuplicate: boolean;
1351
1360
  };
1352
1361
  export class TestResults implements Required<TestResultsPlain> {
1353
1362
  get id(): string;
@@ -1374,7 +1383,7 @@ export class TestResults implements Required<TestResultsPlain> {
1374
1383
  getHostDisplaySize(): RectangleSize;
1375
1384
  get accessibilityStatus(): TestAccessibilityStatus;
1376
1385
  getAccessibilityStatus(): TestAccessibilityStatus;
1377
- get startedAt(): string | Date;
1386
+ get startedAt(): string;
1378
1387
  getStartedAt(): Date;
1379
1388
  get duration(): number;
1380
1389
  getDuration(): number;
@@ -1410,6 +1419,8 @@ export class TestResults implements Required<TestResultsPlain> {
1410
1419
  getNoneMatches(): number;
1411
1420
  get url(): string;
1412
1421
  getUrl(): string;
1422
+ get server(): { serverUrl: string; apiKey: string; proxy?: undefined | { url: string; username?: undefined | string; password?: undefined | string; }; agentId?: undefined | string; };
1423
+ get keepIfDuplicate(): boolean;
1413
1424
  isPassed(): boolean;
1414
1425
  delete(): Promise<void>;
1415
1426
  }
@@ -1463,9 +1474,11 @@ export class Logger {
1463
1474
  extend(label?: undefined | string): Logger;
1464
1475
  }
1465
1476
  export abstract class EyesRunner {
1477
+ abstract readonly type: "classic" | "ufg";
1466
1478
  getAllTestResults(throwErr?: undefined | boolean): Promise<TestResultsSummary>;
1467
1479
  }
1468
1480
  export class ClassicRunner extends EyesRunner {
1481
+ constructor(options?: undefined | RunnerOptionsPlain);
1469
1482
  }
1470
1483
  export class VisualGridRunner extends EyesRunner {
1471
1484
  constructor(options?: undefined | RunnerOptionsPlain);