1[
2  {
3    "namespace": "manifest",
4    "types": [
5      {
6        "$extend": "WebExtensionManifest",
7        "properties": {
8          "chrome_settings_overrides": {
9            "type": "object",
10            "optional": true,
11            "additionalProperties": { "$ref": "UnrecognizedProperty" },
12            "properties": {
13              "search_provider": {
14                "type": "object",
15                "optional": true,
16                "additionalProperties": { "$ref": "UnrecognizedProperty" },
17                "properties": {
18                  "name": {
19                    "type": "string",
20                    "preprocess": "localize"
21                  },
22                  "keyword": {
23                    "optional": true,
24                    "choices": [
25                      {
26                        "type": "string",
27                        "preprocess": "localize"
28                      },
29                      {
30                        "type": "array",
31                        "items": {
32                          "type": "string",
33                          "preprocess": "localize"
34                        },
35                        "minItems": 1
36                      }
37                    ]
38                  },
39                  "search_url": {
40                    "type": "string",
41                    "format": "url",
42                    "pattern": "^https://.*$",
43                    "preprocess": "localize"
44                  },
45                  "favicon_url": {
46                    "type": "string",
47                    "optional": true,
48                    "format": "url",
49                    "preprocess": "localize"
50                  },
51                  "suggest_url": {
52                    "type": "string",
53                    "optional": true,
54                    "pattern": "^https://.*$|^$",
55                    "preprocess": "localize"
56                  },
57                  "instant_url": {
58                    "type": "string",
59                    "optional": true,
60                    "format": "url",
61                    "preprocess": "localize",
62                    "deprecated": "Unsupported on Thunderbird at this time."
63                  },
64                  "image_url": {
65                    "type": "string",
66                    "optional": true,
67                    "format": "url",
68                    "preprocess": "localize",
69                    "deprecated": "Unsupported on Thunderbird at this time."
70                  },
71                  "search_url_get_params": {
72                    "type": "string",
73                    "optional": true,
74                    "preprocess": "localize",
75                    "description": "GET parameters to the search_url as a query string."
76                  },
77                  "search_url_post_params": {
78                    "type": "string",
79                    "optional": true,
80                    "preprocess": "localize",
81                    "description": "POST parameters to the search_url as a query string."
82                  },
83                  "suggest_url_get_params": {
84                    "type": "string",
85                    "optional": true,
86                    "preprocess": "localize",
87                    "description": "GET parameters to the suggest_url as a query string."
88                  },
89                  "suggest_url_post_params": {
90                    "type": "string",
91                    "optional": true,
92                    "preprocess": "localize",
93                    "description": "POST parameters to the suggest_url as a query string."
94                  },
95                  "instant_url_post_params": {
96                    "type": "string",
97                    "optional": true,
98                    "preprocess": "localize",
99                    "deprecated": "Unsupported on Thunderbird at this time."
100                  },
101                  "image_url_post_params": {
102                    "type": "string",
103                    "optional": true,
104                    "preprocess": "localize",
105                    "deprecated": "Unsupported on Thunderbird at this time."
106                  },
107                  "search_form": {
108                    "type": "string",
109                    "optional": true,
110                    "format": "url",
111                    "pattern": "^https://.*$",
112                    "preprocess": "localize"
113                  },
114                  "alternate_urls": {
115                    "type": "array",
116                    "items": {
117                      "type": "string",
118                      "format": "url",
119                      "preprocess": "localize"
120                    },
121                    "optional": true,
122                    "deprecated": "Unsupported on Thunderbird at this time."
123                  },
124                  "prepopulated_id": {
125                    "type": "integer",
126                    "optional": true,
127                    "deprecated": "Unsupported on Thunderbird."
128                  },
129                  "encoding": {
130                    "type": "string",
131                    "optional": true,
132                    "description": "Encoding of the search term."
133                  },
134                  "is_default": {
135                    "type": "boolean",
136                    "optional": true,
137                    "description": "Sets the default engine to a built-in engine only."
138                  },
139                  "params": {
140                    "optional": true,
141                    "type": "array",
142                    "items": {
143                      "type": "object",
144                      "properties": {
145                        "name": {
146                          "type": "string",
147                          "description": "A url parameter name"
148                        },
149                        "condition": {
150                          "type": "string",
151                          "optional": true,
152                          "enum": ["purpose", "pref"],
153                          "description": "The type of param can be either \"purpose\" or \"pref\"."
154                        },
155                        "pref": {
156                          "type": "string",
157                          "optional": true,
158                          "description": "The preference to retrieve the value from."
159                        },
160                        "purpose": {
161                          "type": "string",
162                          "optional": true,
163                          "enum": ["contextmenu", "searchbar", "homepage", "keyword", "newtab"],
164                          "description": "The context that initiates a search, required if condition is \"purpose\"."
165                        },
166                        "value": {
167                          "type": "string",
168                          "optional": true,
169                          "description": "A url parameter value.",
170                          "preprocess": "localize"
171                        }
172                      }
173                    },
174                    "description": "A list of optional search url parameters. This allows the addition of search url parameters based on how the search is performed in Thunderbird."
175                  }
176                }
177              }
178            }
179          }
180        }
181      }
182    ]
183  }
184]
185