webdriver-bidi-protocol 0.0.1 → 0.0.4

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.
@@ -0,0 +1,2175 @@
1
+ export type Event = {
2
+ type: 'event';
3
+ } & EventData &
4
+ Extensible;
5
+ export type Command = {
6
+ id: JsUint;
7
+ } & CommandData &
8
+ Extensible;
9
+ export type CommandResponse = {
10
+ type: 'success';
11
+ id: JsUint;
12
+ result: ResultData;
13
+ } & Extensible;
14
+ export type EventData =
15
+ | BrowsingContextEvent
16
+ | LogEvent
17
+ | NetworkEvent
18
+ | ScriptEvent;
19
+ export type CommandData =
20
+ | BrowserCommand
21
+ | BrowsingContextCommand
22
+ | InputCommand
23
+ | NetworkCommand
24
+ | ScriptCommand
25
+ | SessionCommand
26
+ | StorageCommand;
27
+ export type ResultData =
28
+ | BrowsingContextResult
29
+ | EmptyResult
30
+ | NetworkResult
31
+ | ScriptResult
32
+ | SessionResult
33
+ | StorageResult;
34
+ export type EmptyParams = Extensible;
35
+ export type Message = CommandResponse | ErrorResponse | Event;
36
+ export type ErrorResponse = {
37
+ type: 'error';
38
+ id: JsUint | null;
39
+ error: ErrorCode;
40
+ message: string;
41
+ stacktrace?: string;
42
+ } & Extensible;
43
+ export type EmptyResult = Extensible;
44
+ export type Extensible = {
45
+ [key: string]: any;
46
+ };
47
+
48
+ /**
49
+ * Must be between `-9007199254740991` and `9007199254740991`, inclusive.
50
+ */
51
+ export type JsInt = number;
52
+
53
+ /**
54
+ * Must be between `0` and `9007199254740991`, inclusive.
55
+ */
56
+ export type JsUint = number;
57
+ export const enum ErrorCode {
58
+ InvalidArgument = 'invalid argument',
59
+ InvalidSelector = 'invalid selector',
60
+ InvalidSessionId = 'invalid session id',
61
+ MoveTargetOutOfBounds = 'move target out of bounds',
62
+ NoSuchAlert = 'no such alert',
63
+ NoSuchElement = 'no such element',
64
+ NoSuchFrame = 'no such frame',
65
+ NoSuchHandle = 'no such handle',
66
+ NoSuchHistoryEntry = 'no such history entry',
67
+ NoSuchIntercept = 'no such intercept',
68
+ NoSuchNode = 'no such node',
69
+ NoSuchRequest = 'no such request',
70
+ NoSuchScript = 'no such script',
71
+ NoSuchStoragePartition = 'no such storage partition',
72
+ NoSuchUserContext = 'no such user context',
73
+ SessionNotCreated = 'session not created',
74
+ UnableToCaptureScreen = 'unable to capture screen',
75
+ UnableToCloseBrowser = 'unable to close browser',
76
+ UnableToSetCookie = 'unable to set cookie',
77
+ UnableToSetFileInput = 'unable to set file input',
78
+ UnderspecifiedStoragePartition = 'underspecified storage partition',
79
+ UnknownCommand = 'unknown command',
80
+ UnknownError = 'unknown error',
81
+ UnsupportedOperation = 'unsupported operation',
82
+ }
83
+ export type SessionCommand =
84
+ | Session.End
85
+ | Session.New
86
+ | Session.Status
87
+ | Session.Subscribe
88
+ | Session.Unsubscribe;
89
+ export namespace Session {
90
+ export type ProxyConfiguration =
91
+ | Session.AutodetectProxyConfiguration
92
+ | Session.DirectProxyConfiguration
93
+ | Session.ManualProxyConfiguration
94
+ | Session.PacProxyConfiguration
95
+ | Session.SystemProxyConfiguration
96
+ | Record<string, never>;
97
+ }
98
+ export type SessionResult = Session.NewResult | Session.StatusResult;
99
+ export namespace Session {
100
+ export type CapabilitiesRequest = {
101
+ alwaysMatch?: Session.CapabilityRequest;
102
+ firstMatch?: [...Session.CapabilityRequest[]];
103
+ };
104
+ }
105
+ export namespace Session {
106
+ export type CapabilityRequest = {
107
+ acceptInsecureCerts?: boolean;
108
+ browserName?: string;
109
+ browserVersion?: string;
110
+ platformName?: string;
111
+ proxy?: Session.ProxyConfiguration;
112
+ unhandledPromptBehavior?: Session.UserPromptHandler;
113
+ } & Extensible;
114
+ }
115
+ export namespace Session {
116
+ export type AutodetectProxyConfiguration = {
117
+ proxyType: 'autodetect';
118
+ } & Extensible;
119
+ }
120
+ export namespace Session {
121
+ export type DirectProxyConfiguration = {
122
+ proxyType: 'direct';
123
+ } & Extensible;
124
+ }
125
+ export namespace Session {
126
+ export type ManualProxyConfiguration = {
127
+ proxyType: 'manual';
128
+ ftpProxy?: string;
129
+ httpProxy?: string;
130
+ sslProxy?: string;
131
+ } & ({} | Session.SocksProxyConfiguration) & {
132
+ noProxy?: [...string[]];
133
+ } & Extensible;
134
+ }
135
+ export namespace Session {
136
+ export type SocksProxyConfiguration = {
137
+ socksProxy: string;
138
+ /**
139
+ * Must be between `0` and `255`, inclusive.
140
+ */
141
+ socksVersion: number;
142
+ };
143
+ }
144
+ export namespace Session {
145
+ export type PacProxyConfiguration = {
146
+ proxyType: 'pac';
147
+ proxyAutoconfigUrl: string;
148
+ } & Extensible;
149
+ }
150
+ export namespace Session {
151
+ export type SystemProxyConfiguration = {
152
+ proxyType: 'system';
153
+ } & Extensible;
154
+ }
155
+ export namespace Session {
156
+ export const enum UserPromptHandlerType {
157
+ Accept = 'accept',
158
+ Dismiss = 'dismiss',
159
+ Ignore = 'ignore',
160
+ }
161
+ }
162
+ export namespace Session {
163
+ export type UserPromptHandler = {
164
+ alert?: Session.UserPromptHandlerType;
165
+ beforeUnload?: Session.UserPromptHandlerType;
166
+ confirm?: Session.UserPromptHandlerType;
167
+ default?: Session.UserPromptHandlerType;
168
+ prompt?: Session.UserPromptHandlerType;
169
+ };
170
+ }
171
+ export namespace Session {
172
+ export type SubscriptionRequest = {
173
+ events: [string, ...string[]];
174
+ contexts?: [
175
+ BrowsingContext.BrowsingContext,
176
+ ...BrowsingContext.BrowsingContext[],
177
+ ];
178
+ };
179
+ }
180
+ export namespace Session {
181
+ export type Status = {
182
+ method: 'session.status';
183
+ params: EmptyParams;
184
+ };
185
+ }
186
+ export namespace Session {
187
+ export type StatusResult = {
188
+ ready: boolean;
189
+ message: string;
190
+ };
191
+ }
192
+ export namespace Session {
193
+ export type New = {
194
+ method: 'session.new';
195
+ params: Session.NewParameters;
196
+ };
197
+ }
198
+ export namespace Session {
199
+ export type NewParameters = {
200
+ capabilities: Session.CapabilitiesRequest;
201
+ };
202
+ }
203
+ export namespace Session {
204
+ export type NewResult = {
205
+ sessionId: string;
206
+ capabilities: {
207
+ acceptInsecureCerts: boolean;
208
+ browserName: string;
209
+ browserVersion: string;
210
+ platformName: string;
211
+ setWindowRect: boolean;
212
+ userAgent: string;
213
+ proxy?: Session.ProxyConfiguration;
214
+ unhandledPromptBehavior?: Session.UserPromptHandler;
215
+ webSocketUrl?: string;
216
+ } & Extensible;
217
+ };
218
+ }
219
+ export namespace Session {
220
+ export type End = {
221
+ method: 'session.end';
222
+ params: EmptyParams;
223
+ };
224
+ }
225
+ export namespace Session {
226
+ export type Subscribe = {
227
+ method: 'session.subscribe';
228
+ params: Session.SubscriptionRequest;
229
+ };
230
+ }
231
+ export namespace Session {
232
+ export type Unsubscribe = {
233
+ method: 'session.unsubscribe';
234
+ params: Session.SubscriptionRequest;
235
+ };
236
+ }
237
+ export type BrowserCommand =
238
+ | Browser.Close
239
+ | Browser.CreateUserContext
240
+ | Browser.GetUserContexts
241
+ | Browser.RemoveUserContext;
242
+ export type BrowserResult =
243
+ | Browser.CreateUserContextResult
244
+ | Browser.GetUserContextsResult;
245
+ export namespace Browser {
246
+ export type UserContext = string;
247
+ }
248
+ export namespace Browser {
249
+ export type UserContextInfo = {
250
+ userContext: Browser.UserContext;
251
+ };
252
+ }
253
+ export namespace Browser {
254
+ export type Close = {
255
+ method: 'browser.close';
256
+ params: EmptyParams;
257
+ };
258
+ }
259
+ export namespace Browser {
260
+ export type CreateUserContext = {
261
+ method: 'browser.createUserContext';
262
+ params: EmptyParams;
263
+ };
264
+ }
265
+ export namespace Browser {
266
+ export type CreateUserContextResult = Browser.UserContextInfo;
267
+ }
268
+ export namespace Browser {
269
+ export type GetUserContexts = {
270
+ method: 'browser.getUserContexts';
271
+ params: EmptyParams;
272
+ };
273
+ }
274
+ export namespace Browser {
275
+ export type GetUserContextsResult = {
276
+ userContexts: [Browser.UserContextInfo, ...Browser.UserContextInfo[]];
277
+ };
278
+ }
279
+ export namespace Browser {
280
+ export type RemoveUserContext = {
281
+ method: 'browser.removeUserContext';
282
+ params: Browser.RemoveUserContextParameters;
283
+ };
284
+ }
285
+ export namespace Browser {
286
+ export type RemoveUserContextParameters = {
287
+ userContext: Browser.UserContext;
288
+ };
289
+ }
290
+ export type BrowsingContextCommand =
291
+ | BrowsingContext.Activate
292
+ | BrowsingContext.CaptureScreenshot
293
+ | BrowsingContext.Close
294
+ | BrowsingContext.Create
295
+ | BrowsingContext.GetTree
296
+ | BrowsingContext.HandleUserPrompt
297
+ | BrowsingContext.LocateNodes
298
+ | BrowsingContext.Navigate
299
+ | BrowsingContext.Print
300
+ | BrowsingContext.Reload
301
+ | BrowsingContext.SetViewport
302
+ | BrowsingContext.TraverseHistory;
303
+ export type BrowsingContextEvent =
304
+ | BrowsingContext.ContextCreated
305
+ | BrowsingContext.ContextDestroyed
306
+ | BrowsingContext.DomContentLoaded
307
+ | BrowsingContext.DownloadWillBegin
308
+ | BrowsingContext.FragmentNavigated
309
+ | BrowsingContext.Load
310
+ | BrowsingContext.NavigationAborted
311
+ | BrowsingContext.NavigationFailed
312
+ | BrowsingContext.NavigationStarted
313
+ | BrowsingContext.UserPromptClosed
314
+ | BrowsingContext.UserPromptOpened;
315
+ export type BrowsingContextResult =
316
+ | BrowsingContext.CaptureScreenshotResult
317
+ | BrowsingContext.CreateResult
318
+ | BrowsingContext.GetTreeResult
319
+ | BrowsingContext.LocateNodesResult
320
+ | BrowsingContext.NavigateResult
321
+ | BrowsingContext.PrintResult
322
+ | BrowsingContext.TraverseHistoryResult;
323
+ export namespace BrowsingContext {
324
+ export type BrowsingContext = string;
325
+ }
326
+ export namespace BrowsingContext {
327
+ export type InfoList = [...BrowsingContext.Info[]];
328
+ }
329
+ export namespace BrowsingContext {
330
+ export type Info = {
331
+ children: BrowsingContext.InfoList | null;
332
+ context: BrowsingContext.BrowsingContext;
333
+ originalOpener: BrowsingContext.BrowsingContext | null;
334
+ url: string;
335
+ userContext: Browser.UserContext;
336
+ parent?: BrowsingContext.BrowsingContext | null;
337
+ };
338
+ }
339
+ export namespace BrowsingContext {
340
+ export type Locator =
341
+ | BrowsingContext.AccessibilityLocator
342
+ | BrowsingContext.CssLocator
343
+ | BrowsingContext.InnerTextLocator
344
+ | BrowsingContext.XPathLocator;
345
+ }
346
+ export namespace BrowsingContext {
347
+ export type AccessibilityLocator = {
348
+ type: 'accessibility';
349
+ value: {
350
+ name?: string;
351
+ role?: string;
352
+ };
353
+ };
354
+ }
355
+ export namespace BrowsingContext {
356
+ export type CssLocator = {
357
+ type: 'css';
358
+ value: string;
359
+ };
360
+ }
361
+ export namespace BrowsingContext {
362
+ export type InnerTextLocator = {
363
+ type: 'innerText';
364
+ value: string;
365
+ ignoreCase?: boolean;
366
+ matchType?: 'full' | 'partial';
367
+ maxDepth?: JsUint;
368
+ };
369
+ }
370
+ export namespace BrowsingContext {
371
+ export type XPathLocator = {
372
+ type: 'xpath';
373
+ value: string;
374
+ };
375
+ }
376
+ export namespace BrowsingContext {
377
+ export type Navigation = string;
378
+ }
379
+ export namespace BrowsingContext {
380
+ export type NavigationInfo = {
381
+ context: BrowsingContext.BrowsingContext;
382
+ navigation: BrowsingContext.Navigation | null;
383
+ timestamp: JsUint;
384
+ url: string;
385
+ };
386
+ }
387
+ export namespace BrowsingContext {
388
+ export const enum ReadinessState {
389
+ None = 'none',
390
+ Interactive = 'interactive',
391
+ Complete = 'complete',
392
+ }
393
+ }
394
+ export namespace BrowsingContext {
395
+ export const enum UserPromptType {
396
+ Alert = 'alert',
397
+ Beforeunload = 'beforeunload',
398
+ Confirm = 'confirm',
399
+ Prompt = 'prompt',
400
+ }
401
+ }
402
+ export namespace BrowsingContext {
403
+ export type Activate = {
404
+ method: 'browsingContext.activate';
405
+ params: BrowsingContext.ActivateParameters;
406
+ };
407
+ }
408
+ export namespace BrowsingContext {
409
+ export type ActivateParameters = {
410
+ context: BrowsingContext.BrowsingContext;
411
+ };
412
+ }
413
+ export namespace BrowsingContext {
414
+ export type CaptureScreenshotParameters = {
415
+ context: BrowsingContext.BrowsingContext;
416
+ /**
417
+ * @defaultValue `"viewport"`
418
+ */
419
+ origin?: 'viewport' | 'document';
420
+ format?: BrowsingContext.ImageFormat;
421
+ clip?: BrowsingContext.ClipRectangle;
422
+ };
423
+ }
424
+ export namespace BrowsingContext {
425
+ export type CaptureScreenshot = {
426
+ method: 'browsingContext.captureScreenshot';
427
+ params: BrowsingContext.CaptureScreenshotParameters;
428
+ };
429
+ }
430
+ export namespace BrowsingContext {
431
+ export type ImageFormat = {
432
+ type: string;
433
+ /**
434
+ * Must be between `0` and `1`, inclusive.
435
+ */
436
+ quality?: number;
437
+ };
438
+ }
439
+ export namespace BrowsingContext {
440
+ export type ClipRectangle =
441
+ | BrowsingContext.BoxClipRectangle
442
+ | BrowsingContext.ElementClipRectangle;
443
+ }
444
+ export namespace BrowsingContext {
445
+ export type ElementClipRectangle = {
446
+ type: 'element';
447
+ element: Script.SharedReference;
448
+ };
449
+ }
450
+ export namespace BrowsingContext {
451
+ export type BoxClipRectangle = {
452
+ type: 'box';
453
+ x: number;
454
+ y: number;
455
+ width: number;
456
+ height: number;
457
+ };
458
+ }
459
+ export namespace BrowsingContext {
460
+ export type CaptureScreenshotResult = {
461
+ data: string;
462
+ };
463
+ }
464
+ export namespace BrowsingContext {
465
+ export type Close = {
466
+ method: 'browsingContext.close';
467
+ params: BrowsingContext.CloseParameters;
468
+ };
469
+ }
470
+ export namespace BrowsingContext {
471
+ export type CloseParameters = {
472
+ context: BrowsingContext.BrowsingContext;
473
+ /**
474
+ * @defaultValue `false`
475
+ */
476
+ promptUnload?: boolean;
477
+ };
478
+ }
479
+ export namespace BrowsingContext {
480
+ export type Create = {
481
+ method: 'browsingContext.create';
482
+ params: BrowsingContext.CreateParameters;
483
+ };
484
+ }
485
+ export namespace BrowsingContext {
486
+ export const enum CreateType {
487
+ Tab = 'tab',
488
+ Window = 'window',
489
+ }
490
+ }
491
+ export namespace BrowsingContext {
492
+ export type CreateParameters = {
493
+ type: BrowsingContext.CreateType;
494
+ referenceContext?: BrowsingContext.BrowsingContext;
495
+ /**
496
+ * @defaultValue `false`
497
+ */
498
+ background?: boolean;
499
+ userContext?: Browser.UserContext;
500
+ };
501
+ }
502
+ export namespace BrowsingContext {
503
+ export type CreateResult = {
504
+ context: BrowsingContext.BrowsingContext;
505
+ };
506
+ }
507
+ export namespace BrowsingContext {
508
+ export type GetTree = {
509
+ method: 'browsingContext.getTree';
510
+ params: BrowsingContext.GetTreeParameters;
511
+ };
512
+ }
513
+ export namespace BrowsingContext {
514
+ export type GetTreeParameters = {
515
+ maxDepth?: JsUint;
516
+ root?: BrowsingContext.BrowsingContext;
517
+ };
518
+ }
519
+ export namespace BrowsingContext {
520
+ export type GetTreeResult = {
521
+ contexts: BrowsingContext.InfoList;
522
+ };
523
+ }
524
+ export namespace BrowsingContext {
525
+ export type HandleUserPrompt = {
526
+ method: 'browsingContext.handleUserPrompt';
527
+ params: BrowsingContext.HandleUserPromptParameters;
528
+ };
529
+ }
530
+ export namespace BrowsingContext {
531
+ export type HandleUserPromptParameters = {
532
+ context: BrowsingContext.BrowsingContext;
533
+ accept?: boolean;
534
+ userText?: string;
535
+ };
536
+ }
537
+ export namespace BrowsingContext {
538
+ export type LocateNodesParameters = {
539
+ context: BrowsingContext.BrowsingContext;
540
+ locator: BrowsingContext.Locator;
541
+ /**
542
+ * Must be greater than or equal to `1`.
543
+ */
544
+ maxNodeCount?: JsUint;
545
+ serializationOptions?: Script.SerializationOptions;
546
+ startNodes?: [Script.SharedReference, ...Script.SharedReference[]];
547
+ };
548
+ }
549
+ export namespace BrowsingContext {
550
+ export type LocateNodes = {
551
+ method: 'browsingContext.locateNodes';
552
+ params: BrowsingContext.LocateNodesParameters;
553
+ };
554
+ }
555
+ export namespace BrowsingContext {
556
+ export type LocateNodesResult = {
557
+ nodes: [...Script.NodeRemoteValue[]];
558
+ };
559
+ }
560
+ export namespace BrowsingContext {
561
+ export type Navigate = {
562
+ method: 'browsingContext.navigate';
563
+ params: BrowsingContext.NavigateParameters;
564
+ };
565
+ }
566
+ export namespace BrowsingContext {
567
+ export type NavigateParameters = {
568
+ context: BrowsingContext.BrowsingContext;
569
+ url: string;
570
+ wait?: BrowsingContext.ReadinessState;
571
+ };
572
+ }
573
+ export namespace BrowsingContext {
574
+ export type NavigateResult = {
575
+ navigation: BrowsingContext.Navigation | null;
576
+ url: string;
577
+ };
578
+ }
579
+ export namespace BrowsingContext {
580
+ export type Print = {
581
+ method: 'browsingContext.print';
582
+ params: BrowsingContext.PrintParameters;
583
+ };
584
+ }
585
+ export namespace BrowsingContext {
586
+ export type PrintParameters = {
587
+ context: BrowsingContext.BrowsingContext;
588
+ /**
589
+ * @defaultValue `false`
590
+ */
591
+ background?: boolean;
592
+ margin?: BrowsingContext.PrintMarginParameters;
593
+ /**
594
+ * @defaultValue `"portrait"`
595
+ */
596
+ orientation?: 'portrait' | 'landscape';
597
+ page?: BrowsingContext.PrintPageParameters;
598
+ pageRanges?: [...(JsUint | string)[]];
599
+ /**
600
+ * Must be between `0.1` and `2`, inclusive.
601
+ *
602
+ * @defaultValue `1`
603
+ */
604
+ scale?: number;
605
+ /**
606
+ * @defaultValue `true`
607
+ */
608
+ shrinkToFit?: boolean;
609
+ };
610
+ }
611
+ export namespace BrowsingContext {
612
+ export type PrintMarginParameters = {
613
+ /**
614
+ * Must be greater than or equal to `0`.
615
+ *
616
+ * @defaultValue `1`
617
+ */
618
+ bottom?: number;
619
+ /**
620
+ * Must be greater than or equal to `0`.
621
+ *
622
+ * @defaultValue `1`
623
+ */
624
+ left?: number;
625
+ /**
626
+ * Must be greater than or equal to `0`.
627
+ *
628
+ * @defaultValue `1`
629
+ */
630
+ right?: number;
631
+ /**
632
+ * Must be greater than or equal to `0`.
633
+ *
634
+ * @defaultValue `1`
635
+ */
636
+ top?: number;
637
+ };
638
+ }
639
+ export namespace BrowsingContext {
640
+ export type PrintPageParameters = {
641
+ /**
642
+ * Must be greater than or equal to `0.0352`.
643
+ *
644
+ * @defaultValue `27.94`
645
+ */
646
+ height?: number;
647
+ /**
648
+ * Must be greater than or equal to `0.0352`.
649
+ *
650
+ * @defaultValue `21.59`
651
+ */
652
+ width?: number;
653
+ };
654
+ }
655
+ export namespace BrowsingContext {
656
+ export type PrintResult = {
657
+ data: string;
658
+ };
659
+ }
660
+ export namespace BrowsingContext {
661
+ export type Reload = {
662
+ method: 'browsingContext.reload';
663
+ params: BrowsingContext.ReloadParameters;
664
+ };
665
+ }
666
+ export namespace BrowsingContext {
667
+ export type ReloadParameters = {
668
+ context: BrowsingContext.BrowsingContext;
669
+ ignoreCache?: boolean;
670
+ wait?: BrowsingContext.ReadinessState;
671
+ };
672
+ }
673
+ export namespace BrowsingContext {
674
+ export type SetViewport = {
675
+ method: 'browsingContext.setViewport';
676
+ params: BrowsingContext.SetViewportParameters;
677
+ };
678
+ }
679
+ export namespace BrowsingContext {
680
+ export type SetViewportParameters = {
681
+ context: BrowsingContext.BrowsingContext;
682
+ viewport?: BrowsingContext.Viewport | null;
683
+ /**
684
+ * Must be greater than `0`.
685
+ */
686
+ devicePixelRatio?: number | null;
687
+ };
688
+ }
689
+ export namespace BrowsingContext {
690
+ export type Viewport = {
691
+ width: JsUint;
692
+ height: JsUint;
693
+ };
694
+ }
695
+ export namespace BrowsingContext {
696
+ export type TraverseHistory = {
697
+ method: 'browsingContext.traverseHistory';
698
+ params: BrowsingContext.TraverseHistoryParameters;
699
+ };
700
+ }
701
+ export namespace BrowsingContext {
702
+ export type TraverseHistoryParameters = {
703
+ context: BrowsingContext.BrowsingContext;
704
+ delta: JsInt;
705
+ };
706
+ }
707
+ export namespace BrowsingContext {
708
+ export type TraverseHistoryResult = Record<string, never>;
709
+ }
710
+ export namespace BrowsingContext {
711
+ export type ContextCreated = {
712
+ method: 'browsingContext.contextCreated';
713
+ params: BrowsingContext.Info;
714
+ };
715
+ }
716
+ export namespace BrowsingContext {
717
+ export type ContextDestroyed = {
718
+ method: 'browsingContext.contextDestroyed';
719
+ params: BrowsingContext.Info;
720
+ };
721
+ }
722
+ export namespace BrowsingContext {
723
+ export type NavigationStarted = {
724
+ method: 'browsingContext.navigationStarted';
725
+ params: BrowsingContext.NavigationInfo;
726
+ };
727
+ }
728
+ export namespace BrowsingContext {
729
+ export type FragmentNavigated = {
730
+ method: 'browsingContext.fragmentNavigated';
731
+ params: BrowsingContext.NavigationInfo;
732
+ };
733
+ }
734
+ export namespace BrowsingContext {
735
+ export type DomContentLoaded = {
736
+ method: 'browsingContext.domContentLoaded';
737
+ params: BrowsingContext.NavigationInfo;
738
+ };
739
+ }
740
+ export namespace BrowsingContext {
741
+ export type Load = {
742
+ method: 'browsingContext.load';
743
+ params: BrowsingContext.NavigationInfo;
744
+ };
745
+ }
746
+ export namespace BrowsingContext {
747
+ export type DownloadWillBegin = {
748
+ method: 'browsingContext.downloadWillBegin';
749
+ params: BrowsingContext.NavigationInfo;
750
+ };
751
+ }
752
+ export namespace BrowsingContext {
753
+ export type NavigationAborted = {
754
+ method: 'browsingContext.navigationAborted';
755
+ params: BrowsingContext.NavigationInfo;
756
+ };
757
+ }
758
+ export namespace BrowsingContext {
759
+ export type NavigationFailed = {
760
+ method: 'browsingContext.navigationFailed';
761
+ params: BrowsingContext.NavigationInfo;
762
+ };
763
+ }
764
+ export namespace BrowsingContext {
765
+ export type UserPromptClosed = {
766
+ method: 'browsingContext.userPromptClosed';
767
+ params: BrowsingContext.UserPromptClosedParameters;
768
+ };
769
+ }
770
+ export namespace BrowsingContext {
771
+ export type UserPromptClosedParameters = {
772
+ context: BrowsingContext.BrowsingContext;
773
+ accepted: boolean;
774
+ type: BrowsingContext.UserPromptType;
775
+ userText?: string;
776
+ };
777
+ }
778
+ export namespace BrowsingContext {
779
+ export type UserPromptOpened = {
780
+ method: 'browsingContext.userPromptOpened';
781
+ params: BrowsingContext.UserPromptOpenedParameters;
782
+ };
783
+ }
784
+ export namespace BrowsingContext {
785
+ export type UserPromptOpenedParameters = {
786
+ context: BrowsingContext.BrowsingContext;
787
+ handler: 'accept' | 'dismiss' | 'ignore';
788
+ message: string;
789
+ type: BrowsingContext.UserPromptType;
790
+ defaultValue?: string;
791
+ };
792
+ }
793
+ export type NetworkCommand =
794
+ | Network.AddIntercept
795
+ | Network.ContinueRequest
796
+ | Network.ContinueResponse
797
+ | Network.ContinueWithAuth
798
+ | Network.FailRequest
799
+ | Network.ProvideResponse
800
+ | Network.RemoveIntercept;
801
+ export type NetworkEvent =
802
+ | Network.AuthRequired
803
+ | Network.BeforeRequestSent
804
+ | Network.FetchError
805
+ | Network.ResponseCompleted
806
+ | Network.ResponseStarted;
807
+ export type NetworkResult = Network.AddInterceptResult;
808
+ export namespace Network {
809
+ export type AuthChallenge = {
810
+ scheme: string;
811
+ realm: string;
812
+ };
813
+ }
814
+ export namespace Network {
815
+ export type AuthCredentials = {
816
+ type: 'password';
817
+ username: string;
818
+ password: string;
819
+ };
820
+ }
821
+ export namespace Network {
822
+ export type BaseParameters = {
823
+ context: BrowsingContext.BrowsingContext | null;
824
+ isBlocked: boolean;
825
+ navigation: BrowsingContext.Navigation | null;
826
+ redirectCount: JsUint;
827
+ request: Network.RequestData;
828
+ timestamp: JsUint;
829
+ intercepts?: [Network.Intercept, ...Network.Intercept[]];
830
+ };
831
+ }
832
+ export namespace Network {
833
+ export type BytesValue = Network.StringValue | Network.Base64Value;
834
+ }
835
+ export namespace Network {
836
+ export type StringValue = {
837
+ type: 'string';
838
+ value: string;
839
+ };
840
+ }
841
+ export namespace Network {
842
+ export type Base64Value = {
843
+ type: 'base64';
844
+ value: string;
845
+ };
846
+ }
847
+ export namespace Network {
848
+ export const enum SameSite {
849
+ Strict = 'strict',
850
+ Lax = 'lax',
851
+ None = 'none',
852
+ }
853
+ }
854
+ export namespace Network {
855
+ export type Cookie = {
856
+ name: string;
857
+ value: Network.BytesValue;
858
+ domain: string;
859
+ path: string;
860
+ size: JsUint;
861
+ httpOnly: boolean;
862
+ secure: boolean;
863
+ sameSite: Network.SameSite;
864
+ expiry?: JsUint;
865
+ } & Extensible;
866
+ }
867
+ export namespace Network {
868
+ export type CookieHeader = {
869
+ name: string;
870
+ value: Network.BytesValue;
871
+ };
872
+ }
873
+ export namespace Network {
874
+ export type FetchTimingInfo = {
875
+ timeOrigin: number;
876
+ requestTime: number;
877
+ redirectStart: number;
878
+ redirectEnd: number;
879
+ fetchStart: number;
880
+ dnsStart: number;
881
+ dnsEnd: number;
882
+ connectStart: number;
883
+ connectEnd: number;
884
+ tlsStart: number;
885
+ requestStart: number;
886
+ responseStart: number;
887
+ responseEnd: number;
888
+ };
889
+ }
890
+ export namespace Network {
891
+ export type Header = {
892
+ name: string;
893
+ value: Network.BytesValue;
894
+ };
895
+ }
896
+ export namespace Network {
897
+ export type Initiator = {
898
+ type: 'parser' | 'script' | 'preflight' | 'other';
899
+ columnNumber?: JsUint;
900
+ lineNumber?: JsUint;
901
+ stackTrace?: Script.StackTrace;
902
+ request?: Network.Request;
903
+ };
904
+ }
905
+ export namespace Network {
906
+ export type Intercept = string;
907
+ }
908
+ export namespace Network {
909
+ export type Request = string;
910
+ }
911
+ export namespace Network {
912
+ export type RequestData = {
913
+ request: Network.Request;
914
+ url: string;
915
+ method: string;
916
+ headers: [...Network.Header[]];
917
+ cookies: [...Network.Cookie[]];
918
+ headersSize: JsUint;
919
+ bodySize: JsUint | null;
920
+ timings: Network.FetchTimingInfo;
921
+ };
922
+ }
923
+ export namespace Network {
924
+ export type ResponseContent = {
925
+ size: JsUint;
926
+ };
927
+ }
928
+ export namespace Network {
929
+ export type ResponseData = {
930
+ url: string;
931
+ protocol: string;
932
+ status: JsUint;
933
+ statusText: string;
934
+ fromCache: boolean;
935
+ headers: [...Network.Header[]];
936
+ mimeType: string;
937
+ bytesReceived: JsUint;
938
+ headersSize: JsUint | null;
939
+ bodySize: JsUint | null;
940
+ content: Network.ResponseContent;
941
+ authChallenges?: [...Network.AuthChallenge[]];
942
+ };
943
+ }
944
+ export namespace Network {
945
+ export type SetCookieHeader = {
946
+ name: string;
947
+ value: Network.BytesValue;
948
+ domain?: string;
949
+ httpOnly?: boolean;
950
+ expiry?: string;
951
+ maxAge?: JsInt;
952
+ path?: string;
953
+ sameSite?: Network.SameSite;
954
+ secure?: boolean;
955
+ };
956
+ }
957
+ export namespace Network {
958
+ export type UrlPattern = Network.UrlPatternPattern | Network.UrlPatternString;
959
+ }
960
+ export namespace Network {
961
+ export type UrlPatternPattern = {
962
+ type: 'pattern';
963
+ protocol?: string;
964
+ hostname?: string;
965
+ port?: string;
966
+ pathname?: string;
967
+ search?: string;
968
+ };
969
+ }
970
+ export namespace Network {
971
+ export type UrlPatternString = {
972
+ type: 'string';
973
+ pattern: string;
974
+ };
975
+ }
976
+ export namespace Network {
977
+ export type AddInterceptParameters = {
978
+ phases: [Network.InterceptPhase, ...Network.InterceptPhase[]];
979
+ contexts?: [
980
+ BrowsingContext.BrowsingContext,
981
+ ...BrowsingContext.BrowsingContext[],
982
+ ];
983
+ urlPatterns?: [...Network.UrlPattern[]];
984
+ };
985
+ }
986
+ export namespace Network {
987
+ export type AddIntercept = {
988
+ method: 'network.addIntercept';
989
+ params: Network.AddInterceptParameters;
990
+ };
991
+ }
992
+ export namespace Network {
993
+ export const enum InterceptPhase {
994
+ BeforeRequestSent = 'beforeRequestSent',
995
+ ResponseStarted = 'responseStarted',
996
+ AuthRequired = 'authRequired',
997
+ }
998
+ }
999
+ export namespace Network {
1000
+ export type AddInterceptResult = {
1001
+ intercept: Network.Intercept;
1002
+ };
1003
+ }
1004
+ export namespace Network {
1005
+ export type ContinueRequest = {
1006
+ method: 'network.continueRequest';
1007
+ params: Network.ContinueRequestParameters;
1008
+ };
1009
+ }
1010
+ export namespace Network {
1011
+ export type ContinueRequestParameters = {
1012
+ request: Network.Request;
1013
+ body?: Network.BytesValue;
1014
+ cookies?: [...Network.CookieHeader[]];
1015
+ headers?: [...Network.Header[]];
1016
+ method?: string;
1017
+ url?: string;
1018
+ };
1019
+ }
1020
+ export namespace Network {
1021
+ export type ContinueResponse = {
1022
+ method: 'network.continueResponse';
1023
+ params: Network.ContinueResponseParameters;
1024
+ };
1025
+ }
1026
+ export namespace Network {
1027
+ export type ContinueResponseParameters = {
1028
+ request: Network.Request;
1029
+ cookies?: [...Network.SetCookieHeader[]];
1030
+ credentials?: Network.AuthCredentials;
1031
+ headers?: [...Network.Header[]];
1032
+ reasonPhrase?: string;
1033
+ statusCode?: JsUint;
1034
+ };
1035
+ }
1036
+ export namespace Network {
1037
+ export type ContinueWithAuth = {
1038
+ method: 'network.continueWithAuth';
1039
+ params: Network.ContinueWithAuthParameters;
1040
+ };
1041
+ }
1042
+ export namespace Network {
1043
+ export type ContinueWithAuthParameters = {
1044
+ request: Network.Request;
1045
+ } & (
1046
+ | Network.ContinueWithAuthCredentials
1047
+ | Network.ContinueWithAuthNoCredentials
1048
+ );
1049
+ }
1050
+ export namespace Network {
1051
+ export type ContinueWithAuthCredentials = {
1052
+ action: 'provideCredentials';
1053
+ credentials: Network.AuthCredentials;
1054
+ };
1055
+ }
1056
+ export namespace Network {
1057
+ export type ContinueWithAuthNoCredentials = {
1058
+ action: 'default' | 'cancel';
1059
+ };
1060
+ }
1061
+ export namespace Network {
1062
+ export type FailRequest = {
1063
+ method: 'network.failRequest';
1064
+ params: Network.FailRequestParameters;
1065
+ };
1066
+ }
1067
+ export namespace Network {
1068
+ export type FailRequestParameters = {
1069
+ request: Network.Request;
1070
+ };
1071
+ }
1072
+ export namespace Network {
1073
+ export type ProvideResponse = {
1074
+ method: 'network.provideResponse';
1075
+ params: Network.ProvideResponseParameters;
1076
+ };
1077
+ }
1078
+ export namespace Network {
1079
+ export type ProvideResponseParameters = {
1080
+ request: Network.Request;
1081
+ body?: Network.BytesValue;
1082
+ cookies?: [...Network.SetCookieHeader[]];
1083
+ headers?: [...Network.Header[]];
1084
+ reasonPhrase?: string;
1085
+ statusCode?: JsUint;
1086
+ };
1087
+ }
1088
+ export namespace Network {
1089
+ export type RemoveIntercept = {
1090
+ method: 'network.removeIntercept';
1091
+ params: Network.RemoveInterceptParameters;
1092
+ };
1093
+ }
1094
+ export namespace Network {
1095
+ export type RemoveInterceptParameters = {
1096
+ intercept: Network.Intercept;
1097
+ };
1098
+ }
1099
+ export type ScriptEvent =
1100
+ | Script.Message
1101
+ | Script.RealmCreated
1102
+ | Script.RealmDestroyed;
1103
+ export namespace Network {
1104
+ export type AuthRequiredParameters = Network.BaseParameters & {
1105
+ response: Network.ResponseData;
1106
+ };
1107
+ }
1108
+ export namespace Network {
1109
+ export type BeforeRequestSentParameters = Network.BaseParameters & {
1110
+ initiator: Network.Initiator;
1111
+ };
1112
+ }
1113
+ export namespace Network {
1114
+ export type FetchErrorParameters = Network.BaseParameters & {
1115
+ errorText: string;
1116
+ };
1117
+ }
1118
+ export namespace Network {
1119
+ export type ResponseCompletedParameters = Network.BaseParameters & {
1120
+ response: Network.ResponseData;
1121
+ };
1122
+ }
1123
+ export namespace Network {
1124
+ export type ResponseStartedParameters = Network.BaseParameters & {
1125
+ response: Network.ResponseData;
1126
+ };
1127
+ }
1128
+ export type ScriptCommand =
1129
+ | Script.AddPreloadScript
1130
+ | Script.CallFunction
1131
+ | Script.Disown
1132
+ | Script.Evaluate
1133
+ | Script.GetRealms
1134
+ | Script.RemovePreloadScript;
1135
+ export type ScriptResult =
1136
+ | Script.AddPreloadScriptResult
1137
+ | Script.EvaluateResult
1138
+ | Script.GetRealmsResult;
1139
+ export namespace Network {
1140
+ export type AuthRequired = {
1141
+ method: 'network.authRequired';
1142
+ params: Network.AuthRequiredParameters;
1143
+ };
1144
+ }
1145
+ export namespace Network {
1146
+ export type BeforeRequestSent = {
1147
+ method: 'network.beforeRequestSent';
1148
+ params: Network.BeforeRequestSentParameters;
1149
+ };
1150
+ }
1151
+ export namespace Network {
1152
+ export type FetchError = {
1153
+ method: 'network.fetchError';
1154
+ params: Network.FetchErrorParameters;
1155
+ };
1156
+ }
1157
+ export namespace Network {
1158
+ export type ResponseCompleted = {
1159
+ method: 'network.responseCompleted';
1160
+ params: Network.ResponseCompletedParameters;
1161
+ };
1162
+ }
1163
+ export namespace Network {
1164
+ export type ResponseStarted = {
1165
+ method: 'network.responseStarted';
1166
+ params: Network.ResponseStartedParameters;
1167
+ };
1168
+ }
1169
+ export namespace Script {
1170
+ export type Channel = string;
1171
+ }
1172
+ export namespace Script {
1173
+ export type EvaluateResultSuccess = {
1174
+ type: 'success';
1175
+ result: Script.RemoteValue;
1176
+ realm: Script.Realm;
1177
+ };
1178
+ }
1179
+ export namespace Script {
1180
+ export type ExceptionDetails = {
1181
+ columnNumber: JsUint;
1182
+ exception: Script.RemoteValue;
1183
+ lineNumber: JsUint;
1184
+ stackTrace: Script.StackTrace;
1185
+ text: string;
1186
+ };
1187
+ }
1188
+ export namespace Script {
1189
+ export type ChannelValue = {
1190
+ type: 'channel';
1191
+ value: Script.ChannelProperties;
1192
+ };
1193
+ }
1194
+ export namespace Script {
1195
+ export type ChannelProperties = {
1196
+ channel: Script.Channel;
1197
+ serializationOptions?: Script.SerializationOptions;
1198
+ ownership?: Script.ResultOwnership;
1199
+ };
1200
+ }
1201
+ export namespace Script {
1202
+ export type EvaluateResult =
1203
+ | Script.EvaluateResultSuccess
1204
+ | Script.EvaluateResultException;
1205
+ }
1206
+ export namespace Script {
1207
+ export type EvaluateResultException = {
1208
+ type: 'exception';
1209
+ exceptionDetails: Script.ExceptionDetails;
1210
+ realm: Script.Realm;
1211
+ };
1212
+ }
1213
+ export namespace Script {
1214
+ export type Handle = string;
1215
+ }
1216
+ export namespace Script {
1217
+ export type InternalId = string;
1218
+ }
1219
+ export namespace Script {
1220
+ export type ListLocalValue = [...Script.LocalValue[]];
1221
+ }
1222
+ export namespace Script {
1223
+ export type LocalValue =
1224
+ | Script.RemoteReference
1225
+ | Script.PrimitiveProtocolValue
1226
+ | Script.ChannelValue
1227
+ | Script.ArrayLocalValue
1228
+ | Script.DateLocalValue
1229
+ | Script.MapLocalValue
1230
+ | Script.ObjectLocalValue
1231
+ | Script.RegExpLocalValue
1232
+ | Script.SetLocalValue;
1233
+ }
1234
+ export namespace Script {
1235
+ export type ArrayLocalValue = {
1236
+ type: 'array';
1237
+ value: Script.ListLocalValue;
1238
+ };
1239
+ }
1240
+ export namespace Script {
1241
+ export type DateLocalValue = {
1242
+ type: 'date';
1243
+ value: string;
1244
+ };
1245
+ }
1246
+ export namespace Script {
1247
+ export type MappingLocalValue = [
1248
+ ...[Script.LocalValue | string, Script.LocalValue][],
1249
+ ];
1250
+ }
1251
+ export namespace Script {
1252
+ export type MapLocalValue = {
1253
+ type: 'map';
1254
+ value: Script.MappingLocalValue;
1255
+ };
1256
+ }
1257
+ export namespace Script {
1258
+ export type ObjectLocalValue = {
1259
+ type: 'object';
1260
+ value: Script.MappingLocalValue;
1261
+ };
1262
+ }
1263
+ export namespace Script {
1264
+ export type RegExpValue = {
1265
+ pattern: string;
1266
+ flags?: string;
1267
+ };
1268
+ }
1269
+ export namespace Script {
1270
+ export type RegExpLocalValue = {
1271
+ type: 'regexp';
1272
+ value: Script.RegExpValue;
1273
+ };
1274
+ }
1275
+ export namespace Script {
1276
+ export type SetLocalValue = {
1277
+ type: 'set';
1278
+ value: Script.ListLocalValue;
1279
+ };
1280
+ }
1281
+ export namespace Script {
1282
+ export type PreloadScript = string;
1283
+ }
1284
+ export namespace Script {
1285
+ export type Realm = string;
1286
+ }
1287
+ export namespace Script {
1288
+ export type PrimitiveProtocolValue =
1289
+ | Script.UndefinedValue
1290
+ | Script.NullValue
1291
+ | Script.StringValue
1292
+ | Script.NumberValue
1293
+ | Script.BooleanValue
1294
+ | Script.BigIntValue;
1295
+ }
1296
+ export namespace Script {
1297
+ export type UndefinedValue = {
1298
+ type: 'undefined';
1299
+ };
1300
+ }
1301
+ export namespace Script {
1302
+ export type NullValue = {
1303
+ type: 'null';
1304
+ };
1305
+ }
1306
+ export namespace Script {
1307
+ export type StringValue = {
1308
+ type: 'string';
1309
+ value: string;
1310
+ };
1311
+ }
1312
+ export namespace Script {
1313
+ export type SpecialNumber = 'NaN' | '-0' | 'Infinity' | '-Infinity';
1314
+ }
1315
+ export namespace Script {
1316
+ export type NumberValue = {
1317
+ type: 'number';
1318
+ value: number | Script.SpecialNumber;
1319
+ };
1320
+ }
1321
+ export namespace Script {
1322
+ export type BooleanValue = {
1323
+ type: 'boolean';
1324
+ value: boolean;
1325
+ };
1326
+ }
1327
+ export namespace Script {
1328
+ export type BigIntValue = {
1329
+ type: 'bigint';
1330
+ value: string;
1331
+ };
1332
+ }
1333
+ export namespace Script {
1334
+ export type RealmInfo =
1335
+ | Script.WindowRealmInfo
1336
+ | Script.DedicatedWorkerRealmInfo
1337
+ | Script.SharedWorkerRealmInfo
1338
+ | Script.ServiceWorkerRealmInfo
1339
+ | Script.WorkerRealmInfo
1340
+ | Script.PaintWorkletRealmInfo
1341
+ | Script.AudioWorkletRealmInfo
1342
+ | Script.WorkletRealmInfo;
1343
+ }
1344
+ export namespace Script {
1345
+ export type BaseRealmInfo = {
1346
+ realm: Script.Realm;
1347
+ origin: string;
1348
+ };
1349
+ }
1350
+ export namespace Script {
1351
+ export type WindowRealmInfo = Script.BaseRealmInfo & {
1352
+ type: 'window';
1353
+ context: BrowsingContext.BrowsingContext;
1354
+ sandbox?: string;
1355
+ };
1356
+ }
1357
+ export namespace Script {
1358
+ export type DedicatedWorkerRealmInfo = Script.BaseRealmInfo & {
1359
+ type: 'dedicated-worker';
1360
+ owners: [Script.Realm];
1361
+ };
1362
+ }
1363
+ export namespace Script {
1364
+ export type SharedWorkerRealmInfo = Script.BaseRealmInfo & {
1365
+ type: 'shared-worker';
1366
+ };
1367
+ }
1368
+ export namespace Script {
1369
+ export type ServiceWorkerRealmInfo = Script.BaseRealmInfo & {
1370
+ type: 'service-worker';
1371
+ };
1372
+ }
1373
+ export namespace Script {
1374
+ export type WorkerRealmInfo = Script.BaseRealmInfo & {
1375
+ type: 'worker';
1376
+ };
1377
+ }
1378
+ export namespace Script {
1379
+ export type PaintWorkletRealmInfo = Script.BaseRealmInfo & {
1380
+ type: 'paint-worklet';
1381
+ };
1382
+ }
1383
+ export namespace Script {
1384
+ export type AudioWorkletRealmInfo = Script.BaseRealmInfo & {
1385
+ type: 'audio-worklet';
1386
+ };
1387
+ }
1388
+ export namespace Script {
1389
+ export type WorkletRealmInfo = Script.BaseRealmInfo & {
1390
+ type: 'worklet';
1391
+ };
1392
+ }
1393
+ export namespace Script {
1394
+ export type RealmType =
1395
+ | 'window'
1396
+ | 'dedicated-worker'
1397
+ | 'shared-worker'
1398
+ | 'service-worker'
1399
+ | 'worker'
1400
+ | 'paint-worklet'
1401
+ | 'audio-worklet'
1402
+ | 'worklet';
1403
+ }
1404
+ export namespace Script {
1405
+ export type ListRemoteValue = [...Script.RemoteValue[]];
1406
+ }
1407
+ export namespace Script {
1408
+ export type MappingRemoteValue = [
1409
+ ...[Script.RemoteValue | string, Script.RemoteValue][],
1410
+ ];
1411
+ }
1412
+ export namespace Script {
1413
+ export type RemoteValue =
1414
+ | Script.PrimitiveProtocolValue
1415
+ | Script.SymbolRemoteValue
1416
+ | Script.ArrayRemoteValue
1417
+ | Script.ObjectRemoteValue
1418
+ | Script.FunctionRemoteValue
1419
+ | Script.RegExpRemoteValue
1420
+ | Script.DateRemoteValue
1421
+ | Script.MapRemoteValue
1422
+ | Script.SetRemoteValue
1423
+ | Script.WeakMapRemoteValue
1424
+ | Script.WeakSetRemoteValue
1425
+ | Script.GeneratorRemoteValue
1426
+ | Script.ErrorRemoteValue
1427
+ | Script.ProxyRemoteValue
1428
+ | Script.PromiseRemoteValue
1429
+ | Script.TypedArrayRemoteValue
1430
+ | Script.ArrayBufferRemoteValue
1431
+ | Script.NodeListRemoteValue
1432
+ | Script.HtmlCollectionRemoteValue
1433
+ | Script.NodeRemoteValue
1434
+ | Script.WindowProxyRemoteValue;
1435
+ }
1436
+ export namespace Script {
1437
+ export type RemoteReference =
1438
+ | Script.SharedReference
1439
+ | Script.RemoteObjectReference;
1440
+ }
1441
+ export namespace Script {
1442
+ export type SharedReference = {
1443
+ sharedId: Script.SharedId;
1444
+ handle?: Script.Handle;
1445
+ } & Extensible;
1446
+ }
1447
+ export namespace Script {
1448
+ export type RemoteObjectReference = {
1449
+ handle: Script.Handle;
1450
+ sharedId?: Script.SharedId;
1451
+ } & Extensible;
1452
+ }
1453
+ export namespace Script {
1454
+ export type SymbolRemoteValue = {
1455
+ type: 'symbol';
1456
+ handle?: Script.Handle;
1457
+ internalId?: Script.InternalId;
1458
+ };
1459
+ }
1460
+ export namespace Script {
1461
+ export type ArrayRemoteValue = {
1462
+ type: 'array';
1463
+ handle?: Script.Handle;
1464
+ internalId?: Script.InternalId;
1465
+ value?: Script.ListRemoteValue;
1466
+ };
1467
+ }
1468
+ export namespace Script {
1469
+ export type ObjectRemoteValue = {
1470
+ type: 'object';
1471
+ handle?: Script.Handle;
1472
+ internalId?: Script.InternalId;
1473
+ value?: Script.MappingRemoteValue;
1474
+ };
1475
+ }
1476
+ export namespace Script {
1477
+ export type FunctionRemoteValue = {
1478
+ type: 'function';
1479
+ handle?: Script.Handle;
1480
+ internalId?: Script.InternalId;
1481
+ };
1482
+ }
1483
+ export namespace Script {
1484
+ export type RegExpRemoteValue = {
1485
+ handle?: Script.Handle;
1486
+ internalId?: Script.InternalId;
1487
+ } & Script.RegExpLocalValue;
1488
+ }
1489
+ export namespace Script {
1490
+ export type DateRemoteValue = {
1491
+ handle?: Script.Handle;
1492
+ internalId?: Script.InternalId;
1493
+ } & Script.DateLocalValue;
1494
+ }
1495
+ export namespace Script {
1496
+ export type MapRemoteValue = {
1497
+ type: 'map';
1498
+ handle?: Script.Handle;
1499
+ internalId?: Script.InternalId;
1500
+ value?: Script.MappingRemoteValue;
1501
+ };
1502
+ }
1503
+ export namespace Script {
1504
+ export type SetRemoteValue = {
1505
+ type: 'set';
1506
+ handle?: Script.Handle;
1507
+ internalId?: Script.InternalId;
1508
+ value?: Script.ListRemoteValue;
1509
+ };
1510
+ }
1511
+ export namespace Script {
1512
+ export type WeakMapRemoteValue = {
1513
+ type: 'weakmap';
1514
+ handle?: Script.Handle;
1515
+ internalId?: Script.InternalId;
1516
+ };
1517
+ }
1518
+ export namespace Script {
1519
+ export type WeakSetRemoteValue = {
1520
+ type: 'weakset';
1521
+ handle?: Script.Handle;
1522
+ internalId?: Script.InternalId;
1523
+ };
1524
+ }
1525
+ export namespace Script {
1526
+ export type GeneratorRemoteValue = {
1527
+ type: 'generator';
1528
+ handle?: Script.Handle;
1529
+ internalId?: Script.InternalId;
1530
+ };
1531
+ }
1532
+ export namespace Script {
1533
+ export type ErrorRemoteValue = {
1534
+ type: 'error';
1535
+ handle?: Script.Handle;
1536
+ internalId?: Script.InternalId;
1537
+ };
1538
+ }
1539
+ export namespace Script {
1540
+ export type ProxyRemoteValue = {
1541
+ type: 'proxy';
1542
+ handle?: Script.Handle;
1543
+ internalId?: Script.InternalId;
1544
+ };
1545
+ }
1546
+ export namespace Script {
1547
+ export type PromiseRemoteValue = {
1548
+ type: 'promise';
1549
+ handle?: Script.Handle;
1550
+ internalId?: Script.InternalId;
1551
+ };
1552
+ }
1553
+ export namespace Script {
1554
+ export type TypedArrayRemoteValue = {
1555
+ type: 'typedarray';
1556
+ handle?: Script.Handle;
1557
+ internalId?: Script.InternalId;
1558
+ };
1559
+ }
1560
+ export namespace Script {
1561
+ export type ArrayBufferRemoteValue = {
1562
+ type: 'arraybuffer';
1563
+ handle?: Script.Handle;
1564
+ internalId?: Script.InternalId;
1565
+ };
1566
+ }
1567
+ export namespace Script {
1568
+ export type NodeListRemoteValue = {
1569
+ type: 'nodelist';
1570
+ handle?: Script.Handle;
1571
+ internalId?: Script.InternalId;
1572
+ value?: Script.ListRemoteValue;
1573
+ };
1574
+ }
1575
+ export namespace Script {
1576
+ export type HtmlCollectionRemoteValue = {
1577
+ type: 'htmlcollection';
1578
+ handle?: Script.Handle;
1579
+ internalId?: Script.InternalId;
1580
+ value?: Script.ListRemoteValue;
1581
+ };
1582
+ }
1583
+ export namespace Script {
1584
+ export type NodeRemoteValue = {
1585
+ type: 'node';
1586
+ sharedId?: Script.SharedId;
1587
+ handle?: Script.Handle;
1588
+ internalId?: Script.InternalId;
1589
+ value?: Script.NodeProperties;
1590
+ };
1591
+ }
1592
+ export namespace Script {
1593
+ export type NodeProperties = {
1594
+ nodeType: JsUint;
1595
+ childNodeCount: JsUint;
1596
+ attributes?: {
1597
+ [key: string]: string;
1598
+ };
1599
+ children?: [...Script.NodeRemoteValue[]];
1600
+ localName?: string;
1601
+ mode?: 'open' | 'closed';
1602
+ namespaceURI?: string;
1603
+ nodeValue?: string;
1604
+ shadowRoot?: Script.NodeRemoteValue | null;
1605
+ };
1606
+ }
1607
+ export namespace Script {
1608
+ export type WindowProxyRemoteValue = {
1609
+ type: 'window';
1610
+ value: Script.WindowProxyProperties;
1611
+ handle?: Script.Handle;
1612
+ internalId?: Script.InternalId;
1613
+ };
1614
+ }
1615
+ export namespace Script {
1616
+ export type WindowProxyProperties = {
1617
+ context: BrowsingContext.BrowsingContext;
1618
+ };
1619
+ }
1620
+ export namespace Script {
1621
+ export const enum ResultOwnership {
1622
+ Root = 'root',
1623
+ None = 'none',
1624
+ }
1625
+ }
1626
+ export namespace Script {
1627
+ export type SerializationOptions = {
1628
+ /**
1629
+ * @defaultValue `0`
1630
+ */
1631
+ maxDomDepth?: JsUint | null;
1632
+ /**
1633
+ * @defaultValue `null`
1634
+ */
1635
+ maxObjectDepth?: JsUint | null;
1636
+ /**
1637
+ * @defaultValue `"none"`
1638
+ */
1639
+ includeShadowTree?: 'none' | 'open' | 'all';
1640
+ };
1641
+ }
1642
+ export namespace Script {
1643
+ export type SharedId = string;
1644
+ }
1645
+ export namespace Script {
1646
+ export type StackFrame = {
1647
+ columnNumber: JsUint;
1648
+ functionName: string;
1649
+ lineNumber: JsUint;
1650
+ url: string;
1651
+ };
1652
+ }
1653
+ export namespace Script {
1654
+ export type StackTrace = {
1655
+ callFrames: [...Script.StackFrame[]];
1656
+ };
1657
+ }
1658
+ export namespace Script {
1659
+ export type Source = {
1660
+ realm: Script.Realm;
1661
+ context?: BrowsingContext.BrowsingContext;
1662
+ };
1663
+ }
1664
+ export namespace Script {
1665
+ export type RealmTarget = {
1666
+ realm: Script.Realm;
1667
+ };
1668
+ }
1669
+ export namespace Script {
1670
+ export type ContextTarget = {
1671
+ context: BrowsingContext.BrowsingContext;
1672
+ sandbox?: string;
1673
+ };
1674
+ }
1675
+ export namespace Script {
1676
+ export type Target = Script.ContextTarget | Script.RealmTarget;
1677
+ }
1678
+ export namespace Script {
1679
+ export type AddPreloadScript = {
1680
+ method: 'script.addPreloadScript';
1681
+ params: Script.AddPreloadScriptParameters;
1682
+ };
1683
+ }
1684
+ export namespace Script {
1685
+ export type AddPreloadScriptParameters = {
1686
+ functionDeclaration: string;
1687
+ arguments?: [...Script.ChannelValue[]];
1688
+ contexts?: [
1689
+ BrowsingContext.BrowsingContext,
1690
+ ...BrowsingContext.BrowsingContext[],
1691
+ ];
1692
+ sandbox?: string;
1693
+ };
1694
+ }
1695
+ export namespace Script {
1696
+ export type AddPreloadScriptResult = {
1697
+ script: Script.PreloadScript;
1698
+ };
1699
+ }
1700
+ export namespace Script {
1701
+ export type Disown = {
1702
+ method: 'script.disown';
1703
+ params: Script.DisownParameters;
1704
+ };
1705
+ }
1706
+ export namespace Script {
1707
+ export type DisownParameters = {
1708
+ handles: [...Script.Handle[]];
1709
+ target: Script.Target;
1710
+ };
1711
+ }
1712
+ export namespace Script {
1713
+ export type CallFunctionParameters = {
1714
+ functionDeclaration: string;
1715
+ awaitPromise: boolean;
1716
+ target: Script.Target;
1717
+ arguments?: [...Script.LocalValue[]];
1718
+ resultOwnership?: Script.ResultOwnership;
1719
+ serializationOptions?: Script.SerializationOptions;
1720
+ this?: Script.LocalValue;
1721
+ /**
1722
+ * @defaultValue `false`
1723
+ */
1724
+ userActivation?: boolean;
1725
+ };
1726
+ }
1727
+ export namespace Script {
1728
+ export type CallFunction = {
1729
+ method: 'script.callFunction';
1730
+ params: Script.CallFunctionParameters;
1731
+ };
1732
+ }
1733
+ export namespace Script {
1734
+ export type Evaluate = {
1735
+ method: 'script.evaluate';
1736
+ params: Script.EvaluateParameters;
1737
+ };
1738
+ }
1739
+ export namespace Script {
1740
+ export type EvaluateParameters = {
1741
+ expression: string;
1742
+ target: Script.Target;
1743
+ awaitPromise: boolean;
1744
+ resultOwnership?: Script.ResultOwnership;
1745
+ serializationOptions?: Script.SerializationOptions;
1746
+ /**
1747
+ * @defaultValue `false`
1748
+ */
1749
+ userActivation?: boolean;
1750
+ };
1751
+ }
1752
+ export namespace Script {
1753
+ export type GetRealms = {
1754
+ method: 'script.getRealms';
1755
+ params: Script.GetRealmsParameters;
1756
+ };
1757
+ }
1758
+ export namespace Script {
1759
+ export type GetRealmsParameters = {
1760
+ context?: BrowsingContext.BrowsingContext;
1761
+ type?: Script.RealmType;
1762
+ };
1763
+ }
1764
+ export namespace Script {
1765
+ export type GetRealmsResult = {
1766
+ realms: [...Script.RealmInfo[]];
1767
+ };
1768
+ }
1769
+ export namespace Script {
1770
+ export type RemovePreloadScript = {
1771
+ method: 'script.removePreloadScript';
1772
+ params: Script.RemovePreloadScriptParameters;
1773
+ };
1774
+ }
1775
+ export namespace Script {
1776
+ export type RemovePreloadScriptParameters = {
1777
+ script: Script.PreloadScript;
1778
+ };
1779
+ }
1780
+ export namespace Script {
1781
+ export type MessageParameters = {
1782
+ channel: Script.Channel;
1783
+ data: Script.RemoteValue;
1784
+ source: Script.Source;
1785
+ };
1786
+ }
1787
+ export namespace Script {
1788
+ export type RealmCreated = {
1789
+ method: 'script.realmCreated';
1790
+ params: Script.RealmInfo;
1791
+ };
1792
+ }
1793
+ export namespace Script {
1794
+ export type Message = {
1795
+ method: 'script.message';
1796
+ params: Script.MessageParameters;
1797
+ };
1798
+ }
1799
+ export namespace Script {
1800
+ export type RealmDestroyed = {
1801
+ method: 'script.realmDestroyed';
1802
+ params: Script.RealmDestroyedParameters;
1803
+ };
1804
+ }
1805
+ export namespace Script {
1806
+ export type RealmDestroyedParameters = {
1807
+ realm: Script.Realm;
1808
+ };
1809
+ }
1810
+ export type StorageCommand =
1811
+ | Storage.DeleteCookies
1812
+ | Storage.GetCookies
1813
+ | Storage.SetCookie;
1814
+ export type StorageResult =
1815
+ | Storage.DeleteCookiesResult
1816
+ | Storage.GetCookiesResult
1817
+ | Storage.SetCookieResult;
1818
+ export namespace Storage {
1819
+ export type PartitionKey = {
1820
+ userContext?: string;
1821
+ sourceOrigin?: string;
1822
+ } & Extensible;
1823
+ }
1824
+ export namespace Storage {
1825
+ export type GetCookies = {
1826
+ method: 'storage.getCookies';
1827
+ params: Storage.GetCookiesParameters;
1828
+ };
1829
+ }
1830
+ export namespace Storage {
1831
+ export type CookieFilter = {
1832
+ name?: string;
1833
+ value?: Network.BytesValue;
1834
+ domain?: string;
1835
+ path?: string;
1836
+ size?: JsUint;
1837
+ httpOnly?: boolean;
1838
+ secure?: boolean;
1839
+ sameSite?: Network.SameSite;
1840
+ expiry?: JsUint;
1841
+ } & Extensible;
1842
+ }
1843
+ export namespace Storage {
1844
+ export type BrowsingContextPartitionDescriptor = {
1845
+ type: 'context';
1846
+ context: BrowsingContext.BrowsingContext;
1847
+ };
1848
+ }
1849
+ export namespace Storage {
1850
+ export type StorageKeyPartitionDescriptor = {
1851
+ type: 'storageKey';
1852
+ userContext?: string;
1853
+ sourceOrigin?: string;
1854
+ } & Extensible;
1855
+ }
1856
+ export namespace Storage {
1857
+ export type PartitionDescriptor =
1858
+ | Storage.BrowsingContextPartitionDescriptor
1859
+ | Storage.StorageKeyPartitionDescriptor;
1860
+ }
1861
+ export namespace Storage {
1862
+ export type GetCookiesParameters = {
1863
+ filter?: Storage.CookieFilter;
1864
+ partition?: Storage.PartitionDescriptor;
1865
+ };
1866
+ }
1867
+ export namespace Storage {
1868
+ export type GetCookiesResult = {
1869
+ cookies: [...Network.Cookie[]];
1870
+ partitionKey: Storage.PartitionKey;
1871
+ };
1872
+ }
1873
+ export namespace Storage {
1874
+ export type SetCookie = {
1875
+ method: 'storage.setCookie';
1876
+ params: Storage.SetCookieParameters;
1877
+ };
1878
+ }
1879
+ export namespace Storage {
1880
+ export type PartialCookie = {
1881
+ name: string;
1882
+ value: Network.BytesValue;
1883
+ domain: string;
1884
+ path?: string;
1885
+ httpOnly?: boolean;
1886
+ secure?: boolean;
1887
+ sameSite?: Network.SameSite;
1888
+ expiry?: JsUint;
1889
+ } & Extensible;
1890
+ }
1891
+ export namespace Storage {
1892
+ export type SetCookieParameters = {
1893
+ cookie: Storage.PartialCookie;
1894
+ partition?: Storage.PartitionDescriptor;
1895
+ };
1896
+ }
1897
+ export namespace Storage {
1898
+ export type SetCookieResult = {
1899
+ partitionKey: Storage.PartitionKey;
1900
+ };
1901
+ }
1902
+ export namespace Storage {
1903
+ export type DeleteCookies = {
1904
+ method: 'storage.deleteCookies';
1905
+ params: Storage.DeleteCookiesParameters;
1906
+ };
1907
+ }
1908
+ export namespace Storage {
1909
+ export type DeleteCookiesParameters = {
1910
+ filter?: Storage.CookieFilter;
1911
+ partition?: Storage.PartitionDescriptor;
1912
+ };
1913
+ }
1914
+ export namespace Storage {
1915
+ export type DeleteCookiesResult = {
1916
+ partitionKey: Storage.PartitionKey;
1917
+ };
1918
+ }
1919
+ export type LogEvent = Log.EntryAdded;
1920
+ export namespace Log {
1921
+ export const enum Level {
1922
+ Debug = 'debug',
1923
+ Info = 'info',
1924
+ Warn = 'warn',
1925
+ Error = 'error',
1926
+ }
1927
+ }
1928
+ export namespace Log {
1929
+ export type Entry =
1930
+ | Log.GenericLogEntry
1931
+ | Log.ConsoleLogEntry
1932
+ | Log.JavascriptLogEntry;
1933
+ }
1934
+ export namespace Log {
1935
+ export type BaseLogEntry = {
1936
+ level: Log.Level;
1937
+ source: Script.Source;
1938
+ text: string | null;
1939
+ timestamp: JsUint;
1940
+ stackTrace?: Script.StackTrace;
1941
+ };
1942
+ }
1943
+ export namespace Log {
1944
+ export type GenericLogEntry = Log.BaseLogEntry & {
1945
+ type: string;
1946
+ };
1947
+ }
1948
+ export namespace Log {
1949
+ export type ConsoleLogEntry = Log.BaseLogEntry & {
1950
+ type: 'console';
1951
+ method: string;
1952
+ args: [...Script.RemoteValue[]];
1953
+ };
1954
+ }
1955
+ export namespace Log {
1956
+ export type JavascriptLogEntry = Log.BaseLogEntry & {
1957
+ type: 'javascript';
1958
+ };
1959
+ }
1960
+ export namespace Log {
1961
+ export type EntryAdded = {
1962
+ method: 'log.entryAdded';
1963
+ params: Log.Entry;
1964
+ };
1965
+ }
1966
+ export type InputCommand =
1967
+ | Input.PerformActions
1968
+ | Input.ReleaseActions
1969
+ | Input.SetFiles;
1970
+ export namespace Input {
1971
+ export type ElementOrigin = {
1972
+ type: 'element';
1973
+ element: Script.SharedReference;
1974
+ };
1975
+ }
1976
+ export namespace Input {
1977
+ export type PerformActionsParameters = {
1978
+ context: BrowsingContext.BrowsingContext;
1979
+ actions: [...Input.SourceActions[]];
1980
+ };
1981
+ }
1982
+ export namespace Input {
1983
+ export type NoneSourceActions = {
1984
+ type: 'none';
1985
+ id: string;
1986
+ actions: [...Input.NoneSourceAction[]];
1987
+ };
1988
+ }
1989
+ export namespace Input {
1990
+ export type KeySourceActions = {
1991
+ type: 'key';
1992
+ id: string;
1993
+ actions: [...Input.KeySourceAction[]];
1994
+ };
1995
+ }
1996
+ export namespace Input {
1997
+ export type PointerSourceActions = {
1998
+ type: 'pointer';
1999
+ id: string;
2000
+ parameters?: Input.PointerParameters;
2001
+ actions: [...Input.PointerSourceAction[]];
2002
+ };
2003
+ }
2004
+ export namespace Input {
2005
+ export type PerformActions = {
2006
+ method: 'input.performActions';
2007
+ params: Input.PerformActionsParameters;
2008
+ };
2009
+ }
2010
+ export namespace Input {
2011
+ export type SourceActions =
2012
+ | Input.NoneSourceActions
2013
+ | Input.KeySourceActions
2014
+ | Input.PointerSourceActions
2015
+ | Input.WheelSourceActions;
2016
+ }
2017
+ export namespace Input {
2018
+ export type NoneSourceAction = Input.PauseAction;
2019
+ }
2020
+ export namespace Input {
2021
+ export type KeySourceAction =
2022
+ | Input.PauseAction
2023
+ | Input.KeyDownAction
2024
+ | Input.KeyUpAction;
2025
+ }
2026
+ export namespace Input {
2027
+ export const enum PointerType {
2028
+ Mouse = 'mouse',
2029
+ Pen = 'pen',
2030
+ Touch = 'touch',
2031
+ }
2032
+ }
2033
+ export namespace Input {
2034
+ export type PointerParameters = {
2035
+ /**
2036
+ * @defaultValue `"mouse"`
2037
+ */
2038
+ pointerType?: Input.PointerType;
2039
+ };
2040
+ }
2041
+ export namespace Input {
2042
+ export type WheelSourceActions = {
2043
+ type: 'wheel';
2044
+ id: string;
2045
+ actions: [...Input.WheelSourceAction[]];
2046
+ };
2047
+ }
2048
+ export namespace Input {
2049
+ export type PointerSourceAction =
2050
+ | Input.PauseAction
2051
+ | Input.PointerDownAction
2052
+ | Input.PointerUpAction
2053
+ | Input.PointerMoveAction;
2054
+ }
2055
+ export namespace Input {
2056
+ export type WheelSourceAction = Input.PauseAction | Input.WheelScrollAction;
2057
+ }
2058
+ export namespace Input {
2059
+ export type PauseAction = {
2060
+ type: 'pause';
2061
+ duration?: JsUint;
2062
+ };
2063
+ }
2064
+ export namespace Input {
2065
+ export type KeyDownAction = {
2066
+ type: 'keyDown';
2067
+ value: string;
2068
+ };
2069
+ }
2070
+ export namespace Input {
2071
+ export type KeyUpAction = {
2072
+ type: 'keyUp';
2073
+ value: string;
2074
+ };
2075
+ }
2076
+ export namespace Input {
2077
+ export type PointerUpAction = {
2078
+ type: 'pointerUp';
2079
+ button: JsUint;
2080
+ };
2081
+ }
2082
+ export namespace Input {
2083
+ export type PointerDownAction = {
2084
+ type: 'pointerDown';
2085
+ button: JsUint;
2086
+ } & Input.PointerCommonProperties;
2087
+ }
2088
+ export namespace Input {
2089
+ export type PointerMoveAction = {
2090
+ type: 'pointerMove';
2091
+ x: JsInt;
2092
+ y: JsInt;
2093
+ duration?: JsUint;
2094
+ origin?: Input.Origin;
2095
+ } & Input.PointerCommonProperties;
2096
+ }
2097
+ export namespace Input {
2098
+ export type WheelScrollAction = {
2099
+ type: 'scroll';
2100
+ x: JsInt;
2101
+ y: JsInt;
2102
+ deltaX: JsInt;
2103
+ deltaY: JsInt;
2104
+ duration?: JsUint;
2105
+ /**
2106
+ * @defaultValue `"viewport"`
2107
+ */
2108
+ origin?: Input.Origin;
2109
+ };
2110
+ }
2111
+ export namespace Input {
2112
+ export type PointerCommonProperties = {
2113
+ /**
2114
+ * @defaultValue `1`
2115
+ */
2116
+ width?: JsUint;
2117
+ /**
2118
+ * @defaultValue `1`
2119
+ */
2120
+ height?: JsUint;
2121
+ /**
2122
+ * @defaultValue `0`
2123
+ */
2124
+ pressure?: number;
2125
+ /**
2126
+ * @defaultValue `0`
2127
+ */
2128
+ tangentialPressure?: number;
2129
+ /**
2130
+ * Must be between `0` and `359`, inclusive.
2131
+ *
2132
+ * @defaultValue `0`
2133
+ */
2134
+ twist?: number;
2135
+ /**
2136
+ * Must be between `0` and `1.5707963267948966`, inclusive.
2137
+ *
2138
+ * @defaultValue `0`
2139
+ */
2140
+ altitudeAngle?: number;
2141
+ /**
2142
+ * Must be between `0` and `6.283185307179586`, inclusive.
2143
+ *
2144
+ * @defaultValue `0`
2145
+ */
2146
+ azimuthAngle?: number;
2147
+ };
2148
+ }
2149
+ export namespace Input {
2150
+ export type Origin = 'viewport' | 'pointer' | Input.ElementOrigin;
2151
+ }
2152
+ export namespace Input {
2153
+ export type ReleaseActions = {
2154
+ method: 'input.releaseActions';
2155
+ params: Input.ReleaseActionsParameters;
2156
+ };
2157
+ }
2158
+ export namespace Input {
2159
+ export type ReleaseActionsParameters = {
2160
+ context: BrowsingContext.BrowsingContext;
2161
+ };
2162
+ }
2163
+ export namespace Input {
2164
+ export type SetFiles = {
2165
+ method: 'input.setFiles';
2166
+ params: Input.SetFilesParameters;
2167
+ };
2168
+ }
2169
+ export namespace Input {
2170
+ export type SetFilesParameters = {
2171
+ context: BrowsingContext.BrowsingContext;
2172
+ element: Script.SharedReference;
2173
+ files: [...string[]];
2174
+ };
2175
+ }