codeceptjs 3.3.0-beta.2 → 3.3.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.
@@ -714,7 +714,7 @@ class Puppeteer extends Helper {
714
714
  * I.moveCursorTo('#submit', 5,5);
715
715
  * ```
716
716
  *
717
- * @param {string | object} locator located by CSS|XPath|strict locator.
717
+ * @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
718
718
  * @param {number} [offsetX=0] (optional, `0` by default) X-axis offset.
719
719
  * @param {number} [offsetY=0] (optional, `0` by default) Y-axis offset.
720
720
  *
@@ -737,8 +737,8 @@ class Puppeteer extends Helper {
737
737
  * I.dragAndDrop('#dragHandle', '#container');
738
738
  * ```
739
739
  *
740
- * @param {string | object} srcElement located by CSS|XPath|strict locator.
741
- * @param {string | object} destElement located by CSS|XPath|strict locator.
740
+ * @param {LocatorOrString} srcElement located by CSS|XPath|strict locator.
741
+ * @param {LocatorOrString} destElement located by CSS|XPath|strict locator.
742
742
  *
743
743
  */
744
744
  async dragAndDrop(srcElement, destElement) {
@@ -799,7 +799,7 @@ class Puppeteer extends Helper {
799
799
  * I.scrollTo('#submit', 5, 5);
800
800
  * ```
801
801
  *
802
- * @param {string | object} locator located by CSS|XPath|strict locator.
802
+ * @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
803
803
  * @param {number} [offsetX=0] (optional, `0` by default) X-axis offset.
804
804
  * @param {number} [offsetY=0] (optional, `0` by default) Y-axis offset.
805
805
  */
@@ -1069,7 +1069,7 @@ class Puppeteer extends Helper {
1069
1069
  * ```js
1070
1070
  * I.seeElement('#modal');
1071
1071
  * ```
1072
- * @param {string | object} locator located by CSS|XPath|strict locator.
1072
+ * @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
1073
1073
  * {{ react }}
1074
1074
  */
1075
1075
  async seeElement(locator) {
@@ -1088,7 +1088,7 @@ class Puppeteer extends Helper {
1088
1088
  * I.dontSeeElement('.modal'); // modal is not shown
1089
1089
  * ```
1090
1090
  *
1091
- * @param {string | object} locator located by CSS|XPath|Strict locator.
1091
+ * @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|Strict locator.
1092
1092
  * {{ react }}
1093
1093
  */
1094
1094
  async dontSeeElement(locator) {
@@ -1107,7 +1107,7 @@ class Puppeteer extends Helper {
1107
1107
  * ```js
1108
1108
  * I.seeElementInDOM('#modal');
1109
1109
  * ```
1110
- * @param {string | object} locator element located by CSS|XPath|strict locator.
1110
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
1111
1111
  *
1112
1112
  */
1113
1113
  async seeElementInDOM(locator) {
@@ -1122,7 +1122,7 @@ class Puppeteer extends Helper {
1122
1122
  * I.dontSeeElementInDOM('.nav'); // checks that element is not on page visible or not
1123
1123
  * ```
1124
1124
  *
1125
- * @param {string | object} locator located by CSS|XPath|Strict locator.
1125
+ * @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|Strict locator.
1126
1126
  */
1127
1127
  async dontSeeElementInDOM(locator) {
1128
1128
  const els = await this._locate(locator);
@@ -1152,8 +1152,8 @@ class Puppeteer extends Helper {
1152
1152
  * I.click({css: 'nav a.login'});
1153
1153
  * ```
1154
1154
  *
1155
- * @param {string | object} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
1156
- * @param {?string | object} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
1155
+ * @param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
1156
+ * @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
1157
1157
  *
1158
1158
  *
1159
1159
  * {{ react }}
@@ -1188,8 +1188,8 @@ class Puppeteer extends Helper {
1188
1188
  * I.forceClick({css: 'nav a.login'});
1189
1189
  * ```
1190
1190
  *
1191
- * @param {string | object} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
1192
- * @param {?string | object} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
1191
+ * @param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
1192
+ * @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
1193
1193
  *
1194
1194
  *
1195
1195
  * {{ react }}
@@ -1225,8 +1225,8 @@ class Puppeteer extends Helper {
1225
1225
  * ```js
1226
1226
  * I.clickLink('Logout', '#nav');
1227
1227
  * ```
1228
- * @param {string | object} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator
1229
- * @param {?string | object} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator
1228
+ * @param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator
1229
+ * @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator
1230
1230
  *
1231
1231
  * {{ react }}
1232
1232
  */
@@ -1337,8 +1337,8 @@ class Puppeteer extends Helper {
1337
1337
  * I.doubleClick('.btn.edit');
1338
1338
  * ```
1339
1339
  *
1340
- * @param {string | object} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
1341
- * @param {?string | object} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
1340
+ * @param {CodeceptJS.LocatorOrString} locator clickable link or button located by text, or any element located by CSS|XPath|strict locator.
1341
+ * @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element to search in CSS|XPath|Strict locator.
1342
1342
  *
1343
1343
  *
1344
1344
  * {{ react }}
@@ -1359,8 +1359,8 @@ class Puppeteer extends Helper {
1359
1359
  * I.rightClick('Click me', '.context');
1360
1360
  * ```
1361
1361
  *
1362
- * @param {string | object} locator clickable element located by CSS|XPath|strict locator.
1363
- * @param {?string | object} [context=null] (optional, `null` by default) element located by CSS|XPath|strict locator.
1362
+ * @param {CodeceptJS.LocatorOrString} locator clickable element located by CSS|XPath|strict locator.
1363
+ * @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS|XPath|strict locator.
1364
1364
  *
1365
1365
  *
1366
1366
  * {{ react }}
@@ -1380,8 +1380,8 @@ class Puppeteer extends Helper {
1380
1380
  * I.checkOption('I Agree to Terms and Conditions');
1381
1381
  * I.checkOption('agree', '//form');
1382
1382
  * ```
1383
- * @param {string | object} field checkbox located by label | name | CSS | XPath | strict locator.
1384
- * @param {?string | object} [context=null] (optional, `null` by default) element located by CSS | XPath | strict locator.
1383
+ * @param {CodeceptJS.LocatorOrString} field checkbox located by label | name | CSS | XPath | strict locator.
1384
+ * @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS | XPath | strict locator.
1385
1385
  */
1386
1386
  async checkOption(field, context = null) {
1387
1387
  const elm = await this._locateCheckable(field, context);
@@ -1405,8 +1405,8 @@ class Puppeteer extends Helper {
1405
1405
  * I.uncheckOption('I Agree to Terms and Conditions');
1406
1406
  * I.uncheckOption('agree', '//form');
1407
1407
  * ```
1408
- * @param {string | object} field checkbox located by label | name | CSS | XPath | strict locator.
1409
- * @param {?string | object} [context=null] (optional, `null` by default) element located by CSS | XPath | strict locator.
1408
+ * @param {CodeceptJS.LocatorOrString} field checkbox located by label | name | CSS | XPath | strict locator.
1409
+ * @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS | XPath | strict locator.
1410
1410
  */
1411
1411
  async uncheckOption(field, context = null) {
1412
1412
  const elm = await this._locateCheckable(field, context);
@@ -1428,7 +1428,7 @@ class Puppeteer extends Helper {
1428
1428
  * I.seeCheckboxIsChecked({css: '#signup_form input[type=checkbox]'});
1429
1429
  * ```
1430
1430
  *
1431
- * @param {string | object} field located by label|name|CSS|XPath|strict locator.
1431
+ * @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
1432
1432
  *
1433
1433
  */
1434
1434
  async seeCheckboxIsChecked(field) {
@@ -1444,7 +1444,7 @@ class Puppeteer extends Helper {
1444
1444
  * I.dontSeeCheckboxIsChecked('agree'); // located by name
1445
1445
  * ```
1446
1446
  *
1447
- * @param {string | object} field located by label|name|CSS|XPath|strict locator.
1447
+ * @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
1448
1448
  *
1449
1449
  */
1450
1450
  async dontSeeCheckboxIsChecked(field) {
@@ -1625,8 +1625,8 @@ class Puppeteer extends Helper {
1625
1625
  * // or by strict locator
1626
1626
  * I.fillField({css: 'form#login input[name=username]'}, 'John');
1627
1627
  * ```
1628
- * @param {string | object} field located by label|name|CSS|XPath|strict locator.
1629
- * @param {string | object} value text value to fill.
1628
+ * @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
1629
+ * @param {CodeceptJS.StringOrSecret} value text value to fill.
1630
1630
  *
1631
1631
  * {{ react }}
1632
1632
  */
@@ -1653,7 +1653,7 @@ class Puppeteer extends Helper {
1653
1653
  * I.clearField('user[email]');
1654
1654
  * I.clearField('#email');
1655
1655
  * ```
1656
- * @param {string | object} editable field located by label|name|CSS|XPath|strict locator.
1656
+ * @param {LocatorOrString} editable field located by label|name|CSS|XPath|strict locator.
1657
1657
  *
1658
1658
  */
1659
1659
  async clearField(field) {
@@ -1667,7 +1667,7 @@ class Puppeteer extends Helper {
1667
1667
  * ```js
1668
1668
  * I.appendField('#myTextField', 'appended');
1669
1669
  * ```
1670
- * @param {string | object} field located by label|name|CSS|XPath|strict locator
1670
+ * @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator
1671
1671
  * @param {string} value text value to append.
1672
1672
  *
1673
1673
  * {{ react }}
@@ -1690,7 +1690,7 @@ class Puppeteer extends Helper {
1690
1690
  * I.seeInField('form input[type=hidden]','hidden_value');
1691
1691
  * I.seeInField('#searchform input','Search');
1692
1692
  * ```
1693
- * @param {string | object} field located by label|name|CSS|XPath|strict locator.
1693
+ * @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
1694
1694
  * @param {string} value value to check.
1695
1695
  *
1696
1696
  */
@@ -1707,7 +1707,7 @@ class Puppeteer extends Helper {
1707
1707
  * I.dontSeeInField({ css: 'form input.email' }, 'user@user.com'); // field by CSS
1708
1708
  * ```
1709
1709
  *
1710
- * @param {string | object} field located by label|name|CSS|XPath|strict locator.
1710
+ * @param {CodeceptJS.LocatorOrString} field located by label|name|CSS|XPath|strict locator.
1711
1711
  * @param {string} value value to check.
1712
1712
  */
1713
1713
  async dontSeeInField(field, value) {
@@ -1724,7 +1724,7 @@ class Puppeteer extends Helper {
1724
1724
  * I.attachFile('form input[name=avatar]', 'data/avatar.jpg');
1725
1725
  * ```
1726
1726
  *
1727
- * @param {string | object} locator field located by label|name|CSS|XPath|strict locator.
1727
+ * @param {CodeceptJS.LocatorOrString} locator field located by label|name|CSS|XPath|strict locator.
1728
1728
  * @param {string} pathToFile local file path relative to codecept.json config file.
1729
1729
  *
1730
1730
  * > ⚠ There is an [issue with file upload in Puppeteer 2.1.0 & 2.1.1](https://github.com/puppeteer/puppeteer/issues/5420), downgrade to 2.0.0 if you face it.
@@ -1760,7 +1760,7 @@ class Puppeteer extends Helper {
1760
1760
  * ```js
1761
1761
  * I.selectOption('Which OS do you use?', ['Android', 'iOS']);
1762
1762
  * ```
1763
- * @param {string | object} select field located by label|name|CSS|XPath|strict locator.
1763
+ * @param {LocatorOrString} select field located by label|name|CSS|XPath|strict locator.
1764
1764
  * @param {string|Array<*>} option visible text or value of option.
1765
1765
  *
1766
1766
  */
@@ -1801,7 +1801,7 @@ class Puppeteer extends Helper {
1801
1801
  * let numOfElements = await I.grabNumberOfVisibleElements('p');
1802
1802
  * ```
1803
1803
  *
1804
- * @param {string | object} locator located by CSS|XPath|strict locator.
1804
+ * @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
1805
1805
  * @returns {Promise<number>} number of visible elements
1806
1806
  * {{ react }}
1807
1807
  */
@@ -1877,7 +1877,7 @@ class Puppeteer extends Helper {
1877
1877
  * I.see('Register', {css: 'form.register'}); // use strict locator
1878
1878
  * ```
1879
1879
  * @param {string} text expected on page.
1880
- * @param {?string | object} [context=null] (optional, `null` by default) element located by CSS|Xpath|strict locator in which to search for text.
1880
+ * @param {?CodeceptJS.LocatorOrString} [context=null] (optional, `null` by default) element located by CSS|Xpath|strict locator in which to search for text.
1881
1881
  *
1882
1882
  * {{ react }}
1883
1883
  */
@@ -1893,7 +1893,7 @@ class Puppeteer extends Helper {
1893
1893
  * ```
1894
1894
  *
1895
1895
  * @param {string} text element value to check.
1896
- * @param {(string | object)?} [context=null] element located by CSS|XPath|strict locator.
1896
+ * @param {CodeceptJS.LocatorOrString?} [context=null] element located by CSS|XPath|strict locator.
1897
1897
  */
1898
1898
  async seeTextEquals(text, context = null) {
1899
1899
  return proceedSee.call(this, 'assert', text, context, true);
@@ -1909,7 +1909,7 @@ class Puppeteer extends Helper {
1909
1909
  * ```
1910
1910
  *
1911
1911
  * @param {string} text which is not present.
1912
- * @param {string | object} [context] (optional) element located by CSS|XPath|strict locator in which to perfrom search.
1912
+ * @param {CodeceptJS.LocatorOrString} [context] (optional) element located by CSS|XPath|strict locator in which to perfrom search.
1913
1913
  *
1914
1914
  *
1915
1915
  * {{ react }}
@@ -1999,7 +1999,7 @@ class Puppeteer extends Helper {
1999
1999
  * I.seeNumberOfElements('#submitBtn', 1);
2000
2000
  * ```
2001
2001
  *
2002
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2002
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2003
2003
  * @param {number} num number of elements.
2004
2004
  *
2005
2005
  *
@@ -2018,7 +2018,7 @@ class Puppeteer extends Helper {
2018
2018
  * I.seeNumberOfVisibleElements('.buttons', 3);
2019
2019
  * ```
2020
2020
  *
2021
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2021
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2022
2022
  * @param {number} num number of elements.
2023
2023
  *
2024
2024
  *
@@ -2218,7 +2218,7 @@ class Puppeteer extends Helper {
2218
2218
  * let pins = await I.grabTextFromAll('#pin li');
2219
2219
  * ```
2220
2220
  *
2221
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2221
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2222
2222
  * @returns {Promise<string[]>} attribute value
2223
2223
  *
2224
2224
  * {{ react }}
@@ -2241,7 +2241,7 @@ class Puppeteer extends Helper {
2241
2241
  * ```
2242
2242
  * If multiple elements found returns first element.
2243
2243
  *
2244
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2244
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2245
2245
  * @returns {Promise<string>} attribute value
2246
2246
  *
2247
2247
  * {{ react }}
@@ -2263,7 +2263,7 @@ class Puppeteer extends Helper {
2263
2263
  * ```js
2264
2264
  * let inputs = await I.grabValueFromAll('//form/input');
2265
2265
  * ```
2266
- * @param {string | object} locator field located by label|name|CSS|XPath|strict locator.
2266
+ * @param {CodeceptJS.LocatorOrString} locator field located by label|name|CSS|XPath|strict locator.
2267
2267
  * @returns {Promise<string[]>} attribute value
2268
2268
  *
2269
2269
  */
@@ -2284,7 +2284,7 @@ class Puppeteer extends Helper {
2284
2284
  * ```js
2285
2285
  * let email = await I.grabValueFrom('input[name=email]');
2286
2286
  * ```
2287
- * @param {string | object} locator field located by label|name|CSS|XPath|strict locator.
2287
+ * @param {CodeceptJS.LocatorOrString} locator field located by label|name|CSS|XPath|strict locator.
2288
2288
  * @returns {Promise<string>} attribute value
2289
2289
  *
2290
2290
  */
@@ -2306,7 +2306,7 @@ class Puppeteer extends Helper {
2306
2306
  * let postHTMLs = await I.grabHTMLFromAll('.post');
2307
2307
  * ```
2308
2308
  *
2309
- * @param {string | object} element located by CSS|XPath|strict locator.
2309
+ * @param {CodeceptJS.LocatorOrString} element located by CSS|XPath|strict locator.
2310
2310
  * @returns {Promise<string[]>} HTML code for an element
2311
2311
  *
2312
2312
  */
@@ -2325,7 +2325,7 @@ class Puppeteer extends Helper {
2325
2325
  * let postHTML = await I.grabHTMLFrom('#post');
2326
2326
  * ```
2327
2327
  *
2328
- * @param {string | object} element located by CSS|XPath|strict locator.
2328
+ * @param {CodeceptJS.LocatorOrString} element located by CSS|XPath|strict locator.
2329
2329
  * @returns {Promise<string>} HTML code for an element
2330
2330
  *
2331
2331
  */
@@ -2347,7 +2347,7 @@ class Puppeteer extends Helper {
2347
2347
  * const values = await I.grabCssPropertyFromAll('h3', 'font-weight');
2348
2348
  * ```
2349
2349
  *
2350
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2350
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2351
2351
  * @param {string} cssProperty CSS property name.
2352
2352
  * @returns {Promise<string[]>} CSS value
2353
2353
  *
@@ -2370,7 +2370,7 @@ class Puppeteer extends Helper {
2370
2370
  * const value = await I.grabCssPropertyFrom('h3', 'font-weight');
2371
2371
  * ```
2372
2372
  *
2373
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2373
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2374
2374
  * @param {string} cssProperty CSS property name.
2375
2375
  * @returns {Promise<string>} CSS value
2376
2376
  *
@@ -2394,7 +2394,7 @@ class Puppeteer extends Helper {
2394
2394
  * I.seeCssPropertiesOnElements('h3', { 'font-weight': "bold"});
2395
2395
  * ```
2396
2396
  *
2397
- * @param {string | object} locator located by CSS|XPath|strict locator.
2397
+ * @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
2398
2398
  * @param {object} cssProperties object with CSS properties and their values to check.
2399
2399
  * {{ react }}
2400
2400
  */
@@ -2440,7 +2440,7 @@ class Puppeteer extends Helper {
2440
2440
  * I.seeAttributesOnElements('//form', { method: "post"});
2441
2441
  * ```
2442
2442
  *
2443
- * @param {string | object} locator located by CSS|XPath|strict locator.
2443
+ * @param {CodeceptJS.LocatorOrString} locator located by CSS|XPath|strict locator.
2444
2444
  * @param {object} attributes attributes and their values to check.
2445
2445
  * {{ react }}
2446
2446
  */
@@ -2480,7 +2480,7 @@ class Puppeteer extends Helper {
2480
2480
  * I.dragSlider('#slider', -70);
2481
2481
  * ```
2482
2482
  *
2483
- * @param {string | object} locator located by label|name|CSS|XPath|strict locator.
2483
+ * @param {CodeceptJS.LocatorOrString} locator located by label|name|CSS|XPath|strict locator.
2484
2484
  * @param {number} offsetX position to drag.
2485
2485
  * {{ react }}
2486
2486
  */
@@ -2509,7 +2509,7 @@ class Puppeteer extends Helper {
2509
2509
  * ```js
2510
2510
  * let hints = await I.grabAttributeFromAll('.tooltip', 'title');
2511
2511
  * ```
2512
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2512
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2513
2513
  * @param {string} attr attribute name.
2514
2514
  * @returns {Promise<string[]>} attribute value
2515
2515
  *
@@ -2533,7 +2533,7 @@ class Puppeteer extends Helper {
2533
2533
  * ```js
2534
2534
  * let hint = await I.grabAttributeFrom('#tooltip', 'title');
2535
2535
  * ```
2536
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2536
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2537
2537
  * @param {string} attr attribute name.
2538
2538
  * @returns {Promise<string>} attribute value
2539
2539
  *
@@ -2557,7 +2557,7 @@ class Puppeteer extends Helper {
2557
2557
  * I.saveElementScreenshot(`#submit`,'debug.png');
2558
2558
  * ```
2559
2559
  *
2560
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2560
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2561
2561
  * @param {string} fileName file name to save.
2562
2562
  *
2563
2563
  */
@@ -2629,7 +2629,7 @@ class Puppeteer extends Helper {
2629
2629
  * Waits for element to become enabled (by default waits for 1sec).
2630
2630
  * Element can be located by CSS or XPath.
2631
2631
  *
2632
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2632
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2633
2633
  * @param {number} [sec=1] (optional) time in seconds to wait, 1 by default.
2634
2634
  */
2635
2635
  async waitForEnabled(locator, sec) {
@@ -2666,7 +2666,7 @@ class Puppeteer extends Helper {
2666
2666
  * I.waitForValue('//input', "GoodValue");
2667
2667
  * ```
2668
2668
  *
2669
- * @param {string | object} field input field.
2669
+ * @param {LocatorOrString} field input field.
2670
2670
  * @param {string }value expected value.
2671
2671
  * @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
2672
2672
  *
@@ -2706,7 +2706,7 @@ class Puppeteer extends Helper {
2706
2706
  * I.waitNumberOfVisibleElements('a', 3);
2707
2707
  * ```
2708
2708
  *
2709
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2709
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2710
2710
  * @param {number} num number of elements.
2711
2711
  * @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
2712
2712
  * {{ react }}
@@ -2747,7 +2747,7 @@ class Puppeteer extends Helper {
2747
2747
  * I.waitForClickable('.btn.continue', 5); // wait for 5 secs
2748
2748
  * ```
2749
2749
  *
2750
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2750
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2751
2751
  * @param {number} [sec] (optional, `1` by default) time in seconds to wait
2752
2752
  */
2753
2753
  async waitForClickable(locator, waitTimeout) {
@@ -2772,7 +2772,7 @@ class Puppeteer extends Helper {
2772
2772
  * I.waitForElement('.btn.continue', 5); // wait for 5 secs
2773
2773
  * ```
2774
2774
  *
2775
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2775
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2776
2776
  * @param {number} [sec] (optional, `1` by default) time in seconds to wait
2777
2777
  * {{ react }}
2778
2778
  */
@@ -2800,7 +2800,7 @@ class Puppeteer extends Helper {
2800
2800
  * I.waitForVisible('#popup');
2801
2801
  * ```
2802
2802
  *
2803
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2803
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2804
2804
  * @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
2805
2805
  *
2806
2806
  *
@@ -2830,7 +2830,7 @@ class Puppeteer extends Helper {
2830
2830
  * I.waitForInvisible('#popup');
2831
2831
  * ```
2832
2832
  *
2833
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2833
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2834
2834
  * @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
2835
2835
  */
2836
2836
  async waitForInvisible(locator, sec) {
@@ -2857,7 +2857,7 @@ class Puppeteer extends Helper {
2857
2857
  * I.waitToHide('#popup');
2858
2858
  * ```
2859
2859
  *
2860
- * @param {string | object} locator element located by CSS|XPath|strict locator.
2860
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
2861
2861
  * @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
2862
2862
  */
2863
2863
  async waitToHide(locator, sec) {
@@ -2952,7 +2952,7 @@ class Puppeteer extends Helper {
2952
2952
  *
2953
2953
  * @param {string }text to wait for.
2954
2954
  * @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
2955
- * @param {string | object} [context] (optional) element located by CSS|XPath|strict locator.
2955
+ * @param {CodeceptJS.LocatorOrString} [context] (optional) element located by CSS|XPath|strict locator.
2956
2956
  */
2957
2957
  async waitForText(text, sec = null, context = null) {
2958
2958
  const waitTimeout = sec ? sec * 1000 : this.options.waitForTimeout;
@@ -3027,7 +3027,7 @@ class Puppeteer extends Helper {
3027
3027
  * I.switchTo(); // switch back to main page
3028
3028
  * ```
3029
3029
  *
3030
- * @param {?string | object} [locator=null] (optional, `null` by default) element located by CSS|XPath|strict locator.
3030
+ * @param {?CodeceptJS.LocatorOrString} [locator=null] (optional, `null` by default) element located by CSS|XPath|strict locator.
3031
3031
  */
3032
3032
  async switchTo(locator) {
3033
3033
  if (Number.isInteger(locator)) {
@@ -3128,7 +3128,7 @@ class Puppeteer extends Helper {
3128
3128
  * I.waitForDetached('#popup');
3129
3129
  * ```
3130
3130
  *
3131
- * @param {string | object} locator element located by CSS|XPath|strict locator.
3131
+ * @param {CodeceptJS.LocatorOrString} locator element located by CSS|XPath|strict locator.
3132
3132
  * @param {number} [sec=1] (optional, `1` by default) time in seconds to wait
3133
3133
  */
3134
3134
  async waitForDetached(locator, sec) {
@@ -3201,7 +3201,7 @@ class Puppeteer extends Helper {
3201
3201
  * const width = await I.grabElementBoundingRect('h3', 'width');
3202
3202
  * // width == 527
3203
3203
  * ```
3204
- * @param {string | object} locator element located by CSS|XPath|strict locator.
3204
+ * @param {LocatorOrString} locator element located by CSS|XPath|strict locator.
3205
3205
  * @param {string=} elementSize x, y, width or height of the given element.
3206
3206
  * @returns {Promise<DOMRect>|Promise<number>} Element bounding rectangle
3207
3207
  *