Disable view source for Developer Tools.
[chromium-blink-merge.git] / chrome / common / extensions / api / _api_features.json
blob7dc46e440220a06dbfe668864646dae39707cc28
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // See c/c/e/features/* to understand this file, in particular feature.h,
6 // simple_feature.h, and base_feature_provider.h.
7 //
8 // Note that specifying "web_page", "blessed_web_page", or "all" as a context
9 // type will require manually updating chrome/renderer/resources/dispatcher.cc.
12   "activityLogPrivate": {
13     "dependencies": ["permission:activityLogPrivate"],
14     "contexts": ["blessed_extension"]
15   },
16   "adview": {
17     "dependencies": ["permission:adview"],
18     "contexts": ["blessed_extension"]
19   },
20   "alarms": {
21     "dependencies": ["permission:alarms"],
22     "contexts": ["blessed_extension"]
23   },
24   "app": {
25     "channel": "stable",
26     "extension_types": ["hosted_app", "extension", "legacy_packaged_app"],
27     "contexts": [
28       "blessed_extension",
29       "unblessed_extension",
30       "content_script",
31       "web_page",
32       "blessed_web_page"
33     ],
34     "matches": [
35       "http://*/*", "https://*/*", "chrome-extension://*/*", "file://*/*"
36     ]
37   },
38   "app.runtime": {
39     "noparent": true,
40     "contexts": ["blessed_extension"],
41     "dependencies": ["permission:app.runtime"]
42   },
43   "app.window": {
44     "noparent": true,
45     "contexts": ["blessed_extension"],
46     "dependencies": ["permission:app.window"]
47   },
48   "app.currentWindowInternal": {
49     "noparent": true,
50     "internal": true,
51     "channel": "stable",
52     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
53   },
54   "app.getDetails": {
55     "contexts": ["blessed_extension", "unblessed_extension", "content_script"],
56     "matches": []
57   },
58   "app.getDetailsForFrame": {
59     "contexts": ["blessed_extension", "unblessed_extension", "content_script"],
60     "matches": []
61   },
62   "app.getIsInstalled": {
63     "contexts": ["blessed_extension", "unblessed_extension", "content_script"],
64     "matches": []
65   },
66   "app.installState": {
67     "contexts": ["blessed_extension", "unblessed_extension", "content_script"],
68     "matches": []
69   },
70   "app.runningState": {
71     "contexts": ["blessed_extension", "unblessed_extension", "content_script"],
72     "matches": []
73   },
74   "audio": {
75     "dependencies": ["permission:audio"],
76     "contexts": ["blessed_extension"]
77   },
78   "autotestPrivate": {
79     "dependencies": ["permission:autotestPrivate"],
80     "contexts": ["blessed_extension"]
81   },
82   "bluetooth": {
83     "dependencies": ["permission:bluetooth"],
84     "contexts": ["blessed_extension"]
85   },
86   "bookmarkManagerPrivate": {
87     "dependencies": ["permission:bookmarkManagerPrivate"],
88     "contexts": ["blessed_extension"]
89   },
90   "bookmarks": {
91     "dependencies": ["permission:bookmarks"],
92     "contexts": ["blessed_extension"]
93   },
94   "bookmarks.export": {
95     "extension_types": ["extension"],
96     "location": "component"
97   },
98   "bookmarks.import": {
99     "extension_types": ["extension"],
100     "location": "component"
101   },
102   "brailleDisplayPrivate": {
103     "dependencies": ["permission:brailleDisplayPrivate"],
104     "contexts": ["blessed_extension"]
105   },
106   "browserAction": {
107     "dependencies": ["manifest:browser_action"],
108     "contexts": ["blessed_extension"]
109   },
110   // This API is whitelisted on stable and should not be enabled for a wider
111   // audience without resolving security issues raised in API proposal and
112   // review (https://codereview.chromium.org/25305002).
113   "browserAction.openPopup": [{
114     "channel": "dev",
115     "dependencies": ["manifest:browser_action"],
116     "contexts": ["blessed_extension"]
117   }, {
118     "channel": "stable",
119     "dependencies": ["manifest:browser_action"],
120     "whitelist": [
121       "enhhojjnijigcajfphajepfemndkmdlo",  // Dev
122       "pkedcjkdefgpdelpbcmbmeomcjbeemfm",  // Trusted Tester
123       "fmfcbgogabcbclcofgocippekhfcmgfj",  // Staging
124       "hfaagokkkhdbgiakmmlclaapfelnkoah",  // Canary
125       "F155646B5D1CA545F7E1E4E20D573DFDD44C2540",  // Trusted Tester (public)
126       "16CA7A47AAE4BE49B1E75A6B960C3875E945B264"   // Release
127     ],
128     "contexts": ["blessed_extension"]
129   }],
130   "browsingData": {
131     "dependencies": ["permission:browsingData"],
132     "contexts": ["blessed_extension"]
133   },
134   "cast.channel": {
135     "dependencies": ["permission:cast"],
136     "contexts": ["blessed_extension"]
137   },
138   "cast.streaming.rtpStream": {
139     "dependencies": ["permission:cast.streaming"],
140     "contexts": ["blessed_extension"]
141   },
142   "cast.streaming.session": {
143     "dependencies": ["permission:cast.streaming"],
144     "contexts": ["blessed_extension"]
145   },
146   "cast.streaming.udpTransport": {
147     "dependencies": ["permission:cast.streaming"],
148     "contexts": ["blessed_extension"]
149   },
150   "chromeosInfoPrivate": {
151     "platforms": ["chromeos"],
152     "dependencies": ["permission:chromeosInfoPrivate"],
153     "contexts": ["blessed_extension"]
154   },
155   "cloudPrintPrivate": {
156     "dependencies": ["permission:cloudPrintPrivate"],
157     "contexts": ["blessed_extension"]
158   },
159   "commandLinePrivate": {
160     "dependencies": ["permission:commandLinePrivate"],
161     "contexts": ["blessed_extension"]
162   },
163   "commands": {
164     "dependencies": ["manifest:commands"],
165     "contexts": ["blessed_extension"]
166   },
167   "contentSettings": {
168     "dependencies": ["permission:contentSettings"],
169     "contexts": ["blessed_extension"]
170   },
171   "contextMenus": {
172     "dependencies": ["permission:contextMenus"],
173     "contexts": ["blessed_extension"]
174   },
175   "cookies": {
176     "dependencies": ["permission:cookies"],
177     "contexts": ["blessed_extension"]
178   },
179   "debugger": {
180     "dependencies": ["permission:debugger"],
181     "contexts": ["blessed_extension"]
182   },
183   "declarativeContent": {
184     "dependencies": ["permission:declarativeContent"],
185     "contexts": ["blessed_extension"]
186   },
187   "declarativeWebRequest": {
188     "dependencies": ["permission:declarativeWebRequest"],
189     "contexts": ["blessed_extension"]
190   },
191   "desktopCapture": {
192     "dependencies": ["permission:desktopCapture"],
193     "contexts": ["blessed_extension"]
194   },
195   "developerPrivate": {
196     "dependencies": ["permission:developerPrivate"],
197     "contexts": ["blessed_extension"]
198   },
199   "devtools.inspectedWindow": {
200     "dependencies": ["manifest:devtools_page"],
201     "contexts": ["blessed_extension"]
202   },
203   "devtools.network": {
204     "dependencies": ["manifest:devtools_page"],
205     "contexts": ["blessed_extension"]
206   },
207   "devtools.panels": {
208     "dependencies": ["manifest:devtools_page"],
209     "contexts": ["blessed_extension"]
210   },
211   "diagnostics": {
212     "dependencies": ["permission:diagnostics"],
213     "extension_types": ["platform_app"],
214     "contexts": ["blessed_extension"]
215   },
216   "dial": {
217     "dependencies": ["permission:dial"],
218     "contexts": ["blessed_extension"]
219   },
220   "dns": {
221     "dependencies": ["permission:dns"],
222     "contexts": ["blessed_extension"]
223   },
224   "downloads": {
225     "dependencies": ["permission:downloads"],
226     "contexts": ["blessed_extension"]
227   },
228   "downloadsInternal": {
229     "internal": true,
230     "channel": "stable",
231     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
232   },
233   "echoPrivate": {
234     "platforms": ["chromeos"],
235     "dependencies": ["permission:echoPrivate"],
236     "contexts": ["blessed_extension"]
237   },
238   "enterprise.platformKeysPrivate": {
239     "platforms": ["chromeos"],
240     "dependencies": ["permission:enterprise.platformKeysPrivate"],
241     "contexts": ["blessed_extension"]
242   },
243   "events": {
244     "internal": true,
245     "channel": "stable",
246     "extension_types": ["platform_app", "extension"],
247     "contexts": "all",
248     "matches": ["<all_urls>"]
249   },
250   "experimental.accessibility": {
251     "dependencies": ["permission:experimental"],
252     "contexts": ["blessed_extension"]
253   },
254   "experimental.devtools.audits": {
255     "dependencies": ["permission:experimental", "manifest:devtools_page"],
256     "extension_types": ["platform_app"],
257     "contexts": ["blessed_extension"]
258   },
259   "experimental.devtools.console": {
260     "dependencies": ["permission:experimental", "manifest:devtools_page"],
261     "extension_types": ["platform_app"],
262     "contexts": ["blessed_extension"]
263   },
264   "extension": {
265     "channel": "stable",
266     "extension_types": ["extension", "legacy_packaged_app"],
267     "contexts": ["blessed_extension"]
268   },
269   "extension.getURL": {
270     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
271   },
272   "extension.inIncognitoContext": {
273     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
274   },
275   "extension.lastError": {
276     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
277   },
278   "extension.onRequest": {
279     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
280   },
281   "extension.sendNativeMessage": {
282     "dependencies": ["permission:nativeMessaging"]
283   },
284   "extension.sendRequest": {
285     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
286   },
287   "feedbackPrivate": {
288     "dependencies": ["permission:feedbackPrivate"],
289     "contexts": ["blessed_extension"]
290   },
291   "fileBrowserHandler": {
292     "platforms": ["chromeos"],
293     "dependencies": ["permission:fileBrowserHandler"],
294     "contexts": ["blessed_extension"]
295   },
296   "fileBrowserHandlerInternal": {
297     "internal": true,
298     "platforms": ["chromeos"],
299     "channel": "stable",
300     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
301   },
302   "screenlockPrivate": {
303     "platforms": ["chromeos"],
304     "dependencies": ["permission:screenlockPrivate"],
305     "extension_types": ["platform_app"],
306     "contexts": ["blessed_extension", "unblessed_extension"]
307   },
308   "fileBrowserPrivate": {
309     "platforms": ["chromeos"],
310     "dependencies": ["permission:fileBrowserPrivate"],
311     "contexts": ["blessed_extension"]
312   },
313   "fileSystem": {
314     "dependencies": ["permission:fileSystem"],
315     "contexts": ["blessed_extension"]
316   },
317   "fileSystemProvider": {
318     "dependencies": ["permission:fileSystemProvider"],
319     "contexts": ["blessed_extension"]
320   },
321   "firstRunPrivate": {
322     "platforms": ["chromeos"],
323     "dependencies": ["permission:firstRunPrivate"],
324     "contexts": ["blessed_extension"]
325   },
326   "fontSettings": {
327     "dependencies": ["permission:fontSettings"],
328     "contexts": ["blessed_extension"]
329   },
330   "gcm": {
331     "dependencies": ["permission:gcm"],
332     "contexts": ["blessed_extension"]
333   },
334   "hangoutsPrivate": {
335     "channel": "stable",
336     "contexts": ["blessed_extension"],
337     "whitelist": [
338       // http://crbug.com/309737
339       "nckgahadagoaajjgafhacjanaoiihapd",
340       "ljclpkphhpbpinifbeabbhlfddcpfdde",
341       "ppleadejekpmccmnpjdimmlfljlkdfej",
342       "eggnbpckecmjlblplehfpjjdhhidfdoj"
343     ]
344   },
345   "history": {
346     "dependencies": ["permission:history"],
347     "contexts": ["blessed_extension"]
348   },
349   "i18n": {
350     "channel": "stable",
351     "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
352     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
353   },
354   "identity": {
355     "dependencies": ["permission:identity"],
356     "contexts": ["blessed_extension"]
357   },
358   "identityPrivate": {
359     "dependencies": ["permission:identityPrivate"],
360     "contexts": ["blessed_extension"]
361   },
362   "idltest": {
363     "dependencies": ["permission:idltest"],
364     "contexts": ["blessed_extension"]
365   },
366   "idle": {
367     "dependencies": ["permission:idle"],
368     "contexts": ["blessed_extension"]
369   },
370   "infobars": {
371     "dependencies": ["permission:infobars"],
372     "contexts": ["blessed_extension"]
373   },
374   "input.ime": {
375     "platforms": ["chromeos"],
376     "dependencies": ["permission:input"],
377     "contexts": ["blessed_extension"]
378   },
379   "inputMethodPrivate": {
380     "platforms": ["chromeos"],
381     "dependencies": ["permission:inputMethodPrivate"],
382     "contexts": ["blessed_extension"]
383   },
384   "location": {
385     "dependencies": ["permission:location"],
386     "contexts": ["blessed_extension"]
387   },
388   "logPrivate": {
389     "dependencies": ["permission:logPrivate"],
390     "extension_types": ["extension", "legacy_packaged_app"],
391     "contexts": ["blessed_extension"]
392   },
393   "management": {
394     "dependencies": ["permission:management"],
395     "contexts": ["blessed_extension"]
396   },
397   "management.getPermissionWarningsByManifest": {
398     "dependencies": [],
399     "channel": "stable",
400     "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
401   },
402   "management.uninstallSelf": {
403     "dependencies": [],
404     "channel": "stable",
405     "extension_types": ["extension", "legacy_packaged_app", "platform_app"]
406   },
407   // This is not a real API, only here for documentation purposes.
408   // See http://crbug.com/275944 for background.
409   "manifestTypes": {
410     "internal": true,
411     "channel": "stable",
412     "contexts": ["blessed_extension"]
413   },
414   "mediaGalleries": {
415     "dependencies": ["permission:mediaGalleries"],
416     "contexts": ["blessed_extension"]
417   },
418   "mediaGalleries.getMetadata": {
419     "channel": "dev",
420     "dependencies": ["permission:mediaGalleries"],
421     "contexts": ["blessed_extension"]
422   },
423   "mediaGalleries.startMediaScan": {
424     "channel": "dev",
425     "dependencies": ["permission:mediaGalleries"],
426     "contexts": ["blessed_extension"]
427   },
428   "mediaGalleries.cancelMediaScan": {
429     "channel": "dev",
430     "dependencies": ["permission:mediaGalleries"],
431     "contexts": ["blessed_extension"]
432   },
433   "mediaGalleries.addScanResults": {
434     "channel": "dev",
435     "dependencies": ["permission:mediaGalleries"],
436     "contexts": ["blessed_extension"]
437   },
438   "mediaGalleries.onScanProgress": {
439     "channel": "dev",
440     "dependencies": ["permission:mediaGalleries"],
441     "contexts": ["blessed_extension"]
442   },
443   "mediaGalleriesPrivate": {
444     "dependencies": ["permission:mediaGalleriesPrivate"],
445     "contexts": ["blessed_extension"]
446   },
447   "mediaPlayerPrivate": {
448     "platforms": ["chromeos"],
449     "dependencies": ["permission:mediaPlayerPrivate"],
450     "contexts": ["blessed_extension"]
451   },
452   "metricsPrivate": {
453     "dependencies": ["permission:metricsPrivate"],
454     "contexts": ["blessed_extension"]
455   },
456   "mdns": {
457     "dependencies": ["permission:mdns"],
458     "contexts": ["blessed_extension"]
459   },
460   "musicManagerPrivate": {
461     "dependencies": ["permission:musicManagerPrivate"],
462     "contexts": ["blessed_extension"]
463   },
464   "networkingPrivate": {
465     "platforms": ["chromeos", "win"],
466     "dependencies": ["permission:networkingPrivate"],
467     "contexts": ["blessed_extension"]
468   },
469   "notifications": {
470     "dependencies": ["permission:notifications"],
471     "contexts": ["blessed_extension"]
472   },
473   "omnibox": {
474     "dependencies": ["manifest:omnibox"],
475     "contexts": ["blessed_extension"]
476   },
477   "pageAction": {
478     "dependencies": ["manifest:page_action"],
479     "contexts": ["blessed_extension"]
480   },
481   "pageActions": {
482     "dependencies": ["manifest:page_actions"],
483     "contexts": ["blessed_extension"]
484   },
485   "pageCapture": {
486     "dependencies": ["permission:pageCapture"],
487     "contexts": ["blessed_extension"]
488   },
489   "permissions": {
490     "channel": "stable",
491     "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
492     "contexts": ["blessed_extension"]
493   },
494   "power": {
495     "dependencies": ["permission:power"],
496     "contexts": ["blessed_extension"]
497   },
498   "preferencesPrivate": {
499     "dependencies": ["permission:preferencesPrivate"],
500     "contexts": ["blessed_extension"]
501   },
502   "principalsPrivate": {
503     "dependencies": ["permission:principalsPrivate"],
504     "contexts": ["blessed_extension"]
505   },
506   "privacy": {
507     "dependencies": ["permission:privacy"],
508     "contexts": ["blessed_extension"]
509   },
510   "processes": {
511     "dependencies": ["permission:processes"],
512     "contexts": ["blessed_extension"]
513   },
514   "proxy": {
515     "dependencies": ["permission:proxy"],
516     "contexts": ["blessed_extension"]
517   },
518   "pushMessaging": {
519     "dependencies": ["permission:pushMessaging"],
520     "contexts": ["blessed_extension"]
521   },
522   "imageWriterPrivate": {
523     "dependencies": ["permission:imageWriterPrivate"],
524     "extension_types": ["platform_app"],
525     "contexts": ["blessed_extension"]
526   },
527   "readingListPrivate": {
528     "dependencies": ["permission:readingListPrivate"],
529     "contexts": ["blessed_extension"]
530   },
531   "rtcPrivate": {
532     "dependencies": ["permission:rtcPrivate"],
533     "contexts": ["blessed_extension"]
534   },
535   "runtime": {
536     "channel": "stable",
537     "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
538     "contexts": ["blessed_extension"]
539   },
540   "runtime.connect": {
541     "contexts": "all",
542     "matches": ["<all_urls>"]
543   },
544   "runtime.getManifest": {
545     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
546   },
547   "runtime.getURL": {
548     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
549   },
550   "runtime.id": {
551     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
552   },
553   "runtime.lastError": {
554     "contexts": "all",
555     "extension_types": "all",
556     "matches": ["<all_urls>"]
557   },
558   "runtime.onConnect": {
559     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
560   },
561   "runtime.onMessage": {
562     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
563   },
564   "runtime.reload": {
565     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
566   },
567   "runtime.requestUpdateCheck": {
568     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
569   },
570   "runtime.sendMessage": {
571     "contexts": "all",
572     "matches": ["<all_urls>"]
573   },
574   "runtime.setUninstallURL": {
575     "channel": "dev",
576     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
577   },
578   "scriptBadge": {
579     "dependencies": ["manifest:script_badge"],
580     "contexts": ["blessed_extension"]
581   },
582   "serial": {
583     "dependencies": ["permission:serial"],
584     "contexts": ["blessed_extension"]
585   },
586   "sessions": {
587     "dependencies": ["permission:sessions"],
588     "contexts": ["blessed_extension"]
589   },
590   "signedInDevices": {
591     "dependencies": ["permission:signedInDevices"],
592     "contexts": ["blessed_extension"]
593   },
594   "socket": {
595     "dependencies": ["permission:socket"],
596     "contexts": ["blessed_extension"]
597   },
598   "sockets.tcp": {
599     "dependencies": ["manifest:sockets"],
600     "contexts": ["blessed_extension"]
601   },
602   "sockets.tcpServer": {
603     "dependencies": ["manifest:sockets"],
604     "contexts": ["blessed_extension"]
605   },
606   "sockets.udp": {
607     "dependencies": ["manifest:sockets"],
608     "contexts": ["blessed_extension"]
609   },
610   "storage": {
611     "dependencies": ["permission:storage"],
612     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
613   },
614   "streamsPrivate": {
615     "dependencies": ["permission:streamsPrivate"],
616     "contexts": ["blessed_extension"]
617   },
618   "syncFileSystem": {
619     "dependencies": ["permission:syncFileSystem"],
620     "contexts": ["blessed_extension"]
621   },
622   "systemIndicator": {
623     "dependencies": ["manifest:system_indicator"],
624     "contexts": ["blessed_extension"]
625   },
626   "system.cpu": {
627     "dependencies": ["permission:system.cpu"],
628     "contexts": ["blessed_extension"]
629   },
630   "system.display": {
631     "dependencies": ["permission:system.display"],
632     "contexts": ["blessed_extension"]
633   },
634   "system.memory": {
635     "dependencies": ["permission:system.memory"],
636     "contexts": ["blessed_extension"]
637   },
638   "system.network": {
639     "dependencies": ["permission:system.network"],
640     "contexts": ["blessed_extension"]
641   },
642   "system.storage": {
643     "dependencies": ["permission:system.storage"],
644     "contexts": ["blessed_extension"]
645   },
646   "system.storage.getAvailableCapacity": {
647     "channel": "dev"
648   },
649   "systemPrivate": {
650     "dependencies": ["permission:systemPrivate"],
651     "contexts": ["blessed_extension"]
652   },
653   "tabCapture": {
654     "dependencies": ["permission:tabCapture"],
655     "contexts": ["blessed_extension"]
656   },
657   "tabs": {
658     "channel": "stable",
659     "extension_types": ["extension", "legacy_packaged_app"],
660     "contexts": ["blessed_extension"]
661   },
662   "terminalPrivate": {
663     "platforms": ["chromeos"],
664     "dependencies": ["permission:terminalPrivate"],
665     "contexts": ["blessed_extension"]
666   },
667   "test": {
668     "channel": "stable",
669     "extension_types": "all",
670     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
671   },
672   "topSites": {
673     "dependencies": ["permission:topSites"],
674     "contexts": ["blessed_extension"]
675   },
676   "tts": {
677     "dependencies": ["permission:tts"],
678     "contexts": ["blessed_extension"]
679   },
680   "ttsEngine": {
681     "dependencies": ["permission:ttsEngine"],
682     "contexts": ["blessed_extension"]
683   },
684   "types": {
685     "channel": "stable",
686     "extension_types": ["extension", "legacy_packaged_app", "platform_app"],
687     "contexts": ["blessed_extension"]
688   },
689   "types.private": {
690     "channel": "dev",
691     "extension_types": ["extension"],
692     "location": "component"
693   },
694   "usb": {
695     "dependencies": ["permission:usb"],
696     "contexts": ["blessed_extension"]
697   },
698   "virtualKeyboardPrivate": {
699     "platforms": ["chromeos"],
700     "dependencies": ["permission:virtualKeyboardPrivate"],
701     "contexts": ["blessed_extension"]
702   },
703   "wallpaper": {
704     "platforms": ["chromeos"],
705     "dependencies": ["permission:wallpaper"],
706     "contexts": ["blessed_extension"]
707   },
708   "wallpaperPrivate": {
709     "platforms": ["chromeos"],
710     "dependencies": ["permission:wallpaperPrivate"],
711     "contexts": ["blessed_extension"]
712   },
713   "webNavigation": {
714     "dependencies": ["permission:webNavigation"],
715     "contexts": ["blessed_extension"]
716   },
717   "webRequest": {
718     "dependencies": ["permission:webRequest"],
719     "contexts": ["blessed_extension"]
720   },
721   "webRequestInternal": {
722     "internal": true,
723     "channel": "stable",
724     "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
725   },
726   "webrtcAudioPrivate": {
727     "dependencies": ["permission:webrtcAudioPrivate"],
728     "contexts": ["blessed_extension"]
729   },
730   "webrtcLoggingPrivate": {
731     "dependencies": ["permission:webrtcLoggingPrivate"],
732     "contexts": ["blessed_extension"]
733   },
734   "webstore": {
735     // Hosted apps can use the webstore API from within a blessed context.
736     "channel": "stable",
737     "extension_types": ["hosted_app"],
738     "contexts": ["blessed_web_page", "web_page"],
739     // Any webpage can use the webstore API.
740     "matches": ["http://*/*", "https://*/*"]
741   },
742   "webstorePrivate": {
743     "dependencies": ["permission:webstorePrivate"],
744     "contexts": ["blessed_extension"]
745   },
746   "webview": {
747     "internal": true,
748     "dependencies": ["permission:webview"],
749     "contexts": ["blessed_extension", "unblessed_extension"]
750   },
751   "webViewRequest": {
752     "dependencies": ["permission:webview"],
753     "contexts": ["blessed_extension", "unblessed_extension"]
754   },
755   "webviewTag": {
756     "internal": true,
757     "channel": "stable",
758     "dependencies": ["permission:webview"],
759     "contexts": ["blessed_extension"]
760   },
761   "windows": {
762     "dependencies": ["api:tabs"],
763     "contexts": ["blessed_extension"]
764   }