@applitools/eyes-puppeteer 1.15.1 → 1.16.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,12 @@
11
11
 
12
12
 
13
13
 
14
+ ## 1.16.0 - 2023/4/26
15
+
16
+ ### Features
17
+ - Make `locate` to return coordinates that could be directly used with the driver
18
+ ### Bug fixes
19
+
14
20
  ## 1.15.1 - 2023/4/6
15
21
 
16
22
  ### Features
package/dist/api.js CHANGED
@@ -33,12 +33,12 @@ __exportStar(require("@applitools/eyes"), exports);
33
33
  const sdk = { agentId: `eyes.puppeteer/${require('../package.json').version}`, spec };
34
34
  class Eyes extends eyes.Eyes {
35
35
  }
36
- exports.Eyes = Eyes;
37
36
  Eyes._sdk = sdk;
37
+ exports.Eyes = Eyes;
38
38
  class CheckSettingsAutomation extends eyes.CheckSettingsAutomation {
39
39
  }
40
- exports.CheckSettingsAutomation = CheckSettingsAutomation;
41
40
  CheckSettingsAutomation._spec = spec;
41
+ exports.CheckSettingsAutomation = CheckSettingsAutomation;
42
42
  class CheckSettings extends CheckSettingsAutomation {
43
43
  }
44
44
  exports.CheckSettings = CheckSettings;
@@ -46,10 +46,10 @@ exports.TargetAutomation = { ...eyes.TargetAutomation, spec };
46
46
  exports.Target = { ...eyes.Target, spec };
47
47
  class Configuration extends eyes.Configuration {
48
48
  }
49
- exports.Configuration = Configuration;
50
49
  Configuration._spec = spec;
50
+ exports.Configuration = Configuration;
51
51
  class BatchClose extends eyes.BatchClose {
52
52
  }
53
- exports.BatchClose = BatchClose;
54
53
  BatchClose._sdk = sdk;
54
+ exports.BatchClose = BatchClose;
55
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.15.1",
3
+ "version": "1.16.0",
4
4
  "description": "Applitools Eyes SDK for Puppeteer",
5
5
  "keywords": [
6
6
  "eyes-puppeteer",
@@ -39,7 +39,7 @@
39
39
  ],
40
40
  "scripts": {
41
41
  "lint": "node ../../node_modules/.bin/eslint '**/*.ts'",
42
- "build": "node ../../node_modules/.bin/ttsc --project ./tsconfig.build.json",
42
+ "build": "node ../../node_modules/.bin/tspc --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
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",
@@ -55,13 +55,13 @@
55
55
  "postpublish": "bongo send-release-notification --name 'puppeteer'"
56
56
  },
57
57
  "dependencies": {
58
- "@applitools/eyes": "1.1.3",
59
- "@applitools/spec-driver-puppeteer": "1.1.52"
58
+ "@applitools/eyes": "1.2.4",
59
+ "@applitools/spec-driver-puppeteer": "1.1.57"
60
60
  },
61
61
  "devDependencies": {
62
- "@applitools/api-extractor": "1.2.12",
62
+ "@applitools/api-extractor": "1.2.19",
63
63
  "@applitools/bongo": "^3.0.3",
64
- "@applitools/sdk-coverage-tests": "3.0.1",
64
+ "@applitools/sdk-coverage-tests": "3.0.2",
65
65
  "@applitools/test-utils": "1.5.16",
66
66
  "@types/node": "^12.20.55",
67
67
  "puppeteer": "^18.0.5"
package/types/index.d.ts CHANGED
@@ -20,6 +20,17 @@ export class Eyes {
20
20
  setConfiguration(config: ConfigurationPlain): void;
21
21
  get isOpen(): boolean;
22
22
  getIsOpen(): boolean;
23
+ on(handler: (event: string, data?: undefined | Record<string, any>) => any): () => void;
24
+ on(event: "setSizeWillStart", handler: (data: { viewportSize: RectangleSizePlain; }) => any): () => void;
25
+ on(event: "setSizeEnded", handler: () => any): () => void;
26
+ on(event: "initStarted", handler: () => any): () => void;
27
+ on(event: "initEnded", handler: () => any): () => void;
28
+ on(event: "testStarted", handler: (data: { sessionId: string; }) => any): () => void;
29
+ on(event: "validationWillStart", handler: (data: { sessionId: string; validationInfo: ValidationInfoPlain; }) => any): () => void;
30
+ on(event: "validationEnded", handler: (data: { sessionId: string; validationId: number; validationResult: ValidationResultPlain; }) => any): () => void;
31
+ on(event: "testEnded", handler: (data: { sessionId: string; testResults: TestResultsPlain; }) => any): () => void;
32
+ off(event: string): void;
33
+ off(handler: (...args: Array<any>) => any): void;
23
34
  getExecutionCloudUrl(): Promise<string>;
24
35
  open(driver: Driver, config?: undefined | ConfigurationPlain): Promise<Driver>;
25
36
  open(driver: Driver, appName?: undefined | string, testName?: undefined | string, viewportSize?: undefined | RectangleSizePlain, sessionType?: undefined | "SEQUENTIAL" | "PROGRESSION"): Promise<Driver>;
@@ -35,6 +46,16 @@ export class Eyes {
35
46
  fullViewSize?: undefined | RectangleSizePlain;
36
47
  }, checkSettings?: undefined | CheckSettingsImagePlain): Promise<MatchResult>;
37
48
  check(checkSettings?: undefined | CheckSettingsAutomationPlain): Promise<MatchResult>;
49
+ checkWindow(name?: undefined | string, timeout?: undefined | number, fully?: undefined | boolean): Promise<MatchResult>;
50
+ checkFrame(element: number | Element | EyesSelector<Selector>, timeout?: undefined | number, name?: undefined | string): Promise<MatchResult>;
51
+ checkElement(element: Element, timeout?: undefined | number, name?: undefined | string): Promise<MatchResult>;
52
+ checkElementBy(selector: EyesSelector<Selector>, timeout?: undefined | number, name?: undefined | string): Promise<MatchResult>;
53
+ checkRegion(region: RegionPlain, name?: undefined | string, timeout?: undefined | number): Promise<MatchResult>;
54
+ checkRegion(image: string | URL | Buffer, region: RegionPlain, name?: undefined | string, ignoreMismatch?: undefined | boolean): Promise<MatchResult>;
55
+ checkRegionByElement(element: Element, name?: undefined | string, timeout?: undefined | number): Promise<MatchResult>;
56
+ checkRegionBy(selector: EyesSelector<Selector>, name?: undefined | string, timeout?: undefined | number, fully?: undefined | boolean): Promise<MatchResult>;
57
+ checkRegionInFrame(frame: number | Element | EyesSelector<Selector>, selector: EyesSelector<Selector>, timeout?: undefined | number, name?: undefined | string, fully?: undefined | boolean): Promise<MatchResult>;
58
+ checkImage(image: string | URL | Buffer, name?: undefined | string, ignoreMismatch?: undefined | boolean): Promise<MatchResult>;
38
59
  locate<TLocator extends string>(settings: VisualLocatorSettings<TLocator>): Promise<Record<TLocator, Array<RegionPlain>>>;
39
60
  extractTextRegions<TPattern extends string>(target: {
40
61
  image: string | URL | Buffer;
@@ -46,6 +67,7 @@ export class Eyes {
46
67
  locationInView?: undefined | { x: number; y: number; };
47
68
  fullViewSize?: undefined | { width: number; height: number; };
48
69
  }, settings: OCRSettings<TPattern>): Promise<Record<TPattern, Array<TextRegion>>>;
70
+ extractTextRegions<TPattern extends string>(settingsWithImage: OCRSettings<TPattern> & { image: string | URL | Buffer; }): Promise<Record<TPattern, Array<TextRegion>>>;
49
71
  extractTextRegions<TPattern extends string>(settings: OCRSettings<TPattern>): Promise<Record<TPattern, Array<TextRegion>>>;
50
72
  extractText(target: {
51
73
  image: string | URL | Buffer;
@@ -57,11 +79,13 @@ export class Eyes {
57
79
  locationInView?: undefined | { x: number; y: number; };
58
80
  fullViewSize?: undefined | { width: number; height: number; };
59
81
  }, settings: Array<OCRRegion>): Promise<Array<string>>;
82
+ extractText(settingsWithImage: Array<OCRRegion & { image: string | URL | Buffer; }>): Promise<Array<string>>;
60
83
  extractText(settings: Array<OCRRegion>): Promise<Array<string>>;
61
84
  close(throwErr?: undefined | boolean): Promise<TestResults>;
62
85
  closeAsync(): Promise<void>;
63
86
  abort(): Promise<TestResults>;
64
87
  abortAsync(): Promise<void>;
88
+ abortIfNotClosed(): Promise<TestResultsPlain>;
65
89
  getViewportSize(): Promise<RectangleSize>;
66
90
  setViewportSize(size: RectangleSizePlain): Promise<void>;
67
91
  getScrollRootElement(): Element | EyesSelector<Selector>;
@@ -94,6 +118,8 @@ export class Eyes {
94
118
  setAppName(appName: string): void;
95
119
  getBaselineBranchName(): string;
96
120
  setBaselineBranchName(baselineBranchName: string): void;
121
+ getBaselineName(): string;
122
+ setBaselineName(baselineName: string): void;
97
123
  getBaselineEnvName(): string;
98
124
  setBaselineEnvName(baselineEnvName: string): void;
99
125
  getBranchName(): string;
@@ -142,6 +168,10 @@ export class Eyes {
142
168
  setStitchMode(stitchMode: StitchModePlain): void;
143
169
  getStitchOverlap(): number;
144
170
  setStitchOverlap(stitchOverlap: number): void;
171
+ getSessionEventHandlers(): SessionEventHandlers;
172
+ addSessionEventHandler(handler: SessionEventHandler): void;
173
+ removeSessionEventHandler(handler: SessionEventHandler): void;
174
+ clearSessionEventHandlers(): void;
145
175
  }
146
176
  export type CheckSettingsAutomationPlain = CheckSettingsImagePlain & {
147
177
  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>; })))>;
@@ -167,12 +197,16 @@ export class CheckSettingsAutomation {
167
197
  webview(webview?: undefined | string | boolean): CheckSettingsAutomation;
168
198
  scrollRootElement(scrollRootElement: Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })): CheckSettingsAutomation;
169
199
  fully(fully?: undefined | boolean): CheckSettingsAutomation;
200
+ stitchContent(stitchContent?: undefined | boolean): CheckSettingsAutomation;
170
201
  disableBrowserFetching(disableBrowserFetching: boolean): CheckSettingsAutomation;
171
202
  layoutBreakpoints(layoutBreakpoints?: undefined | boolean | Array<number>): CheckSettingsAutomation;
172
203
  hook(name: string, script: string): CheckSettingsAutomation;
173
204
  beforeRenderScreenshotHook(script: string): CheckSettingsAutomation;
205
+ webHook(script: string): CheckSettingsAutomation;
174
206
  ufgOption(key: string, value: any): CheckSettingsAutomation;
175
207
  ufgOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
208
+ visualGridOption(key: string, value: any): CheckSettingsAutomation;
209
+ visualGridOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
176
210
  nmgOption(key: string, value: any): CheckSettingsAutomation;
177
211
  nmgOptions(options: { [key: string]: any; }): CheckSettingsAutomation;
178
212
  renderId(renderId: string): CheckSettingsAutomation;
@@ -184,6 +218,8 @@ export class CheckSettingsAutomation {
184
218
  withName(name: string): CheckSettingsAutomation;
185
219
  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
220
  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;
221
+ ignore(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))): CheckSettingsAutomation;
222
+ ignores(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))>): CheckSettingsAutomation;
187
223
  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
224
  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
225
  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;
@@ -213,6 +249,20 @@ export class CheckSettingsAutomation {
213
249
  offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
214
250
  }>): CheckSettingsAutomation;
215
251
  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;
252
+ floating(region: {
253
+ region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
254
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
255
+ regionId?: undefined | string;
256
+ offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
257
+ }): CheckSettingsAutomation;
258
+ floating(region: LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; })))): CheckSettingsAutomation;
259
+ floatings(...regions: Array<LegacyRegionPlain | (RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }))) | {
260
+ region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
261
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
262
+ regionId?: undefined | string;
263
+ offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
264
+ }>): CheckSettingsAutomation;
265
+ floatings(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
266
  accessibilityRegion(region: {
217
267
  region: RegionPlain | (Element | (string | Selector | { selector: string | Selector; type?: undefined | string; shadow?: undefined | EyesSelector<Selector>; frame?: undefined | EyesSelector<Selector>; }));
218
268
  padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
@@ -232,6 +282,7 @@ export class CheckSettingsAutomation {
232
282
  exact(): CheckSettingsAutomation;
233
283
  strict(): CheckSettingsAutomation;
234
284
  ignoreColors(): CheckSettingsAutomation;
285
+ content(): CheckSettingsAutomation;
235
286
  enablePatterns(enablePatterns?: undefined | boolean): CheckSettingsAutomation;
236
287
  ignoreDisplacements(ignoreDisplacements?: undefined | boolean): CheckSettingsAutomation;
237
288
  ignoreCaret(ignoreCaret?: undefined | boolean): CheckSettingsAutomation;
@@ -253,12 +304,15 @@ export type TargetAutomation = {
253
304
  export const Target: TargetImage & TargetAutomation;
254
305
  export type OCRRegion = { target: RegionPlain | Element | EyesSelector<Selector>; hint?: undefined | string; minMatch?: undefined | number; language?: undefined | string; };
255
306
  export type ConfigurationPlain = {
307
+ debugScreenshots?: undefined | { save: boolean; path?: undefined | string; prefix?: undefined | string; };
256
308
  agentId?: undefined | string;
257
309
  apiKey?: undefined | string;
258
310
  serverUrl?: undefined | string;
259
311
  proxy?: undefined | ProxySettingsPlain;
260
312
  autProxy?: undefined | (ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; });
261
313
  isDisabled?: undefined | boolean;
314
+ connectionTimeout?: undefined | number;
315
+ removeSession?: undefined | boolean;
262
316
  appName?: undefined | string;
263
317
  testName?: undefined | string;
264
318
  displayName?: undefined | string;
@@ -283,6 +337,7 @@ export type ConfigurationPlain = {
283
337
  saveFailedTests?: undefined | boolean;
284
338
  saveNewTests?: undefined | boolean;
285
339
  saveDiffs?: undefined | boolean;
340
+ dontCloseBatches?: undefined | boolean;
286
341
  sendDom?: undefined | boolean;
287
342
  matchTimeout?: undefined | number;
288
343
  forceFullPageScreenshot?: undefined | boolean;
@@ -295,6 +350,7 @@ export type ConfigurationPlain = {
295
350
  cut?: undefined | CutProviderPlain;
296
351
  rotation?: undefined | ImageRotationPlain;
297
352
  scaleRatio?: undefined | number;
353
+ concurrentSessions?: undefined | number;
298
354
  browsersInfo?: undefined | Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>;
299
355
  visualGridOptions?: undefined | Record<string, any>;
300
356
  layoutBreakpoints?: undefined | boolean | Array<number>;
@@ -303,6 +359,14 @@ export type ConfigurationPlain = {
303
359
  };
304
360
  export class Configuration implements Required<ConfigurationPlain> {
305
361
  constructor(config?: undefined | ConfigurationPlain);
362
+ get debugScreenshots(): { save: boolean; path?: undefined | string; prefix?: undefined | string; };
363
+ set debugScreenshots(debugScreenshots: { save: boolean; path?: undefined | string; prefix?: undefined | string; });
364
+ getSaveDebugScreenshots(): boolean;
365
+ setSaveDebugScreenshots(save: boolean): Configuration;
366
+ getDebugScreenshotsPath(): string;
367
+ setDebugScreenshotsPath(path: string): Configuration;
368
+ getDebugScreenshotsPrefix(): string;
369
+ setDebugScreenshotsPrefix(prefix: string): Configuration;
306
370
  get appName(): string;
307
371
  set appName(appName: string);
308
372
  getAppName(): string;
@@ -353,6 +417,14 @@ export class Configuration implements Required<ConfigurationPlain> {
353
417
  set autProxy(autProxy: ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; });
354
418
  getAutProxy(): ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; };
355
419
  setAutProxy(autProxy: ProxySettingsPlain & { mode?: undefined | "Allow" | "Block"; domains?: undefined | Array<string>; }): Configuration;
420
+ get connectionTimeout(): number;
421
+ set connectionTimeout(connectionTimeout: number);
422
+ getConnectionTimeout(): number;
423
+ setConnectionTimeout(connectionTimeout: number): Configuration;
424
+ get removeSession(): boolean;
425
+ set removeSession(removeSession: boolean);
426
+ getRemoveSession(): boolean;
427
+ setRemoveSession(removeSession: boolean): Configuration;
356
428
  get batch(): BatchInfoPlain;
357
429
  set batch(batch: BatchInfoPlain);
358
430
  getBatch(): BatchInfo;
@@ -492,6 +564,10 @@ export class Configuration implements Required<ConfigurationPlain> {
492
564
  set scaleRatio(scaleRatio: number);
493
565
  getScaleRatio(): number;
494
566
  setScaleRatio(scaleRatio: number): Configuration;
567
+ get concurrentSessions(): number;
568
+ set concurrentSessions(concurrentSessions: number);
569
+ getConcurrentSessions(): number;
570
+ setConcurrentSessions(concurrentSessions: number): Configuration;
495
571
  get browsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>;
496
572
  set browsersInfo(browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>);
497
573
  getBrowsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | "landscape" | "portrait"; } | IOSDeviceInfo | AndroidDeviceInfo>;
@@ -515,6 +591,10 @@ export class Configuration implements Required<ConfigurationPlain> {
515
591
  set disableBrowserFetching(disableBrowserFetching: boolean);
516
592
  getDisableBrowserFetching(): boolean;
517
593
  setDisableBrowserFetching(disableBrowserFetching: boolean): Configuration;
594
+ get dontCloseBatches(): boolean;
595
+ set dontCloseBatches(dontCloseBatches: boolean);
596
+ getDontCloseBatches(): boolean;
597
+ setDontCloseBatches(dontCloseBatches: boolean): Configuration;
518
598
  }
519
599
  export class BatchClose {
520
600
  static close(settings: { batchIds: Array<string>; serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; }): Promise<void>;
@@ -889,6 +969,8 @@ export class CheckSettingsImage {
889
969
  withName(name: string): CheckSettingsImage;
890
970
  ignoreRegion(region: LegacyRegionPlain | RegionPlain | { region: RegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsImage;
891
971
  ignoreRegions(...regions: Array<LegacyRegionPlain | RegionPlain | { region: RegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsImage;
972
+ ignore(region: LegacyRegionPlain | RegionPlain): CheckSettingsImage;
973
+ ignores(...regions: Array<LegacyRegionPlain | RegionPlain>): CheckSettingsImage;
892
974
  layoutRegion(region: LegacyRegionPlain | RegionPlain | { region: RegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsImage;
893
975
  layoutRegions(...regions: Array<LegacyRegionPlain | RegionPlain | { region: RegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }>): CheckSettingsImage;
894
976
  strictRegion(region: LegacyRegionPlain | RegionPlain | { region: RegionPlain; padding?: undefined | number | { top: number; bottom: number; left: number; right: number; }; regionId?: undefined | string; }): CheckSettingsImage;
@@ -918,6 +1000,20 @@ export class CheckSettingsImage {
918
1000
  offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
919
1001
  }>): CheckSettingsImage;
920
1002
  floatingRegions(maxOffset: number, ...regions: Array<LegacyRegionPlain | RegionPlain>): CheckSettingsImage;
1003
+ floating(region: {
1004
+ region: RegionPlain;
1005
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
1006
+ regionId?: undefined | string;
1007
+ offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
1008
+ }): CheckSettingsImage;
1009
+ floating(region: LegacyRegionPlain | RegionPlain): CheckSettingsImage;
1010
+ floatings(...regions: Array<LegacyRegionPlain | RegionPlain | {
1011
+ region: RegionPlain;
1012
+ padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
1013
+ regionId?: undefined | string;
1014
+ offset?: undefined | { top?: undefined | number; bottom?: undefined | number; left?: undefined | number; right?: undefined | number; };
1015
+ }>): CheckSettingsImage;
1016
+ floatings(maxOffset: number, ...regions: Array<LegacyRegionPlain | RegionPlain>): CheckSettingsImage;
921
1017
  accessibilityRegion(region: {
922
1018
  region: RegionPlain;
923
1019
  padding?: undefined | number | { top: number; bottom: number; left: number; right: number; };
@@ -937,6 +1033,7 @@ export class CheckSettingsImage {
937
1033
  exact(): CheckSettingsImage;
938
1034
  strict(): CheckSettingsImage;
939
1035
  ignoreColors(): CheckSettingsImage;
1036
+ content(): CheckSettingsImage;
940
1037
  enablePatterns(enablePatterns?: undefined | boolean): CheckSettingsImage;
941
1038
  ignoreDisplacements(ignoreDisplacements?: undefined | boolean): CheckSettingsImage;
942
1039
  ignoreCaret(ignoreCaret?: undefined | boolean): CheckSettingsImage;
@@ -1142,7 +1239,14 @@ export class Location implements Required<LocationPlain> {
1142
1239
  setY(y: number): void;
1143
1240
  }
1144
1241
  export type LogHandlerPlain = CustomLogHandlerPlain | ConsoleLogHandlerPlain | FileLogHandlerPlain;
1145
- export type CustomLogHandlerPlain = { log(message: any): void; };
1242
+ export type CustomLogHandlerPlain = {
1243
+ log(message: any): void;
1244
+ warn?(message: any): void;
1245
+ error?(message: any): void;
1246
+ fatal?(message: any): void;
1247
+ open?(): void;
1248
+ close?(): void;
1249
+ };
1146
1250
  export type FileLogHandlerPlain = { type: "file"; filename?: undefined | string; append?: undefined | boolean; };
1147
1251
  export type ConsoleLogHandlerPlain = { type: "console"; };
1148
1252
  export abstract class LogHandler implements CustomLogHandlerPlain {
@@ -1252,7 +1356,7 @@ export type DesktopBrowserInfo = { name?: undefined | "chrome" | "chrome-one-ver
1252
1356
  export type ChromeEmulationInfo = { chromeEmulationInfo: { deviceName: DeviceNamePlain; screenOrientation?: undefined | "landscape" | "portrait"; }; };
1253
1357
  export type IOSDeviceInfo = { iosDeviceInfo: { deviceName: IosDeviceNamePlain; iosVersion?: undefined | "latest" | "latest-1"; screenOrientation?: undefined | "landscape" | "portrait"; }; };
1254
1358
  export type AndroidDeviceInfo = { androidDeviceInfo: { deviceName: AndroidDeviceNamePlain; version?: undefined | "latest" | "latest-1"; screenOrientation?: undefined | "landscape" | "portrait"; }; };
1255
- export type RunnerOptionsPlain = { testConcurrency?: undefined | number; removeDuplicateTests?: undefined | boolean; };
1359
+ export type RunnerOptionsPlain = { testConcurrency?: undefined | number; fetchConcurrency?: undefined | number; removeDuplicateTests?: undefined | boolean; };
1256
1360
  export class RunnerOptionsFluent {
1257
1361
  testConcurrency(concurrency: number): RunnerOptionsFluent;
1258
1362
  }
@@ -1268,35 +1372,46 @@ export type ApiUrlsPlain = {
1268
1372
  export class ApiUrls implements Required<ApiUrlsPlain> {
1269
1373
  get baselineImage(): string;
1270
1374
  getBaselineImage(): string;
1375
+ setBaselineImage(setBaselineImage: string): void;
1271
1376
  get currentImage(): string;
1272
1377
  getCurrentImage(): string;
1378
+ setCurrentImage(currentImage: string): void;
1273
1379
  get checkpointImage(): string;
1274
1380
  getCheckpointImage(): string;
1381
+ setCheckpointImage(checkpointImage: string): void;
1275
1382
  get checkpointImageThumbnail(): string;
1276
1383
  getCheckpointImageThumbnail(): string;
1384
+ setCheckpointImageThumbnail(checkpointImageThumbnail: string): void;
1277
1385
  get diffImage(): string;
1278
1386
  getDiffImage(): string;
1387
+ setDiffImage(diffImage: string): void;
1279
1388
  }
1280
1389
  export type AppUrlsPlain = { readonly step: string; readonly stepEditor: string; };
1281
1390
  export class AppUrls implements Required<AppUrlsPlain> {
1282
1391
  get step(): string;
1283
1392
  getStep(): string;
1393
+ setStep(step: string): void;
1284
1394
  get stepEditor(): string;
1285
1395
  getStepEditor(): string;
1396
+ setStepEditor(stepEditor: string): void;
1286
1397
  }
1287
1398
  export type MatchResultPlain = { readonly asExpected?: undefined | boolean; readonly windowId?: undefined | number; };
1288
1399
  export class MatchResult implements Required<MatchResultPlain> {
1289
1400
  get asExpected(): boolean;
1290
1401
  getAsExpected(): boolean;
1402
+ setAsExpected(asExpected: boolean): void;
1291
1403
  get windowId(): number;
1292
1404
  getWindowId(): number;
1405
+ setWindowId(windowId: number): void;
1293
1406
  }
1294
1407
  export type SessionUrlsPlain = { readonly batch: string; readonly session: string; };
1295
1408
  export class SessionUrls implements Required<SessionUrlsPlain> {
1296
1409
  get batch(): string;
1297
1410
  getBatch(): string;
1411
+ setBatch(batch: string): void;
1298
1412
  get session(): string;
1299
1413
  getSession(): string;
1414
+ setSession(session: string): void;
1300
1415
  }
1301
1416
  export type StepInfoPlain = {
1302
1417
  readonly name: string;
@@ -1310,18 +1425,25 @@ export type StepInfoPlain = {
1310
1425
  export class StepInfo implements Required<StepInfoPlain> {
1311
1426
  get name(): string;
1312
1427
  getName(): string;
1428
+ setName(value: string): void;
1313
1429
  get isDifferent(): boolean;
1314
1430
  getIsDifferent(): boolean;
1431
+ setIsDifferent(value: boolean): void;
1315
1432
  get hasBaselineImage(): boolean;
1316
1433
  getHasBaselineImage(): boolean;
1434
+ setHasBaselineImage(value: boolean): void;
1317
1435
  get hasCurrentImage(): boolean;
1318
1436
  getHasCurrentImage(): boolean;
1437
+ setHasCurrentImage(hasCurrentImage: boolean): void;
1319
1438
  get appUrls(): AppUrlsPlain;
1320
1439
  getAppUrls(): AppUrls;
1440
+ setAppUrls(appUrls: AppUrlsPlain): void;
1321
1441
  get apiUrls(): ApiUrlsPlain;
1322
1442
  getApiUrls(): ApiUrls;
1443
+ setApiUrls(apiUrls: ApiUrlsPlain): void;
1323
1444
  get renderId(): Array<string>;
1324
1445
  getRenderId(): Array<string>;
1446
+ setRenderId(renderId: Array<string>): void;
1325
1447
  }
1326
1448
  export type TestAccessibilityStatus = { readonly status: AccessibilityStatusPlain; readonly level: AccessibilityLevelPlain; readonly version: AccessibilityGuidelinesVersionPlain; };
1327
1449
  export type TestResultsPlain = {
@@ -1355,74 +1477,105 @@ export type TestResultsPlain = {
1355
1477
  readonly layoutMatches?: undefined | number;
1356
1478
  readonly noneMatches?: undefined | number;
1357
1479
  readonly url?: undefined | string;
1358
- readonly server: { serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; };
1359
- readonly keepIfDuplicate: boolean;
1480
+ readonly server?: undefined | { serverUrl: string; apiKey: string; proxy?: undefined | ProxySettingsPlain; };
1481
+ readonly keepIfDuplicate?: undefined | boolean;
1360
1482
  };
1361
1483
  export class TestResults implements Required<TestResultsPlain> {
1362
1484
  get id(): string;
1363
1485
  getId(): string;
1486
+ setId(_id: string): void;
1364
1487
  get name(): string;
1365
1488
  getName(): string;
1489
+ setName(_name: string): void;
1366
1490
  get secretToken(): string;
1367
1491
  getSecretToken(): string;
1492
+ setSecretToken(_secretToken: string): void;
1368
1493
  get status(): TestResultsStatusPlain;
1369
1494
  getStatus(): TestResultsStatus;
1495
+ setStatus(_status: TestResultsStatus): void;
1370
1496
  get appName(): string;
1371
1497
  getAppName(): string;
1498
+ setAppName(_appName: string): void;
1372
1499
  get batchName(): string;
1373
1500
  getBatchName(): string;
1501
+ setBatchName(_batchName: string): void;
1374
1502
  get batchId(): string;
1375
1503
  getBatchId(): string;
1504
+ setBatchId(_batchId: string): void;
1376
1505
  get branchName(): string;
1377
1506
  getBranchName(): string;
1507
+ setBranchName(_branchName: string): void;
1378
1508
  get hostOS(): string;
1379
1509
  getHostOS(): string;
1510
+ setHostOS(_hostOS: string): void;
1380
1511
  get hostApp(): string;
1381
1512
  getHostApp(): string;
1513
+ setHostApp(_hostApp: string): void;
1382
1514
  get hostDisplaySize(): RectangleSizePlain;
1383
1515
  getHostDisplaySize(): RectangleSize;
1516
+ setHostDisplaySize(_hostDisplaySize: RectangleSizePlain): void;
1384
1517
  get accessibilityStatus(): TestAccessibilityStatus;
1385
1518
  getAccessibilityStatus(): TestAccessibilityStatus;
1519
+ setAccessibilityStatus(_accessibilityStatus: TestAccessibilityStatus): void;
1386
1520
  get startedAt(): string;
1387
1521
  getStartedAt(): Date;
1522
+ setStartedAt(_startedAt: string | Date): void;
1388
1523
  get duration(): number;
1389
1524
  getDuration(): number;
1525
+ setDuration(_duration: number): void;
1390
1526
  get isNew(): boolean;
1391
1527
  getIsNew(): boolean;
1528
+ setIsNew(_isNew: boolean): void;
1392
1529
  get isDifferent(): boolean;
1393
1530
  getIsDifferent(): boolean;
1531
+ setIsDifferent(_isDifferent: boolean): void;
1394
1532
  get isAborted(): boolean;
1395
1533
  getIsAborted(): boolean;
1534
+ setIsAborted(_isAborted: boolean): void;
1396
1535
  get appUrls(): SessionUrlsPlain;
1397
1536
  getAppUrls(): SessionUrls;
1537
+ setAppUrls(_appUrls: SessionUrlsPlain): void;
1398
1538
  get apiUrls(): SessionUrlsPlain;
1399
1539
  getApiUrls(): SessionUrls;
1540
+ setApiUrls(_apiUrls: SessionUrlsPlain): void;
1400
1541
  get stepsInfo(): Array<StepInfoPlain>;
1401
1542
  getStepsInfo(): Array<StepInfo>;
1543
+ setStepsInfo(_stepInfo: Array<StepInfoPlain>): void;
1402
1544
  get steps(): number;
1403
1545
  getSteps(): number;
1546
+ setSteps(_steps: number): void;
1404
1547
  get matches(): number;
1405
1548
  getMatches(): number;
1549
+ setMatches(_matches: number): void;
1406
1550
  get mismatches(): number;
1407
1551
  getMismatches(): number;
1552
+ setMismatches(_mismatches: number): void;
1408
1553
  get missing(): number;
1409
1554
  getMissing(): number;
1555
+ setMissing(_missing: number): void;
1410
1556
  get exactMatches(): number;
1411
1557
  getExactMatches(): number;
1558
+ setExactMatches(_exactMatches: number): void;
1412
1559
  get strictMatches(): number;
1413
1560
  getStrictMatches(): number;
1561
+ setStrictMatches(_strictMatches: number): void;
1414
1562
  get contentMatches(): number;
1415
1563
  getContentMatches(): number;
1564
+ setContentMatches(_contentMatches: number): void;
1416
1565
  get layoutMatches(): number;
1417
1566
  getLayoutMatches(): number;
1567
+ setLayoutMatches(_layoutMatches: number): void;
1418
1568
  get noneMatches(): number;
1419
1569
  getNoneMatches(): number;
1570
+ setNoneMatches(_noneMatches: number): void;
1420
1571
  get url(): string;
1421
1572
  getUrl(): string;
1573
+ setUrl(_url: string): void;
1422
1574
  get server(): { serverUrl: string; apiKey: string; agentId?: undefined | string; proxy?: undefined | { url: string; username?: undefined | string; password?: undefined | string; }; };
1423
1575
  get keepIfDuplicate(): boolean;
1424
1576
  isPassed(): boolean;
1425
1577
  delete(): Promise<void>;
1578
+ deleteSession(): Promise<void>;
1426
1579
  }
1427
1580
  export type TestResultContainerPlain = { readonly exception?: undefined | Error; readonly testResults?: undefined | TestResultsPlain; readonly browserInfo?: undefined | (DesktopBrowserInfo | ChromeEmulationInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | "landscape" | "portrait"; } | IOSDeviceInfo | AndroidDeviceInfo); };
1428
1581
  export class TestResultContainer implements Required<TestResultContainerPlain> {
@@ -1436,7 +1589,7 @@ export class TestResultContainer implements Required<TestResultContainerPlain> {
1436
1589
  export type TestResultsSummaryPlain = Iterable<TestResultContainerPlain>;
1437
1590
  export class TestResultsSummary implements Iterable<TestResultContainer> {
1438
1591
  getAllResults(): Array<TestResultContainer>;
1439
- [Symbol.iterator](): Iterator<TestResultContainer, any, undefined>;
1592
+ '__@iterator@107'(): Iterator<TestResultContainer, any, undefined>;
1440
1593
  }
1441
1594
  export type TextRegion = {
1442
1595
  x: number;
@@ -1474,15 +1627,21 @@ export class Logger {
1474
1627
  extend(label?: undefined | string): Logger;
1475
1628
  }
1476
1629
  export abstract class EyesRunner {
1630
+ constructor(options?: undefined | RunnerOptionsPlain);
1477
1631
  abstract readonly type: "classic" | "ufg";
1478
1632
  getAllTestResults(throwErr?: undefined | boolean): Promise<TestResultsSummary>;
1479
1633
  }
1480
1634
  export class ClassicRunner extends EyesRunner {
1481
- constructor(options?: undefined | RunnerOptionsPlain);
1635
+ readonly type: "classic";
1482
1636
  }
1483
1637
  export class VisualGridRunner extends EyesRunner {
1484
1638
  constructor(options?: undefined | RunnerOptionsPlain);
1639
+ constructor(options?: undefined | RunnerOptionsFluent);
1640
+ constructor(legacyConcurrency?: undefined | number);
1641
+ readonly type: "ufg";
1485
1642
  get testConcurrency(): undefined | number;
1643
+ get legacyConcurrency(): undefined | number;
1644
+ getConcurrentSessions(): undefined | number;
1486
1645
  }
1487
1646
  export abstract class SessionEventHandler {
1488
1647
  abstract initStarted(): any;