Index: chrome/common/extensions/api/extension_api.json |
diff --git a/chrome/common/extensions/api/extension_api.json b/chrome/common/extensions/api/extension_api.json |
index f3f855936fe4c5d5ecd28dda933c60f4ec0e96a7..3e032aa58a8876d39d2ea6cd3c15806399d47fa3 100644 |
--- a/chrome/common/extensions/api/extension_api.json |
+++ b/chrome/common/extensions/api/extension_api.json |
@@ -1060,6 +1060,143 @@ |
] |
}, |
{ |
+ "namespace": "experimental.permissions", |
+ "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)." |
+ } |
+ } |
+ } |
+ ], |
+ "events": [ |
+ { |
+ "name": "onAdded", |
+ "type": "function", |
+ "unprivileged": true, |
+ "description": "Fired when the extension acquires new permissions.", |
+ "parameters": [ |
+ { |
+ "$ref": "Permissions", |
+ "name": "permissions", |
+ "description": "The newly acquired permissions." |
+ } |
+ ] |
+ }, |
+ { |
+ "name": "onRemoved", |
+ "type": "function", |
+ "unprivileged": true, |
+ "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", |
+ "unprivileged": true, |
+ "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", |
+ "unprivileged": true, |
+ "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", |
+ "unprivileged": true, |
+ "description": "Requests access to the specified permissions. These permissions must be defined in the optional_permissions field of the manifest.", |
+ "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", |
+ "unprivileged": true, |
+ "description": "Removes access to the specified permissions.", |
+ "parameters": [ |
+ { |
+ "name": "permissions", |
+ "$ref": "Permissions" |
+ }, |
+ { |
+ "name": "callback", |
+ "type": "function", |
+ "optional": true, |
+ "parameters": [ |
+ { |
+ "name": "removed", |
+ "type": "boolean", |
+ "description": "True if the permissions were removed." |
+ } |
+ ] |
+ } |
+ ] |
+ } |
+ ] |
+ }, |
+ { |
"namespace": "tabs", |
"types": [ |
{ |