google-closure-compiler 20260809.0.0 → 20260811.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -116,9 +116,10 @@ HTMLCanvasElement.prototype.toDataURL = function(opt_type, var_args) {};
116
116
 
117
117
  /**
118
118
  * @modifies {this}
119
- * @param {string} contextId
119
+ * @param {string} contextId Valid values: "2d", "bitmaprenderer", "webgl",
120
+ * "webgl2"
120
121
  * @param {Object=} opt_args
121
- * @return {Object}
122
+ * @return {!RenderingContext|null}
122
123
  */
123
124
  HTMLCanvasElement.prototype.getContext = function(contextId, opt_args) {};
124
125
 
@@ -157,6 +158,31 @@ CanvasCaptureMediaStreamTrack.prototype.canvas;
157
158
  */
158
159
  CanvasCaptureMediaStreamTrack.prototype.requestFrame = function() {};
159
160
 
161
+ /**
162
+ * @typedef {!OffscreenCanvasRenderingContext2D|!ImageBitmapRenderingContext|!WebGLRenderingContext|!WebGL2RenderingContext|!GPUCanvasContext}
163
+ */
164
+ var OffscreenRenderingContext;
165
+
166
+ /**
167
+ * @typedef {string}
168
+ * Valid values: "2d", "bitmaprenderer", "webgl", "webgl2", "webgpu"
169
+ */
170
+ var OffscreenRenderingContextId;
171
+
172
+ /** @typedef {!CanvasRenderingContext2D|!ImageBitmapRenderingContext|!WebGLRenderingContext|!WebGL2RenderingContext|!GPUCanvasContext} */
173
+ var RenderingContext;
174
+
175
+ /**
176
+ * @interface
177
+ * @see https://gpuweb.github.io/gpuweb/#gpucanvascontext
178
+ */
179
+ function GPUCanvasContext() {}
180
+
181
+ /**
182
+ * @typedef {string}
183
+ * Valid values: "forward" | "backward" | "none"
184
+ */
185
+ var SelectionDirection;
160
186
 
161
187
  /**
162
188
  * @see https://html.spec.whatwg.org/multipage/canvas.html#the-offscreencanvas-interface
@@ -186,10 +212,10 @@ OffscreenCanvas.prototype.width;
186
212
  OffscreenCanvas.prototype.height;
187
213
 
188
214
  /**
189
- * @param {string} contextId
215
+ * @param {!OffscreenRenderingContextId} contextId
190
216
  * @param {!Object=} opt_options
191
217
  * @modifies {this}
192
- * @return {!Object}
218
+ * @return {!OffscreenRenderingContext|null}
193
219
  */
194
220
  OffscreenCanvas.prototype.getContext = function(contextId, opt_options) {};
195
221
 
@@ -283,7 +309,8 @@ CanvasPathMethods.prototype.rect = function(x, y, w, h) {};
283
309
  * @param {number} y
284
310
  * @param {number} w
285
311
  * @param {number} h
286
- * @param {(number|!DOMPointInit|!Array<number|!DOMPointInit>)=} radii
312
+ * @param {(number|!DOMPointInit|!Array<number|!DOMPointInit>|!Iterable<number|!DOMPointInit>)=}
313
+ * radii
287
314
  * @return {undefined}
288
315
  */
289
316
  CanvasPathMethods.prototype.roundRect = function(x, y, w, h, radii) {};
@@ -379,7 +406,8 @@ Path2D.prototype.rect = function(x, y, w, h) {};
379
406
  * @param {number} y
380
407
  * @param {number} w
381
408
  * @param {number} h
382
- * @param {(number|!DOMPointInit|!Array<number|!DOMPointInit>)=} radii
409
+ * @param {(number|!DOMPointInit|!Array<number|!DOMPointInit>|!Iterable<number|!DOMPointInit>)=}
410
+ * radii
383
411
  * @return {undefined}
384
412
  * @override
385
413
  */
@@ -423,7 +451,7 @@ CanvasDrawingStyles.prototype.lineJoin;
423
451
  CanvasDrawingStyles.prototype.miterLimit;
424
452
 
425
453
  /**
426
- * @param {Array<number>} segments
454
+ * @param {Array<number>|!Iterable<number>} segments
427
455
  * @return {undefined}
428
456
  */
429
457
  CanvasDrawingStyles.prototype.setLineDash = function(segments) {};
@@ -700,7 +728,8 @@ BaseRenderingContext2D.prototype.rect = function(x, y, w, h) {};
700
728
  * @param {number} y
701
729
  * @param {number} w
702
730
  * @param {number} h
703
- * @param {(number|!DOMPointInit|!Array<number|!DOMPointInit>)=} radii
731
+ * @param {(number|!DOMPointInit|!Array<number|!DOMPointInit>|!Iterable<number|!DOMPointInit>)=}
732
+ * radii
704
733
  * @return {undefined}
705
734
  * @override
706
735
  */
@@ -899,7 +928,7 @@ BaseRenderingContext2D.prototype.setStrokeColor = function(
899
928
  BaseRenderingContext2D.prototype.getLineDash = function() {};
900
929
 
901
930
  /**
902
- * @param {Array<number>} segments
931
+ * @param {Array<number>|!Iterable<number>} segments
903
932
  * @return {undefined}
904
933
  * @override
905
934
  */
@@ -1082,12 +1111,16 @@ TextMetrics.prototype.ideographicBaseline;
1082
1111
  * array of pixel data. In the second form, this is the image width.
1083
1112
  * @param {number} widthOrHeight In the first form, this is the image width. In
1084
1113
  * the second form, this is the image height.
1085
- * @param {number=} opt_height In the first form, this is the optional image
1086
- * height. The second form omits this argument.
1114
+ * @param {!ImageDataSettings|number=} opt_heightOrSettings In the first form,
1115
+ * this is the optional height. In the second form, this is
1116
+ * the optional settings.
1117
+ * @param {!ImageDataSettings=} opt_settings In the first form, this is the
1118
+ * optional settings. The second form omits this argument.
1087
1119
  * @see https://html.spec.whatwg.org/multipage/scripting.html#imagedata
1088
1120
  * @constructor
1089
1121
  */
1090
- function ImageData(dataOrWidth, widthOrHeight, opt_height) {}
1122
+ function ImageData(
1123
+ dataOrWidth, widthOrHeight, opt_heightOrSettings, opt_settings) {}
1091
1124
 
1092
1125
  /** @const {!Uint8ClampedArray} */
1093
1126
  ImageData.prototype.data;
@@ -1098,6 +1131,23 @@ ImageData.prototype.width;
1098
1131
  /** @const {number} */
1099
1132
  ImageData.prototype.height;
1100
1133
 
1134
+ /**
1135
+ * @typedef {string}
1136
+ * Valid values: "rgba-float16", "rgba-unorm8"
1137
+ */
1138
+ var ImageDataPixelFormat;
1139
+
1140
+ /**
1141
+ * @record
1142
+ */
1143
+ function ImageDataSettings() {}
1144
+
1145
+ /** @type {!PredefinedColorSpace|undefined} */
1146
+ ImageDataSettings.prototype.colorSpace;
1147
+
1148
+ /** @type {!ImageDataPixelFormat|undefined} */
1149
+ ImageDataSettings.prototype.pixelFormat;
1150
+
1101
1151
  /**
1102
1152
  * @see https://www.w3.org/TR/html51/webappapis.html#webappapis-images
1103
1153
  * @interface
@@ -1976,7 +2026,7 @@ HTMLElement.prototype.draggable;
1976
2026
  */
1977
2027
  HTMLElement.prototype.dropzone;
1978
2028
 
1979
- /** @type {boolean} */
2029
+ /** @type {boolean|string} */
1980
2030
  HTMLElement.prototype.hidden;
1981
2031
 
1982
2032
  /** @type {boolean} */
@@ -2075,10 +2125,26 @@ HTMLElement.prototype.detachedCallback;
2075
2125
  /**
2076
2126
  * Cryptographic nonce used by Content Security Policy.
2077
2127
  * @see https://html.spec.whatwg.org/multipage/dom.html#elements-in-the-dom:noncedelement
2078
- * @type {?string}
2128
+ * @type {string}
2079
2129
  */
2080
2130
  HTMLElement.prototype.nonce;
2081
2131
 
2132
+ /** @type {boolean} */
2133
+ HTMLElement.prototype.autofocus;
2134
+
2135
+ /**
2136
+ * @return {undefined}
2137
+ * @override
2138
+ */
2139
+ HTMLElement.prototype.blur = function() {};
2140
+
2141
+ /**
2142
+ * @param {!FocusOptions=} opt_options
2143
+ * @return {undefined}
2144
+ * @override
2145
+ */
2146
+ HTMLElement.prototype.focus = function(opt_options) {};
2147
+
2082
2148
  /** @type {string} */
2083
2149
  HTMLAnchorElement.prototype.download;
2084
2150
 
@@ -2166,11 +2232,23 @@ HTMLIFrameElement.prototype.getSVGDocument= function() {};
2166
2232
  HTMLInputElement.prototype.autocomplete;
2167
2233
 
2168
2234
  /** @type {string} */
2169
- HTMLInputElement.prototype.dirname;
2235
+ HTMLInputElement.prototype.capture;
2236
+
2237
+ /** @type {string} */
2238
+ HTMLInputElement.prototype.dirName;
2170
2239
 
2171
2240
  /** @type {FileList} */
2172
2241
  HTMLInputElement.prototype.files;
2173
2242
 
2243
+ /** @type {number} */
2244
+ HTMLInputElement.prototype.height;
2245
+
2246
+ /** @type {number} */
2247
+ HTMLInputElement.prototype.minLength;
2248
+
2249
+ /** @type {number} */
2250
+ HTMLInputElement.prototype.width;
2251
+
2174
2252
  /**
2175
2253
  * @type {boolean}
2176
2254
  * @see https://www.w3.org/TR/html5/forms.html#dom-input-indeterminate
@@ -2689,9 +2767,13 @@ Text.prototype.getDestinationInsertionPoints = function() {};
2689
2767
  * @constructor
2690
2768
  * @implements {EventTarget}
2691
2769
  * @implements {IArrayLike<!TextTrack>}
2770
+ * @implements {Iterable<!TextTrack>}
2692
2771
  */
2693
2772
  function TextTrackList() {}
2694
2773
 
2774
+ /** @override */
2775
+ TextTrackList.prototype[Symbol.iterator] = function() {};
2776
+
2695
2777
  /** @type {number} */
2696
2778
  TextTrackList.prototype.length;
2697
2779
 
@@ -2799,9 +2881,13 @@ TextTrack.prototype.removeEventListener = function(
2799
2881
  * @see http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#texttrackcuelist
2800
2882
  * @constructor
2801
2883
  * @implements {IArrayLike<!TextTrackCue>}
2884
+ * @implements {Iterable<!TextTrackCue>}
2802
2885
  */
2803
2886
  function TextTrackCueList() {}
2804
2887
 
2888
+ /** @override */
2889
+ TextTrackCueList.prototype[Symbol.iterator] = function() {};
2890
+
2805
2891
  /** @const {number} */
2806
2892
  TextTrackCueList.prototype.length;
2807
2893
 
@@ -3316,7 +3402,7 @@ MessageEvent.prototype.ports;
3316
3402
  * @param {string=} originArg
3317
3403
  * @param {string=} lastEventIdArg
3318
3404
  * @param {?MessageEventSource=} sourceArg
3319
- * @param {!Array<MessagePort>=} portsArg
3405
+ * @param {!Array<MessagePort>|!Iterable<!MessagePort>=} portsArg
3320
3406
  * @return {undefined}
3321
3407
  */
3322
3408
  MessageEvent.prototype.initMessageEvent = function(
@@ -3334,7 +3420,7 @@ MessageEvent.prototype.initMessageEvent = function(
3334
3420
  * @param {string=} originArg
3335
3421
  * @param {string=} lastEventIdArg
3336
3422
  * @param {?MessageEventSource=} sourceArg
3337
- * @param {!Array<MessagePort>=} portsArg
3423
+ * @param {!Array<MessagePort>|!Iterable<!MessagePort>=} portsArg
3338
3424
  * @return {undefined}
3339
3425
  */
3340
3426
  MessageEvent.prototype.initMessageEventNS = function(
@@ -3669,6 +3755,11 @@ DataTransferItemList.prototype.remove = function(i) {};
3669
3755
  */
3670
3756
  DataTransferItemList.prototype.clear = function() {};
3671
3757
 
3758
+ /**
3759
+ * @return {!IteratorIterable<!DataTransferItem>}
3760
+ */
3761
+ DataTransferItemList.prototype[Symbol.iterator] = function() {};
3762
+
3672
3763
  /** @type {!DataTransferItemList} */
3673
3764
  DataTransfer.prototype.items;
3674
3765
 
@@ -3879,7 +3970,7 @@ WebSocket.prototype.onclose;
3879
3970
 
3880
3971
  /**
3881
3972
  * Transmits data using the connection.
3882
- * @param {string|!ArrayBuffer|!ArrayBufferView|!Blob} data
3973
+ * @param {string|!BufferSource|!Blob} data
3883
3974
  * @return {void}
3884
3975
  */
3885
3976
  WebSocket.prototype.send = function(data) {};
@@ -4103,13 +4194,23 @@ Location.prototype.reload = function(forceReload) {};
4103
4194
  */
4104
4195
  Location.prototype.ancestorOrigins;
4105
4196
 
4197
+ /**
4198
+ * @record
4199
+ * @extends {EventInit}
4200
+ */
4201
+ function PopStateEventInit() {}
4202
+ /** @type {boolean|undefined} */
4203
+ PopStateEventInit.prototype.hasUAVisualTransition;
4204
+ /** @type {*} */
4205
+ PopStateEventInit.prototype.state;
4206
+
4106
4207
  /**
4107
4208
  * @see http://www.whatwg.org/specs/web-apps/current-work/#popstateevent
4108
4209
  * @constructor
4109
4210
  * @extends {Event}
4110
4211
  *
4111
4212
  * @param {string} type
4112
- * @param {{state: *}=} opt_eventInitDict
4213
+ * @param {PopStateEventInit=} opt_eventInitDict
4113
4214
  */
4114
4215
  function PopStateEvent(type, opt_eventInitDict) {}
4115
4216
 
@@ -4209,6 +4310,11 @@ FileList.prototype.item = function(i) {
4209
4310
  return null;
4210
4311
  };
4211
4312
 
4313
+ /**
4314
+ * @return {!IteratorIterable<!File>}
4315
+ */
4316
+ FileList.prototype[Symbol.iterator] = function() {};
4317
+
4212
4318
  /**
4213
4319
  * @type {boolean}
4214
4320
  * @see http://dev.w3.org/2006/webapi/XMLHttpRequest-2/#withcredentials
@@ -4427,6 +4533,23 @@ DOMTokenList.prototype.toString = function() {};
4427
4533
  */
4428
4534
  DOMTokenList.prototype.values = function() {};
4429
4535
 
4536
+ /**
4537
+ * @return {!IteratorIterable<!Array<number|string>>}
4538
+ * @nosideeffects
4539
+ */
4540
+ DOMTokenList.prototype.entries = function() {};
4541
+
4542
+ /**
4543
+ * @return {!IteratorIterable<number>}
4544
+ * @nosideeffects
4545
+ */
4546
+ DOMTokenList.prototype.keys = function() {};
4547
+
4548
+ /**
4549
+ * @return {!IteratorIterable<string>}
4550
+ */
4551
+ DOMTokenList.prototype[Symbol.iterator] = function() {};
4552
+
4430
4553
  /**
4431
4554
  * A better interface to CSS classes than className.
4432
4555
  * @const {!DOMTokenList}
@@ -4496,6 +4619,16 @@ ValidityState.prototype.valueMissing;
4496
4619
  /** @type {boolean} */
4497
4620
  HTMLButtonElement.prototype.autofocus;
4498
4621
 
4622
+ /**
4623
+ * @type {string}
4624
+ */
4625
+ HTMLButtonElement.prototype.command;
4626
+
4627
+ /**
4628
+ * @type {!Element|null}
4629
+ */
4630
+ HTMLButtonElement.prototype.commandForElement;
4631
+
4499
4632
  /**
4500
4633
  * Can return null when hidden.
4501
4634
  * See https://html.spec.whatwg.org/multipage/forms.html#dom-lfe-labels
@@ -4604,13 +4737,13 @@ HTMLInputElement.prototype.selectionStart;
4604
4737
  */
4605
4738
  HTMLInputElement.prototype.selectionEnd;
4606
4739
 
4607
- /** @type {string} */
4740
+ /** @type {!SelectionDirection|null} */
4608
4741
  HTMLInputElement.prototype.selectionDirection;
4609
4742
 
4610
4743
  /**
4611
4744
  * @param {number} start
4612
4745
  * @param {number} end
4613
- * @param {string=} direction
4746
+ * @param {!SelectionDirection=} direction
4614
4747
  * @see https://html.spec.whatwg.org/#dom-textarea/input-setselectionrange
4615
4748
  * @return {undefined}
4616
4749
  */
@@ -4728,6 +4861,11 @@ HTMLTextAreaElement.prototype.selectionStart;
4728
4861
  */
4729
4862
  HTMLTextAreaElement.prototype.selectionEnd;
4730
4863
 
4864
+ /**
4865
+ * @type {!SelectionDirection}
4866
+ */
4867
+ HTMLTextAreaElement.prototype.selectionDirection;
4868
+
4731
4869
  /** @type {number} */
4732
4870
  HTMLTextAreaElement.prototype.textLength;
4733
4871
 
@@ -4757,11 +4895,12 @@ HTMLTextAreaElement.prototype.setCustomValidity = function(message) {};
4757
4895
  /**
4758
4896
  * @param {number} selectionStart
4759
4897
  * @param {number} selectionEnd
4898
+ * @param {SelectionDirection=} direction
4760
4899
  * @see http://www.whatwg.org/specs/web-apps/current-work/multipage/editing.html#dom-textarea/input-setselectionrange
4761
4900
  * @return {undefined}
4762
4901
  */
4763
4902
  HTMLTextAreaElement.prototype.setSelectionRange = function(
4764
- selectionStart, selectionEnd) {};
4903
+ selectionStart, selectionEnd, direction) {};
4765
4904
 
4766
4905
  /**
4767
4906
  * @param {string} replacement
@@ -4844,6 +4983,12 @@ Document.prototype.characterSet;
4844
4983
  */
4845
4984
  Document.prototype.contentType;
4846
4985
 
4986
+ /**
4987
+ * @type {?CustomElementRegistry}
4988
+ * @see https://html.spec.whatwg.org/multipage/custom-elements.html#customelementregistry
4989
+ */
4990
+ Document.prototype.customElementRegistry;
4991
+
4847
4992
  /**
4848
4993
  * @see https://dom.spec.whatwg.org/#dom-document-compatmode
4849
4994
  * @type {string}
@@ -5203,6 +5348,11 @@ ShadowRoot.prototype.innerHTML;
5203
5348
  */
5204
5349
  ShadowRoot.prototype.styleSheets;
5205
5350
 
5351
+ /**
5352
+ * @type {?CustomElementRegistry}
5353
+ * @see https://html.spec.whatwg.org/multipage/custom-elements.html#customelementregistry
5354
+ */
5355
+ ShadowRoot.prototype.customElementRegistry;
5206
5356
 
5207
5357
  /**
5208
5358
  * @param {!GetHTMLOptions=} options
@@ -5214,6 +5364,9 @@ ShadowRoot.prototype.getHTML = function(options) {};
5214
5364
  /** @type {boolean} */
5215
5365
  ShadowRoot.prototype.clonable;
5216
5366
 
5367
+ /** @type {boolean} */
5368
+ ShadowRoot.prototype.delegatesFocus;
5369
+
5217
5370
  /** @type {boolean} */
5218
5371
  ShadowRoot.prototype.serializable;
5219
5372
 
@@ -5243,18 +5396,24 @@ var SlotAssignmentMode;
5243
5396
  */
5244
5397
  function ShadowRootInit() {}
5245
5398
 
5246
- /** @type {!ShadowRootMode} */
5247
- ShadowRootInit.prototype.mode;
5399
+ /** @type {boolean|undefined} */
5400
+ ShadowRootInit.prototype.clonable;
5401
+
5402
+ /** @type {!CustomElementRegistry|null|undefined} */
5403
+ ShadowRootInit.prototype.customElementRegistry;
5248
5404
 
5249
5405
  /** @type {(undefined|boolean)} */
5250
5406
  ShadowRootInit.prototype.delegatesFocus;
5251
5407
 
5252
- /** @type {(undefined|SlotAssignmentMode)} */
5253
- ShadowRootInit.prototype.slotAssignment;
5408
+ /** @type {!ShadowRootMode} */
5409
+ ShadowRootInit.prototype.mode;
5254
5410
 
5255
5411
  /** @type {(boolean|undefined)} */
5256
5412
  ShadowRootInit.prototype.serializable;
5257
5413
 
5414
+ /** @type {!SlotAssignmentMode|undefined} */
5415
+ ShadowRootInit.prototype.slotAssignment;
5416
+
5258
5417
  /**
5259
5418
  * @see http://www.w3.org/TR/shadow-dom/#the-content-element
5260
5419
  * @constructor
@@ -5504,6 +5663,12 @@ HTMLDialogElement.prototype.open;
5504
5663
  */
5505
5664
  HTMLDialogElement.prototype.returnValue;
5506
5665
 
5666
+ /**
5667
+ * @type {string}
5668
+ */
5669
+ HTMLDialogElement.prototype.closedBy;
5670
+
5671
+
5507
5672
  /**
5508
5673
  * @see http://www.w3.org/html/wg/drafts/html/master/interactive-elements.html#dom-dialog-show
5509
5674
  * @param {(MouseEvent|Element)=} opt_anchor
@@ -5525,6 +5690,13 @@ HTMLDialogElement.prototype.showModal = function(opt_anchor) {};
5525
5690
  */
5526
5691
  HTMLDialogElement.prototype.close = function(opt_returnValue) {};
5527
5692
 
5693
+ /**
5694
+ * @param {string=} opt_returnValue
5695
+ * @return {undefined}
5696
+ */
5697
+ HTMLDialogElement.prototype.requestClose = function(opt_returnValue) {};
5698
+
5699
+
5528
5700
 
5529
5701
  /**
5530
5702
  * @see https://html.spec.whatwg.org/multipage/scripting.html#the-template-element
@@ -5551,6 +5723,9 @@ HTMLTemplateElement.prototype.shadowRootMode;
5551
5723
  /** @type {boolean} */
5552
5724
  HTMLTemplateElement.prototype.shadowRootSerializable;
5553
5725
 
5726
+ /** @type {string} */
5727
+ HTMLTemplateElement.prototype.shadowRootCustomElementRegistry;
5728
+
5554
5729
  /**
5555
5730
  * @type {?Document}
5556
5731
  * @see w3c_dom2.js
@@ -6189,10 +6364,14 @@ ShareData.prototype.url;
6189
6364
  * @constructor
6190
6365
  * @implements {IObject<(string|number),!Plugin>}
6191
6366
  * @implements {IArrayLike<!Plugin>}
6367
+ * @implements {Iterable<!Plugin>}
6192
6368
  * @see https://www.w3.org/TR/html5/webappapis.html#pluginarray
6193
6369
  */
6194
6370
  function PluginArray() {}
6195
6371
 
6372
+ /** @override */
6373
+ PluginArray.prototype[Symbol.iterator] = function() {};
6374
+
6196
6375
  /** @type {number} */
6197
6376
  PluginArray.prototype.length;
6198
6377
 
@@ -6218,6 +6397,7 @@ PluginArray.prototype.refresh = function(reloadDocuments) {};
6218
6397
  * @constructor
6219
6398
  * @implements {IObject<(string|number),!MimeType>}
6220
6399
  * @implements {IArrayLike<!MimeType>}
6400
+ * @implements {Iterable<!MimeType>}
6221
6401
  * @see https://www.w3.org/TR/html5/webappapis.html#mimetypearray
6222
6402
  */
6223
6403
  function MimeTypeArray() {}
@@ -6240,6 +6420,12 @@ MimeTypeArray.prototype.length;
6240
6420
  */
6241
6421
  MimeTypeArray.prototype.namedItem = function(name) {};
6242
6422
 
6423
+ /**
6424
+ * @return {!Iterator<!MimeType>}
6425
+ * @override
6426
+ */
6427
+ MimeTypeArray.prototype[Symbol.iterator] = function() {};
6428
+
6243
6429
  /**
6244
6430
  * @constructor
6245
6431
  * @see https://www.w3.org/TR/html5/webappapis.html#mimetype
@@ -6260,10 +6446,14 @@ MimeType.prototype.type;
6260
6446
 
6261
6447
  /**
6262
6448
  * @constructor
6449
+ * @implements {Iterable<!MimeType>}
6263
6450
  * @see https://www.w3.org/TR/html5/webappapis.html#dom-plugin
6264
6451
  */
6265
6452
  function Plugin() {}
6266
6453
 
6454
+ /** @override */
6455
+ Plugin.prototype[Symbol.iterator] = function() {};
6456
+
6267
6457
  /** @type {string} */
6268
6458
  Plugin.prototype.description;
6269
6459
 
@@ -6470,7 +6660,7 @@ FocusOptions.prototype.preventScroll;
6470
6660
  FocusOptions.prototype.focusVisible;
6471
6661
 
6472
6662
  /**
6473
- * @param {{preventScroll: boolean}=} options
6663
+ * @param {!FocusOptions=} options
6474
6664
  * @return {undefined}
6475
6665
  * @see https://html.spec.whatwg.org/multipage/interaction.html#dom-focus
6476
6666
  */
@@ -6773,70 +6963,10 @@ ValidityStateFlags.prototype.customError;
6773
6963
  /**
6774
6964
  * @see https://html.spec.whatwg.org/multipage/custom-elements.html#the-elementinternals-interface
6775
6965
  * @constructor
6966
+ * @extends {Set<string>}
6776
6967
  */
6777
6968
  function CustomStateSet() {}
6778
6969
 
6779
- /**
6780
- * @param {string} value
6781
- * @return {void}
6782
- */
6783
- CustomStateSet.prototype.add = function(value) {};
6784
-
6785
- /**
6786
- * @return {void}
6787
- */
6788
- CustomStateSet.prototype.clear = function() {};
6789
-
6790
- /**
6791
- * @param {string} value
6792
- * @return {boolean}
6793
- */
6794
- CustomStateSet.prototype.delete = function(value) {};
6795
-
6796
- /**
6797
- * @return {!IteratorIterable<!Array<string>>} Where each array has two entries:
6798
- * [value, value]
6799
- * @nosideeffects
6800
- */
6801
- CustomStateSet.prototype.entries = function() {};
6802
-
6803
- /**
6804
- * @param {function(this: THIS, string, string, CustomStateSet)} callback
6805
- * @param {THIS=} opt_thisArg
6806
- * @this {THIS}
6807
- * @template THIS
6808
- */
6809
- CustomStateSet.prototype.forEach = function(callback, opt_thisArg) {};
6810
-
6811
- /**
6812
- * @param {string} value
6813
- * @return {boolean}
6814
- * @nosideeffects
6815
- */
6816
- CustomStateSet.prototype.has = function(value) {};
6817
-
6818
- /**
6819
- * @type {number} (readonly)
6820
- */
6821
- CustomStateSet.prototype.size;
6822
-
6823
- /**
6824
- * @return {!IteratorIterable<string>}
6825
- * @nosideeffects
6826
- */
6827
- CustomStateSet.prototype.keys = function() {};
6828
-
6829
- /**
6830
- * @return {!IteratorIterable<string>}
6831
- * @nosideeffects
6832
- */
6833
- CustomStateSet.prototype.values = function() {};
6834
-
6835
- /**
6836
- * @return {!IteratorIterable<string>}
6837
- */
6838
- CustomStateSet.prototype[Symbol.iterator] = function() {};
6839
-
6840
6970
  /**
6841
6971
  * @see https://drafts.csswg.org/css-view-transitions/#dom-document-startviewtransition
6842
6972
  * @param {function(): (undefined|!Promise<undefined>)} updateCallback
@@ -6844,6 +6974,13 @@ CustomStateSet.prototype[Symbol.iterator] = function() {};
6844
6974
  */
6845
6975
  Document.prototype.startViewTransition = function(updateCallback) {};
6846
6976
 
6977
+ /**
6978
+ * @type {!ViewTransition|null}
6979
+ * @see https://developer.mozilla.org/docs/Web/API/Document/activeViewTransition
6980
+ */
6981
+ Document.prototype.activeViewTransition;
6982
+
6983
+
6847
6984
  /**
6848
6985
  * @see https://drafts.csswg.org/css-view-transitions/#viewtransition
6849
6986
  * @record
@@ -6869,6 +7006,7 @@ ViewTransition.prototype.types;
6869
7006
 
6870
7007
  /**
6871
7008
  * @constructor
7009
+ * @extends {Set<string>}
6872
7010
  */
6873
7011
  function ViewTransitionTypeSet() {}
6874
7012
 
@@ -6877,6 +7015,7 @@ function ViewTransitionTypeSet() {}
6877
7015
  * @param {THIS=} opt_thisArg
6878
7016
  * @this {THIS}
6879
7017
  * @template THIS
7018
+ * @override
6880
7019
  */
6881
7020
  ViewTransitionTypeSet.prototype.forEach = function(callback, opt_thisArg) {};
6882
7021
 
@@ -6893,6 +7032,9 @@ ToggleEventInit.prototype.newState;
6893
7032
  /** @type {undefined|string} */
6894
7033
  ToggleEventInit.prototype.oldState;
6895
7034
 
7035
+ /** @type {!Element|null|undefined} */
7036
+ ToggleEventInit.prototype.source;
7037
+
6896
7038
  /**
6897
7039
  * @param {string} type
6898
7040
  * @param {ToggleEventInit=} opt_eventInitDict
@@ -6907,3 +7049,11 @@ ToggleEvent.prototype.newState;
6907
7049
 
6908
7050
  /** @const {string} */
6909
7051
  ToggleEvent.prototype.oldState;
7052
+
7053
+ /** @type {!Element|null} */
7054
+ ToggleEvent.prototype.source;
7055
+
7056
+ /** @type {?function (!Event)} */
7057
+ Element.prototype.oncommand;
7058
+ /** @type {?function (!Event)} */
7059
+ Window.prototype.oncommand;
@@ -0,0 +1,332 @@
1
+ /*
2
+ * Copyright 2026 The Closure Compiler Authors
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License");
5
+ * you may not use this file except in compliance with the License.
6
+ * You may obtain a copy of the License at
7
+ *
8
+ * http://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software
11
+ * distributed under the License is distributed on an "AS IS" BASIS,
12
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ * See the License for the specific language governing permissions and
14
+ * limitations under the License.
15
+ */
16
+
17
+ /**
18
+ * @fileoverview Externs for WebGPU API.
19
+ * @see https://gpuweb.github.io/gpuweb/
20
+ *
21
+ * @externs
22
+ */
23
+
24
+ /** @typedef {number} */
25
+ var GPUBufferDynamicOffset;
26
+
27
+ /** @typedef {number} */
28
+ var GPUBufferUsageFlags;
29
+
30
+ /** @typedef {number} */
31
+ var GPUColorWriteFlags;
32
+
33
+ /** @typedef {!ImageBitmap|!ImageData|!HTMLImageElement|!HTMLVideoElement|!VideoFrame|!HTMLCanvasElement|!OffscreenCanvas} */
34
+ var GPUCopyExternalImageSource;
35
+
36
+ /** @typedef {number} */
37
+ var GPUDepthBias;
38
+
39
+ /** @typedef {number} */
40
+ var GPUFlagsConstant;
41
+
42
+ /** @typedef {number} */
43
+ var GPUIndex32;
44
+
45
+ /** @typedef {number} */
46
+ var GPUIntegerCoordinate;
47
+
48
+ /** @typedef {number} */
49
+ var GPUIntegerCoordinateOut;
50
+
51
+ /** @typedef {number} */
52
+ var GPUMapModeFlags;
53
+
54
+ /** @typedef {number} */
55
+ var GPUPipelineConstantValue;
56
+
57
+ /** @typedef {number} */
58
+ var GPUSampleMask;
59
+
60
+ /** @typedef {number} */
61
+ var GPUShaderStageFlags;
62
+
63
+ /** @typedef {number} */
64
+ var GPUSignedOffset32;
65
+
66
+ /** @typedef {number} */
67
+ var GPUSize32;
68
+
69
+ /** @typedef {number} */
70
+ var GPUSize32Out;
71
+
72
+ /** @typedef {number} */
73
+ var GPUSize64;
74
+
75
+ /** @typedef {number} */
76
+ var GPUSize64Out;
77
+
78
+ /** @typedef {number} */
79
+ var GPUStencilValue;
80
+
81
+ /** @typedef {number} */
82
+ var GPUTextureUsageFlags;
83
+
84
+ /**
85
+ * @typedef {string}
86
+ * Valid values: "clamp-to-edge", "mirror-repeat", "repeat"
87
+ */
88
+ var GPUAddressMode;
89
+
90
+ /**
91
+ * @typedef {string}
92
+ * Valid values: "auto"
93
+ */
94
+ var GPUAutoLayoutMode;
95
+
96
+ /**
97
+ * @typedef {string}
98
+ * Valid values: "constant", "dst", "dst-alpha", "one", "one-minus-constant",
99
+ * "one-minus-dst", "one-minus-dst-alpha", "one-minus-src",
100
+ * "one-minus-src-alpha", "src", "src-alpha", "src-alpha-saturated", "zero"
101
+ */
102
+ var GPUBlendFactor;
103
+
104
+ /**
105
+ * @typedef {string}
106
+ * Valid values: "add", "max", "min", "reverse-subtract", "subtract"
107
+ */
108
+ var GPUBlendOperation;
109
+
110
+ /**
111
+ * @typedef {string}
112
+ * Valid values: "read-only-storage", "storage", "uniform"
113
+ */
114
+ var GPUBufferBindingType;
115
+
116
+ /**
117
+ * @typedef {string}
118
+ * Valid values: "mapped", "pending", "unmapped"
119
+ */
120
+ var GPUBufferMapState;
121
+
122
+ /**
123
+ * @typedef {string}
124
+ * Valid values: "opaque", "premultiplied"
125
+ */
126
+ var GPUCanvasAlphaMode;
127
+
128
+ /**
129
+ * @typedef {string}
130
+ * Valid values: "extended", "standard"
131
+ */
132
+ var GPUCanvasToneMappingMode;
133
+
134
+ /**
135
+ * @typedef {string}
136
+ * Valid values: "always", "equal", "greater", "greater-equal", "less",
137
+ * "less-equal", "never", "not-equal"
138
+ */
139
+ var GPUCompareFunction;
140
+
141
+ /**
142
+ * @typedef {string}
143
+ * Valid values: "error", "info", "warning"
144
+ */
145
+ var GPUCompilationMessageType;
146
+
147
+ /**
148
+ * @typedef {string}
149
+ * Valid values: "back", "front", "none"
150
+ */
151
+ var GPUCullMode;
152
+
153
+ /**
154
+ * @typedef {string}
155
+ * Valid values: "destroyed", "unknown"
156
+ */
157
+ var GPUDeviceLostReason;
158
+
159
+ /**
160
+ * @typedef {string}
161
+ * Valid values: "internal", "out-of-memory", "validation"
162
+ */
163
+ var GPUErrorFilter;
164
+
165
+ /**
166
+ * @typedef {string}
167
+ * Valid values: "bgra8unorm-storage", "clip-distances",
168
+ * "core-features-and-limits", "depth-clip-control",
169
+ * "depth32float-stencil8", "dual-source-blending", "float32-blendable",
170
+ * "float32-filterable", "indirect-first-instance", "primitive-index",
171
+ * "rg11b10ufloat-renderable", "shader-f16", "subgroups",
172
+ * "texture-compression-astc", "texture-compression-astc-sliced-3d",
173
+ * "texture-compression-bc", "texture-compression-bc-sliced-3d",
174
+ * "texture-compression-etc2", "texture-formats-tier1", "timestamp-query"
175
+ */
176
+ var GPUFeatureName;
177
+
178
+ /**
179
+ * @typedef {string}
180
+ * Valid values: "linear", "nearest"
181
+ */
182
+ var GPUFilterMode;
183
+
184
+ /**
185
+ * @typedef {string}
186
+ * Valid values: "ccw", "cw"
187
+ */
188
+ var GPUFrontFace;
189
+
190
+ /**
191
+ * @typedef {string}
192
+ * Valid values: "uint16", "uint32"
193
+ */
194
+ var GPUIndexFormat;
195
+
196
+ /**
197
+ * @typedef {string}
198
+ * Valid values: "clear", "load"
199
+ */
200
+ var GPULoadOp;
201
+
202
+ /**
203
+ * @typedef {string}
204
+ * Valid values: "linear", "nearest"
205
+ */
206
+ var GPUMipmapFilterMode;
207
+
208
+ /**
209
+ * @typedef {string}
210
+ * Valid values: "internal", "validation"
211
+ */
212
+ var GPUPipelineErrorReason;
213
+
214
+ /**
215
+ * @typedef {string}
216
+ * Valid values: "high-performance", "low-power"
217
+ */
218
+ var GPUPowerPreference;
219
+
220
+ /**
221
+ * @typedef {string}
222
+ * Valid values: "line-list", "line-strip", "point-list", "triangle-list",
223
+ * "triangle-strip"
224
+ */
225
+ var GPUPrimitiveTopology;
226
+
227
+ /**
228
+ * @typedef {string}
229
+ * Valid values: "occlusion", "timestamp"
230
+ */
231
+ var GPUQueryType;
232
+
233
+ /**
234
+ * @typedef {string}
235
+ * Valid values: "comparison", "filtering", "non-filtering"
236
+ */
237
+ var GPUSamplerBindingType;
238
+
239
+ /**
240
+ * @typedef {string}
241
+ * Valid values: "decrement-clamp", "decrement-wrap", "increment-clamp",
242
+ * "increment-wrap", "invert", "keep", "replace", "zero"
243
+ */
244
+ var GPUStencilOperation;
245
+
246
+ /**
247
+ * @typedef {string}
248
+ * Valid values: "read-only", "read-write", "write-only"
249
+ */
250
+ var GPUStorageTextureAccess;
251
+
252
+ /**
253
+ * @typedef {string}
254
+ * Valid values: "discard", "store"
255
+ */
256
+ var GPUStoreOp;
257
+
258
+ /**
259
+ * @typedef {string}
260
+ * Valid values: "all", "depth-only", "stencil-only"
261
+ */
262
+ var GPUTextureAspect;
263
+
264
+ /**
265
+ * @typedef {string}
266
+ * Valid values: "1d", "2d", "3d"
267
+ */
268
+ var GPUTextureDimension;
269
+
270
+ /**
271
+ * @typedef {string}
272
+ * Valid values: "astc-10x10-unorm", "astc-10x10-unorm-srgb",
273
+ * "astc-10x5-unorm", "astc-10x5-unorm-srgb", "astc-10x6-unorm",
274
+ * "astc-10x6-unorm-srgb", "astc-10x8-unorm", "astc-10x8-unorm-srgb",
275
+ * "astc-12x10-unorm", "astc-12x10-unorm-srgb", "astc-12x12-unorm",
276
+ * "astc-12x12-unorm-srgb", "astc-4x4-unorm", "astc-4x4-unorm-srgb",
277
+ * "astc-5x4-unorm", "astc-5x4-unorm-srgb", "astc-5x5-unorm",
278
+ * "astc-5x5-unorm-srgb", "astc-6x5-unorm", "astc-6x5-unorm-srgb",
279
+ * "astc-6x6-unorm", "astc-6x6-unorm-srgb", "astc-8x5-unorm",
280
+ * "astc-8x5-unorm-srgb", "astc-8x6-unorm", "astc-8x6-unorm-srgb",
281
+ * "astc-8x8-unorm", "astc-8x8-unorm-srgb", "bc1-rgba-unorm",
282
+ * "bc1-rgba-unorm-srgb", "bc2-rgba-unorm", "bc2-rgba-unorm-srgb",
283
+ * "bc3-rgba-unorm", "bc3-rgba-unorm-srgb", "bc4-r-snorm", "bc4-r-unorm",
284
+ * "bc5-rg-snorm", "bc5-rg-unorm", "bc6h-rgb-float", "bc6h-rgb-ufloat",
285
+ * "bc7-rgba-unorm", "bc7-rgba-unorm-srgb", "bgra8unorm",
286
+ * "bgra8unorm-srgb", "depth16unorm", "depth24plus",
287
+ * "depth24plus-stencil8", "depth32float", "depth32float-stencil8",
288
+ * "eac-r11snorm", "eac-r11unorm", "eac-rg11snorm", "eac-rg11unorm",
289
+ * "etc2-rgb8a1unorm", "etc2-rgb8a1unorm-srgb", "etc2-rgb8unorm",
290
+ * "etc2-rgb8unorm-srgb", "etc2-rgba8unorm", "etc2-rgba8unorm-srgb",
291
+ * "r16float", "r16sint", "r16snorm", "r16uint", "r16unorm", "r32float",
292
+ * "r32sint", "r32uint", "r8sint", "r8snorm", "r8uint", "r8unorm",
293
+ * "rg11b10ufloat", "rg16float", "rg16sint", "rg16snorm", "rg16uint",
294
+ * "rg16unorm", "rg32float", "rg32sint", "rg32uint", "rg8sint",
295
+ * "rg8snorm", "rg8uint", "rg8unorm", "rgb10a2uint", "rgb10a2unorm",
296
+ * "rgb9e5ufloat", "rgba16float", "rgba16sint", "rgba16snorm",
297
+ * "rgba16uint", "rgba16unorm", "rgba32float", "rgba32sint", "rgba32uint",
298
+ * "rgba8sint", "rgba8snorm", "rgba8uint", "rgba8unorm",
299
+ * "rgba8unorm-srgb", "stencil8"
300
+ */
301
+ var GPUTextureFormat;
302
+
303
+ /**
304
+ * @typedef {string}
305
+ * Valid values: "depth", "float", "sint", "uint", "unfilterable-float"
306
+ */
307
+ var GPUTextureSampleType;
308
+
309
+ /**
310
+ * @typedef {string}
311
+ * Valid values: "1d", "2d", "2d-array", "3d", "cube", "cube-array"
312
+ */
313
+ var GPUTextureViewDimension;
314
+
315
+ /**
316
+ * @typedef {string}
317
+ * Valid values: "float16", "float16x2", "float16x4", "float32", "float32x2",
318
+ * "float32x3", "float32x4", "sint16", "sint16x2", "sint16x4", "sint32",
319
+ * "sint32x2", "sint32x3", "sint32x4", "sint8", "sint8x2", "sint8x4",
320
+ * "snorm16", "snorm16x2", "snorm16x4", "snorm8", "snorm8x2", "snorm8x4",
321
+ * "uint16", "uint16x2", "uint16x4", "uint32", "uint32x2", "uint32x3",
322
+ * "uint32x4", "uint8", "uint8x2", "uint8x4", "unorm10-10-10-2",
323
+ * "unorm16", "unorm16x2", "unorm16x4", "unorm8", "unorm8x2", "unorm8x4",
324
+ * "unorm8x4-bgra"
325
+ */
326
+ var GPUVertexFormat;
327
+
328
+ /**
329
+ * @typedef {string}
330
+ * Valid values: "instance", "vertex"
331
+ */
332
+ var GPUVertexStepMode;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "google-closure-compiler",
3
- "version": "20260809.0.0",
3
+ "version": "20260811.0.0",
4
4
  "description": "Check, compile, optimize and compress Javascript with Closure-Compiler",
5
5
  "type": "module",
6
6
  "repository": {
@@ -41,16 +41,16 @@
41
41
  "homepage": "https://developers.google.com/closure/compiler/",
42
42
  "dependencies": {
43
43
  "chalk": "^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 <5.6.1 || ^5.6.2 >5.6.1",
44
- "google-closure-compiler-java": "^20260809.0.0",
44
+ "google-closure-compiler-java": "^20260811.0.0",
45
45
  "minimist": "^1.0.0",
46
46
  "vinyl": "^3.0.1",
47
47
  "vinyl-sourcemaps-apply": "^0.2.0"
48
48
  },
49
49
  "optionalDependencies": {
50
- "google-closure-compiler-linux": "^20260809.0.0",
51
- "google-closure-compiler-linux-arm64": "^20260809.0.0",
52
- "google-closure-compiler-macos": "^20260809.0.0",
53
- "google-closure-compiler-windows": "^20260809.0.0"
50
+ "google-closure-compiler-linux": "^20260811.0.0",
51
+ "google-closure-compiler-linux-arm64": "^20260811.0.0",
52
+ "google-closure-compiler-macos": "^20260811.0.0",
53
+ "google-closure-compiler-windows": "^20260811.0.0"
54
54
  },
55
55
  "devDependencies": {
56
56
  "gulp": "^5.0.1",