1 | export interface Client {
|
2 | Network: any;
|
3 | Page: any;
|
4 | DOM: any;
|
5 | Input: any;
|
6 | Runtime: any;
|
7 | Emulation: any;
|
8 | Storage: any;
|
9 | close: () => void;
|
10 | target: {
|
11 | id: string;
|
12 | };
|
13 | port: any;
|
14 | host: any;
|
15 | }
|
16 | export interface DeviceMetrics {
|
17 | width: number;
|
18 | height: number;
|
19 | deviceScaleFactor?: number;
|
20 | mobile?: boolean;
|
21 | scale?: number;
|
22 | screenOrientation?: ScreenOrientation;
|
23 | }
|
24 | export interface ScreenOrientation {
|
25 | type: string;
|
26 | angle: number;
|
27 | }
|
28 | export interface RemoteOptions {
|
29 | endpointUrl: string;
|
30 | apiKey?: string;
|
31 | }
|
32 | export interface CDPOptions {
|
33 | host?: string;
|
34 | port?: number;
|
35 | secure?: boolean;
|
36 | closeTab?: boolean;
|
37 | }
|
38 | export interface ChromelessOptions {
|
39 | debug?: boolean;
|
40 | waitTimeout?: number;
|
41 | implicitWait?: boolean;
|
42 | scrollBeforeClick?: boolean;
|
43 | viewport?: {
|
44 | width?: number;
|
45 | height?: number;
|
46 | scale?: number;
|
47 | };
|
48 | launchChrome?: boolean;
|
49 | cdp?: CDPOptions;
|
50 | remote?: RemoteOptions | boolean;
|
51 | }
|
52 | export interface Chrome {
|
53 | process<T extends any>(command: Command): Promise<T>;
|
54 | close(): Promise<void>;
|
55 | }
|
56 | export declare type Command = {
|
57 | type: 'goto';
|
58 | url: string;
|
59 | timeout?: number;
|
60 | } | {
|
61 | type: 'clearCache';
|
62 | } | {
|
63 | type: 'setViewport';
|
64 | options: DeviceMetrics;
|
65 | } | {
|
66 | type: 'setUserAgent';
|
67 | useragent: string;
|
68 | } | {
|
69 | type: 'wait';
|
70 | timeout?: number;
|
71 | selector?: string;
|
72 | fn?: string;
|
73 | args?: any[];
|
74 | } | {
|
75 | type: 'click';
|
76 | selector: string;
|
77 | } | {
|
78 | type: 'returnCode';
|
79 | fn: string;
|
80 | args?: any[];
|
81 | } | {
|
82 | type: 'returnInputValue';
|
83 | selector: string;
|
84 | } | {
|
85 | type: 'returnExists';
|
86 | selector: string;
|
87 | } | {
|
88 | type: 'returnValue';
|
89 | selector: string;
|
90 | } | {
|
91 | type: 'returnScreenshot';
|
92 | selector?: string;
|
93 | options?: ScreenshotOptions;
|
94 | } | {
|
95 | type: 'returnHtml';
|
96 | } | {
|
97 | type: 'returnHtmlUrl';
|
98 | } | {
|
99 | type: 'returnPdf';
|
100 | options?: PdfOptions;
|
101 | } | {
|
102 | type: 'scrollTo';
|
103 | x: number;
|
104 | y: number;
|
105 | } | {
|
106 | type: 'scrollToElement';
|
107 | selector: string;
|
108 | } | {
|
109 | type: 'setHtml';
|
110 | html: string;
|
111 | } | {
|
112 | type: 'setExtraHTTPHeaders';
|
113 | headers: Headers;
|
114 | } | {
|
115 | type: 'press';
|
116 | keyCode: number;
|
117 | count?: number;
|
118 | modifiers?: any;
|
119 | } | {
|
120 | type: 'type';
|
121 | input: string;
|
122 | selector?: string;
|
123 | } | {
|
124 | type: 'clearCookies';
|
125 | } | {
|
126 | type: 'clearStorage';
|
127 | origin: string;
|
128 | storageTypes: string;
|
129 | } | {
|
130 | type: 'deleteCookies';
|
131 | name: string;
|
132 | url: string;
|
133 | } | {
|
134 | type: 'setCookies';
|
135 | nameOrCookies: string | Cookie | Cookie[];
|
136 | value?: string;
|
137 | } | {
|
138 | type: 'allCookies';
|
139 | } | {
|
140 | type: 'cookies';
|
141 | nameOrQuery?: string | CookieQuery;
|
142 | } | {
|
143 | type: 'mousedown';
|
144 | selector: string;
|
145 | } | {
|
146 | type: 'mouseup';
|
147 | selector: string;
|
148 | } | {
|
149 | type: 'focus';
|
150 | selector: string;
|
151 | } | {
|
152 | type: 'clearInput';
|
153 | selector: string;
|
154 | } | {
|
155 | type: 'setFileInput';
|
156 | selector: string;
|
157 | files: string[];
|
158 | };
|
159 | export declare type Headers = Record<string, string>;
|
160 | export interface Cookie {
|
161 | url?: string;
|
162 | domain?: string;
|
163 | name: string;
|
164 | value: string;
|
165 | path?: string;
|
166 | expires?: number;
|
167 | size?: number;
|
168 | httpOnly?: boolean;
|
169 | secure?: boolean;
|
170 | session?: boolean;
|
171 | }
|
172 | export interface CookieQuery {
|
173 | name: string;
|
174 | path?: string;
|
175 | expires?: number;
|
176 | size?: number;
|
177 | httpOnly?: boolean;
|
178 | secure?: boolean;
|
179 | session?: boolean;
|
180 | }
|
181 | export interface PdfOptions {
|
182 | landscape?: boolean;
|
183 | displayHeaderFooter?: boolean;
|
184 | printBackground?: boolean;
|
185 | scale?: number;
|
186 | paperWidth?: number;
|
187 | paperHeight?: number;
|
188 | marginTop?: number;
|
189 | marginBottom?: number;
|
190 | marginLeft?: number;
|
191 | marginRight?: number;
|
192 | pageRanges?: string;
|
193 | ignoreInvalidPageRanges?: boolean;
|
194 | filePath?: string;
|
195 | }
|
196 | export interface ScreenshotOptions {
|
197 | filePath?: string;
|
198 | }
|
199 | export declare type Quad = Array<number>;
|
200 | export interface ShapeOutsideInfo {
|
201 | bounds: Quad;
|
202 | shape: Array<any>;
|
203 | marginShape: Array<any>;
|
204 | }
|
205 | export interface BoxModel {
|
206 | content: Quad;
|
207 | padding: Quad;
|
208 | border: Quad;
|
209 | margin: Quad;
|
210 | width: number;
|
211 | height: number;
|
212 | shapeOutside: ShapeOutsideInfo;
|
213 | }
|
214 | export interface Viewport {
|
215 | x: number;
|
216 | y: number;
|
217 | width: number;
|
218 | height: number;
|
219 | scale: number;
|
220 | }
|