001package Torello.Browser.BrowserAPI;
002
003// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
004// Java-HTML Imports
005// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
006
007import Torello.Browser.*;
008import Torello.Browser.helper.*;
009import Torello.Browser.JavaScriptAPI.*;
010import Torello.JSON.*;
011
012import Torello.Java.ReadOnly.ReadOnlyList;
013import Torello.Java.ReadOnly.ReadOnlyArrayList;
014
015import Torello.JavaDoc.Annotations.StaticFunctional;
016import Torello.JavaDoc.Annotations.JDHeaderBackgroundImg;
017
018import Torello.Browser.BrowserAPI.NestedHelpers.Commands.Overlay$$Commands;
019
020
021// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
022// JDK Imports
023// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
024
025import javax.json.JsonObject;
026import javax.json.JsonValue;
027
028/**
029 * <SPAN CLASS=COPIEDJDK><B>This domain provides various functionality related to drawing atop the inspected page.</B></SPAN>
030 * <EMBED CLASS='external-html' DATA-FILE-ID=CDP.CODE_GEN_NOTE>
031 */
032@StaticFunctional@JDHeaderBackgroundImg(EmbedTagFileID="CDP.WOOD_PLANK_NOTE")
033public class Overlay
034{
035    // No Pubic Constructors
036    private Overlay() { }
037
038
039    // ********************************************************************************************
040    // ********************************************************************************************
041    // Marker Events
042    // ********************************************************************************************
043    // ********************************************************************************************
044
045
046    /**
047     * Fired when user cancels the inspect mode.
048
049     * 
050     * <EMBED CLASS='external-html' DATA-FILE-ID=CDP.MarkerEvent
051     *     DATA-NAME=inspectModeCanceled>
052     */
053    public static final String inspectModeCanceled = "Overlay.inspectModeCanceled Marker Event";
054
055
056    // ********************************************************************************************
057    // ********************************************************************************************
058    // Enumerated String Constants Lists
059    // ********************************************************************************************
060    // ********************************************************************************************
061
062
063    /**
064     * <CODE>[No Description Provided by Google]</CODE>
065     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
066     */
067    public static final ReadOnlyList<String> ColorFormat = new ReadOnlyArrayList<>
068        (String.class, "hex", "hsl", "hwb", "rgb");
069
070    /**
071     * <CODE>[No Description Provided by Google]</CODE>
072     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
073     */
074    public static final ReadOnlyList<String> ContrastAlgorithm = new ReadOnlyArrayList<>
075        (String.class, "aa", "aaa", "apca");
076
077    /**
078     * <CODE>[No Description Provided by Google]</CODE>
079     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
080     */
081    public static final ReadOnlyList<String> InspectMode = new ReadOnlyArrayList<>
082        (String.class, "captureAreaScreenshot", "none", "searchForNode", "searchForUAShadowDOM");
083
084
085
086    // ********************************************************************************************
087    // ********************************************************************************************
088    // Basic Types
089    // ********************************************************************************************
090    // ********************************************************************************************
091
092
093    /**
094     * Style information for drawing a box.
095     * 
096     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
097     */
098    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
099    public static class BoxStyle
100        extends BaseType<BoxStyle>
101        implements java.io.Serializable
102    {
103        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
104        protected static final long serialVersionUID = 1;
105
106        private static final NestedHelper<Overlay.BoxStyle> singleton =
107            Torello.Browser.BrowserAPI.NestedHelpers.Types.
108                Overlay$$BoxStyle$$.singleton;
109
110        /**
111         * The background color for the box (default: transparent)
112         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
113         */
114        public final DOM.RGBA fillColor;
115
116        /**
117         * The hatching color for the box (default: transparent)
118         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
119         */
120        public final DOM.RGBA hatchColor;
121
122        /** Constructor.  Please review this class' fields for documentation. */
123        public BoxStyle(ReadOnlyList<Boolean> isPresent, DOM.RGBA fillColor, DOM.RGBA hatchColor)
124        {
125            super(singleton, Domains.Overlay, "BoxStyle", 2);
126
127            this.fillColor  = fillColor;
128            this.hatchColor = hatchColor;
129
130            this.isPresent = (isPresent == null)
131                ? singleton.generateIsPresentList(this)
132                : THROWS.check(isPresent, 2, "Overlay.BoxStyle");
133        }
134
135        /** Creates an instance of this class from a {@link JsonObject}.*/
136        public static BoxStyle fromJSON(JsonObject jo)
137        { return singleton.fromJSON(jo); }
138
139        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
140        public static NestedDescriptor<BoxStyle> descriptor()
141        { return singleton.descriptor(); }
142    }
143
144    /**
145     * <CODE>[No Description Provided by Google]</CODE>
146     * 
147     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
148     */
149    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
150    public static class ContainerQueryContainerHighlightConfig
151        extends BaseType<ContainerQueryContainerHighlightConfig>
152        implements java.io.Serializable
153    {
154        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
155        protected static final long serialVersionUID = 1;
156
157        private static final NestedHelper<Overlay.ContainerQueryContainerHighlightConfig> singleton =
158            Torello.Browser.BrowserAPI.NestedHelpers.Types.
159                Overlay$$ContainerQueryContainerHighlightConfig$$.singleton;
160
161        /**
162         * The style of the container border.
163         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
164         */
165        public final Overlay.LineStyle containerBorder;
166
167        /**
168         * The style of the descendants' borders.
169         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
170         */
171        public final Overlay.LineStyle descendantBorder;
172
173        /** Constructor.  Please review this class' fields for documentation. */
174        public ContainerQueryContainerHighlightConfig(
175                ReadOnlyList<Boolean> isPresent, LineStyle containerBorder,
176                LineStyle descendantBorder
177            )
178        {
179            super(singleton, Domains.Overlay, "ContainerQueryContainerHighlightConfig", 2);
180
181            this.containerBorder    = containerBorder;
182            this.descendantBorder   = descendantBorder;
183
184            this.isPresent = (isPresent == null)
185                ? singleton.generateIsPresentList(this)
186                : THROWS.check(isPresent, 2, "Overlay.ContainerQueryContainerHighlightConfig");
187        }
188
189        /** Creates an instance of this class from a {@link JsonObject}.*/
190        public static ContainerQueryContainerHighlightConfig fromJSON(JsonObject jo)
191        { return singleton.fromJSON(jo); }
192
193        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
194        public static NestedDescriptor<ContainerQueryContainerHighlightConfig> descriptor()
195        { return singleton.descriptor(); }
196    }
197
198    /**
199     * <CODE>[No Description Provided by Google]</CODE>
200     * 
201     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
202     */
203    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
204    public static class ContainerQueryHighlightConfig
205        extends BaseType<ContainerQueryHighlightConfig>
206        implements java.io.Serializable
207    {
208        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
209        protected static final long serialVersionUID = 1;
210
211        private static final NestedHelper<Overlay.ContainerQueryHighlightConfig> singleton =
212            Torello.Browser.BrowserAPI.NestedHelpers.Types.
213                Overlay$$ContainerQueryHighlightConfig$$.singleton;
214
215        /** A descriptor for the highlight appearance of container query containers. */
216        public final Overlay.ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig;
217
218        /** Identifier of the container node to highlight. */
219        public final int nodeId;
220
221        /** Constructor.  Please review this class' fields for documentation. */
222        public ContainerQueryHighlightConfig(
223                ReadOnlyList<Boolean> isPresent,
224                ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig,
225                int nodeId
226            )
227        {
228            super(singleton, Domains.Overlay, "ContainerQueryHighlightConfig", 2);
229
230            this.containerQueryContainerHighlightConfig = containerQueryContainerHighlightConfig;
231            this.nodeId                                 = nodeId;
232
233            this.isPresent = (isPresent == null)
234                ? singleton.generateIsPresentList(this)
235                : THROWS.check(isPresent, 2, "Overlay.ContainerQueryHighlightConfig");
236        }
237
238        /** Creates an instance of this class from a {@link JsonObject}.*/
239        public static ContainerQueryHighlightConfig fromJSON(JsonObject jo)
240        { return singleton.fromJSON(jo); }
241
242        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
243        public static NestedDescriptor<ContainerQueryHighlightConfig> descriptor()
244        { return singleton.descriptor(); }
245    }
246
247    /**
248     * Configuration data for the highlighting of Flex container elements.
249     * 
250     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
251     */
252    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
253    public static class FlexContainerHighlightConfig
254        extends BaseType<FlexContainerHighlightConfig>
255        implements java.io.Serializable
256    {
257        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
258        protected static final long serialVersionUID = 1;
259
260        private static final NestedHelper<Overlay.FlexContainerHighlightConfig> singleton =
261            Torello.Browser.BrowserAPI.NestedHelpers.Types.
262                Overlay$$FlexContainerHighlightConfig$$.singleton;
263
264        /**
265         * The style of the container border
266         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
267         */
268        public final Overlay.LineStyle containerBorder;
269
270        /**
271         * The style of the separator between lines
272         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
273         */
274        public final Overlay.LineStyle lineSeparator;
275
276        /**
277         * The style of the separator between items
278         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
279         */
280        public final Overlay.LineStyle itemSeparator;
281
282        /**
283         * Style of content-distribution space on the main axis (justify-content).
284         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
285         */
286        public final Overlay.BoxStyle mainDistributedSpace;
287
288        /**
289         * Style of content-distribution space on the cross axis (align-content).
290         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
291         */
292        public final Overlay.BoxStyle crossDistributedSpace;
293
294        /**
295         * Style of empty space caused by row gaps (gap/row-gap).
296         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
297         */
298        public final Overlay.BoxStyle rowGapSpace;
299
300        /**
301         * Style of empty space caused by columns gaps (gap/column-gap).
302         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
303         */
304        public final Overlay.BoxStyle columnGapSpace;
305
306        /**
307         * Style of the self-alignment line (align-items).
308         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
309         */
310        public final Overlay.LineStyle crossAlignment;
311
312        /** Constructor.  Please review this class' fields for documentation. */
313        public FlexContainerHighlightConfig(
314                ReadOnlyList<Boolean> isPresent, LineStyle containerBorder,
315                LineStyle lineSeparator, LineStyle itemSeparator, BoxStyle mainDistributedSpace,
316                BoxStyle crossDistributedSpace, BoxStyle rowGapSpace, BoxStyle columnGapSpace,
317                LineStyle crossAlignment
318            )
319        {
320            super(singleton, Domains.Overlay, "FlexContainerHighlightConfig", 8);
321
322            this.containerBorder        = containerBorder;
323            this.lineSeparator          = lineSeparator;
324            this.itemSeparator          = itemSeparator;
325            this.mainDistributedSpace   = mainDistributedSpace;
326            this.crossDistributedSpace  = crossDistributedSpace;
327            this.rowGapSpace            = rowGapSpace;
328            this.columnGapSpace         = columnGapSpace;
329            this.crossAlignment         = crossAlignment;
330
331            this.isPresent = (isPresent == null)
332                ? singleton.generateIsPresentList(this)
333                : THROWS.check(isPresent, 8, "Overlay.FlexContainerHighlightConfig");
334        }
335
336        /** Creates an instance of this class from a {@link JsonObject}.*/
337        public static FlexContainerHighlightConfig fromJSON(JsonObject jo)
338        { return singleton.fromJSON(jo); }
339
340        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
341        public static NestedDescriptor<FlexContainerHighlightConfig> descriptor()
342        { return singleton.descriptor(); }
343    }
344
345    /**
346     * Configuration data for the highlighting of Flex item elements.
347     * 
348     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
349     */
350    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
351    public static class FlexItemHighlightConfig
352        extends BaseType<FlexItemHighlightConfig>
353        implements java.io.Serializable
354    {
355        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
356        protected static final long serialVersionUID = 1;
357
358        private static final NestedHelper<Overlay.FlexItemHighlightConfig> singleton =
359            Torello.Browser.BrowserAPI.NestedHelpers.Types.
360                Overlay$$FlexItemHighlightConfig$$.singleton;
361
362        /**
363         * Style of the box representing the item's base size
364         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
365         */
366        public final Overlay.BoxStyle baseSizeBox;
367
368        /**
369         * Style of the border around the box representing the item's base size
370         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
371         */
372        public final Overlay.LineStyle baseSizeBorder;
373
374        /**
375         * Style of the arrow representing if the item grew or shrank
376         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
377         */
378        public final Overlay.LineStyle flexibilityArrow;
379
380        /** Constructor.  Please review this class' fields for documentation. */
381        public FlexItemHighlightConfig(
382                ReadOnlyList<Boolean> isPresent, BoxStyle baseSizeBox, LineStyle baseSizeBorder,
383                LineStyle flexibilityArrow
384            )
385        {
386            super(singleton, Domains.Overlay, "FlexItemHighlightConfig", 3);
387
388            this.baseSizeBox        = baseSizeBox;
389            this.baseSizeBorder     = baseSizeBorder;
390            this.flexibilityArrow   = flexibilityArrow;
391
392            this.isPresent = (isPresent == null)
393                ? singleton.generateIsPresentList(this)
394                : THROWS.check(isPresent, 3, "Overlay.FlexItemHighlightConfig");
395        }
396
397        /** Creates an instance of this class from a {@link JsonObject}.*/
398        public static FlexItemHighlightConfig fromJSON(JsonObject jo)
399        { return singleton.fromJSON(jo); }
400
401        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
402        public static NestedDescriptor<FlexItemHighlightConfig> descriptor()
403        { return singleton.descriptor(); }
404    }
405
406    /**
407     * <CODE>[No Description Provided by Google]</CODE>
408     * 
409     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
410     */
411    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
412    public static class FlexNodeHighlightConfig
413        extends BaseType<FlexNodeHighlightConfig>
414        implements java.io.Serializable
415    {
416        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
417        protected static final long serialVersionUID = 1;
418
419        private static final NestedHelper<Overlay.FlexNodeHighlightConfig> singleton =
420            Torello.Browser.BrowserAPI.NestedHelpers.Types.
421                Overlay$$FlexNodeHighlightConfig$$.singleton;
422
423        /** A descriptor for the highlight appearance of flex containers. */
424        public final Overlay.FlexContainerHighlightConfig flexContainerHighlightConfig;
425
426        /** Identifier of the node to highlight. */
427        public final int nodeId;
428
429        /** Constructor.  Please review this class' fields for documentation. */
430        public FlexNodeHighlightConfig(
431                ReadOnlyList<Boolean> isPresent,
432                FlexContainerHighlightConfig flexContainerHighlightConfig, int nodeId
433            )
434        {
435            super(singleton, Domains.Overlay, "FlexNodeHighlightConfig", 2);
436
437            this.flexContainerHighlightConfig   = flexContainerHighlightConfig;
438            this.nodeId                         = nodeId;
439
440            this.isPresent = (isPresent == null)
441                ? singleton.generateIsPresentList(this)
442                : THROWS.check(isPresent, 2, "Overlay.FlexNodeHighlightConfig");
443        }
444
445        /** Creates an instance of this class from a {@link JsonObject}.*/
446        public static FlexNodeHighlightConfig fromJSON(JsonObject jo)
447        { return singleton.fromJSON(jo); }
448
449        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
450        public static NestedDescriptor<FlexNodeHighlightConfig> descriptor()
451        { return singleton.descriptor(); }
452    }
453
454    /**
455     * Configuration data for the highlighting of Grid elements.
456     * 
457     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
458     */
459    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
460    public static class GridHighlightConfig
461        extends BaseType<GridHighlightConfig>
462        implements java.io.Serializable
463    {
464        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
465        protected static final long serialVersionUID = 1;
466
467        private static final NestedHelper<Overlay.GridHighlightConfig> singleton =
468            Torello.Browser.BrowserAPI.NestedHelpers.Types.
469                Overlay$$GridHighlightConfig$$.singleton;
470
471        /**
472         * Whether the extension lines from grid cells to the rulers should be shown (default: false).
473         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
474         */
475        public final Boolean showGridExtensionLines;
476
477        /**
478         * Show Positive line number labels (default: false).
479         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
480         */
481        public final Boolean showPositiveLineNumbers;
482
483        /**
484         * Show Negative line number labels (default: false).
485         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
486         */
487        public final Boolean showNegativeLineNumbers;
488
489        /**
490         * Show area name labels (default: false).
491         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
492         */
493        public final Boolean showAreaNames;
494
495        /**
496         * Show line name labels (default: false).
497         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
498         */
499        public final Boolean showLineNames;
500
501        /**
502         * Show track size labels (default: false).
503         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
504         */
505        public final Boolean showTrackSizes;
506
507        /**
508         * The grid container border highlight color (default: transparent).
509         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
510         */
511        public final DOM.RGBA gridBorderColor;
512
513        /**
514         * The cell border color (default: transparent). Deprecated, please use rowLineColor and columnLineColor instead.
515         * <BR /><B CLASS=Opt-Top>OPTIONAL</B><B CLASS=Dep-Top>DEPRECATED</B>
516         */
517        public final DOM.RGBA cellBorderColor;
518
519        /**
520         * The row line color (default: transparent).
521         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
522         */
523        public final DOM.RGBA rowLineColor;
524
525        /**
526         * The column line color (default: transparent).
527         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
528         */
529        public final DOM.RGBA columnLineColor;
530
531        /**
532         * Whether the grid border is dashed (default: false).
533         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
534         */
535        public final Boolean gridBorderDash;
536
537        /**
538         * Whether the cell border is dashed (default: false). Deprecated, please us rowLineDash and columnLineDash instead.
539         * <BR /><B CLASS=Opt-Top>OPTIONAL</B><B CLASS=Dep-Top>DEPRECATED</B>
540         */
541        public final Boolean cellBorderDash;
542
543        /**
544         * Whether row lines are dashed (default: false).
545         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
546         */
547        public final Boolean rowLineDash;
548
549        /**
550         * Whether column lines are dashed (default: false).
551         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
552         */
553        public final Boolean columnLineDash;
554
555        /**
556         * The row gap highlight fill color (default: transparent).
557         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
558         */
559        public final DOM.RGBA rowGapColor;
560
561        /**
562         * The row gap hatching fill color (default: transparent).
563         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
564         */
565        public final DOM.RGBA rowHatchColor;
566
567        /**
568         * The column gap highlight fill color (default: transparent).
569         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
570         */
571        public final DOM.RGBA columnGapColor;
572
573        /**
574         * The column gap hatching fill color (default: transparent).
575         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
576         */
577        public final DOM.RGBA columnHatchColor;
578
579        /**
580         * The named grid areas border color (Default: transparent).
581         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
582         */
583        public final DOM.RGBA areaBorderColor;
584
585        /**
586         * The grid container background color (Default: transparent).
587         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
588         */
589        public final DOM.RGBA gridBackgroundColor;
590
591        /** Constructor.  Please review this class' fields for documentation. */
592        public GridHighlightConfig(
593                ReadOnlyList<Boolean> isPresent, Boolean showGridExtensionLines,
594                Boolean showPositiveLineNumbers, Boolean showNegativeLineNumbers,
595                Boolean showAreaNames, Boolean showLineNames, Boolean showTrackSizes,
596                DOM.RGBA gridBorderColor, DOM.RGBA cellBorderColor, DOM.RGBA rowLineColor,
597                DOM.RGBA columnLineColor, Boolean gridBorderDash, Boolean cellBorderDash,
598                Boolean rowLineDash, Boolean columnLineDash, DOM.RGBA rowGapColor,
599                DOM.RGBA rowHatchColor, DOM.RGBA columnGapColor, DOM.RGBA columnHatchColor,
600                DOM.RGBA areaBorderColor, DOM.RGBA gridBackgroundColor
601            )
602        {
603            super(singleton, Domains.Overlay, "GridHighlightConfig", 20);
604
605            this.showGridExtensionLines     = showGridExtensionLines;
606            this.showPositiveLineNumbers    = showPositiveLineNumbers;
607            this.showNegativeLineNumbers    = showNegativeLineNumbers;
608            this.showAreaNames              = showAreaNames;
609            this.showLineNames              = showLineNames;
610            this.showTrackSizes             = showTrackSizes;
611            this.gridBorderColor            = gridBorderColor;
612            this.cellBorderColor            = cellBorderColor;
613            this.rowLineColor               = rowLineColor;
614            this.columnLineColor            = columnLineColor;
615            this.gridBorderDash             = gridBorderDash;
616            this.cellBorderDash             = cellBorderDash;
617            this.rowLineDash                = rowLineDash;
618            this.columnLineDash             = columnLineDash;
619            this.rowGapColor                = rowGapColor;
620            this.rowHatchColor              = rowHatchColor;
621            this.columnGapColor             = columnGapColor;
622            this.columnHatchColor           = columnHatchColor;
623            this.areaBorderColor            = areaBorderColor;
624            this.gridBackgroundColor        = gridBackgroundColor;
625
626            this.isPresent = (isPresent == null)
627                ? singleton.generateIsPresentList(this)
628                : THROWS.check(isPresent, 20, "Overlay.GridHighlightConfig");
629        }
630
631        /** Creates an instance of this class from a {@link JsonObject}.*/
632        public static GridHighlightConfig fromJSON(JsonObject jo)
633        { return singleton.fromJSON(jo); }
634
635        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
636        public static NestedDescriptor<GridHighlightConfig> descriptor()
637        { return singleton.descriptor(); }
638    }
639
640    /**
641     * Configurations for Persistent Grid Highlight
642     * 
643     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
644     */
645    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
646    public static class GridNodeHighlightConfig
647        extends BaseType<GridNodeHighlightConfig>
648        implements java.io.Serializable
649    {
650        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
651        protected static final long serialVersionUID = 1;
652
653        private static final NestedHelper<Overlay.GridNodeHighlightConfig> singleton =
654            Torello.Browser.BrowserAPI.NestedHelpers.Types.
655                Overlay$$GridNodeHighlightConfig$$.singleton;
656
657        /** A descriptor for the highlight appearance. */
658        public final Overlay.GridHighlightConfig gridHighlightConfig;
659
660        /** Identifier of the node to highlight. */
661        public final int nodeId;
662
663        /** Constructor.  Please review this class' fields for documentation. */
664        public GridNodeHighlightConfig
665            (ReadOnlyList<Boolean> isPresent, GridHighlightConfig gridHighlightConfig, int nodeId)
666        {
667            super(singleton, Domains.Overlay, "GridNodeHighlightConfig", 2);
668
669            this.gridHighlightConfig    = gridHighlightConfig;
670            this.nodeId                 = nodeId;
671
672            this.isPresent = (isPresent == null)
673                ? singleton.generateIsPresentList(this)
674                : THROWS.check(isPresent, 2, "Overlay.GridNodeHighlightConfig");
675        }
676
677        /** Creates an instance of this class from a {@link JsonObject}.*/
678        public static GridNodeHighlightConfig fromJSON(JsonObject jo)
679        { return singleton.fromJSON(jo); }
680
681        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
682        public static NestedDescriptor<GridNodeHighlightConfig> descriptor()
683        { return singleton.descriptor(); }
684    }
685
686    /**
687     * Configuration data for the highlighting of page elements.
688     * 
689     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
690     */
691    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
692    public static class HighlightConfig
693        extends BaseType<HighlightConfig>
694        implements java.io.Serializable
695    {
696        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
697        protected static final long serialVersionUID = 1;
698
699        private static final NestedHelper<Overlay.HighlightConfig> singleton =
700            Torello.Browser.BrowserAPI.NestedHelpers.Types.
701                Overlay$$HighlightConfig$$.singleton;
702
703        /**
704         * Whether the node info tooltip should be shown (default: false).
705         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
706         */
707        public final Boolean showInfo;
708
709        /**
710         * Whether the node styles in the tooltip (default: false).
711         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
712         */
713        public final Boolean showStyles;
714
715        /**
716         * Whether the rulers should be shown (default: false).
717         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
718         */
719        public final Boolean showRulers;
720
721        /**
722         * Whether the a11y info should be shown (default: true).
723         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
724         */
725        public final Boolean showAccessibilityInfo;
726
727        /**
728         * Whether the extension lines from node to the rulers should be shown (default: false).
729         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
730         */
731        public final Boolean showExtensionLines;
732
733        /**
734         * The content box highlight fill color (default: transparent).
735         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
736         */
737        public final DOM.RGBA contentColor;
738
739        /**
740         * The padding highlight fill color (default: transparent).
741         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
742         */
743        public final DOM.RGBA paddingColor;
744
745        /**
746         * The border highlight fill color (default: transparent).
747         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
748         */
749        public final DOM.RGBA borderColor;
750
751        /**
752         * The margin highlight fill color (default: transparent).
753         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
754         */
755        public final DOM.RGBA marginColor;
756
757        /**
758         * The event target element highlight fill color (default: transparent).
759         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
760         */
761        public final DOM.RGBA eventTargetColor;
762
763        /**
764         * The shape outside fill color (default: transparent).
765         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
766         */
767        public final DOM.RGBA shapeColor;
768
769        /**
770         * The shape margin fill color (default: transparent).
771         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
772         */
773        public final DOM.RGBA shapeMarginColor;
774
775        /**
776         * The grid layout color (default: transparent).
777         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
778         */
779        public final DOM.RGBA cssGridColor;
780
781        /**
782         * The color format used to format color styles (default: hex).
783         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
784         * <EMBED CLASS='external-html' DATA-D=Overlay DATA-C=ColorFormat DATA-F=colorFormat DATA-FILE-ID=CDP.EL2>
785         * @see BaseType#enumStrList(String)
786         */
787        public final String colorFormat;
788
789        /**
790         * The grid layout highlight configuration (default: all transparent).
791         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
792         */
793        public final Overlay.GridHighlightConfig gridHighlightConfig;
794
795        /**
796         * The flex container highlight configuration (default: all transparent).
797         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
798         */
799        public final Overlay.FlexContainerHighlightConfig flexContainerHighlightConfig;
800
801        /**
802         * The flex item highlight configuration (default: all transparent).
803         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
804         */
805        public final Overlay.FlexItemHighlightConfig flexItemHighlightConfig;
806
807        /**
808         * The contrast algorithm to use for the contrast ratio (default: aa).
809         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
810         * <EMBED CLASS='external-html' DATA-D=Overlay DATA-C=ContrastAlgorithm DATA-F=contrastAlgorithm DATA-FILE-ID=CDP.EL2>
811         * @see BaseType#enumStrList(String)
812         */
813        public final String contrastAlgorithm;
814
815        /**
816         * The container query container highlight configuration (default: all transparent).
817         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
818         */
819        public final Overlay.ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig;
820
821        /** Constructor.  Please review this class' fields for documentation. */
822        public HighlightConfig(
823                ReadOnlyList<Boolean> isPresent, Boolean showInfo, Boolean showStyles,
824                Boolean showRulers, Boolean showAccessibilityInfo, Boolean showExtensionLines,
825                DOM.RGBA contentColor, DOM.RGBA paddingColor, DOM.RGBA borderColor,
826                DOM.RGBA marginColor, DOM.RGBA eventTargetColor, DOM.RGBA shapeColor,
827                DOM.RGBA shapeMarginColor, DOM.RGBA cssGridColor, String colorFormat,
828                GridHighlightConfig gridHighlightConfig,
829                FlexContainerHighlightConfig flexContainerHighlightConfig,
830                FlexItemHighlightConfig flexItemHighlightConfig, String contrastAlgorithm,
831                ContainerQueryContainerHighlightConfig containerQueryContainerHighlightConfig
832            )
833        {
834            super(singleton, Domains.Overlay, "HighlightConfig", 19);
835
836            this.showInfo                               = showInfo;
837            this.showStyles                             = showStyles;
838            this.showRulers                             = showRulers;
839            this.showAccessibilityInfo                  = showAccessibilityInfo;
840            this.showExtensionLines                     = showExtensionLines;
841            this.contentColor                           = contentColor;
842            this.paddingColor                           = paddingColor;
843            this.borderColor                            = borderColor;
844            this.marginColor                            = marginColor;
845            this.eventTargetColor                       = eventTargetColor;
846            this.shapeColor                             = shapeColor;
847            this.shapeMarginColor                       = shapeMarginColor;
848            this.cssGridColor                           = cssGridColor;
849            this.colorFormat                            = colorFormat;
850            this.gridHighlightConfig                    = gridHighlightConfig;
851            this.flexContainerHighlightConfig           = flexContainerHighlightConfig;
852            this.flexItemHighlightConfig                = flexItemHighlightConfig;
853            this.contrastAlgorithm                      = contrastAlgorithm;
854            this.containerQueryContainerHighlightConfig = containerQueryContainerHighlightConfig;
855
856            this.isPresent = (isPresent == null)
857                ? singleton.generateIsPresentList(this)
858                : THROWS.check(isPresent, 19, "Overlay.HighlightConfig");
859        }
860
861        /** Creates an instance of this class from a {@link JsonObject}.*/
862        public static HighlightConfig fromJSON(JsonObject jo)
863        { return singleton.fromJSON(jo); }
864
865        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
866        public static NestedDescriptor<HighlightConfig> descriptor()
867        { return singleton.descriptor(); }
868    }
869
870    /**
871     * Configuration for dual screen hinge
872     * 
873     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
874     */
875    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
876    public static class HingeConfig
877        extends BaseType<HingeConfig>
878        implements java.io.Serializable
879    {
880        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
881        protected static final long serialVersionUID = 1;
882
883        private static final NestedHelper<Overlay.HingeConfig> singleton =
884            Torello.Browser.BrowserAPI.NestedHelpers.Types.
885                Overlay$$HingeConfig$$.singleton;
886
887        /** A rectangle represent hinge */
888        public final DOM.Rect rect;
889
890        /**
891         * The content box highlight fill color (default: a dark color).
892         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
893         */
894        public final DOM.RGBA contentColor;
895
896        /**
897         * The content box highlight outline color (default: transparent).
898         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
899         */
900        public final DOM.RGBA outlineColor;
901
902        /** Constructor.  Please review this class' fields for documentation. */
903        public HingeConfig(
904                ReadOnlyList<Boolean> isPresent, DOM.Rect rect, DOM.RGBA contentColor,
905                DOM.RGBA outlineColor
906            )
907        {
908            super(singleton, Domains.Overlay, "HingeConfig", 3);
909
910            this.rect           = rect;
911            this.contentColor   = contentColor;
912            this.outlineColor   = outlineColor;
913
914            this.isPresent = (isPresent == null)
915                ? singleton.generateIsPresentList(this)
916                : THROWS.check(isPresent, 3, "Overlay.HingeConfig");
917        }
918
919        /** Creates an instance of this class from a {@link JsonObject}.*/
920        public static HingeConfig fromJSON(JsonObject jo)
921        { return singleton.fromJSON(jo); }
922
923        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
924        public static NestedDescriptor<HingeConfig> descriptor()
925        { return singleton.descriptor(); }
926    }
927
928    /**
929     * <CODE>[No Description Provided by Google]</CODE>
930     * 
931     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
932     */
933    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
934    public static class IsolatedElementHighlightConfig
935        extends BaseType<IsolatedElementHighlightConfig>
936        implements java.io.Serializable
937    {
938        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
939        protected static final long serialVersionUID = 1;
940
941        private static final NestedHelper<Overlay.IsolatedElementHighlightConfig> singleton =
942            Torello.Browser.BrowserAPI.NestedHelpers.Types.
943                Overlay$$IsolatedElementHighlightConfig$$.singleton;
944
945        /** A descriptor for the highlight appearance of an element in isolation mode. */
946        public final Overlay.IsolationModeHighlightConfig isolationModeHighlightConfig;
947
948        /** Identifier of the isolated element to highlight. */
949        public final int nodeId;
950
951        /** Constructor.  Please review this class' fields for documentation. */
952        public IsolatedElementHighlightConfig(
953                ReadOnlyList<Boolean> isPresent,
954                IsolationModeHighlightConfig isolationModeHighlightConfig, int nodeId
955            )
956        {
957            super(singleton, Domains.Overlay, "IsolatedElementHighlightConfig", 2);
958
959            this.isolationModeHighlightConfig   = isolationModeHighlightConfig;
960            this.nodeId                         = nodeId;
961
962            this.isPresent = (isPresent == null)
963                ? singleton.generateIsPresentList(this)
964                : THROWS.check(isPresent, 2, "Overlay.IsolatedElementHighlightConfig");
965        }
966
967        /** Creates an instance of this class from a {@link JsonObject}.*/
968        public static IsolatedElementHighlightConfig fromJSON(JsonObject jo)
969        { return singleton.fromJSON(jo); }
970
971        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
972        public static NestedDescriptor<IsolatedElementHighlightConfig> descriptor()
973        { return singleton.descriptor(); }
974    }
975
976    /**
977     * <CODE>[No Description Provided by Google]</CODE>
978     * 
979     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
980     */
981    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
982    public static class IsolationModeHighlightConfig
983        extends BaseType<IsolationModeHighlightConfig>
984        implements java.io.Serializable
985    {
986        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
987        protected static final long serialVersionUID = 1;
988
989        private static final NestedHelper<Overlay.IsolationModeHighlightConfig> singleton =
990            Torello.Browser.BrowserAPI.NestedHelpers.Types.
991                Overlay$$IsolationModeHighlightConfig$$.singleton;
992
993        /**
994         * The fill color of the resizers (default: transparent).
995         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
996         */
997        public final DOM.RGBA resizerColor;
998
999        /**
1000         * The fill color for resizer handles (default: transparent).
1001         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1002         */
1003        public final DOM.RGBA resizerHandleColor;
1004
1005        /**
1006         * The fill color for the mask covering non-isolated elements (default: transparent).
1007         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1008         */
1009        public final DOM.RGBA maskColor;
1010
1011        /** Constructor.  Please review this class' fields for documentation. */
1012        public IsolationModeHighlightConfig(
1013                ReadOnlyList<Boolean> isPresent, DOM.RGBA resizerColor,
1014                DOM.RGBA resizerHandleColor, DOM.RGBA maskColor
1015            )
1016        {
1017            super(singleton, Domains.Overlay, "IsolationModeHighlightConfig", 3);
1018
1019            this.resizerColor       = resizerColor;
1020            this.resizerHandleColor = resizerHandleColor;
1021            this.maskColor          = maskColor;
1022
1023            this.isPresent = (isPresent == null)
1024                ? singleton.generateIsPresentList(this)
1025                : THROWS.check(isPresent, 3, "Overlay.IsolationModeHighlightConfig");
1026        }
1027
1028        /** Creates an instance of this class from a {@link JsonObject}.*/
1029        public static IsolationModeHighlightConfig fromJSON(JsonObject jo)
1030        { return singleton.fromJSON(jo); }
1031
1032        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1033        public static NestedDescriptor<IsolationModeHighlightConfig> descriptor()
1034        { return singleton.descriptor(); }
1035    }
1036
1037    /**
1038     * Style information for drawing a line.
1039     * 
1040     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
1041     */
1042    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1043    public static class LineStyle
1044        extends BaseType<LineStyle>
1045        implements java.io.Serializable
1046    {
1047        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1048        protected static final long serialVersionUID = 1;
1049
1050        private static final NestedHelper<Overlay.LineStyle> singleton =
1051            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1052                Overlay$$LineStyle$$.singleton;
1053
1054        /**
1055         * The color of the line (default: transparent)
1056         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1057         */
1058        public final DOM.RGBA color;
1059
1060        /**
1061         * The line pattern (default: solid)
1062         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1063         * <EMBED CLASS='external-html' DATA-D=Overlay DATA-C=LineStyle DATA-F=pattern DATA-FILE-ID=CDP.EL1>
1064         * @see BaseType#enumStrList(String)
1065         */
1066        public final String pattern;
1067
1068        /** Constructor.  Please review this class' fields for documentation. */
1069        public LineStyle(ReadOnlyList<Boolean> isPresent, DOM.RGBA color, String pattern)
1070        {
1071            super(singleton, Domains.Overlay, "LineStyle", 2);
1072
1073            this.color      = color;
1074            this.pattern    = pattern;
1075
1076            this.isPresent = (isPresent == null)
1077                ? singleton.generateIsPresentList(this)
1078                : THROWS.check(isPresent, 2, "Overlay.LineStyle");
1079        }
1080
1081        /** Creates an instance of this class from a {@link JsonObject}.*/
1082        public static LineStyle fromJSON(JsonObject jo)
1083        { return singleton.fromJSON(jo); }
1084
1085        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1086        public static NestedDescriptor<LineStyle> descriptor()
1087        { return singleton.descriptor(); }
1088    }
1089
1090    /**
1091     * <CODE>[No Description Provided by Google]</CODE>
1092     * 
1093     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
1094     */
1095    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1096    public static class ScrollSnapContainerHighlightConfig
1097        extends BaseType<ScrollSnapContainerHighlightConfig>
1098        implements java.io.Serializable
1099    {
1100        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1101        protected static final long serialVersionUID = 1;
1102
1103        private static final NestedHelper<Overlay.ScrollSnapContainerHighlightConfig> singleton =
1104            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1105                Overlay$$ScrollSnapContainerHighlightConfig$$.singleton;
1106
1107        /**
1108         * The style of the snapport border (default: transparent)
1109         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1110         */
1111        public final Overlay.LineStyle snapportBorder;
1112
1113        /**
1114         * The style of the snap area border (default: transparent)
1115         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1116         */
1117        public final Overlay.LineStyle snapAreaBorder;
1118
1119        /**
1120         * The margin highlight fill color (default: transparent).
1121         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1122         */
1123        public final DOM.RGBA scrollMarginColor;
1124
1125        /**
1126         * The padding highlight fill color (default: transparent).
1127         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1128         */
1129        public final DOM.RGBA scrollPaddingColor;
1130
1131        /** Constructor.  Please review this class' fields for documentation. */
1132        public ScrollSnapContainerHighlightConfig(
1133                ReadOnlyList<Boolean> isPresent, LineStyle snapportBorder,
1134                LineStyle snapAreaBorder, DOM.RGBA scrollMarginColor, DOM.RGBA scrollPaddingColor
1135            )
1136        {
1137            super(singleton, Domains.Overlay, "ScrollSnapContainerHighlightConfig", 4);
1138
1139            this.snapportBorder     = snapportBorder;
1140            this.snapAreaBorder     = snapAreaBorder;
1141            this.scrollMarginColor  = scrollMarginColor;
1142            this.scrollPaddingColor = scrollPaddingColor;
1143
1144            this.isPresent = (isPresent == null)
1145                ? singleton.generateIsPresentList(this)
1146                : THROWS.check(isPresent, 4, "Overlay.ScrollSnapContainerHighlightConfig");
1147        }
1148
1149        /** Creates an instance of this class from a {@link JsonObject}.*/
1150        public static ScrollSnapContainerHighlightConfig fromJSON(JsonObject jo)
1151        { return singleton.fromJSON(jo); }
1152
1153        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1154        public static NestedDescriptor<ScrollSnapContainerHighlightConfig> descriptor()
1155        { return singleton.descriptor(); }
1156    }
1157
1158    /**
1159     * <CODE>[No Description Provided by Google]</CODE>
1160     * 
1161     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
1162     */
1163    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1164    public static class ScrollSnapHighlightConfig
1165        extends BaseType<ScrollSnapHighlightConfig>
1166        implements java.io.Serializable
1167    {
1168        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1169        protected static final long serialVersionUID = 1;
1170
1171        private static final NestedHelper<Overlay.ScrollSnapHighlightConfig> singleton =
1172            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1173                Overlay$$ScrollSnapHighlightConfig$$.singleton;
1174
1175        /** A descriptor for the highlight appearance of scroll snap containers. */
1176        public final Overlay.ScrollSnapContainerHighlightConfig scrollSnapContainerHighlightConfig;
1177
1178        /** Identifier of the node to highlight. */
1179        public final int nodeId;
1180
1181        /** Constructor.  Please review this class' fields for documentation. */
1182        public ScrollSnapHighlightConfig(
1183                ReadOnlyList<Boolean> isPresent,
1184                ScrollSnapContainerHighlightConfig scrollSnapContainerHighlightConfig, int nodeId
1185            )
1186        {
1187            super(singleton, Domains.Overlay, "ScrollSnapHighlightConfig", 2);
1188
1189            this.scrollSnapContainerHighlightConfig = scrollSnapContainerHighlightConfig;
1190            this.nodeId                             = nodeId;
1191
1192            this.isPresent = (isPresent == null)
1193                ? singleton.generateIsPresentList(this)
1194                : THROWS.check(isPresent, 2, "Overlay.ScrollSnapHighlightConfig");
1195        }
1196
1197        /** Creates an instance of this class from a {@link JsonObject}.*/
1198        public static ScrollSnapHighlightConfig fromJSON(JsonObject jo)
1199        { return singleton.fromJSON(jo); }
1200
1201        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1202        public static NestedDescriptor<ScrollSnapHighlightConfig> descriptor()
1203        { return singleton.descriptor(); }
1204    }
1205
1206    /**
1207     * Configuration data for drawing the source order of an elements children.
1208     * 
1209     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
1210     */
1211    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1212    public static class SourceOrderConfig
1213        extends BaseType<SourceOrderConfig>
1214        implements java.io.Serializable
1215    {
1216        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1217        protected static final long serialVersionUID = 1;
1218
1219        private static final NestedHelper<Overlay.SourceOrderConfig> singleton =
1220            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1221                Overlay$$SourceOrderConfig$$.singleton;
1222
1223        /** the color to outline the given element in. */
1224        public final DOM.RGBA parentOutlineColor;
1225
1226        /** the color to outline the child elements in. */
1227        public final DOM.RGBA childOutlineColor;
1228
1229        /** Constructor.  Please review this class' fields for documentation. */
1230        public SourceOrderConfig(
1231                ReadOnlyList<Boolean> isPresent, DOM.RGBA parentOutlineColor,
1232                DOM.RGBA childOutlineColor
1233            )
1234        {
1235            super(singleton, Domains.Overlay, "SourceOrderConfig", 2);
1236
1237            this.parentOutlineColor = parentOutlineColor;
1238            this.childOutlineColor  = childOutlineColor;
1239
1240            this.isPresent = (isPresent == null)
1241                ? singleton.generateIsPresentList(this)
1242                : THROWS.check(isPresent, 2, "Overlay.SourceOrderConfig");
1243        }
1244
1245        /** Creates an instance of this class from a {@link JsonObject}.*/
1246        public static SourceOrderConfig fromJSON(JsonObject jo)
1247        { return singleton.fromJSON(jo); }
1248
1249        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1250        public static NestedDescriptor<SourceOrderConfig> descriptor()
1251        { return singleton.descriptor(); }
1252    }
1253
1254    /**
1255     * Configuration for Window Controls Overlay
1256     * 
1257     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
1258     */
1259    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1260    public static class WindowControlsOverlayConfig
1261        extends BaseType<WindowControlsOverlayConfig>
1262        implements java.io.Serializable
1263    {
1264        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1265        protected static final long serialVersionUID = 1;
1266
1267        private static final NestedHelper<Overlay.WindowControlsOverlayConfig> singleton =
1268            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1269                Overlay$$WindowControlsOverlayConfig$$.singleton;
1270
1271        /** Whether the title bar CSS should be shown when emulating the Window Controls Overlay. */
1272        public final boolean showCSS;
1273
1274        /** Selected platforms to show the overlay. */
1275        public final String selectedPlatform;
1276
1277        /** The theme color defined in app manifest. */
1278        public final String themeColor;
1279
1280        /** Constructor.  Please review this class' fields for documentation. */
1281        public WindowControlsOverlayConfig(
1282                ReadOnlyList<Boolean> isPresent, boolean showCSS, String selectedPlatform,
1283                String themeColor
1284            )
1285        {
1286            super(singleton, Domains.Overlay, "WindowControlsOverlayConfig", 3);
1287
1288            this.showCSS            = showCSS;
1289            this.selectedPlatform   = selectedPlatform;
1290            this.themeColor         = themeColor;
1291
1292            this.isPresent = (isPresent == null)
1293                ? singleton.generateIsPresentList(this)
1294                : THROWS.check(isPresent, 3, "Overlay.WindowControlsOverlayConfig");
1295        }
1296
1297        /** Creates an instance of this class from a {@link JsonObject}.*/
1298        public static WindowControlsOverlayConfig fromJSON(JsonObject jo)
1299        { return singleton.fromJSON(jo); }
1300
1301        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1302        public static NestedDescriptor<WindowControlsOverlayConfig> descriptor()
1303        { return singleton.descriptor(); }
1304    }
1305
1306
1307    // ********************************************************************************************
1308    // ********************************************************************************************
1309    // Event Types
1310    // ********************************************************************************************
1311    // ********************************************************************************************
1312
1313
1314    /**
1315     * Fired when the node should be inspected. This happens after call to <CODE>setInspectMode</CODE> or when
1316     * user manually inspects an element.
1317     * 
1318     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
1319     */
1320    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
1321    public static class inspectNodeRequested
1322        extends BrowserEvent<inspectNodeRequested>
1323        implements java.io.Serializable
1324    {
1325        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1326        protected static final long serialVersionUID = 1;
1327
1328        private static final NestedHelper<Overlay.inspectNodeRequested> singleton =
1329            Torello.Browser.BrowserAPI.NestedHelpers.Events.
1330                Overlay$$inspectNodeRequested$$.singleton;
1331
1332        /** Id of the node to inspect. */
1333        public final int backendNodeId;
1334
1335        /** Constructor.  Please review this class' fields for documentation. */
1336        public inspectNodeRequested(ReadOnlyList<Boolean> isPresent, int backendNodeId)
1337        {
1338            super(singleton, Domains.Overlay, "inspectNodeRequested", 1);
1339
1340            this.backendNodeId = backendNodeId;
1341
1342            this.isPresent = (isPresent == null)
1343                ? singleton.generateIsPresentList(this)
1344                : THROWS.check(isPresent, 1, "Overlay.inspectNodeRequested");
1345        }
1346
1347        /** Creates an instance of this class from a {@link JsonObject}.*/
1348        public static inspectNodeRequested fromJSON(JsonObject jo)
1349        { return singleton.fromJSON(jo); }
1350
1351        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1352        public static NestedDescriptor<inspectNodeRequested> descriptor()
1353        { return singleton.descriptor(); }
1354    }
1355
1356    /**
1357     * Fired when the node should be highlighted. This happens after call to <CODE>setInspectMode</CODE>.
1358     * 
1359     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
1360     */
1361    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
1362    public static class nodeHighlightRequested
1363        extends BrowserEvent<nodeHighlightRequested>
1364        implements java.io.Serializable
1365    {
1366        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1367        protected static final long serialVersionUID = 1;
1368
1369        private static final NestedHelper<Overlay.nodeHighlightRequested> singleton =
1370            Torello.Browser.BrowserAPI.NestedHelpers.Events.
1371                Overlay$$nodeHighlightRequested$$.singleton;
1372
1373        /** <CODE>[No Description Provided by Google]</CODE> */
1374        public final int nodeId;
1375
1376        /** Constructor.  Please review this class' fields for documentation. */
1377        public nodeHighlightRequested(ReadOnlyList<Boolean> isPresent, int nodeId)
1378        {
1379            super(singleton, Domains.Overlay, "nodeHighlightRequested", 1);
1380
1381            this.nodeId = nodeId;
1382
1383            this.isPresent = (isPresent == null)
1384                ? singleton.generateIsPresentList(this)
1385                : THROWS.check(isPresent, 1, "Overlay.nodeHighlightRequested");
1386        }
1387
1388        /** Creates an instance of this class from a {@link JsonObject}.*/
1389        public static nodeHighlightRequested fromJSON(JsonObject jo)
1390        { return singleton.fromJSON(jo); }
1391
1392        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1393        public static NestedDescriptor<nodeHighlightRequested> descriptor()
1394        { return singleton.descriptor(); }
1395    }
1396
1397    /**
1398     * Fired when user asks to capture screenshot of some area on the page.
1399     * 
1400     * <EMBED CLASS=globalDefs DATA-DOMAIN=Overlay DATA-API=BrowserAPI>
1401     */
1402    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
1403    public static class screenshotRequested
1404        extends BrowserEvent<screenshotRequested>
1405        implements java.io.Serializable
1406    {
1407        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1408        protected static final long serialVersionUID = 1;
1409
1410        private static final NestedHelper<Overlay.screenshotRequested> singleton =
1411            Torello.Browser.BrowserAPI.NestedHelpers.Events.
1412                Overlay$$screenshotRequested$$.singleton;
1413
1414        /** Viewport to capture, in device independent pixels (dip). */
1415        public final Page.Viewport viewport;
1416
1417        /** Constructor.  Please review this class' fields for documentation. */
1418        public screenshotRequested(ReadOnlyList<Boolean> isPresent, Page.Viewport viewport)
1419        {
1420            super(singleton, Domains.Overlay, "screenshotRequested", 1);
1421
1422            this.viewport = viewport;
1423
1424            this.isPresent = (isPresent == null)
1425                ? singleton.generateIsPresentList(this)
1426                : THROWS.check(isPresent, 1, "Overlay.screenshotRequested");
1427        }
1428
1429        /** Creates an instance of this class from a {@link JsonObject}.*/
1430        public static screenshotRequested fromJSON(JsonObject jo)
1431        { return singleton.fromJSON(jo); }
1432
1433        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1434        public static NestedDescriptor<screenshotRequested> descriptor()
1435        { return singleton.descriptor(); }
1436    }
1437
1438
1439
1440
1441    // ********************************************************************************************
1442    // ********************************************************************************************
1443    // Commands
1444    // ********************************************************************************************
1445    // ********************************************************************************************
1446
1447
1448    /**
1449     * Disables domain notifications.
1450     * 
1451     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1452     *
1453     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1454     * browser receives the invocation-request.
1455     *
1456     * <BR /><BR /><DIV CLASS=JDHint>
1457     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1458     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1459     * the Browser Function has run to completion.
1460     * </DIV>
1461     */
1462    public static Script<Void> disable()
1463    {
1464        // Ultra-Simple Request JSON - Because this method has no parameters
1465        final String requestJSON = "{\"method\":\"Overlay.disable\"}";
1466
1467        return Script.NO_RET(Domains.Overlay, "disable", requestJSON);
1468    }
1469
1470    /**
1471     * Enables domain notifications.
1472     * 
1473     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1474     *
1475     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1476     * browser receives the invocation-request.
1477     *
1478     * <BR /><BR /><DIV CLASS=JDHint>
1479     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1480     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1481     * the Browser Function has run to completion.
1482     * </DIV>
1483     */
1484    public static Script<Void> enable()
1485    {
1486        // Ultra-Simple Request JSON - Because this method has no parameters
1487        final String requestJSON = "{\"method\":\"Overlay.enable\"}";
1488
1489        return Script.NO_RET(Domains.Overlay, "enable", requestJSON);
1490    }
1491
1492    /**
1493     * For Persistent Grid testing.
1494     * 
1495     * @param nodeIds Ids of the node to get highlight object for.
1496     * 
1497     * @return An instance of <CODE>{@link Script}&lt;JsonValue&gt;</CODE>
1498     * 
1499     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
1500     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
1501     * <CODE>&lt;JsonValue&gt;</CODE> will be returned
1502     *
1503     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
1504     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
1505     * be retrieved.</I>
1506     *
1507     * <BR /><BR /><DIV CLASS=JDHint>
1508     * This Browser Function's {@code Promise} returns:
1509     * <CODE>JsonValue (<B>highlights</B>)</CODE>
1510     * <BR />
1511     * Grid Highlight data for the node ids provided.
1512     * </DIV>
1513     */
1514    public static Script<JsonValue> getGridHighlightObjectsForTest(int[] nodeIds)
1515    {
1516        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
1517        final String requestJSON = WriteJSON.get(
1518            CDPTypes.INT_ARRAY_1D, "nodeIds", false, "Overlay.getGridHighlightObjectsForTest",
1519            (Object) nodeIds
1520        );
1521
1522        return new Script<>(
1523            Domains.Overlay, "getGridHighlightObjectsForTest", requestJSON,
1524            jo -> jo.get("highlights"),
1525            JsonValue.class
1526        );
1527    }
1528
1529    /**
1530     * For testing.
1531     * 
1532     * <BR /><BR /><DIV CLASS=JDHint>
1533     * 👍 Because of the sheer number of input parameters to this method, there is a
1534     * a {@link CommandBuilder} variant to this method which may be invoked instead.
1535     * 
1536     * <BR /><BR />
1537     * Please View: {@link #getHighlightObjectForTest()}
1538     * </DIV>
1539     * 
1540     * @param nodeId Id of the node to get highlight object for.
1541     * 
1542     * @param includeDistance Whether to include distance info.
1543     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1544     * 
1545     * @param includeStyle Whether to include style info.
1546     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1547     * 
1548     * @param colorFormat The color format to get config with (default: hex).
1549     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1550     * 
1551     * @param showAccessibilityInfo Whether to show accessibility info (default: true).
1552     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1553     * 
1554     * @return An instance of <CODE>{@link Script}&lt;JsonValue&gt;</CODE>
1555     * 
1556     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
1557     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
1558     * <CODE>&lt;JsonValue&gt;</CODE> will be returned
1559     *
1560     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
1561     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
1562     * be retrieved.</I>
1563     *
1564     * <BR /><BR /><DIV CLASS=JDHint>
1565     * This Browser Function's {@code Promise} returns:
1566     * <CODE>JsonValue (<B>highlight</B>)</CODE>
1567     * <BR />
1568     * Highlight data for the node.
1569     * </DIV>
1570     */
1571    public static Script<JsonValue> getHighlightObjectForTest(
1572            int nodeId, Boolean includeDistance, Boolean includeStyle, String colorFormat,
1573            Boolean showAccessibilityInfo
1574        )
1575    {
1576        // Convert all Method Parameters into a JSON Request-Object (as a String)
1577        final String requestJSON = WriteJSON.get(
1578            Overlay$$Commands.getHighlightObjectForTest$$, "Overlay.getHighlightObjectForTest",
1579            nodeId, includeDistance, includeStyle, colorFormat, showAccessibilityInfo
1580        );
1581
1582        return new Script<>(
1583            Domains.Overlay, "getHighlightObjectForTest", requestJSON,
1584            jo -> jo.get("highlight"),
1585            JsonValue.class
1586        );
1587    }
1588
1589    /**
1590     * For Source Order Viewer testing.
1591     * 
1592     * @param nodeId Id of the node to highlight.
1593     * 
1594     * @return An instance of <CODE>{@link Script}&lt;JsonValue&gt;</CODE>
1595     * 
1596     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
1597     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
1598     * <CODE>&lt;JsonValue&gt;</CODE> will be returned
1599     *
1600     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
1601     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
1602     * be retrieved.</I>
1603     *
1604     * <BR /><BR /><DIV CLASS=JDHint>
1605     * This Browser Function's {@code Promise} returns:
1606     * <CODE>JsonValue (<B>highlight</B>)</CODE>
1607     * <BR />
1608     * Source order highlight data for the node id provided.
1609     * </DIV>
1610     */
1611    public static Script<JsonValue> getSourceOrderHighlightObjectForTest(int nodeId)
1612    {
1613        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
1614        final String requestJSON = WriteJSON.get(
1615            CDPTypes.PRIMITIVE_INT, "nodeId", false,
1616            "Overlay.getSourceOrderHighlightObjectForTest", nodeId
1617        );
1618
1619        return new Script<>(
1620            Domains.Overlay, "getSourceOrderHighlightObjectForTest", requestJSON,
1621            jo -> jo.get("highlight"),
1622            JsonValue.class
1623        );
1624    }
1625
1626    /**
1627     * Hides any highlight.
1628     * 
1629     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1630     *
1631     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1632     * browser receives the invocation-request.
1633     *
1634     * <BR /><BR /><DIV CLASS=JDHint>
1635     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1636     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1637     * the Browser Function has run to completion.
1638     * </DIV>
1639     */
1640    public static Script<Void> hideHighlight()
1641    {
1642        // Ultra-Simple Request JSON - Because this method has no parameters
1643        final String requestJSON = "{\"method\":\"Overlay.hideHighlight\"}";
1644
1645        return Script.NO_RET(Domains.Overlay, "hideHighlight", requestJSON);
1646    }
1647
1648    /**
1649     * Highlights owner element of the frame with given id.
1650     * Deprecated: Doesn't work reliably and cannot be fixed due to process
1651     * separation (the owner node might be in a different process). Determine
1652     * the owner node in the client and use highlightNode.
1653     * 
1654     * <BR /><B CLASS=Dep-Top>DEPRECATED</B>
1655     * 
1656     * @param frameId Identifier of the frame to highlight.
1657     * 
1658     * @param contentColor The content box highlight fill color (default: transparent).
1659     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1660     * 
1661     * @param contentOutlineColor The content box highlight outline color (default: transparent).
1662     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1663     * 
1664     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1665     *
1666     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1667     * browser receives the invocation-request.
1668     *
1669     * <BR /><BR /><DIV CLASS=JDHint>
1670     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1671     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1672     * the Browser Function has run to completion.
1673     * </DIV>
1674     */
1675    public static Script<Void> highlightFrame
1676        (String frameId, DOM.RGBA contentColor, DOM.RGBA contentOutlineColor)
1677    {
1678        // Convert all Method Parameters into a JSON Request-Object (as a String)
1679        final String requestJSON = WriteJSON.get(
1680            Overlay$$Commands.highlightFrame$$, "Overlay.highlightFrame",
1681            frameId, contentColor, contentOutlineColor
1682        );
1683
1684        return Script.NO_RET(Domains.Overlay, "highlightFrame", requestJSON);
1685    }
1686
1687    /**
1688     * Highlights DOM node with given id or with the given JavaScript object wrapper. Either nodeId or
1689     * objectId must be specified.
1690     * 
1691     * <BR /><BR /><DIV CLASS=JDHint>
1692     * 👍 Because of the sheer number of input parameters to this method, there is a
1693     * a {@link CommandBuilder} variant to this method which may be invoked instead.
1694     * 
1695     * <BR /><BR />
1696     * Please View: {@link #highlightNode()}
1697     * </DIV>
1698     * 
1699     * @param highlightConfig A descriptor for the highlight appearance.
1700     * 
1701     * @param nodeId Identifier of the node to highlight.
1702     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1703     * 
1704     * @param backendNodeId Identifier of the backend node to highlight.
1705     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1706     * 
1707     * @param objectId JavaScript object id of the node to be highlighted.
1708     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1709     * 
1710     * @param selector Selectors to highlight relevant nodes.
1711     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1712     * 
1713     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1714     *
1715     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1716     * browser receives the invocation-request.
1717     *
1718     * <BR /><BR /><DIV CLASS=JDHint>
1719     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1720     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1721     * the Browser Function has run to completion.
1722     * </DIV>
1723     */
1724    public static Script<Void> highlightNode(
1725            HighlightConfig highlightConfig, Integer nodeId, Integer backendNodeId,
1726            String objectId, String selector
1727        )
1728    {
1729        // Convert all Method Parameters into a JSON Request-Object (as a String)
1730        final String requestJSON = WriteJSON.get(
1731            Overlay$$Commands.highlightNode$$, "Overlay.highlightNode",
1732            highlightConfig, nodeId, backendNodeId, objectId, selector
1733        );
1734
1735        return Script.NO_RET(Domains.Overlay, "highlightNode", requestJSON);
1736    }
1737
1738    /**
1739     * Highlights given quad. Coordinates are absolute with respect to the main frame viewport.
1740     * 
1741     * @param quad Quad to highlight
1742     * 
1743     * @param color The highlight fill color (default: transparent).
1744     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1745     * 
1746     * @param outlineColor The highlight outline color (default: transparent).
1747     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1748     * 
1749     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1750     *
1751     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1752     * browser receives the invocation-request.
1753     *
1754     * <BR /><BR /><DIV CLASS=JDHint>
1755     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1756     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1757     * the Browser Function has run to completion.
1758     * </DIV>
1759     */
1760    public static Script<Void> highlightQuad(Number quad, DOM.RGBA color, DOM.RGBA outlineColor)
1761    {
1762        // Convert all Method Parameters into a JSON Request-Object (as a String)
1763        final String requestJSON = WriteJSON.get(
1764            Overlay$$Commands.highlightQuad$$, "Overlay.highlightQuad",
1765            quad, color, outlineColor
1766        );
1767
1768        return Script.NO_RET(Domains.Overlay, "highlightQuad", requestJSON);
1769    }
1770
1771    /**
1772     * Highlights given rectangle. Coordinates are absolute with respect to the main frame viewport.
1773     * 
1774     * <BR /><BR /><DIV CLASS=JDHint>
1775     * 👍 Because of the sheer number of input parameters to this method, there is a
1776     * a {@link CommandBuilder} variant to this method which may be invoked instead.
1777     * 
1778     * <BR /><BR />
1779     * Please View: {@link #highlightRect()}
1780     * </DIV>
1781     * 
1782     * @param x X coordinate
1783     * 
1784     * @param y Y coordinate
1785     * 
1786     * @param width Rectangle width
1787     * 
1788     * @param height Rectangle height
1789     * 
1790     * @param color The highlight fill color (default: transparent).
1791     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1792     * 
1793     * @param outlineColor The highlight outline color (default: transparent).
1794     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1795     * 
1796     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1797     *
1798     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1799     * browser receives the invocation-request.
1800     *
1801     * <BR /><BR /><DIV CLASS=JDHint>
1802     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1803     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1804     * the Browser Function has run to completion.
1805     * </DIV>
1806     */
1807    public static Script<Void> highlightRect
1808        (int x, int y, int width, int height, DOM.RGBA color, DOM.RGBA outlineColor)
1809    {
1810        // Convert all Method Parameters into a JSON Request-Object (as a String)
1811        final String requestJSON = WriteJSON.get(
1812            Overlay$$Commands.highlightRect$$, "Overlay.highlightRect",
1813            x, y, width, height, color, outlineColor
1814        );
1815
1816        return Script.NO_RET(Domains.Overlay, "highlightRect", requestJSON);
1817    }
1818
1819    /**
1820     * Highlights the source order of the children of the DOM node with given id or with the given
1821     * JavaScript object wrapper. Either nodeId or objectId must be specified.
1822     * 
1823     * @param sourceOrderConfig A descriptor for the appearance of the overlay drawing.
1824     * 
1825     * @param nodeId Identifier of the node to highlight.
1826     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1827     * 
1828     * @param backendNodeId Identifier of the backend node to highlight.
1829     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1830     * 
1831     * @param objectId JavaScript object id of the node to be highlighted.
1832     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1833     * 
1834     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1835     *
1836     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1837     * browser receives the invocation-request.
1838     *
1839     * <BR /><BR /><DIV CLASS=JDHint>
1840     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1841     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1842     * the Browser Function has run to completion.
1843     * </DIV>
1844     */
1845    public static Script<Void> highlightSourceOrder(
1846            SourceOrderConfig sourceOrderConfig, Integer nodeId, Integer backendNodeId,
1847            String objectId
1848        )
1849    {
1850        // Convert all Method Parameters into a JSON Request-Object (as a String)
1851        final String requestJSON = WriteJSON.get(
1852            Overlay$$Commands.highlightSourceOrder$$, "Overlay.highlightSourceOrder",
1853            sourceOrderConfig, nodeId, backendNodeId, objectId
1854        );
1855
1856        return Script.NO_RET(Domains.Overlay, "highlightSourceOrder", requestJSON);
1857    }
1858
1859    /**
1860     * Enters the 'inspect' mode. In this mode, elements that user is hovering over are highlighted.
1861     * Backend then generates 'inspectNodeRequested' event upon element selection.
1862     * 
1863     * @param mode Set an inspection mode.
1864     * 
1865     * @param highlightConfig 
1866     * A descriptor for the highlight appearance of hovered-over nodes. May be omitted if <CODE>enabled
1867     * == false</CODE>.
1868     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1869     * 
1870     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1871     *
1872     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1873     * browser receives the invocation-request.
1874     *
1875     * <BR /><BR /><DIV CLASS=JDHint>
1876     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1877     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1878     * the Browser Function has run to completion.
1879     * </DIV>
1880     */
1881    public static Script<Void> setInspectMode(String mode, HighlightConfig highlightConfig)
1882    {
1883        // Convert all Method Parameters into a JSON Request-Object (as a String)
1884        final String requestJSON = WriteJSON.get(
1885            Overlay$$Commands.setInspectMode$$, "Overlay.setInspectMode",
1886            mode, highlightConfig
1887        );
1888
1889        return Script.NO_RET(Domains.Overlay, "setInspectMode", requestJSON);
1890    }
1891
1892    /**
1893     * <CODE>[No Description Provided by Google]</CODE>
1894     * 
1895     * @param message The message to display, also triggers resume and step over controls.
1896     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1897     * 
1898     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1899     *
1900     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1901     * browser receives the invocation-request.
1902     *
1903     * <BR /><BR /><DIV CLASS=JDHint>
1904     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1905     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1906     * the Browser Function has run to completion.
1907     * </DIV>
1908     */
1909    public static Script<Void> setPausedInDebuggerMessage(String message)
1910    {
1911        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
1912        final String requestJSON = WriteJSON.get
1913            (CDPTypes.STRING, "message", true, "Overlay.setPausedInDebuggerMessage", message);
1914
1915        return Script.NO_RET(Domains.Overlay, "setPausedInDebuggerMessage", requestJSON);
1916    }
1917
1918    /**
1919     * Highlights owner element of all frames detected to be ads.
1920     * 
1921     * @param show True for showing ad highlights
1922     * 
1923     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1924     *
1925     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1926     * browser receives the invocation-request.
1927     *
1928     * <BR /><BR /><DIV CLASS=JDHint>
1929     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1930     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1931     * the Browser Function has run to completion.
1932     * </DIV>
1933     */
1934    public static Script<Void> setShowAdHighlights(boolean show)
1935    {
1936        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
1937        final String requestJSON = WriteJSON.get
1938            (CDPTypes.PRIMITIVE_BOOLEAN, "show", false, "Overlay.setShowAdHighlights", show);
1939
1940        return Script.NO_RET(Domains.Overlay, "setShowAdHighlights", requestJSON);
1941    }
1942
1943    /**
1944     * <CODE>[No Description Provided by Google]</CODE>
1945     * 
1946     * @param containerQueryHighlightConfigs An array of node identifiers and descriptors for the highlight appearance.
1947     * 
1948     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1949     *
1950     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1951     * browser receives the invocation-request.
1952     *
1953     * <BR /><BR /><DIV CLASS=JDHint>
1954     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1955     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1956     * the Browser Function has run to completion.
1957     * </DIV>
1958     */
1959    public static Script<Void> setShowContainerQueryOverlays
1960        (ContainerQueryHighlightConfig[] containerQueryHighlightConfigs)
1961    {
1962        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
1963        final String requestJSON = WriteJSON.get(
1964            CDPTypes.CDP_TYPE_ARRAY_1D, "containerQueryHighlightConfigs", false,
1965            "Overlay.setShowContainerQueryOverlays", (Object) containerQueryHighlightConfigs
1966        );
1967
1968        return Script.NO_RET(Domains.Overlay, "setShowContainerQueryOverlays", requestJSON);
1969    }
1970
1971    /**
1972     * Requests that backend shows debug borders on layers
1973     * 
1974     * @param show True for showing debug borders
1975     * 
1976     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
1977     *
1978     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
1979     * browser receives the invocation-request.
1980     *
1981     * <BR /><BR /><DIV CLASS=JDHint>
1982     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
1983     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
1984     * the Browser Function has run to completion.
1985     * </DIV>
1986     */
1987    public static Script<Void> setShowDebugBorders(boolean show)
1988    {
1989        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
1990        final String requestJSON = WriteJSON.get
1991            (CDPTypes.PRIMITIVE_BOOLEAN, "show", false, "Overlay.setShowDebugBorders", show);
1992
1993        return Script.NO_RET(Domains.Overlay, "setShowDebugBorders", requestJSON);
1994    }
1995
1996    /**
1997     * Requests that backend shows the FPS counter
1998     * 
1999     * @param show True for showing the FPS counter
2000     * 
2001     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2002     *
2003     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2004     * browser receives the invocation-request.
2005     *
2006     * <BR /><BR /><DIV CLASS=JDHint>
2007     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2008     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2009     * the Browser Function has run to completion.
2010     * </DIV>
2011     */
2012    public static Script<Void> setShowFPSCounter(boolean show)
2013    {
2014        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2015        final String requestJSON = WriteJSON.get
2016            (CDPTypes.PRIMITIVE_BOOLEAN, "show", false, "Overlay.setShowFPSCounter", show);
2017
2018        return Script.NO_RET(Domains.Overlay, "setShowFPSCounter", requestJSON);
2019    }
2020
2021    /**
2022     * <CODE>[No Description Provided by Google]</CODE>
2023     * 
2024     * @param flexNodeHighlightConfigs An array of node identifiers and descriptors for the highlight appearance.
2025     * 
2026     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2027     *
2028     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2029     * browser receives the invocation-request.
2030     *
2031     * <BR /><BR /><DIV CLASS=JDHint>
2032     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2033     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2034     * the Browser Function has run to completion.
2035     * </DIV>
2036     */
2037    public static Script<Void> setShowFlexOverlays
2038        (FlexNodeHighlightConfig[] flexNodeHighlightConfigs)
2039    {
2040        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2041        final String requestJSON = WriteJSON.get(
2042            CDPTypes.CDP_TYPE_ARRAY_1D, "flexNodeHighlightConfigs", false,
2043            "Overlay.setShowFlexOverlays", (Object) flexNodeHighlightConfigs
2044        );
2045
2046        return Script.NO_RET(Domains.Overlay, "setShowFlexOverlays", requestJSON);
2047    }
2048
2049    /**
2050     * Highlight multiple elements with the CSS Grid overlay.
2051     * 
2052     * @param gridNodeHighlightConfigs An array of node identifiers and descriptors for the highlight appearance.
2053     * 
2054     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2055     *
2056     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2057     * browser receives the invocation-request.
2058     *
2059     * <BR /><BR /><DIV CLASS=JDHint>
2060     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2061     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2062     * the Browser Function has run to completion.
2063     * </DIV>
2064     */
2065    public static Script<Void> setShowGridOverlays
2066        (GridNodeHighlightConfig[] gridNodeHighlightConfigs)
2067    {
2068        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2069        final String requestJSON = WriteJSON.get(
2070            CDPTypes.CDP_TYPE_ARRAY_1D, "gridNodeHighlightConfigs", false,
2071            "Overlay.setShowGridOverlays", (Object) gridNodeHighlightConfigs
2072        );
2073
2074        return Script.NO_RET(Domains.Overlay, "setShowGridOverlays", requestJSON);
2075    }
2076
2077    /**
2078     * Add a dual screen device hinge
2079     * 
2080     * @param hingeConfig hinge data, null means hideHinge
2081     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2082     * 
2083     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2084     *
2085     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2086     * browser receives the invocation-request.
2087     *
2088     * <BR /><BR /><DIV CLASS=JDHint>
2089     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2090     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2091     * the Browser Function has run to completion.
2092     * </DIV>
2093     */
2094    public static Script<Void> setShowHinge(HingeConfig hingeConfig)
2095    {
2096        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2097        final String requestJSON = WriteJSON.get
2098            (CDPTypes.CDP_TYPE, "hingeConfig", true, "Overlay.setShowHinge", hingeConfig);
2099
2100        return Script.NO_RET(Domains.Overlay, "setShowHinge", requestJSON);
2101    }
2102
2103    /**
2104     * Deprecated, no longer has any effect.
2105     * 
2106     * <BR /><B CLASS=Dep-Top>DEPRECATED</B>
2107     * 
2108     * @param show True for showing hit-test borders
2109     * 
2110     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2111     *
2112     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2113     * browser receives the invocation-request.
2114     *
2115     * <BR /><BR /><DIV CLASS=JDHint>
2116     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2117     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2118     * the Browser Function has run to completion.
2119     * </DIV>
2120     */
2121    public static Script<Void> setShowHitTestBorders(boolean show)
2122    {
2123        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2124        final String requestJSON = WriteJSON.get
2125            (CDPTypes.PRIMITIVE_BOOLEAN, "show", false, "Overlay.setShowHitTestBorders", show);
2126
2127        return Script.NO_RET(Domains.Overlay, "setShowHitTestBorders", requestJSON);
2128    }
2129
2130    /**
2131     * Show elements in isolation mode with overlays.
2132     * 
2133     * @param isolatedElementHighlightConfigs An array of node identifiers and descriptors for the highlight appearance.
2134     * 
2135     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2136     *
2137     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2138     * browser receives the invocation-request.
2139     *
2140     * <BR /><BR /><DIV CLASS=JDHint>
2141     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2142     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2143     * the Browser Function has run to completion.
2144     * </DIV>
2145     */
2146    public static Script<Void> setShowIsolatedElements
2147        (IsolatedElementHighlightConfig[] isolatedElementHighlightConfigs)
2148    {
2149        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2150        final String requestJSON = WriteJSON.get(
2151            CDPTypes.CDP_TYPE_ARRAY_1D, "isolatedElementHighlightConfigs", false,
2152            "Overlay.setShowIsolatedElements", (Object) isolatedElementHighlightConfigs
2153        );
2154
2155        return Script.NO_RET(Domains.Overlay, "setShowIsolatedElements", requestJSON);
2156    }
2157
2158    /**
2159     * Requests that backend shows layout shift regions
2160     * 
2161     * @param result True for showing layout shift regions
2162     * 
2163     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2164     *
2165     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2166     * browser receives the invocation-request.
2167     *
2168     * <BR /><BR /><DIV CLASS=JDHint>
2169     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2170     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2171     * the Browser Function has run to completion.
2172     * </DIV>
2173     */
2174    public static Script<Void> setShowLayoutShiftRegions(boolean result)
2175    {
2176        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2177        final String requestJSON = WriteJSON.get(
2178            CDPTypes.PRIMITIVE_BOOLEAN, "result", false, "Overlay.setShowLayoutShiftRegions",
2179            result
2180        );
2181
2182        return Script.NO_RET(Domains.Overlay, "setShowLayoutShiftRegions", requestJSON);
2183    }
2184
2185    /**
2186     * Requests that backend shows paint rectangles
2187     * 
2188     * @param result True for showing paint rectangles
2189     * 
2190     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2191     *
2192     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2193     * browser receives the invocation-request.
2194     *
2195     * <BR /><BR /><DIV CLASS=JDHint>
2196     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2197     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2198     * the Browser Function has run to completion.
2199     * </DIV>
2200     */
2201    public static Script<Void> setShowPaintRects(boolean result)
2202    {
2203        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2204        final String requestJSON = WriteJSON.get
2205            (CDPTypes.PRIMITIVE_BOOLEAN, "result", false, "Overlay.setShowPaintRects", result);
2206
2207        return Script.NO_RET(Domains.Overlay, "setShowPaintRects", requestJSON);
2208    }
2209
2210    /**
2211     * Requests that backend shows scroll bottleneck rects
2212     * 
2213     * @param show True for showing scroll bottleneck rects
2214     * 
2215     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2216     *
2217     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2218     * browser receives the invocation-request.
2219     *
2220     * <BR /><BR /><DIV CLASS=JDHint>
2221     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2222     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2223     * the Browser Function has run to completion.
2224     * </DIV>
2225     */
2226    public static Script<Void> setShowScrollBottleneckRects(boolean show)
2227    {
2228        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2229        final String requestJSON = WriteJSON.get(
2230            CDPTypes.PRIMITIVE_BOOLEAN, "show", false, "Overlay.setShowScrollBottleneckRects",
2231            show
2232        );
2233
2234        return Script.NO_RET(Domains.Overlay, "setShowScrollBottleneckRects", requestJSON);
2235    }
2236
2237    /**
2238     * <CODE>[No Description Provided by Google]</CODE>
2239     * 
2240     * @param scrollSnapHighlightConfigs An array of node identifiers and descriptors for the highlight appearance.
2241     * 
2242     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2243     *
2244     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2245     * browser receives the invocation-request.
2246     *
2247     * <BR /><BR /><DIV CLASS=JDHint>
2248     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2249     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2250     * the Browser Function has run to completion.
2251     * </DIV>
2252     */
2253    public static Script<Void> setShowScrollSnapOverlays
2254        (ScrollSnapHighlightConfig[] scrollSnapHighlightConfigs)
2255    {
2256        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2257        final String requestJSON = WriteJSON.get(
2258            CDPTypes.CDP_TYPE_ARRAY_1D, "scrollSnapHighlightConfigs", false,
2259            "Overlay.setShowScrollSnapOverlays", (Object) scrollSnapHighlightConfigs
2260        );
2261
2262        return Script.NO_RET(Domains.Overlay, "setShowScrollSnapOverlays", requestJSON);
2263    }
2264
2265    /**
2266     * Paints viewport size upon main frame resize.
2267     * 
2268     * @param show Whether to paint size or not.
2269     * 
2270     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2271     *
2272     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2273     * browser receives the invocation-request.
2274     *
2275     * <BR /><BR /><DIV CLASS=JDHint>
2276     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2277     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2278     * the Browser Function has run to completion.
2279     * </DIV>
2280     */
2281    public static Script<Void> setShowViewportSizeOnResize(boolean show)
2282    {
2283        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2284        final String requestJSON = WriteJSON.get(
2285            CDPTypes.PRIMITIVE_BOOLEAN, "show", false, "Overlay.setShowViewportSizeOnResize",
2286            show
2287        );
2288
2289        return Script.NO_RET(Domains.Overlay, "setShowViewportSizeOnResize", requestJSON);
2290    }
2291
2292    /**
2293     * Deprecated, no longer has any effect.
2294     * 
2295     * <BR /><B CLASS=Dep-Top>DEPRECATED</B>
2296     * 
2297     * @param show -
2298     * 
2299     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2300     *
2301     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2302     * browser receives the invocation-request.
2303     *
2304     * <BR /><BR /><DIV CLASS=JDHint>
2305     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2306     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2307     * the Browser Function has run to completion.
2308     * </DIV>
2309     */
2310    public static Script<Void> setShowWebVitals(boolean show)
2311    {
2312        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2313        final String requestJSON = WriteJSON.get
2314            (CDPTypes.PRIMITIVE_BOOLEAN, "show", false, "Overlay.setShowWebVitals", show);
2315
2316        return Script.NO_RET(Domains.Overlay, "setShowWebVitals", requestJSON);
2317    }
2318
2319    /**
2320     * Show Window Controls Overlay for PWA
2321     * 
2322     * @param windowControlsOverlayConfig Window Controls Overlay data, null means hide Window Controls Overlay
2323     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2324     * 
2325     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
2326     *
2327     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
2328     * browser receives the invocation-request.
2329     *
2330     * <BR /><BR /><DIV CLASS=JDHint>
2331     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
2332     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
2333     * the Browser Function has run to completion.
2334     * </DIV>
2335     */
2336    public static Script<Void> setShowWindowControlsOverlay
2337        (WindowControlsOverlayConfig windowControlsOverlayConfig)
2338    {
2339        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
2340        final String requestJSON = WriteJSON.get(
2341            CDPTypes.CDP_TYPE, "windowControlsOverlayConfig", true,
2342            "Overlay.setShowWindowControlsOverlay", windowControlsOverlayConfig
2343        );
2344
2345        return Script.NO_RET(Domains.Overlay, "setShowWindowControlsOverlay", requestJSON);
2346    }
2347
2348
2349    // ********************************************************************************************
2350    // ********************************************************************************************
2351    // CommandBuilder Getter-Methods
2352    // ********************************************************************************************
2353    // ********************************************************************************************
2354
2355
2356    /**
2357     * Creates a buider for conveniently assigning parameters to this method.
2358     * 
2359     * <BR /><BR /><DIV CLASS=JDHint>
2360     * Note that the original method expects 5 parameters, and can be cumbersome.
2361     * </DIV>
2362     * 
2363     * @return {@link CommandBuilder} instance, for assigning parameter values, one by one.
2364     * @see #getHighlightObjectForTest
2365     */
2366    public static CommandBuilder<JsonValue> getHighlightObjectForTest()
2367    { return CommandBuilder.builder(Overlay$$Commands.getHighlightObjectForTest$$); }
2368
2369    /**
2370     * Creates a buider for conveniently assigning parameters to this method.
2371     * 
2372     * <BR /><BR /><DIV CLASS=JDHint>
2373     * Note that the original method expects 5 parameters, and can be cumbersome.
2374     * </DIV>
2375     * 
2376     * @return {@link CommandBuilder} instance, for assigning parameter values, one by one.
2377     * @see #highlightNode
2378     */
2379    public static CommandBuilder<Void> highlightNode()
2380    { return CommandBuilder.builder(Overlay$$Commands.highlightNode$$); }
2381
2382    /**
2383     * Creates a buider for conveniently assigning parameters to this method.
2384     * 
2385     * <BR /><BR /><DIV CLASS=JDHint>
2386     * Note that the original method expects 6 parameters, and can be cumbersome.
2387     * </DIV>
2388     * 
2389     * @return {@link CommandBuilder} instance, for assigning parameter values, one by one.
2390     * @see #highlightRect
2391     */
2392    public static CommandBuilder<Void> highlightRect()
2393    { return CommandBuilder.builder(Overlay$$Commands.highlightRect$$); }
2394
2395
2396}