-
Notifications
You must be signed in to change notification settings - Fork 1
/
puppeteer-browser-ready.d.ts
48 lines (47 loc) · 1.44 KB
/
puppeteer-browser-ready.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//! puppeteer-browser-ready v1.3.5 ~~ https://github.com/center-key/puppeteer-browser-ready ~~ MIT License
import { Browser, HTTPResponse, Page } from 'puppeteer';
import { HTMLElement } from 'node-html-parser';
import { Server } from 'http';
import { SuiteFunction } from 'mocha';
import httpTerminator from 'http-terminator';
export type StartWebServerSettings = {
folder: string;
port: number;
verbose: boolean;
autoCleanup: boolean;
};
export type StartWebServerOptions = Partial<StartWebServerSettings>;
export type Http = {
server: Server;
terminator: httpTerminator.HttpTerminator;
folder: string;
url: string;
port: number;
verbose: boolean;
};
export type Web = {
browser: Browser;
page: Page;
response: HTTPResponse | null;
status: number | null;
location: Location;
title: string | null;
html: string | null;
root: HTMLElement | null;
};
export type BrowserReadySettings = {
parseHtml: boolean;
verbose: boolean;
};
export type BrowserReadyOptions = Partial<BrowserReadySettings>;
declare global {
var describe: SuiteFunction;
}
declare const browserReady: {
log(...args: unknown[]): void;
startWebServer(options?: StartWebServerOptions): Promise<Http>;
shutdownWebServer(http: Http): Promise<void>;
goto(url: string, options?: BrowserReadyOptions): (browser: Browser) => Promise<Web>;
close(web: Web | null): Promise<Web | null>;
};
export { browserReady };