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.Storage$$Commands;
019
020
021// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
022// JDK Imports
023// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
024
025import javax.json.JsonObject;
026import javax.json.JsonValue;
027
028/**
029 * <SPAN CLASS=COPIEDJDK><B><CODE>[No Description Provided by Google]</CODE></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 Storage
034{
035    // No Pubic Constructors
036    private Storage() { }
037
038
039    // ********************************************************************************************
040    // ********************************************************************************************
041    // Eliminated Types
042    // ********************************************************************************************
043    // ********************************************************************************************
044
045
046    /**
047     * Protected audience interest group auction identifier.
048
049     * <EMBED CLASS='external-html' DATA-CTAS='String' DATA-FILE-ID=CDP.EliminatedType
050     *     DATA-NAME=InterestGroupAuctionId>
051     */
052    public static final String InterestGroupAuctionId =
053        "InterestGroupAuctionId has been eliminated.\n" +
054        "It was replaced with the standard Java-Type: String";
055
056    /**
057     * <CODE>[No Description Provided by Google]</CODE>
058
059     * <EMBED CLASS='external-html' DATA-CTAS='String' DATA-FILE-ID=CDP.EliminatedType
060     *     DATA-NAME=SerializedStorageKey>
061     */
062    public static final String SerializedStorageKey =
063        "SerializedStorageKey has been eliminated.\n" +
064        "It was replaced with the standard Java-Type: String";
065
066    /**
067     * <CODE>[No Description Provided by Google]</CODE>
068     * 
069     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
070
071     * <EMBED CLASS='external-html' DATA-CTAS='String' DATA-FILE-ID=CDP.EliminatedType
072     *     DATA-NAME=SignedInt64AsBase10>
073     */
074    public static final String SignedInt64AsBase10 =
075        "SignedInt64AsBase10 has been eliminated.\n" +
076        "It was replaced with the standard Java-Type: String";
077
078    /**
079     * <CODE>[No Description Provided by Google]</CODE>
080     * 
081     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
082
083     * <EMBED CLASS='external-html' DATA-CTAS='String' DATA-FILE-ID=CDP.EliminatedType
084     *     DATA-NAME=UnsignedInt128AsBase16>
085     */
086    public static final String UnsignedInt128AsBase16 =
087        "UnsignedInt128AsBase16 has been eliminated.\n" +
088        "It was replaced with the standard Java-Type: String";
089
090    /**
091     * <CODE>[No Description Provided by Google]</CODE>
092     * 
093     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
094
095     * <EMBED CLASS='external-html' DATA-CTAS='String' DATA-FILE-ID=CDP.EliminatedType
096     *     DATA-NAME=UnsignedInt64AsBase10>
097     */
098    public static final String UnsignedInt64AsBase10 =
099        "UnsignedInt64AsBase10 has been eliminated.\n" +
100        "It was replaced with the standard Java-Type: String";
101
102
103    // ********************************************************************************************
104    // ********************************************************************************************
105    // Enumerated String Constants Lists
106    // ********************************************************************************************
107    // ********************************************************************************************
108
109
110    /**
111     * <CODE>[No Description Provided by Google]</CODE>
112     * 
113     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
114     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
115     */
116    public static final ReadOnlyList<String> AttributionReportingAggregatableResult = new ReadOnlyArrayList<>(
117        String.class, 
118        "deduplicated", "excessiveAttributions", "excessiveReportingOrigins", "excessiveReports",
119        "insufficientBudget", "insufficientNamedBudget", "internalError",
120        "noCapacityForAttributionDestination", "noHistograms", "noMatchingSourceFilterData",
121        "noMatchingSources", "notRegistered", "prohibitedByBrowserPolicy", "reportWindowPassed",
122        "success"
123    );
124
125    /**
126     * <CODE>[No Description Provided by Google]</CODE>
127     * 
128     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
129     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
130     */
131    public static final ReadOnlyList<String> AttributionReportingEventLevelResult = new ReadOnlyArrayList<>(
132        String.class, 
133        "deduplicated", "excessiveAttributions", "excessiveReportingOrigins", "excessiveReports",
134        "falselyAttributedSource", "internalError", "neverAttributedSource",
135        "noCapacityForAttributionDestination", "noMatchingConfigurations",
136        "noMatchingSourceFilterData", "noMatchingSources", "noMatchingTriggerData", "notRegistered",
137        "priorityTooLow", "prohibitedByBrowserPolicy", "reportWindowNotStarted",
138        "reportWindowPassed", "success", "successDroppedLowerPriority"
139    );
140
141    /**
142     * <CODE>[No Description Provided by Google]</CODE>
143     * 
144     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
145     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
146     */
147    public static final ReadOnlyList<String> AttributionReportingReportResult = new ReadOnlyArrayList<>
148        (String.class, "expired", "failedToAssemble", "prohibited", "sent");
149
150    /**
151     * <CODE>[No Description Provided by Google]</CODE>
152     * 
153     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
154     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
155     */
156    public static final ReadOnlyList<String> AttributionReportingSourceRegistrationResult = new ReadOnlyArrayList<>(
157        String.class, 
158        "destinationBothLimitsReached", "destinationGlobalLimitReached",
159        "destinationPerDayReportingLimitReached", "destinationReportingLimitReached",
160        "exceedsMaxChannelCapacity", "exceedsMaxEventStatesLimit",
161        "exceedsMaxScopesChannelCapacity", "exceedsMaxTriggerStateCardinality",
162        "excessiveReportingOrigins", "insufficientSourceCapacity",
163        "insufficientUniqueDestinationCapacity", "internalError", "prohibitedByBrowserPolicy",
164        "reportingOriginsPerSiteLimitReached", "success", "successNoised"
165    );
166
167    /**
168     * <CODE>[No Description Provided by Google]</CODE>
169     * 
170     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
171     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
172     */
173    public static final ReadOnlyList<String> AttributionReportingSourceRegistrationTimeConfig = new ReadOnlyArrayList<>
174        (String.class, "exclude", "include");
175
176    /**
177     * <CODE>[No Description Provided by Google]</CODE>
178     * 
179     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
180     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
181     */
182    public static final ReadOnlyList<String> AttributionReportingSourceType = new ReadOnlyArrayList<>
183        (String.class, "event", "navigation");
184
185    /**
186     * <CODE>[No Description Provided by Google]</CODE>
187     * 
188     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
189     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
190     */
191    public static final ReadOnlyList<String> AttributionReportingTriggerDataMatching = new ReadOnlyArrayList<>
192        (String.class, "exact", "modulus");
193
194    /**
195     * Enum of interest group access types.
196     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
197     */
198    public static final ReadOnlyList<String> InterestGroupAccessType = new ReadOnlyArrayList<>(
199        String.class, 
200        "additionalBid", "additionalBidWin", "bid", "clear", "join", "leave", "loaded",
201        "topLevelAdditionalBid", "topLevelBid", "update", "win"
202    );
203
204    /**
205     * Enum of auction events.
206     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
207     */
208    public static final ReadOnlyList<String> InterestGroupAuctionEventType = new ReadOnlyArrayList<>
209        (String.class, "configResolved", "started");
210
211    /**
212     * Enum of network fetches auctions can do.
213     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
214     */
215    public static final ReadOnlyList<String> InterestGroupAuctionFetchType = new ReadOnlyArrayList<>(
216        String.class, 
217        "bidderJs", "bidderTrustedSignals", "bidderWasm", "sellerJs", "sellerTrustedSignals"
218    );
219
220    /**
221     * Enum of shared storage access methods.
222     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
223     */
224    public static final ReadOnlyList<String> SharedStorageAccessMethod = new ReadOnlyArrayList<>(
225        String.class, 
226        "addModule", "append", "batchUpdate", "clear", "createWorklet", "delete", "entries", "get",
227        "keys", "length", "remainingBudget", "run", "selectURL", "set", "values"
228    );
229
230    /**
231     * Enum of shared storage access scopes.
232     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
233     */
234    public static final ReadOnlyList<String> SharedStorageAccessScope = new ReadOnlyArrayList<>
235        (String.class, "header", "protectedAudienceWorklet", "sharedStorageWorklet", "window");
236
237    /**
238     * <CODE>[No Description Provided by Google]</CODE>
239     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
240     */
241    public static final ReadOnlyList<String> StorageBucketsDurability = new ReadOnlyArrayList<>
242        (String.class, "relaxed", "strict");
243
244    /**
245     * Enum of possible storage types.
246     * <BR /><BR /><B CLASS=StrEnumType>String-Enumeration Type</B>
247     */
248    public static final ReadOnlyList<String> StorageType = new ReadOnlyArrayList<>(
249        String.class, 
250        "all", "cache_storage", "cookies", "file_systems", "indexeddb", "interest_groups",
251        "local_storage", "other", "service_workers", "shader_cache", "shared_storage",
252        "storage_buckets", "websql"
253    );
254
255
256
257    // ********************************************************************************************
258    // ********************************************************************************************
259    // Basic Types
260    // ********************************************************************************************
261    // ********************************************************************************************
262
263
264    /**
265     * <CODE>[No Description Provided by Google]</CODE>
266     * 
267     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
268     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
269     */
270    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
271    public static class AttributionReportingAggregatableDebugReportingConfig
272        extends BaseType<AttributionReportingAggregatableDebugReportingConfig>
273        implements java.io.Serializable
274    {
275        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
276        protected static final long serialVersionUID = 1;
277
278        private static final NestedHelper<Storage.AttributionReportingAggregatableDebugReportingConfig> singleton =
279            Torello.Browser.BrowserAPI.NestedHelpers.Types.
280                Storage$$AttributionReportingAggregatableDebugReportingConfig$$.singleton;
281
282        /**
283         * number instead of integer because not all uint32 can be represented by
284         * int, only present for source registrations
285         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
286         */
287        public final Number budget;
288
289        /** <CODE>[No Description Provided by Google]</CODE> */
290        public final String keyPiece;
291
292        /** <CODE>[No Description Provided by Google]</CODE> */
293        public final Storage.AttributionReportingAggregatableDebugReportingData[] debugData;
294
295        /**
296         * <CODE>[No Description Provided by Google]</CODE>
297         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
298         */
299        public final String aggregationCoordinatorOrigin;
300
301        /** Constructor.  Please review this class' fields for documentation. */
302        public AttributionReportingAggregatableDebugReportingConfig(
303                ReadOnlyList<Boolean> isPresent, Number budget, String keyPiece,
304                AttributionReportingAggregatableDebugReportingData[] debugData,
305                String aggregationCoordinatorOrigin
306            )
307        {
308            super(singleton, Domains.Storage, "AttributionReportingAggregatableDebugReportingConfig", 4);
309
310            this.budget                         = budget;
311            this.keyPiece                       = keyPiece;
312            this.debugData                      = debugData;
313            this.aggregationCoordinatorOrigin   = aggregationCoordinatorOrigin;
314
315            this.isPresent = (isPresent == null)
316                ? singleton.generateIsPresentList(this)
317                : THROWS.check(isPresent, 4, "Storage.AttributionReportingAggregatableDebugReportingConfig");
318        }
319
320        /** Creates an instance of this class from a {@link JsonObject}.*/
321        public static AttributionReportingAggregatableDebugReportingConfig fromJSON(JsonObject jo)
322        { return singleton.fromJSON(jo); }
323
324        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
325        public static NestedDescriptor<AttributionReportingAggregatableDebugReportingConfig> descriptor()
326        { return singleton.descriptor(); }
327    }
328
329    /**
330     * <CODE>[No Description Provided by Google]</CODE>
331     * 
332     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
333     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
334     */
335    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
336    public static class AttributionReportingAggregatableDebugReportingData
337        extends BaseType<AttributionReportingAggregatableDebugReportingData>
338        implements java.io.Serializable
339    {
340        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
341        protected static final long serialVersionUID = 1;
342
343        private static final NestedHelper<Storage.AttributionReportingAggregatableDebugReportingData> singleton =
344            Torello.Browser.BrowserAPI.NestedHelpers.Types.
345                Storage$$AttributionReportingAggregatableDebugReportingData$$.singleton;
346
347        /** <CODE>[No Description Provided by Google]</CODE> */
348        public final String keyPiece;
349
350        /**
351         * number instead of integer because not all uint32 can be represented by
352         * int
353         */
354        public final Number value;
355
356        /** <CODE>[No Description Provided by Google]</CODE> */
357        public final String[] types;
358
359        /** Constructor.  Please review this class' fields for documentation. */
360        public AttributionReportingAggregatableDebugReportingData
361            (ReadOnlyList<Boolean> isPresent, String keyPiece, Number value, String[] types)
362        {
363            super(singleton, Domains.Storage, "AttributionReportingAggregatableDebugReportingData", 3);
364
365            this.keyPiece   = keyPiece;
366            this.value      = value;
367            this.types      = types;
368
369            this.isPresent = (isPresent == null)
370                ? singleton.generateIsPresentList(this)
371                : THROWS.check(isPresent, 3, "Storage.AttributionReportingAggregatableDebugReportingData");
372        }
373
374        /** Creates an instance of this class from a {@link JsonObject}.*/
375        public static AttributionReportingAggregatableDebugReportingData fromJSON(JsonObject jo)
376        { return singleton.fromJSON(jo); }
377
378        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
379        public static NestedDescriptor<AttributionReportingAggregatableDebugReportingData> descriptor()
380        { return singleton.descriptor(); }
381    }
382
383    /**
384     * <CODE>[No Description Provided by Google]</CODE>
385     * 
386     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
387     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
388     */
389    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
390    public static class AttributionReportingAggregatableDedupKey
391        extends BaseType<AttributionReportingAggregatableDedupKey>
392        implements java.io.Serializable
393    {
394        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
395        protected static final long serialVersionUID = 1;
396
397        private static final NestedHelper<Storage.AttributionReportingAggregatableDedupKey> singleton =
398            Torello.Browser.BrowserAPI.NestedHelpers.Types.
399                Storage$$AttributionReportingAggregatableDedupKey$$.singleton;
400
401        /**
402         * <CODE>[No Description Provided by Google]</CODE>
403         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
404         */
405        public final String dedupKey;
406
407        /** <CODE>[No Description Provided by Google]</CODE> */
408        public final Storage.AttributionReportingFilterPair filters;
409
410        /** Constructor.  Please review this class' fields for documentation. */
411        public AttributionReportingAggregatableDedupKey(
412                ReadOnlyList<Boolean> isPresent, String dedupKey,
413                AttributionReportingFilterPair filters
414            )
415        {
416            super(singleton, Domains.Storage, "AttributionReportingAggregatableDedupKey", 2);
417
418            this.dedupKey   = dedupKey;
419            this.filters    = filters;
420
421            this.isPresent = (isPresent == null)
422                ? singleton.generateIsPresentList(this)
423                : THROWS.check(isPresent, 2, "Storage.AttributionReportingAggregatableDedupKey");
424        }
425
426        /** Creates an instance of this class from a {@link JsonObject}.*/
427        public static AttributionReportingAggregatableDedupKey fromJSON(JsonObject jo)
428        { return singleton.fromJSON(jo); }
429
430        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
431        public static NestedDescriptor<AttributionReportingAggregatableDedupKey> descriptor()
432        { return singleton.descriptor(); }
433    }
434
435    /**
436     * <CODE>[No Description Provided by Google]</CODE>
437     * 
438     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
439     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
440     */
441    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
442    public static class AttributionReportingAggregatableTriggerData
443        extends BaseType<AttributionReportingAggregatableTriggerData>
444        implements java.io.Serializable
445    {
446        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
447        protected static final long serialVersionUID = 1;
448
449        private static final NestedHelper<Storage.AttributionReportingAggregatableTriggerData> singleton =
450            Torello.Browser.BrowserAPI.NestedHelpers.Types.
451                Storage$$AttributionReportingAggregatableTriggerData$$.singleton;
452
453        /** <CODE>[No Description Provided by Google]</CODE> */
454        public final String keyPiece;
455
456        /** <CODE>[No Description Provided by Google]</CODE> */
457        public final String[] sourceKeys;
458
459        /** <CODE>[No Description Provided by Google]</CODE> */
460        public final Storage.AttributionReportingFilterPair filters;
461
462        /** Constructor.  Please review this class' fields for documentation. */
463        public AttributionReportingAggregatableTriggerData(
464                ReadOnlyList<Boolean> isPresent, String keyPiece, String[] sourceKeys,
465                AttributionReportingFilterPair filters
466            )
467        {
468            super(singleton, Domains.Storage, "AttributionReportingAggregatableTriggerData", 3);
469
470            this.keyPiece   = keyPiece;
471            this.sourceKeys = sourceKeys;
472            this.filters    = filters;
473
474            this.isPresent = (isPresent == null)
475                ? singleton.generateIsPresentList(this)
476                : THROWS.check(isPresent, 3, "Storage.AttributionReportingAggregatableTriggerData");
477        }
478
479        /** Creates an instance of this class from a {@link JsonObject}.*/
480        public static AttributionReportingAggregatableTriggerData fromJSON(JsonObject jo)
481        { return singleton.fromJSON(jo); }
482
483        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
484        public static NestedDescriptor<AttributionReportingAggregatableTriggerData> descriptor()
485        { return singleton.descriptor(); }
486    }
487
488    /**
489     * <CODE>[No Description Provided by Google]</CODE>
490     * 
491     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
492     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
493     */
494    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
495    public static class AttributionReportingAggregatableValueDictEntry
496        extends BaseType<AttributionReportingAggregatableValueDictEntry>
497        implements java.io.Serializable
498    {
499        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
500        protected static final long serialVersionUID = 1;
501
502        private static final NestedHelper<Storage.AttributionReportingAggregatableValueDictEntry> singleton =
503            Torello.Browser.BrowserAPI.NestedHelpers.Types.
504                Storage$$AttributionReportingAggregatableValueDictEntry$$.singleton;
505
506        /** <CODE>[No Description Provided by Google]</CODE> */
507        public final String key;
508
509        /**
510         * number instead of integer because not all uint32 can be represented by
511         * int
512         */
513        public final Number value;
514
515        /** <CODE>[No Description Provided by Google]</CODE> */
516        public final String filteringId;
517
518        /** Constructor.  Please review this class' fields for documentation. */
519        public AttributionReportingAggregatableValueDictEntry
520            (ReadOnlyList<Boolean> isPresent, String key, Number value, String filteringId)
521        {
522            super(singleton, Domains.Storage, "AttributionReportingAggregatableValueDictEntry", 3);
523
524            this.key            = key;
525            this.value          = value;
526            this.filteringId    = filteringId;
527
528            this.isPresent = (isPresent == null)
529                ? singleton.generateIsPresentList(this)
530                : THROWS.check(isPresent, 3, "Storage.AttributionReportingAggregatableValueDictEntry");
531        }
532
533        /** Creates an instance of this class from a {@link JsonObject}.*/
534        public static AttributionReportingAggregatableValueDictEntry fromJSON(JsonObject jo)
535        { return singleton.fromJSON(jo); }
536
537        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
538        public static NestedDescriptor<AttributionReportingAggregatableValueDictEntry> descriptor()
539        { return singleton.descriptor(); }
540    }
541
542    /**
543     * <CODE>[No Description Provided by Google]</CODE>
544     * 
545     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
546     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
547     */
548    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
549    public static class AttributionReportingAggregatableValueEntry
550        extends BaseType<AttributionReportingAggregatableValueEntry>
551        implements java.io.Serializable
552    {
553        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
554        protected static final long serialVersionUID = 1;
555
556        private static final NestedHelper<Storage.AttributionReportingAggregatableValueEntry> singleton =
557            Torello.Browser.BrowserAPI.NestedHelpers.Types.
558                Storage$$AttributionReportingAggregatableValueEntry$$.singleton;
559
560        /** <CODE>[No Description Provided by Google]</CODE> */
561        public final Storage.AttributionReportingAggregatableValueDictEntry[] values;
562
563        /** <CODE>[No Description Provided by Google]</CODE> */
564        public final Storage.AttributionReportingFilterPair filters;
565
566        /** Constructor.  Please review this class' fields for documentation. */
567        public AttributionReportingAggregatableValueEntry(
568                ReadOnlyList<Boolean> isPresent,
569                AttributionReportingAggregatableValueDictEntry[] values,
570                AttributionReportingFilterPair filters
571            )
572        {
573            super(singleton, Domains.Storage, "AttributionReportingAggregatableValueEntry", 2);
574
575            this.values     = values;
576            this.filters    = filters;
577
578            this.isPresent = (isPresent == null)
579                ? singleton.generateIsPresentList(this)
580                : THROWS.check(isPresent, 2, "Storage.AttributionReportingAggregatableValueEntry");
581        }
582
583        /** Creates an instance of this class from a {@link JsonObject}.*/
584        public static AttributionReportingAggregatableValueEntry fromJSON(JsonObject jo)
585        { return singleton.fromJSON(jo); }
586
587        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
588        public static NestedDescriptor<AttributionReportingAggregatableValueEntry> descriptor()
589        { return singleton.descriptor(); }
590    }
591
592    /**
593     * <CODE>[No Description Provided by Google]</CODE>
594     * 
595     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
596     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
597     */
598    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
599    public static class AttributionReportingAggregationKeysEntry
600        extends BaseType<AttributionReportingAggregationKeysEntry>
601        implements java.io.Serializable
602    {
603        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
604        protected static final long serialVersionUID = 1;
605
606        private static final NestedHelper<Storage.AttributionReportingAggregationKeysEntry> singleton =
607            Torello.Browser.BrowserAPI.NestedHelpers.Types.
608                Storage$$AttributionReportingAggregationKeysEntry$$.singleton;
609
610        /** <CODE>[No Description Provided by Google]</CODE> */
611        public final String key;
612
613        /** <CODE>[No Description Provided by Google]</CODE> */
614        public final String value;
615
616        /** Constructor.  Please review this class' fields for documentation. */
617        public AttributionReportingAggregationKeysEntry
618            (ReadOnlyList<Boolean> isPresent, String key, String value)
619        {
620            super(singleton, Domains.Storage, "AttributionReportingAggregationKeysEntry", 2);
621
622            this.key    = key;
623            this.value  = value;
624
625            this.isPresent = (isPresent == null)
626                ? singleton.generateIsPresentList(this)
627                : THROWS.check(isPresent, 2, "Storage.AttributionReportingAggregationKeysEntry");
628        }
629
630        /** Creates an instance of this class from a {@link JsonObject}.*/
631        public static AttributionReportingAggregationKeysEntry fromJSON(JsonObject jo)
632        { return singleton.fromJSON(jo); }
633
634        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
635        public static NestedDescriptor<AttributionReportingAggregationKeysEntry> descriptor()
636        { return singleton.descriptor(); }
637    }
638
639    /**
640     * <CODE>[No Description Provided by Google]</CODE>
641     * 
642     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
643     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
644     */
645    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
646    public static class AttributionReportingEventReportWindows
647        extends BaseType<AttributionReportingEventReportWindows>
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<Storage.AttributionReportingEventReportWindows> singleton =
654            Torello.Browser.BrowserAPI.NestedHelpers.Types.
655                Storage$$AttributionReportingEventReportWindows$$.singleton;
656
657        /** duration in seconds */
658        public final int start;
659
660        /** duration in seconds */
661        public final int[] ends;
662
663        /** Constructor.  Please review this class' fields for documentation. */
664        public AttributionReportingEventReportWindows
665            (ReadOnlyList<Boolean> isPresent, int start, int[] ends)
666        {
667            super(singleton, Domains.Storage, "AttributionReportingEventReportWindows", 2);
668
669            this.start  = start;
670            this.ends   = ends;
671
672            this.isPresent = (isPresent == null)
673                ? singleton.generateIsPresentList(this)
674                : THROWS.check(isPresent, 2, "Storage.AttributionReportingEventReportWindows");
675        }
676
677        /** Creates an instance of this class from a {@link JsonObject}.*/
678        public static AttributionReportingEventReportWindows fromJSON(JsonObject jo)
679        { return singleton.fromJSON(jo); }
680
681        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
682        public static NestedDescriptor<AttributionReportingEventReportWindows> descriptor()
683        { return singleton.descriptor(); }
684    }
685
686    /**
687     * <CODE>[No Description Provided by Google]</CODE>
688     * 
689     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
690     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
691     */
692    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
693    public static class AttributionReportingEventTriggerData
694        extends BaseType<AttributionReportingEventTriggerData>
695        implements java.io.Serializable
696    {
697        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
698        protected static final long serialVersionUID = 1;
699
700        private static final NestedHelper<Storage.AttributionReportingEventTriggerData> singleton =
701            Torello.Browser.BrowserAPI.NestedHelpers.Types.
702                Storage$$AttributionReportingEventTriggerData$$.singleton;
703
704        /** <CODE>[No Description Provided by Google]</CODE> */
705        public final String data;
706
707        /** <CODE>[No Description Provided by Google]</CODE> */
708        public final String priority;
709
710        /**
711         * <CODE>[No Description Provided by Google]</CODE>
712         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
713         */
714        public final String dedupKey;
715
716        /** <CODE>[No Description Provided by Google]</CODE> */
717        public final Storage.AttributionReportingFilterPair filters;
718
719        /** Constructor.  Please review this class' fields for documentation. */
720        public AttributionReportingEventTriggerData(
721                ReadOnlyList<Boolean> isPresent, String data, String priority, String dedupKey,
722                AttributionReportingFilterPair filters
723            )
724        {
725            super(singleton, Domains.Storage, "AttributionReportingEventTriggerData", 4);
726
727            this.data       = data;
728            this.priority   = priority;
729            this.dedupKey   = dedupKey;
730            this.filters    = filters;
731
732            this.isPresent = (isPresent == null)
733                ? singleton.generateIsPresentList(this)
734                : THROWS.check(isPresent, 4, "Storage.AttributionReportingEventTriggerData");
735        }
736
737        /** Creates an instance of this class from a {@link JsonObject}.*/
738        public static AttributionReportingEventTriggerData fromJSON(JsonObject jo)
739        { return singleton.fromJSON(jo); }
740
741        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
742        public static NestedDescriptor<AttributionReportingEventTriggerData> descriptor()
743        { return singleton.descriptor(); }
744    }
745
746    /**
747     * <CODE>[No Description Provided by Google]</CODE>
748     * 
749     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
750     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
751     */
752    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
753    public static class AttributionReportingFilterConfig
754        extends BaseType<AttributionReportingFilterConfig>
755        implements java.io.Serializable
756    {
757        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
758        protected static final long serialVersionUID = 1;
759
760        private static final NestedHelper<Storage.AttributionReportingFilterConfig> singleton =
761            Torello.Browser.BrowserAPI.NestedHelpers.Types.
762                Storage$$AttributionReportingFilterConfig$$.singleton;
763
764        /** <CODE>[No Description Provided by Google]</CODE> */
765        public final Storage.AttributionReportingFilterDataEntry[] filterValues;
766
767        /**
768         * duration in seconds
769         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
770         */
771        public final Integer lookbackWindow;
772
773        /** Constructor.  Please review this class' fields for documentation. */
774        public AttributionReportingFilterConfig(
775                ReadOnlyList<Boolean> isPresent,
776                AttributionReportingFilterDataEntry[] filterValues, Integer lookbackWindow
777            )
778        {
779            super(singleton, Domains.Storage, "AttributionReportingFilterConfig", 2);
780
781            this.filterValues   = filterValues;
782            this.lookbackWindow = lookbackWindow;
783
784            this.isPresent = (isPresent == null)
785                ? singleton.generateIsPresentList(this)
786                : THROWS.check(isPresent, 2, "Storage.AttributionReportingFilterConfig");
787        }
788
789        /** Creates an instance of this class from a {@link JsonObject}.*/
790        public static AttributionReportingFilterConfig fromJSON(JsonObject jo)
791        { return singleton.fromJSON(jo); }
792
793        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
794        public static NestedDescriptor<AttributionReportingFilterConfig> descriptor()
795        { return singleton.descriptor(); }
796    }
797
798    /**
799     * <CODE>[No Description Provided by Google]</CODE>
800     * 
801     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
802     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
803     */
804    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
805    public static class AttributionReportingFilterDataEntry
806        extends BaseType<AttributionReportingFilterDataEntry>
807        implements java.io.Serializable
808    {
809        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
810        protected static final long serialVersionUID = 1;
811
812        private static final NestedHelper<Storage.AttributionReportingFilterDataEntry> singleton =
813            Torello.Browser.BrowserAPI.NestedHelpers.Types.
814                Storage$$AttributionReportingFilterDataEntry$$.singleton;
815
816        /** <CODE>[No Description Provided by Google]</CODE> */
817        public final String key;
818
819        /** <CODE>[No Description Provided by Google]</CODE> */
820        public final String[] values;
821
822        /** Constructor.  Please review this class' fields for documentation. */
823        public AttributionReportingFilterDataEntry
824            (ReadOnlyList<Boolean> isPresent, String key, String[] values)
825        {
826            super(singleton, Domains.Storage, "AttributionReportingFilterDataEntry", 2);
827
828            this.key    = key;
829            this.values = values;
830
831            this.isPresent = (isPresent == null)
832                ? singleton.generateIsPresentList(this)
833                : THROWS.check(isPresent, 2, "Storage.AttributionReportingFilterDataEntry");
834        }
835
836        /** Creates an instance of this class from a {@link JsonObject}.*/
837        public static AttributionReportingFilterDataEntry fromJSON(JsonObject jo)
838        { return singleton.fromJSON(jo); }
839
840        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
841        public static NestedDescriptor<AttributionReportingFilterDataEntry> descriptor()
842        { return singleton.descriptor(); }
843    }
844
845    /**
846     * <CODE>[No Description Provided by Google]</CODE>
847     * 
848     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
849     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
850     */
851    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
852    public static class AttributionReportingFilterPair
853        extends BaseType<AttributionReportingFilterPair>
854        implements java.io.Serializable
855    {
856        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
857        protected static final long serialVersionUID = 1;
858
859        private static final NestedHelper<Storage.AttributionReportingFilterPair> singleton =
860            Torello.Browser.BrowserAPI.NestedHelpers.Types.
861                Storage$$AttributionReportingFilterPair$$.singleton;
862
863        /** <CODE>[No Description Provided by Google]</CODE> */
864        public final Storage.AttributionReportingFilterConfig[] filters;
865
866        /** <CODE>[No Description Provided by Google]</CODE> */
867        public final Storage.AttributionReportingFilterConfig[] notFilters;
868
869        /** Constructor.  Please review this class' fields for documentation. */
870        public AttributionReportingFilterPair(
871                ReadOnlyList<Boolean> isPresent, AttributionReportingFilterConfig[] filters,
872                AttributionReportingFilterConfig[] notFilters
873            )
874        {
875            super(singleton, Domains.Storage, "AttributionReportingFilterPair", 2);
876
877            this.filters    = filters;
878            this.notFilters = notFilters;
879
880            this.isPresent = (isPresent == null)
881                ? singleton.generateIsPresentList(this)
882                : THROWS.check(isPresent, 2, "Storage.AttributionReportingFilterPair");
883        }
884
885        /** Creates an instance of this class from a {@link JsonObject}.*/
886        public static AttributionReportingFilterPair fromJSON(JsonObject jo)
887        { return singleton.fromJSON(jo); }
888
889        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
890        public static NestedDescriptor<AttributionReportingFilterPair> descriptor()
891        { return singleton.descriptor(); }
892    }
893
894    /**
895     * <CODE>[No Description Provided by Google]</CODE>
896     * 
897     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
898     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
899     */
900    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
901    public static class AttributionReportingNamedBudgetCandidate
902        extends BaseType<AttributionReportingNamedBudgetCandidate>
903        implements java.io.Serializable
904    {
905        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
906        protected static final long serialVersionUID = 1;
907
908        private static final NestedHelper<Storage.AttributionReportingNamedBudgetCandidate> singleton =
909            Torello.Browser.BrowserAPI.NestedHelpers.Types.
910                Storage$$AttributionReportingNamedBudgetCandidate$$.singleton;
911
912        /**
913         * <CODE>[No Description Provided by Google]</CODE>
914         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
915         */
916        public final String name;
917
918        /** <CODE>[No Description Provided by Google]</CODE> */
919        public final Storage.AttributionReportingFilterPair filters;
920
921        /** Constructor.  Please review this class' fields for documentation. */
922        public AttributionReportingNamedBudgetCandidate
923            (ReadOnlyList<Boolean> isPresent, String name, AttributionReportingFilterPair filters)
924        {
925            super(singleton, Domains.Storage, "AttributionReportingNamedBudgetCandidate", 2);
926
927            this.name       = name;
928            this.filters    = filters;
929
930            this.isPresent = (isPresent == null)
931                ? singleton.generateIsPresentList(this)
932                : THROWS.check(isPresent, 2, "Storage.AttributionReportingNamedBudgetCandidate");
933        }
934
935        /** Creates an instance of this class from a {@link JsonObject}.*/
936        public static AttributionReportingNamedBudgetCandidate fromJSON(JsonObject jo)
937        { return singleton.fromJSON(jo); }
938
939        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
940        public static NestedDescriptor<AttributionReportingNamedBudgetCandidate> descriptor()
941        { return singleton.descriptor(); }
942    }
943
944    /**
945     * <CODE>[No Description Provided by Google]</CODE>
946     * 
947     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
948     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
949     */
950    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
951    public static class AttributionReportingNamedBudgetDef
952        extends BaseType<AttributionReportingNamedBudgetDef>
953        implements java.io.Serializable
954    {
955        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
956        protected static final long serialVersionUID = 1;
957
958        private static final NestedHelper<Storage.AttributionReportingNamedBudgetDef> singleton =
959            Torello.Browser.BrowserAPI.NestedHelpers.Types.
960                Storage$$AttributionReportingNamedBudgetDef$$.singleton;
961
962        /** <CODE>[No Description Provided by Google]</CODE> */
963        public final String name;
964
965        /** <CODE>[No Description Provided by Google]</CODE> */
966        public final int budget;
967
968        /** Constructor.  Please review this class' fields for documentation. */
969        public AttributionReportingNamedBudgetDef
970            (ReadOnlyList<Boolean> isPresent, String name, int budget)
971        {
972            super(singleton, Domains.Storage, "AttributionReportingNamedBudgetDef", 2);
973
974            this.name   = name;
975            this.budget = budget;
976
977            this.isPresent = (isPresent == null)
978                ? singleton.generateIsPresentList(this)
979                : THROWS.check(isPresent, 2, "Storage.AttributionReportingNamedBudgetDef");
980        }
981
982        /** Creates an instance of this class from a {@link JsonObject}.*/
983        public static AttributionReportingNamedBudgetDef fromJSON(JsonObject jo)
984        { return singleton.fromJSON(jo); }
985
986        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
987        public static NestedDescriptor<AttributionReportingNamedBudgetDef> descriptor()
988        { return singleton.descriptor(); }
989    }
990
991    /**
992     * <CODE>[No Description Provided by Google]</CODE>
993     * 
994     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
995     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
996     */
997    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
998    public static class AttributionReportingSourceRegistration
999        extends BaseType<AttributionReportingSourceRegistration>
1000        implements java.io.Serializable
1001    {
1002        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1003        protected static final long serialVersionUID = 1;
1004
1005        private static final NestedHelper<Storage.AttributionReportingSourceRegistration> singleton =
1006            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1007                Storage$$AttributionReportingSourceRegistration$$.singleton;
1008
1009        /** <CODE>[No Description Provided by Google]</CODE> */
1010        public final Number time;
1011
1012        /** duration in seconds */
1013        public final int expiry;
1014
1015        /**
1016         * number instead of integer because not all uint32 can be represented by
1017         * int
1018         */
1019        public final Number[] triggerData;
1020
1021        /** <CODE>[No Description Provided by Google]</CODE> */
1022        public final Storage.AttributionReportingEventReportWindows eventReportWindows;
1023
1024        /** duration in seconds */
1025        public final int aggregatableReportWindow;
1026
1027        /**
1028         * <CODE>[No Description Provided by Google]</CODE>
1029         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=AttributionReportingSourceType DATA-F=type DATA-FILE-ID=CDP.EL2>
1030         * @see BaseType#enumStrList(String)
1031         */
1032        public final String type;
1033
1034        /** <CODE>[No Description Provided by Google]</CODE> */
1035        public final String sourceOrigin;
1036
1037        /** <CODE>[No Description Provided by Google]</CODE> */
1038        public final String reportingOrigin;
1039
1040        /** <CODE>[No Description Provided by Google]</CODE> */
1041        public final String[] destinationSites;
1042
1043        /** <CODE>[No Description Provided by Google]</CODE> */
1044        public final String eventId;
1045
1046        /** <CODE>[No Description Provided by Google]</CODE> */
1047        public final String priority;
1048
1049        /** <CODE>[No Description Provided by Google]</CODE> */
1050        public final Storage.AttributionReportingFilterDataEntry[] filterData;
1051
1052        /** <CODE>[No Description Provided by Google]</CODE> */
1053        public final Storage.AttributionReportingAggregationKeysEntry[] aggregationKeys;
1054
1055        /**
1056         * <CODE>[No Description Provided by Google]</CODE>
1057         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1058         */
1059        public final String debugKey;
1060
1061        /**
1062         * <CODE>[No Description Provided by Google]</CODE>
1063         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=AttributionReportingTriggerDataMatching DATA-F=triggerDataMatching DATA-FILE-ID=CDP.EL2>
1064         * @see BaseType#enumStrList(String)
1065         */
1066        public final String triggerDataMatching;
1067
1068        /** <CODE>[No Description Provided by Google]</CODE> */
1069        public final String destinationLimitPriority;
1070
1071        /** <CODE>[No Description Provided by Google]</CODE> */
1072        public final Storage.AttributionReportingAggregatableDebugReportingConfig aggregatableDebugReportingConfig;
1073
1074        /**
1075         * <CODE>[No Description Provided by Google]</CODE>
1076         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1077         */
1078        public final Storage.AttributionScopesData scopesData;
1079
1080        /** <CODE>[No Description Provided by Google]</CODE> */
1081        public final int maxEventLevelReports;
1082
1083        /** <CODE>[No Description Provided by Google]</CODE> */
1084        public final Storage.AttributionReportingNamedBudgetDef[] namedBudgets;
1085
1086        /** <CODE>[No Description Provided by Google]</CODE> */
1087        public final boolean debugReporting;
1088
1089        /** <CODE>[No Description Provided by Google]</CODE> */
1090        public final Number eventLevelEpsilon;
1091
1092        /** Constructor.  Please review this class' fields for documentation. */
1093        public AttributionReportingSourceRegistration(
1094                ReadOnlyList<Boolean> isPresent, Number time, int expiry, Number[] triggerData,
1095                AttributionReportingEventReportWindows eventReportWindows,
1096                int aggregatableReportWindow, String type, String sourceOrigin,
1097                String reportingOrigin, String[] destinationSites, String eventId, String priority,
1098                AttributionReportingFilterDataEntry[] filterData,
1099                AttributionReportingAggregationKeysEntry[] aggregationKeys, String debugKey,
1100                String triggerDataMatching, String destinationLimitPriority,
1101                AttributionReportingAggregatableDebugReportingConfig
1102                aggregatableDebugReportingConfig, AttributionScopesData scopesData,
1103                int maxEventLevelReports, AttributionReportingNamedBudgetDef[] namedBudgets,
1104                boolean debugReporting, Number eventLevelEpsilon
1105            )
1106        {
1107            super(singleton, Domains.Storage, "AttributionReportingSourceRegistration", 22);
1108
1109            this.time                               = time;
1110            this.expiry                             = expiry;
1111            this.triggerData                        = triggerData;
1112            this.eventReportWindows                 = eventReportWindows;
1113            this.aggregatableReportWindow           = aggregatableReportWindow;
1114            this.type                               = type;
1115            this.sourceOrigin                       = sourceOrigin;
1116            this.reportingOrigin                    = reportingOrigin;
1117            this.destinationSites                   = destinationSites;
1118            this.eventId                            = eventId;
1119            this.priority                           = priority;
1120            this.filterData                         = filterData;
1121            this.aggregationKeys                    = aggregationKeys;
1122            this.debugKey                           = debugKey;
1123            this.triggerDataMatching                = triggerDataMatching;
1124            this.destinationLimitPriority           = destinationLimitPriority;
1125            this.aggregatableDebugReportingConfig   = aggregatableDebugReportingConfig;
1126            this.scopesData                         = scopesData;
1127            this.maxEventLevelReports               = maxEventLevelReports;
1128            this.namedBudgets                       = namedBudgets;
1129            this.debugReporting                     = debugReporting;
1130            this.eventLevelEpsilon                  = eventLevelEpsilon;
1131
1132            this.isPresent = (isPresent == null)
1133                ? singleton.generateIsPresentList(this)
1134                : THROWS.check(isPresent, 22, "Storage.AttributionReportingSourceRegistration");
1135        }
1136
1137        /** Creates an instance of this class from a {@link JsonObject}.*/
1138        public static AttributionReportingSourceRegistration fromJSON(JsonObject jo)
1139        { return singleton.fromJSON(jo); }
1140
1141        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1142        public static NestedDescriptor<AttributionReportingSourceRegistration> descriptor()
1143        { return singleton.descriptor(); }
1144    }
1145
1146    /**
1147     * <CODE>[No Description Provided by Google]</CODE>
1148     * 
1149     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
1150     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1151     */
1152    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1153    public static class AttributionReportingTriggerRegistration
1154        extends BaseType<AttributionReportingTriggerRegistration>
1155        implements java.io.Serializable
1156    {
1157        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1158        protected static final long serialVersionUID = 1;
1159
1160        private static final NestedHelper<Storage.AttributionReportingTriggerRegistration> singleton =
1161            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1162                Storage$$AttributionReportingTriggerRegistration$$.singleton;
1163
1164        /** <CODE>[No Description Provided by Google]</CODE> */
1165        public final Storage.AttributionReportingFilterPair filters;
1166
1167        /**
1168         * <CODE>[No Description Provided by Google]</CODE>
1169         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1170         */
1171        public final String debugKey;
1172
1173        /** <CODE>[No Description Provided by Google]</CODE> */
1174        public final Storage.AttributionReportingAggregatableDedupKey[] aggregatableDedupKeys;
1175
1176        /** <CODE>[No Description Provided by Google]</CODE> */
1177        public final Storage.AttributionReportingEventTriggerData[] eventTriggerData;
1178
1179        /** <CODE>[No Description Provided by Google]</CODE> */
1180        public final Storage.AttributionReportingAggregatableTriggerData[] aggregatableTriggerData;
1181
1182        /** <CODE>[No Description Provided by Google]</CODE> */
1183        public final Storage.AttributionReportingAggregatableValueEntry[] aggregatableValues;
1184
1185        /** <CODE>[No Description Provided by Google]</CODE> */
1186        public final int aggregatableFilteringIdMaxBytes;
1187
1188        /** <CODE>[No Description Provided by Google]</CODE> */
1189        public final boolean debugReporting;
1190
1191        /**
1192         * <CODE>[No Description Provided by Google]</CODE>
1193         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1194         */
1195        public final String aggregationCoordinatorOrigin;
1196
1197        /**
1198         * <CODE>[No Description Provided by Google]</CODE>
1199         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=AttributionReportingSourceRegistrationTimeConfig DATA-F=sourceRegistrationTimeConfig DATA-FILE-ID=CDP.EL2>
1200         * @see BaseType#enumStrList(String)
1201         */
1202        public final String sourceRegistrationTimeConfig;
1203
1204        /**
1205         * <CODE>[No Description Provided by Google]</CODE>
1206         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1207         */
1208        public final String triggerContextId;
1209
1210        /** <CODE>[No Description Provided by Google]</CODE> */
1211        public final Storage.AttributionReportingAggregatableDebugReportingConfig aggregatableDebugReportingConfig;
1212
1213        /** <CODE>[No Description Provided by Google]</CODE> */
1214        public final String[] scopes;
1215
1216        /** <CODE>[No Description Provided by Google]</CODE> */
1217        public final Storage.AttributionReportingNamedBudgetCandidate[] namedBudgets;
1218
1219        /** Constructor.  Please review this class' fields for documentation. */
1220        public AttributionReportingTriggerRegistration(
1221                ReadOnlyList<Boolean> isPresent, AttributionReportingFilterPair filters,
1222                String debugKey, AttributionReportingAggregatableDedupKey[] aggregatableDedupKeys,
1223                AttributionReportingEventTriggerData[] eventTriggerData,
1224                AttributionReportingAggregatableTriggerData[] aggregatableTriggerData,
1225                AttributionReportingAggregatableValueEntry[] aggregatableValues,
1226                int aggregatableFilteringIdMaxBytes, boolean debugReporting,
1227                String aggregationCoordinatorOrigin, String sourceRegistrationTimeConfig,
1228                String triggerContextId, AttributionReportingAggregatableDebugReportingConfig
1229                aggregatableDebugReportingConfig, String[] scopes,
1230                AttributionReportingNamedBudgetCandidate[] namedBudgets
1231            )
1232        {
1233            super(singleton, Domains.Storage, "AttributionReportingTriggerRegistration", 14);
1234
1235            this.filters                            = filters;
1236            this.debugKey                           = debugKey;
1237            this.aggregatableDedupKeys              = aggregatableDedupKeys;
1238            this.eventTriggerData                   = eventTriggerData;
1239            this.aggregatableTriggerData            = aggregatableTriggerData;
1240            this.aggregatableValues                 = aggregatableValues;
1241            this.aggregatableFilteringIdMaxBytes    = aggregatableFilteringIdMaxBytes;
1242            this.debugReporting                     = debugReporting;
1243            this.aggregationCoordinatorOrigin       = aggregationCoordinatorOrigin;
1244            this.sourceRegistrationTimeConfig       = sourceRegistrationTimeConfig;
1245            this.triggerContextId                   = triggerContextId;
1246            this.aggregatableDebugReportingConfig   = aggregatableDebugReportingConfig;
1247            this.scopes                             = scopes;
1248            this.namedBudgets                       = namedBudgets;
1249
1250            this.isPresent = (isPresent == null)
1251                ? singleton.generateIsPresentList(this)
1252                : THROWS.check(isPresent, 14, "Storage.AttributionReportingTriggerRegistration");
1253        }
1254
1255        /** Creates an instance of this class from a {@link JsonObject}.*/
1256        public static AttributionReportingTriggerRegistration fromJSON(JsonObject jo)
1257        { return singleton.fromJSON(jo); }
1258
1259        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1260        public static NestedDescriptor<AttributionReportingTriggerRegistration> descriptor()
1261        { return singleton.descriptor(); }
1262    }
1263
1264    /**
1265     * <CODE>[No Description Provided by Google]</CODE>
1266     * 
1267     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
1268     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1269     */
1270    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1271    public static class AttributionScopesData
1272        extends BaseType<AttributionScopesData>
1273        implements java.io.Serializable
1274    {
1275        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1276        protected static final long serialVersionUID = 1;
1277
1278        private static final NestedHelper<Storage.AttributionScopesData> singleton =
1279            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1280                Storage$$AttributionScopesData$$.singleton;
1281
1282        /** <CODE>[No Description Provided by Google]</CODE> */
1283        public final String[] values;
1284
1285        /**
1286         * number instead of integer because not all uint32 can be represented by
1287         * int
1288         */
1289        public final Number limit;
1290
1291        /** <CODE>[No Description Provided by Google]</CODE> */
1292        public final Number maxEventStates;
1293
1294        /** Constructor.  Please review this class' fields for documentation. */
1295        public AttributionScopesData
1296            (ReadOnlyList<Boolean> isPresent, String[] values, Number limit, Number maxEventStates)
1297        {
1298            super(singleton, Domains.Storage, "AttributionScopesData", 3);
1299
1300            this.values         = values;
1301            this.limit          = limit;
1302            this.maxEventStates = maxEventStates;
1303
1304            this.isPresent = (isPresent == null)
1305                ? singleton.generateIsPresentList(this)
1306                : THROWS.check(isPresent, 3, "Storage.AttributionScopesData");
1307        }
1308
1309        /** Creates an instance of this class from a {@link JsonObject}.*/
1310        public static AttributionScopesData fromJSON(JsonObject jo)
1311        { return singleton.fromJSON(jo); }
1312
1313        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1314        public static NestedDescriptor<AttributionScopesData> descriptor()
1315        { return singleton.descriptor(); }
1316    }
1317
1318    /**
1319     * A single Related Website Set object.
1320     * 
1321     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
1322     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1323     */
1324    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1325    public static class RelatedWebsiteSet
1326        extends BaseType<RelatedWebsiteSet>
1327        implements java.io.Serializable
1328    {
1329        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1330        protected static final long serialVersionUID = 1;
1331
1332        private static final NestedHelper<Storage.RelatedWebsiteSet> singleton =
1333            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1334                Storage$$RelatedWebsiteSet$$.singleton;
1335
1336        /** The primary site of this set, along with the ccTLDs if there is any. */
1337        public final String[] primarySites;
1338
1339        /** The associated sites of this set, along with the ccTLDs if there is any. */
1340        public final String[] associatedSites;
1341
1342        /** The service sites of this set, along with the ccTLDs if there is any. */
1343        public final String[] serviceSites;
1344
1345        /** Constructor.  Please review this class' fields for documentation. */
1346        public RelatedWebsiteSet(
1347                ReadOnlyList<Boolean> isPresent, String[] primarySites, String[] associatedSites,
1348                String[] serviceSites
1349            )
1350        {
1351            super(singleton, Domains.Storage, "RelatedWebsiteSet", 3);
1352
1353            this.primarySites       = primarySites;
1354            this.associatedSites    = associatedSites;
1355            this.serviceSites       = serviceSites;
1356
1357            this.isPresent = (isPresent == null)
1358                ? singleton.generateIsPresentList(this)
1359                : THROWS.check(isPresent, 3, "Storage.RelatedWebsiteSet");
1360        }
1361
1362        /** Creates an instance of this class from a {@link JsonObject}.*/
1363        public static RelatedWebsiteSet fromJSON(JsonObject jo)
1364        { return singleton.fromJSON(jo); }
1365
1366        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1367        public static NestedDescriptor<RelatedWebsiteSet> descriptor()
1368        { return singleton.descriptor(); }
1369    }
1370
1371    /**
1372     * Bundles the parameters for shared storage access events whose
1373     * presence/absence can vary according to SharedStorageAccessType.
1374     * 
1375     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1376     */
1377    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1378    public static class SharedStorageAccessParams
1379        extends BaseType<SharedStorageAccessParams>
1380        implements java.io.Serializable
1381    {
1382        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1383        protected static final long serialVersionUID = 1;
1384
1385        private static final NestedHelper<Storage.SharedStorageAccessParams> singleton =
1386            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1387                Storage$$SharedStorageAccessParams$$.singleton;
1388
1389        /**
1390         * Spec of the module script URL.
1391         * Present only for SharedStorageAccessMethods: addModule and
1392         * createWorklet.
1393         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1394         */
1395        public final String scriptSourceUrl;
1396
1397        /**
1398         * String denoting "context-origin", "script-origin", or a custom
1399         * origin to be used as the worklet's data origin.
1400         * Present only for SharedStorageAccessMethod: createWorklet.
1401         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1402         */
1403        public final String dataOrigin;
1404
1405        /**
1406         * Name of the registered operation to be run.
1407         * Present only for SharedStorageAccessMethods: run and selectURL.
1408         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1409         */
1410        public final String operationName;
1411
1412        /**
1413         * ID of the operation call.
1414         * Present only for SharedStorageAccessMethods: run and selectURL.
1415         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1416         */
1417        public final String operationId;
1418
1419        /**
1420         * Whether or not to keep the worket alive for future run or selectURL
1421         * calls.
1422         * Present only for SharedStorageAccessMethods: run and selectURL.
1423         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1424         */
1425        public final Boolean keepAlive;
1426
1427        /**
1428         * Configures the private aggregation options.
1429         * Present only for SharedStorageAccessMethods: run and selectURL.
1430         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1431         */
1432        public final Storage.SharedStoragePrivateAggregationConfig privateAggregationConfig;
1433
1434        /**
1435         * The operation's serialized data in bytes (converted to a string).
1436         * Present only for SharedStorageAccessMethods: run and selectURL.
1437         * TODO(crbug.com/401011862): Consider updating this parameter to binary.
1438         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1439         */
1440        public final String serializedData;
1441
1442        /**
1443         * Array of candidate URLs' specs, along with any associated metadata.
1444         * Present only for SharedStorageAccessMethod: selectURL.
1445         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1446         */
1447        public final Storage.SharedStorageUrlWithMetadata[] urlsWithMetadata;
1448
1449        /**
1450         * Spec of the URN:UUID generated for a selectURL call.
1451         * Present only for SharedStorageAccessMethod: selectURL.
1452         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1453         */
1454        public final String urnUuid;
1455
1456        /**
1457         * Key for a specific entry in an origin's shared storage.
1458         * Present only for SharedStorageAccessMethods: set, append, delete, and
1459         * get.
1460         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1461         */
1462        public final String key;
1463
1464        /**
1465         * Value for a specific entry in an origin's shared storage.
1466         * Present only for SharedStorageAccessMethods: set and append.
1467         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1468         */
1469        public final String value;
1470
1471        /**
1472         * Whether or not to set an entry for a key if that key is already present.
1473         * Present only for SharedStorageAccessMethod: set.
1474         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1475         */
1476        public final Boolean ignoreIfPresent;
1477
1478        /**
1479         * A number denoting the (0-based) order of the worklet's
1480         * creation relative to all other shared storage worklets created by
1481         * documents using the current storage partition.
1482         * Present only for SharedStorageAccessMethods: addModule, createWorklet.
1483         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1484         */
1485        public final Integer workletOrdinal;
1486
1487        /**
1488         * Hex representation of the DevTools token used as the TargetID for the
1489         * associated shared storage worklet.
1490         * Present only for SharedStorageAccessMethods: addModule, createWorklet,
1491         * run, selectURL, and any other SharedStorageAccessMethod when the
1492         * SharedStorageAccessScope is sharedStorageWorklet.
1493         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1494         */
1495        public final String workletTargetId;
1496
1497        /**
1498         * Name of the lock to be acquired, if present.
1499         * Optionally present only for SharedStorageAccessMethods: batchUpdate,
1500         * set, append, delete, and clear.
1501         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1502         */
1503        public final String withLock;
1504
1505        /**
1506         * If the method has been called as part of a batchUpdate, then this
1507         * number identifies the batch to which it belongs.
1508         * Optionally present only for SharedStorageAccessMethods:
1509         * batchUpdate (required), set, append, delete, and clear.
1510         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1511         */
1512        public final String batchUpdateId;
1513
1514        /**
1515         * Number of modifier methods sent in batch.
1516         * Present only for SharedStorageAccessMethod: batchUpdate.
1517         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1518         */
1519        public final Integer batchSize;
1520
1521        /** Constructor.  Please review this class' fields for documentation. */
1522        public SharedStorageAccessParams(
1523                ReadOnlyList<Boolean> isPresent, String scriptSourceUrl, String dataOrigin,
1524                String operationName, String operationId, Boolean keepAlive,
1525                SharedStoragePrivateAggregationConfig privateAggregationConfig,
1526                String serializedData, SharedStorageUrlWithMetadata[] urlsWithMetadata,
1527                String urnUuid, String key, String value, Boolean ignoreIfPresent,
1528                Integer workletOrdinal, String workletTargetId, String withLock,
1529                String batchUpdateId, Integer batchSize
1530            )
1531        {
1532            super(singleton, Domains.Storage, "SharedStorageAccessParams", 17);
1533
1534            this.scriptSourceUrl            = scriptSourceUrl;
1535            this.dataOrigin                 = dataOrigin;
1536            this.operationName              = operationName;
1537            this.operationId                = operationId;
1538            this.keepAlive                  = keepAlive;
1539            this.privateAggregationConfig   = privateAggregationConfig;
1540            this.serializedData             = serializedData;
1541            this.urlsWithMetadata           = urlsWithMetadata;
1542            this.urnUuid                    = urnUuid;
1543            this.key                        = key;
1544            this.value                      = value;
1545            this.ignoreIfPresent            = ignoreIfPresent;
1546            this.workletOrdinal             = workletOrdinal;
1547            this.workletTargetId            = workletTargetId;
1548            this.withLock                   = withLock;
1549            this.batchUpdateId              = batchUpdateId;
1550            this.batchSize                  = batchSize;
1551
1552            this.isPresent = (isPresent == null)
1553                ? singleton.generateIsPresentList(this)
1554                : THROWS.check(isPresent, 17, "Storage.SharedStorageAccessParams");
1555        }
1556
1557        /** Creates an instance of this class from a {@link JsonObject}.*/
1558        public static SharedStorageAccessParams fromJSON(JsonObject jo)
1559        { return singleton.fromJSON(jo); }
1560
1561        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1562        public static NestedDescriptor<SharedStorageAccessParams> descriptor()
1563        { return singleton.descriptor(); }
1564    }
1565
1566    /**
1567     * Struct for a single key-value pair in an origin's shared storage.
1568     * 
1569     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1570     */
1571    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1572    public static class SharedStorageEntry
1573        extends BaseType<SharedStorageEntry>
1574        implements java.io.Serializable
1575    {
1576        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1577        protected static final long serialVersionUID = 1;
1578
1579        private static final NestedHelper<Storage.SharedStorageEntry> singleton =
1580            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1581                Storage$$SharedStorageEntry$$.singleton;
1582
1583        /** <CODE>[No Description Provided by Google]</CODE> */
1584        public final String key;
1585
1586        /** <CODE>[No Description Provided by Google]</CODE> */
1587        public final String value;
1588
1589        /** Constructor.  Please review this class' fields for documentation. */
1590        public SharedStorageEntry(ReadOnlyList<Boolean> isPresent, String key, String value)
1591        {
1592            super(singleton, Domains.Storage, "SharedStorageEntry", 2);
1593
1594            this.key    = key;
1595            this.value  = value;
1596
1597            this.isPresent = (isPresent == null)
1598                ? singleton.generateIsPresentList(this)
1599                : THROWS.check(isPresent, 2, "Storage.SharedStorageEntry");
1600        }
1601
1602        /** Creates an instance of this class from a {@link JsonObject}.*/
1603        public static SharedStorageEntry fromJSON(JsonObject jo)
1604        { return singleton.fromJSON(jo); }
1605
1606        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1607        public static NestedDescriptor<SharedStorageEntry> descriptor()
1608        { return singleton.descriptor(); }
1609    }
1610
1611    /**
1612     * Details for an origin's shared storage.
1613     * 
1614     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1615     */
1616    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1617    public static class SharedStorageMetadata
1618        extends BaseType<SharedStorageMetadata>
1619        implements java.io.Serializable
1620    {
1621        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1622        protected static final long serialVersionUID = 1;
1623
1624        private static final NestedHelper<Storage.SharedStorageMetadata> singleton =
1625            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1626                Storage$$SharedStorageMetadata$$.singleton;
1627
1628        /** Time when the origin's shared storage was last created. */
1629        public final Number creationTime;
1630
1631        /** Number of key-value pairs stored in origin's shared storage. */
1632        public final int length;
1633
1634        /** Current amount of bits of entropy remaining in the navigation budget. */
1635        public final Number remainingBudget;
1636
1637        /**
1638         * Total number of bytes stored as key-value pairs in origin's shared
1639         * storage.
1640         */
1641        public final int bytesUsed;
1642
1643        /** Constructor.  Please review this class' fields for documentation. */
1644        public SharedStorageMetadata(
1645                ReadOnlyList<Boolean> isPresent, Number creationTime, int length,
1646                Number remainingBudget, int bytesUsed
1647            )
1648        {
1649            super(singleton, Domains.Storage, "SharedStorageMetadata", 4);
1650
1651            this.creationTime       = creationTime;
1652            this.length             = length;
1653            this.remainingBudget    = remainingBudget;
1654            this.bytesUsed          = bytesUsed;
1655
1656            this.isPresent = (isPresent == null)
1657                ? singleton.generateIsPresentList(this)
1658                : THROWS.check(isPresent, 4, "Storage.SharedStorageMetadata");
1659        }
1660
1661        /** Creates an instance of this class from a {@link JsonObject}.*/
1662        public static SharedStorageMetadata fromJSON(JsonObject jo)
1663        { return singleton.fromJSON(jo); }
1664
1665        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1666        public static NestedDescriptor<SharedStorageMetadata> descriptor()
1667        { return singleton.descriptor(); }
1668    }
1669
1670    /**
1671     * Represents a dictionary object passed in as privateAggregationConfig to
1672     * run or selectURL.
1673     * 
1674     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1675     */
1676    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1677    public static class SharedStoragePrivateAggregationConfig
1678        extends BaseType<SharedStoragePrivateAggregationConfig>
1679        implements java.io.Serializable
1680    {
1681        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1682        protected static final long serialVersionUID = 1;
1683
1684        private static final NestedHelper<Storage.SharedStoragePrivateAggregationConfig> singleton =
1685            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1686                Storage$$SharedStoragePrivateAggregationConfig$$.singleton;
1687
1688        /**
1689         * The chosen aggregation service deployment.
1690         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1691         */
1692        public final String aggregationCoordinatorOrigin;
1693
1694        /**
1695         * The context ID provided.
1696         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1697         */
1698        public final String contextId;
1699
1700        /** Configures the maximum size allowed for filtering IDs. */
1701        public final int filteringIdMaxBytes;
1702
1703        /**
1704         * The limit on the number of contributions in the final report.
1705         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1706         */
1707        public final Integer maxContributions;
1708
1709        /** Constructor.  Please review this class' fields for documentation. */
1710        public SharedStoragePrivateAggregationConfig(
1711                ReadOnlyList<Boolean> isPresent, String aggregationCoordinatorOrigin,
1712                String contextId, int filteringIdMaxBytes, Integer maxContributions
1713            )
1714        {
1715            super(singleton, Domains.Storage, "SharedStoragePrivateAggregationConfig", 4);
1716
1717            this.aggregationCoordinatorOrigin   = aggregationCoordinatorOrigin;
1718            this.contextId                      = contextId;
1719            this.filteringIdMaxBytes            = filteringIdMaxBytes;
1720            this.maxContributions               = maxContributions;
1721
1722            this.isPresent = (isPresent == null)
1723                ? singleton.generateIsPresentList(this)
1724                : THROWS.check(isPresent, 4, "Storage.SharedStoragePrivateAggregationConfig");
1725        }
1726
1727        /** Creates an instance of this class from a {@link JsonObject}.*/
1728        public static SharedStoragePrivateAggregationConfig fromJSON(JsonObject jo)
1729        { return singleton.fromJSON(jo); }
1730
1731        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1732        public static NestedDescriptor<SharedStoragePrivateAggregationConfig> descriptor()
1733        { return singleton.descriptor(); }
1734    }
1735
1736    /**
1737     * Pair of reporting metadata details for a candidate URL for <CODE>selectURL()</CODE>.
1738     * 
1739     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1740     */
1741    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1742    public static class SharedStorageReportingMetadata
1743        extends BaseType<SharedStorageReportingMetadata>
1744        implements java.io.Serializable
1745    {
1746        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1747        protected static final long serialVersionUID = 1;
1748
1749        private static final NestedHelper<Storage.SharedStorageReportingMetadata> singleton =
1750            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1751                Storage$$SharedStorageReportingMetadata$$.singleton;
1752
1753        /** <CODE>[No Description Provided by Google]</CODE> */
1754        public final String eventType;
1755
1756        /** <CODE>[No Description Provided by Google]</CODE> */
1757        public final String reportingUrl;
1758
1759        /** Constructor.  Please review this class' fields for documentation. */
1760        public SharedStorageReportingMetadata
1761            (ReadOnlyList<Boolean> isPresent, String eventType, String reportingUrl)
1762        {
1763            super(singleton, Domains.Storage, "SharedStorageReportingMetadata", 2);
1764
1765            this.eventType      = eventType;
1766            this.reportingUrl   = reportingUrl;
1767
1768            this.isPresent = (isPresent == null)
1769                ? singleton.generateIsPresentList(this)
1770                : THROWS.check(isPresent, 2, "Storage.SharedStorageReportingMetadata");
1771        }
1772
1773        /** Creates an instance of this class from a {@link JsonObject}.*/
1774        public static SharedStorageReportingMetadata fromJSON(JsonObject jo)
1775        { return singleton.fromJSON(jo); }
1776
1777        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1778        public static NestedDescriptor<SharedStorageReportingMetadata> descriptor()
1779        { return singleton.descriptor(); }
1780    }
1781
1782    /**
1783     * Bundles a candidate URL with its reporting metadata.
1784     * 
1785     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1786     */
1787    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1788    public static class SharedStorageUrlWithMetadata
1789        extends BaseType<SharedStorageUrlWithMetadata>
1790        implements java.io.Serializable
1791    {
1792        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1793        protected static final long serialVersionUID = 1;
1794
1795        private static final NestedHelper<Storage.SharedStorageUrlWithMetadata> singleton =
1796            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1797                Storage$$SharedStorageUrlWithMetadata$$.singleton;
1798
1799        /** Spec of candidate URL. */
1800        public final String url;
1801
1802        /** Any associated reporting metadata. */
1803        public final Storage.SharedStorageReportingMetadata[] reportingMetadata;
1804
1805        /** Constructor.  Please review this class' fields for documentation. */
1806        public SharedStorageUrlWithMetadata(
1807                ReadOnlyList<Boolean> isPresent, String url,
1808                SharedStorageReportingMetadata[] reportingMetadata
1809            )
1810        {
1811            super(singleton, Domains.Storage, "SharedStorageUrlWithMetadata", 2);
1812
1813            this.url                = url;
1814            this.reportingMetadata  = reportingMetadata;
1815
1816            this.isPresent = (isPresent == null)
1817                ? singleton.generateIsPresentList(this)
1818                : THROWS.check(isPresent, 2, "Storage.SharedStorageUrlWithMetadata");
1819        }
1820
1821        /** Creates an instance of this class from a {@link JsonObject}.*/
1822        public static SharedStorageUrlWithMetadata fromJSON(JsonObject jo)
1823        { return singleton.fromJSON(jo); }
1824
1825        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1826        public static NestedDescriptor<SharedStorageUrlWithMetadata> descriptor()
1827        { return singleton.descriptor(); }
1828    }
1829
1830    /**
1831     * <CODE>[No Description Provided by Google]</CODE>
1832     * 
1833     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1834     */
1835    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1836    public static class StorageBucket
1837        extends BaseType<StorageBucket>
1838        implements java.io.Serializable
1839    {
1840        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1841        protected static final long serialVersionUID = 1;
1842
1843        private static final NestedHelper<Storage.StorageBucket> singleton =
1844            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1845                Storage$$StorageBucket$$.singleton;
1846
1847        /** <CODE>[No Description Provided by Google]</CODE> */
1848        public final String storageKey;
1849
1850        /**
1851         * If not specified, it is the default bucket of the storageKey.
1852         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
1853         */
1854        public final String name;
1855
1856        /** Constructor.  Please review this class' fields for documentation. */
1857        public StorageBucket(ReadOnlyList<Boolean> isPresent, String storageKey, String name)
1858        {
1859            super(singleton, Domains.Storage, "StorageBucket", 2);
1860
1861            this.storageKey = storageKey;
1862            this.name       = name;
1863
1864            this.isPresent = (isPresent == null)
1865                ? singleton.generateIsPresentList(this)
1866                : THROWS.check(isPresent, 2, "Storage.StorageBucket");
1867        }
1868
1869        /** Creates an instance of this class from a {@link JsonObject}.*/
1870        public static StorageBucket fromJSON(JsonObject jo)
1871        { return singleton.fromJSON(jo); }
1872
1873        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1874        public static NestedDescriptor<StorageBucket> descriptor()
1875        { return singleton.descriptor(); }
1876    }
1877
1878    /**
1879     * <CODE>[No Description Provided by Google]</CODE>
1880     * 
1881     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1882     */
1883    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1884    public static class StorageBucketInfo
1885        extends BaseType<StorageBucketInfo>
1886        implements java.io.Serializable
1887    {
1888        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1889        protected static final long serialVersionUID = 1;
1890
1891        private static final NestedHelper<Storage.StorageBucketInfo> singleton =
1892            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1893                Storage$$StorageBucketInfo$$.singleton;
1894
1895        /** <CODE>[No Description Provided by Google]</CODE> */
1896        public final Storage.StorageBucket bucket;
1897
1898        /** <CODE>[No Description Provided by Google]</CODE> */
1899        public final String id;
1900
1901        /** <CODE>[No Description Provided by Google]</CODE> */
1902        public final Number expiration;
1903
1904        /** Storage quota (bytes). */
1905        public final Number quota;
1906
1907        /** <CODE>[No Description Provided by Google]</CODE> */
1908        public final boolean persistent;
1909
1910        /**
1911         * <CODE>[No Description Provided by Google]</CODE>
1912         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=StorageBucketsDurability DATA-F=durability DATA-FILE-ID=CDP.EL2>
1913         * @see BaseType#enumStrList(String)
1914         */
1915        public final String durability;
1916
1917        /** Constructor.  Please review this class' fields for documentation. */
1918        public StorageBucketInfo(
1919                ReadOnlyList<Boolean> isPresent, StorageBucket bucket, String id,
1920                Number expiration, Number quota, boolean persistent, String durability
1921            )
1922        {
1923            super(singleton, Domains.Storage, "StorageBucketInfo", 6);
1924
1925            this.bucket     = bucket;
1926            this.id         = id;
1927            this.expiration = expiration;
1928            this.quota      = quota;
1929            this.persistent = persistent;
1930            this.durability = durability;
1931
1932            this.isPresent = (isPresent == null)
1933                ? singleton.generateIsPresentList(this)
1934                : THROWS.check(isPresent, 6, "Storage.StorageBucketInfo");
1935        }
1936
1937        /** Creates an instance of this class from a {@link JsonObject}.*/
1938        public static StorageBucketInfo fromJSON(JsonObject jo)
1939        { return singleton.fromJSON(jo); }
1940
1941        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1942        public static NestedDescriptor<StorageBucketInfo> descriptor()
1943        { return singleton.descriptor(); }
1944    }
1945
1946    /**
1947     * Pair of issuer origin and number of available (signed, but not used) Trust
1948     * Tokens from that issuer.
1949     * 
1950     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
1951     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1952     */
1953    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1954    public static class TrustTokens
1955        extends BaseType<TrustTokens>
1956        implements java.io.Serializable
1957    {
1958        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
1959        protected static final long serialVersionUID = 1;
1960
1961        private static final NestedHelper<Storage.TrustTokens> singleton =
1962            Torello.Browser.BrowserAPI.NestedHelpers.Types.
1963                Storage$$TrustTokens$$.singleton;
1964
1965        /** <CODE>[No Description Provided by Google]</CODE> */
1966        public final String issuerOrigin;
1967
1968        /** <CODE>[No Description Provided by Google]</CODE> */
1969        public final Number count;
1970
1971        /** Constructor.  Please review this class' fields for documentation. */
1972        public TrustTokens(ReadOnlyList<Boolean> isPresent, String issuerOrigin, Number count)
1973        {
1974            super(singleton, Domains.Storage, "TrustTokens", 2);
1975
1976            this.issuerOrigin   = issuerOrigin;
1977            this.count          = count;
1978
1979            this.isPresent = (isPresent == null)
1980                ? singleton.generateIsPresentList(this)
1981                : THROWS.check(isPresent, 2, "Storage.TrustTokens");
1982        }
1983
1984        /** Creates an instance of this class from a {@link JsonObject}.*/
1985        public static TrustTokens fromJSON(JsonObject jo)
1986        { return singleton.fromJSON(jo); }
1987
1988        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
1989        public static NestedDescriptor<TrustTokens> descriptor()
1990        { return singleton.descriptor(); }
1991    }
1992
1993    /**
1994     * Usage for a storage type.
1995     * 
1996     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
1997     */
1998    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI")
1999    public static class UsageForType
2000        extends BaseType<UsageForType>
2001        implements java.io.Serializable
2002    {
2003        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2004        protected static final long serialVersionUID = 1;
2005
2006        private static final NestedHelper<Storage.UsageForType> singleton =
2007            Torello.Browser.BrowserAPI.NestedHelpers.Types.
2008                Storage$$UsageForType$$.singleton;
2009
2010        /**
2011         * Name of storage type.
2012         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=StorageType DATA-F=storageType DATA-FILE-ID=CDP.EL2>
2013         * @see BaseType#enumStrList(String)
2014         */
2015        public final String storageType;
2016
2017        /** Storage usage (bytes). */
2018        public final Number usage;
2019
2020        /** Constructor.  Please review this class' fields for documentation. */
2021        public UsageForType(ReadOnlyList<Boolean> isPresent, String storageType, Number usage)
2022        {
2023            super(singleton, Domains.Storage, "UsageForType", 2);
2024
2025            this.storageType    = storageType;
2026            this.usage          = usage;
2027
2028            this.isPresent = (isPresent == null)
2029                ? singleton.generateIsPresentList(this)
2030                : THROWS.check(isPresent, 2, "Storage.UsageForType");
2031        }
2032
2033        /** Creates an instance of this class from a {@link JsonObject}.*/
2034        public static UsageForType fromJSON(JsonObject jo)
2035        { return singleton.fromJSON(jo); }
2036
2037        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2038        public static NestedDescriptor<UsageForType> descriptor()
2039        { return singleton.descriptor(); }
2040    }
2041
2042
2043    // ********************************************************************************************
2044    // ********************************************************************************************
2045    // Command-Return Types
2046    // ********************************************************************************************
2047    // ********************************************************************************************
2048
2049
2050    /**
2051     * Returns usage and quota in bytes.
2052     * 
2053     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI DATA-CMD=getUsageAndQuota>
2054     * @see Storage#getUsageAndQuota
2055     */
2056    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_CMD_JDHBI")
2057    public static class getUsageAndQuota$$RET
2058        extends BaseType<getUsageAndQuota$$RET>
2059        implements java.io.Serializable
2060    {
2061        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2062        protected static final long serialVersionUID = 1;
2063
2064        private static final NestedHelper<Storage.getUsageAndQuota$$RET> singleton =
2065            Torello.Browser.BrowserAPI.NestedHelpers.CmdReturns.
2066                Storage$$getUsageAndQuota$$RET.singleton;
2067
2068        /** Storage usage (bytes). */
2069        public final Number usage;
2070
2071        /** Storage quota (bytes). */
2072        public final Number quota;
2073
2074        /** Whether or not the origin has an active storage quota override */
2075        public final boolean overrideActive;
2076
2077        /** Storage usage per type (bytes). */
2078        public final Storage.UsageForType[] usageBreakdown;
2079
2080        /** Constructor.  Please review this class' fields for documentation. */
2081        public getUsageAndQuota$$RET(
2082                ReadOnlyList<Boolean> isPresent, Number usage, Number quota,
2083                boolean overrideActive, UsageForType[] usageBreakdown
2084            )
2085        {
2086            super(singleton, Domains.Storage, "getUsageAndQuota", 4);
2087
2088            this.usage          = usage;
2089            this.quota          = quota;
2090            this.overrideActive = overrideActive;
2091            this.usageBreakdown = usageBreakdown;
2092
2093            this.isPresent = (isPresent == null)
2094                ? singleton.generateIsPresentList(this)
2095                : THROWS.check(isPresent, 4, "Storage.getUsageAndQuota$$RET");
2096        }
2097
2098        /** Creates an instance of this class from a {@link JsonObject}.*/
2099        public static getUsageAndQuota$$RET fromJSON(JsonObject jo)
2100        { return singleton.fromJSON(jo); }
2101
2102        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2103        public static NestedDescriptor<getUsageAndQuota$$RET> descriptor()
2104        { return singleton.descriptor(); }
2105    }
2106
2107
2108    // ********************************************************************************************
2109    // ********************************************************************************************
2110    // Event Types
2111    // ********************************************************************************************
2112    // ********************************************************************************************
2113
2114
2115    /**
2116     * <CODE>[No Description Provided by Google]</CODE>
2117     * 
2118     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
2119     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2120     */
2121    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2122    public static class attributionReportingReportSent
2123        extends BrowserEvent<attributionReportingReportSent>
2124        implements java.io.Serializable
2125    {
2126        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2127        protected static final long serialVersionUID = 1;
2128
2129        private static final NestedHelper<Storage.attributionReportingReportSent> singleton =
2130            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2131                Storage$$attributionReportingReportSent$$.singleton;
2132
2133        /** <CODE>[No Description Provided by Google]</CODE> */
2134        public final String url;
2135
2136        /** <CODE>[No Description Provided by Google]</CODE> */
2137        public final JsonValue body;
2138
2139        /**
2140         * <CODE>[No Description Provided by Google]</CODE>
2141         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=AttributionReportingReportResult DATA-F=result DATA-FILE-ID=CDP.EL2>
2142         * @see BaseType#enumStrList(String)
2143         */
2144        public final String result;
2145
2146        /**
2147         * If result is <CODE>sent</CODE>, populated with net/HTTP status.
2148         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2149         */
2150        public final Integer netError;
2151
2152        /**
2153         * <CODE>[No Description Provided by Google]</CODE>
2154         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2155         */
2156        public final String netErrorName;
2157
2158        /**
2159         * <CODE>[No Description Provided by Google]</CODE>
2160         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2161         */
2162        public final Integer httpStatusCode;
2163
2164        /** Constructor.  Please review this class' fields for documentation. */
2165        public attributionReportingReportSent(
2166                ReadOnlyList<Boolean> isPresent, String url, JsonValue body, String result,
2167                Integer netError, String netErrorName, Integer httpStatusCode
2168            )
2169        {
2170            super(singleton, Domains.Storage, "attributionReportingReportSent", 6);
2171
2172            this.url            = url;
2173            this.body           = body;
2174            this.result         = result;
2175            this.netError       = netError;
2176            this.netErrorName   = netErrorName;
2177            this.httpStatusCode = httpStatusCode;
2178
2179            this.isPresent = (isPresent == null)
2180                ? singleton.generateIsPresentList(this)
2181                : THROWS.check(isPresent, 6, "Storage.attributionReportingReportSent");
2182        }
2183
2184        /** Creates an instance of this class from a {@link JsonObject}.*/
2185        public static attributionReportingReportSent fromJSON(JsonObject jo)
2186        { return singleton.fromJSON(jo); }
2187
2188        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2189        public static NestedDescriptor<attributionReportingReportSent> descriptor()
2190        { return singleton.descriptor(); }
2191    }
2192
2193    /**
2194     * <CODE>[No Description Provided by Google]</CODE>
2195     * 
2196     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
2197     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2198     */
2199    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2200    public static class attributionReportingSourceRegistered
2201        extends BrowserEvent<attributionReportingSourceRegistered>
2202        implements java.io.Serializable
2203    {
2204        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2205        protected static final long serialVersionUID = 1;
2206
2207        private static final NestedHelper<Storage.attributionReportingSourceRegistered> singleton =
2208            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2209                Storage$$attributionReportingSourceRegistered$$.singleton;
2210
2211        /** <CODE>[No Description Provided by Google]</CODE> */
2212        public final Storage.AttributionReportingSourceRegistration registration;
2213
2214        /**
2215         * <CODE>[No Description Provided by Google]</CODE>
2216         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=AttributionReportingSourceRegistrationResult DATA-F=result DATA-FILE-ID=CDP.EL2>
2217         * @see BaseType#enumStrList(String)
2218         */
2219        public final String result;
2220
2221        /** Constructor.  Please review this class' fields for documentation. */
2222        public attributionReportingSourceRegistered(
2223                ReadOnlyList<Boolean> isPresent,
2224                AttributionReportingSourceRegistration registration, String result
2225            )
2226        {
2227            super(singleton, Domains.Storage, "attributionReportingSourceRegistered", 2);
2228
2229            this.registration   = registration;
2230            this.result         = result;
2231
2232            this.isPresent = (isPresent == null)
2233                ? singleton.generateIsPresentList(this)
2234                : THROWS.check(isPresent, 2, "Storage.attributionReportingSourceRegistered");
2235        }
2236
2237        /** Creates an instance of this class from a {@link JsonObject}.*/
2238        public static attributionReportingSourceRegistered fromJSON(JsonObject jo)
2239        { return singleton.fromJSON(jo); }
2240
2241        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2242        public static NestedDescriptor<attributionReportingSourceRegistered> descriptor()
2243        { return singleton.descriptor(); }
2244    }
2245
2246    /**
2247     * <CODE>[No Description Provided by Google]</CODE>
2248     * 
2249     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
2250     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2251     */
2252    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2253    public static class attributionReportingTriggerRegistered
2254        extends BrowserEvent<attributionReportingTriggerRegistered>
2255        implements java.io.Serializable
2256    {
2257        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2258        protected static final long serialVersionUID = 1;
2259
2260        private static final NestedHelper<Storage.attributionReportingTriggerRegistered> singleton =
2261            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2262                Storage$$attributionReportingTriggerRegistered$$.singleton;
2263
2264        /** <CODE>[No Description Provided by Google]</CODE> */
2265        public final Storage.AttributionReportingTriggerRegistration registration;
2266
2267        /**
2268         * <CODE>[No Description Provided by Google]</CODE>
2269         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=AttributionReportingEventLevelResult DATA-F=eventLevel DATA-FILE-ID=CDP.EL2>
2270         * @see BaseType#enumStrList(String)
2271         */
2272        public final String eventLevel;
2273
2274        /**
2275         * <CODE>[No Description Provided by Google]</CODE>
2276         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=AttributionReportingAggregatableResult DATA-F=aggregatable DATA-FILE-ID=CDP.EL2>
2277         * @see BaseType#enumStrList(String)
2278         */
2279        public final String aggregatable;
2280
2281        /** Constructor.  Please review this class' fields for documentation. */
2282        public attributionReportingTriggerRegistered(
2283                ReadOnlyList<Boolean> isPresent,
2284                AttributionReportingTriggerRegistration registration, String eventLevel,
2285                String aggregatable
2286            )
2287        {
2288            super(singleton, Domains.Storage, "attributionReportingTriggerRegistered", 3);
2289
2290            this.registration   = registration;
2291            this.eventLevel     = eventLevel;
2292            this.aggregatable   = aggregatable;
2293
2294            this.isPresent = (isPresent == null)
2295                ? singleton.generateIsPresentList(this)
2296                : THROWS.check(isPresent, 3, "Storage.attributionReportingTriggerRegistered");
2297        }
2298
2299        /** Creates an instance of this class from a {@link JsonObject}.*/
2300        public static attributionReportingTriggerRegistered fromJSON(JsonObject jo)
2301        { return singleton.fromJSON(jo); }
2302
2303        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2304        public static NestedDescriptor<attributionReportingTriggerRegistered> descriptor()
2305        { return singleton.descriptor(); }
2306    }
2307
2308    /**
2309     * <CODE>[No Description Provided by Google]</CODE>
2310     * 
2311     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
2312     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2313     */
2314    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2315    public static class attributionReportingVerboseDebugReportSent
2316        extends BrowserEvent<attributionReportingVerboseDebugReportSent>
2317        implements java.io.Serializable
2318    {
2319        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2320        protected static final long serialVersionUID = 1;
2321
2322        private static final NestedHelper<Storage.attributionReportingVerboseDebugReportSent> singleton =
2323            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2324                Storage$$attributionReportingVerboseDebugReportSent$$.singleton;
2325
2326        /** <CODE>[No Description Provided by Google]</CODE> */
2327        public final String url;
2328
2329        /**
2330         * <CODE>[No Description Provided by Google]</CODE>
2331         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2332         */
2333        public final JsonValue body;
2334
2335        /**
2336         * <CODE>[No Description Provided by Google]</CODE>
2337         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2338         */
2339        public final Integer netError;
2340
2341        /**
2342         * <CODE>[No Description Provided by Google]</CODE>
2343         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2344         */
2345        public final String netErrorName;
2346
2347        /**
2348         * <CODE>[No Description Provided by Google]</CODE>
2349         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2350         */
2351        public final Integer httpStatusCode;
2352
2353        /** Constructor.  Please review this class' fields for documentation. */
2354        public attributionReportingVerboseDebugReportSent(
2355                ReadOnlyList<Boolean> isPresent, String url, JsonValue body, Integer netError,
2356                String netErrorName, Integer httpStatusCode
2357            )
2358        {
2359            super(singleton, Domains.Storage, "attributionReportingVerboseDebugReportSent", 5);
2360
2361            this.url            = url;
2362            this.body           = body;
2363            this.netError       = netError;
2364            this.netErrorName   = netErrorName;
2365            this.httpStatusCode = httpStatusCode;
2366
2367            this.isPresent = (isPresent == null)
2368                ? singleton.generateIsPresentList(this)
2369                : THROWS.check(isPresent, 5, "Storage.attributionReportingVerboseDebugReportSent");
2370        }
2371
2372        /** Creates an instance of this class from a {@link JsonObject}.*/
2373        public static attributionReportingVerboseDebugReportSent fromJSON(JsonObject jo)
2374        { return singleton.fromJSON(jo); }
2375
2376        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2377        public static NestedDescriptor<attributionReportingVerboseDebugReportSent> descriptor()
2378        { return singleton.descriptor(); }
2379    }
2380
2381    /**
2382     * A cache's contents have been modified.
2383     * 
2384     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2385     */
2386    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2387    public static class cacheStorageContentUpdated
2388        extends BrowserEvent<cacheStorageContentUpdated>
2389        implements java.io.Serializable
2390    {
2391        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2392        protected static final long serialVersionUID = 1;
2393
2394        private static final NestedHelper<Storage.cacheStorageContentUpdated> singleton =
2395            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2396                Storage$$cacheStorageContentUpdated$$.singleton;
2397
2398        /** Origin to update. */
2399        public final String origin;
2400
2401        /** Storage key to update. */
2402        public final String storageKey;
2403
2404        /** Storage bucket to update. */
2405        public final String bucketId;
2406
2407        /** Name of cache in origin. */
2408        public final String cacheName;
2409
2410        /** Constructor.  Please review this class' fields for documentation. */
2411        public cacheStorageContentUpdated(
2412                ReadOnlyList<Boolean> isPresent, String origin, String storageKey, String bucketId,
2413                String cacheName
2414            )
2415        {
2416            super(singleton, Domains.Storage, "cacheStorageContentUpdated", 4);
2417
2418            this.origin     = origin;
2419            this.storageKey = storageKey;
2420            this.bucketId   = bucketId;
2421            this.cacheName  = cacheName;
2422
2423            this.isPresent = (isPresent == null)
2424                ? singleton.generateIsPresentList(this)
2425                : THROWS.check(isPresent, 4, "Storage.cacheStorageContentUpdated");
2426        }
2427
2428        /** Creates an instance of this class from a {@link JsonObject}.*/
2429        public static cacheStorageContentUpdated fromJSON(JsonObject jo)
2430        { return singleton.fromJSON(jo); }
2431
2432        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2433        public static NestedDescriptor<cacheStorageContentUpdated> descriptor()
2434        { return singleton.descriptor(); }
2435    }
2436
2437    /**
2438     * A cache has been added/deleted.
2439     * 
2440     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2441     */
2442    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2443    public static class cacheStorageListUpdated
2444        extends BrowserEvent<cacheStorageListUpdated>
2445        implements java.io.Serializable
2446    {
2447        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2448        protected static final long serialVersionUID = 1;
2449
2450        private static final NestedHelper<Storage.cacheStorageListUpdated> singleton =
2451            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2452                Storage$$cacheStorageListUpdated$$.singleton;
2453
2454        /** Origin to update. */
2455        public final String origin;
2456
2457        /** Storage key to update. */
2458        public final String storageKey;
2459
2460        /** Storage bucket to update. */
2461        public final String bucketId;
2462
2463        /** Constructor.  Please review this class' fields for documentation. */
2464        public cacheStorageListUpdated
2465            (ReadOnlyList<Boolean> isPresent, String origin, String storageKey, String bucketId)
2466        {
2467            super(singleton, Domains.Storage, "cacheStorageListUpdated", 3);
2468
2469            this.origin     = origin;
2470            this.storageKey = storageKey;
2471            this.bucketId   = bucketId;
2472
2473            this.isPresent = (isPresent == null)
2474                ? singleton.generateIsPresentList(this)
2475                : THROWS.check(isPresent, 3, "Storage.cacheStorageListUpdated");
2476        }
2477
2478        /** Creates an instance of this class from a {@link JsonObject}.*/
2479        public static cacheStorageListUpdated fromJSON(JsonObject jo)
2480        { return singleton.fromJSON(jo); }
2481
2482        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2483        public static NestedDescriptor<cacheStorageListUpdated> descriptor()
2484        { return singleton.descriptor(); }
2485    }
2486
2487    /**
2488     * The origin's IndexedDB object store has been modified.
2489     * 
2490     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2491     */
2492    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2493    public static class indexedDBContentUpdated
2494        extends BrowserEvent<indexedDBContentUpdated>
2495        implements java.io.Serializable
2496    {
2497        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2498        protected static final long serialVersionUID = 1;
2499
2500        private static final NestedHelper<Storage.indexedDBContentUpdated> singleton =
2501            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2502                Storage$$indexedDBContentUpdated$$.singleton;
2503
2504        /** Origin to update. */
2505        public final String origin;
2506
2507        /** Storage key to update. */
2508        public final String storageKey;
2509
2510        /** Storage bucket to update. */
2511        public final String bucketId;
2512
2513        /** Database to update. */
2514        public final String databaseName;
2515
2516        /** ObjectStore to update. */
2517        public final String objectStoreName;
2518
2519        /** Constructor.  Please review this class' fields for documentation. */
2520        public indexedDBContentUpdated(
2521                ReadOnlyList<Boolean> isPresent, String origin, String storageKey, String bucketId,
2522                String databaseName, String objectStoreName
2523            )
2524        {
2525            super(singleton, Domains.Storage, "indexedDBContentUpdated", 5);
2526
2527            this.origin             = origin;
2528            this.storageKey         = storageKey;
2529            this.bucketId           = bucketId;
2530            this.databaseName       = databaseName;
2531            this.objectStoreName    = objectStoreName;
2532
2533            this.isPresent = (isPresent == null)
2534                ? singleton.generateIsPresentList(this)
2535                : THROWS.check(isPresent, 5, "Storage.indexedDBContentUpdated");
2536        }
2537
2538        /** Creates an instance of this class from a {@link JsonObject}.*/
2539        public static indexedDBContentUpdated fromJSON(JsonObject jo)
2540        { return singleton.fromJSON(jo); }
2541
2542        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2543        public static NestedDescriptor<indexedDBContentUpdated> descriptor()
2544        { return singleton.descriptor(); }
2545    }
2546
2547    /**
2548     * The origin's IndexedDB database list has been modified.
2549     * 
2550     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2551     */
2552    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2553    public static class indexedDBListUpdated
2554        extends BrowserEvent<indexedDBListUpdated>
2555        implements java.io.Serializable
2556    {
2557        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2558        protected static final long serialVersionUID = 1;
2559
2560        private static final NestedHelper<Storage.indexedDBListUpdated> singleton =
2561            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2562                Storage$$indexedDBListUpdated$$.singleton;
2563
2564        /** Origin to update. */
2565        public final String origin;
2566
2567        /** Storage key to update. */
2568        public final String storageKey;
2569
2570        /** Storage bucket to update. */
2571        public final String bucketId;
2572
2573        /** Constructor.  Please review this class' fields for documentation. */
2574        public indexedDBListUpdated
2575            (ReadOnlyList<Boolean> isPresent, String origin, String storageKey, String bucketId)
2576        {
2577            super(singleton, Domains.Storage, "indexedDBListUpdated", 3);
2578
2579            this.origin     = origin;
2580            this.storageKey = storageKey;
2581            this.bucketId   = bucketId;
2582
2583            this.isPresent = (isPresent == null)
2584                ? singleton.generateIsPresentList(this)
2585                : THROWS.check(isPresent, 3, "Storage.indexedDBListUpdated");
2586        }
2587
2588        /** Creates an instance of this class from a {@link JsonObject}.*/
2589        public static indexedDBListUpdated fromJSON(JsonObject jo)
2590        { return singleton.fromJSON(jo); }
2591
2592        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2593        public static NestedDescriptor<indexedDBListUpdated> descriptor()
2594        { return singleton.descriptor(); }
2595    }
2596
2597    /**
2598     * One of the interest groups was accessed. Note that these events are global
2599     * to all targets sharing an interest group store.
2600     * 
2601     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2602     */
2603    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2604    public static class interestGroupAccessed
2605        extends BrowserEvent<interestGroupAccessed>
2606        implements java.io.Serializable
2607    {
2608        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2609        protected static final long serialVersionUID = 1;
2610
2611        private static final NestedHelper<Storage.interestGroupAccessed> singleton =
2612            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2613                Storage$$interestGroupAccessed$$.singleton;
2614
2615        /** <CODE>[No Description Provided by Google]</CODE> */
2616        public final Number accessTime;
2617
2618        /**
2619         * <CODE>[No Description Provided by Google]</CODE>
2620         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=InterestGroupAccessType DATA-F=type DATA-FILE-ID=CDP.EL2>
2621         * @see BaseType#enumStrList(String)
2622         */
2623        public final String type;
2624
2625        /** <CODE>[No Description Provided by Google]</CODE> */
2626        public final String ownerOrigin;
2627
2628        /** <CODE>[No Description Provided by Google]</CODE> */
2629        public final String name;
2630
2631        /**
2632         * For topLevelBid/topLevelAdditionalBid, and when appropriate,
2633         * win and additionalBidWin
2634         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2635         */
2636        public final String componentSellerOrigin;
2637
2638        /**
2639         * For bid or somethingBid event, if done locally and not on a server.
2640         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2641         */
2642        public final Number bid;
2643
2644        /**
2645         * <CODE>[No Description Provided by Google]</CODE>
2646         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2647         */
2648        public final String bidCurrency;
2649
2650        /**
2651         * For non-global events --- links to interestGroupAuctionEvent
2652         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2653         */
2654        public final String uniqueAuctionId;
2655
2656        /** Constructor.  Please review this class' fields for documentation. */
2657        public interestGroupAccessed(
2658                ReadOnlyList<Boolean> isPresent, Number accessTime, String type,
2659                String ownerOrigin, String name, String componentSellerOrigin, Number bid,
2660                String bidCurrency, String uniqueAuctionId
2661            )
2662        {
2663            super(singleton, Domains.Storage, "interestGroupAccessed", 8);
2664
2665            this.accessTime             = accessTime;
2666            this.type                   = type;
2667            this.ownerOrigin            = ownerOrigin;
2668            this.name                   = name;
2669            this.componentSellerOrigin  = componentSellerOrigin;
2670            this.bid                    = bid;
2671            this.bidCurrency            = bidCurrency;
2672            this.uniqueAuctionId        = uniqueAuctionId;
2673
2674            this.isPresent = (isPresent == null)
2675                ? singleton.generateIsPresentList(this)
2676                : THROWS.check(isPresent, 8, "Storage.interestGroupAccessed");
2677        }
2678
2679        /** Creates an instance of this class from a {@link JsonObject}.*/
2680        public static interestGroupAccessed fromJSON(JsonObject jo)
2681        { return singleton.fromJSON(jo); }
2682
2683        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2684        public static NestedDescriptor<interestGroupAccessed> descriptor()
2685        { return singleton.descriptor(); }
2686    }
2687
2688    /**
2689     * An auction involving interest groups is taking place. These events are
2690     * target-specific.
2691     * 
2692     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2693     */
2694    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2695    public static class interestGroupAuctionEventOccurred
2696        extends BrowserEvent<interestGroupAuctionEventOccurred>
2697        implements java.io.Serializable
2698    {
2699        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2700        protected static final long serialVersionUID = 1;
2701
2702        private static final NestedHelper<Storage.interestGroupAuctionEventOccurred> singleton =
2703            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2704                Storage$$interestGroupAuctionEventOccurred$$.singleton;
2705
2706        /** <CODE>[No Description Provided by Google]</CODE> */
2707        public final Number eventTime;
2708
2709        /**
2710         * <CODE>[No Description Provided by Google]</CODE>
2711         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=InterestGroupAuctionEventType DATA-F=type DATA-FILE-ID=CDP.EL2>
2712         * @see BaseType#enumStrList(String)
2713         */
2714        public final String type;
2715
2716        /** <CODE>[No Description Provided by Google]</CODE> */
2717        public final String uniqueAuctionId;
2718
2719        /**
2720         * Set for child auctions.
2721         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2722         */
2723        public final String parentAuctionId;
2724
2725        /**
2726         * Set for started and configResolved
2727         * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
2728         */
2729        public final JsonValue auctionConfig;
2730
2731        /** Constructor.  Please review this class' fields for documentation. */
2732        public interestGroupAuctionEventOccurred(
2733                ReadOnlyList<Boolean> isPresent, Number eventTime, String type,
2734                String uniqueAuctionId, String parentAuctionId, JsonValue auctionConfig
2735            )
2736        {
2737            super(singleton, Domains.Storage, "interestGroupAuctionEventOccurred", 5);
2738
2739            this.eventTime          = eventTime;
2740            this.type               = type;
2741            this.uniqueAuctionId    = uniqueAuctionId;
2742            this.parentAuctionId    = parentAuctionId;
2743            this.auctionConfig      = auctionConfig;
2744
2745            this.isPresent = (isPresent == null)
2746                ? singleton.generateIsPresentList(this)
2747                : THROWS.check(isPresent, 5, "Storage.interestGroupAuctionEventOccurred");
2748        }
2749
2750        /** Creates an instance of this class from a {@link JsonObject}.*/
2751        public static interestGroupAuctionEventOccurred fromJSON(JsonObject jo)
2752        { return singleton.fromJSON(jo); }
2753
2754        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2755        public static NestedDescriptor<interestGroupAuctionEventOccurred> descriptor()
2756        { return singleton.descriptor(); }
2757    }
2758
2759    /**
2760     * Specifies which auctions a particular network fetch may be related to, and
2761     * in what role. Note that it is not ordered with respect to
2762     * Network.requestWillBeSent (but will happen before loadingFinished
2763     * loadingFailed).
2764     * 
2765     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2766     */
2767    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2768    public static class interestGroupAuctionNetworkRequestCreated
2769        extends BrowserEvent<interestGroupAuctionNetworkRequestCreated>
2770        implements java.io.Serializable
2771    {
2772        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2773        protected static final long serialVersionUID = 1;
2774
2775        private static final NestedHelper<Storage.interestGroupAuctionNetworkRequestCreated> singleton =
2776            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2777                Storage$$interestGroupAuctionNetworkRequestCreated$$.singleton;
2778
2779        /**
2780         * <CODE>[No Description Provided by Google]</CODE>
2781         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=InterestGroupAuctionFetchType DATA-F=type DATA-FILE-ID=CDP.EL2>
2782         * @see BaseType#enumStrList(String)
2783         */
2784        public final String type;
2785
2786        /** <CODE>[No Description Provided by Google]</CODE> */
2787        public final String requestId;
2788
2789        /**
2790         * This is the set of the auctions using the worklet that issued this
2791         * request.  In the case of trusted signals, it's possible that only some of
2792         * them actually care about the keys being queried.
2793         */
2794        public final String[] auctions;
2795
2796        /** Constructor.  Please review this class' fields for documentation. */
2797        public interestGroupAuctionNetworkRequestCreated
2798            (ReadOnlyList<Boolean> isPresent, String type, String requestId, String[] auctions)
2799        {
2800            super(singleton, Domains.Storage, "interestGroupAuctionNetworkRequestCreated", 3);
2801
2802            this.type       = type;
2803            this.requestId  = requestId;
2804            this.auctions   = auctions;
2805
2806            this.isPresent = (isPresent == null)
2807                ? singleton.generateIsPresentList(this)
2808                : THROWS.check(isPresent, 3, "Storage.interestGroupAuctionNetworkRequestCreated");
2809        }
2810
2811        /** Creates an instance of this class from a {@link JsonObject}.*/
2812        public static interestGroupAuctionNetworkRequestCreated fromJSON(JsonObject jo)
2813        { return singleton.fromJSON(jo); }
2814
2815        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2816        public static NestedDescriptor<interestGroupAuctionNetworkRequestCreated> descriptor()
2817        { return singleton.descriptor(); }
2818    }
2819
2820    /**
2821     * Shared storage was accessed by the associated page.
2822     * The following parameters are included in all events.
2823     * 
2824     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2825     */
2826    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2827    public static class sharedStorageAccessed
2828        extends BrowserEvent<sharedStorageAccessed>
2829        implements java.io.Serializable
2830    {
2831        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2832        protected static final long serialVersionUID = 1;
2833
2834        private static final NestedHelper<Storage.sharedStorageAccessed> singleton =
2835            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2836                Storage$$sharedStorageAccessed$$.singleton;
2837
2838        /** Time of the access. */
2839        public final Number accessTime;
2840
2841        /**
2842         * Enum value indicating the access scope.
2843         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=SharedStorageAccessScope DATA-F=scope DATA-FILE-ID=CDP.EL2>
2844         * @see BaseType#enumStrList(String)
2845         */
2846        public final String scope;
2847
2848        /**
2849         * Enum value indicating the Shared Storage API method invoked.
2850         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=SharedStorageAccessMethod DATA-F=method DATA-FILE-ID=CDP.EL2>
2851         * @see BaseType#enumStrList(String)
2852         */
2853        public final String method;
2854
2855        /** DevTools Frame Token for the primary frame tree's root. */
2856        public final String mainFrameId;
2857
2858        /** Serialization of the origin owning the Shared Storage data. */
2859        public final String ownerOrigin;
2860
2861        /** Serialization of the site owning the Shared Storage data. */
2862        public final String ownerSite;
2863
2864        /**
2865         * The sub-parameters wrapped by <CODE>params</CODE> are all optional and their
2866         * presence/absence depends on <CODE>type</CODE>.
2867         */
2868        public final Storage.SharedStorageAccessParams params;
2869
2870        /** Constructor.  Please review this class' fields for documentation. */
2871        public sharedStorageAccessed(
2872                ReadOnlyList<Boolean> isPresent, Number accessTime, String scope, String method,
2873                String mainFrameId, String ownerOrigin, String ownerSite,
2874                SharedStorageAccessParams params
2875            )
2876        {
2877            super(singleton, Domains.Storage, "sharedStorageAccessed", 7);
2878
2879            this.accessTime     = accessTime;
2880            this.scope          = scope;
2881            this.method         = method;
2882            this.mainFrameId    = mainFrameId;
2883            this.ownerOrigin    = ownerOrigin;
2884            this.ownerSite      = ownerSite;
2885            this.params         = params;
2886
2887            this.isPresent = (isPresent == null)
2888                ? singleton.generateIsPresentList(this)
2889                : THROWS.check(isPresent, 7, "Storage.sharedStorageAccessed");
2890        }
2891
2892        /** Creates an instance of this class from a {@link JsonObject}.*/
2893        public static sharedStorageAccessed fromJSON(JsonObject jo)
2894        { return singleton.fromJSON(jo); }
2895
2896        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2897        public static NestedDescriptor<sharedStorageAccessed> descriptor()
2898        { return singleton.descriptor(); }
2899    }
2900
2901    /**
2902     * A shared storage run or selectURL operation finished its execution.
2903     * The following parameters are included in all events.
2904     * 
2905     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2906     */
2907    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2908    public static class sharedStorageWorkletOperationExecutionFinished
2909        extends BrowserEvent<sharedStorageWorkletOperationExecutionFinished>
2910        implements java.io.Serializable
2911    {
2912        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2913        protected static final long serialVersionUID = 1;
2914
2915        private static final NestedHelper<Storage.sharedStorageWorkletOperationExecutionFinished> singleton =
2916            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2917                Storage$$sharedStorageWorkletOperationExecutionFinished$$.singleton;
2918
2919        /** Time that the operation finished. */
2920        public final Number finishedTime;
2921
2922        /**
2923         * Time, in microseconds, from start of shared storage JS API call until
2924         * end of operation execution in the worklet.
2925         */
2926        public final int executionTime;
2927
2928        /**
2929         * Enum value indicating the Shared Storage API method invoked.
2930         * <EMBED CLASS='external-html' DATA-D=Storage DATA-C=SharedStorageAccessMethod DATA-F=method DATA-FILE-ID=CDP.EL2>
2931         * @see BaseType#enumStrList(String)
2932         */
2933        public final String method;
2934
2935        /** ID of the operation call. */
2936        public final String operationId;
2937
2938        /**
2939         * Hex representation of the DevTools token used as the TargetID for the
2940         * associated shared storage worklet.
2941         */
2942        public final String workletTargetId;
2943
2944        /** DevTools Frame Token for the primary frame tree's root. */
2945        public final String mainFrameId;
2946
2947        /** Serialization of the origin owning the Shared Storage data. */
2948        public final String ownerOrigin;
2949
2950        /** Constructor.  Please review this class' fields for documentation. */
2951        public sharedStorageWorkletOperationExecutionFinished(
2952                ReadOnlyList<Boolean> isPresent, Number finishedTime, int executionTime,
2953                String method, String operationId, String workletTargetId, String mainFrameId,
2954                String ownerOrigin
2955            )
2956        {
2957            super(singleton, Domains.Storage, "sharedStorageWorkletOperationExecutionFinished", 7);
2958
2959            this.finishedTime       = finishedTime;
2960            this.executionTime      = executionTime;
2961            this.method             = method;
2962            this.operationId        = operationId;
2963            this.workletTargetId    = workletTargetId;
2964            this.mainFrameId        = mainFrameId;
2965            this.ownerOrigin        = ownerOrigin;
2966
2967            this.isPresent = (isPresent == null)
2968                ? singleton.generateIsPresentList(this)
2969                : THROWS.check(isPresent, 7, "Storage.sharedStorageWorkletOperationExecutionFinished");
2970        }
2971
2972        /** Creates an instance of this class from a {@link JsonObject}.*/
2973        public static sharedStorageWorkletOperationExecutionFinished fromJSON(JsonObject jo)
2974        { return singleton.fromJSON(jo); }
2975
2976        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
2977        public static NestedDescriptor<sharedStorageWorkletOperationExecutionFinished> descriptor()
2978        { return singleton.descriptor(); }
2979    }
2980
2981    /**
2982     * <CODE>[No Description Provided by Google]</CODE>
2983     * 
2984     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
2985     */
2986    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
2987    public static class storageBucketCreatedOrUpdated
2988        extends BrowserEvent<storageBucketCreatedOrUpdated>
2989        implements java.io.Serializable
2990    {
2991        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
2992        protected static final long serialVersionUID = 1;
2993
2994        private static final NestedHelper<Storage.storageBucketCreatedOrUpdated> singleton =
2995            Torello.Browser.BrowserAPI.NestedHelpers.Events.
2996                Storage$$storageBucketCreatedOrUpdated$$.singleton;
2997
2998        /** <CODE>[No Description Provided by Google]</CODE> */
2999        public final Storage.StorageBucketInfo bucketInfo;
3000
3001        /** Constructor.  Please review this class' fields for documentation. */
3002        public storageBucketCreatedOrUpdated
3003            (ReadOnlyList<Boolean> isPresent, StorageBucketInfo bucketInfo)
3004        {
3005            super(singleton, Domains.Storage, "storageBucketCreatedOrUpdated", 1);
3006
3007            this.bucketInfo = bucketInfo;
3008
3009            this.isPresent = (isPresent == null)
3010                ? singleton.generateIsPresentList(this)
3011                : THROWS.check(isPresent, 1, "Storage.storageBucketCreatedOrUpdated");
3012        }
3013
3014        /** Creates an instance of this class from a {@link JsonObject}.*/
3015        public static storageBucketCreatedOrUpdated fromJSON(JsonObject jo)
3016        { return singleton.fromJSON(jo); }
3017
3018        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
3019        public static NestedDescriptor<storageBucketCreatedOrUpdated> descriptor()
3020        { return singleton.descriptor(); }
3021    }
3022
3023    /**
3024     * <CODE>[No Description Provided by Google]</CODE>
3025     * 
3026     * <EMBED CLASS=globalDefs DATA-DOMAIN=Storage DATA-API=BrowserAPI>
3027     */
3028    @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI")
3029    public static class storageBucketDeleted
3030        extends BrowserEvent<storageBucketDeleted>
3031        implements java.io.Serializable
3032    {
3033        /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
3034        protected static final long serialVersionUID = 1;
3035
3036        private static final NestedHelper<Storage.storageBucketDeleted> singleton =
3037            Torello.Browser.BrowserAPI.NestedHelpers.Events.
3038                Storage$$storageBucketDeleted$$.singleton;
3039
3040        /** <CODE>[No Description Provided by Google]</CODE> */
3041        public final String bucketId;
3042
3043        /** Constructor.  Please review this class' fields for documentation. */
3044        public storageBucketDeleted(ReadOnlyList<Boolean> isPresent, String bucketId)
3045        {
3046            super(singleton, Domains.Storage, "storageBucketDeleted", 1);
3047
3048            this.bucketId = bucketId;
3049
3050            this.isPresent = (isPresent == null)
3051                ? singleton.generateIsPresentList(this)
3052                : THROWS.check(isPresent, 1, "Storage.storageBucketDeleted");
3053        }
3054
3055        /** Creates an instance of this class from a {@link JsonObject}.*/
3056        public static storageBucketDeleted fromJSON(JsonObject jo)
3057        { return singleton.fromJSON(jo); }
3058
3059        /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/
3060        public static NestedDescriptor<storageBucketDeleted> descriptor()
3061        { return singleton.descriptor(); }
3062    }
3063
3064
3065
3066
3067    // ********************************************************************************************
3068    // ********************************************************************************************
3069    // Commands
3070    // ********************************************************************************************
3071    // ********************************************************************************************
3072
3073
3074    /**
3075     * Clears cookies.
3076     * 
3077     * @param browserContextId Browser context to use when called on the browser endpoint.
3078     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
3079     * 
3080     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3081     *
3082     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3083     * browser receives the invocation-request.
3084     *
3085     * <BR /><BR /><DIV CLASS=JDHint>
3086     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3087     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3088     * the Browser Function has run to completion.
3089     * </DIV>
3090     */
3091    public static Script<Void> clearCookies(String browserContextId)
3092    {
3093        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3094        final String requestJSON = WriteJSON.get
3095            (CDPTypes.STRING, "browserContextId", true, "Storage.clearCookies", browserContextId);
3096
3097        return Script.NO_RET(Domains.Storage, "clearCookies", requestJSON);
3098    }
3099
3100    /**
3101     * Clears storage for origin.
3102     * 
3103     * @param origin Security origin.
3104     * 
3105     * @param storageTypes Comma separated list of StorageType to clear.
3106     * 
3107     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3108     *
3109     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3110     * browser receives the invocation-request.
3111     *
3112     * <BR /><BR /><DIV CLASS=JDHint>
3113     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3114     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3115     * the Browser Function has run to completion.
3116     * </DIV>
3117     */
3118    public static Script<Void> clearDataForOrigin(String origin, String storageTypes)
3119    {
3120        // Convert all Method Parameters into a JSON Request-Object (as a String)
3121        final String requestJSON = WriteJSON.get(
3122            Storage$$Commands.clearDataForOrigin$$, "Storage.clearDataForOrigin",
3123            origin, storageTypes
3124        );
3125
3126        return Script.NO_RET(Domains.Storage, "clearDataForOrigin", requestJSON);
3127    }
3128
3129    /**
3130     * Clears storage for storage key.
3131     * 
3132     * @param storageKey Storage key.
3133     * 
3134     * @param storageTypes Comma separated list of StorageType to clear.
3135     * 
3136     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3137     *
3138     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3139     * browser receives the invocation-request.
3140     *
3141     * <BR /><BR /><DIV CLASS=JDHint>
3142     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3143     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3144     * the Browser Function has run to completion.
3145     * </DIV>
3146     */
3147    public static Script<Void> clearDataForStorageKey(String storageKey, String storageTypes)
3148    {
3149        // Convert all Method Parameters into a JSON Request-Object (as a String)
3150        final String requestJSON = WriteJSON.get(
3151            Storage$$Commands.clearDataForStorageKey$$, "Storage.clearDataForStorageKey",
3152            storageKey, storageTypes
3153        );
3154
3155        return Script.NO_RET(Domains.Storage, "clearDataForStorageKey", requestJSON);
3156    }
3157
3158    /**
3159     * Clears all entries for a given origin's shared storage.
3160     * 
3161     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3162     * 
3163     * @param ownerOrigin -
3164     * 
3165     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3166     *
3167     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3168     * browser receives the invocation-request.
3169     *
3170     * <BR /><BR /><DIV CLASS=JDHint>
3171     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3172     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3173     * the Browser Function has run to completion.
3174     * </DIV>
3175     */
3176    public static Script<Void> clearSharedStorageEntries(String ownerOrigin)
3177    {
3178        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3179        final String requestJSON = WriteJSON.get(
3180            CDPTypes.STRING, "ownerOrigin", false, "Storage.clearSharedStorageEntries",
3181            ownerOrigin
3182        );
3183
3184        return Script.NO_RET(Domains.Storage, "clearSharedStorageEntries", requestJSON);
3185    }
3186
3187    /**
3188     * Removes all Trust Tokens issued by the provided issuerOrigin.
3189     * Leaves other stored data, including the issuer's Redemption Records, intact.
3190     * 
3191     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3192     * 
3193     * @param issuerOrigin -
3194     * 
3195     * @return An instance of <CODE>{@link Script}&lt;Boolean&gt;</CODE>
3196     * 
3197     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3198     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3199     * <CODE>&lt;Boolean&gt;</CODE> will be returned
3200     *
3201     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3202     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3203     * be retrieved.</I>
3204     *
3205     * <BR /><BR /><DIV CLASS=JDHint>
3206     * This Browser Function's {@code Promise} returns:
3207     * <CODE>Boolean (<B>didDeleteTokens</B>)</CODE>
3208     * <BR />
3209     * True if any tokens were deleted, false otherwise.
3210     * </DIV>
3211     */
3212    public static Script<Boolean> clearTrustTokens(String issuerOrigin)
3213    {
3214        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3215        final String requestJSON = WriteJSON.get
3216            (CDPTypes.STRING, "issuerOrigin", false, "Storage.clearTrustTokens", issuerOrigin);
3217
3218        return new Script<>(
3219            Domains.Storage, "clearTrustTokens", requestJSON,
3220            jo -> ReadBoxedJSON.getBoolean(jo, "didDeleteTokens", JFlag.RD_N | JFlag.RD_M, DV.NULL_BOOL),
3221            Boolean.class
3222        );
3223    }
3224
3225    /**
3226     * Deletes entry for <CODE>key</CODE> (if it exists) for a given origin's shared storage.
3227     * 
3228     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3229     * 
3230     * @param ownerOrigin -
3231     * 
3232     * @param key -
3233     * 
3234     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3235     *
3236     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3237     * browser receives the invocation-request.
3238     *
3239     * <BR /><BR /><DIV CLASS=JDHint>
3240     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3241     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3242     * the Browser Function has run to completion.
3243     * </DIV>
3244     */
3245    public static Script<Void> deleteSharedStorageEntry(String ownerOrigin, String key)
3246    {
3247        // Convert all Method Parameters into a JSON Request-Object (as a String)
3248        final String requestJSON = WriteJSON.get(
3249            Storage$$Commands.deleteSharedStorageEntry$$, "Storage.deleteSharedStorageEntry",
3250            ownerOrigin, key
3251        );
3252
3253        return Script.NO_RET(Domains.Storage, "deleteSharedStorageEntry", requestJSON);
3254    }
3255
3256    /**
3257     * Deletes the Storage Bucket with the given storage key and bucket name.
3258     * 
3259     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3260     * 
3261     * @param bucket -
3262     * 
3263     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3264     *
3265     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3266     * browser receives the invocation-request.
3267     *
3268     * <BR /><BR /><DIV CLASS=JDHint>
3269     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3270     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3271     * the Browser Function has run to completion.
3272     * </DIV>
3273     */
3274    public static Script<Void> deleteStorageBucket(StorageBucket bucket)
3275    {
3276        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3277        final String requestJSON = WriteJSON.get
3278            (CDPTypes.CDP_TYPE, "bucket", false, "Storage.deleteStorageBucket", bucket);
3279
3280        return Script.NO_RET(Domains.Storage, "deleteStorageBucket", requestJSON);
3281    }
3282
3283    /**
3284     * Returns the list of URLs from a page and its embedded resources that match
3285     * existing grace period URL pattern rules.
3286     * https://developers.google.com/privacy-sandbox/cookies/temporary-exceptions/grace-period
3287     * 
3288     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3289     * 
3290     * @param firstPartyUrl The URL of the page currently being visited.
3291     * 
3292     * @param thirdPartyUrls The list of embedded resource URLs from the page.
3293     * 
3294     * @return An instance of <CODE>{@link Script}&lt;String[]&gt;</CODE>
3295     * 
3296     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3297     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3298     * <CODE>&lt;String[]&gt;</CODE> will be returned
3299     *
3300     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3301     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3302     * be retrieved.</I>
3303     *
3304     * <BR /><BR /><DIV CLASS=JDHint>
3305     * This Browser Function's {@code Promise} returns:
3306     * <CODE>String[] (<B>matchedUrls</B>)</CODE>
3307     * <BR />
3308     * Array of matching URLs. If there is a primary pattern match for the first-
3309     *     party URL, only the first-party URL is returned in the array.
3310     * </DIV>
3311     */
3312    public static Script<String[]> getAffectedUrlsForThirdPartyCookieMetadata
3313        (String firstPartyUrl, String[] thirdPartyUrls)
3314    {
3315        // Convert all Method Parameters into a JSON Request-Object (as a String)
3316        final String requestJSON = WriteJSON.get(
3317            Storage$$Commands.getAffectedUrlsForThirdPartyCookieMetadata$$,
3318            "Storage.getAffectedUrlsForThirdPartyCookieMetadata",
3319            firstPartyUrl, thirdPartyUrls
3320        );
3321
3322        return new Script<>(
3323            Domains.Storage, "getAffectedUrlsForThirdPartyCookieMetadata", requestJSON,
3324            Storage$$Commands::getAffectedUrlsForThirdPartyCookieMetadata,
3325            String[].class
3326        );
3327    }
3328
3329    /**
3330     * Returns all browser cookies.
3331     * 
3332     * @param browserContextId Browser context to use when called on the browser endpoint.
3333     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
3334     * 
3335     * @return An instance of <CODE>{@link Script}&lt;{@link Network.Cookie}[]&gt;</CODE>
3336     * 
3337     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3338     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3339     * <CODE>&lt;{@link Network.Cookie}[]&gt;</CODE> will be returned
3340     *
3341     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3342     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3343     * be retrieved.</I>
3344     *
3345     * <BR /><BR /><DIV CLASS=JDHint>
3346     * This Browser Function's {@code Promise} returns:
3347     * <CODE>{@link Network.Cookie}[] (<B>cookies</B>)</CODE>
3348     * <BR />
3349     * Array of cookie objects.
3350     * </DIV>
3351     */
3352    public static Script<Network.Cookie[]> getCookies(String browserContextId)
3353    {
3354        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3355        final String requestJSON = WriteJSON.get
3356            (CDPTypes.STRING, "browserContextId", true, "Storage.getCookies", browserContextId);
3357
3358        return new Script<>(
3359            Domains.Storage, "getCookies", requestJSON,
3360            Storage$$Commands::getCookies,
3361            Network.Cookie[].class
3362        );
3363    }
3364
3365    /**
3366     * Gets details for a named interest group.
3367     * 
3368     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3369     * 
3370     * @param ownerOrigin -
3371     * 
3372     * @param name -
3373     * 
3374     * @return An instance of <CODE>{@link Script}&lt;JsonValue&gt;</CODE>
3375     * 
3376     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3377     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3378     * <CODE>&lt;JsonValue&gt;</CODE> will be returned
3379     *
3380     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3381     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3382     * be retrieved.</I>
3383     *
3384     * <BR /><BR /><DIV CLASS=JDHint>
3385     * This Browser Function's {@code Promise} returns:
3386     * <CODE>JsonValue (<B>details</B>)</CODE>
3387     * <BR />
3388     * This largely corresponds to:
3389     *     https://wicg.github.io/turtledove/#dictdef-generatebidinterestgroup
3390     *     but has absolute expirationTime instead of relative lifetimeMs and
3391     *     also adds joiningOrigin.
3392     * </DIV>
3393     */
3394    public static Script<JsonValue> getInterestGroupDetails(String ownerOrigin, String name)
3395    {
3396        // Convert all Method Parameters into a JSON Request-Object (as a String)
3397        final String requestJSON = WriteJSON.get(
3398            Storage$$Commands.getInterestGroupDetails$$, "Storage.getInterestGroupDetails",
3399            ownerOrigin, name
3400        );
3401
3402        return new Script<>(
3403            Domains.Storage, "getInterestGroupDetails", requestJSON,
3404            jo -> jo.get("details"),
3405            JsonValue.class
3406        );
3407    }
3408
3409    /**
3410     * Returns the effective Related Website Sets in use by this profile for the browser
3411     * session. The effective Related Website Sets will not change during a browser session.
3412     * 
3413     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3414     * 
3415     * @return An instance of <CODE>{@link Script}&lt;{@link Storage.RelatedWebsiteSet}[]&gt;</CODE>
3416     * 
3417     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3418     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3419     * <CODE>&lt;{@link Storage.RelatedWebsiteSet}[]&gt;</CODE> will be returned
3420     *
3421     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3422     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3423     * be retrieved.</I>
3424     *
3425     * <BR /><BR /><DIV CLASS=JDHint>
3426     * This Browser Function's {@code Promise} returns:
3427     * <CODE>{@link Storage.RelatedWebsiteSet}[] (<B>sets</B>)</CODE>
3428     * </DIV>
3429     */
3430    public static Script<Storage.RelatedWebsiteSet[]> getRelatedWebsiteSets()
3431    {
3432        // Ultra-Simple Request JSON - Because this method has no parameters
3433        final String requestJSON = "{\"method\":\"Storage.getRelatedWebsiteSets\"}";
3434
3435        return new Script<>(
3436            Domains.Storage, "getRelatedWebsiteSets", requestJSON,
3437            Storage$$Commands::getRelatedWebsiteSets,
3438            Storage.RelatedWebsiteSet[].class
3439        );
3440    }
3441
3442    /**
3443     * Gets the entries in an given origin's shared storage.
3444     * 
3445     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3446     * 
3447     * @param ownerOrigin -
3448     * 
3449     * @return An instance of <CODE>{@link Script}&lt;{@link Storage.SharedStorageEntry}[]&gt;</CODE>
3450     * 
3451     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3452     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3453     * <CODE>&lt;{@link Storage.SharedStorageEntry}[]&gt;</CODE> will be returned
3454     *
3455     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3456     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3457     * be retrieved.</I>
3458     *
3459     * <BR /><BR /><DIV CLASS=JDHint>
3460     * This Browser Function's {@code Promise} returns:
3461     * <CODE>{@link Storage.SharedStorageEntry}[] (<B>entries</B>)</CODE>
3462     * </DIV>
3463     */
3464    public static Script<Storage.SharedStorageEntry[]> getSharedStorageEntries(String ownerOrigin)
3465    {
3466        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3467        final String requestJSON = WriteJSON.get(
3468            CDPTypes.STRING, "ownerOrigin", false, "Storage.getSharedStorageEntries",
3469            ownerOrigin
3470        );
3471
3472        return new Script<>(
3473            Domains.Storage, "getSharedStorageEntries", requestJSON,
3474            Storage$$Commands::getSharedStorageEntries,
3475            Storage.SharedStorageEntry[].class
3476        );
3477    }
3478
3479    /**
3480     * Gets metadata for an origin's shared storage.
3481     * 
3482     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3483     * 
3484     * @param ownerOrigin -
3485     * 
3486     * @return An instance of <CODE>{@link Script}&lt;{@link Storage.SharedStorageMetadata}&gt;</CODE>
3487     * 
3488     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3489     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3490     * <CODE>&lt;{@link Storage.SharedStorageMetadata}&gt;</CODE> will be returned
3491     *
3492     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3493     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3494     * be retrieved.</I>
3495     *
3496     * <BR /><BR /><DIV CLASS=JDHint>
3497     * This Browser Function's {@code Promise} returns:
3498     * <CODE>{@link Storage.SharedStorageMetadata} (<B>metadata</B>)</CODE>
3499     * </DIV>
3500     */
3501    public static Script<Storage.SharedStorageMetadata> getSharedStorageMetadata
3502        (String ownerOrigin)
3503    {
3504        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3505        final String requestJSON = WriteJSON.get(
3506            CDPTypes.STRING, "ownerOrigin", false, "Storage.getSharedStorageMetadata",
3507            ownerOrigin
3508        );
3509
3510        return new Script<>(
3511            Domains.Storage, "getSharedStorageMetadata", requestJSON,
3512            Storage$$Commands::getSharedStorageMetadata,
3513            Storage.SharedStorageMetadata.class
3514        );
3515    }
3516
3517    /**
3518     * Returns a storage key given a frame id.
3519     * 
3520     * @param frameId -
3521     * 
3522     * @return An instance of <CODE>{@link Script}&lt;String&gt;</CODE>
3523     * 
3524     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3525     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3526     * <CODE>&lt;String&gt;</CODE> will be returned
3527     *
3528     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3529     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3530     * be retrieved.</I>
3531     *
3532     * <BR /><BR /><DIV CLASS=JDHint>
3533     * This Browser Function's {@code Promise} returns:
3534     * <CODE>String (<B>storageKey</B>)</CODE>
3535     * </DIV>
3536     */
3537    public static Script<String> getStorageKeyForFrame(String frameId)
3538    {
3539        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3540        final String requestJSON = WriteJSON.get
3541            (CDPTypes.STRING, "frameId", false, "Storage.getStorageKeyForFrame", frameId);
3542
3543        return new Script<>(
3544            Domains.Storage, "getStorageKeyForFrame", requestJSON,
3545            jo -> ReadJSON.getString(jo, "storageKey", true, false),
3546            String.class
3547        );
3548    }
3549
3550    /**
3551     * Returns the number of stored Trust Tokens per issuer for the
3552     * current browsing context.
3553     * 
3554     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3555     * 
3556     * @return An instance of <CODE>{@link Script}&lt;{@link Storage.TrustTokens}[]&gt;</CODE>
3557     * 
3558     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3559     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3560     * <CODE>&lt;{@link Storage.TrustTokens}[]&gt;</CODE> will be returned
3561     *
3562     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3563     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3564     * be retrieved.</I>
3565     *
3566     * <BR /><BR /><DIV CLASS=JDHint>
3567     * This Browser Function's {@code Promise} returns:
3568     * <CODE>{@link Storage.TrustTokens}[] (<B>tokens</B>)</CODE>
3569     * </DIV>
3570     */
3571    public static Script<Storage.TrustTokens[]> getTrustTokens()
3572    {
3573        // Ultra-Simple Request JSON - Because this method has no parameters
3574        final String requestJSON = "{\"method\":\"Storage.getTrustTokens\"}";
3575
3576        return new Script<>(
3577            Domains.Storage, "getTrustTokens", requestJSON,
3578            Storage$$Commands::getTrustTokens,
3579            Storage.TrustTokens[].class
3580        );
3581    }
3582
3583    /**
3584     * Returns usage and quota in bytes.
3585     * 
3586     * @param origin Security origin.
3587     * 
3588     * @return An instance of <CODE>{@link Script}&lt;{@link getUsageAndQuota$$RET}&gt;</CODE>
3589     * 
3590     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3591     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3592     * <CODE>&lt;{@link getUsageAndQuota$$RET}&gt;</CODE> will be returned
3593     *
3594     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3595     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3596     * be retrieved.</I>
3597     *
3598     * <BR /><BR /><DIV CLASS=JDHint>
3599     * This Browser Function's {@code Promise} returns:{@link getUsageAndQuota$$RET}
3600     * A dedicated return type implies that the browser may return more than 1 datum
3601     * </DIV>
3602     */
3603    public static Script<getUsageAndQuota$$RET> getUsageAndQuota(String origin)
3604    {
3605        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3606        final String requestJSON = WriteJSON.get
3607            (CDPTypes.STRING, "origin", false, "Storage.getUsageAndQuota", origin);
3608
3609        return new Script<>(
3610            Domains.Storage, "getUsageAndQuota", requestJSON,
3611            getUsageAndQuota$$RET::fromJSON,
3612            getUsageAndQuota$$RET.class
3613        );
3614    }
3615
3616    /**
3617     * Override quota for the specified origin
3618     * 
3619     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3620     * 
3621     * @param origin Security origin.
3622     * 
3623     * @param quotaSize 
3624     * The quota size (in bytes) to override the original quota with.
3625     * If this is called multiple times, the overridden quota will be equal to
3626     * the quotaSize provided in the final call. If this is called without
3627     * specifying a quotaSize, the quota will be reset to the default value for
3628     * the specified origin. If this is called multiple times with different
3629     * origins, the override will be maintained for each origin until it is
3630     * disabled (called without a quotaSize).
3631     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
3632     * 
3633     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3634     *
3635     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3636     * browser receives the invocation-request.
3637     *
3638     * <BR /><BR /><DIV CLASS=JDHint>
3639     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3640     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3641     * the Browser Function has run to completion.
3642     * </DIV>
3643     */
3644    public static Script<Void> overrideQuotaForOrigin(String origin, Number quotaSize)
3645    {
3646        // Convert all Method Parameters into a JSON Request-Object (as a String)
3647        final String requestJSON = WriteJSON.get(
3648            Storage$$Commands.overrideQuotaForOrigin$$, "Storage.overrideQuotaForOrigin",
3649            origin, quotaSize
3650        );
3651
3652        return Script.NO_RET(Domains.Storage, "overrideQuotaForOrigin", requestJSON);
3653    }
3654
3655    /**
3656     * Resets the budget for <CODE>ownerOrigin</CODE> by clearing all budget withdrawals.
3657     * 
3658     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3659     * 
3660     * @param ownerOrigin -
3661     * 
3662     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3663     *
3664     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3665     * browser receives the invocation-request.
3666     *
3667     * <BR /><BR /><DIV CLASS=JDHint>
3668     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3669     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3670     * the Browser Function has run to completion.
3671     * </DIV>
3672     */
3673    public static Script<Void> resetSharedStorageBudget(String ownerOrigin)
3674    {
3675        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3676        final String requestJSON = WriteJSON.get(
3677            CDPTypes.STRING, "ownerOrigin", false, "Storage.resetSharedStorageBudget",
3678            ownerOrigin
3679        );
3680
3681        return Script.NO_RET(Domains.Storage, "resetSharedStorageBudget", requestJSON);
3682    }
3683
3684    /**
3685     * Deletes state for sites identified as potential bounce trackers, immediately.
3686     * 
3687     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3688     * 
3689     * @return An instance of <CODE>{@link Script}&lt;String[]&gt;</CODE>
3690     * 
3691     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3692     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3693     * <CODE>&lt;String[]&gt;</CODE> will be returned
3694     *
3695     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3696     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3697     * be retrieved.</I>
3698     *
3699     * <BR /><BR /><DIV CLASS=JDHint>
3700     * This Browser Function's {@code Promise} returns:
3701     * <CODE>String[] (<B>deletedSites</B>)</CODE>
3702     * </DIV>
3703     */
3704    public static Script<String[]> runBounceTrackingMitigations()
3705    {
3706        // Ultra-Simple Request JSON - Because this method has no parameters
3707        final String requestJSON = "{\"method\":\"Storage.runBounceTrackingMitigations\"}";
3708
3709        return new Script<>(
3710            Domains.Storage, "runBounceTrackingMitigations", requestJSON,
3711            Storage$$Commands::runBounceTrackingMitigations,
3712            String[].class
3713        );
3714    }
3715
3716    /**
3717     * Sends all pending Attribution Reports immediately, regardless of their
3718     * scheduled report time.
3719     * 
3720     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3721     * 
3722     * @return An instance of <CODE>{@link Script}&lt;Integer&gt;</CODE>
3723     * 
3724     * <BR /><BR />This <B>script</B> may be <B STYLE='color: red'>executed</B>, using
3725     * {@link Script#exec(WebSocketSender) Script.exec}, and afterwards, a {@link Promise}
3726     * <CODE>&lt;Integer&gt;</CODE> will be returned
3727     *
3728     * <BR /><BR />Finally, the <B>{@code Promise}</B> may be <B STYLE='color: red'>awaited</B>,
3729     * using {@link Promise#await()}, <I>and the returned result of this Browser Function may
3730     * be retrieved.</I>
3731     *
3732     * <BR /><BR /><DIV CLASS=JDHint>
3733     * This Browser Function's {@code Promise} returns:
3734     * <CODE>Integer (<B>numSent</B>)</CODE>
3735     * <BR />
3736     * The number of reports that were sent.
3737     * </DIV>
3738     */
3739    public static Script<Integer> sendPendingAttributionReports()
3740    {
3741        // Ultra-Simple Request JSON - Because this method has no parameters
3742        final String requestJSON = "{\"method\":\"Storage.sendPendingAttributionReports\"}";
3743
3744        return new Script<>(
3745            Domains.Storage, "sendPendingAttributionReports", requestJSON,
3746            jo -> ReadBoxedJSON.getInteger(jo, "numSent", JFlag.RD_N | JFlag.RD_M, DV.NULL_INT),
3747            Integer.class
3748        );
3749    }
3750
3751    /**
3752     * https://wicg.github.io/attribution-reporting-api/
3753     * 
3754     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3755     * 
3756     * @param enabled If enabled, noise is suppressed and reports are sent immediately.
3757     * 
3758     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3759     *
3760     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3761     * browser receives the invocation-request.
3762     *
3763     * <BR /><BR /><DIV CLASS=JDHint>
3764     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3765     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3766     * the Browser Function has run to completion.
3767     * </DIV>
3768     */
3769    public static Script<Void> setAttributionReportingLocalTestingMode(boolean enabled)
3770    {
3771        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3772        final String requestJSON = WriteJSON.get(
3773            CDPTypes.PRIMITIVE_BOOLEAN, "enabled", false,
3774            "Storage.setAttributionReportingLocalTestingMode", enabled
3775        );
3776
3777        return Script.NO_RET(Domains.Storage, "setAttributionReportingLocalTestingMode", requestJSON);
3778    }
3779
3780    /**
3781     * Enables/disables issuing of Attribution Reporting events.
3782     * 
3783     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3784     * 
3785     * @param enable -
3786     * 
3787     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3788     *
3789     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3790     * browser receives the invocation-request.
3791     *
3792     * <BR /><BR /><DIV CLASS=JDHint>
3793     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3794     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3795     * the Browser Function has run to completion.
3796     * </DIV>
3797     */
3798    public static Script<Void> setAttributionReportingTracking(boolean enable)
3799    {
3800        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3801        final String requestJSON = WriteJSON.get(
3802            CDPTypes.PRIMITIVE_BOOLEAN, "enable", false,
3803            "Storage.setAttributionReportingTracking", enable
3804        );
3805
3806        return Script.NO_RET(Domains.Storage, "setAttributionReportingTracking", requestJSON);
3807    }
3808
3809    /**
3810     * Sets given cookies.
3811     * 
3812     * @param cookies Cookies to be set.
3813     * 
3814     * @param browserContextId Browser context to use when called on the browser endpoint.
3815     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
3816     * 
3817     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3818     *
3819     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3820     * browser receives the invocation-request.
3821     *
3822     * <BR /><BR /><DIV CLASS=JDHint>
3823     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3824     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3825     * the Browser Function has run to completion.
3826     * </DIV>
3827     */
3828    public static Script<Void> setCookies(Network.CookieParam[] cookies, String browserContextId)
3829    {
3830        // Convert all Method Parameters into a JSON Request-Object (as a String)
3831        final String requestJSON = WriteJSON.get(
3832            Storage$$Commands.setCookies$$, "Storage.setCookies",
3833            cookies, browserContextId
3834        );
3835
3836        return Script.NO_RET(Domains.Storage, "setCookies", requestJSON);
3837    }
3838
3839    /**
3840     * Enables/Disables issuing of interestGroupAuctionEventOccurred and
3841     * interestGroupAuctionNetworkRequestCreated.
3842     * 
3843     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3844     * 
3845     * @param enable -
3846     * 
3847     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3848     *
3849     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3850     * browser receives the invocation-request.
3851     *
3852     * <BR /><BR /><DIV CLASS=JDHint>
3853     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3854     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3855     * the Browser Function has run to completion.
3856     * </DIV>
3857     */
3858    public static Script<Void> setInterestGroupAuctionTracking(boolean enable)
3859    {
3860        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3861        final String requestJSON = WriteJSON.get(
3862            CDPTypes.PRIMITIVE_BOOLEAN, "enable", false,
3863            "Storage.setInterestGroupAuctionTracking", enable
3864        );
3865
3866        return Script.NO_RET(Domains.Storage, "setInterestGroupAuctionTracking", requestJSON);
3867    }
3868
3869    /**
3870     * Enables/Disables issuing of interestGroupAccessed events.
3871     * 
3872     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3873     * 
3874     * @param enable -
3875     * 
3876     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3877     *
3878     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3879     * browser receives the invocation-request.
3880     *
3881     * <BR /><BR /><DIV CLASS=JDHint>
3882     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3883     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3884     * the Browser Function has run to completion.
3885     * </DIV>
3886     */
3887    public static Script<Void> setInterestGroupTracking(boolean enable)
3888    {
3889        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3890        final String requestJSON = WriteJSON.get(
3891            CDPTypes.PRIMITIVE_BOOLEAN, "enable", false, "Storage.setInterestGroupTracking",
3892            enable
3893        );
3894
3895        return Script.NO_RET(Domains.Storage, "setInterestGroupTracking", requestJSON);
3896    }
3897
3898    /**
3899     * <CODE>[No Description Provided by Google]</CODE>
3900     * 
3901     * @param owner -
3902     * 
3903     * @param name -
3904     * 
3905     * @param hashes -
3906     * 
3907     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3908     *
3909     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3910     * browser receives the invocation-request.
3911     *
3912     * <BR /><BR /><DIV CLASS=JDHint>
3913     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3914     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3915     * the Browser Function has run to completion.
3916     * </DIV>
3917     */
3918    public static Script<Void> setProtectedAudienceKAnonymity
3919        (String owner, String name, String[] hashes)
3920    {
3921        // Convert all Method Parameters into a JSON Request-Object (as a String)
3922        final String requestJSON = WriteJSON.get(
3923            Storage$$Commands.setProtectedAudienceKAnonymity$$,
3924            "Storage.setProtectedAudienceKAnonymity",
3925            owner, name, hashes
3926        );
3927
3928        return Script.NO_RET(Domains.Storage, "setProtectedAudienceKAnonymity", requestJSON);
3929    }
3930
3931    /**
3932     * Sets entry with <CODE>key</CODE> and <CODE>value</CODE> for a given origin's shared storage.
3933     * 
3934     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3935     * 
3936     * @param ownerOrigin -
3937     * 
3938     * @param key -
3939     * 
3940     * @param value -
3941     * 
3942     * @param ignoreIfPresent 
3943     * If <CODE>ignoreIfPresent</CODE> is included and true, then only sets the entry if
3944     * <CODE>key</CODE> doesn't already exist.
3945     * <BR /><B CLASS=Opt-Top>OPTIONAL</B>
3946     * 
3947     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3948     *
3949     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3950     * browser receives the invocation-request.
3951     *
3952     * <BR /><BR /><DIV CLASS=JDHint>
3953     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3954     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3955     * the Browser Function has run to completion.
3956     * </DIV>
3957     */
3958    public static Script<Void> setSharedStorageEntry
3959        (String ownerOrigin, String key, String value, Boolean ignoreIfPresent)
3960    {
3961        // Convert all Method Parameters into a JSON Request-Object (as a String)
3962        final String requestJSON = WriteJSON.get(
3963            Storage$$Commands.setSharedStorageEntry$$, "Storage.setSharedStorageEntry",
3964            ownerOrigin, key, value, ignoreIfPresent
3965        );
3966
3967        return Script.NO_RET(Domains.Storage, "setSharedStorageEntry", requestJSON);
3968    }
3969
3970    /**
3971     * Enables/disables issuing of sharedStorageAccessed events.
3972     * 
3973     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
3974     * 
3975     * @param enable -
3976     * 
3977     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
3978     *
3979     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
3980     * browser receives the invocation-request.
3981     *
3982     * <BR /><BR /><DIV CLASS=JDHint>
3983     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
3984     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
3985     * the Browser Function has run to completion.
3986     * </DIV>
3987     */
3988    public static Script<Void> setSharedStorageTracking(boolean enable)
3989    {
3990        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
3991        final String requestJSON = WriteJSON.get(
3992            CDPTypes.PRIMITIVE_BOOLEAN, "enable", false, "Storage.setSharedStorageTracking",
3993            enable
3994        );
3995
3996        return Script.NO_RET(Domains.Storage, "setSharedStorageTracking", requestJSON);
3997    }
3998
3999    /**
4000     * Set tracking for a storage key's buckets.
4001     * 
4002     * <BR /><B CLASS=Exp-Top>EXPERIMENTAL</B>
4003     * 
4004     * @param storageKey -
4005     * 
4006     * @param enable -
4007     * 
4008     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4009     *
4010     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4011     * browser receives the invocation-request.
4012     *
4013     * <BR /><BR /><DIV CLASS=JDHint>
4014     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4015     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4016     * the Browser Function has run to completion.
4017     * </DIV>
4018     */
4019    public static Script<Void> setStorageBucketTracking(String storageKey, boolean enable)
4020    {
4021        // Convert all Method Parameters into a JSON Request-Object (as a String)
4022        final String requestJSON = WriteJSON.get(
4023            Storage$$Commands.setStorageBucketTracking$$, "Storage.setStorageBucketTracking",
4024            storageKey, enable
4025        );
4026
4027        return Script.NO_RET(Domains.Storage, "setStorageBucketTracking", requestJSON);
4028    }
4029
4030    /**
4031     * Registers origin to be notified when an update occurs to its cache storage list.
4032     * 
4033     * @param origin Security origin.
4034     * 
4035     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4036     *
4037     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4038     * browser receives the invocation-request.
4039     *
4040     * <BR /><BR /><DIV CLASS=JDHint>
4041     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4042     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4043     * the Browser Function has run to completion.
4044     * </DIV>
4045     */
4046    public static Script<Void> trackCacheStorageForOrigin(String origin)
4047    {
4048        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
4049        final String requestJSON = WriteJSON.get
4050            (CDPTypes.STRING, "origin", false, "Storage.trackCacheStorageForOrigin", origin);
4051
4052        return Script.NO_RET(Domains.Storage, "trackCacheStorageForOrigin", requestJSON);
4053    }
4054
4055    /**
4056     * Registers storage key to be notified when an update occurs to its cache storage list.
4057     * 
4058     * @param storageKey Storage key.
4059     * 
4060     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4061     *
4062     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4063     * browser receives the invocation-request.
4064     *
4065     * <BR /><BR /><DIV CLASS=JDHint>
4066     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4067     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4068     * the Browser Function has run to completion.
4069     * </DIV>
4070     */
4071    public static Script<Void> trackCacheStorageForStorageKey(String storageKey)
4072    {
4073        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
4074        final String requestJSON = WriteJSON.get(
4075            CDPTypes.STRING, "storageKey", false, "Storage.trackCacheStorageForStorageKey",
4076            storageKey
4077        );
4078
4079        return Script.NO_RET(Domains.Storage, "trackCacheStorageForStorageKey", requestJSON);
4080    }
4081
4082    /**
4083     * Registers origin to be notified when an update occurs to its IndexedDB.
4084     * 
4085     * @param origin Security origin.
4086     * 
4087     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4088     *
4089     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4090     * browser receives the invocation-request.
4091     *
4092     * <BR /><BR /><DIV CLASS=JDHint>
4093     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4094     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4095     * the Browser Function has run to completion.
4096     * </DIV>
4097     */
4098    public static Script<Void> trackIndexedDBForOrigin(String origin)
4099    {
4100        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
4101        final String requestJSON = WriteJSON.get
4102            (CDPTypes.STRING, "origin", false, "Storage.trackIndexedDBForOrigin", origin);
4103
4104        return Script.NO_RET(Domains.Storage, "trackIndexedDBForOrigin", requestJSON);
4105    }
4106
4107    /**
4108     * Registers storage key to be notified when an update occurs to its IndexedDB.
4109     * 
4110     * @param storageKey Storage key.
4111     * 
4112     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4113     *
4114     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4115     * browser receives the invocation-request.
4116     *
4117     * <BR /><BR /><DIV CLASS=JDHint>
4118     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4119     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4120     * the Browser Function has run to completion.
4121     * </DIV>
4122     */
4123    public static Script<Void> trackIndexedDBForStorageKey(String storageKey)
4124    {
4125        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
4126        final String requestJSON = WriteJSON.get(
4127            CDPTypes.STRING, "storageKey", false, "Storage.trackIndexedDBForStorageKey",
4128            storageKey
4129        );
4130
4131        return Script.NO_RET(Domains.Storage, "trackIndexedDBForStorageKey", requestJSON);
4132    }
4133
4134    /**
4135     * Unregisters origin from receiving notifications for cache storage.
4136     * 
4137     * @param origin Security origin.
4138     * 
4139     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4140     *
4141     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4142     * browser receives the invocation-request.
4143     *
4144     * <BR /><BR /><DIV CLASS=JDHint>
4145     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4146     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4147     * the Browser Function has run to completion.
4148     * </DIV>
4149     */
4150    public static Script<Void> untrackCacheStorageForOrigin(String origin)
4151    {
4152        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
4153        final String requestJSON = WriteJSON.get
4154            (CDPTypes.STRING, "origin", false, "Storage.untrackCacheStorageForOrigin", origin);
4155
4156        return Script.NO_RET(Domains.Storage, "untrackCacheStorageForOrigin", requestJSON);
4157    }
4158
4159    /**
4160     * Unregisters storage key from receiving notifications for cache storage.
4161     * 
4162     * @param storageKey Storage key.
4163     * 
4164     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4165     *
4166     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4167     * browser receives the invocation-request.
4168     *
4169     * <BR /><BR /><DIV CLASS=JDHint>
4170     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4171     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4172     * the Browser Function has run to completion.
4173     * </DIV>
4174     */
4175    public static Script<Void> untrackCacheStorageForStorageKey(String storageKey)
4176    {
4177        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
4178        final String requestJSON = WriteJSON.get(
4179            CDPTypes.STRING, "storageKey", false, "Storage.untrackCacheStorageForStorageKey",
4180            storageKey
4181        );
4182
4183        return Script.NO_RET(Domains.Storage, "untrackCacheStorageForStorageKey", requestJSON);
4184    }
4185
4186    /**
4187     * Unregisters origin from receiving notifications for IndexedDB.
4188     * 
4189     * @param origin Security origin.
4190     * 
4191     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4192     *
4193     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4194     * browser receives the invocation-request.
4195     *
4196     * <BR /><BR /><DIV CLASS=JDHint>
4197     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4198     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4199     * the Browser Function has run to completion.
4200     * </DIV>
4201     */
4202    public static Script<Void> untrackIndexedDBForOrigin(String origin)
4203    {
4204        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
4205        final String requestJSON = WriteJSON.get
4206            (CDPTypes.STRING, "origin", false, "Storage.untrackIndexedDBForOrigin", origin);
4207
4208        return Script.NO_RET(Domains.Storage, "untrackIndexedDBForOrigin", requestJSON);
4209    }
4210
4211    /**
4212     * Unregisters storage key from receiving notifications for IndexedDB.
4213     * 
4214     * @param storageKey Storage key.
4215     * 
4216     * @return An instance of <CODE>{@link Script}&lt;Void&gt;</CODE>
4217     *
4218     * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the
4219     * browser receives the invocation-request.
4220     *
4221     * <BR /><BR /><DIV CLASS=JDHint>
4222     * This Browser-Function <I>does not have</I> a return-value.  You may choose to
4223     * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that
4224     * the Browser Function has run to completion.
4225     * </DIV>
4226     */
4227    public static Script<Void> untrackIndexedDBForStorageKey(String storageKey)
4228    {
4229        // Build the JSON Request-Object (as a String); only 1 Parameter is passed
4230        final String requestJSON = WriteJSON.get(
4231            CDPTypes.STRING, "storageKey", false, "Storage.untrackIndexedDBForStorageKey",
4232            storageKey
4233        );
4234
4235        return Script.NO_RET(Domains.Storage, "untrackIndexedDBForStorageKey", requestJSON);
4236    }
4237
4238
4239}