37 lines
860 B
JavaScript
Executable file
37 lines
860 B
JavaScript
Executable file
'use strict';
|
|
|
|
const NodeType = {
|
|
NAME: 'NAME',
|
|
MEMBER: 'MEMBER',
|
|
UNION: 'UNION',
|
|
INTERSECTION: 'INTERSECTION',
|
|
VARIADIC: 'VARIADIC',
|
|
RECORD: 'RECORD',
|
|
RECORD_ENTRY: 'RECORD_ENTRY',
|
|
TUPLE: 'TUPLE',
|
|
GENERIC: 'GENERIC',
|
|
MODULE: 'MODULE',
|
|
OPTIONAL: 'OPTIONAL',
|
|
NULLABLE: 'NULLABLE',
|
|
NOT_NULLABLE: 'NOT_NULLABLE',
|
|
FUNCTION: 'FUNCTION',
|
|
ARROW: 'ARROW',
|
|
NAMED_PARAMETER: 'NAMED_PARAMETER',
|
|
ANY: 'ANY',
|
|
UNKNOWN: 'UNKNOWN',
|
|
INNER_MEMBER: 'INNER_MEMBER',
|
|
INSTANCE_MEMBER: 'INSTANCE_MEMBER',
|
|
STRING_VALUE: 'STRING_VALUE',
|
|
NUMBER_VALUE: 'NUMBER_VALUE',
|
|
EXTERNAL: 'EXTERNAL',
|
|
FILE_PATH: 'FILE_PATH',
|
|
PARENTHESIS: 'PARENTHESIS',
|
|
TYPE_QUERY: 'TYPE_QUERY',
|
|
KEY_QUERY: 'KEY_QUERY',
|
|
IMPORT: 'IMPORT',
|
|
};
|
|
|
|
/** @typedef {keyof typeof NodeType} Type */
|
|
|
|
module.exports = /** @type {{readonly [T in Type]: T}} */ (NodeType);
|