@code-yeongyu/senpi 2026.7.10 → 2026.7.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +79 -0
- package/README.md +4 -2
- package/dist/core/agent-session.d.ts +9 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +56 -15
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/extensions/builtin/bash-timeout/timeout.js +2 -2
- package/dist/core/extensions/builtin/bash-timeout/timeout.js.map +1 -1
- package/dist/core/extensions/builtin/compaction/index.d.ts.map +1 -1
- package/dist/core/extensions/builtin/compaction/index.js +10 -1
- package/dist/core/extensions/builtin/compaction/index.js.map +1 -1
- package/dist/core/extensions/builtin/goal/store.d.ts.map +1 -1
- package/dist/core/extensions/builtin/goal/store.js +88 -3
- package/dist/core/extensions/builtin/goal/store.js.map +1 -1
- package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.d.ts +3 -0
- package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.d.ts.map +1 -0
- package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.js +134 -0
- package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.js.map +1 -0
- package/dist/core/extensions/builtin/prompt-preset/presets.d.ts.map +1 -1
- package/dist/core/extensions/builtin/prompt-preset/presets.js +6 -0
- package/dist/core/extensions/builtin/prompt-preset/presets.js.map +1 -1
- package/dist/core/extensions/builtin/prompt-preset/settings.d.ts +1 -1
- package/dist/core/extensions/builtin/prompt-preset/settings.d.ts.map +1 -1
- package/dist/core/extensions/builtin/prompt-preset/settings.js +1 -0
- package/dist/core/extensions/builtin/prompt-preset/settings.js.map +1 -1
- package/dist/core/extensions/builtin/terminal/notify.d.ts +3 -3
- package/dist/core/extensions/builtin/terminal/notify.d.ts.map +1 -1
- package/dist/core/extensions/builtin/terminal/notify.js +7 -4
- package/dist/core/extensions/builtin/terminal/notify.js.map +1 -1
- package/dist/core/extensions/builtin/terminal/runtime-session.d.ts +5 -3
- package/dist/core/extensions/builtin/terminal/runtime-session.d.ts.map +1 -1
- package/dist/core/extensions/builtin/terminal/runtime-session.js +32 -16
- package/dist/core/extensions/builtin/terminal/runtime-session.js.map +1 -1
- package/dist/core/extensions/builtin/terminal/tools/bash-output.d.ts +1 -1
- package/dist/core/extensions/builtin/terminal/tools/bash-output.d.ts.map +1 -1
- package/dist/core/extensions/builtin/terminal/tools/bash-output.js +10 -4
- package/dist/core/extensions/builtin/terminal/tools/bash-output.js.map +1 -1
- package/dist/core/extensions/builtin/todotools/tools/todowrite.d.ts.map +1 -1
- package/dist/core/extensions/builtin/todotools/tools/todowrite.js +5 -8
- package/dist/core/extensions/builtin/todotools/tools/todowrite.js.map +1 -1
- package/dist/core/extensions/runner.d.ts +1 -0
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +5 -0
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/types.d.ts +5 -8
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/extensions/wrapper.d.ts.map +1 -1
- package/dist/core/extensions/wrapper.js +22 -3
- package/dist/core/extensions/wrapper.js.map +1 -1
- package/dist/core/keybindings.d.ts +8 -3
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js +7 -3
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/model-registry.d.ts +1 -6
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +19 -6
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/resource-loader.d.ts +1 -0
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +20 -2
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/settings-manager.d.ts +4 -3
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +2 -1
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/modes/interactive/compaction-queue-transfer.d.ts +22 -0
- package/dist/modes/interactive/compaction-queue-transfer.d.ts.map +1 -0
- package/dist/modes/interactive/compaction-queue-transfer.js +82 -0
- package/dist/modes/interactive/compaction-queue-transfer.js.map +1 -0
- package/dist/modes/interactive/components/custom-editor.js +1 -1
- package/dist/modes/interactive/components/custom-editor.js.map +1 -1
- package/dist/modes/interactive/components/login-dialog.d.ts +4 -0
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
- package/dist/modes/interactive/components/login-dialog.js +9 -2
- package/dist/modes/interactive/components/login-dialog.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +1 -1
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js +1 -1
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution-fallback.d.ts +6 -0
- package/dist/modes/interactive/components/tool-execution-fallback.d.ts.map +1 -0
- package/dist/modes/interactive/components/tool-execution-fallback.js +40 -0
- package/dist/modes/interactive/components/tool-execution-fallback.js.map +1 -0
- package/dist/modes/interactive/components/tool-execution-images.d.ts +23 -0
- package/dist/modes/interactive/components/tool-execution-images.d.ts.map +1 -0
- package/dist/modes/interactive/components/tool-execution-images.js +104 -0
- package/dist/modes/interactive/components/tool-execution-images.js.map +1 -0
- package/dist/modes/interactive/components/tool-execution-renderer.d.ts +28 -0
- package/dist/modes/interactive/components/tool-execution-renderer.d.ts.map +1 -0
- package/dist/modes/interactive/components/tool-execution-renderer.js +135 -0
- package/dist/modes/interactive/components/tool-execution-renderer.js.map +1 -0
- package/dist/modes/interactive/components/tool-execution-types.d.ts +23 -0
- package/dist/modes/interactive/components/tool-execution-types.d.ts.map +1 -0
- package/dist/modes/interactive/components/tool-execution-types.js +2 -0
- package/dist/modes/interactive/components/tool-execution-types.js.map +1 -0
- package/dist/modes/interactive/components/tool-execution.d.ts +13 -39
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +51 -294
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/tool-renderer-boundary.d.ts +17 -0
- package/dist/modes/interactive/components/tool-renderer-boundary.d.ts.map +1 -0
- package/dist/modes/interactive/components/tool-renderer-boundary.js +75 -0
- package/dist/modes/interactive/components/tool-renderer-boundary.js.map +1 -0
- package/dist/modes/interactive/components/tree-selector.d.ts +5 -0
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector.js +50 -17
- package/dist/modes/interactive/components/tree-selector.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +5 -2
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +127 -109
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/theme/dark.json +1 -0
- package/dist/modes/interactive/theme/light.json +1 -0
- package/dist/modes/interactive/theme/theme-schema.json +6 -2
- package/dist/modes/interactive/theme/theme.d.ts +3 -2
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +11 -4
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/utils/clipboard-native.d.ts +1 -0
- package/dist/utils/clipboard-native.d.ts.map +1 -1
- package/dist/utils/clipboard-native.js.map +1 -1
- package/dist/utils/clipboard.d.ts +2 -0
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js +13 -0
- package/dist/utils/clipboard.js.map +1 -1
- package/docs/custom-provider.md +4 -3
- package/docs/extensions.md +140 -1
- package/docs/keybindings.md +1 -0
- package/docs/models.md +45 -4
- package/docs/providers.md +3 -0
- package/docs/quickstart.md +1 -1
- package/docs/rpc.md +2 -2
- package/docs/sdk.md +1 -1
- package/docs/settings.md +3 -3
- package/docs/themes.md +5 -3
- package/docs/tui.md +1 -1
- package/docs/usage.md +2 -1
- package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/gondolin/package-lock.json +2 -2
- package/examples/extensions/gondolin/package.json +1 -1
- package/examples/extensions/sandbox/package-lock.json +2 -2
- package/examples/extensions/sandbox/package.json +1 -1
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/node_modules/@babel/helper-string-parser/LICENSE +22 -0
- package/node_modules/@babel/helper-string-parser/README.md +19 -0
- package/node_modules/@babel/helper-string-parser/lib/index.js +295 -0
- package/node_modules/@babel/helper-string-parser/lib/index.js.map +1 -0
- package/node_modules/@babel/helper-string-parser/package.json +31 -0
- package/node_modules/@babel/helper-validator-identifier/LICENSE +22 -0
- package/node_modules/@babel/helper-validator-identifier/README.md +19 -0
- package/node_modules/@babel/helper-validator-identifier/lib/identifier.js +70 -0
- package/node_modules/@babel/helper-validator-identifier/lib/identifier.js.map +1 -0
- package/node_modules/@babel/helper-validator-identifier/lib/index.js +57 -0
- package/node_modules/@babel/helper-validator-identifier/lib/index.js.map +1 -0
- package/node_modules/@babel/helper-validator-identifier/lib/keyword.js +35 -0
- package/node_modules/@babel/helper-validator-identifier/lib/keyword.js.map +1 -0
- package/node_modules/@babel/helper-validator-identifier/package.json +31 -0
- package/node_modules/@babel/parser/LICENSE +19 -0
- package/node_modules/@babel/parser/README.md +19 -0
- package/node_modules/@babel/parser/bin/babel-parser.js +15 -0
- package/node_modules/@babel/parser/lib/index.js +14599 -0
- package/node_modules/@babel/parser/lib/index.js.map +1 -0
- package/node_modules/@babel/parser/package.json +50 -0
- package/node_modules/@babel/parser/typings/babel-parser.d.ts +262 -0
- package/node_modules/@babel/types/LICENSE +22 -0
- package/node_modules/@babel/types/README.md +19 -0
- package/node_modules/@babel/types/lib/asserts/assertNode.js +16 -0
- package/node_modules/@babel/types/lib/asserts/assertNode.js.map +1 -0
- package/node_modules/@babel/types/lib/asserts/generated/index.js +1251 -0
- package/node_modules/@babel/types/lib/asserts/generated/index.js.map +1 -0
- package/node_modules/@babel/types/lib/ast-types/generated/index.js +3 -0
- package/node_modules/@babel/types/lib/ast-types/generated/index.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/flow/createFlowUnionType.js +18 -0
- package/node_modules/@babel/types/lib/builders/flow/createFlowUnionType.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/flow/createTypeAnnotationBasedOnTypeof.js +31 -0
- package/node_modules/@babel/types/lib/builders/flow/createTypeAnnotationBasedOnTypeof.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/generated/index.js +29 -0
- package/node_modules/@babel/types/lib/builders/generated/index.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/generated/lowercase.js +2902 -0
- package/node_modules/@babel/types/lib/builders/generated/lowercase.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/generated/uppercase.js +272 -0
- package/node_modules/@babel/types/lib/builders/generated/uppercase.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/productions.js +12 -0
- package/node_modules/@babel/types/lib/builders/productions.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/react/buildChildren.js +24 -0
- package/node_modules/@babel/types/lib/builders/react/buildChildren.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/typescript/createTSUnionType.js +22 -0
- package/node_modules/@babel/types/lib/builders/typescript/createTSUnionType.js.map +1 -0
- package/node_modules/@babel/types/lib/builders/validateNode.js +21 -0
- package/node_modules/@babel/types/lib/builders/validateNode.js.map +1 -0
- package/node_modules/@babel/types/lib/clone/clone.js +12 -0
- package/node_modules/@babel/types/lib/clone/clone.js.map +1 -0
- package/node_modules/@babel/types/lib/clone/cloneDeep.js +12 -0
- package/node_modules/@babel/types/lib/clone/cloneDeep.js.map +1 -0
- package/node_modules/@babel/types/lib/clone/cloneDeepWithoutLoc.js +12 -0
- package/node_modules/@babel/types/lib/clone/cloneDeepWithoutLoc.js.map +1 -0
- package/node_modules/@babel/types/lib/clone/cloneNode.js +107 -0
- package/node_modules/@babel/types/lib/clone/cloneNode.js.map +1 -0
- package/node_modules/@babel/types/lib/clone/cloneWithoutLoc.js +12 -0
- package/node_modules/@babel/types/lib/clone/cloneWithoutLoc.js.map +1 -0
- package/node_modules/@babel/types/lib/comments/addComment.js +15 -0
- package/node_modules/@babel/types/lib/comments/addComment.js.map +1 -0
- package/node_modules/@babel/types/lib/comments/addComments.js +22 -0
- package/node_modules/@babel/types/lib/comments/addComments.js.map +1 -0
- package/node_modules/@babel/types/lib/comments/inheritInnerComments.js +12 -0
- package/node_modules/@babel/types/lib/comments/inheritInnerComments.js.map +1 -0
- package/node_modules/@babel/types/lib/comments/inheritLeadingComments.js +12 -0
- package/node_modules/@babel/types/lib/comments/inheritLeadingComments.js.map +1 -0
- package/node_modules/@babel/types/lib/comments/inheritTrailingComments.js +12 -0
- package/node_modules/@babel/types/lib/comments/inheritTrailingComments.js.map +1 -0
- package/node_modules/@babel/types/lib/comments/inheritsComments.js +17 -0
- package/node_modules/@babel/types/lib/comments/inheritsComments.js.map +1 -0
- package/node_modules/@babel/types/lib/comments/removeComments.js +15 -0
- package/node_modules/@babel/types/lib/comments/removeComments.js.map +1 -0
- package/node_modules/@babel/types/lib/constants/generated/index.js +60 -0
- package/node_modules/@babel/types/lib/constants/generated/index.js.map +1 -0
- package/node_modules/@babel/types/lib/constants/index.js +31 -0
- package/node_modules/@babel/types/lib/constants/index.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/ensureBlock.js +14 -0
- package/node_modules/@babel/types/lib/converters/ensureBlock.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/gatherSequenceExpressions.js +65 -0
- package/node_modules/@babel/types/lib/converters/gatherSequenceExpressions.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/toBindingIdentifierName.js +14 -0
- package/node_modules/@babel/types/lib/converters/toBindingIdentifierName.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/toBlock.js +29 -0
- package/node_modules/@babel/types/lib/converters/toBlock.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/toComputedKey.js +14 -0
- package/node_modules/@babel/types/lib/converters/toComputedKey.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/toExpression.js +28 -0
- package/node_modules/@babel/types/lib/converters/toExpression.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/toIdentifier.js +25 -0
- package/node_modules/@babel/types/lib/converters/toIdentifier.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/toKeyAlias.js +38 -0
- package/node_modules/@babel/types/lib/converters/toKeyAlias.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/toSequenceExpression.js +19 -0
- package/node_modules/@babel/types/lib/converters/toSequenceExpression.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/toStatement.js +39 -0
- package/node_modules/@babel/types/lib/converters/toStatement.js.map +1 -0
- package/node_modules/@babel/types/lib/converters/valueToNode.js +89 -0
- package/node_modules/@babel/types/lib/converters/valueToNode.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/core.js +1725 -0
- package/node_modules/@babel/types/lib/definitions/core.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/deprecated-aliases.js +11 -0
- package/node_modules/@babel/types/lib/definitions/deprecated-aliases.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/experimental.js +124 -0
- package/node_modules/@babel/types/lib/definitions/experimental.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/flow.js +495 -0
- package/node_modules/@babel/types/lib/definitions/flow.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/index.js +106 -0
- package/node_modules/@babel/types/lib/definitions/index.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/jsx.js +157 -0
- package/node_modules/@babel/types/lib/definitions/jsx.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/misc.js +31 -0
- package/node_modules/@babel/types/lib/definitions/misc.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/placeholders.js +27 -0
- package/node_modules/@babel/types/lib/definitions/placeholders.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/typescript.js +528 -0
- package/node_modules/@babel/types/lib/definitions/typescript.js.map +1 -0
- package/node_modules/@babel/types/lib/definitions/utils.js +296 -0
- package/node_modules/@babel/types/lib/definitions/utils.js.map +1 -0
- package/node_modules/@babel/types/lib/index-legacy.d.ts +2797 -0
- package/node_modules/@babel/types/lib/index.d.ts +3617 -0
- package/node_modules/@babel/types/lib/index.js +582 -0
- package/node_modules/@babel/types/lib/index.js.flow +2650 -0
- package/node_modules/@babel/types/lib/index.js.map +1 -0
- package/node_modules/@babel/types/lib/modifications/appendToMemberExpression.js +15 -0
- package/node_modules/@babel/types/lib/modifications/appendToMemberExpression.js.map +1 -0
- package/node_modules/@babel/types/lib/modifications/flow/removeTypeDuplicates.js +65 -0
- package/node_modules/@babel/types/lib/modifications/flow/removeTypeDuplicates.js.map +1 -0
- package/node_modules/@babel/types/lib/modifications/inherits.js +28 -0
- package/node_modules/@babel/types/lib/modifications/inherits.js.map +1 -0
- package/node_modules/@babel/types/lib/modifications/prependToMemberExpression.js +17 -0
- package/node_modules/@babel/types/lib/modifications/prependToMemberExpression.js.map +1 -0
- package/node_modules/@babel/types/lib/modifications/removeProperties.js +24 -0
- package/node_modules/@babel/types/lib/modifications/removeProperties.js.map +1 -0
- package/node_modules/@babel/types/lib/modifications/removePropertiesDeep.js +14 -0
- package/node_modules/@babel/types/lib/modifications/removePropertiesDeep.js.map +1 -0
- package/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js +66 -0
- package/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js.map +1 -0
- package/node_modules/@babel/types/lib/retrievers/getAssignmentIdentifiers.js +48 -0
- package/node_modules/@babel/types/lib/retrievers/getAssignmentIdentifiers.js.map +1 -0
- package/node_modules/@babel/types/lib/retrievers/getBindingIdentifiers.js +102 -0
- package/node_modules/@babel/types/lib/retrievers/getBindingIdentifiers.js.map +1 -0
- package/node_modules/@babel/types/lib/retrievers/getFunctionName.js +63 -0
- package/node_modules/@babel/types/lib/retrievers/getFunctionName.js.map +1 -0
- package/node_modules/@babel/types/lib/retrievers/getOuterBindingIdentifiers.js +13 -0
- package/node_modules/@babel/types/lib/retrievers/getOuterBindingIdentifiers.js.map +1 -0
- package/node_modules/@babel/types/lib/traverse/traverse.js +50 -0
- package/node_modules/@babel/types/lib/traverse/traverse.js.map +1 -0
- package/node_modules/@babel/types/lib/traverse/traverseFast.js +40 -0
- package/node_modules/@babel/types/lib/traverse/traverseFast.js.map +1 -0
- package/node_modules/@babel/types/lib/utils/deprecationWarning.js +44 -0
- package/node_modules/@babel/types/lib/utils/deprecationWarning.js.map +1 -0
- package/node_modules/@babel/types/lib/utils/inherit.js +13 -0
- package/node_modules/@babel/types/lib/utils/inherit.js.map +1 -0
- package/node_modules/@babel/types/lib/utils/react/cleanJSXElementLiteralChild.js +40 -0
- package/node_modules/@babel/types/lib/utils/react/cleanJSXElementLiteralChild.js.map +1 -0
- package/node_modules/@babel/types/lib/utils/shallowEqual.js +17 -0
- package/node_modules/@babel/types/lib/utils/shallowEqual.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/buildMatchMemberExpression.js +13 -0
- package/node_modules/@babel/types/lib/validators/buildMatchMemberExpression.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/generated/index.js +2797 -0
- package/node_modules/@babel/types/lib/validators/generated/index.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/is.js +27 -0
- package/node_modules/@babel/types/lib/validators/is.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isBinding.js +27 -0
- package/node_modules/@babel/types/lib/validators/isBinding.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isBlockScoped.js +13 -0
- package/node_modules/@babel/types/lib/validators/isBlockScoped.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isImmutable.js +21 -0
- package/node_modules/@babel/types/lib/validators/isImmutable.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isLet.js +13 -0
- package/node_modules/@babel/types/lib/validators/isLet.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isNode.js +12 -0
- package/node_modules/@babel/types/lib/validators/isNode.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isNodesEquivalent.js +57 -0
- package/node_modules/@babel/types/lib/validators/isNodesEquivalent.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isPlaceholderType.js +15 -0
- package/node_modules/@babel/types/lib/validators/isPlaceholderType.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isReferenced.js +96 -0
- package/node_modules/@babel/types/lib/validators/isReferenced.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isScope.js +18 -0
- package/node_modules/@babel/types/lib/validators/isScope.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isSpecifierDefault.js +14 -0
- package/node_modules/@babel/types/lib/validators/isSpecifierDefault.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isType.js +17 -0
- package/node_modules/@babel/types/lib/validators/isType.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isValidES3Identifier.js +13 -0
- package/node_modules/@babel/types/lib/validators/isValidES3Identifier.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isValidIdentifier.js +18 -0
- package/node_modules/@babel/types/lib/validators/isValidIdentifier.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/isVar.js +15 -0
- package/node_modules/@babel/types/lib/validators/isVar.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/matchesPattern.js +44 -0
- package/node_modules/@babel/types/lib/validators/matchesPattern.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/react/isCompatTag.js +11 -0
- package/node_modules/@babel/types/lib/validators/react/isCompatTag.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/react/isReactComponent.js +11 -0
- package/node_modules/@babel/types/lib/validators/react/isReactComponent.js.map +1 -0
- package/node_modules/@babel/types/lib/validators/validate.js +42 -0
- package/node_modules/@babel/types/lib/validators/validate.js.map +1 -0
- package/node_modules/@babel/types/package.json +39 -0
- package/node_modules/@code-yeongyu/senpi-codemode/CHANGELOG.md +13 -2
- package/node_modules/@code-yeongyu/senpi-codemode/README.md +128 -78
- package/node_modules/@code-yeongyu/senpi-codemode/package.json +4 -3
- package/node_modules/@code-yeongyu/senpi-codemode/src/bridge/protocol.ts +22 -9
- package/node_modules/@code-yeongyu/senpi-codemode/src/bridge/reserved.ts +9 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/bridges/agent-bridge.ts +197 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/bridges/output-bridge.ts +96 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/bridges/schema-injection.ts +3 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/completion/handler.ts +95 -26
- package/node_modules/@code-yeongyu/senpi-codemode/src/completion/tool-bridge.ts +14 -2
- package/node_modules/@code-yeongyu/senpi-codemode/src/config/settings.ts +96 -8
- package/node_modules/@code-yeongyu/senpi-codemode/src/extension/session-manager.ts +92 -10
- package/node_modules/@code-yeongyu/senpi-codemode/src/index.ts +187 -27
- package/node_modules/@code-yeongyu/senpi-codemode/src/interpreters/detect.ts +1 -1
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/jl/prelude.jl +252 -48
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/jl/runner.jl +263 -83
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/context-manager.ts +198 -149
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/inline-worker-entry.js +23 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/inline-worker.ts +4 -175
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/kernel-contract.ts +38 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/local-module-loader.ts +108 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/prelude.ts +8 -6
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/rewrite-imports.ts +164 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/run-queue.ts +82 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/worker-core.js +13 -4
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/worker-host.ts +117 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/js/worker-runtime.js +307 -41
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/py/kernel-contract.ts +32 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/py/kernel.ts +232 -199
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/py/prelude.py +792 -79
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/py/process.ts +119 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/py/transport.ts +237 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/rb/prelude.rb +234 -21
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/rb/runner.rb +154 -51
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/shared/subprocess-contract.ts +22 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/shared/subprocess-kernel.ts +214 -189
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/shared/subprocess-process.ts +174 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/shared/subprocess-queue.ts +101 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/shared/subprocess-run.ts +98 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/output/output-meta.ts +89 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/output/streaming-output.ts +296 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/prompt/eval-prompt.ts +107 -30
- package/node_modules/@code-yeongyu/senpi-codemode/src/timeouts/bridge-timeout.ts +2 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/timeouts/idle-timeout.ts +8 -19
- package/node_modules/@code-yeongyu/senpi-codemode/src/tool/cell-handler.ts +267 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/tool/eval-tool.ts +226 -211
- package/node_modules/@code-yeongyu/senpi-codemode/src/tool/image.ts +274 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/tool/json-tree.ts +247 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/tool/render.ts +828 -35
- package/node_modules/@code-yeongyu/senpi-codemode/src/tool/status-events.ts +12 -0
- package/node_modules/@code-yeongyu/senpi-codemode/src/tool/types.ts +30 -1
- package/node_modules/@earendil-works/pi-agent-core/README.md +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +2 -0
- package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts +4 -3
- package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/dist/types.js.map +1 -1
- package/node_modules/@earendil-works/pi-agent-core/package.json +2 -2
- package/node_modules/@earendil-works/pi-ai/README.md +4 -2
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +89 -40
- package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js +7 -7
- package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js +10 -3
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +5 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.d.ts +3 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.js +35 -4
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +7 -3
- package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js +8 -3
- package/node_modules/@earendil-works/pi-ai/dist/api/simple-options.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/transform-messages.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/api/transform-messages.js +4 -3
- package/node_modules/@earendil-works/pi-ai/dist/api/transform-messages.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/compat.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/compat.js +2 -1
- package/node_modules/@earendil-works/pi-ai/dist/compat.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts +483 -61
- package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/models.js +13 -4
- package/node_modules/@earendil-works/pi-ai/dist/models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js +5 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.d.ts +62 -5
- package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.js +32 -20
- package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.d.ts +11 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.js +6 -4
- package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.d.ts +7 -8
- package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.js +20 -21
- package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.d.ts +11 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.js +6 -4
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-auth.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-auth.js +9 -6
- package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-auth.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.d.ts +2 -2
- package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.js +2 -2
- package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.d.ts +2 -2
- package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.js +2 -2
- package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.d.ts +100 -2
- package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.js +64 -5
- package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.d.ts +56 -0
- package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.js +20 -9
- package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.d.ts +77 -8
- package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.js +37 -24
- package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.d.ts +3 -3
- package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.js +3 -3
- package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.d.ts +80 -4
- package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.js +64 -8
- package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.d.ts +25 -22
- package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.js +68 -83
- package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.d.ts +45 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.js +49 -13
- package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.js +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.d.ts +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.js +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +30 -7
- package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/deferred-tools.d.ts +9 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/deferred-tools.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/deferred-tools.js +36 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/deferred-tools.js.map +1 -0
- package/node_modules/@earendil-works/pi-ai/dist/utils/estimate.d.ts +3 -3
- package/node_modules/@earendil-works/pi-ai/dist/utils/estimate.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-ai/dist/utils/estimate.js +35 -14
- package/node_modules/@earendil-works/pi-ai/dist/utils/estimate.js.map +1 -1
- package/node_modules/@earendil-works/pi-ai/package.json +2 -2
- package/node_modules/@earendil-works/pi-pty/package.json +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/image.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/image.js +2 -1
- package/node_modules/@earendil-works/pi-tui/dist/components/image.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +2 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.js +2 -1
- package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/keys.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/keys.js +6 -5
- package/node_modules/@earendil-works/pi-tui/dist/keys.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts +0 -1
- package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +0 -9
- package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js.map +1 -1
- package/node_modules/@earendil-works/pi-tui/dist/terminal-text.d.ts +4 -0
- package/node_modules/@earendil-works/pi-tui/dist/terminal-text.d.ts.map +1 -0
- package/node_modules/@earendil-works/pi-tui/dist/terminal-text.js +18 -0
- package/node_modules/@earendil-works/pi-tui/dist/terminal-text.js.map +1 -0
- package/node_modules/@earendil-works/pi-tui/package.json +2 -2
- package/package.json +6 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/ast-types/generated/index.ts"],"sourcesContent":["// NOTE: This file is autogenerated. Do not modify.\n// See packages/babel-types/scripts/generators/ast-types.ts for script used.\n\ninterface BaseComment {\n value: string;\n start?: number;\n end?: number;\n loc?: SourceLocation;\n // generator will skip the comment if ignore is true\n ignore?: boolean;\n type: \"CommentBlock\" | \"CommentLine\";\n}\n\ninterface Position {\n line: number;\n column: number;\n index: number;\n}\n\nexport interface CommentBlock extends BaseComment {\n type: \"CommentBlock\";\n}\n\nexport interface CommentLine extends BaseComment {\n type: \"CommentLine\";\n}\n\nexport type Comment = CommentBlock | CommentLine;\n\nexport interface SourceLocation {\n start: Position;\n end: Position;\n filename: string;\n identifierName: string | undefined | null;\n}\n\ninterface BaseNode {\n leadingComments?: Comment[] | null;\n innerComments?: Comment[] | null;\n trailingComments?: Comment[] | null;\n start?: number | null;\n end?: number | null;\n loc?: SourceLocation | null;\n range?: [number, number];\n extra?: Record<string, unknown>;\n}\n\nexport type CommentTypeShorthand = \"leading\" | \"inner\" | \"trailing\";\n\nexport type Node =\n | AnyTypeAnnotation\n | ArgumentPlaceholder\n | ArrayExpression\n | ArrayPattern\n | ArrayTypeAnnotation\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BigIntLiteral\n | BinaryExpression\n | BindExpression\n | BlockStatement\n | BooleanLiteral\n | BooleanLiteralTypeAnnotation\n | BooleanTypeAnnotation\n | BreakStatement\n | CallExpression\n | CatchClause\n | ClassAccessorProperty\n | ClassBody\n | ClassDeclaration\n | ClassExpression\n | ClassImplements\n | ClassMethod\n | ClassPrivateMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | ContinueStatement\n | DebuggerStatement\n | DecimalLiteral\n | DeclareClass\n | DeclareExportAllDeclaration\n | DeclareExportDeclaration\n | DeclareFunction\n | DeclareInterface\n | DeclareModule\n | DeclareModuleExports\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclareVariable\n | DeclaredPredicate\n | Decorator\n | Directive\n | DirectiveLiteral\n | DoExpression\n | DoWhileStatement\n | EmptyStatement\n | EmptyTypeAnnotation\n | EnumBooleanBody\n | EnumBooleanMember\n | EnumDeclaration\n | EnumDefaultedMember\n | EnumNumberBody\n | EnumNumberMember\n | EnumStringBody\n | EnumStringMember\n | EnumSymbolBody\n | ExistsTypeAnnotation\n | ExportAllDeclaration\n | ExportDefaultDeclaration\n | ExportDefaultSpecifier\n | ExportNamedDeclaration\n | ExportNamespaceSpecifier\n | ExportSpecifier\n | ExpressionStatement\n | File\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | FunctionDeclaration\n | FunctionExpression\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | GenericTypeAnnotation\n | Identifier\n | IfStatement\n | Import\n | ImportAttribute\n | ImportDeclaration\n | ImportDefaultSpecifier\n | ImportExpression\n | ImportNamespaceSpecifier\n | ImportSpecifier\n | IndexedAccessType\n | InferredPredicate\n | InterfaceDeclaration\n | InterfaceExtends\n | InterfaceTypeAnnotation\n | InterpreterDirective\n | IntersectionTypeAnnotation\n | JSXAttribute\n | JSXClosingElement\n | JSXClosingFragment\n | JSXElement\n | JSXEmptyExpression\n | JSXExpressionContainer\n | JSXFragment\n | JSXIdentifier\n | JSXMemberExpression\n | JSXNamespacedName\n | JSXOpeningElement\n | JSXOpeningFragment\n | JSXSpreadAttribute\n | JSXSpreadChild\n | JSXText\n | LabeledStatement\n | LogicalExpression\n | MemberExpression\n | MetaProperty\n | MixedTypeAnnotation\n | ModuleExpression\n | NewExpression\n | Noop\n | NullLiteral\n | NullLiteralTypeAnnotation\n | NullableTypeAnnotation\n | NumberLiteral\n | NumberLiteralTypeAnnotation\n | NumberTypeAnnotation\n | NumericLiteral\n | ObjectExpression\n | ObjectMethod\n | ObjectPattern\n | ObjectProperty\n | ObjectTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalCallExpression\n | OptionalIndexedAccessType\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelinePrimaryTopicReference\n | PipelineTopicExpression\n | Placeholder\n | PrivateName\n | Program\n | QualifiedTypeIdentifier\n | RecordExpression\n | RegExpLiteral\n | RegexLiteral\n | RestElement\n | RestProperty\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SpreadProperty\n | StaticBlock\n | StringLiteral\n | StringLiteralTypeAnnotation\n | StringTypeAnnotation\n | Super\n | SwitchCase\n | SwitchStatement\n | SymbolTypeAnnotation\n | TSAnyKeyword\n | TSArrayType\n | TSAsExpression\n | TSBigIntKeyword\n | TSBooleanKeyword\n | TSCallSignatureDeclaration\n | TSConditionalType\n | TSConstructSignatureDeclaration\n | TSConstructorType\n | TSDeclareFunction\n | TSDeclareMethod\n | TSEnumBody\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSExpressionWithTypeArguments\n | TSExternalModuleReference\n | TSFunctionType\n | TSImportEqualsDeclaration\n | TSImportType\n | TSIndexSignature\n | TSIndexedAccessType\n | TSInferType\n | TSInstantiationExpression\n | TSInterfaceBody\n | TSInterfaceDeclaration\n | TSIntersectionType\n | TSIntrinsicKeyword\n | TSLiteralType\n | TSMappedType\n | TSMethodSignature\n | TSModuleBlock\n | TSModuleDeclaration\n | TSNamedTupleMember\n | TSNamespaceExportDeclaration\n | TSNeverKeyword\n | TSNonNullExpression\n | TSNullKeyword\n | TSNumberKeyword\n | TSObjectKeyword\n | TSOptionalType\n | TSParameterProperty\n | TSParenthesizedType\n | TSPropertySignature\n | TSQualifiedName\n | TSRestType\n | TSSatisfiesExpression\n | TSStringKeyword\n | TSSymbolKeyword\n | TSTemplateLiteralType\n | TSThisType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeLiteral\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterDeclaration\n | TSTypeParameterInstantiation\n | TSTypePredicate\n | TSTypeQuery\n | TSTypeReference\n | TSUndefinedKeyword\n | TSUnionType\n | TSUnknownKeyword\n | TSVoidKeyword\n | TaggedTemplateExpression\n | TemplateElement\n | TemplateLiteral\n | ThisExpression\n | ThisTypeAnnotation\n | ThrowStatement\n | TopicReference\n | TryStatement\n | TupleExpression\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeCastExpression\n | TypeParameter\n | TypeParameterDeclaration\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnaryExpression\n | UnionTypeAnnotation\n | UpdateExpression\n | V8IntrinsicIdentifier\n | VariableDeclaration\n | VariableDeclarator\n | Variance\n | VoidPattern\n | VoidTypeAnnotation\n | WhileStatement\n | WithStatement\n | YieldExpression;\n\nexport interface ArrayExpression extends BaseNode {\n type: \"ArrayExpression\";\n elements: (null | Expression | SpreadElement)[];\n}\n\nexport interface AssignmentExpression extends BaseNode {\n type: \"AssignmentExpression\";\n operator: string;\n left: LVal | OptionalMemberExpression;\n right: Expression;\n}\n\nexport interface BinaryExpression extends BaseNode {\n type: \"BinaryExpression\";\n operator:\n | \"+\"\n | \"-\"\n | \"/\"\n | \"%\"\n | \"*\"\n | \"**\"\n | \"&\"\n | \"|\"\n | \">>\"\n | \">>>\"\n | \"<<\"\n | \"^\"\n | \"==\"\n | \"===\"\n | \"!=\"\n | \"!==\"\n | \"in\"\n | \"instanceof\"\n | \">\"\n | \"<\"\n | \">=\"\n | \"<=\"\n | \"|>\";\n left: Expression | PrivateName;\n right: Expression;\n}\n\nexport interface InterpreterDirective extends BaseNode {\n type: \"InterpreterDirective\";\n value: string;\n}\n\nexport interface Directive extends BaseNode {\n type: \"Directive\";\n value: DirectiveLiteral;\n}\n\nexport interface DirectiveLiteral extends BaseNode {\n type: \"DirectiveLiteral\";\n value: string;\n}\n\nexport interface BlockStatement extends BaseNode {\n type: \"BlockStatement\";\n body: Statement[];\n directives: Directive[];\n}\n\nexport interface BreakStatement extends BaseNode {\n type: \"BreakStatement\";\n label?: Identifier | null;\n}\n\nexport interface CallExpression extends BaseNode {\n type: \"CallExpression\";\n callee: Expression | Super | V8IntrinsicIdentifier;\n arguments: (Expression | SpreadElement | ArgumentPlaceholder)[];\n optional?: boolean | null;\n typeArguments?: TypeParameterInstantiation | null;\n typeParameters?: TSTypeParameterInstantiation | null;\n}\n\nexport interface CatchClause extends BaseNode {\n type: \"CatchClause\";\n param?: Identifier | ArrayPattern | ObjectPattern | null;\n body: BlockStatement;\n}\n\nexport interface ConditionalExpression extends BaseNode {\n type: \"ConditionalExpression\";\n test: Expression;\n consequent: Expression;\n alternate: Expression;\n}\n\nexport interface ContinueStatement extends BaseNode {\n type: \"ContinueStatement\";\n label?: Identifier | null;\n}\n\nexport interface DebuggerStatement extends BaseNode {\n type: \"DebuggerStatement\";\n}\n\nexport interface DoWhileStatement extends BaseNode {\n type: \"DoWhileStatement\";\n test: Expression;\n body: Statement;\n}\n\nexport interface EmptyStatement extends BaseNode {\n type: \"EmptyStatement\";\n}\n\nexport interface ExpressionStatement extends BaseNode {\n type: \"ExpressionStatement\";\n expression: Expression;\n}\n\nexport interface File extends BaseNode {\n type: \"File\";\n program: Program;\n comments?: (CommentBlock | CommentLine)[] | null;\n tokens?: any[] | null;\n}\n\nexport interface ForInStatement extends BaseNode {\n type: \"ForInStatement\";\n left: VariableDeclaration | LVal;\n right: Expression;\n body: Statement;\n}\n\nexport interface ForStatement extends BaseNode {\n type: \"ForStatement\";\n init?: VariableDeclaration | Expression | null;\n test?: Expression | null;\n update?: Expression | null;\n body: Statement;\n}\n\nexport interface FunctionDeclaration extends BaseNode {\n type: \"FunctionDeclaration\";\n id?: Identifier | null;\n params: FunctionParameter[];\n body: BlockStatement;\n generator: boolean;\n async: boolean;\n declare?: boolean | null;\n predicate?: DeclaredPredicate | InferredPredicate | null;\n returnType?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n typeParameters?:\n | TypeParameterDeclaration\n | TSTypeParameterDeclaration\n | Noop\n | null;\n}\n\nexport interface FunctionExpression extends BaseNode {\n type: \"FunctionExpression\";\n id?: Identifier | null;\n params: FunctionParameter[];\n body: BlockStatement;\n generator: boolean;\n async: boolean;\n predicate?: DeclaredPredicate | InferredPredicate | null;\n returnType?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n typeParameters?:\n | TypeParameterDeclaration\n | TSTypeParameterDeclaration\n | Noop\n | null;\n}\n\nexport interface Identifier extends BaseNode {\n type: \"Identifier\";\n name: string;\n decorators?: Decorator[] | null;\n optional?: boolean | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n}\n\nexport interface IfStatement extends BaseNode {\n type: \"IfStatement\";\n test: Expression;\n consequent: Statement;\n alternate?: Statement | null;\n}\n\nexport interface LabeledStatement extends BaseNode {\n type: \"LabeledStatement\";\n label: Identifier;\n body: Statement;\n}\n\nexport interface StringLiteral extends BaseNode {\n type: \"StringLiteral\";\n value: string;\n}\n\nexport interface NumericLiteral extends BaseNode {\n type: \"NumericLiteral\";\n value: number;\n}\n\n/**\n * @deprecated Use `NumericLiteral`\n */\nexport interface NumberLiteral extends BaseNode {\n type: \"NumberLiteral\";\n value: number;\n}\n\nexport interface NullLiteral extends BaseNode {\n type: \"NullLiteral\";\n}\n\nexport interface BooleanLiteral extends BaseNode {\n type: \"BooleanLiteral\";\n value: boolean;\n}\n\nexport interface RegExpLiteral extends BaseNode {\n type: \"RegExpLiteral\";\n pattern: string;\n flags: string;\n}\n\n/**\n * @deprecated Use `RegExpLiteral`\n */\nexport interface RegexLiteral extends BaseNode {\n type: \"RegexLiteral\";\n pattern: string;\n flags: string;\n}\n\nexport interface LogicalExpression extends BaseNode {\n type: \"LogicalExpression\";\n operator: \"||\" | \"&&\" | \"??\";\n left: Expression;\n right: Expression;\n}\n\nexport interface MemberExpression extends BaseNode {\n type: \"MemberExpression\";\n object: Expression | Super;\n property: Expression | Identifier | PrivateName;\n computed: boolean;\n optional?: boolean | null;\n}\n\nexport interface NewExpression extends BaseNode {\n type: \"NewExpression\";\n callee: Expression | Super | V8IntrinsicIdentifier;\n arguments: (Expression | SpreadElement | ArgumentPlaceholder)[];\n optional?: boolean | null;\n typeArguments?: TypeParameterInstantiation | null;\n typeParameters?: TSTypeParameterInstantiation | null;\n}\n\nexport interface Program extends BaseNode {\n type: \"Program\";\n body: Statement[];\n directives: Directive[];\n sourceType: \"script\" | \"module\";\n interpreter?: InterpreterDirective | null;\n}\n\nexport interface ObjectExpression extends BaseNode {\n type: \"ObjectExpression\";\n properties: (ObjectMethod | ObjectProperty | SpreadElement)[];\n}\n\nexport interface ObjectMethod extends BaseNode {\n type: \"ObjectMethod\";\n kind: \"method\" | \"get\" | \"set\";\n key: Expression | Identifier | StringLiteral | NumericLiteral | BigIntLiteral;\n params: FunctionParameter[];\n body: BlockStatement;\n computed: boolean;\n generator: boolean;\n async: boolean;\n decorators?: Decorator[] | null;\n returnType?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n typeParameters?:\n | TypeParameterDeclaration\n | TSTypeParameterDeclaration\n | Noop\n | null;\n}\n\nexport interface ObjectProperty extends BaseNode {\n type: \"ObjectProperty\";\n key:\n | Expression\n | Identifier\n | StringLiteral\n | NumericLiteral\n | BigIntLiteral\n | DecimalLiteral\n | PrivateName;\n value: Expression | PatternLike;\n computed: boolean;\n shorthand: boolean;\n decorators?: Decorator[] | null;\n}\n\nexport interface RestElement extends BaseNode {\n type: \"RestElement\";\n argument:\n | Identifier\n | ArrayPattern\n | ObjectPattern\n | MemberExpression\n | TSAsExpression\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TSNonNullExpression\n | RestElement\n | AssignmentPattern;\n decorators?: Decorator[] | null;\n optional?: boolean | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n}\n\n/**\n * @deprecated Use `RestElement`\n */\nexport interface RestProperty extends BaseNode {\n type: \"RestProperty\";\n argument:\n | Identifier\n | ArrayPattern\n | ObjectPattern\n | MemberExpression\n | TSAsExpression\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TSNonNullExpression\n | RestElement\n | AssignmentPattern;\n decorators?: Decorator[] | null;\n optional?: boolean | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n}\n\nexport interface ReturnStatement extends BaseNode {\n type: \"ReturnStatement\";\n argument?: Expression | null;\n}\n\nexport interface SequenceExpression extends BaseNode {\n type: \"SequenceExpression\";\n expressions: Expression[];\n}\n\nexport interface ParenthesizedExpression extends BaseNode {\n type: \"ParenthesizedExpression\";\n expression: Expression;\n}\n\nexport interface SwitchCase extends BaseNode {\n type: \"SwitchCase\";\n test?: Expression | null;\n consequent: Statement[];\n}\n\nexport interface SwitchStatement extends BaseNode {\n type: \"SwitchStatement\";\n discriminant: Expression;\n cases: SwitchCase[];\n}\n\nexport interface ThisExpression extends BaseNode {\n type: \"ThisExpression\";\n}\n\nexport interface ThrowStatement extends BaseNode {\n type: \"ThrowStatement\";\n argument: Expression;\n}\n\nexport interface TryStatement extends BaseNode {\n type: \"TryStatement\";\n block: BlockStatement;\n handler?: CatchClause | null;\n finalizer?: BlockStatement | null;\n}\n\nexport interface UnaryExpression extends BaseNode {\n type: \"UnaryExpression\";\n operator: \"void\" | \"throw\" | \"delete\" | \"!\" | \"+\" | \"-\" | \"~\" | \"typeof\";\n argument: Expression;\n prefix: boolean;\n}\n\nexport interface UpdateExpression extends BaseNode {\n type: \"UpdateExpression\";\n operator: \"++\" | \"--\";\n argument: Expression;\n prefix: boolean;\n}\n\nexport interface VariableDeclaration extends BaseNode {\n type: \"VariableDeclaration\";\n kind: \"var\" | \"let\" | \"const\" | \"using\" | \"await using\";\n declarations: VariableDeclarator[];\n declare?: boolean | null;\n}\n\nexport interface VariableDeclarator extends BaseNode {\n type: \"VariableDeclarator\";\n id: LVal | VoidPattern;\n init?: Expression | null;\n definite?: boolean | null;\n}\n\nexport interface WhileStatement extends BaseNode {\n type: \"WhileStatement\";\n test: Expression;\n body: Statement;\n}\n\nexport interface WithStatement extends BaseNode {\n type: \"WithStatement\";\n object: Expression;\n body: Statement;\n}\n\nexport interface AssignmentPattern extends BaseNode {\n type: \"AssignmentPattern\";\n left:\n | Identifier\n | ObjectPattern\n | ArrayPattern\n | MemberExpression\n | TSAsExpression\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TSNonNullExpression;\n right: Expression;\n decorators?: Decorator[] | null;\n optional?: boolean | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n}\n\nexport interface ArrayPattern extends BaseNode {\n type: \"ArrayPattern\";\n elements: (null | PatternLike)[];\n decorators?: Decorator[] | null;\n optional?: boolean | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n}\n\nexport interface ArrowFunctionExpression extends BaseNode {\n type: \"ArrowFunctionExpression\";\n params: FunctionParameter[];\n body: BlockStatement | Expression;\n async: boolean;\n expression: boolean;\n generator?: boolean;\n predicate?: DeclaredPredicate | InferredPredicate | null;\n returnType?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n typeParameters?:\n | TypeParameterDeclaration\n | TSTypeParameterDeclaration\n | Noop\n | null;\n}\n\nexport interface ClassBody extends BaseNode {\n type: \"ClassBody\";\n body: (\n | ClassMethod\n | ClassPrivateMethod\n | ClassProperty\n | ClassPrivateProperty\n | ClassAccessorProperty\n | TSDeclareMethod\n | TSIndexSignature\n | StaticBlock\n )[];\n}\n\nexport interface ClassExpression extends BaseNode {\n type: \"ClassExpression\";\n id?: Identifier | null;\n superClass?: Expression | null;\n body: ClassBody;\n decorators?: Decorator[] | null;\n implements?: (TSExpressionWithTypeArguments | ClassImplements)[] | null;\n mixins?: InterfaceExtends | null;\n superTypeParameters?:\n | TypeParameterInstantiation\n | TSTypeParameterInstantiation\n | null;\n typeParameters?:\n | TypeParameterDeclaration\n | TSTypeParameterDeclaration\n | Noop\n | null;\n}\n\nexport interface ClassDeclaration extends BaseNode {\n type: \"ClassDeclaration\";\n id?: Identifier | null;\n superClass?: Expression | null;\n body: ClassBody;\n decorators?: Decorator[] | null;\n abstract?: boolean | null;\n declare?: boolean | null;\n implements?: (TSExpressionWithTypeArguments | ClassImplements)[] | null;\n mixins?: InterfaceExtends | null;\n superTypeParameters?:\n | TypeParameterInstantiation\n | TSTypeParameterInstantiation\n | null;\n typeParameters?:\n | TypeParameterDeclaration\n | TSTypeParameterDeclaration\n | Noop\n | null;\n}\n\nexport interface ExportAllDeclaration extends BaseNode {\n type: \"ExportAllDeclaration\";\n source: StringLiteral;\n attributes?: ImportAttribute[] | null;\n /** @deprecated */\n assertions?: ImportAttribute[] | null;\n exportKind?: \"type\" | \"value\" | null;\n}\n\nexport interface ExportDefaultDeclaration extends BaseNode {\n type: \"ExportDefaultDeclaration\";\n declaration:\n | TSDeclareFunction\n | FunctionDeclaration\n | ClassDeclaration\n | Expression;\n exportKind?: \"value\" | null;\n}\n\nexport interface ExportNamedDeclaration extends BaseNode {\n type: \"ExportNamedDeclaration\";\n declaration?: Declaration | null;\n specifiers: (\n | ExportSpecifier\n | ExportDefaultSpecifier\n | ExportNamespaceSpecifier\n )[];\n source?: StringLiteral | null;\n attributes?: ImportAttribute[] | null;\n /** @deprecated */\n assertions?: ImportAttribute[] | null;\n exportKind?: \"type\" | \"value\" | null;\n}\n\nexport interface ExportSpecifier extends BaseNode {\n type: \"ExportSpecifier\";\n local: Identifier;\n exported: Identifier | StringLiteral;\n exportKind?: \"type\" | \"value\" | null;\n}\n\nexport interface ForOfStatement extends BaseNode {\n type: \"ForOfStatement\";\n left: VariableDeclaration | LVal;\n right: Expression;\n body: Statement;\n await: boolean;\n}\n\nexport interface ImportDeclaration extends BaseNode {\n type: \"ImportDeclaration\";\n specifiers: (\n | ImportSpecifier\n | ImportDefaultSpecifier\n | ImportNamespaceSpecifier\n )[];\n source: StringLiteral;\n attributes?: ImportAttribute[] | null;\n /** @deprecated */\n assertions?: ImportAttribute[] | null;\n importKind?: \"type\" | \"typeof\" | \"value\" | null;\n module?: boolean | null;\n phase?: \"source\" | \"defer\" | null;\n}\n\nexport interface ImportDefaultSpecifier extends BaseNode {\n type: \"ImportDefaultSpecifier\";\n local: Identifier;\n}\n\nexport interface ImportNamespaceSpecifier extends BaseNode {\n type: \"ImportNamespaceSpecifier\";\n local: Identifier;\n}\n\nexport interface ImportSpecifier extends BaseNode {\n type: \"ImportSpecifier\";\n local: Identifier;\n imported: Identifier | StringLiteral;\n importKind?: \"type\" | \"typeof\" | \"value\" | null;\n}\n\nexport interface ImportExpression extends BaseNode {\n type: \"ImportExpression\";\n source: Expression;\n options?: Expression | null;\n phase?: \"source\" | \"defer\" | null;\n}\n\nexport interface MetaProperty extends BaseNode {\n type: \"MetaProperty\";\n meta: Identifier;\n property: Identifier;\n}\n\nexport interface ClassMethod extends BaseNode {\n type: \"ClassMethod\";\n kind: \"get\" | \"set\" | \"method\" | \"constructor\";\n key: Identifier | StringLiteral | NumericLiteral | BigIntLiteral | Expression;\n params: (FunctionParameter | TSParameterProperty)[];\n body: BlockStatement;\n computed: boolean;\n static: boolean;\n generator: boolean;\n async: boolean;\n abstract?: boolean | null;\n access?: \"public\" | \"private\" | \"protected\" | null;\n accessibility?: \"public\" | \"private\" | \"protected\" | null;\n decorators?: Decorator[] | null;\n optional?: boolean | null;\n override?: boolean;\n returnType?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n typeParameters?:\n | TypeParameterDeclaration\n | TSTypeParameterDeclaration\n | Noop\n | null;\n}\n\nexport interface ObjectPattern extends BaseNode {\n type: \"ObjectPattern\";\n properties: (RestElement | ObjectProperty)[];\n decorators?: Decorator[] | null;\n optional?: boolean | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n}\n\nexport interface SpreadElement extends BaseNode {\n type: \"SpreadElement\";\n argument: Expression;\n}\n\n/**\n * @deprecated Use `SpreadElement`\n */\nexport interface SpreadProperty extends BaseNode {\n type: \"SpreadProperty\";\n argument: Expression;\n}\n\nexport interface Super extends BaseNode {\n type: \"Super\";\n}\n\nexport interface TaggedTemplateExpression extends BaseNode {\n type: \"TaggedTemplateExpression\";\n tag: Expression;\n quasi: TemplateLiteral;\n typeParameters?:\n | TypeParameterInstantiation\n | TSTypeParameterInstantiation\n | null;\n}\n\nexport interface TemplateElement extends BaseNode {\n type: \"TemplateElement\";\n value: { raw: string; cooked?: string };\n tail: boolean;\n}\n\nexport interface TemplateLiteral extends BaseNode {\n type: \"TemplateLiteral\";\n quasis: TemplateElement[];\n expressions: (Expression | TSType)[];\n}\n\nexport interface YieldExpression extends BaseNode {\n type: \"YieldExpression\";\n argument?: Expression | null;\n delegate: boolean;\n}\n\nexport interface AwaitExpression extends BaseNode {\n type: \"AwaitExpression\";\n argument: Expression;\n}\n\nexport interface Import extends BaseNode {\n type: \"Import\";\n}\n\nexport interface BigIntLiteral extends BaseNode {\n type: \"BigIntLiteral\";\n value: string;\n}\n\nexport interface ExportNamespaceSpecifier extends BaseNode {\n type: \"ExportNamespaceSpecifier\";\n exported: Identifier;\n}\n\nexport interface OptionalMemberExpression extends BaseNode {\n type: \"OptionalMemberExpression\";\n object: Expression;\n property: Expression | Identifier;\n computed: boolean;\n optional: boolean;\n}\n\nexport interface OptionalCallExpression extends BaseNode {\n type: \"OptionalCallExpression\";\n callee: Expression;\n arguments: (Expression | SpreadElement | ArgumentPlaceholder)[];\n optional: boolean;\n typeArguments?: TypeParameterInstantiation | null;\n typeParameters?: TSTypeParameterInstantiation | null;\n}\n\nexport interface ClassProperty extends BaseNode {\n type: \"ClassProperty\";\n key: Identifier | StringLiteral | NumericLiteral | BigIntLiteral | Expression;\n value?: Expression | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n decorators?: Decorator[] | null;\n computed: boolean;\n static: boolean;\n abstract?: boolean | null;\n accessibility?: \"public\" | \"private\" | \"protected\" | null;\n declare?: boolean | null;\n definite?: boolean | null;\n optional?: boolean | null;\n override?: boolean;\n readonly?: boolean | null;\n variance?: Variance | null;\n}\n\nexport interface ClassAccessorProperty extends BaseNode {\n type: \"ClassAccessorProperty\";\n key:\n | Identifier\n | StringLiteral\n | NumericLiteral\n | BigIntLiteral\n | Expression\n | PrivateName;\n value?: Expression | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n decorators?: Decorator[] | null;\n computed: boolean;\n static: boolean;\n abstract?: boolean | null;\n accessibility?: \"public\" | \"private\" | \"protected\" | null;\n declare?: boolean | null;\n definite?: boolean | null;\n optional?: boolean | null;\n override?: boolean;\n readonly?: boolean | null;\n variance?: Variance | null;\n}\n\nexport interface ClassPrivateProperty extends BaseNode {\n type: \"ClassPrivateProperty\";\n key: PrivateName;\n value?: Expression | null;\n decorators?: Decorator[] | null;\n static: boolean;\n definite?: boolean | null;\n optional?: boolean | null;\n readonly?: boolean | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n variance?: Variance | null;\n}\n\nexport interface ClassPrivateMethod extends BaseNode {\n type: \"ClassPrivateMethod\";\n kind: \"get\" | \"set\" | \"method\";\n key: PrivateName;\n params: (FunctionParameter | TSParameterProperty)[];\n body: BlockStatement;\n static: boolean;\n abstract?: boolean | null;\n access?: \"public\" | \"private\" | \"protected\" | null;\n accessibility?: \"public\" | \"private\" | \"protected\" | null;\n async?: boolean;\n computed?: boolean;\n decorators?: Decorator[] | null;\n generator?: boolean;\n optional?: boolean | null;\n override?: boolean;\n returnType?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n typeParameters?:\n | TypeParameterDeclaration\n | TSTypeParameterDeclaration\n | Noop\n | null;\n}\n\nexport interface PrivateName extends BaseNode {\n type: \"PrivateName\";\n id: Identifier;\n}\n\nexport interface StaticBlock extends BaseNode {\n type: \"StaticBlock\";\n body: Statement[];\n}\n\nexport interface ImportAttribute extends BaseNode {\n type: \"ImportAttribute\";\n key: Identifier | StringLiteral;\n value: StringLiteral;\n}\n\nexport interface AnyTypeAnnotation extends BaseNode {\n type: \"AnyTypeAnnotation\";\n}\n\nexport interface ArrayTypeAnnotation extends BaseNode {\n type: \"ArrayTypeAnnotation\";\n elementType: FlowType;\n}\n\nexport interface BooleanTypeAnnotation extends BaseNode {\n type: \"BooleanTypeAnnotation\";\n}\n\nexport interface BooleanLiteralTypeAnnotation extends BaseNode {\n type: \"BooleanLiteralTypeAnnotation\";\n value: boolean;\n}\n\nexport interface NullLiteralTypeAnnotation extends BaseNode {\n type: \"NullLiteralTypeAnnotation\";\n}\n\nexport interface ClassImplements extends BaseNode {\n type: \"ClassImplements\";\n id: Identifier;\n typeParameters?: TypeParameterInstantiation | null;\n}\n\nexport interface DeclareClass extends BaseNode {\n type: \"DeclareClass\";\n id: Identifier;\n typeParameters?: TypeParameterDeclaration | null;\n extends?: InterfaceExtends[] | null;\n body: ObjectTypeAnnotation;\n implements?: ClassImplements[] | null;\n mixins?: InterfaceExtends[] | null;\n}\n\nexport interface DeclareFunction extends BaseNode {\n type: \"DeclareFunction\";\n id: Identifier;\n predicate?: DeclaredPredicate | null;\n}\n\nexport interface DeclareInterface extends BaseNode {\n type: \"DeclareInterface\";\n id: Identifier;\n typeParameters?: TypeParameterDeclaration | null;\n extends?: InterfaceExtends[] | null;\n body: ObjectTypeAnnotation;\n}\n\nexport interface DeclareModule extends BaseNode {\n type: \"DeclareModule\";\n id: Identifier | StringLiteral;\n body: BlockStatement;\n kind?: \"CommonJS\" | \"ES\" | null;\n}\n\nexport interface DeclareModuleExports extends BaseNode {\n type: \"DeclareModuleExports\";\n typeAnnotation: TypeAnnotation;\n}\n\nexport interface DeclareTypeAlias extends BaseNode {\n type: \"DeclareTypeAlias\";\n id: Identifier;\n typeParameters?: TypeParameterDeclaration | null;\n right: FlowType;\n}\n\nexport interface DeclareOpaqueType extends BaseNode {\n type: \"DeclareOpaqueType\";\n id: Identifier;\n typeParameters?: TypeParameterDeclaration | null;\n supertype?: FlowType | null;\n impltype?: FlowType | null;\n}\n\nexport interface DeclareVariable extends BaseNode {\n type: \"DeclareVariable\";\n id: Identifier;\n}\n\nexport interface DeclareExportDeclaration extends BaseNode {\n type: \"DeclareExportDeclaration\";\n declaration?: Flow | null;\n specifiers?: (ExportSpecifier | ExportNamespaceSpecifier)[] | null;\n source?: StringLiteral | null;\n attributes?: ImportAttribute[] | null;\n /** @deprecated */\n assertions?: ImportAttribute[] | null;\n default?: boolean | null;\n}\n\nexport interface DeclareExportAllDeclaration extends BaseNode {\n type: \"DeclareExportAllDeclaration\";\n source: StringLiteral;\n attributes?: ImportAttribute[] | null;\n /** @deprecated */\n assertions?: ImportAttribute[] | null;\n exportKind?: \"type\" | \"value\" | null;\n}\n\nexport interface DeclaredPredicate extends BaseNode {\n type: \"DeclaredPredicate\";\n value: Flow;\n}\n\nexport interface ExistsTypeAnnotation extends BaseNode {\n type: \"ExistsTypeAnnotation\";\n}\n\nexport interface FunctionTypeAnnotation extends BaseNode {\n type: \"FunctionTypeAnnotation\";\n typeParameters?: TypeParameterDeclaration | null;\n params: FunctionTypeParam[];\n rest?: FunctionTypeParam | null;\n returnType: FlowType;\n this?: FunctionTypeParam | null;\n}\n\nexport interface FunctionTypeParam extends BaseNode {\n type: \"FunctionTypeParam\";\n name?: Identifier | null;\n typeAnnotation: FlowType;\n optional?: boolean | null;\n}\n\nexport interface GenericTypeAnnotation extends BaseNode {\n type: \"GenericTypeAnnotation\";\n id: Identifier | QualifiedTypeIdentifier;\n typeParameters?: TypeParameterInstantiation | null;\n}\n\nexport interface InferredPredicate extends BaseNode {\n type: \"InferredPredicate\";\n}\n\nexport interface InterfaceExtends extends BaseNode {\n type: \"InterfaceExtends\";\n id: Identifier | QualifiedTypeIdentifier;\n typeParameters?: TypeParameterInstantiation | null;\n}\n\nexport interface InterfaceDeclaration extends BaseNode {\n type: \"InterfaceDeclaration\";\n id: Identifier;\n typeParameters?: TypeParameterDeclaration | null;\n extends?: InterfaceExtends[] | null;\n body: ObjectTypeAnnotation;\n}\n\nexport interface InterfaceTypeAnnotation extends BaseNode {\n type: \"InterfaceTypeAnnotation\";\n extends?: InterfaceExtends[] | null;\n body: ObjectTypeAnnotation;\n}\n\nexport interface IntersectionTypeAnnotation extends BaseNode {\n type: \"IntersectionTypeAnnotation\";\n types: FlowType[];\n}\n\nexport interface MixedTypeAnnotation extends BaseNode {\n type: \"MixedTypeAnnotation\";\n}\n\nexport interface EmptyTypeAnnotation extends BaseNode {\n type: \"EmptyTypeAnnotation\";\n}\n\nexport interface NullableTypeAnnotation extends BaseNode {\n type: \"NullableTypeAnnotation\";\n typeAnnotation: FlowType;\n}\n\nexport interface NumberLiteralTypeAnnotation extends BaseNode {\n type: \"NumberLiteralTypeAnnotation\";\n value: number;\n}\n\nexport interface NumberTypeAnnotation extends BaseNode {\n type: \"NumberTypeAnnotation\";\n}\n\nexport interface ObjectTypeAnnotation extends BaseNode {\n type: \"ObjectTypeAnnotation\";\n properties: (ObjectTypeProperty | ObjectTypeSpreadProperty)[];\n indexers?: ObjectTypeIndexer[];\n callProperties?: ObjectTypeCallProperty[];\n internalSlots?: ObjectTypeInternalSlot[];\n exact: boolean;\n inexact?: boolean | null;\n}\n\nexport interface ObjectTypeInternalSlot extends BaseNode {\n type: \"ObjectTypeInternalSlot\";\n id: Identifier;\n value: FlowType;\n optional: boolean;\n static: boolean;\n method: boolean;\n}\n\nexport interface ObjectTypeCallProperty extends BaseNode {\n type: \"ObjectTypeCallProperty\";\n value: FlowType;\n static: boolean;\n}\n\nexport interface ObjectTypeIndexer extends BaseNode {\n type: \"ObjectTypeIndexer\";\n id?: Identifier | null;\n key: FlowType;\n value: FlowType;\n variance?: Variance | null;\n static: boolean;\n}\n\nexport interface ObjectTypeProperty extends BaseNode {\n type: \"ObjectTypeProperty\";\n key: Identifier | StringLiteral;\n value: FlowType;\n variance?: Variance | null;\n kind: \"init\" | \"get\" | \"set\";\n method: boolean;\n optional: boolean;\n proto: boolean;\n static: boolean;\n}\n\nexport interface ObjectTypeSpreadProperty extends BaseNode {\n type: \"ObjectTypeSpreadProperty\";\n argument: FlowType;\n}\n\nexport interface OpaqueType extends BaseNode {\n type: \"OpaqueType\";\n id: Identifier;\n typeParameters?: TypeParameterDeclaration | null;\n supertype?: FlowType | null;\n impltype: FlowType;\n}\n\nexport interface QualifiedTypeIdentifier extends BaseNode {\n type: \"QualifiedTypeIdentifier\";\n id: Identifier;\n qualification: Identifier | QualifiedTypeIdentifier;\n}\n\nexport interface StringLiteralTypeAnnotation extends BaseNode {\n type: \"StringLiteralTypeAnnotation\";\n value: string;\n}\n\nexport interface StringTypeAnnotation extends BaseNode {\n type: \"StringTypeAnnotation\";\n}\n\nexport interface SymbolTypeAnnotation extends BaseNode {\n type: \"SymbolTypeAnnotation\";\n}\n\nexport interface ThisTypeAnnotation extends BaseNode {\n type: \"ThisTypeAnnotation\";\n}\n\nexport interface TupleTypeAnnotation extends BaseNode {\n type: \"TupleTypeAnnotation\";\n types: FlowType[];\n}\n\nexport interface TypeofTypeAnnotation extends BaseNode {\n type: \"TypeofTypeAnnotation\";\n argument: FlowType;\n}\n\nexport interface TypeAlias extends BaseNode {\n type: \"TypeAlias\";\n id: Identifier;\n typeParameters?: TypeParameterDeclaration | null;\n right: FlowType;\n}\n\nexport interface TypeAnnotation extends BaseNode {\n type: \"TypeAnnotation\";\n typeAnnotation: FlowType;\n}\n\nexport interface TypeCastExpression extends BaseNode {\n type: \"TypeCastExpression\";\n expression: Expression;\n typeAnnotation: TypeAnnotation;\n}\n\nexport interface TypeParameter extends BaseNode {\n type: \"TypeParameter\";\n bound?: TypeAnnotation | null;\n default?: FlowType | null;\n variance?: Variance | null;\n name: string;\n}\n\nexport interface TypeParameterDeclaration extends BaseNode {\n type: \"TypeParameterDeclaration\";\n params: TypeParameter[];\n}\n\nexport interface TypeParameterInstantiation extends BaseNode {\n type: \"TypeParameterInstantiation\";\n params: FlowType[];\n}\n\nexport interface UnionTypeAnnotation extends BaseNode {\n type: \"UnionTypeAnnotation\";\n types: FlowType[];\n}\n\nexport interface Variance extends BaseNode {\n type: \"Variance\";\n kind: \"minus\" | \"plus\";\n}\n\nexport interface VoidTypeAnnotation extends BaseNode {\n type: \"VoidTypeAnnotation\";\n}\n\nexport interface EnumDeclaration extends BaseNode {\n type: \"EnumDeclaration\";\n id: Identifier;\n body: EnumBooleanBody | EnumNumberBody | EnumStringBody | EnumSymbolBody;\n}\n\nexport interface EnumBooleanBody extends BaseNode {\n type: \"EnumBooleanBody\";\n members: EnumBooleanMember[];\n explicitType: boolean;\n hasUnknownMembers: boolean;\n}\n\nexport interface EnumNumberBody extends BaseNode {\n type: \"EnumNumberBody\";\n members: EnumNumberMember[];\n explicitType: boolean;\n hasUnknownMembers: boolean;\n}\n\nexport interface EnumStringBody extends BaseNode {\n type: \"EnumStringBody\";\n members: (EnumStringMember | EnumDefaultedMember)[];\n explicitType: boolean;\n hasUnknownMembers: boolean;\n}\n\nexport interface EnumSymbolBody extends BaseNode {\n type: \"EnumSymbolBody\";\n members: EnumDefaultedMember[];\n hasUnknownMembers: boolean;\n}\n\nexport interface EnumBooleanMember extends BaseNode {\n type: \"EnumBooleanMember\";\n id: Identifier;\n init: BooleanLiteral;\n}\n\nexport interface EnumNumberMember extends BaseNode {\n type: \"EnumNumberMember\";\n id: Identifier;\n init: NumericLiteral;\n}\n\nexport interface EnumStringMember extends BaseNode {\n type: \"EnumStringMember\";\n id: Identifier;\n init: StringLiteral;\n}\n\nexport interface EnumDefaultedMember extends BaseNode {\n type: \"EnumDefaultedMember\";\n id: Identifier;\n}\n\nexport interface IndexedAccessType extends BaseNode {\n type: \"IndexedAccessType\";\n objectType: FlowType;\n indexType: FlowType;\n}\n\nexport interface OptionalIndexedAccessType extends BaseNode {\n type: \"OptionalIndexedAccessType\";\n objectType: FlowType;\n indexType: FlowType;\n optional: boolean;\n}\n\nexport interface JSXAttribute extends BaseNode {\n type: \"JSXAttribute\";\n name: JSXIdentifier | JSXNamespacedName;\n value?:\n | JSXElement\n | JSXFragment\n | StringLiteral\n | JSXExpressionContainer\n | null;\n}\n\nexport interface JSXClosingElement extends BaseNode {\n type: \"JSXClosingElement\";\n name: JSXIdentifier | JSXMemberExpression | JSXNamespacedName;\n}\n\nexport interface JSXElement extends BaseNode {\n type: \"JSXElement\";\n openingElement: JSXOpeningElement;\n closingElement?: JSXClosingElement | null;\n children: (\n | JSXText\n | JSXExpressionContainer\n | JSXSpreadChild\n | JSXElement\n | JSXFragment\n )[];\n selfClosing?: boolean | null;\n}\n\nexport interface JSXEmptyExpression extends BaseNode {\n type: \"JSXEmptyExpression\";\n}\n\nexport interface JSXExpressionContainer extends BaseNode {\n type: \"JSXExpressionContainer\";\n expression: Expression | JSXEmptyExpression;\n}\n\nexport interface JSXSpreadChild extends BaseNode {\n type: \"JSXSpreadChild\";\n expression: Expression;\n}\n\nexport interface JSXIdentifier extends BaseNode {\n type: \"JSXIdentifier\";\n name: string;\n}\n\nexport interface JSXMemberExpression extends BaseNode {\n type: \"JSXMemberExpression\";\n object: JSXMemberExpression | JSXIdentifier;\n property: JSXIdentifier;\n}\n\nexport interface JSXNamespacedName extends BaseNode {\n type: \"JSXNamespacedName\";\n namespace: JSXIdentifier;\n name: JSXIdentifier;\n}\n\nexport interface JSXOpeningElement extends BaseNode {\n type: \"JSXOpeningElement\";\n name: JSXIdentifier | JSXMemberExpression | JSXNamespacedName;\n attributes: (JSXAttribute | JSXSpreadAttribute)[];\n selfClosing: boolean;\n typeArguments?: TypeParameterInstantiation | null;\n typeParameters?: TSTypeParameterInstantiation | null;\n}\n\nexport interface JSXSpreadAttribute extends BaseNode {\n type: \"JSXSpreadAttribute\";\n argument: Expression;\n}\n\nexport interface JSXText extends BaseNode {\n type: \"JSXText\";\n value: string;\n}\n\nexport interface JSXFragment extends BaseNode {\n type: \"JSXFragment\";\n openingFragment: JSXOpeningFragment;\n closingFragment: JSXClosingFragment;\n children: (\n | JSXText\n | JSXExpressionContainer\n | JSXSpreadChild\n | JSXElement\n | JSXFragment\n )[];\n}\n\nexport interface JSXOpeningFragment extends BaseNode {\n type: \"JSXOpeningFragment\";\n}\n\nexport interface JSXClosingFragment extends BaseNode {\n type: \"JSXClosingFragment\";\n}\n\nexport interface Noop extends BaseNode {\n type: \"Noop\";\n}\n\nexport interface Placeholder extends BaseNode {\n type: \"Placeholder\";\n expectedNode:\n | \"Identifier\"\n | \"StringLiteral\"\n | \"Expression\"\n | \"Statement\"\n | \"Declaration\"\n | \"BlockStatement\"\n | \"ClassBody\"\n | \"Pattern\";\n name: Identifier;\n decorators?: Decorator[] | null;\n optional?: boolean | null;\n typeAnnotation?: TypeAnnotation | TSTypeAnnotation | Noop | null;\n}\n\nexport interface V8IntrinsicIdentifier extends BaseNode {\n type: \"V8IntrinsicIdentifier\";\n name: string;\n}\n\nexport interface ArgumentPlaceholder extends BaseNode {\n type: \"ArgumentPlaceholder\";\n}\n\nexport interface BindExpression extends BaseNode {\n type: \"BindExpression\";\n object: Expression;\n callee: Expression;\n}\n\nexport interface Decorator extends BaseNode {\n type: \"Decorator\";\n expression: Expression;\n}\n\nexport interface DoExpression extends BaseNode {\n type: \"DoExpression\";\n body: BlockStatement;\n async: boolean;\n}\n\nexport interface ExportDefaultSpecifier extends BaseNode {\n type: \"ExportDefaultSpecifier\";\n exported: Identifier;\n}\n\nexport interface RecordExpression extends BaseNode {\n type: \"RecordExpression\";\n properties: (ObjectProperty | SpreadElement)[];\n}\n\nexport interface TupleExpression extends BaseNode {\n type: \"TupleExpression\";\n elements: (Expression | SpreadElement)[];\n}\n\nexport interface DecimalLiteral extends BaseNode {\n type: \"DecimalLiteral\";\n value: string;\n}\n\nexport interface ModuleExpression extends BaseNode {\n type: \"ModuleExpression\";\n body: Program;\n}\n\nexport interface TopicReference extends BaseNode {\n type: \"TopicReference\";\n}\n\nexport interface PipelineTopicExpression extends BaseNode {\n type: \"PipelineTopicExpression\";\n expression: Expression;\n}\n\nexport interface PipelineBareFunction extends BaseNode {\n type: \"PipelineBareFunction\";\n callee: Expression;\n}\n\nexport interface PipelinePrimaryTopicReference extends BaseNode {\n type: \"PipelinePrimaryTopicReference\";\n}\n\nexport interface VoidPattern extends BaseNode {\n type: \"VoidPattern\";\n}\n\nexport interface TSParameterProperty extends BaseNode {\n type: \"TSParameterProperty\";\n parameter: Identifier | AssignmentPattern;\n accessibility?: \"public\" | \"private\" | \"protected\" | null;\n decorators?: Decorator[] | null;\n override?: boolean | null;\n readonly?: boolean | null;\n}\n\nexport interface TSDeclareFunction extends BaseNode {\n type: \"TSDeclareFunction\";\n id?: Identifier | null;\n typeParameters?: TSTypeParameterDeclaration | Noop | null;\n params: FunctionParameter[];\n returnType?: TSTypeAnnotation | Noop | null;\n async?: boolean;\n declare?: boolean | null;\n generator?: boolean;\n}\n\nexport interface TSDeclareMethod extends BaseNode {\n type: \"TSDeclareMethod\";\n decorators?: Decorator[] | null;\n key: Identifier | StringLiteral | NumericLiteral | BigIntLiteral | Expression;\n typeParameters?: TSTypeParameterDeclaration | Noop | null;\n params: (FunctionParameter | TSParameterProperty)[];\n returnType?: TSTypeAnnotation | Noop | null;\n abstract?: boolean | null;\n access?: \"public\" | \"private\" | \"protected\" | null;\n accessibility?: \"public\" | \"private\" | \"protected\" | null;\n async?: boolean;\n computed?: boolean;\n generator?: boolean;\n kind?: \"get\" | \"set\" | \"method\" | \"constructor\";\n optional?: boolean | null;\n override?: boolean;\n static?: boolean;\n}\n\nexport interface TSQualifiedName extends BaseNode {\n type: \"TSQualifiedName\";\n left: TSEntityName;\n right: Identifier;\n}\n\nexport interface TSCallSignatureDeclaration extends BaseNode {\n type: \"TSCallSignatureDeclaration\";\n typeParameters?: TSTypeParameterDeclaration | null;\n parameters: (ArrayPattern | Identifier | ObjectPattern | RestElement)[];\n typeAnnotation?: TSTypeAnnotation | null;\n}\n\nexport interface TSConstructSignatureDeclaration extends BaseNode {\n type: \"TSConstructSignatureDeclaration\";\n typeParameters?: TSTypeParameterDeclaration | null;\n parameters: (ArrayPattern | Identifier | ObjectPattern | RestElement)[];\n typeAnnotation?: TSTypeAnnotation | null;\n}\n\nexport interface TSPropertySignature extends BaseNode {\n type: \"TSPropertySignature\";\n key: Expression;\n typeAnnotation?: TSTypeAnnotation | null;\n computed?: boolean;\n kind?: \"get\" | \"set\" | null;\n optional?: boolean | null;\n readonly?: boolean | null;\n}\n\nexport interface TSMethodSignature extends BaseNode {\n type: \"TSMethodSignature\";\n key: Expression;\n typeParameters?: TSTypeParameterDeclaration | null;\n parameters: (ArrayPattern | Identifier | ObjectPattern | RestElement)[];\n typeAnnotation?: TSTypeAnnotation | null;\n computed?: boolean;\n kind: \"method\" | \"get\" | \"set\";\n optional?: boolean | null;\n}\n\nexport interface TSIndexSignature extends BaseNode {\n type: \"TSIndexSignature\";\n parameters: Identifier[];\n typeAnnotation?: TSTypeAnnotation | null;\n readonly?: boolean | null;\n static?: boolean | null;\n}\n\nexport interface TSAnyKeyword extends BaseNode {\n type: \"TSAnyKeyword\";\n}\n\nexport interface TSBooleanKeyword extends BaseNode {\n type: \"TSBooleanKeyword\";\n}\n\nexport interface TSBigIntKeyword extends BaseNode {\n type: \"TSBigIntKeyword\";\n}\n\nexport interface TSIntrinsicKeyword extends BaseNode {\n type: \"TSIntrinsicKeyword\";\n}\n\nexport interface TSNeverKeyword extends BaseNode {\n type: \"TSNeverKeyword\";\n}\n\nexport interface TSNullKeyword extends BaseNode {\n type: \"TSNullKeyword\";\n}\n\nexport interface TSNumberKeyword extends BaseNode {\n type: \"TSNumberKeyword\";\n}\n\nexport interface TSObjectKeyword extends BaseNode {\n type: \"TSObjectKeyword\";\n}\n\nexport interface TSStringKeyword extends BaseNode {\n type: \"TSStringKeyword\";\n}\n\nexport interface TSSymbolKeyword extends BaseNode {\n type: \"TSSymbolKeyword\";\n}\n\nexport interface TSUndefinedKeyword extends BaseNode {\n type: \"TSUndefinedKeyword\";\n}\n\nexport interface TSUnknownKeyword extends BaseNode {\n type: \"TSUnknownKeyword\";\n}\n\nexport interface TSVoidKeyword extends BaseNode {\n type: \"TSVoidKeyword\";\n}\n\nexport interface TSThisType extends BaseNode {\n type: \"TSThisType\";\n}\n\nexport interface TSFunctionType extends BaseNode {\n type: \"TSFunctionType\";\n typeParameters?: TSTypeParameterDeclaration | null;\n parameters: (ArrayPattern | Identifier | ObjectPattern | RestElement)[];\n typeAnnotation?: TSTypeAnnotation | null;\n}\n\nexport interface TSConstructorType extends BaseNode {\n type: \"TSConstructorType\";\n typeParameters?: TSTypeParameterDeclaration | null;\n parameters: (ArrayPattern | Identifier | ObjectPattern | RestElement)[];\n typeAnnotation?: TSTypeAnnotation | null;\n abstract?: boolean | null;\n}\n\nexport interface TSTypeReference extends BaseNode {\n type: \"TSTypeReference\";\n typeName: TSEntityName;\n typeParameters?: TSTypeParameterInstantiation | null;\n}\n\nexport interface TSTypePredicate extends BaseNode {\n type: \"TSTypePredicate\";\n parameterName: Identifier | TSThisType;\n typeAnnotation?: TSTypeAnnotation | null;\n asserts?: boolean | null;\n}\n\nexport interface TSTypeQuery extends BaseNode {\n type: \"TSTypeQuery\";\n exprName: TSEntityName | TSImportType;\n typeParameters?: TSTypeParameterInstantiation | null;\n}\n\nexport interface TSTypeLiteral extends BaseNode {\n type: \"TSTypeLiteral\";\n members: TSTypeElement[];\n}\n\nexport interface TSArrayType extends BaseNode {\n type: \"TSArrayType\";\n elementType: TSType;\n}\n\nexport interface TSTupleType extends BaseNode {\n type: \"TSTupleType\";\n elementTypes: (TSType | TSNamedTupleMember)[];\n}\n\nexport interface TSOptionalType extends BaseNode {\n type: \"TSOptionalType\";\n typeAnnotation: TSType;\n}\n\nexport interface TSRestType extends BaseNode {\n type: \"TSRestType\";\n typeAnnotation: TSType;\n}\n\nexport interface TSNamedTupleMember extends BaseNode {\n type: \"TSNamedTupleMember\";\n label: Identifier;\n elementType: TSType;\n optional: boolean;\n}\n\nexport interface TSUnionType extends BaseNode {\n type: \"TSUnionType\";\n types: TSType[];\n}\n\nexport interface TSIntersectionType extends BaseNode {\n type: \"TSIntersectionType\";\n types: TSType[];\n}\n\nexport interface TSConditionalType extends BaseNode {\n type: \"TSConditionalType\";\n checkType: TSType;\n extendsType: TSType;\n trueType: TSType;\n falseType: TSType;\n}\n\nexport interface TSInferType extends BaseNode {\n type: \"TSInferType\";\n typeParameter: TSTypeParameter;\n}\n\nexport interface TSParenthesizedType extends BaseNode {\n type: \"TSParenthesizedType\";\n typeAnnotation: TSType;\n}\n\nexport interface TSTypeOperator extends BaseNode {\n type: \"TSTypeOperator\";\n typeAnnotation: TSType;\n operator: string;\n}\n\nexport interface TSIndexedAccessType extends BaseNode {\n type: \"TSIndexedAccessType\";\n objectType: TSType;\n indexType: TSType;\n}\n\nexport interface TSMappedType extends BaseNode {\n type: \"TSMappedType\";\n typeParameter: TSTypeParameter;\n typeAnnotation?: TSType | null;\n nameType?: TSType | null;\n optional?: true | false | \"+\" | \"-\" | null;\n readonly?: true | false | \"+\" | \"-\" | null;\n}\n\nexport interface TSTemplateLiteralType extends BaseNode {\n type: \"TSTemplateLiteralType\";\n quasis: TemplateElement[];\n types: TSType[];\n}\n\nexport interface TSLiteralType extends BaseNode {\n type: \"TSLiteralType\";\n literal:\n | NumericLiteral\n | StringLiteral\n | BooleanLiteral\n | BigIntLiteral\n | TemplateLiteral\n | UnaryExpression;\n}\n\nexport interface TSExpressionWithTypeArguments extends BaseNode {\n type: \"TSExpressionWithTypeArguments\";\n expression: TSEntityName;\n typeParameters?: TSTypeParameterInstantiation | null;\n}\n\nexport interface TSInterfaceDeclaration extends BaseNode {\n type: \"TSInterfaceDeclaration\";\n id: Identifier;\n typeParameters?: TSTypeParameterDeclaration | null;\n extends?: TSExpressionWithTypeArguments[] | null;\n body: TSInterfaceBody;\n declare?: boolean | null;\n}\n\nexport interface TSInterfaceBody extends BaseNode {\n type: \"TSInterfaceBody\";\n body: TSTypeElement[];\n}\n\nexport interface TSTypeAliasDeclaration extends BaseNode {\n type: \"TSTypeAliasDeclaration\";\n id: Identifier;\n typeParameters?: TSTypeParameterDeclaration | null;\n typeAnnotation: TSType;\n declare?: boolean | null;\n}\n\nexport interface TSInstantiationExpression extends BaseNode {\n type: \"TSInstantiationExpression\";\n expression: Expression;\n typeParameters?: TSTypeParameterInstantiation | null;\n}\n\nexport interface TSAsExpression extends BaseNode {\n type: \"TSAsExpression\";\n expression: Expression;\n typeAnnotation: TSType;\n}\n\nexport interface TSSatisfiesExpression extends BaseNode {\n type: \"TSSatisfiesExpression\";\n expression: Expression;\n typeAnnotation: TSType;\n}\n\nexport interface TSTypeAssertion extends BaseNode {\n type: \"TSTypeAssertion\";\n typeAnnotation: TSType;\n expression: Expression;\n}\n\nexport interface TSEnumBody extends BaseNode {\n type: \"TSEnumBody\";\n members: TSEnumMember[];\n}\n\nexport interface TSEnumDeclaration extends BaseNode {\n type: \"TSEnumDeclaration\";\n id: Identifier;\n members: TSEnumMember[];\n body?: TSEnumBody | null;\n const?: boolean | null;\n declare?: boolean | null;\n initializer?: Expression | null;\n}\n\nexport interface TSEnumMember extends BaseNode {\n type: \"TSEnumMember\";\n id: Identifier | StringLiteral;\n initializer?: Expression | null;\n}\n\nexport interface TSModuleDeclaration extends BaseNode {\n type: \"TSModuleDeclaration\";\n id: Identifier | StringLiteral;\n body: TSModuleBlock | TSModuleDeclaration;\n declare?: boolean | null;\n global?: boolean | null;\n kind: \"global\" | \"module\" | \"namespace\";\n}\n\nexport interface TSModuleBlock extends BaseNode {\n type: \"TSModuleBlock\";\n body: Statement[];\n}\n\nexport interface TSImportType extends BaseNode {\n type: \"TSImportType\";\n argument: StringLiteral;\n qualifier?: TSEntityName | null;\n typeParameters?: TSTypeParameterInstantiation | null;\n options?: ObjectExpression | null;\n}\n\nexport interface TSImportEqualsDeclaration extends BaseNode {\n type: \"TSImportEqualsDeclaration\";\n id: Identifier;\n moduleReference: TSEntityName | TSExternalModuleReference;\n importKind?: \"type\" | \"value\" | null;\n isExport: boolean;\n}\n\nexport interface TSExternalModuleReference extends BaseNode {\n type: \"TSExternalModuleReference\";\n expression: StringLiteral;\n}\n\nexport interface TSNonNullExpression extends BaseNode {\n type: \"TSNonNullExpression\";\n expression: Expression;\n}\n\nexport interface TSExportAssignment extends BaseNode {\n type: \"TSExportAssignment\";\n expression: Expression;\n}\n\nexport interface TSNamespaceExportDeclaration extends BaseNode {\n type: \"TSNamespaceExportDeclaration\";\n id: Identifier;\n}\n\nexport interface TSTypeAnnotation extends BaseNode {\n type: \"TSTypeAnnotation\";\n typeAnnotation: TSType;\n}\n\nexport interface TSTypeParameterInstantiation extends BaseNode {\n type: \"TSTypeParameterInstantiation\";\n params: TSType[];\n}\n\nexport interface TSTypeParameterDeclaration extends BaseNode {\n type: \"TSTypeParameterDeclaration\";\n params: TSTypeParameter[];\n}\n\nexport interface TSTypeParameter extends BaseNode {\n type: \"TSTypeParameter\";\n constraint?: TSType | null;\n default?: TSType | null;\n name: string;\n const?: boolean | null;\n in?: boolean | null;\n out?: boolean | null;\n}\n\nexport type Standardized =\n | ArrayExpression\n | AssignmentExpression\n | BinaryExpression\n | InterpreterDirective\n | Directive\n | DirectiveLiteral\n | BlockStatement\n | BreakStatement\n | CallExpression\n | CatchClause\n | ConditionalExpression\n | ContinueStatement\n | DebuggerStatement\n | DoWhileStatement\n | EmptyStatement\n | ExpressionStatement\n | File\n | ForInStatement\n | ForStatement\n | FunctionDeclaration\n | FunctionExpression\n | Identifier\n | IfStatement\n | LabeledStatement\n | StringLiteral\n | NumericLiteral\n | NullLiteral\n | BooleanLiteral\n | RegExpLiteral\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | Program\n | ObjectExpression\n | ObjectMethod\n | ObjectProperty\n | RestElement\n | ReturnStatement\n | SequenceExpression\n | ParenthesizedExpression\n | SwitchCase\n | SwitchStatement\n | ThisExpression\n | ThrowStatement\n | TryStatement\n | UnaryExpression\n | UpdateExpression\n | VariableDeclaration\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | AssignmentPattern\n | ArrayPattern\n | ArrowFunctionExpression\n | ClassBody\n | ClassExpression\n | ClassDeclaration\n | ExportAllDeclaration\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ExportSpecifier\n | ForOfStatement\n | ImportDeclaration\n | ImportDefaultSpecifier\n | ImportNamespaceSpecifier\n | ImportSpecifier\n | ImportExpression\n | MetaProperty\n | ClassMethod\n | ObjectPattern\n | SpreadElement\n | Super\n | TaggedTemplateExpression\n | TemplateElement\n | TemplateLiteral\n | YieldExpression\n | AwaitExpression\n | Import\n | BigIntLiteral\n | ExportNamespaceSpecifier\n | OptionalMemberExpression\n | OptionalCallExpression\n | ClassProperty\n | ClassAccessorProperty\n | ClassPrivateProperty\n | ClassPrivateMethod\n | PrivateName\n | StaticBlock\n | ImportAttribute;\nexport type Expression =\n | ArrayExpression\n | AssignmentExpression\n | BinaryExpression\n | CallExpression\n | ConditionalExpression\n | FunctionExpression\n | Identifier\n | StringLiteral\n | NumericLiteral\n | NullLiteral\n | BooleanLiteral\n | RegExpLiteral\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectExpression\n | SequenceExpression\n | ParenthesizedExpression\n | ThisExpression\n | UnaryExpression\n | UpdateExpression\n | ArrowFunctionExpression\n | ClassExpression\n | ImportExpression\n | MetaProperty\n | Super\n | TaggedTemplateExpression\n | TemplateLiteral\n | YieldExpression\n | AwaitExpression\n | Import\n | BigIntLiteral\n | OptionalMemberExpression\n | OptionalCallExpression\n | TypeCastExpression\n | JSXElement\n | JSXFragment\n | BindExpression\n | DoExpression\n | RecordExpression\n | TupleExpression\n | DecimalLiteral\n | ModuleExpression\n | TopicReference\n | PipelineTopicExpression\n | PipelineBareFunction\n | PipelinePrimaryTopicReference\n | TSInstantiationExpression\n | TSAsExpression\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TSNonNullExpression;\nexport type Binary = BinaryExpression | LogicalExpression;\nexport type Scopable =\n | BlockStatement\n | CatchClause\n | DoWhileStatement\n | ForInStatement\n | ForStatement\n | FunctionDeclaration\n | FunctionExpression\n | Program\n | ObjectMethod\n | SwitchStatement\n | WhileStatement\n | ArrowFunctionExpression\n | ClassExpression\n | ClassDeclaration\n | ForOfStatement\n | ClassMethod\n | ClassPrivateMethod\n | StaticBlock\n | TSModuleBlock;\nexport type BlockParent =\n | BlockStatement\n | CatchClause\n | DoWhileStatement\n | ForInStatement\n | ForStatement\n | FunctionDeclaration\n | FunctionExpression\n | Program\n | ObjectMethod\n | SwitchStatement\n | WhileStatement\n | ArrowFunctionExpression\n | ForOfStatement\n | ClassMethod\n | ClassPrivateMethod\n | StaticBlock\n | TSModuleBlock;\nexport type Block = BlockStatement | Program | TSModuleBlock;\nexport type Statement =\n | BlockStatement\n | BreakStatement\n | ContinueStatement\n | DebuggerStatement\n | DoWhileStatement\n | EmptyStatement\n | ExpressionStatement\n | ForInStatement\n | ForStatement\n | FunctionDeclaration\n | IfStatement\n | LabeledStatement\n | ReturnStatement\n | SwitchStatement\n | ThrowStatement\n | TryStatement\n | VariableDeclaration\n | WhileStatement\n | WithStatement\n | ClassDeclaration\n | ExportAllDeclaration\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ForOfStatement\n | ImportDeclaration\n | DeclareClass\n | DeclareFunction\n | DeclareInterface\n | DeclareModule\n | DeclareModuleExports\n | DeclareTypeAlias\n | DeclareOpaqueType\n | DeclareVariable\n | DeclareExportDeclaration\n | DeclareExportAllDeclaration\n | InterfaceDeclaration\n | OpaqueType\n | TypeAlias\n | EnumDeclaration\n | TSDeclareFunction\n | TSInterfaceDeclaration\n | TSTypeAliasDeclaration\n | TSEnumDeclaration\n | TSModuleDeclaration\n | TSImportEqualsDeclaration\n | TSExportAssignment\n | TSNamespaceExportDeclaration;\nexport type Terminatorless =\n | BreakStatement\n | ContinueStatement\n | ReturnStatement\n | ThrowStatement\n | YieldExpression\n | AwaitExpression;\nexport type CompletionStatement =\n | BreakStatement\n | ContinueStatement\n | ReturnStatement\n | ThrowStatement;\nexport type Conditional = ConditionalExpression | IfStatement;\nexport type Loop =\n | DoWhileStatement\n | ForInStatement\n | ForStatement\n | WhileStatement\n | ForOfStatement;\nexport type While = DoWhileStatement | WhileStatement;\nexport type ExpressionWrapper =\n | ExpressionStatement\n | ParenthesizedExpression\n | TypeCastExpression;\nexport type For = ForInStatement | ForStatement | ForOfStatement;\nexport type ForXStatement = ForInStatement | ForOfStatement;\nexport type Function =\n | FunctionDeclaration\n | FunctionExpression\n | ObjectMethod\n | ArrowFunctionExpression\n | ClassMethod\n | ClassPrivateMethod;\nexport type FunctionParent =\n | FunctionDeclaration\n | FunctionExpression\n | ObjectMethod\n | ArrowFunctionExpression\n | ClassMethod\n | ClassPrivateMethod\n | StaticBlock\n | TSModuleBlock;\nexport type Pureish =\n | FunctionDeclaration\n | FunctionExpression\n | StringLiteral\n | NumericLiteral\n | NullLiteral\n | BooleanLiteral\n | RegExpLiteral\n | ArrowFunctionExpression\n | BigIntLiteral\n | DecimalLiteral;\nexport type Declaration =\n | FunctionDeclaration\n | VariableDeclaration\n | ClassDeclaration\n | ExportAllDeclaration\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ImportDeclaration\n | DeclareClass\n | DeclareFunction\n | DeclareInterface\n | DeclareModule\n | DeclareModuleExports\n | DeclareTypeAlias\n | DeclareOpaqueType\n | DeclareVariable\n | DeclareExportDeclaration\n | DeclareExportAllDeclaration\n | InterfaceDeclaration\n | OpaqueType\n | TypeAlias\n | EnumDeclaration\n | TSDeclareFunction\n | TSInterfaceDeclaration\n | TSTypeAliasDeclaration\n | TSEnumDeclaration\n | TSModuleDeclaration\n | TSImportEqualsDeclaration;\nexport type FunctionParameter =\n | Identifier\n | RestElement\n | AssignmentPattern\n | ArrayPattern\n | ObjectPattern\n | VoidPattern;\nexport type PatternLike =\n | Identifier\n | MemberExpression\n | RestElement\n | AssignmentPattern\n | ArrayPattern\n | ObjectPattern\n | VoidPattern\n | TSAsExpression\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TSNonNullExpression;\nexport type LVal =\n | Identifier\n | MemberExpression\n | RestElement\n | AssignmentPattern\n | ArrayPattern\n | ObjectPattern\n | TSParameterProperty\n | TSAsExpression\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TSNonNullExpression;\nexport type TSEntityName = Identifier | TSQualifiedName;\nexport type Literal =\n | StringLiteral\n | NumericLiteral\n | NullLiteral\n | BooleanLiteral\n | RegExpLiteral\n | TemplateLiteral\n | BigIntLiteral\n | DecimalLiteral;\nexport type Immutable =\n | StringLiteral\n | NumericLiteral\n | NullLiteral\n | BooleanLiteral\n | BigIntLiteral\n | JSXAttribute\n | JSXClosingElement\n | JSXElement\n | JSXExpressionContainer\n | JSXSpreadChild\n | JSXOpeningElement\n | JSXText\n | JSXFragment\n | JSXOpeningFragment\n | JSXClosingFragment\n | DecimalLiteral;\nexport type UserWhitespacable =\n | ObjectMethod\n | ObjectProperty\n | ObjectTypeInternalSlot\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty;\nexport type Method = ObjectMethod | ClassMethod | ClassPrivateMethod;\nexport type ObjectMember = ObjectMethod | ObjectProperty;\nexport type Property =\n | ObjectProperty\n | ClassProperty\n | ClassAccessorProperty\n | ClassPrivateProperty;\nexport type UnaryLike = UnaryExpression | SpreadElement;\nexport type Pattern =\n | AssignmentPattern\n | ArrayPattern\n | ObjectPattern\n | VoidPattern;\nexport type Class = ClassExpression | ClassDeclaration;\nexport type ImportOrExportDeclaration =\n | ExportAllDeclaration\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ImportDeclaration;\nexport type ExportDeclaration =\n | ExportAllDeclaration\n | ExportDefaultDeclaration\n | ExportNamedDeclaration;\nexport type ModuleSpecifier =\n | ExportSpecifier\n | ImportDefaultSpecifier\n | ImportNamespaceSpecifier\n | ImportSpecifier\n | ExportNamespaceSpecifier\n | ExportDefaultSpecifier;\nexport type Accessor = ClassAccessorProperty;\nexport type Private = ClassPrivateProperty | ClassPrivateMethod | PrivateName;\nexport type Flow =\n | AnyTypeAnnotation\n | ArrayTypeAnnotation\n | BooleanTypeAnnotation\n | BooleanLiteralTypeAnnotation\n | NullLiteralTypeAnnotation\n | ClassImplements\n | DeclareClass\n | DeclareFunction\n | DeclareInterface\n | DeclareModule\n | DeclareModuleExports\n | DeclareTypeAlias\n | DeclareOpaqueType\n | DeclareVariable\n | DeclareExportDeclaration\n | DeclareExportAllDeclaration\n | DeclaredPredicate\n | ExistsTypeAnnotation\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | GenericTypeAnnotation\n | InferredPredicate\n | InterfaceExtends\n | InterfaceDeclaration\n | InterfaceTypeAnnotation\n | IntersectionTypeAnnotation\n | MixedTypeAnnotation\n | EmptyTypeAnnotation\n | NullableTypeAnnotation\n | NumberLiteralTypeAnnotation\n | NumberTypeAnnotation\n | ObjectTypeAnnotation\n | ObjectTypeInternalSlot\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | QualifiedTypeIdentifier\n | StringLiteralTypeAnnotation\n | StringTypeAnnotation\n | SymbolTypeAnnotation\n | ThisTypeAnnotation\n | TupleTypeAnnotation\n | TypeofTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeCastExpression\n | TypeParameter\n | TypeParameterDeclaration\n | TypeParameterInstantiation\n | UnionTypeAnnotation\n | Variance\n | VoidTypeAnnotation\n | EnumDeclaration\n | EnumBooleanBody\n | EnumNumberBody\n | EnumStringBody\n | EnumSymbolBody\n | EnumBooleanMember\n | EnumNumberMember\n | EnumStringMember\n | EnumDefaultedMember\n | IndexedAccessType\n | OptionalIndexedAccessType;\nexport type FlowType =\n | AnyTypeAnnotation\n | ArrayTypeAnnotation\n | BooleanTypeAnnotation\n | BooleanLiteralTypeAnnotation\n | NullLiteralTypeAnnotation\n | ExistsTypeAnnotation\n | FunctionTypeAnnotation\n | GenericTypeAnnotation\n | InterfaceTypeAnnotation\n | IntersectionTypeAnnotation\n | MixedTypeAnnotation\n | EmptyTypeAnnotation\n | NullableTypeAnnotation\n | NumberLiteralTypeAnnotation\n | NumberTypeAnnotation\n | ObjectTypeAnnotation\n | StringLiteralTypeAnnotation\n | StringTypeAnnotation\n | SymbolTypeAnnotation\n | ThisTypeAnnotation\n | TupleTypeAnnotation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation\n | VoidTypeAnnotation\n | IndexedAccessType\n | OptionalIndexedAccessType;\nexport type FlowBaseAnnotation =\n | AnyTypeAnnotation\n | BooleanTypeAnnotation\n | NullLiteralTypeAnnotation\n | MixedTypeAnnotation\n | EmptyTypeAnnotation\n | NumberTypeAnnotation\n | StringTypeAnnotation\n | SymbolTypeAnnotation\n | ThisTypeAnnotation\n | VoidTypeAnnotation;\nexport type FlowDeclaration =\n | DeclareClass\n | DeclareFunction\n | DeclareInterface\n | DeclareModule\n | DeclareModuleExports\n | DeclareTypeAlias\n | DeclareOpaqueType\n | DeclareVariable\n | DeclareExportDeclaration\n | DeclareExportAllDeclaration\n | InterfaceDeclaration\n | OpaqueType\n | TypeAlias;\nexport type FlowPredicate = DeclaredPredicate | InferredPredicate;\nexport type EnumBody =\n | EnumBooleanBody\n | EnumNumberBody\n | EnumStringBody\n | EnumSymbolBody;\nexport type EnumMember =\n | EnumBooleanMember\n | EnumNumberMember\n | EnumStringMember\n | EnumDefaultedMember;\nexport type JSX =\n | JSXAttribute\n | JSXClosingElement\n | JSXElement\n | JSXEmptyExpression\n | JSXExpressionContainer\n | JSXSpreadChild\n | JSXIdentifier\n | JSXMemberExpression\n | JSXNamespacedName\n | JSXOpeningElement\n | JSXSpreadAttribute\n | JSXText\n | JSXFragment\n | JSXOpeningFragment\n | JSXClosingFragment;\nexport type Miscellaneous = Noop | Placeholder | V8IntrinsicIdentifier;\nexport type TypeScript =\n | TSParameterProperty\n | TSDeclareFunction\n | TSDeclareMethod\n | TSQualifiedName\n | TSCallSignatureDeclaration\n | TSConstructSignatureDeclaration\n | TSPropertySignature\n | TSMethodSignature\n | TSIndexSignature\n | TSAnyKeyword\n | TSBooleanKeyword\n | TSBigIntKeyword\n | TSIntrinsicKeyword\n | TSNeverKeyword\n | TSNullKeyword\n | TSNumberKeyword\n | TSObjectKeyword\n | TSStringKeyword\n | TSSymbolKeyword\n | TSUndefinedKeyword\n | TSUnknownKeyword\n | TSVoidKeyword\n | TSThisType\n | TSFunctionType\n | TSConstructorType\n | TSTypeReference\n | TSTypePredicate\n | TSTypeQuery\n | TSTypeLiteral\n | TSArrayType\n | TSTupleType\n | TSOptionalType\n | TSRestType\n | TSNamedTupleMember\n | TSUnionType\n | TSIntersectionType\n | TSConditionalType\n | TSInferType\n | TSParenthesizedType\n | TSTypeOperator\n | TSIndexedAccessType\n | TSMappedType\n | TSTemplateLiteralType\n | TSLiteralType\n | TSExpressionWithTypeArguments\n | TSInterfaceDeclaration\n | TSInterfaceBody\n | TSTypeAliasDeclaration\n | TSInstantiationExpression\n | TSAsExpression\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TSEnumBody\n | TSEnumDeclaration\n | TSEnumMember\n | TSModuleDeclaration\n | TSModuleBlock\n | TSImportType\n | TSImportEqualsDeclaration\n | TSExternalModuleReference\n | TSNonNullExpression\n | TSExportAssignment\n | TSNamespaceExportDeclaration\n | TSTypeAnnotation\n | TSTypeParameterInstantiation\n | TSTypeParameterDeclaration\n | TSTypeParameter;\nexport type TSTypeElement =\n | TSCallSignatureDeclaration\n | TSConstructSignatureDeclaration\n | TSPropertySignature\n | TSMethodSignature\n | TSIndexSignature;\nexport type TSType =\n | TSAnyKeyword\n | TSBooleanKeyword\n | TSBigIntKeyword\n | TSIntrinsicKeyword\n | TSNeverKeyword\n | TSNullKeyword\n | TSNumberKeyword\n | TSObjectKeyword\n | TSStringKeyword\n | TSSymbolKeyword\n | TSUndefinedKeyword\n | TSUnknownKeyword\n | TSVoidKeyword\n | TSThisType\n | TSFunctionType\n | TSConstructorType\n | TSTypeReference\n | TSTypePredicate\n | TSTypeQuery\n | TSTypeLiteral\n | TSArrayType\n | TSTupleType\n | TSOptionalType\n | TSRestType\n | TSUnionType\n | TSIntersectionType\n | TSConditionalType\n | TSInferType\n | TSParenthesizedType\n | TSTypeOperator\n | TSIndexedAccessType\n | TSMappedType\n | TSTemplateLiteralType\n | TSLiteralType\n | TSExpressionWithTypeArguments\n | TSImportType;\nexport type TSBaseType =\n | TSAnyKeyword\n | TSBooleanKeyword\n | TSBigIntKeyword\n | TSIntrinsicKeyword\n | TSNeverKeyword\n | TSNullKeyword\n | TSNumberKeyword\n | TSObjectKeyword\n | TSStringKeyword\n | TSSymbolKeyword\n | TSUndefinedKeyword\n | TSUnknownKeyword\n | TSVoidKeyword\n | TSThisType\n | TSTemplateLiteralType\n | TSLiteralType;\nexport type ModuleDeclaration =\n | ExportAllDeclaration\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ImportDeclaration;\n\nexport interface Aliases {\n Standardized: Standardized;\n Expression: Expression;\n Binary: Binary;\n Scopable: Scopable;\n BlockParent: BlockParent;\n Block: Block;\n Statement: Statement;\n Terminatorless: Terminatorless;\n CompletionStatement: CompletionStatement;\n Conditional: Conditional;\n Loop: Loop;\n While: While;\n ExpressionWrapper: ExpressionWrapper;\n For: For;\n ForXStatement: ForXStatement;\n Function: Function;\n FunctionParent: FunctionParent;\n Pureish: Pureish;\n Declaration: Declaration;\n FunctionParameter: FunctionParameter;\n PatternLike: PatternLike;\n LVal: LVal;\n TSEntityName: TSEntityName;\n Literal: Literal;\n Immutable: Immutable;\n UserWhitespacable: UserWhitespacable;\n Method: Method;\n ObjectMember: ObjectMember;\n Property: Property;\n UnaryLike: UnaryLike;\n Pattern: Pattern;\n Class: Class;\n ImportOrExportDeclaration: ImportOrExportDeclaration;\n ExportDeclaration: ExportDeclaration;\n ModuleSpecifier: ModuleSpecifier;\n Accessor: Accessor;\n Private: Private;\n Flow: Flow;\n FlowType: FlowType;\n FlowBaseAnnotation: FlowBaseAnnotation;\n FlowDeclaration: FlowDeclaration;\n FlowPredicate: FlowPredicate;\n EnumBody: EnumBody;\n EnumMember: EnumMember;\n JSX: JSX;\n Miscellaneous: Miscellaneous;\n TypeScript: TypeScript;\n TSTypeElement: TSTypeElement;\n TSType: TSType;\n TSBaseType: TSBaseType;\n ModuleDeclaration: ModuleDeclaration;\n}\n\nexport type DeprecatedAliases =\n | NumberLiteral\n | RegexLiteral\n | RestProperty\n | SpreadProperty;\n\nexport interface ParentMaps {\n AnyTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n ArgumentPlaceholder: CallExpression | NewExpression | OptionalCallExpression;\n ArrayExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ArrayPattern:\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | CatchClause\n | ClassMethod\n | ClassPrivateMethod\n | ForInStatement\n | ForOfStatement\n | FunctionDeclaration\n | FunctionExpression\n | ObjectMethod\n | ObjectProperty\n | RestElement\n | TSCallSignatureDeclaration\n | TSConstructSignatureDeclaration\n | TSConstructorType\n | TSDeclareFunction\n | TSDeclareMethod\n | TSFunctionType\n | TSMethodSignature\n | VariableDeclarator;\n ArrayTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n ArrowFunctionExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n AssignmentExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n AssignmentPattern:\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | ClassMethod\n | ClassPrivateMethod\n | ForInStatement\n | ForOfStatement\n | FunctionDeclaration\n | FunctionExpression\n | ObjectMethod\n | ObjectProperty\n | RestElement\n | TSDeclareFunction\n | TSDeclareMethod\n | TSParameterProperty\n | VariableDeclarator;\n AwaitExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n BigIntLiteral:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSLiteralType\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n BinaryExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n BindExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n BlockStatement:\n | ArrowFunctionExpression\n | BlockStatement\n | CatchClause\n | ClassMethod\n | ClassPrivateMethod\n | DeclareModule\n | DoExpression\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | FunctionDeclaration\n | FunctionExpression\n | IfStatement\n | LabeledStatement\n | ObjectMethod\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | TryStatement\n | WhileStatement\n | WithStatement;\n BooleanLiteral:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | EnumBooleanMember\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSLiteralType\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n BooleanLiteralTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n BooleanTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n BreakStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n CallExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n CatchClause: TryStatement;\n ClassAccessorProperty: ClassBody;\n ClassBody: ClassDeclaration | ClassExpression;\n ClassDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n ClassExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ClassImplements:\n | ClassDeclaration\n | ClassExpression\n | DeclareClass\n | DeclareExportDeclaration\n | DeclaredPredicate;\n ClassMethod: ClassBody;\n ClassPrivateMethod: ClassBody;\n ClassPrivateProperty: ClassBody;\n ClassProperty: ClassBody;\n CommentBlock: File;\n CommentLine: File;\n ConditionalExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ContinueStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DebuggerStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DecimalLiteral:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n DeclareClass:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareExportAllDeclaration:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareExportDeclaration:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareFunction:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareInterface:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareModule:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareModuleExports:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareOpaqueType:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareTypeAlias:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclareVariable:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n DeclaredPredicate:\n | ArrowFunctionExpression\n | DeclareExportDeclaration\n | DeclareFunction\n | DeclaredPredicate\n | FunctionDeclaration\n | FunctionExpression;\n Decorator:\n | ArrayPattern\n | AssignmentPattern\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateMethod\n | ClassPrivateProperty\n | ClassProperty\n | Identifier\n | ObjectMethod\n | ObjectPattern\n | ObjectProperty\n | Placeholder\n | RestElement\n | TSDeclareMethod\n | TSParameterProperty;\n Directive: BlockStatement | Program;\n DirectiveLiteral: Directive;\n DoExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n DoWhileStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n EmptyStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n EmptyTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n EnumBooleanBody:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | EnumDeclaration;\n EnumBooleanMember:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | EnumBooleanBody;\n EnumDeclaration:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n EnumDefaultedMember:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | EnumStringBody\n | EnumSymbolBody;\n EnumNumberBody:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | EnumDeclaration;\n EnumNumberMember:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | EnumNumberBody;\n EnumStringBody:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | EnumDeclaration;\n EnumStringMember:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | EnumStringBody;\n EnumSymbolBody:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | EnumDeclaration;\n ExistsTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n ExportAllDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n ExportDefaultDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n ExportDefaultSpecifier: ExportNamedDeclaration;\n ExportNamedDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n ExportNamespaceSpecifier: DeclareExportDeclaration | ExportNamedDeclaration;\n ExportSpecifier: DeclareExportDeclaration | ExportNamedDeclaration;\n ExpressionStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n File: null;\n ForInStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n ForOfStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n ForStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n FunctionDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n FunctionExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n FunctionTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n FunctionTypeParam:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | FunctionTypeAnnotation;\n GenericTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n Identifier:\n | ArrayExpression\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | BreakStatement\n | CallExpression\n | CatchClause\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassImplements\n | ClassMethod\n | ClassPrivateMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | ContinueStatement\n | DeclareClass\n | DeclareFunction\n | DeclareInterface\n | DeclareModule\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclareVariable\n | Decorator\n | DoWhileStatement\n | EnumBooleanMember\n | EnumDeclaration\n | EnumDefaultedMember\n | EnumNumberMember\n | EnumStringMember\n | ExportDefaultDeclaration\n | ExportDefaultSpecifier\n | ExportNamespaceSpecifier\n | ExportSpecifier\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | FunctionDeclaration\n | FunctionExpression\n | FunctionTypeParam\n | GenericTypeAnnotation\n | IfStatement\n | ImportAttribute\n | ImportDefaultSpecifier\n | ImportExpression\n | ImportNamespaceSpecifier\n | ImportSpecifier\n | InterfaceDeclaration\n | InterfaceExtends\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LabeledStatement\n | LogicalExpression\n | MemberExpression\n | MetaProperty\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | OpaqueType\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | Placeholder\n | PrivateName\n | QualifiedTypeIdentifier\n | RestElement\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSCallSignatureDeclaration\n | TSConstructSignatureDeclaration\n | TSConstructorType\n | TSDeclareFunction\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSExpressionWithTypeArguments\n | TSFunctionType\n | TSImportEqualsDeclaration\n | TSImportType\n | TSIndexSignature\n | TSInstantiationExpression\n | TSInterfaceDeclaration\n | TSMethodSignature\n | TSModuleDeclaration\n | TSNamedTupleMember\n | TSNamespaceExportDeclaration\n | TSNonNullExpression\n | TSParameterProperty\n | TSPropertySignature\n | TSQualifiedName\n | TSSatisfiesExpression\n | TSTypeAliasDeclaration\n | TSTypeAssertion\n | TSTypePredicate\n | TSTypeQuery\n | TSTypeReference\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeAlias\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n IfStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n Import:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ImportAttribute:\n | DeclareExportAllDeclaration\n | DeclareExportDeclaration\n | ExportAllDeclaration\n | ExportNamedDeclaration\n | ImportDeclaration;\n ImportDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n ImportDefaultSpecifier: ImportDeclaration;\n ImportExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ImportNamespaceSpecifier: ImportDeclaration;\n ImportSpecifier: ImportDeclaration;\n IndexedAccessType:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n InferredPredicate:\n | ArrowFunctionExpression\n | DeclareExportDeclaration\n | DeclaredPredicate\n | FunctionDeclaration\n | FunctionExpression;\n InterfaceDeclaration:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n InterfaceExtends:\n | ClassDeclaration\n | ClassExpression\n | DeclareClass\n | DeclareExportDeclaration\n | DeclareInterface\n | DeclaredPredicate\n | InterfaceDeclaration\n | InterfaceTypeAnnotation;\n InterfaceTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n InterpreterDirective: Program;\n IntersectionTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n JSXAttribute: JSXOpeningElement;\n JSXClosingElement: JSXElement;\n JSXClosingFragment: JSXFragment;\n JSXElement:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXAttribute\n | JSXElement\n | JSXExpressionContainer\n | JSXFragment\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n JSXEmptyExpression: JSXExpressionContainer;\n JSXExpressionContainer: JSXAttribute | JSXElement | JSXFragment;\n JSXFragment:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXAttribute\n | JSXElement\n | JSXExpressionContainer\n | JSXFragment\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n JSXIdentifier:\n | JSXAttribute\n | JSXClosingElement\n | JSXMemberExpression\n | JSXNamespacedName\n | JSXOpeningElement;\n JSXMemberExpression:\n | JSXClosingElement\n | JSXMemberExpression\n | JSXOpeningElement;\n JSXNamespacedName: JSXAttribute | JSXClosingElement | JSXOpeningElement;\n JSXOpeningElement: JSXElement;\n JSXOpeningFragment: JSXFragment;\n JSXSpreadAttribute: JSXOpeningElement;\n JSXSpreadChild: JSXElement | JSXFragment;\n JSXText: JSXElement | JSXFragment;\n LabeledStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n LogicalExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n MemberExpression:\n | ArrayExpression\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | RestElement\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n MetaProperty:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n MixedTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n ModuleExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n NewExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n Noop:\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentPattern\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateMethod\n | ClassPrivateProperty\n | ClassProperty\n | FunctionDeclaration\n | FunctionExpression\n | Identifier\n | ObjectMethod\n | ObjectPattern\n | Placeholder\n | RestElement\n | TSDeclareFunction\n | TSDeclareMethod;\n NullLiteral:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n NullLiteralTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n NullableTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n NumberLiteral: null;\n NumberLiteralTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n NumberTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n NumericLiteral:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | EnumNumberMember\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSLiteralType\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ObjectExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSImportType\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ObjectMethod: ObjectExpression;\n ObjectPattern:\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | CatchClause\n | ClassMethod\n | ClassPrivateMethod\n | ForInStatement\n | ForOfStatement\n | FunctionDeclaration\n | FunctionExpression\n | ObjectMethod\n | ObjectProperty\n | RestElement\n | TSCallSignatureDeclaration\n | TSConstructSignatureDeclaration\n | TSConstructorType\n | TSDeclareFunction\n | TSDeclareMethod\n | TSFunctionType\n | TSMethodSignature\n | VariableDeclarator;\n ObjectProperty: ObjectExpression | ObjectPattern | RecordExpression;\n ObjectTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareClass\n | DeclareExportDeclaration\n | DeclareInterface\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | InterfaceDeclaration\n | InterfaceTypeAnnotation\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n ObjectTypeCallProperty:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | ObjectTypeAnnotation;\n ObjectTypeIndexer:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | ObjectTypeAnnotation;\n ObjectTypeInternalSlot:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | ObjectTypeAnnotation;\n ObjectTypeProperty:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | ObjectTypeAnnotation;\n ObjectTypeSpreadProperty:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | ObjectTypeAnnotation;\n OpaqueType:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n OptionalCallExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n OptionalIndexedAccessType:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n OptionalMemberExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ParenthesizedExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n PipelineBareFunction:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n PipelinePrimaryTopicReference:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n PipelineTopicExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n Placeholder: Node;\n PrivateName:\n | BinaryExpression\n | ClassAccessorProperty\n | ClassPrivateMethod\n | ClassPrivateProperty\n | MemberExpression\n | ObjectProperty;\n Program: File | ModuleExpression;\n QualifiedTypeIdentifier:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | GenericTypeAnnotation\n | InterfaceExtends\n | QualifiedTypeIdentifier;\n RecordExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n RegExpLiteral:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n RegexLiteral: null;\n RestElement:\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | ClassMethod\n | ClassPrivateMethod\n | ForInStatement\n | ForOfStatement\n | FunctionDeclaration\n | FunctionExpression\n | ObjectMethod\n | ObjectPattern\n | ObjectProperty\n | RestElement\n | TSCallSignatureDeclaration\n | TSConstructSignatureDeclaration\n | TSConstructorType\n | TSDeclareFunction\n | TSDeclareMethod\n | TSFunctionType\n | TSMethodSignature\n | VariableDeclarator;\n RestProperty: null;\n ReturnStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n SequenceExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n SpreadElement:\n | ArrayExpression\n | CallExpression\n | NewExpression\n | ObjectExpression\n | OptionalCallExpression\n | RecordExpression\n | TupleExpression;\n SpreadProperty: null;\n StaticBlock: ClassBody;\n StringLiteral:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | DeclareExportAllDeclaration\n | DeclareExportDeclaration\n | DeclareModule\n | Decorator\n | DoWhileStatement\n | EnumStringMember\n | ExportAllDeclaration\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ExportSpecifier\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportAttribute\n | ImportDeclaration\n | ImportExpression\n | ImportSpecifier\n | JSXAttribute\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | ObjectTypeProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSExternalModuleReference\n | TSImportType\n | TSInstantiationExpression\n | TSLiteralType\n | TSMethodSignature\n | TSModuleDeclaration\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n StringLiteralTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n StringTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n Super:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n SwitchCase: SwitchStatement;\n SwitchStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n SymbolTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n TSAnyKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSArrayType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSAsExpression:\n | ArrayExpression\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | RestElement\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TSBigIntKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSBooleanKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSCallSignatureDeclaration: TSInterfaceBody | TSTypeLiteral;\n TSConditionalType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSConstructSignatureDeclaration: TSInterfaceBody | TSTypeLiteral;\n TSConstructorType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSDeclareFunction:\n | BlockStatement\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TSDeclareMethod: ClassBody;\n TSEnumBody: TSEnumDeclaration;\n TSEnumDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TSEnumMember: TSEnumBody | TSEnumDeclaration;\n TSExportAssignment:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TSExpressionWithTypeArguments:\n | ClassDeclaration\n | ClassExpression\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSInterfaceDeclaration\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSExternalModuleReference: TSImportEqualsDeclaration;\n TSFunctionType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSImportEqualsDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TSImportType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSTypeQuery\n | TSUnionType\n | TemplateLiteral;\n TSIndexSignature: ClassBody | TSInterfaceBody | TSTypeLiteral;\n TSIndexedAccessType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSInferType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSInstantiationExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TSInterfaceBody: TSInterfaceDeclaration;\n TSInterfaceDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TSIntersectionType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSIntrinsicKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSLiteralType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSMappedType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSMethodSignature: TSInterfaceBody | TSTypeLiteral;\n TSModuleBlock: TSModuleDeclaration;\n TSModuleDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | TSModuleDeclaration\n | WhileStatement\n | WithStatement;\n TSNamedTupleMember: TSTupleType;\n TSNamespaceExportDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TSNeverKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSNonNullExpression:\n | ArrayExpression\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | RestElement\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TSNullKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSNumberKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSObjectKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSOptionalType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSParameterProperty:\n | AssignmentExpression\n | ClassMethod\n | ClassPrivateMethod\n | ForInStatement\n | ForOfStatement\n | TSDeclareMethod\n | VariableDeclarator;\n TSParenthesizedType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSPropertySignature: TSInterfaceBody | TSTypeLiteral;\n TSQualifiedName:\n | TSExpressionWithTypeArguments\n | TSImportEqualsDeclaration\n | TSImportType\n | TSQualifiedName\n | TSTypeQuery\n | TSTypeReference;\n TSRestType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSSatisfiesExpression:\n | ArrayExpression\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | RestElement\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TSStringKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSSymbolKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSTemplateLiteralType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSThisType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSTypePredicate\n | TSUnionType\n | TemplateLiteral;\n TSTupleType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSTypeAliasDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TSTypeAnnotation:\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentPattern\n | ClassAccessorProperty\n | ClassMethod\n | ClassPrivateMethod\n | ClassPrivateProperty\n | ClassProperty\n | FunctionDeclaration\n | FunctionExpression\n | Identifier\n | ObjectMethod\n | ObjectPattern\n | Placeholder\n | RestElement\n | TSCallSignatureDeclaration\n | TSConstructSignatureDeclaration\n | TSConstructorType\n | TSDeclareFunction\n | TSDeclareMethod\n | TSFunctionType\n | TSIndexSignature\n | TSMethodSignature\n | TSPropertySignature\n | TSTypePredicate;\n TSTypeAssertion:\n | ArrayExpression\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | RestElement\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TSTypeLiteral:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSTypeOperator:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSTypeParameter: TSInferType | TSMappedType | TSTypeParameterDeclaration;\n TSTypeParameterDeclaration:\n | ArrowFunctionExpression\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateMethod\n | FunctionDeclaration\n | FunctionExpression\n | ObjectMethod\n | TSCallSignatureDeclaration\n | TSConstructSignatureDeclaration\n | TSConstructorType\n | TSDeclareFunction\n | TSDeclareMethod\n | TSFunctionType\n | TSInterfaceDeclaration\n | TSMethodSignature\n | TSTypeAliasDeclaration;\n TSTypeParameterInstantiation:\n | CallExpression\n | ClassDeclaration\n | ClassExpression\n | JSXOpeningElement\n | NewExpression\n | OptionalCallExpression\n | TSExpressionWithTypeArguments\n | TSImportType\n | TSInstantiationExpression\n | TSTypeQuery\n | TSTypeReference\n | TaggedTemplateExpression;\n TSTypePredicate:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSTypeQuery:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSTypeReference:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSUndefinedKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSUnionType:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSUnknownKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TSVoidKeyword:\n | TSArrayType\n | TSAsExpression\n | TSConditionalType\n | TSIndexedAccessType\n | TSIntersectionType\n | TSMappedType\n | TSNamedTupleMember\n | TSOptionalType\n | TSParenthesizedType\n | TSRestType\n | TSSatisfiesExpression\n | TSTemplateLiteralType\n | TSTupleType\n | TSTypeAliasDeclaration\n | TSTypeAnnotation\n | TSTypeAssertion\n | TSTypeOperator\n | TSTypeParameter\n | TSTypeParameterInstantiation\n | TSUnionType\n | TemplateLiteral;\n TaggedTemplateExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TemplateElement: TSTemplateLiteralType | TemplateLiteral;\n TemplateLiteral:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSLiteralType\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ThisExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n ThisTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n ThrowStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TopicReference:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TryStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TupleExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TupleTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n TypeAlias:\n | BlockStatement\n | DeclareExportDeclaration\n | DeclaredPredicate\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n TypeAnnotation:\n | ArrayPattern\n | ArrowFunctionExpression\n | AssignmentPattern\n | ClassAccessorProperty\n | ClassMethod\n | ClassPrivateMethod\n | ClassPrivateProperty\n | ClassProperty\n | DeclareExportDeclaration\n | DeclareModuleExports\n | DeclaredPredicate\n | FunctionDeclaration\n | FunctionExpression\n | Identifier\n | ObjectMethod\n | ObjectPattern\n | Placeholder\n | RestElement\n | TypeCastExpression\n | TypeParameter;\n TypeCastExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | DeclareExportDeclaration\n | DeclaredPredicate\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n TypeParameter:\n | DeclareExportDeclaration\n | DeclaredPredicate\n | TypeParameterDeclaration;\n TypeParameterDeclaration:\n | ArrowFunctionExpression\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateMethod\n | DeclareClass\n | DeclareExportDeclaration\n | DeclareInterface\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionDeclaration\n | FunctionExpression\n | FunctionTypeAnnotation\n | InterfaceDeclaration\n | ObjectMethod\n | OpaqueType\n | TypeAlias;\n TypeParameterInstantiation:\n | CallExpression\n | ClassDeclaration\n | ClassExpression\n | ClassImplements\n | DeclareExportDeclaration\n | DeclaredPredicate\n | GenericTypeAnnotation\n | InterfaceExtends\n | JSXOpeningElement\n | NewExpression\n | OptionalCallExpression\n | TaggedTemplateExpression;\n TypeofTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n UnaryExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSLiteralType\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n UnionTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n UpdateExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n V8IntrinsicIdentifier: CallExpression | NewExpression;\n VariableDeclaration:\n | BlockStatement\n | DoWhileStatement\n | ExportNamedDeclaration\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n VariableDeclarator: VariableDeclaration;\n Variance:\n | ClassAccessorProperty\n | ClassPrivateProperty\n | ClassProperty\n | DeclareExportDeclaration\n | DeclaredPredicate\n | ObjectTypeIndexer\n | ObjectTypeProperty\n | TypeParameter;\n VoidPattern:\n | ArrayPattern\n | ArrowFunctionExpression\n | ClassMethod\n | ClassPrivateMethod\n | FunctionDeclaration\n | FunctionExpression\n | ObjectMethod\n | ObjectProperty\n | TSDeclareFunction\n | TSDeclareMethod\n | VariableDeclarator;\n VoidTypeAnnotation:\n | ArrayTypeAnnotation\n | DeclareExportDeclaration\n | DeclareOpaqueType\n | DeclareTypeAlias\n | DeclaredPredicate\n | FunctionTypeAnnotation\n | FunctionTypeParam\n | IndexedAccessType\n | IntersectionTypeAnnotation\n | NullableTypeAnnotation\n | ObjectTypeCallProperty\n | ObjectTypeIndexer\n | ObjectTypeInternalSlot\n | ObjectTypeProperty\n | ObjectTypeSpreadProperty\n | OpaqueType\n | OptionalIndexedAccessType\n | TupleTypeAnnotation\n | TypeAlias\n | TypeAnnotation\n | TypeParameter\n | TypeParameterInstantiation\n | TypeofTypeAnnotation\n | UnionTypeAnnotation;\n WhileStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n WithStatement:\n | BlockStatement\n | DoWhileStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | LabeledStatement\n | Program\n | StaticBlock\n | SwitchCase\n | TSModuleBlock\n | WhileStatement\n | WithStatement;\n YieldExpression:\n | ArrayExpression\n | ArrowFunctionExpression\n | AssignmentExpression\n | AssignmentPattern\n | AwaitExpression\n | BinaryExpression\n | BindExpression\n | CallExpression\n | ClassAccessorProperty\n | ClassDeclaration\n | ClassExpression\n | ClassMethod\n | ClassPrivateProperty\n | ClassProperty\n | ConditionalExpression\n | Decorator\n | DoWhileStatement\n | ExportDefaultDeclaration\n | ExpressionStatement\n | ForInStatement\n | ForOfStatement\n | ForStatement\n | IfStatement\n | ImportExpression\n | JSXExpressionContainer\n | JSXSpreadAttribute\n | JSXSpreadChild\n | LogicalExpression\n | MemberExpression\n | NewExpression\n | ObjectMethod\n | ObjectProperty\n | OptionalCallExpression\n | OptionalMemberExpression\n | ParenthesizedExpression\n | PipelineBareFunction\n | PipelineTopicExpression\n | ReturnStatement\n | SequenceExpression\n | SpreadElement\n | SwitchCase\n | SwitchStatement\n | TSAsExpression\n | TSDeclareMethod\n | TSEnumDeclaration\n | TSEnumMember\n | TSExportAssignment\n | TSInstantiationExpression\n | TSMethodSignature\n | TSNonNullExpression\n | TSPropertySignature\n | TSSatisfiesExpression\n | TSTypeAssertion\n | TaggedTemplateExpression\n | TemplateLiteral\n | ThrowStatement\n | TupleExpression\n | TypeCastExpression\n | UnaryExpression\n | UpdateExpression\n | VariableDeclarator\n | WhileStatement\n | WithStatement\n | YieldExpression;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = createFlowUnionType;
|
|
7
|
+
var _index = require("../generated/index.js");
|
|
8
|
+
var _removeTypeDuplicates = require("../../modifications/flow/removeTypeDuplicates.js");
|
|
9
|
+
function createFlowUnionType(types) {
|
|
10
|
+
const flattened = (0, _removeTypeDuplicates.default)(types);
|
|
11
|
+
if (flattened.length === 1) {
|
|
12
|
+
return flattened[0];
|
|
13
|
+
} else {
|
|
14
|
+
return (0, _index.unionTypeAnnotation)(flattened);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
//# sourceMappingURL=createFlowUnionType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_index","require","_removeTypeDuplicates","createFlowUnionType","types","flattened","removeTypeDuplicates","length","unionTypeAnnotation"],"sources":["../../../src/builders/flow/createFlowUnionType.ts"],"sourcesContent":["import { unionTypeAnnotation } from \"../generated/index.ts\";\nimport removeTypeDuplicates from \"../../modifications/flow/removeTypeDuplicates.ts\";\nimport type * as t from \"../../index.ts\";\n\n/**\n * Takes an array of `types` and flattens them, removing duplicates and\n * returns a `UnionTypeAnnotation` node containing them.\n */\nexport default function createFlowUnionType<T extends t.FlowType>(\n types: [T] | T[],\n): T | t.UnionTypeAnnotation {\n const flattened = removeTypeDuplicates(types);\n\n if (flattened.length === 1) {\n return flattened[0] as T;\n } else {\n return unionTypeAnnotation(flattened);\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAD,OAAA;AAOe,SAASE,mBAAmBA,CACzCC,KAAgB,EACW;EAC3B,MAAMC,SAAS,GAAG,IAAAC,6BAAoB,EAACF,KAAK,CAAC;EAE7C,IAAIC,SAAS,CAACE,MAAM,KAAK,CAAC,EAAE;IAC1B,OAAOF,SAAS,CAAC,CAAC,CAAC;EACrB,CAAC,MAAM;IACL,OAAO,IAAAG,0BAAmB,EAACH,SAAS,CAAC;EACvC;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _index = require("../generated/index.js");
|
|
8
|
+
var _default = exports.default = createTypeAnnotationBasedOnTypeof;
|
|
9
|
+
function createTypeAnnotationBasedOnTypeof(type) {
|
|
10
|
+
switch (type) {
|
|
11
|
+
case "string":
|
|
12
|
+
return (0, _index.stringTypeAnnotation)();
|
|
13
|
+
case "number":
|
|
14
|
+
return (0, _index.numberTypeAnnotation)();
|
|
15
|
+
case "undefined":
|
|
16
|
+
return (0, _index.voidTypeAnnotation)();
|
|
17
|
+
case "boolean":
|
|
18
|
+
return (0, _index.booleanTypeAnnotation)();
|
|
19
|
+
case "function":
|
|
20
|
+
return (0, _index.genericTypeAnnotation)((0, _index.identifier)("Function"));
|
|
21
|
+
case "object":
|
|
22
|
+
return (0, _index.genericTypeAnnotation)((0, _index.identifier)("Object"));
|
|
23
|
+
case "symbol":
|
|
24
|
+
return (0, _index.genericTypeAnnotation)((0, _index.identifier)("Symbol"));
|
|
25
|
+
case "bigint":
|
|
26
|
+
return (0, _index.anyTypeAnnotation)();
|
|
27
|
+
}
|
|
28
|
+
throw new Error("Invalid typeof value: " + type);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=createTypeAnnotationBasedOnTypeof.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_index","require","_default","exports","default","createTypeAnnotationBasedOnTypeof","type","stringTypeAnnotation","numberTypeAnnotation","voidTypeAnnotation","booleanTypeAnnotation","genericTypeAnnotation","identifier","anyTypeAnnotation","Error"],"sources":["../../../src/builders/flow/createTypeAnnotationBasedOnTypeof.ts"],"sourcesContent":["import {\n anyTypeAnnotation,\n stringTypeAnnotation,\n numberTypeAnnotation,\n voidTypeAnnotation,\n booleanTypeAnnotation,\n genericTypeAnnotation,\n identifier,\n} from \"../generated/index.ts\";\nimport type * as t from \"../../index.ts\";\n\nexport default createTypeAnnotationBasedOnTypeof as {\n (type: \"string\"): t.StringTypeAnnotation;\n (type: \"number\"): t.NumberTypeAnnotation;\n (type: \"undefined\"): t.VoidTypeAnnotation;\n (type: \"boolean\"): t.BooleanTypeAnnotation;\n (type: \"function\"): t.GenericTypeAnnotation;\n (type: \"object\"): t.GenericTypeAnnotation;\n (type: \"symbol\"): t.GenericTypeAnnotation;\n (type: \"bigint\"): t.AnyTypeAnnotation;\n};\n\n/**\n * Create a type annotation based on typeof expression.\n */\nfunction createTypeAnnotationBasedOnTypeof(type: string): t.FlowType {\n switch (type) {\n case \"string\":\n return stringTypeAnnotation();\n case \"number\":\n return numberTypeAnnotation();\n case \"undefined\":\n return voidTypeAnnotation();\n case \"boolean\":\n return booleanTypeAnnotation();\n case \"function\":\n return genericTypeAnnotation(identifier(\"Function\"));\n case \"object\":\n return genericTypeAnnotation(identifier(\"Object\"));\n case \"symbol\":\n return genericTypeAnnotation(identifier(\"Symbol\"));\n case \"bigint\":\n // todo: use BigInt annotation when Flow supports BigInt\n // https://github.com/facebook/flow/issues/6639\n return anyTypeAnnotation();\n }\n throw new Error(\"Invalid typeof value: \" + type);\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAQ+B,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAGhBC,iCAAiC;AAchD,SAASA,iCAAiCA,CAACC,IAAY,EAAc;EACnE,QAAQA,IAAI;IACV,KAAK,QAAQ;MACX,OAAO,IAAAC,2BAAoB,EAAC,CAAC;IAC/B,KAAK,QAAQ;MACX,OAAO,IAAAC,2BAAoB,EAAC,CAAC;IAC/B,KAAK,WAAW;MACd,OAAO,IAAAC,yBAAkB,EAAC,CAAC;IAC7B,KAAK,SAAS;MACZ,OAAO,IAAAC,4BAAqB,EAAC,CAAC;IAChC,KAAK,UAAU;MACb,OAAO,IAAAC,4BAAqB,EAAC,IAAAC,iBAAU,EAAC,UAAU,CAAC,CAAC;IACtD,KAAK,QAAQ;MACX,OAAO,IAAAD,4BAAqB,EAAC,IAAAC,iBAAU,EAAC,QAAQ,CAAC,CAAC;IACpD,KAAK,QAAQ;MACX,OAAO,IAAAD,4BAAqB,EAAC,IAAAC,iBAAU,EAAC,QAAQ,CAAC,CAAC;IACpD,KAAK,QAAQ;MAGX,OAAO,IAAAC,wBAAiB,EAAC,CAAC;EAC9B;EACA,MAAM,IAAIC,KAAK,CAAC,wBAAwB,GAAGR,IAAI,CAAC;AAClD","ignoreList":[]}
|