1 |
|
2 | import type { MatchImageSnapshotOptions } from 'jest-image-snapshot';
|
3 | import type { ScreenshotOptions, Browser, Page, ElementHandle, LaunchOptions } from 'puppeteer';
|
4 | type PuppeteerLifeCycleEvent = 'load' | 'domcontentloaded' | 'networkidle0' | 'networkidle2';
|
5 | export interface Context {
|
6 | kind: string;
|
7 | story: string;
|
8 | parameters: {
|
9 | [key: string]: any;
|
10 | };
|
11 | }
|
12 | interface Options {
|
13 | context: Context;
|
14 | url: string;
|
15 | }
|
16 | interface Base64ScreenShotOptions extends ScreenshotOptions {
|
17 | encoding: 'base64';
|
18 | }
|
19 | interface DirectNavigationOptions {
|
20 | referer?: string;
|
21 | timeout?: number;
|
22 | waitUntil?: PuppeteerLifeCycleEvent | PuppeteerLifeCycleEvent[];
|
23 | }
|
24 | export interface CommonConfig {
|
25 | storybookUrl: string;
|
26 | chromeExecutablePath?: string;
|
27 | getGotoOptions: (options: Options) => DirectNavigationOptions | undefined;
|
28 | customizePage: (page: Page) => Promise<void>;
|
29 | getCustomBrowser?: () => Promise<Browser>;
|
30 | |
31 |
|
32 |
|
33 |
|
34 | browserLaunchOptions: LaunchOptions;
|
35 | setupTimeout: number;
|
36 | testTimeout: number;
|
37 | }
|
38 | export interface PuppeteerTestConfig extends CommonConfig {
|
39 | testBody: ((page: Page, options: Options) => void | Promise<void>) & {
|
40 | filter?: (options: Options) => boolean;
|
41 | };
|
42 | }
|
43 | export interface ImageSnapshotConfig extends CommonConfig {
|
44 | getMatchOptions: (options: Options) => MatchImageSnapshotOptions | undefined;
|
45 | getScreenshotOptions: (options: Options) => Base64ScreenShotOptions;
|
46 | beforeScreenshot: (page: Page, options: Options) => Promise<void | ElementHandle>;
|
47 | afterScreenshot: (options: {
|
48 | image: string | void | Buffer;
|
49 | context: Context;
|
50 | }) => Promise<void>;
|
51 | }
|
52 | export interface AxeConfig extends CommonConfig {
|
53 | beforeAxeTest: (page: Page, options: Options) => Promise<void>;
|
54 | }
|
55 | export declare const defaultCommonConfig: CommonConfig;
|
56 | export declare const defaultPuppeteerTestConfig: PuppeteerTestConfig;
|
57 | export declare const defaultImageSnapshotConfig: ImageSnapshotConfig;
|
58 | export declare const defaultAxeConfig: AxeConfig;
|
59 | export {};
|