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