141 lines
4.0 KiB
JSON
141 lines
4.0 KiB
JSON
[
|
|
{
|
|
"namespace": "permissions",
|
|
"description": "A test API for the json_schema_compiler.",
|
|
"types": [
|
|
{
|
|
"id": "Permissions",
|
|
"type": "object",
|
|
"properties": {
|
|
"permissions": {
|
|
"type": "array",
|
|
"items": {"type": "string"},
|
|
"optional": true,
|
|
"description": "List of named permissions (does not include hosts or origins)."
|
|
},
|
|
"origins": {
|
|
"type": "array",
|
|
"items": {"type": "string"},
|
|
"optional": true,
|
|
"description": "List of origin permissions."
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"events": [
|
|
{
|
|
"name": "onAdded",
|
|
"type": "function",
|
|
"description": "Fired when the extension acquires new permissions.",
|
|
"parameters": [
|
|
{
|
|
"$ref": "Permissions",
|
|
"name": "permissions",
|
|
"description": "The newly acquired permissions."
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "onRemoved",
|
|
"type": "function",
|
|
"description": "Fired when access to permissions has been removed from the extension.",
|
|
"parameters": [
|
|
{
|
|
"$ref": "Permissions",
|
|
"name": "permissions",
|
|
"description": "The permissions that have been removed."
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"functions": [
|
|
{
|
|
"name": "getAll",
|
|
"type": "function",
|
|
"description": "Gets the extension's current set of permissions.",
|
|
"parameters": [
|
|
{
|
|
"name": "callback",
|
|
"type": "function",
|
|
"parameters": [
|
|
{
|
|
"name": "permissions",
|
|
"$ref": "Permissions",
|
|
"description": "The extension's active permissions."
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "contains",
|
|
"type": "function",
|
|
"description": "Checks if the extension has the specified permissions.",
|
|
"parameters": [
|
|
{
|
|
"name": "permissions",
|
|
"$ref": "Permissions"
|
|
},
|
|
{
|
|
"name": "callback",
|
|
"type": "function",
|
|
"parameters": [
|
|
{
|
|
"name": "result",
|
|
"type": "boolean",
|
|
"description": "True if the extension has the specified permissions."
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "request",
|
|
"type": "function",
|
|
"description": "Requests access to the specified permissions. These permissions must be defined in the optional_permissions field of the manifest. If there are any problems requesting the permissions, <a href='extension.html#property-lastError'>chrome.runtime.lastError</a> will be set.",
|
|
"parameters": [
|
|
{
|
|
"name": "permissions",
|
|
"$ref": "Permissions"
|
|
},
|
|
{
|
|
"name": "callback",
|
|
"type": "function",
|
|
"optional": true,
|
|
"parameters": [
|
|
{
|
|
"name": "granted",
|
|
"type": "boolean",
|
|
"description": "True if the user granted the specified permissions."
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "remove",
|
|
"type": "function",
|
|
"description": "Removes access to the specified permissions. If there are any problems removing the permissions, <a href='extension.html#property-lastError'>chrome.runtime.lastError</a> will be set.",
|
|
"parameters": [
|
|
{
|
|
"name": "permissions",
|
|
"$ref": "Permissions"
|
|
},
|
|
{
|
|
"name": "callback",
|
|
"type": "function",
|
|
"optional": true,
|
|
"parameters": [
|
|
{
|
|
"name": "removed",
|
|
"type": "boolean",
|
|
"description": "True if the permissions were removed."
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|