diff options
Diffstat (limited to 'browser/components/extensions/schemas/search.json')
-rw-r--r-- | browser/components/extensions/schemas/search.json | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/browser/components/extensions/schemas/search.json b/browser/components/extensions/schemas/search.json new file mode 100644 index 0000000000..c8701164f9 --- /dev/null +++ b/browser/components/extensions/schemas/search.json @@ -0,0 +1,131 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +[ + { + "namespace": "manifest", + "types": [ + { + "$extend": "OptionalPermissionNoPrompt", + "choices": [ + { + "type": "string", + "enum": ["search"] + } + ] + } + ] + }, + { + "namespace": "search", + "description": "Use browser.search to interact with search engines.", + "permissions": ["search"], + "types": [ + { + "id": "SearchEngine", + "type": "object", + "description": "An object encapsulating a search engine", + "properties": { + "name": { + "type": "string" + }, + "isDefault": { + "type": "boolean" + }, + "alias": { + "type": "string", + "optional": true + }, + "favIconUrl": { + "type": "string", + "optional": true, + "format": "url" + } + } + }, + { + "id": "Disposition", + "type": "string", + "description": "Location where search results should be displayed.", + "enum": ["CURRENT_TAB", "NEW_TAB", "NEW_WINDOW"] + } + ], + "functions": [ + { + "name": "get", + "type": "function", + "description": "Gets a list of search engines.", + "async": true, + "parameters": [] + }, + { + "name": "search", + "type": "function", + "description": "Perform a search.", + "async": true, + "parameters": [ + { + "type": "object", + "name": "searchProperties", + "properties": { + "query": { + "type": "string", + "description": "Terms to search for." + }, + "engine": { + "type": "string", + "optional": true, + "description": "Search engine to use. Uses the default if not specified." + }, + "disposition": { + "$ref": "Disposition", + "optional": true, + "description": "Location where search results should be displayed. NEW_TAB is the default." + }, + "tabId": { + "type": "integer", + "optional": true, + "description": "The ID of the tab for the search results. If not specified, a new tab is created, unless disposition is set. tabId cannot be used with disposition." + } + } + } + ] + }, + { + "name": "query", + "type": "function", + "async": "callback", + "description": "Use the chrome.search API to search via the default provider.", + "parameters": [ + { + "type": "object", + "name": "queryInfo", + "properties": { + "text": { + "type": "string", + "description": "String to query with the default search provider." + }, + "disposition": { + "$ref": "Disposition", + "optional": true, + "description": "Location where search results should be displayed. CURRENT_TAB is the default." + }, + "tabId": { + "type": "integer", + "optional": true, + "description": "Location where search results should be displayed. tabId cannot be used with disposition." + } + } + }, + { + "type": "function", + "name": "callback", + "optional": true, + "parameters": [] + } + ] + } + ] + } +] |