source: trip-planner-front/node_modules/@babel/types/lib/definitions/flow.js@ 6a80231

Last change on this file since 6a80231 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 16.6 KB
Line 
1"use strict";
2
3var _utils = require("./utils");
4
5const defineInterfaceishType = (name, typeParameterType = "TypeParameterDeclaration") => {
6 (0, _utils.default)(name, {
7 builder: ["id", "typeParameters", "extends", "body"],
8 visitor: ["id", "typeParameters", "extends", "mixins", "implements", "body"],
9 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
10 fields: {
11 id: (0, _utils.validateType)("Identifier"),
12 typeParameters: (0, _utils.validateOptionalType)(typeParameterType),
13 extends: (0, _utils.validateOptional)((0, _utils.arrayOfType)("InterfaceExtends")),
14 mixins: (0, _utils.validateOptional)((0, _utils.arrayOfType)("InterfaceExtends")),
15 implements: (0, _utils.validateOptional)((0, _utils.arrayOfType)("ClassImplements")),
16 body: (0, _utils.validateType)("ObjectTypeAnnotation")
17 }
18 });
19};
20
21(0, _utils.default)("AnyTypeAnnotation", {
22 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
23});
24(0, _utils.default)("ArrayTypeAnnotation", {
25 visitor: ["elementType"],
26 aliases: ["Flow", "FlowType"],
27 fields: {
28 elementType: (0, _utils.validateType)("FlowType")
29 }
30});
31(0, _utils.default)("BooleanTypeAnnotation", {
32 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
33});
34(0, _utils.default)("BooleanLiteralTypeAnnotation", {
35 builder: ["value"],
36 aliases: ["Flow", "FlowType"],
37 fields: {
38 value: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
39 }
40});
41(0, _utils.default)("NullLiteralTypeAnnotation", {
42 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
43});
44(0, _utils.default)("ClassImplements", {
45 visitor: ["id", "typeParameters"],
46 aliases: ["Flow"],
47 fields: {
48 id: (0, _utils.validateType)("Identifier"),
49 typeParameters: (0, _utils.validateOptionalType)("TypeParameterInstantiation")
50 }
51});
52defineInterfaceishType("DeclareClass");
53(0, _utils.default)("DeclareFunction", {
54 visitor: ["id"],
55 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
56 fields: {
57 id: (0, _utils.validateType)("Identifier"),
58 predicate: (0, _utils.validateOptionalType)("DeclaredPredicate")
59 }
60});
61defineInterfaceishType("DeclareInterface");
62(0, _utils.default)("DeclareModule", {
63 builder: ["id", "body", "kind"],
64 visitor: ["id", "body"],
65 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
66 fields: {
67 id: (0, _utils.validateType)(["Identifier", "StringLiteral"]),
68 body: (0, _utils.validateType)("BlockStatement"),
69 kind: (0, _utils.validateOptional)((0, _utils.assertOneOf)("CommonJS", "ES"))
70 }
71});
72(0, _utils.default)("DeclareModuleExports", {
73 visitor: ["typeAnnotation"],
74 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
75 fields: {
76 typeAnnotation: (0, _utils.validateType)("TypeAnnotation")
77 }
78});
79(0, _utils.default)("DeclareTypeAlias", {
80 visitor: ["id", "typeParameters", "right"],
81 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
82 fields: {
83 id: (0, _utils.validateType)("Identifier"),
84 typeParameters: (0, _utils.validateOptionalType)("TypeParameterDeclaration"),
85 right: (0, _utils.validateType)("FlowType")
86 }
87});
88(0, _utils.default)("DeclareOpaqueType", {
89 visitor: ["id", "typeParameters", "supertype"],
90 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
91 fields: {
92 id: (0, _utils.validateType)("Identifier"),
93 typeParameters: (0, _utils.validateOptionalType)("TypeParameterDeclaration"),
94 supertype: (0, _utils.validateOptionalType)("FlowType"),
95 impltype: (0, _utils.validateOptionalType)("FlowType")
96 }
97});
98(0, _utils.default)("DeclareVariable", {
99 visitor: ["id"],
100 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
101 fields: {
102 id: (0, _utils.validateType)("Identifier")
103 }
104});
105(0, _utils.default)("DeclareExportDeclaration", {
106 visitor: ["declaration", "specifiers", "source"],
107 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
108 fields: {
109 declaration: (0, _utils.validateOptionalType)("Flow"),
110 specifiers: (0, _utils.validateOptional)((0, _utils.arrayOfType)(["ExportSpecifier", "ExportNamespaceSpecifier"])),
111 source: (0, _utils.validateOptionalType)("StringLiteral"),
112 default: (0, _utils.validateOptional)((0, _utils.assertValueType)("boolean"))
113 }
114});
115(0, _utils.default)("DeclareExportAllDeclaration", {
116 visitor: ["source"],
117 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
118 fields: {
119 source: (0, _utils.validateType)("StringLiteral"),
120 exportKind: (0, _utils.validateOptional)((0, _utils.assertOneOf)("type", "value"))
121 }
122});
123(0, _utils.default)("DeclaredPredicate", {
124 visitor: ["value"],
125 aliases: ["Flow", "FlowPredicate"],
126 fields: {
127 value: (0, _utils.validateType)("Flow")
128 }
129});
130(0, _utils.default)("ExistsTypeAnnotation", {
131 aliases: ["Flow", "FlowType"]
132});
133(0, _utils.default)("FunctionTypeAnnotation", {
134 visitor: ["typeParameters", "params", "rest", "returnType"],
135 aliases: ["Flow", "FlowType"],
136 fields: {
137 typeParameters: (0, _utils.validateOptionalType)("TypeParameterDeclaration"),
138 params: (0, _utils.validate)((0, _utils.arrayOfType)("FunctionTypeParam")),
139 rest: (0, _utils.validateOptionalType)("FunctionTypeParam"),
140 this: (0, _utils.validateOptionalType)("FunctionTypeParam"),
141 returnType: (0, _utils.validateType)("FlowType")
142 }
143});
144(0, _utils.default)("FunctionTypeParam", {
145 visitor: ["name", "typeAnnotation"],
146 aliases: ["Flow"],
147 fields: {
148 name: (0, _utils.validateOptionalType)("Identifier"),
149 typeAnnotation: (0, _utils.validateType)("FlowType"),
150 optional: (0, _utils.validateOptional)((0, _utils.assertValueType)("boolean"))
151 }
152});
153(0, _utils.default)("GenericTypeAnnotation", {
154 visitor: ["id", "typeParameters"],
155 aliases: ["Flow", "FlowType"],
156 fields: {
157 id: (0, _utils.validateType)(["Identifier", "QualifiedTypeIdentifier"]),
158 typeParameters: (0, _utils.validateOptionalType)("TypeParameterInstantiation")
159 }
160});
161(0, _utils.default)("InferredPredicate", {
162 aliases: ["Flow", "FlowPredicate"]
163});
164(0, _utils.default)("InterfaceExtends", {
165 visitor: ["id", "typeParameters"],
166 aliases: ["Flow"],
167 fields: {
168 id: (0, _utils.validateType)(["Identifier", "QualifiedTypeIdentifier"]),
169 typeParameters: (0, _utils.validateOptionalType)("TypeParameterInstantiation")
170 }
171});
172defineInterfaceishType("InterfaceDeclaration");
173(0, _utils.default)("InterfaceTypeAnnotation", {
174 visitor: ["extends", "body"],
175 aliases: ["Flow", "FlowType"],
176 fields: {
177 extends: (0, _utils.validateOptional)((0, _utils.arrayOfType)("InterfaceExtends")),
178 body: (0, _utils.validateType)("ObjectTypeAnnotation")
179 }
180});
181(0, _utils.default)("IntersectionTypeAnnotation", {
182 visitor: ["types"],
183 aliases: ["Flow", "FlowType"],
184 fields: {
185 types: (0, _utils.validate)((0, _utils.arrayOfType)("FlowType"))
186 }
187});
188(0, _utils.default)("MixedTypeAnnotation", {
189 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
190});
191(0, _utils.default)("EmptyTypeAnnotation", {
192 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
193});
194(0, _utils.default)("NullableTypeAnnotation", {
195 visitor: ["typeAnnotation"],
196 aliases: ["Flow", "FlowType"],
197 fields: {
198 typeAnnotation: (0, _utils.validateType)("FlowType")
199 }
200});
201(0, _utils.default)("NumberLiteralTypeAnnotation", {
202 builder: ["value"],
203 aliases: ["Flow", "FlowType"],
204 fields: {
205 value: (0, _utils.validate)((0, _utils.assertValueType)("number"))
206 }
207});
208(0, _utils.default)("NumberTypeAnnotation", {
209 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
210});
211(0, _utils.default)("ObjectTypeAnnotation", {
212 visitor: ["properties", "indexers", "callProperties", "internalSlots"],
213 aliases: ["Flow", "FlowType"],
214 builder: ["properties", "indexers", "callProperties", "internalSlots", "exact"],
215 fields: {
216 properties: (0, _utils.validate)((0, _utils.arrayOfType)(["ObjectTypeProperty", "ObjectTypeSpreadProperty"])),
217 indexers: (0, _utils.validateOptional)((0, _utils.arrayOfType)("ObjectTypeIndexer")),
218 callProperties: (0, _utils.validateOptional)((0, _utils.arrayOfType)("ObjectTypeCallProperty")),
219 internalSlots: (0, _utils.validateOptional)((0, _utils.arrayOfType)("ObjectTypeInternalSlot")),
220 exact: {
221 validate: (0, _utils.assertValueType)("boolean"),
222 default: false
223 },
224 inexact: (0, _utils.validateOptional)((0, _utils.assertValueType)("boolean"))
225 }
226});
227(0, _utils.default)("ObjectTypeInternalSlot", {
228 visitor: ["id", "value", "optional", "static", "method"],
229 aliases: ["Flow", "UserWhitespacable"],
230 fields: {
231 id: (0, _utils.validateType)("Identifier"),
232 value: (0, _utils.validateType)("FlowType"),
233 optional: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
234 static: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
235 method: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
236 }
237});
238(0, _utils.default)("ObjectTypeCallProperty", {
239 visitor: ["value"],
240 aliases: ["Flow", "UserWhitespacable"],
241 fields: {
242 value: (0, _utils.validateType)("FlowType"),
243 static: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
244 }
245});
246(0, _utils.default)("ObjectTypeIndexer", {
247 visitor: ["id", "key", "value", "variance"],
248 aliases: ["Flow", "UserWhitespacable"],
249 fields: {
250 id: (0, _utils.validateOptionalType)("Identifier"),
251 key: (0, _utils.validateType)("FlowType"),
252 value: (0, _utils.validateType)("FlowType"),
253 static: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
254 variance: (0, _utils.validateOptionalType)("Variance")
255 }
256});
257(0, _utils.default)("ObjectTypeProperty", {
258 visitor: ["key", "value", "variance"],
259 aliases: ["Flow", "UserWhitespacable"],
260 fields: {
261 key: (0, _utils.validateType)(["Identifier", "StringLiteral"]),
262 value: (0, _utils.validateType)("FlowType"),
263 kind: (0, _utils.validate)((0, _utils.assertOneOf)("init", "get", "set")),
264 static: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
265 proto: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
266 optional: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
267 variance: (0, _utils.validateOptionalType)("Variance"),
268 method: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
269 }
270});
271(0, _utils.default)("ObjectTypeSpreadProperty", {
272 visitor: ["argument"],
273 aliases: ["Flow", "UserWhitespacable"],
274 fields: {
275 argument: (0, _utils.validateType)("FlowType")
276 }
277});
278(0, _utils.default)("OpaqueType", {
279 visitor: ["id", "typeParameters", "supertype", "impltype"],
280 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
281 fields: {
282 id: (0, _utils.validateType)("Identifier"),
283 typeParameters: (0, _utils.validateOptionalType)("TypeParameterDeclaration"),
284 supertype: (0, _utils.validateOptionalType)("FlowType"),
285 impltype: (0, _utils.validateType)("FlowType")
286 }
287});
288(0, _utils.default)("QualifiedTypeIdentifier", {
289 visitor: ["id", "qualification"],
290 aliases: ["Flow"],
291 fields: {
292 id: (0, _utils.validateType)("Identifier"),
293 qualification: (0, _utils.validateType)(["Identifier", "QualifiedTypeIdentifier"])
294 }
295});
296(0, _utils.default)("StringLiteralTypeAnnotation", {
297 builder: ["value"],
298 aliases: ["Flow", "FlowType"],
299 fields: {
300 value: (0, _utils.validate)((0, _utils.assertValueType)("string"))
301 }
302});
303(0, _utils.default)("StringTypeAnnotation", {
304 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
305});
306(0, _utils.default)("SymbolTypeAnnotation", {
307 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
308});
309(0, _utils.default)("ThisTypeAnnotation", {
310 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
311});
312(0, _utils.default)("TupleTypeAnnotation", {
313 visitor: ["types"],
314 aliases: ["Flow", "FlowType"],
315 fields: {
316 types: (0, _utils.validate)((0, _utils.arrayOfType)("FlowType"))
317 }
318});
319(0, _utils.default)("TypeofTypeAnnotation", {
320 visitor: ["argument"],
321 aliases: ["Flow", "FlowType"],
322 fields: {
323 argument: (0, _utils.validateType)("FlowType")
324 }
325});
326(0, _utils.default)("TypeAlias", {
327 visitor: ["id", "typeParameters", "right"],
328 aliases: ["Flow", "FlowDeclaration", "Statement", "Declaration"],
329 fields: {
330 id: (0, _utils.validateType)("Identifier"),
331 typeParameters: (0, _utils.validateOptionalType)("TypeParameterDeclaration"),
332 right: (0, _utils.validateType)("FlowType")
333 }
334});
335(0, _utils.default)("TypeAnnotation", {
336 aliases: ["Flow"],
337 visitor: ["typeAnnotation"],
338 fields: {
339 typeAnnotation: (0, _utils.validateType)("FlowType")
340 }
341});
342(0, _utils.default)("TypeCastExpression", {
343 visitor: ["expression", "typeAnnotation"],
344 aliases: ["Flow", "ExpressionWrapper", "Expression"],
345 fields: {
346 expression: (0, _utils.validateType)("Expression"),
347 typeAnnotation: (0, _utils.validateType)("TypeAnnotation")
348 }
349});
350(0, _utils.default)("TypeParameter", {
351 aliases: ["Flow"],
352 visitor: ["bound", "default", "variance"],
353 fields: {
354 name: (0, _utils.validate)((0, _utils.assertValueType)("string")),
355 bound: (0, _utils.validateOptionalType)("TypeAnnotation"),
356 default: (0, _utils.validateOptionalType)("FlowType"),
357 variance: (0, _utils.validateOptionalType)("Variance")
358 }
359});
360(0, _utils.default)("TypeParameterDeclaration", {
361 aliases: ["Flow"],
362 visitor: ["params"],
363 fields: {
364 params: (0, _utils.validate)((0, _utils.arrayOfType)("TypeParameter"))
365 }
366});
367(0, _utils.default)("TypeParameterInstantiation", {
368 aliases: ["Flow"],
369 visitor: ["params"],
370 fields: {
371 params: (0, _utils.validate)((0, _utils.arrayOfType)("FlowType"))
372 }
373});
374(0, _utils.default)("UnionTypeAnnotation", {
375 visitor: ["types"],
376 aliases: ["Flow", "FlowType"],
377 fields: {
378 types: (0, _utils.validate)((0, _utils.arrayOfType)("FlowType"))
379 }
380});
381(0, _utils.default)("Variance", {
382 aliases: ["Flow"],
383 builder: ["kind"],
384 fields: {
385 kind: (0, _utils.validate)((0, _utils.assertOneOf)("minus", "plus"))
386 }
387});
388(0, _utils.default)("VoidTypeAnnotation", {
389 aliases: ["Flow", "FlowType", "FlowBaseAnnotation"]
390});
391(0, _utils.default)("EnumDeclaration", {
392 aliases: ["Statement", "Declaration"],
393 visitor: ["id", "body"],
394 fields: {
395 id: (0, _utils.validateType)("Identifier"),
396 body: (0, _utils.validateType)(["EnumBooleanBody", "EnumNumberBody", "EnumStringBody", "EnumSymbolBody"])
397 }
398});
399(0, _utils.default)("EnumBooleanBody", {
400 aliases: ["EnumBody"],
401 visitor: ["members"],
402 fields: {
403 explicitType: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
404 members: (0, _utils.validateArrayOfType)("EnumBooleanMember"),
405 hasUnknownMembers: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
406 }
407});
408(0, _utils.default)("EnumNumberBody", {
409 aliases: ["EnumBody"],
410 visitor: ["members"],
411 fields: {
412 explicitType: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
413 members: (0, _utils.validateArrayOfType)("EnumNumberMember"),
414 hasUnknownMembers: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
415 }
416});
417(0, _utils.default)("EnumStringBody", {
418 aliases: ["EnumBody"],
419 visitor: ["members"],
420 fields: {
421 explicitType: (0, _utils.validate)((0, _utils.assertValueType)("boolean")),
422 members: (0, _utils.validateArrayOfType)(["EnumStringMember", "EnumDefaultedMember"]),
423 hasUnknownMembers: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
424 }
425});
426(0, _utils.default)("EnumSymbolBody", {
427 aliases: ["EnumBody"],
428 visitor: ["members"],
429 fields: {
430 members: (0, _utils.validateArrayOfType)("EnumDefaultedMember"),
431 hasUnknownMembers: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
432 }
433});
434(0, _utils.default)("EnumBooleanMember", {
435 aliases: ["EnumMember"],
436 visitor: ["id"],
437 fields: {
438 id: (0, _utils.validateType)("Identifier"),
439 init: (0, _utils.validateType)("BooleanLiteral")
440 }
441});
442(0, _utils.default)("EnumNumberMember", {
443 aliases: ["EnumMember"],
444 visitor: ["id", "init"],
445 fields: {
446 id: (0, _utils.validateType)("Identifier"),
447 init: (0, _utils.validateType)("NumericLiteral")
448 }
449});
450(0, _utils.default)("EnumStringMember", {
451 aliases: ["EnumMember"],
452 visitor: ["id", "init"],
453 fields: {
454 id: (0, _utils.validateType)("Identifier"),
455 init: (0, _utils.validateType)("StringLiteral")
456 }
457});
458(0, _utils.default)("EnumDefaultedMember", {
459 aliases: ["EnumMember"],
460 visitor: ["id"],
461 fields: {
462 id: (0, _utils.validateType)("Identifier")
463 }
464});
465(0, _utils.default)("IndexedAccessType", {
466 visitor: ["objectType", "indexType"],
467 aliases: ["Flow", "FlowType"],
468 fields: {
469 objectType: (0, _utils.validateType)("FlowType"),
470 indexType: (0, _utils.validateType)("FlowType")
471 }
472});
473(0, _utils.default)("OptionalIndexedAccessType", {
474 visitor: ["objectType", "indexType"],
475 aliases: ["Flow", "FlowType"],
476 fields: {
477 objectType: (0, _utils.validateType)("FlowType"),
478 indexType: (0, _utils.validateType)("FlowType"),
479 optional: (0, _utils.validate)((0, _utils.assertValueType)("boolean"))
480 }
481});
Note: See TracBrowser for help on using the repository browser.