google-closure-compiler 20250412.0.0-nightly → 20250413.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.
Files changed (131) hide show
  1. package/README.md +5 -30
  2. package/cli.js +3 -4
  3. package/externs/browser/decorators.js +276 -0
  4. package/externs/browser/deprecated.js +58 -0
  5. package/externs/browser/es6_proxy.js +143 -0
  6. package/externs/browser/fetchapi.js +449 -0
  7. package/externs/browser/fido.js +94 -0
  8. package/externs/browser/flash.js +226 -0
  9. package/externs/browser/gecko_css.js +126 -0
  10. package/externs/browser/gecko_dom.js +479 -0
  11. package/externs/browser/gecko_event.js +86 -0
  12. package/externs/browser/gecko_xml.js +73 -0
  13. package/externs/browser/google_legacy.js +31 -0
  14. package/externs/browser/html5.js +6647 -0
  15. package/externs/browser/ie_css.js +270 -0
  16. package/externs/browser/ie_dom.js +1232 -0
  17. package/externs/browser/ie_event.js +310 -0
  18. package/externs/browser/ie_vml.js +77 -0
  19. package/externs/browser/intersection_observer.js +178 -0
  20. package/externs/browser/intl.js +602 -0
  21. package/externs/browser/iphone.js +204 -0
  22. package/externs/browser/mediakeys.js +305 -0
  23. package/externs/browser/mediasource.js +155 -0
  24. package/externs/browser/nonstandard_anim_timing.js +97 -0
  25. package/externs/browser/nonstandard_audio.js +82 -0
  26. package/externs/browser/nonstandard_console.js +75 -0
  27. package/externs/browser/nonstandard_fileapi.js +1066 -0
  28. package/externs/browser/nonstandard_indexeddb.js +78 -0
  29. package/externs/browser/nonstandard_navigation_timing.js +38 -0
  30. package/externs/browser/nonstandard_selection.js +80 -0
  31. package/externs/browser/page_visibility.js +28 -0
  32. package/externs/browser/streamsapi.js +593 -0
  33. package/externs/browser/svg.js +10016 -0
  34. package/externs/browser/url.js +202 -0
  35. package/externs/browser/v8.js +134 -0
  36. package/externs/browser/w3c_abort.js +89 -0
  37. package/externs/browser/w3c_anim_timing.js +49 -0
  38. package/externs/browser/w3c_aria_mixin.js +286 -0
  39. package/externs/browser/w3c_audio.js +1660 -0
  40. package/externs/browser/w3c_batterystatus.js +85 -0
  41. package/externs/browser/w3c_clipboard.js +74 -0
  42. package/externs/browser/w3c_clipboardevent.js +47 -0
  43. package/externs/browser/w3c_composition_event.js +93 -0
  44. package/externs/browser/w3c_css.js +3790 -0
  45. package/externs/browser/w3c_css3d.js +199 -0
  46. package/externs/browser/w3c_device_sensor_event.js +122 -0
  47. package/externs/browser/w3c_dom1.js +1160 -0
  48. package/externs/browser/w3c_dom2.js +3151 -0
  49. package/externs/browser/w3c_dom3.js +555 -0
  50. package/externs/browser/w3c_dom4.js +289 -0
  51. package/externs/browser/w3c_elementtraversal.js +116 -0
  52. package/externs/browser/w3c_event.js +607 -0
  53. package/externs/browser/w3c_event3.js +77 -0
  54. package/externs/browser/w3c_eventsource.js +110 -0
  55. package/externs/browser/w3c_fileapi.js +302 -0
  56. package/externs/browser/w3c_gamepad.js +113 -0
  57. package/externs/browser/w3c_geolocation.js +130 -0
  58. package/externs/browser/w3c_geometry1.js +899 -0
  59. package/externs/browser/w3c_indexeddb.js +771 -0
  60. package/externs/browser/w3c_keyboardlock.js +47 -0
  61. package/externs/browser/w3c_mediacapabilities.js +206 -0
  62. package/externs/browser/w3c_midi.js +301 -0
  63. package/externs/browser/w3c_navigation.js +72 -0
  64. package/externs/browser/w3c_navigation_timing.js +437 -0
  65. package/externs/browser/w3c_netinfo.js +85 -0
  66. package/externs/browser/w3c_payment_request.js +401 -0
  67. package/externs/browser/w3c_permissions.js +112 -0
  68. package/externs/browser/w3c_permissions_policy.js +78 -0
  69. package/externs/browser/w3c_pointer_events.js +163 -0
  70. package/externs/browser/w3c_pointerlock.js +63 -0
  71. package/externs/browser/w3c_range.js +284 -0
  72. package/externs/browser/w3c_referrer_policy.js +36 -0
  73. package/externs/browser/w3c_requestidlecallback.js +76 -0
  74. package/externs/browser/w3c_rtc.js +3882 -0
  75. package/externs/browser/w3c_screen_orientation.js +53 -0
  76. package/externs/browser/w3c_screen_wake_lock.js +58 -0
  77. package/externs/browser/w3c_selection.js +209 -0
  78. package/externs/browser/w3c_selectors.js +113 -0
  79. package/externs/browser/w3c_serviceworker.js +739 -0
  80. package/externs/browser/w3c_speech.js +426 -0
  81. package/externs/browser/w3c_touch_event.js +296 -0
  82. package/externs/browser/w3c_trusted_types.js +142 -0
  83. package/externs/browser/w3c_vibration.js +38 -0
  84. package/externs/browser/w3c_webcodecs.js +1473 -0
  85. package/externs/browser/w3c_webcrypto.js +839 -0
  86. package/externs/browser/w3c_worklets.js +54 -0
  87. package/externs/browser/w3c_xml.js +533 -0
  88. package/externs/browser/web_animations.js +452 -0
  89. package/externs/browser/web_app_manifest.js +50 -0
  90. package/externs/browser/webassembly.js +223 -0
  91. package/externs/browser/webgl.js +3409 -0
  92. package/externs/browser/webgl2.js +2727 -0
  93. package/externs/browser/webgl2_compute.js +1609 -0
  94. package/externs/browser/webkit_css.js +456 -0
  95. package/externs/browser/webkit_dom.js +118 -0
  96. package/externs/browser/webkit_event.js +46 -0
  97. package/externs/browser/webkit_notifications.js +258 -0
  98. package/externs/browser/webkit_usercontent.js +55 -0
  99. package/externs/browser/weblocksapi.js +125 -0
  100. package/externs/browser/webstorage.js +171 -0
  101. package/externs/browser/whatwg_bitmap_context.js +37 -0
  102. package/externs/browser/whatwg_console.js +152 -0
  103. package/externs/browser/whatwg_encoding.js +99 -0
  104. package/externs/browser/whatwg_file_system.js +296 -0
  105. package/externs/browser/wicg_attribution_reporting.js +42 -0
  106. package/externs/browser/wicg_compression_stream.js +60 -0
  107. package/externs/browser/wicg_constructable_stylesheets.js +60 -0
  108. package/externs/browser/wicg_entries.js +169 -0
  109. package/externs/browser/wicg_file_handling.js +41 -0
  110. package/externs/browser/wicg_file_system_access.js +191 -0
  111. package/externs/browser/wicg_floc.js +41 -0
  112. package/externs/browser/wicg_ink.js +89 -0
  113. package/externs/browser/wicg_resizeobserver.js +100 -0
  114. package/externs/browser/wicg_scheduler.js +62 -0
  115. package/externs/browser/wicg_trust_token.js +89 -0
  116. package/externs/browser/wicg_uach.js +100 -0
  117. package/externs/browser/window.js +190 -0
  118. package/externs/es3.js +2716 -0
  119. package/externs/es5.js +284 -0
  120. package/externs/es6.js +2554 -0
  121. package/externs/es6_collections.js +323 -0
  122. package/index.js +13 -16
  123. package/lib/grunt/index.js +71 -92
  124. package/lib/grunt/vinyl-stream.js +12 -18
  125. package/lib/gulp/concat-to-json.js +30 -18
  126. package/lib/gulp/index.js +174 -181
  127. package/lib/gulp/json-to-vinyl.js +8 -8
  128. package/lib/node/{closure-compiler.js → index.js} +27 -51
  129. package/lib/utils.js +16 -14
  130. package/package.json +19 -16
  131. package/lib/logger.js +0 -89
@@ -0,0 +1,739 @@
1
+ /*
2
+ * Copyright 2014 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
+ * @fileoverview Externs for service worker.
18
+ *
19
+ * @see http://www.w3.org/TR/service-workers/
20
+ * @externs
21
+ */
22
+
23
+ /**
24
+ * @see http://www.w3.org/TR/service-workers/#service-worker-interface
25
+ * @constructor
26
+ * @extends {Worker}
27
+ */
28
+ function ServiceWorker() {}
29
+
30
+ /** @type {string} */
31
+ ServiceWorker.prototype.scriptURL;
32
+
33
+ /** @type {ServiceWorkerState} */
34
+ ServiceWorker.prototype.state;
35
+
36
+ /** @type {?function(!Event)} */
37
+ ServiceWorker.prototype.onstatechange;
38
+
39
+ /**
40
+ * Set of possible string values: 'installing', 'installed', 'activating',
41
+ * 'activated', 'redundant'.
42
+ * @typedef {string}
43
+ */
44
+ var ServiceWorkerState;
45
+
46
+ /**
47
+ * @see https://w3c.github.io/ServiceWorker/#navigationpreloadmanager
48
+ * @constructor
49
+ */
50
+ function NavigationPreloadManager() {}
51
+
52
+ /** @return {!Promise<void>} */
53
+ NavigationPreloadManager.prototype.enable = function() {};
54
+
55
+ /** @return {!Promise<void>} */
56
+ NavigationPreloadManager.prototype.disable = function() {};
57
+
58
+ /**
59
+ * @param {string=} value
60
+ * @return {!Promise<void>}
61
+ */
62
+ NavigationPreloadManager.prototype.setHeaderValue = function(value) {};
63
+
64
+ /** @return {!Promise<NavigationPreloadState>} */
65
+ NavigationPreloadManager.prototype.getState = function() {};
66
+
67
+ /**
68
+ * @typedef {{
69
+ * enabled: (boolean|undefined),
70
+ * headerValue: (string|undefined)
71
+ * }}
72
+ */
73
+ var NavigationPreloadState;
74
+
75
+ /** @record */
76
+ function PushSubscriptionOptions() {}
77
+
78
+ /** @type {ArrayBuffer|undefined} */
79
+ PushSubscriptionOptions.prototype.applicationServerKey;
80
+
81
+ /** @type {boolean|undefined} */
82
+ PushSubscriptionOptions.prototype.userVisibleOnly;
83
+
84
+ /** @record */
85
+ function PushSubscriptionOptionsInit() {}
86
+
87
+ /** @type {BufferSource|string|undefined} */
88
+ PushSubscriptionOptionsInit.prototype.applicationServerKey;
89
+
90
+ /** @type {boolean|undefined} */
91
+ PushSubscriptionOptionsInit.prototype.userVisibleOnly;
92
+
93
+
94
+ /**
95
+ * @see https://w3c.github.io/push-api/
96
+ * @constructor
97
+ */
98
+ function PushSubscription() {}
99
+
100
+ /** @type {string} */
101
+ PushSubscription.prototype.endpoint;
102
+
103
+ /** @type {number|null} */
104
+ PushSubscription.prototype.expirationTime;
105
+
106
+ /**
107
+ * Please note there is an intent to deprecate this field in Chrome 43 or 44.
108
+ * See https://www.chromestatus.com/feature/5283829761703936.
109
+ * @type {string}
110
+ */
111
+ PushSubscription.prototype.subscriptionId;
112
+
113
+ /** @type {!PushSubscriptionOptions} */
114
+ PushSubscription.prototype.options;
115
+
116
+ /** @return {!Promise<boolean>} */
117
+ PushSubscription.prototype.unsubscribe = function() {};
118
+
119
+ /**
120
+ * @param {string} name
121
+ * @return {!ArrayBuffer|null}
122
+ */
123
+ PushSubscription.prototype.getKey = function(name) {};
124
+
125
+
126
+ /**
127
+ * @see https://w3c.github.io/push-api/#idl-def-PushManager
128
+ * @constructor
129
+ */
130
+ function PushManager() {}
131
+
132
+ /**
133
+ * @const {!Array<string>}
134
+ */
135
+ PushManager.supportedContentEncodings;
136
+
137
+ /**
138
+ * @param {PushSubscriptionOptionsInit=} opt_options
139
+ * @return {!Promise<!PushSubscription>}
140
+ */
141
+ PushManager.prototype.subscribe = function(opt_options) {};
142
+
143
+ /** @return {!Promise<PushSubscription>} */
144
+ PushManager.prototype.getSubscription = function() {};
145
+
146
+ /**
147
+ * @param {PushSubscriptionOptionsInit=} options
148
+ * @return {!Promise<string>}
149
+ */
150
+ PushManager.prototype.permissionState = function(options) {};
151
+
152
+ /**
153
+ * @see https://wicg.github.io/BackgroundSync/spec/#sync-manager-interface
154
+ * @constructor
155
+ */
156
+ function SyncManager() {}
157
+
158
+ /**
159
+ * @param {string} tag
160
+ * @return {!Promise<void>}
161
+ */
162
+ SyncManager.prototype.register = function(tag) {}
163
+
164
+ /**
165
+ * @return {!Promise<Array<string>>}
166
+ */
167
+ SyncManager.prototype.getTags = function() {}
168
+
169
+ /**
170
+ * @see https://wicg.github.io/BackgroundSync/spec/#sync-event
171
+ * @constructor
172
+ * @extends{ExtendableEvent}
173
+ */
174
+ function SyncEvent() {}
175
+
176
+ /** @type {string} */
177
+ SyncEvent.prototype.tag;
178
+
179
+ /** @type {boolean} */
180
+ SyncEvent.prototype.lastChance;
181
+
182
+ /**
183
+ * @see http://www.w3.org/TR/push-api/#idl-def-PushMessageData
184
+ * @constructor
185
+ */
186
+ function PushMessageData() {}
187
+
188
+ /** @return {!ArrayBuffer} */
189
+ PushMessageData.prototype.arrayBuffer = function() {};
190
+
191
+ /** @return {!Blob} */
192
+ PushMessageData.prototype.blob = function() {};
193
+
194
+ /** @return {*} */
195
+ PushMessageData.prototype.json = function() {};
196
+
197
+ /** @return {string} */
198
+ PushMessageData.prototype.text = function() {};
199
+
200
+
201
+ /**
202
+ * @see http://www.w3.org/TR/push-api/#idl-def-PushEvent
203
+ * @constructor
204
+ * @param {string} type
205
+ * @param {!ExtendableEventInit=} opt_eventInitDict
206
+ * @extends {ExtendableEvent}
207
+ */
208
+ function PushEvent(type, opt_eventInitDict) {}
209
+
210
+ /** @type {?PushMessageData} */
211
+ PushEvent.prototype.data;
212
+
213
+
214
+ /**
215
+ * @see http://www.w3.org/TR/service-workers/#service-worker-registration-interface
216
+ * @interface
217
+ * @extends {EventTarget}
218
+ */
219
+ function ServiceWorkerRegistration() {}
220
+
221
+ /** @type {ServiceWorker} */
222
+ ServiceWorkerRegistration.prototype.installing;
223
+
224
+ /** @type {ServiceWorker} */
225
+ ServiceWorkerRegistration.prototype.waiting;
226
+
227
+ /** @type {ServiceWorker} */
228
+ ServiceWorkerRegistration.prototype.active;
229
+
230
+ /** @type {NavigationPreloadManager} */
231
+ ServiceWorkerRegistration.prototype.navigationPreload;
232
+
233
+ /** @type {string} */
234
+ ServiceWorkerRegistration.prototype.scope;
235
+
236
+ /** @return {!Promise<boolean>} */
237
+ ServiceWorkerRegistration.prototype.unregister = function() {};
238
+
239
+ /** @type {?function(!Event)} */
240
+ ServiceWorkerRegistration.prototype.onupdatefound;
241
+
242
+ /** @return {!Promise<void>} */
243
+ ServiceWorkerRegistration.prototype.update = function() {};
244
+
245
+ /**
246
+ * @see https://w3c.github.io/push-api/
247
+ * @type {!PushManager}
248
+ */
249
+ ServiceWorkerRegistration.prototype.pushManager;
250
+
251
+ /**
252
+ * @see https://notifications.spec.whatwg.org/#service-worker-api
253
+ * @param {string} title
254
+ * @param {NotificationOptions=} opt_options
255
+ * @return {!Promise<void>}
256
+ */
257
+ ServiceWorkerRegistration.prototype.showNotification =
258
+ function(title, opt_options) {};
259
+
260
+ /**
261
+ * @see https://notifications.spec.whatwg.org/#service-worker-api
262
+ * @param {!GetNotificationOptions=} opt_filter
263
+ * @return {!Promise<?Array<?Notification>>}
264
+ */
265
+ ServiceWorkerRegistration.prototype.getNotifications = function(opt_filter) {};
266
+
267
+ /**
268
+ * @see https://wicg.github.io/BackgroundSync/spec/#service-worker-registration-extensions
269
+ * @type {!SyncManager}
270
+ */
271
+ ServiceWorkerRegistration.prototype.sync;
272
+
273
+ /**
274
+ * @see http://www.w3.org/TR/service-workers/#service-worker-container-interface
275
+ * @interface
276
+ * @extends {EventTarget}
277
+ */
278
+ function ServiceWorkerContainer() {}
279
+
280
+ /** @type {?ServiceWorker} */
281
+ ServiceWorkerContainer.prototype.controller;
282
+
283
+ /** @type {!Promise<!ServiceWorkerRegistration>} */
284
+ ServiceWorkerContainer.prototype.ready;
285
+
286
+ /**
287
+ * @param {!TrustedScriptURL|!URL|string} scriptURL
288
+ * @param {RegistrationOptions=} opt_options
289
+ * @return {!Promise<!ServiceWorkerRegistration>}
290
+ */
291
+ ServiceWorkerContainer.prototype.register = function(scriptURL, opt_options) {};
292
+
293
+ /**
294
+ * @param {!URL|string=} documentURL
295
+ * @return {!Promise<!ServiceWorkerRegistration|undefined>}
296
+ */
297
+ ServiceWorkerContainer.prototype.getRegistration = function(documentURL) {};
298
+
299
+ /**
300
+ * @return {!Promise<Array<!ServiceWorkerRegistration>>}
301
+ */
302
+ ServiceWorkerContainer.prototype.getRegistrations = function() {};
303
+
304
+ /** @type {?function(!Event): void} */
305
+ ServiceWorkerContainer.prototype.oncontrollerchange;
306
+
307
+ /** @type {?function(!ExtendableMessageEvent): void} */
308
+ ServiceWorkerContainer.prototype.onmessage;
309
+
310
+ /** @type {?function(!MessageEvent<*>)} */
311
+ ServiceWorkerContainer.prototype.onmessageerror;
312
+
313
+ /** @type {?function(!ErrorEvent): void} */
314
+ ServiceWorkerContainer.prototype.onerror;
315
+
316
+ /** @return {undefined} */
317
+ ServiceWorkerContainer.prototype.startMessages = function() {};
318
+
319
+ /**
320
+ * @typedef {{scope: (string|undefined), useCache: (boolean|undefined), updateViaCache: (string|undefined)}}
321
+ */
322
+ var RegistrationOptions;
323
+
324
+ /** @type {!ServiceWorkerContainer} */
325
+ Navigator.prototype.serviceWorker;
326
+
327
+ /**
328
+ * @see http://www.w3.org/TR/service-workers/#service-worker-global-scope-interface
329
+ * @interface
330
+ * @extends {WorkerGlobalScope}
331
+ */
332
+ function ServiceWorkerGlobalScope() {}
333
+
334
+ /** @type {!Cache} */
335
+ ServiceWorkerGlobalScope.prototype.scriptCache;
336
+
337
+ /** @type {!CacheStorage} */
338
+ ServiceWorkerGlobalScope.prototype.caches;
339
+
340
+ /** @type {!ServiceWorkerClients} */
341
+ ServiceWorkerGlobalScope.prototype.clients;
342
+
343
+ /** @type {string} */
344
+ ServiceWorkerGlobalScope.prototype.scope;
345
+
346
+ /** @type {!ServiceWorkerRegistration} */
347
+ ServiceWorkerGlobalScope.prototype.registration;
348
+
349
+ /** @return {!Promise<void>} */
350
+ ServiceWorkerGlobalScope.prototype.skipWaiting = function() {};
351
+
352
+ /** @type {!Console} */
353
+ ServiceWorkerGlobalScope.prototype.console;
354
+
355
+ /** @type {?function(!InstallEvent)} */
356
+ ServiceWorkerGlobalScope.prototype.oninstall;
357
+
358
+ /** @type {?function(!ExtendableEvent)} */
359
+ ServiceWorkerGlobalScope.prototype.onactivate;
360
+
361
+ /** @type {?function(!FetchEvent)} */
362
+ ServiceWorkerGlobalScope.prototype.onfetch;
363
+
364
+ /**
365
+ * TODO(mtragut): This handler should get a custom event in the future.
366
+ * @type {?function(!Event)}
367
+ */
368
+ ServiceWorkerGlobalScope.prototype.onbeforeevicted;
369
+
370
+ /**
371
+ * TODO(mtragut): This handler should get a custom event in the future.
372
+ * @type {?function(!Event)}
373
+ */
374
+ ServiceWorkerGlobalScope.prototype.onevicted;
375
+
376
+ /** @type {?function(!MessageEvent)} */
377
+ ServiceWorkerGlobalScope.prototype.onmessage;
378
+
379
+ /**
380
+ * While not strictly correct, this should be effectively correct. Notification
381
+ * is the Notification constructor but calling it from the Service Worker throws
382
+ * (https://notifications.spec.whatwg.org/#constructors) so its only use is as
383
+ * an object holding some static properties (note that requestPermission is only
384
+ * exposed to window context - https://notifications.spec.whatwg.org/#api).
385
+ *
386
+ * @type {{
387
+ * permission: string,
388
+ * maxActions: number,
389
+ * }}
390
+ */
391
+ ServiceWorkerGlobalScope.prototype.Notification;
392
+
393
+ /**
394
+ * @see http://www.w3.org/TR/service-workers/#service-worker-client-interface
395
+ * @constructor
396
+ */
397
+ function ServiceWorkerClient() {}
398
+
399
+ /** @type {!Promise<void>} */
400
+ ServiceWorkerClient.prototype.ready;
401
+
402
+ /** @type {boolean} */
403
+ ServiceWorkerClient.prototype.hidden;
404
+
405
+ /** @type {boolean} */
406
+ ServiceWorkerClient.prototype.focused;
407
+
408
+ /** @type {VisibilityState} */
409
+ ServiceWorkerClient.prototype.visibilityState;
410
+
411
+ /** @type {string} */
412
+ ServiceWorkerClient.prototype.url;
413
+
414
+ /** @type {string} */
415
+ ServiceWorkerClient.prototype.id;
416
+
417
+ /**
418
+ * // TODO(mtragut): Possibly replace the type with enum ContextFrameType once
419
+ * the enum is defined.
420
+ * @type {string}
421
+ */
422
+ ServiceWorkerClient.prototype.frameType;
423
+
424
+ /**
425
+ * @param {*} message
426
+ * @param {(!Array<!Transferable>|undefined)=} opt_transfer
427
+ * @return {undefined}
428
+ */
429
+ ServiceWorkerClient.prototype.postMessage = function(message, opt_transfer) {};
430
+
431
+ /** @return {!Promise} */
432
+ ServiceWorkerClient.prototype.focus = function() {};
433
+
434
+ /**
435
+ * @param {!URL|string} url
436
+ * @return {!Promise<!ServiceWorkerClient>}
437
+ */
438
+ ServiceWorkerClient.prototype.navigate = function(url) {};
439
+
440
+ /**
441
+ * @see http://www.w3.org/TR/service-workers/#service-worker-clients-interface
442
+ * @interface
443
+ */
444
+ function ServiceWorkerClients() {}
445
+
446
+ /**
447
+ * Deprecated in Chrome M43+, use matchAll instead. Reference:
448
+ * https://github.com/slightlyoff/ServiceWorker/issues/610.
449
+ * TODO(joeltine): Remove when getAll is fully deprecated.
450
+ * @param {ServiceWorkerClientQueryOptions=} opt_options
451
+ * @return {!Promise<!Array<!ServiceWorkerClient>>}
452
+ */
453
+ ServiceWorkerClients.prototype.getAll = function(opt_options) {};
454
+
455
+ /**
456
+ * @param {ServiceWorkerClientQueryOptions=} opt_options
457
+ * @return {!Promise<!Array<!ServiceWorkerClient>>}
458
+ */
459
+ ServiceWorkerClients.prototype.matchAll = function(opt_options) {};
460
+
461
+ /**
462
+ * @return {!Promise<void>}
463
+ */
464
+ ServiceWorkerClients.prototype.claim = function() {};
465
+
466
+ /**
467
+ * @param {!URL|string} url
468
+ * @return {!Promise<!ServiceWorkerClient>}
469
+ */
470
+ ServiceWorkerClients.prototype.openWindow = function(url) {};
471
+
472
+ /**
473
+ * @param {string} id
474
+ * @return {!Promise<!ServiceWorkerClient|undefined>}
475
+ */
476
+ ServiceWorkerClients.prototype.get = function(id) {};
477
+
478
+ /** @typedef {{includeUncontrolled: (boolean|undefined)}} */
479
+ var ServiceWorkerClientQueryOptions;
480
+
481
+ /**
482
+ * @see http://www.w3.org/TR/service-workers/#cache-interface
483
+ * @interface
484
+ */
485
+ function Cache() {}
486
+
487
+ /**
488
+ * @param {!RequestInfo} request
489
+ * @param {CacheQueryOptions=} opt_options
490
+ * @return {!Promise<!Response|undefined>}
491
+ */
492
+ Cache.prototype.match = function(request, opt_options) {};
493
+
494
+ /**
495
+ * @param {RequestInfo=} opt_request
496
+ * @param {CacheQueryOptions=} opt_options
497
+ * @return {!Promise<!Array<!Response>>}
498
+ */
499
+ Cache.prototype.matchAll = function(opt_request, opt_options) {};
500
+
501
+ /**
502
+ * @param {!RequestInfo} request
503
+ * @return {!Promise<void>}
504
+ */
505
+ Cache.prototype.add = function(request) {};
506
+
507
+ /**
508
+ * @param {!Array<!RequestInfo>} requests
509
+ * @return {!Promise<void>}
510
+ */
511
+ Cache.prototype.addAll = function(requests) {};
512
+
513
+ /**
514
+ * @param {!RequestInfo} request
515
+ * @param {!Response} response
516
+ * @return {!Promise<void>}
517
+ */
518
+ Cache.prototype.put = function(request, response) {};
519
+
520
+ /**
521
+ * @param {!RequestInfo} request
522
+ * @param {CacheQueryOptions=} opt_options
523
+ * @return {!Promise<boolean>}
524
+ */
525
+ Cache.prototype.delete = function(request, opt_options) {};
526
+
527
+ /**
528
+ * @param {RequestInfo=} opt_request
529
+ * @param {CacheQueryOptions=} opt_options
530
+ * @return {!Promise<!Array<!Request>>}
531
+ */
532
+ Cache.prototype.keys = function(opt_request, opt_options) {};
533
+
534
+ /**
535
+ * @typedef {{
536
+ * ignoreSearch: (boolean|undefined),
537
+ * ignoreMethod: (boolean|undefined),
538
+ * ignoreVary: (boolean|undefined),
539
+ * prefixMatch: (boolean|undefined),
540
+ * cacheName: (string|undefined)
541
+ * }}
542
+ */
543
+ var CacheQueryOptions;
544
+
545
+ /**
546
+ * @see http://www.w3.org/TR/service-workers/#cache-storage-interface
547
+ * @interface
548
+ */
549
+ function CacheStorage() {}
550
+
551
+ /**
552
+ * Window instances have a property called caches which implements CacheStorage
553
+ * @see https://www.w3.org/TR/service-workers/#cache-objects
554
+ * @type {!CacheStorage}
555
+ */
556
+ Window.prototype.caches;
557
+
558
+ /**
559
+ * @param {!RequestInfo} request
560
+ * @param {CacheQueryOptions=} opt_options
561
+ * @return {!Promise<!Response|undefined>}
562
+ */
563
+ CacheStorage.prototype.match = function(request, opt_options) {};
564
+
565
+ /**
566
+ * @param {string} cacheName
567
+ * @return {!Promise<boolean>}
568
+ */
569
+ CacheStorage.prototype.has = function(cacheName) {};
570
+
571
+ /**
572
+ * @param {string} cacheName
573
+ * @return {!Promise<!Cache>}
574
+ */
575
+ CacheStorage.prototype.open = function(cacheName) {};
576
+
577
+ /**
578
+ * @param {string} cacheName
579
+ * @return {!Promise<boolean>}
580
+ */
581
+ CacheStorage.prototype.delete = function(cacheName) {};
582
+
583
+ /** @return {!Promise<!Array<string>>} */
584
+ CacheStorage.prototype.keys = function() {};
585
+
586
+ /**
587
+ * @see http://www.w3.org/TR/service-workers/#extendable-event-interface
588
+ * @constructor
589
+ * @param {string} type
590
+ * @param {ExtendableEventInit=} opt_eventInitDict
591
+ * @extends {Event}
592
+ */
593
+ function ExtendableEvent(type, opt_eventInitDict) {}
594
+
595
+ /**
596
+ * @param {IThenable} f
597
+ * @return {undefined}
598
+ */
599
+ ExtendableEvent.prototype.waitUntil = function(f) {};
600
+
601
+ /**
602
+ * @typedef {{
603
+ * bubbles: (boolean|undefined),
604
+ * cancelable: (boolean|undefined)
605
+ * }}
606
+ */
607
+ var ExtendableEventInit;
608
+
609
+ /**
610
+ * @see http://www.w3.org/TR/service-workers/#install-event-interface
611
+ * @constructor
612
+ * @param {string} type
613
+ * @param {InstallEventInit=} opt_eventInitDict
614
+ * @extends {ExtendableEvent}
615
+ */
616
+ function InstallEvent(type, opt_eventInitDict) {}
617
+
618
+ /** @type {ServiceWorker} */
619
+ ExtendableEvent.prototype.activeWorker;
620
+
621
+ /**
622
+ * @typedef {{
623
+ * bubbles: (boolean|undefined),
624
+ * cancelable: (boolean|undefined),
625
+ * activeWorker: (!ServiceWorker|undefined)
626
+ * }}
627
+ */
628
+ var InstallEventInit;
629
+
630
+ /**
631
+ * @see http://www.w3.org/TR/service-workers/#fetch-event-interface
632
+ * @constructor
633
+ * @param {string} type
634
+ * @param {FetchEventInit=} opt_eventInitDict
635
+ * @extends {ExtendableEvent}
636
+ */
637
+ function FetchEvent(type, opt_eventInitDict) {}
638
+
639
+ /** @type {!Request} */
640
+ FetchEvent.prototype.request;
641
+
642
+ /**
643
+ * @type {!Promise<Response>}
644
+ */
645
+ FetchEvent.prototype.preloadResponse;
646
+
647
+ /**
648
+ * @type {!ServiceWorkerClient}
649
+ * @deprecated
650
+ */
651
+ FetchEvent.prototype.client;
652
+
653
+ /** @type {?string} */
654
+ FetchEvent.prototype.clientId;
655
+
656
+ /** @type {boolean} */
657
+ FetchEvent.prototype.isReload;
658
+
659
+ /** @type {?string} */
660
+ FetchEvent.prototype.resultingClientId;
661
+
662
+ /**
663
+ * @param {(Response|IThenable<Response>)} r
664
+ * @return {undefined}
665
+ */
666
+ FetchEvent.prototype.respondWith = function(r) {};
667
+
668
+ /**
669
+ * @param {string} url
670
+ * @return {!Promise<!Response>}
671
+ */
672
+ FetchEvent.prototype.forwardTo = function(url) {};
673
+
674
+ /**
675
+ * @return {!Promise<!Response>}
676
+ */
677
+ FetchEvent.prototype.default = function() {};
678
+
679
+ /**
680
+ * @typedef {{
681
+ * bubbles: (boolean|undefined),
682
+ * cancelable: (boolean|undefined),
683
+ * request: (!Request|undefined),
684
+ * preloadResponse: (!Promise<Response>),
685
+ * client: (!ServiceWorkerClient|undefined),
686
+ * isReload: (boolean|undefined)
687
+ * }}
688
+ */
689
+ var FetchEventInit;
690
+
691
+
692
+ /**
693
+ * @see https://www.w3.org/TR/service-workers/#extendablemessage-event-interface
694
+ * @param {string} type
695
+ * @param {!ExtendableMessageEventInit<T>=} opt_eventInitDict
696
+ * @constructor
697
+ * @extends {ExtendableEvent}
698
+ * @template T
699
+ */
700
+ function ExtendableMessageEvent(type, opt_eventInitDict) {};
701
+
702
+ /** @type {T} */
703
+ ExtendableMessageEvent.prototype.data;
704
+
705
+ /** @type {string} */
706
+ ExtendableMessageEvent.prototype.origin;
707
+
708
+ /** @type {string} */
709
+ ExtendableMessageEvent.prototype.lastEventId;
710
+
711
+ /** @type {?ServiceWorkerClient|?ServiceWorker|?MessagePort} */
712
+ ExtendableMessageEvent.prototype.source;
713
+
714
+ /** @type {?Array<!MessagePort>} */
715
+ ExtendableMessageEvent.prototype.ports;
716
+
717
+
718
+ /**
719
+ * @see https://www.w3.org/TR/service-workers/#extendablemessage-event-init-dictionary
720
+ * @record
721
+ * @extends {ExtendableEventInit}
722
+ * @template T
723
+ */
724
+ function ExtendableMessageEventInit() {};
725
+
726
+ /** @type {T} */
727
+ ExtendableMessageEventInit.prototype.data;
728
+
729
+ /** @type {string|undefined} */
730
+ ExtendableMessageEventInit.prototype.origin;
731
+
732
+ /** @type {string|undefined} */
733
+ ExtendableMessageEventInit.prototype.lastEventId;
734
+
735
+ /** @type {!ServiceWorkerClient|!ServiceWorker|!MessagePort|undefined} */
736
+ ExtendableMessageEventInit.prototype.source;
737
+
738
+ /** @type {!Array<!MessagePort>|undefined} */
739
+ ExtendableMessageEventInit.prototype.ports;