use crate::ast::StructDetails;
#[expect(clippy::unreadable_literal)]
pub static STRUCTS: phf::Map<&'static str, StructDetails> = ::phf::Map {
key: 16287231350648472473,
disps: &[
(0, 0),
(0, 63),
(0, 14),
(0, 16),
(1, 29),
(8, 184),
(0, 3),
(0, 10),
(7, 181),
(0, 71),
(0, 134),
(0, 26),
(0, 2),
(0, 3),
(1, 74),
(0, 1),
(0, 14),
(1, 1),
(1, 173),
(0, 111),
(1, 102),
(0, 8),
(0, 116),
(0, 142),
(0, 0),
(0, 179),
(1, 35),
(0, 21),
(1, 135),
(19, 37),
(0, 27),
(0, 58),
(1, 228),
(0, 0),
(2, 209),
(5, 88),
(0, 30),
(84, 1),
(0, 0),
(10, 123),
(0, 93),
(0, 9),
(11, 111),
(1, 27),
(0, 37),
(67, 150),
(0, 4),
],
entries: &[
("JSXElement", StructDetails { field_order: None }),
("JSDocNullableType", StructDetails { field_order: None }),
("WithClause", StructDetails { field_order: Some(&[0, 2, 1]) }),
("NewExpression", StructDetails { field_order: None }),
("NumericLiteral", StructDetails { field_order: None }),
("TSUnknownKeyword", StructDetails { field_order: None }),
("UnicodePropertyEscape", StructDetails { field_order: Some(&[0, 3, 4, 1, 2]) }),
("TSInterfaceDeclaration", StructDetails { field_order: Some(&[0, 1, 2, 3, 4, 6, 5]) }),
("ObjectAssignmentTarget", StructDetails { field_order: None }),
("SwitchCase", StructDetails { field_order: None }),
("TSPropertySignature", StructDetails { field_order: Some(&[0, 3, 4, 5, 1, 2]) }),
("CatchClause", StructDetails { field_order: None }),
("ForInStatement", StructDetails { field_order: None }),
("AssignmentExpression", StructDetails { field_order: Some(&[0, 3, 1, 2]) }),
("BlockStatement", StructDetails { field_order: None }),
("StringLiteral", StructDetails { field_order: None }),
("TSNumberKeyword", StructDetails { field_order: None }),
("ImportNamespaceSpecifier", StructDetails { field_order: None }),
("TSTypeParameterInstantiation", StructDetails { field_order: None }),
("ScopeId", StructDetails { field_order: None }),
("ImportDeclaration", StructDetails { field_order: Some(&[0, 1, 2, 4, 3, 5]) }),
("SymbolId", StructDetails { field_order: None }),
("PrivateIdentifier", StructDetails { field_order: None }),
("TSModuleBlock", StructDetails { field_order: None }),
("TSEnumDeclaration", StructDetails { field_order: None }),
("JSXNamespacedName", StructDetails { field_order: None }),
("TSIntrinsicKeyword", StructDetails { field_order: None }),
("BindingRestElement", StructDetails { field_order: None }),
("TSTypeQuery", StructDetails { field_order: None }),
("SwitchStatement", StructDetails { field_order: None }),
("TSAnyKeyword", StructDetails { field_order: None }),
("TSAsExpression", StructDetails { field_order: None }),
("ReturnStatement", StructDetails { field_order: None }),
("ArrayAssignmentTarget", StructDetails { field_order: None }),
("ThisExpression", StructDetails { field_order: None }),
("IgnoreGroup", StructDetails { field_order: None }),
("TSInterfaceBody", StructDetails { field_order: None }),
("CatchParameter", StructDetails { field_order: None }),
("RawTransferData", StructDetails { field_order: None }),
("RawTransferMetadata", StructDetails { field_order: Some(&[1, 2, 3, 0]) }),
("ObjectProperty", StructDetails { field_order: Some(&[0, 3, 1, 2, 4, 5, 6]) }),
("DebuggerStatement", StructDetails { field_order: None }),
("TSModuleDeclaration", StructDetails { field_order: Some(&[0, 1, 2, 4, 5, 3]) }),
(
"MethodDefinition",
StructDetails { field_order: Some(&[0, 4, 1, 2, 3, 5, 6, 7, 8, 9, 10]) },
),
("ExportEntry", StructDetails { field_order: Some(&[1, 0, 2, 3, 4, 5, 6]) }),
("DoWhileStatement", StructDetails { field_order: None }),
("FunctionBody", StructDetails { field_order: None }),
("Dot", StructDetails { field_order: None }),
("UnaryExpression", StructDetails { field_order: Some(&[0, 2, 1]) }),
("TSLiteralType", StructDetails { field_order: None }),
("ObjectExpression", StructDetails { field_order: None }),
("TSRestType", StructDetails { field_order: None }),
("TemplateElement", StructDetails { field_order: None }),
("JSXSpreadChild", StructDetails { field_order: None }),
("TSOptionalType", StructDetails { field_order: None }),
("IfStatement", StructDetails { field_order: None }),
("Character", StructDetails { field_order: Some(&[0, 2, 1]) }),
("LookAroundAssertion", StructDetails { field_order: Some(&[0, 2, 1]) }),
("EcmaScriptModule", StructDetails { field_order: Some(&[4, 0, 1, 2, 3]) }),
("RegExp", StructDetails { field_order: None }),
("SpreadElement", StructDetails { field_order: None }),
("Span", StructDetails { field_order: None }),
("Disjunction", StructDetails { field_order: None }),
("AssignmentTargetPropertyIdentifier", StructDetails { field_order: None }),
("ConditionalExpression", StructDetails { field_order: None }),
(
"PropertyDefinition",
StructDetails { field_order: Some(&[0, 5, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13]) },
),
("Comment", StructDetails { field_order: None }),
("LabeledStatement", StructDetails { field_order: None }),
("StaticMemberExpression", StructDetails { field_order: None }),
("CharacterClassEscape", StructDetails { field_order: None }),
("TSTupleType", StructDetails { field_order: None }),
("TSTypeParameter", StructDetails { field_order: None }),
("ErrorLabel", StructDetails { field_order: Some(&[1, 0]) }),
("RawTransferMetadata2", StructDetails { field_order: Some(&[1, 2, 3, 0]) }),
("ChainExpression", StructDetails { field_order: None }),
("BindingProperty", StructDetails { field_order: None }),
("NullLiteral", StructDetails { field_order: None }),
("TSObjectKeyword", StructDetails { field_order: None }),
("IdentifierName", StructDetails { field_order: None }),
("JSXOpeningFragment", StructDetails { field_order: None }),
("AssignmentTargetRest", StructDetails { field_order: None }),
("TSIndexedAccessType", StructDetails { field_order: None }),
("Modifiers", StructDetails { field_order: None }),
("CommentNewlines", StructDetails { field_order: None }),
("JSXText", StructDetails { field_order: None }),
("ExportAllDeclaration", StructDetails { field_order: None }),
("TSMappedType", StructDetails { field_order: Some(&[0, 1, 2, 3, 4, 6, 7, 5]) }),
("TSStringKeyword", StructDetails { field_order: None }),
("TSNamedTupleMember", StructDetails { field_order: None }),
("TSTypeLiteral", StructDetails { field_order: None }),
("TSTemplateLiteralType", StructDetails { field_order: None }),
("JSXAttribute", StructDetails { field_order: None }),
("AssignmentTargetPropertyProperty", StructDetails { field_order: None }),
("RegExpPattern", StructDetails { field_order: None }),
("TSEnumBody", StructDetails { field_order: None }),
("Decorator", StructDetails { field_order: None }),
("EmptyStatement", StructDetails { field_order: None }),
("ForOfStatement", StructDetails { field_order: Some(&[0, 5, 1, 2, 3, 4]) }),
("ReferenceId", StructDetails { field_order: None }),
("V8IntrinsicExpression", StructDetails { field_order: None }),
("WithStatement", StructDetails { field_order: None }),
("SourceType", StructDetails { field_order: None }),
("ThrowStatement", StructDetails { field_order: None }),
("IdentifierReference", StructDetails { field_order: None }),
("Program", StructDetails { field_order: Some(&[0, 7, 1, 2, 3, 4, 5, 6]) }),
("TaggedTemplateExpression", StructDetails { field_order: None }),
("JSXEmptyExpression", StructDetails { field_order: None }),
("JSXClosingFragment", StructDetails { field_order: None }),
("TSTypePredicate", StructDetails { field_order: Some(&[0, 1, 3, 2]) }),
("AssignmentPattern", StructDetails { field_order: None }),
("Class", StructDetails { field_order: Some(&[0, 9, 1, 2, 3, 4, 5, 6, 7, 10, 11, 8]) }),
("StaticImport", StructDetails { field_order: None }),
("TSThisType", StructDetails { field_order: None }),
("NamedReference", StructDetails { field_order: None }),
("JSDocUnknownType", StructDetails { field_order: None }),
("BigIntLiteral", StructDetails { field_order: None }),
("ForStatement", StructDetails { field_order: None }),
("ParenthesizedExpression", StructDetails { field_order: None }),
("ContinueStatement", StructDetails { field_order: None }),
("TSQualifiedName", StructDetails { field_order: None }),
("ArrayPattern", StructDetails { field_order: None }),
("TSTypeOperator", StructDetails { field_order: Some(&[0, 2, 1]) }),
("UpdateExpression", StructDetails { field_order: Some(&[0, 2, 3, 1]) }),
("CharacterClass", StructDetails { field_order: Some(&[0, 2, 3, 4, 1]) }),
("ClassString", StructDetails { field_order: Some(&[0, 2, 1]) }),
("ImportSpecifier", StructDetails { field_order: None }),
("TSIntersectionType", StructDetails { field_order: None }),
("ImportAttribute", StructDetails { field_order: None }),
("TSNeverKeyword", StructDetails { field_order: None }),
("JSXSpreadAttribute", StructDetails { field_order: None }),
("CallExpression", StructDetails { field_order: None }),
("Hashbang", StructDetails { field_order: None }),
("TSUnionType", StructDetails { field_order: None }),
("TSTypeReference", StructDetails { field_order: None }),
("Error", StructDetails { field_order: Some(&[4, 0, 1, 2, 3]) }),
("ArrayExpression", StructDetails { field_order: None }),
("IndexedReference", StructDetails { field_order: None }),
("TSSymbolKeyword", StructDetails { field_order: None }),
("TSInferType", StructDetails { field_order: None }),
("AssignmentTargetWithDefault", StructDetails { field_order: None }),
("TemplateLiteral", StructDetails { field_order: None }),
("PrivateInExpression", StructDetails { field_order: None }),
("JSXFragment", StructDetails { field_order: None }),
("ImportEntry", StructDetails { field_order: None }),
("JSXExpressionContainer", StructDetails { field_order: None }),
("TSTypeAssertion", StructDetails { field_order: None }),
(
"AccessorProperty",
StructDetails { field_order: Some(&[0, 5, 1, 2, 3, 4, 6, 7, 8, 9, 10]) },
),
("Modifier", StructDetails { field_order: None }),
("LabelIdentifier", StructDetails { field_order: None }),
("TSEnumMember", StructDetails { field_order: None }),
("TSUndefinedKeyword", StructDetails { field_order: None }),
("TSImportTypeQualifiedName", StructDetails { field_order: None }),
("BoundaryAssertion", StructDetails { field_order: None }),
("TSClassImplements", StructDetails { field_order: None }),
("BreakStatement", StructDetails { field_order: None }),
("TSConstructorType", StructDetails { field_order: Some(&[0, 5, 1, 2, 3, 4]) }),
("TSCallSignatureDeclaration", StructDetails { field_order: None }),
("ExportDefaultDeclaration", StructDetails { field_order: None }),
("TSGlobalDeclaration", StructDetails { field_order: Some(&[0, 1, 2, 4, 3]) }),
("TSFunctionType", StructDetails { field_order: None }),
("VariableDeclarator", StructDetails { field_order: Some(&[0, 4, 1, 2, 3, 5]) }),
("StaticExport", StructDetails { field_order: None }),
("MetaProperty", StructDetails { field_order: None }),
("TSInterfaceHeritage", StructDetails { field_order: None }),
("CharacterClassRange", StructDetails { field_order: None }),
("LogicalExpression", StructDetails { field_order: Some(&[0, 1, 3, 2]) }),
("TSBigIntKeyword", StructDetails { field_order: None }),
("TSConditionalType", StructDetails { field_order: None }),
("CapturingGroup", StructDetails { field_order: None }),
("JSXOpeningElement", StructDetails { field_order: None }),
("ImportExpression", StructDetails { field_order: None }),
("ImportDefaultSpecifier", StructDetails { field_order: None }),
("Pattern", StructDetails { field_order: None }),
("FormalParameterRest", StructDetails { field_order: None }),
("TSImportType", StructDetails { field_order: None }),
("FormalParameter", StructDetails { field_order: None }),
("TemplateElementValue", StructDetails { field_order: None }),
("TSThisParameter", StructDetails { field_order: None }),
("RegExpLiteral", StructDetails { field_order: None }),
("RegExpFlags", StructDetails { field_order: None }),
("TSSatisfiesExpression", StructDetails { field_order: None }),
("ClassBody", StructDetails { field_order: None }),
("ClassStringDisjunction", StructDetails { field_order: Some(&[0, 2, 1]) }),
("TSMethodSignature", StructDetails { field_order: Some(&[0, 1, 7, 8, 9, 2, 3, 4, 5, 6]) }),
("WhileStatement", StructDetails { field_order: None }),
("JSXIdentifier", StructDetails { field_order: None }),
(
"ArrowFunctionExpression",
StructDetails { field_order: Some(&[0, 6, 7, 1, 2, 3, 4, 5, 8, 9]) },
),
("Alternative", StructDetails { field_order: None }),
("TSArrayType", StructDetails { field_order: None }),
("PrivateFieldExpression", StructDetails { field_order: None }),
("ExportNamedDeclaration", StructDetails { field_order: Some(&[0, 1, 2, 3, 5, 4]) }),
("Directive", StructDetails { field_order: None }),
("TryStatement", StructDetails { field_order: None }),
("AwaitExpression", StructDetails { field_order: None }),
("StaticBlock", StructDetails { field_order: None }),
("TSTypeAliasDeclaration", StructDetails { field_order: Some(&[0, 1, 2, 3, 5, 4]) }),
("VariableDeclaration", StructDetails { field_order: Some(&[0, 2, 1, 3]) }),
("TSExportAssignment", StructDetails { field_order: None }),
("JSDocNonNullableType", StructDetails { field_order: None }),
("FixedSizeAllocatorMetadata", StructDetails { field_order: Some(&[1, 0, 2]) }),
("TSNonNullExpression", StructDetails { field_order: None }),
("BinaryExpression", StructDetails { field_order: Some(&[0, 1, 3, 2]) }),
("TSNamespaceExportDeclaration", StructDetails { field_order: None }),
("BooleanLiteral", StructDetails { field_order: None }),
("TSConstructSignatureDeclaration", StructDetails { field_order: None }),
("FormalParameters", StructDetails { field_order: Some(&[0, 3, 1, 2]) }),
(
"Function",
StructDetails { field_order: Some(&[0, 8, 1, 9, 10, 11, 2, 3, 4, 5, 6, 7, 12, 13]) },
),
("TSNullKeyword", StructDetails { field_order: None }),
("Elision", StructDetails { field_order: None }),
("TSIndexSignature", StructDetails { field_order: None }),
("TSIndexSignatureName", StructDetails { field_order: None }),
("Super", StructDetails { field_order: None }),
("Quantifier", StructDetails { field_order: Some(&[0, 1, 2, 4, 3]) }),
("ObjectPattern", StructDetails { field_order: None }),
("DynamicImport", StructDetails { field_order: None }),
("TSBooleanKeyword", StructDetails { field_order: None }),
("TSParenthesizedType", StructDetails { field_order: None }),
("NameSpan", StructDetails { field_order: Some(&[1, 0]) }),
("ComputedMemberExpression", StructDetails { field_order: None }),
("YieldExpression", StructDetails { field_order: Some(&[0, 2, 1]) }),
("TSTypeAnnotation", StructDetails { field_order: None }),
("JSXMemberExpression", StructDetails { field_order: None }),
("TSImportEqualsDeclaration", StructDetails { field_order: None }),
("TSVoidKeyword", StructDetails { field_order: None }),
("SequenceExpression", StructDetails { field_order: None }),
("ExportSpecifier", StructDetails { field_order: None }),
("TSTypeParameterDeclaration", StructDetails { field_order: None }),
("BindingIdentifier", StructDetails { field_order: None }),
("JSXClosingElement", StructDetails { field_order: None }),
("CommentNodeId", StructDetails { field_order: None }),
("TSExternalModuleReference", StructDetails { field_order: None }),
("TSInstantiationExpression", StructDetails { field_order: None }),
("ExpressionStatement", StructDetails { field_order: None }),
("NonMaxU32", StructDetails { field_order: None }),
],
};