[Extensions API] Remove inline enums
[chromium-blink-merge.git] / tools / json_schema_compiler / test / enums.json
blob97237677a78d66329655cba32086e9f2eb2f2328
2   {
3     "namespace": "enums",
4     "description": "The enums API.",
5     "types": [
6       {
7         "id": "Enumeration",
8         "type": "string",
9         "enum": ["one", "two", "three"]
10       },
11       {
12         "id": "OtherEnumeration",
13         "type": "string",
14         "enum": ["spam", "ham", "eggs"]
15       },
16       {
17         "id": "EnumType",
18         "type": "object",
19         "properties": {
20           "type": {
21             "$ref": "Enumeration"
22           }
23         }
24       },
25       {
26         "id": "HasEnumeration",
27         "type": "object",
28         "properties": {
29           "enumeration": {
30             "$ref": "Enumeration"
31           },
32           "optional_enumeration": {
33             "$ref": "Enumeration",
34             "optional": true
35           }
36         }
37       },
38       {
39         "id": "ReferenceEnum",
40         "type": "object",
41         "properties": {
42           "reference_enum": {
43             "$ref": "Enumeration"
44           }
45         }
46       },
47       {
48         "id": "OptionalEnumType",
49         "type": "object",
50         "properties": {
51           "type": {
52             "$ref": "Enumeration",
53             "optional": true
54           }
55         }
56       }
57     ],
58     "functions": [
59       {
60         "name": "takesEnum",
61         "type": "function",
62         "description": "Takes an enum as its parameter.",
63         "parameters": [
64           {
65             "name": "state",
66             "$ref": "Enumeration"
67           },
68           {
69             "name": "callback",
70             "type": "function",
71             "parameters": []
72           }
73         ]
74       },
75       {
76         "name": "takesEnumArray",
77         "type": "function",
78         "description": "Takes an enum array as its parameter.",
79         "parameters": [
80           {
81             "name": "values",
82             "type": "array",
83             "items": {
84               "$ref": "Enumeration"
85             }
86           },
87           {
88             "name": "callback",
89             "type": "function",
90             "parameters": []
91           }
92         ]
93       },
94       {
95         "name": "takesEnumAsType",
96         "type": "function",
97         "description": "Takes an enum type as its parameter.",
98         "parameters": [
99           {
100             "name": "enumeration",
101             "$ref": "Enumeration"
102           },
103           {
104             "name": "callback",
105             "type": "function",
106             "parameters": []
107           }
108         ]
109       },
110       {
111         "name": "takesEnumArrayAsType",
112         "type": "function",
113         "description": "Takes an enum type array as its parameter.",
114         "parameters": [
115           {
116             "name": "values",
117             "type": "array",
118             "items": {
119               "$ref": "Enumeration"
120             }
121           },
122           {
123             "name": "callback",
124             "type": "function",
125             "parameters": []
126           }
127         ]
128       },
129       {
130         "name": "returnsEnum",
131         "type": "function",
132         "description": "Returns an enum through the callback",
133         "parameters": [
134           {
135             "name": "callback",
136             "type": "function",
137             "parameters": [
138               {
139                 "name": "state",
140                 "$ref": "Enumeration"
141               }
142             ]
143           }
144         ]
145       },
146       {
147         "name": "returnsEnumAsType",
148         "type": "function",
149         "description": "Returns an enum through the callback",
150         "parameters": [
151           {
152             "name": "callback",
153             "type": "function",
154             "parameters": [
155               {
156                 "name": "enumeration",
157                 "$ref": "Enumeration"
158               }
159             ]
160           }
161         ]
162       },
163       {
164         "name": "returnsTwoEnums",
165         "type": "function",
166         "description": "Returns two enums through the callback",
167         "parameters": [
168           {
169             "name": "callback",
170             "type": "function",
171             "parameters": [
172               {
173                 "name": "firstState",
174                 "$ref": "Enumeration"
175               },
176               {
177                 "name": "secondState",
178                 "$ref": "OtherEnumeration"
179               }
180             ]
181           }
182         ]
183       },
184       {
185         "name": "takesOptionalEnum",
186         "type": "function",
187         "description": "Takes an enum as its parameter.",
188         "parameters": [
189           {
190             "name": "state",
191             "$ref": "Enumeration",
192             "optional": true
193           },
194           {
195             "name": "callback",
196             "type": "function",
197             "parameters": []
198           }
199         ]
200       },
201       {
202         "name": "takesMultipleOptionalEnums",
203         "type": "function",
204         "description": "Takes two enums as parameters.",
205         "parameters": [
206           {
207             "name": "state",
208             "$ref": "Enumeration",
209             "optional": true
210           },
211           {
212             "name": "type",
213             "$ref": "OtherEnumeration",
214             "optional": true
215           },
216           {
217             "name": "callback",
218             "type": "function",
219             "parameters": []
220           }
221         ]
222       }
223     ],
224     "events": [
225       {
226         "name": "onEnumFired",
227         "type": "function",
228         "description": "Fired when an enum is ready.",
229         "parameters": [
230           {
231             "name": "someEnum",
232             "$ref": "Enumeration"
233           }
234         ]
235       },
236       {
237         "name": "onTwoEnumsFired",
238         "type": "function",
239         "description": "Fired when two enums are ready.",
240         "parameters": [
241           {
242             "name": "firstEnum",
243             "$ref": "Enumeration"
244           },
245           {
246             "name": "secondEnum",
247             "$ref": "OtherEnumeration"
248           }
249         ]
250       }
251     ]
252   }