Source code
Revision control
Copy as Markdown
Other Tools
// Note: although this file is specific to the MV2-only userScripts API, the
// file also specifies "userScripts" in the permissions key of the userScripts
// namespace because user_scripts.json also specifies the "permissions" key,
// and if specified, both keys must have the same value.
[
{
"namespace": "userScripts",
"permissions": ["manifest:user_scripts", "userScripts"],
"allowedContexts": ["content"],
"events": [
{
"name": "onBeforeScript",
"max_manifest_version": 2,
"permissions": ["manifest:user_scripts.api_script"],
"allowedContexts": ["content", "content_only"],
"type": "function",
"description": "Event called when a new userScript global has been created",
"parameters": [
{
"type": "object",
"name": "userScript",
"properties": {
"metadata": {
"type": "any",
"description": "The userScript metadata (as set in userScripts.register)"
},
"global": {
"type": "any",
"description": "The userScript global"
},
"defineGlobals": {
"type": "function",
"description": "Exports all the properties of a given plain object as userScript globals",
"parameters": [
{
"type": "object",
"name": "sourceObject",
"description": "A plain object whose properties are exported as userScript globals"
}
]
},
"export": {
"type": "function",
"description": "Convert a given value to make it accessible to the userScript code",
"parameters": [
{
"type": "any",
"name": "value",
"description": "A value to convert into an object accessible to the userScript"
}
],
"returns": {
"type": "any"
}
}
}
}
]
}
]
}
]