cypress 8.4.0 → 8.7.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/lib/cypress.js +18 -0
- package/lib/tasks/download.js +6 -4
- package/package.json +2 -1
- package/types/cy-bluebird.d.ts +3 -2
- package/types/cypress-npm-api.d.ts +19 -0
- package/types/cypress.d.ts +101 -96
    
        package/lib/cypress.js
    CHANGED
    
    | @@ -70,6 +70,24 @@ const cypressModuleApi = { | |
| 70 70 | 
             
                  return cli.parseRunCommand(args);
         | 
| 71 71 | 
             
                }
         | 
| 72 72 |  | 
| 73 | 
            +
              },
         | 
| 74 | 
            +
             | 
| 75 | 
            +
              /**
         | 
| 76 | 
            +
               * Provides automatic code completion for configuration in many popular code editors.
         | 
| 77 | 
            +
               * While it's not strictly necessary for Cypress to parse your configuration, we
         | 
| 78 | 
            +
               * recommend wrapping your config object with `defineConfig()`
         | 
| 79 | 
            +
               * @example
         | 
| 80 | 
            +
               * module.exports = defineConfig({
         | 
| 81 | 
            +
               *   viewportWith: 400
         | 
| 82 | 
            +
               * })
         | 
| 83 | 
            +
               *
         | 
| 84 | 
            +
               * @see ../types/cypress-npm-api.d.ts
         | 
| 85 | 
            +
               * @param {Cypress.ConfigOptions} config
         | 
| 86 | 
            +
               * @returns {Cypress.ConfigOptions} the configuration passed in parameter
         | 
| 87 | 
            +
               */
         | 
| 88 | 
            +
              defineConfig(config) {
         | 
| 89 | 
            +
                return config;
         | 
| 73 90 | 
             
              }
         | 
| 91 | 
            +
             | 
| 74 92 | 
             
            };
         | 
| 75 93 | 
             
            module.exports = cypressModuleApi;
         | 
    
        package/lib/tasks/download.js
    CHANGED
    
    | @@ -24,6 +24,8 @@ const { | |
| 24 24 | 
             
              stripIndent
         | 
| 25 25 | 
             
            } = require('common-tags');
         | 
| 26 26 |  | 
| 27 | 
            +
            const getProxyForUrl = require('proxy-from-env').getProxyForUrl;
         | 
| 28 | 
            +
             | 
| 27 29 | 
             
            const {
         | 
| 28 30 | 
             
              throwFormErrorText,
         | 
| 29 31 | 
             
              errors
         | 
| @@ -35,8 +37,8 @@ const util = require('../util'); | |
| 35 37 |  | 
| 36 38 | 
             
            const defaultBaseUrl = 'https://download.cypress.io/';
         | 
| 37 39 |  | 
| 38 | 
            -
            const  | 
| 39 | 
            -
              return  | 
| 40 | 
            +
            const getProxyForUrlWithNpmConfig = url => {
         | 
| 41 | 
            +
              return getProxyForUrl(url) || process.env.npm_config_https_proxy || process.env.npm_config_proxy || null;
         | 
| 40 42 | 
             
            };
         | 
| 41 43 |  | 
| 42 44 | 
             
            const getRealOsArch = () => {
         | 
| @@ -198,7 +200,7 @@ const downloadFromUrl = ({ | |
| 198 200 | 
             
              ca
         | 
| 199 201 | 
             
            }) => {
         | 
| 200 202 | 
             
              return new Promise((resolve, reject) => {
         | 
| 201 | 
            -
                const proxy =  | 
| 203 | 
            +
                const proxy = getProxyForUrlWithNpmConfig(url);
         | 
| 202 204 | 
             
                debug('Downloading package', {
         | 
| 203 205 | 
             
                  url,
         | 
| 204 206 | 
             
                  proxy,
         | 
| @@ -338,6 +340,6 @@ const start = opts => { | |
| 338 340 | 
             
            module.exports = {
         | 
| 339 341 | 
             
              start,
         | 
| 340 342 | 
             
              getUrl,
         | 
| 341 | 
            -
               | 
| 343 | 
            +
              getProxyForUrlWithNpmConfig,
         | 
| 342 344 | 
             
              getCA
         | 
| 343 345 | 
             
            };
         | 
    
        package/package.json
    CHANGED
    
    | @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            {
         | 
| 2 2 | 
             
              "name": "cypress",
         | 
| 3 | 
            -
              "version": "8. | 
| 3 | 
            +
              "version": "8.7.0",
         | 
| 4 4 | 
             
              "main": "index.js",
         | 
| 5 5 | 
             
              "scripts": {
         | 
| 6 6 | 
             
                "postinstall": "node index.js --exec install",
         | 
| @@ -41,6 +41,7 @@ | |
| 41 41 | 
             
                "minimist": "^1.2.5",
         | 
| 42 42 | 
             
                "ospath": "^1.2.2",
         | 
| 43 43 | 
             
                "pretty-bytes": "^5.6.0",
         | 
| 44 | 
            +
                "proxy-from-env": "1.0.0",
         | 
| 44 45 | 
             
                "ramda": "~0.27.1",
         | 
| 45 46 | 
             
                "request-progress": "^3.0.0",
         | 
| 46 47 | 
             
                "supports-color": "^8.1.1",
         | 
    
        package/types/cy-bluebird.d.ts
    CHANGED
    
    | @@ -1,11 +1,12 @@ | |
| 1 1 | 
             
            // Shim definition to export a namespace. Cypress is actually a global module
         | 
| 2 2 | 
             
            // so import/export isn't allowed there. We import here and define a global module
         | 
| 3 3 | 
             
            // so that Cypress can get and use the Blob type
         | 
| 4 | 
            -
            import  | 
| 4 | 
            +
            import ImportedBluebird = require('./bluebird')
         | 
| 5 5 |  | 
| 6 6 | 
             
            export = Bluebird
         | 
| 7 7 | 
             
            export as namespace Bluebird
         | 
| 8 8 |  | 
| 9 9 | 
             
            declare namespace Bluebird {
         | 
| 10 | 
            -
              type BluebirdStatic = typeof  | 
| 10 | 
            +
              type BluebirdStatic = typeof ImportedBluebird
         | 
| 11 | 
            +
              interface Promise<T> extends ImportedBluebird<T> {}
         | 
| 11 12 | 
             
            }
         | 
| @@ -91,6 +91,10 @@ declare namespace CypressCommandLine { | |
| 91 91 | 
             
                 * Specify mocha reporter options
         | 
| 92 92 | 
             
                 */
         | 
| 93 93 | 
             
                reporterOptions: any
         | 
| 94 | 
            +
                /**
         | 
| 95 | 
            +
                 * Slow test threshold in milliseconds. Only affects the visual output of some reporters. For example, the spec reporter will display the test time in yellow if over the threshold.
         | 
| 96 | 
            +
                 */
         | 
| 97 | 
            +
                slowTestThreshold: number
         | 
| 94 98 | 
             
                /**
         | 
| 95 99 | 
             
                 * Specify the specs to run
         | 
| 96 100 | 
             
                 */
         | 
| @@ -377,6 +381,21 @@ declare module 'cypress' { | |
| 377 381 | 
             
                 * Cypress does
         | 
| 378 382 | 
             
                 */
         | 
| 379 383 | 
             
                cli: CypressCommandLine.CypressCliParser
         | 
| 384 | 
            +
             | 
| 385 | 
            +
                /**
         | 
| 386 | 
            +
                 * Provides automatic code completion for configuration in many popular code editors.
         | 
| 387 | 
            +
                 * While it's not strictly necessary for Cypress to parse your configuration, we
         | 
| 388 | 
            +
                 * recommend wrapping your config object with `defineConfig()`
         | 
| 389 | 
            +
                 * @example
         | 
| 390 | 
            +
                 * module.exports = defineConfig({
         | 
| 391 | 
            +
                 *   viewportWith: 400
         | 
| 392 | 
            +
                 * })
         | 
| 393 | 
            +
                 *
         | 
| 394 | 
            +
                 * @see ../types/cypress-npm-api.d.ts
         | 
| 395 | 
            +
                 * @param {Cypress.ConfigOptions} config
         | 
| 396 | 
            +
                 * @returns {Cypress.ConfigOptions} the configuration passed in parameter
         | 
| 397 | 
            +
                 */
         | 
| 398 | 
            +
                defineConfig(config: Cypress.ConfigOptions): Cypress.ConfigOptions
         | 
| 380 399 | 
             
              }
         | 
| 381 400 |  | 
| 382 401 | 
             
              // export Cypress NPM module interface
         | 
    
        package/types/cypress.d.ts
    CHANGED
    
    | @@ -168,7 +168,12 @@ declare namespace Cypress { | |
| 168 168 | 
             
              /**
         | 
| 169 169 | 
             
               * The interface for user-defined properties in Window object under test.
         | 
| 170 170 | 
             
               */
         | 
| 171 | 
            -
              interface ApplicationWindow {} // tslint:disable-line
         | 
| 171 | 
            +
              interface ApplicationWindow { } // tslint:disable-line
         | 
| 172 | 
            +
             | 
| 173 | 
            +
              /**
         | 
| 174 | 
            +
               * The configuration for Cypress.
         | 
| 175 | 
            +
               */
         | 
| 176 | 
            +
              type Config = ResolvedConfigOptions & RuntimeConfigOptions
         | 
| 172 177 |  | 
| 173 178 | 
             
              /**
         | 
| 174 179 | 
             
               * Several libraries are bundled with Cypress by default.
         | 
| @@ -297,7 +302,7 @@ declare namespace Cypress { | |
| 297 302 | 
             
                /**
         | 
| 298 303 | 
             
                 * Fire automation:request event for internal use.
         | 
| 299 304 | 
             
                 */
         | 
| 300 | 
            -
                automation(eventName: string, ...args: any[]): Promise<any>
         | 
| 305 | 
            +
                automation(eventName: string, ...args: any[]): Bluebird.Promise<any>
         | 
| 301 306 |  | 
| 302 307 | 
             
                /**
         | 
| 303 308 | 
             
                 * Promise wrapper for certain internal tasks.
         | 
| @@ -313,7 +318,7 @@ declare namespace Cypress { | |
| 313 318 | 
             
                // {defaultCommandTimeout: 10000, pageLoadTimeout: 30000, ...}
         | 
| 314 319 | 
             
                ```
         | 
| 315 320 | 
             
                 */
         | 
| 316 | 
            -
                config():  | 
| 321 | 
            +
                config(): Config
         | 
| 317 322 | 
             
                /**
         | 
| 318 323 | 
             
                 * Returns one configuration value.
         | 
| 319 324 | 
             
                 * @see https://on.cypress.io/config
         | 
| @@ -521,7 +526,7 @@ declare namespace Cypress { | |
| 521 526 | 
             
                /**
         | 
| 522 527 | 
             
                 * @see https://on.cypress.io/keyboard-api
         | 
| 523 528 | 
             
                 */
         | 
| 524 | 
            -
             | 
| 529 | 
            +
                Keyboard: {
         | 
| 525 530 | 
             
                  defaults(options: Partial<KeyboardDefaultsOptions>): void
         | 
| 526 531 | 
             
                }
         | 
| 527 532 |  | 
| @@ -579,7 +584,7 @@ declare namespace Cypress { | |
| 579 584 | 
             
              }
         | 
| 580 585 |  | 
| 581 586 | 
             
              interface SessionOptions {
         | 
| 582 | 
            -
                validate?: () => false|void
         | 
| 587 | 
            +
                validate?: () => false | void
         | 
| 583 588 | 
             
              }
         | 
| 584 589 |  | 
| 585 590 | 
             
              type CanReturnChainable = void | Chainable | Promise<unknown>
         | 
| @@ -717,36 +722,36 @@ declare namespace Cypress { | |
| 717 722 | 
             
                ```
         | 
| 718 723 | 
             
                 */
         | 
| 719 724 | 
             
                clearLocalStorage(re: RegExp): Chainable<Storage>
         | 
| 720 | 
            -
             | 
| 721 | 
            -
             | 
| 722 | 
            -
             | 
| 723 | 
            -
             | 
| 724 | 
            -
             | 
| 725 | 
            -
             | 
| 726 | 
            -
             | 
| 727 | 
            -
             | 
| 728 | 
            -
             | 
| 729 | 
            -
             | 
| 730 | 
            -
             | 
| 731 | 
            -
             | 
| 732 | 
            -
             | 
| 733 | 
            -
             | 
| 725 | 
            +
                /**
         | 
| 726 | 
            +
                  * Clear data in local storage.
         | 
| 727 | 
            +
                  * Cypress automatically runs this command before each test to prevent state from being
         | 
| 728 | 
            +
                  * shared across tests. You shouldn’t need to use this command unless you’re using it
         | 
| 729 | 
            +
                  * to clear localStorage inside a single test. Yields `localStorage` object.
         | 
| 730 | 
            +
                  *
         | 
| 731 | 
            +
                  * @see https://on.cypress.io/clearlocalstorage
         | 
| 732 | 
            +
                  * @param {options} [object] - options object
         | 
| 733 | 
            +
                  * @example
         | 
| 734 | 
            +
                   ```
         | 
| 735 | 
            +
                   // Removes all local storage items, without logging
         | 
| 736 | 
            +
                   cy.clearLocalStorage({ log: false })
         | 
| 737 | 
            +
                   ```
         | 
| 738 | 
            +
                  */
         | 
| 734 739 | 
             
                clearLocalStorage(options: Partial<Loggable>): Chainable<Storage>
         | 
| 735 | 
            -
             | 
| 736 | 
            -
             | 
| 737 | 
            -
             | 
| 738 | 
            -
             | 
| 739 | 
            -
             | 
| 740 | 
            -
             | 
| 741 | 
            -
             | 
| 742 | 
            -
             | 
| 743 | 
            -
             | 
| 744 | 
            -
             | 
| 745 | 
            -
             | 
| 746 | 
            -
             | 
| 747 | 
            -
             | 
| 748 | 
            -
             | 
| 749 | 
            -
             | 
| 740 | 
            +
                /**
         | 
| 741 | 
            +
                  * Clear data in local storage.
         | 
| 742 | 
            +
                  * Cypress automatically runs this command before each test to prevent state from being
         | 
| 743 | 
            +
                  * shared across tests. You shouldn’t need to use this command unless you’re using it
         | 
| 744 | 
            +
                  * to clear localStorage inside a single test. Yields `localStorage` object.
         | 
| 745 | 
            +
                  *
         | 
| 746 | 
            +
                  * @see https://on.cypress.io/clearlocalstorage
         | 
| 747 | 
            +
                  * @param {string} [key] - name of a particular item to remove (optional).
         | 
| 748 | 
            +
                  * @param {options} [object] - options object
         | 
| 749 | 
            +
                  * @example
         | 
| 750 | 
            +
                   ```
         | 
| 751 | 
            +
                   // Removes item "todos" without logging
         | 
| 752 | 
            +
                   cy.clearLocalStorage("todos", { log: false })
         | 
| 753 | 
            +
                   ```
         | 
| 754 | 
            +
                  */
         | 
| 750 755 | 
             
                clearLocalStorage(key: string, options: Partial<Loggable>): Chainable<Storage>
         | 
| 751 756 |  | 
| 752 757 | 
             
                /**
         | 
| @@ -834,7 +839,7 @@ declare namespace Cypress { | |
| 834 839 | 
             
                 *    // or use this shortcut
         | 
| 835 840 | 
             
                 *    cy.clock().invoke('restore')
         | 
| 836 841 | 
             
                 */
         | 
| 837 | 
            -
                clock(now: number|Date, options?: Loggable): Chainable<Clock>
         | 
| 842 | 
            +
                clock(now: number | Date, options?: Loggable): Chainable<Clock>
         | 
| 838 843 | 
             
                /**
         | 
| 839 844 | 
             
                 * Mocks global clock but only overrides specific functions.
         | 
| 840 845 | 
             
                 *
         | 
| @@ -843,7 +848,7 @@ declare namespace Cypress { | |
| 843 848 | 
             
                 *    // keep current date but override "setTimeout" and "clearTimeout"
         | 
| 844 849 | 
             
                 *    cy.clock(null, ['setTimeout', 'clearTimeout'])
         | 
| 845 850 | 
             
                 */
         | 
| 846 | 
            -
                clock(now: number|Date, functions?: Array<'setTimeout' | 'clearTimeout' | 'setInterval' | 'clearInterval' | 'Date'>, options?: Loggable): Chainable<Clock>
         | 
| 851 | 
            +
                clock(now: number | Date, functions?: Array<'setTimeout' | 'clearTimeout' | 'setInterval' | 'clearInterval' | 'Date'>, options?: Loggable): Chainable<Clock>
         | 
| 847 852 | 
             
                /**
         | 
| 848 853 | 
             
                 * Mocks global clock and all functions.
         | 
| 849 854 | 
             
                 *
         | 
| @@ -977,14 +982,14 @@ declare namespace Cypress { | |
| 977 982 | 
             
                 */
         | 
| 978 983 | 
             
                debug(options?: Partial<Loggable>): Chainable<Subject>
         | 
| 979 984 |  | 
| 980 | 
            -
             | 
| 981 | 
            -
             | 
| 982 | 
            -
             | 
| 983 | 
            -
             | 
| 984 | 
            -
             | 
| 985 | 
            -
             | 
| 986 | 
            -
             | 
| 987 | 
            -
                session(id: string|object, setup?: SessionOptions['validate'], options?: SessionOptions): Chainable<null>
         | 
| 985 | 
            +
                /**
         | 
| 986 | 
            +
                  * Save/Restore browser Cookies, LocalStorage, and SessionStorage data resulting from the supplied `setup` function.
         | 
| 987 | 
            +
                  *
         | 
| 988 | 
            +
                  * Only available if the `experimentalSessionSupport` config option is enabled.
         | 
| 989 | 
            +
                  *
         | 
| 990 | 
            +
                  * @see https://on.cypress.io/session
         | 
| 991 | 
            +
                  */
         | 
| 992 | 
            +
                session(id: string | object, setup?: SessionOptions['validate'], options?: SessionOptions): Chainable<null>
         | 
| 988 993 |  | 
| 989 994 | 
             
                /**
         | 
| 990 995 | 
             
                 * Get the window.document of the page that is currently active.
         | 
| @@ -1648,17 +1653,11 @@ declare namespace Cypress { | |
| 1648 1653 | 
             
                scrollTo(x: number | string, y: number | string, options?: Partial<ScrollToOptions>): Chainable<Subject>
         | 
| 1649 1654 |  | 
| 1650 1655 | 
             
                /**
         | 
| 1651 | 
            -
                 * Select an `<option>` with specific text within a `<select>`.
         | 
| 1652 | 
            -
                 *
         | 
| 1653 | 
            -
                 * @see https://on.cypress.io/select
         | 
| 1654 | 
            -
                 */
         | 
| 1655 | 
            -
                select(text: string | string[], options?: Partial<SelectOptions>): Chainable<Subject>
         | 
| 1656 | 
            -
                /**
         | 
| 1657 | 
            -
                 * Select an `<option>` with specific value(s) within a `<select>`.
         | 
| 1656 | 
            +
                 * Select an `<option>` with specific text, value, or index within a `<select>`.
         | 
| 1658 1657 | 
             
                 *
         | 
| 1659 1658 | 
             
                 * @see https://on.cypress.io/select
         | 
| 1660 1659 | 
             
                 */
         | 
| 1661 | 
            -
                select( | 
| 1660 | 
            +
                select(valueOrTextOrIndex: string | number | Array<string | number>, options?: Partial<SelectOptions>): Chainable<Subject>
         | 
| 1662 1661 |  | 
| 1663 1662 | 
             
                /**
         | 
| 1664 1663 | 
             
                 * @deprecated Use `cy.intercept()` instead.
         | 
| @@ -1909,13 +1908,13 @@ declare namespace Cypress { | |
| 1909 1908 | 
             
                 *
         | 
| 1910 1909 | 
             
                 * @see https://on.cypress.io/then
         | 
| 1911 1910 | 
             
                 */
         | 
| 1912 | 
            -
             | 
| 1913 | 
            -
             | 
| 1914 | 
            -
             | 
| 1915 | 
            -
             | 
| 1916 | 
            -
             | 
| 1917 | 
            -
             | 
| 1918 | 
            -
             | 
| 1911 | 
            +
                then<S extends HTMLElement>(options: Partial<Timeoutable>, fn: (this: ObjectLike, currentSubject: Subject) => S): Chainable<JQuery<S>>
         | 
| 1912 | 
            +
                /**
         | 
| 1913 | 
            +
                 * Enables you to work with the subject yielded from the previous command / promise.
         | 
| 1914 | 
            +
                 *
         | 
| 1915 | 
            +
                 * @see https://on.cypress.io/then
         | 
| 1916 | 
            +
                 */
         | 
| 1917 | 
            +
                then<S extends ArrayLike<HTMLElement>>(options: Partial<Timeoutable>, fn: (this: ObjectLike, currentSubject: Subject) => S): Chainable<JQuery<S extends ArrayLike<infer T> ? T : never>>
         | 
| 1919 1918 | 
             
                /**
         | 
| 1920 1919 | 
             
                 * Enables you to work with the subject yielded from the previous command / promise.
         | 
| 1921 1920 | 
             
                 *
         | 
| @@ -2578,6 +2577,11 @@ declare namespace Cypress { | |
| 2578 2577 | 
             
                 * @default "spec"
         | 
| 2579 2578 | 
             
                 */
         | 
| 2580 2579 | 
             
                reporterOptions: { [key: string]: any }
         | 
| 2580 | 
            +
                /**
         | 
| 2581 | 
            +
                 * Slow test threshold in milliseconds. Only affects the visual output of some reporters. For example, the spec reporter will display the test time in yellow if over the threshold.
         | 
| 2582 | 
            +
                 * @default 10000
         | 
| 2583 | 
            +
                 */
         | 
| 2584 | 
            +
                slowTestThreshold: number
         | 
| 2581 2585 | 
             
                /**
         | 
| 2582 2586 | 
             
                 * Whether Cypress will watch and restart tests on test file changes
         | 
| 2583 2587 | 
             
                 * @default true
         | 
| @@ -2754,7 +2758,7 @@ declare namespace Cypress { | |
| 2754 2758 | 
             
                 * To enable test retries only in runMode, set e.g. `{ openMode: null, runMode: 2 }`
         | 
| 2755 2759 | 
             
                 * @default null
         | 
| 2756 2760 | 
             
                 */
         | 
| 2757 | 
            -
                retries: Nullable<number | {runMode?: Nullable<number>, openMode?: Nullable<number>}>
         | 
| 2761 | 
            +
                retries: Nullable<number | { runMode?: Nullable<number>, openMode?: Nullable<number> }>
         | 
| 2758 2762 | 
             
                /**
         | 
| 2759 2763 | 
             
                 * Enables including elements within the shadow DOM when using querying
         | 
| 2760 2764 | 
             
                 * commands (e.g. cy.get(), cy.find()). Can be set globally in cypress.json,
         | 
| @@ -2876,7 +2880,7 @@ declare namespace Cypress { | |
| 2876 2880 | 
             
                socketId: null | string
         | 
| 2877 2881 | 
             
                socketIoCookie: string
         | 
| 2878 2882 | 
             
                socketIoRoute: string
         | 
| 2879 | 
            -
                spec: Cypress['spec']
         | 
| 2883 | 
            +
                spec: Cypress['spec'] | null
         | 
| 2880 2884 | 
             
                specs: Array<Cypress['spec']>
         | 
| 2881 2885 | 
             
                xhrRoute: string
         | 
| 2882 2886 | 
             
                xhrUrl: string
         | 
| @@ -2891,7 +2895,7 @@ declare namespace Cypress { | |
| 2891 2895 | 
             
               * All configuration items are optional.
         | 
| 2892 2896 | 
             
               */
         | 
| 2893 2897 | 
             
              type CoreConfigOptions = Partial<Omit<ResolvedConfigOptions, TestingType>>
         | 
| 2894 | 
            -
              type ConfigOptions = CoreConfigOptions & {e2e?: CoreConfigOptions, component?: CoreConfigOptions }
         | 
| 2898 | 
            +
              type ConfigOptions = CoreConfigOptions & { e2e?: CoreConfigOptions, component?: CoreConfigOptions }
         | 
| 2895 2899 |  | 
| 2896 2900 | 
             
              interface PluginConfigOptions extends ResolvedConfigOptions {
         | 
| 2897 2901 | 
             
                /**
         | 
| @@ -2998,6 +3002,7 @@ declare namespace Cypress { | |
| 2998 3002 | 
             
                disableTimersAndAnimations: boolean
         | 
| 2999 3003 | 
             
                padding: Padding
         | 
| 3000 3004 | 
             
                scale: boolean
         | 
| 3005 | 
            +
                overwrite: boolean
         | 
| 3001 3006 | 
             
                onBeforeScreenshot: ($el: JQuery) => void
         | 
| 3002 3007 | 
             
                onAfterScreenshot: ($el: JQuery, props: {
         | 
| 3003 3008 | 
             
                  path: string
         | 
| @@ -5703,48 +5708,48 @@ declare namespace Cypress { | |
| 5703 5708 | 
             
              }
         | 
| 5704 5709 | 
             
              ```
         | 
| 5705 5710 | 
             
               */
         | 
| 5706 | 
            -
              interface cy extends Chainable<undefined> {}
         | 
| 5711 | 
            +
              interface cy extends Chainable<undefined> { }
         | 
| 5707 5712 | 
             
            }
         | 
| 5708 5713 |  | 
| 5709 5714 | 
             
            declare namespace Mocha {
         | 
| 5710 5715 | 
             
              interface TestFunction {
         | 
| 5711 | 
            -
             | 
| 5712 | 
            -
             | 
| 5713 | 
            -
             | 
| 5714 | 
            -
             | 
| 5715 | 
            -
             | 
| 5716 | 
            -
             | 
| 5717 | 
            -
             | 
| 5718 | 
            -
             | 
| 5719 | 
            -
             | 
| 5720 | 
            -
             | 
| 5721 | 
            -
             | 
| 5716 | 
            +
                /**
         | 
| 5717 | 
            +
                 * Describe a specification or test-case with the given `title`, TestOptions, and callback `fn` acting
         | 
| 5718 | 
            +
                 * as a thunk.
         | 
| 5719 | 
            +
                 */
         | 
| 5720 | 
            +
                (title: string, config: Cypress.TestConfigOverrides, fn?: Func): Test
         | 
| 5721 | 
            +
             | 
| 5722 | 
            +
                /**
         | 
| 5723 | 
            +
                 * Describe a specification or test-case with the given `title`, TestOptions, and callback `fn` acting
         | 
| 5724 | 
            +
                 * as a thunk.
         | 
| 5725 | 
            +
                 */
         | 
| 5726 | 
            +
                (title: string, config: Cypress.TestConfigOverrides, fn?: AsyncFunc): Test
         | 
| 5722 5727 | 
             
              }
         | 
| 5723 5728 | 
             
              interface ExclusiveTestFunction {
         | 
| 5724 | 
            -
             | 
| 5725 | 
            -
             | 
| 5726 | 
            -
             | 
| 5727 | 
            -
             | 
| 5728 | 
            -
             | 
| 5729 | 
            -
             | 
| 5730 | 
            -
             | 
| 5731 | 
            -
             | 
| 5732 | 
            -
             | 
| 5733 | 
            -
             | 
| 5734 | 
            -
             | 
| 5729 | 
            +
                /**
         | 
| 5730 | 
            +
                 * Describe a specification or test-case with the given `title`, TestOptions, and callback `fn` acting
         | 
| 5731 | 
            +
                 * as a thunk.
         | 
| 5732 | 
            +
                 */
         | 
| 5733 | 
            +
                (title: string, config: Cypress.TestConfigOverrides, fn?: Func): Test
         | 
| 5734 | 
            +
             | 
| 5735 | 
            +
                /**
         | 
| 5736 | 
            +
                 * Describe a specification or test-case with the given `title`, TestOptions, and callback `fn` acting
         | 
| 5737 | 
            +
                 * as a thunk.
         | 
| 5738 | 
            +
                 */
         | 
| 5739 | 
            +
                (title: string, config: Cypress.TestConfigOverrides, fn?: AsyncFunc): Test
         | 
| 5735 5740 | 
             
              }
         | 
| 5736 5741 | 
             
              interface PendingTestFunction {
         | 
| 5737 | 
            -
             | 
| 5738 | 
            -
             | 
| 5739 | 
            -
             | 
| 5740 | 
            -
             | 
| 5741 | 
            -
             | 
| 5742 | 
            -
             | 
| 5743 | 
            -
             | 
| 5744 | 
            -
             | 
| 5745 | 
            -
             | 
| 5746 | 
            -
             | 
| 5747 | 
            -
             | 
| 5742 | 
            +
                /**
         | 
| 5743 | 
            +
                 * Describe a specification or test-case with the given `title`, TestOptions, and callback `fn` acting
         | 
| 5744 | 
            +
                 * as a thunk.
         | 
| 5745 | 
            +
                 */
         | 
| 5746 | 
            +
                (title: string, config: Cypress.TestConfigOverrides, fn?: Func): Test
         | 
| 5747 | 
            +
             | 
| 5748 | 
            +
                /**
         | 
| 5749 | 
            +
                 * Describe a specification or test-case with the given `title`, TestOptions, and callback `fn` acting
         | 
| 5750 | 
            +
                 * as a thunk.
         | 
| 5751 | 
            +
                 */
         | 
| 5752 | 
            +
                (title: string, config: Cypress.TestConfigOverrides, fn?: AsyncFunc): Test
         | 
| 5748 5753 | 
             
              }
         | 
| 5749 5754 |  | 
| 5750 5755 | 
             
              interface SuiteFunction {
         |