diff --git a/.gitignore b/.gitignore index 58cff5e30..cc779f988 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,6 @@ thumbs.db android-runtime.iml test-app/build-tools/*.log test-app/analytics/build-statistics.json -package-lock.json \ No newline at end of file +package-lock.json +test-app/build-tools/jsparser/tests/cases/*/internal/livesync.js +test-app/build-tools/*.jar diff --git a/build-artifacts/project-template-gradle/settings.gradle b/build-artifacts/project-template-gradle/settings.gradle index e1226cf41..8f5284692 100644 --- a/build-artifacts/project-template-gradle/settings.gradle +++ b/build-artifacts/project-template-gradle/settings.gradle @@ -1,3 +1,10 @@ +pluginManagement { + repositories { + gradlePluginPortal() + mavenLocal() + } +} + rootProject.name = "__PROJECT_NAME__" include ':app'//, ':runtime', ':runtime-binding-generator' diff --git a/build.gradle b/build.gradle index 93be4ace6..630c1eb5a 100644 --- a/build.gradle +++ b/build.gradle @@ -252,14 +252,18 @@ task copyFilesToProjectTemeplate { copy { from "$TEST_APP_PATH/app/src/main/java/com/tns/" include "*.java" - exclude "NativeScriptApplication.java" - exclude "NativeScriptActivity.java" + exclude "TestNativeScriptApplication.java" + exclude "TestNativeScriptActivity.java" into "$DIST_FRAMEWORK_PATH/app/src/main/java/com/tns" } copy { from "$TEST_APP_PATH/app/src/main/java/com/tns/internal" into "$DIST_FRAMEWORK_PATH/app/src/main/java/com/tns/internal" } + copy { + from "$TEST_APP_PATH/app/src/main/java/com/tns/embedding" + into "$DIST_FRAMEWORK_PATH/app/src/main/java/com/tns/embedding" + } copy { from "$BUILD_TOOLS_PATH/static-binding-generator/build/libs/static-binding-generator.jar" into "$DIST_FRAMEWORK_PATH/build-tools" @@ -295,6 +299,10 @@ task copyFilesToProjectTemeplate { from "$TEST_APP_PATH/app/build.gradle" into "$DIST_FRAMEWORK_PATH/app" } + copy { + from "$TEST_APP_PATH/app/nativescript.gradle" + into "$DIST_FRAMEWORK_PATH/app" + } copy { from "$TEST_APP_PATH/build.gradle" into "$DIST_FRAMEWORK_PATH" diff --git a/test-app/.gitignore b/test-app/.gitignore index e94ad2aa9..8af3c8451 100644 --- a/test-app/.gitignore +++ b/test-app/.gitignore @@ -21,6 +21,4 @@ app/app.iml treeNodeStream.dat treeStringsStream.dat treeValueStream.dat -NativeScriptActivity.java -NativeScriptApplication.java **/com/tns/gen \ No newline at end of file diff --git a/test-app/app/src/main/AndroidManifest.xml b/test-app/app/src/main/AndroidManifest.xml index b0a7d50b3..b4cc52093 100644 --- a/test-app/app/src/main/AndroidManifest.xml +++ b/test-app/app/src/main/AndroidManifest.xml @@ -9,14 +9,14 @@ <application android:requestLegacyExternalStorage="true" - android:name="com.tns.NativeScriptApplication" + android:name="com.tns.TestNativeScriptApplication" android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> - <activity android:name="com.tns.NativeScriptActivity" android:exported="true"> + <activity android:name="com.tns.TestNativeScriptActivity" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> diff --git a/test-app/app/src/main/assets/app/MyActivity.js b/test-app/app/src/main/assets/app/MyActivity.js index fbea5688e..cb15d6d32 100644 --- a/test-app/app/src/main/assets/app/MyActivity.js +++ b/test-app/app/src/main/assets/app/MyActivity.js @@ -12,7 +12,7 @@ } } - @JavaProxy("com.tns.NativeScriptActivity") + @JavaProxy("com.tns.TestNativeScriptActivity") class MyActivity extends android.app.Activity { onCreate(bundle: android.os.Bundle) @@ -62,7 +62,7 @@ var MyActivity = (function (_super) { }; MyActivity = __decorate([ - JavaProxy("com.tns.NativeScriptActivity") + JavaProxy("com.tns.TestNativeScriptActivity") ], MyActivity); return MyActivity; })(android.app.Activity); \ No newline at end of file diff --git a/test-app/app/src/main/assets/app/MyApp.js b/test-app/app/src/main/assets/app/MyApp.js index 4de284a15..e65e8e910 100644 --- a/test-app/app/src/main/assets/app/MyApp.js +++ b/test-app/app/src/main/assets/app/MyApp.js @@ -1,5 +1,5 @@ // demonstrates how to extend class in JavaScript with prebuilt Java proxy -var MyApp = android.app.Application.extend("com.tns.NativeScriptApplication", +var MyApp = android.app.Application.extend("com.tns.TestNativeScriptApplication", { onCreate: function() { diff --git a/test-app/app/src/main/java/com/tns/tests/StringConversionTest.java b/test-app/app/src/main/java/com/tns/tests/StringConversionTest.java index b78f1f802..56c01da90 100644 --- a/test-app/app/src/main/java/com/tns/tests/StringConversionTest.java +++ b/test-app/app/src/main/java/com/tns/tests/StringConversionTest.java @@ -71,7 +71,7 @@ public void callback(String str) { private String readString() throws Exception { String str = null; - Context context = com.tns.NativeScriptApplication.getInstance(); + Context context = com.tns.TestNativeScriptApplication.getInstance(); InputStream inputStream = null; try { diff --git a/test-app/app/src/main/res/layout/main.xml b/test-app/app/src/main/res/layout/main.xml new file mode 100644 index 000000000..77d9ef65f --- /dev/null +++ b/test-app/app/src/main/res/layout/main.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8"?> +<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent"> + +</androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file diff --git a/test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Main.java b/test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Main.java index c4b96d920..d171507f9 100644 --- a/test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Main.java +++ b/test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Main.java @@ -1,6 +1,7 @@ package org.nativescript.staticbindinggenerator; import org.apache.commons.io.FileUtils; +import org.apache.commons.io.IOUtils; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; @@ -11,8 +12,10 @@ import java.io.File; import java.io.IOException; +import java.io.InputStream; import java.io.PrintWriter; import java.nio.charset.Charset; +import java.nio.file.Path; import java.nio.file.Paths; import java.util.ArrayList; import java.util.List; @@ -112,6 +115,10 @@ private static void validateInput() throws IOException { List<DataRow> inputFile = Generator.getRows(SBG_INPUT_FILE); inputDir = new File(inputFile.get(0).getRow()); + Path assetsInternalDirPath = inputDir.getParentFile().toPath().resolve("internal"); + extractResource(assetsInternalDirPath.resolve("ts_helpers.js"), "ts_helpers.js"); + extractResource(assetsInternalDirPath.resolve("livesync.js"), "livesync.js"); + webpackWorkersExcludePath = Paths.get(inputDir.getAbsolutePath(), "__worker-chunks.json").toString(); if (!inputDir.exists() || !inputDir.isDirectory()) { @@ -132,7 +139,9 @@ private static void validateInput() throws IOException { * This output file should contain all the information needed to generate java counterparts to the traversed js classes. * */ private static void runJsParser() { - String parserPath = Paths.get(System.getProperty("user.dir"), "jsparser", "js_parser.js").toString(); + Path jsParserPath = Paths.get(System.getProperty("user.dir"), "jsparser", "js_parser.js"); + extractResource(jsParserPath, "js_parser.js"); + String parserPath = jsParserPath.toString(); NodeJSProcess nodeJSProcess = new NodeJSProcessImpl(new ProcessExecutorImpl(), new EnvironmentVariablesReaderImpl()); int exitCode = nodeJSProcess.runScript(parserPath); @@ -141,6 +150,40 @@ private static void runJsParser() { } } + private static void extractResource(Path savePath, String resourceName) { + File jsParserFile = savePath.toFile(); + if (!jsParserFile.exists()) { + try { + jsParserFile.getParentFile().mkdirs(); + jsParserFile.createNewFile(); + InputStream source = Main.class.getResourceAsStream("/" + resourceName); + if (source == null) { + throw new RuntimeException(resourceName + " not found in resources"); + } + FileUtils.copyInputStreamToFile(source, jsParserFile); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + } + + private static void maybeExtractJsParserSource(Path jsParserPath) { + File jsParserFile = jsParserPath.toFile(); + if (!jsParserFile.exists()) { + try { + jsParserFile.getParentFile().mkdirs(); + jsParserFile.createNewFile(); + InputStream source = Main.class.getResourceAsStream("/js_parser.js"); + if (source == null) { + throw new RuntimeException("js_parser.js not found in resources"); + } + FileUtils.copyInputStreamToFile(source, jsParserFile); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + } + private static Boolean rootTraversed = false; private static void traverseDirectory(File currentDir, boolean traverseExplicitly) throws IOException, JSONException { diff --git a/test-app/build-tools/static-binding-generator/src/main/resources/js_parser.js b/test-app/build-tools/static-binding-generator/src/main/resources/js_parser.js new file mode 100644 index 000000000..b0a70a7cb --- /dev/null +++ b/test-app/build-tools/static-binding-generator/src/main/resources/js_parser.js @@ -0,0 +1 @@ +(()=>{var e={11858:(e,t,n)=>{var r=n(57147),a=n(71017);e.exports=function(e){function t(t){r.truncateSync(t,0),e&&e.logger&&e.logger.info("+cleared out file: "+t)}function n(e){var t=a.dirname(e);return r.existsSync(t)||(n(t),r.mkdirSync(t)),!0}return{cleanOutFile:t,createFile:function(a){n(a)&&(r.writeFileSync(a,""),e&&e.logger&&e.logger.info("+created ast output file: ")),t(a)},ensureDirectories:n}}},92758:(e,t,n)=>{n(57147);var r=n(71017);n(22037),n(11858)(),e.exports=function(e){r.dirname(e.logPath);var t=function(e,t,n){var r={};function a(e){return(t=new Date).getFullYear()+"-"+t.getMonth()+"-"+t.getDate()+"/"+t.getHours()+":"+t.getMinutes()+":"+t.getSeconds()+"\t"+e;var t}return r.log=function(e){console.log(a(e))},r.info=r.log,r.warn=function(e){console.warn(a(e))},r.error=function(e){console.error(a(e))},r}(e.APP_NAME);if(e.disable)for(var n in t)("error"!=n&&"warn"!=n||!e.showErrorsAndWarnings)&&(t[n]=function(){});return t}},73834:(e,t)=>{"use strict";function n(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}Object.defineProperty(t,"__esModule",{value:!0});class r{constructor(e,t,n){this.line=void 0,this.column=void 0,this.index=void 0,this.line=e,this.column=t,this.index=n}}class a{constructor(e,t){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=e,this.end=t}}function i(e,t){const{line:n,column:a,index:i}=e;return new r(n,a+t,i+t)}const s=Object.freeze({SyntaxError:"BABEL_PARSER_SYNTAX_ERROR",SourceTypeModuleError:"BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED"}),o=(e,t=e.length-1)=>({get(){return e.reduce(((e,t)=>e[t]),this)},set(n){e.reduce(((e,r,a)=>a===t?e[r]=n:e[r]),this)}}),l=(e,t,n)=>Object.keys(n).map((e=>[e,n[e]])).filter((([,e])=>!!e)).map((([e,t])=>[e,"function"==typeof t?{value:t,enumerable:!1}:"string"==typeof t.reflect?Object.assign({},t,o(t.reflect.split("."))):t])).reduce(((e,[t,n])=>Object.defineProperty(e,t,Object.assign({configurable:!0},n))),Object.assign(new e,t)),p={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},c=({type:e,prefix:t})=>"UpdateExpression"===e?p.UpdateExpression[String(t)]:p[e],u=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]),d=["toMessage"];function f(e){let{toMessage:t}=e,a=n(e,d);return function e({loc:n,details:i}){return l(SyntaxError,Object.assign({},a,{loc:n}),{clone(t={}){const n=t.loc||{};return e({loc:new r("line"in n?n.line:this.loc.line,"column"in n?n.column:this.loc.column,"index"in n?n.index:this.loc.index),details:Object.assign({},this.details,t.details)})},details:{value:i,enumerable:!1},message:{get(){return`${t(this.details)} (${this.loc.line}:${this.loc.column})`},set(e){Object.defineProperty(this,"message",{value:e})}},pos:{reflect:"loc.index",enumerable:!0},missingPlugin:"missingPlugin"in i&&{reflect:"details.missingPlugin",enumerable:!0}})}}function y(e,t){return Object.assign({toMessage:"string"==typeof e?()=>e:e},t)}function m(e,t){if(Array.isArray(e))return t=>m(t,e[0]);const n=e(y),r={};for(const e of Object.keys(n))r[e]=f(Object.assign({code:s.SyntaxError,reasonCode:e},t?{syntaxPlugin:t}:{},n[e]));return r}const h=Object.assign({},m((e=>({ImportMetaOutsideModule:e("import.meta may appear only with 'sourceType: \"module\"'",{code:s.SourceTypeModuleError}),ImportOutsideModule:e("'import' and 'export' may appear only with 'sourceType: \"module\"'",{code:s.SourceTypeModuleError})}))),m((e=>({AccessorIsGenerator:e((({kind:e})=>`A ${e}ter cannot be a generator.`)),ArgumentsInClass:e("'arguments' is only allowed in functions and class methods."),AsyncFunctionInSingleStatementContext:e("Async functions can only be declared at the top level or inside a block."),AwaitBindingIdentifier:e("Can not use 'await' as identifier inside an async function."),AwaitBindingIdentifierInStaticBlock:e("Can not use 'await' as identifier inside a static block."),AwaitExpressionFormalParameter:e("'await' is not allowed in async function parameters."),AwaitNotInAsyncContext:e("'await' is only allowed within async functions and at the top levels of modules."),AwaitNotInAsyncFunction:e("'await' is only allowed within async functions."),BadGetterArity:e("A 'get' accesor must not have any formal parameters."),BadSetterArity:e("A 'set' accesor must have exactly one formal parameter."),BadSetterRestParameter:e("A 'set' accesor function argument must not be a rest parameter."),ConstructorClassField:e("Classes may not have a field named 'constructor'."),ConstructorClassPrivateField:e("Classes may not have a private field named '#constructor'."),ConstructorIsAccessor:e("Class constructor may not be an accessor."),ConstructorIsAsync:e("Constructor can't be an async function."),ConstructorIsGenerator:e("Constructor can't be a generator."),DeclarationMissingInitializer:e((({kind:e})=>`Missing initializer in ${e} declaration.`)),DecoratorBeforeExport:e("Decorators must be placed *before* the 'export' keyword. You can set the 'decoratorsBeforeExport' option to false to use the 'export @decorator class {}' syntax."),DecoratorConstructor:e("Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?"),DecoratorExportClass:e("Using the export keyword between a decorator and a class is not allowed. Please use `export @dec class` instead."),DecoratorSemicolon:e("Decorators must not be followed by a semicolon."),DecoratorStaticBlock:e("Decorators can't be used with a static block."),DeletePrivateField:e("Deleting a private field is not allowed."),DestructureNamedImport:e("ES2015 named imports do not destructure. Use another statement for destructuring after the import."),DuplicateConstructor:e("Duplicate constructor in the same class."),DuplicateDefaultExport:e("Only one default export allowed per module."),DuplicateExport:e((({exportName:e})=>`\`${e}\` has already been exported. Exported identifiers must be unique.`)),DuplicateProto:e("Redefinition of __proto__ property."),DuplicateRegExpFlags:e("Duplicate regular expression flag."),ElementAfterRest:e("Rest element must be last element."),EscapedCharNotAnIdentifier:e("Invalid Unicode escape."),ExportBindingIsString:e((({localName:e,exportName:t})=>`A string literal cannot be used as an exported binding without \`from\`.\n- Did you mean \`export { '${e}' as '${t}' } from 'some-module'\`?`)),ExportDefaultFromAsIdentifier:e("'from' is not allowed as an identifier after 'export default'."),ForInOfLoopInitializer:e((({type:e})=>`'${"ForInStatement"===e?"for-in":"for-of"}' loop variable declaration may not have an initializer.`)),ForOfAsync:e("The left-hand side of a for-of loop may not be 'async'."),ForOfLet:e("The left-hand side of a for-of loop may not start with 'let'."),GeneratorInSingleStatementContext:e("Generators can only be declared at the top level or inside a block."),IllegalBreakContinue:e((({type:e})=>`Unsyntactic ${"BreakStatement"===e?"break":"continue"}.`)),IllegalLanguageModeDirective:e("Illegal 'use strict' directive in function with non-simple parameter list."),IllegalReturn:e("'return' outside of function."),ImportBindingIsString:e((({importName:e})=>`A string literal cannot be used as an imported binding.\n- Did you mean \`import { "${e}" as foo }\`?`)),ImportCallArgumentTrailingComma:e("Trailing comma is disallowed inside import(...) arguments."),ImportCallArity:e((({maxArgumentCount:e})=>`\`import()\` requires exactly ${1===e?"one argument":"one or two arguments"}.`)),ImportCallNotNewExpression:e("Cannot use new with import(...)."),ImportCallSpreadArgument:e("`...` is not allowed in `import()`."),IncompatibleRegExpUVFlags:e("The 'u' and 'v' regular expression flags cannot be enabled at the same time."),InvalidBigIntLiteral:e("Invalid BigIntLiteral."),InvalidCodePoint:e("Code point out of bounds."),InvalidCoverInitializedName:e("Invalid shorthand property initializer."),InvalidDecimal:e("Invalid decimal."),InvalidDigit:e((({radix:e})=>`Expected number in radix ${e}.`)),InvalidEscapeSequence:e("Bad character escape sequence."),InvalidEscapeSequenceTemplate:e("Invalid escape sequence in template."),InvalidEscapedReservedWord:e((({reservedWord:e})=>`Escape sequence in keyword ${e}.`)),InvalidIdentifier:e((({identifierName:e})=>`Invalid identifier ${e}.`)),InvalidLhs:e((({ancestor:e})=>`Invalid left-hand side in ${c(e)}.`)),InvalidLhsBinding:e((({ancestor:e})=>`Binding invalid left-hand side in ${c(e)}.`)),InvalidNumber:e("Invalid number."),InvalidOrMissingExponent:e("Floating-point numbers require a valid exponent after the 'e'."),InvalidOrUnexpectedToken:e((({unexpected:e})=>`Unexpected character '${e}'.`)),InvalidParenthesizedAssignment:e("Invalid parenthesized assignment pattern."),InvalidPrivateFieldResolution:e((({identifierName:e})=>`Private name #${e} is not defined.`)),InvalidPropertyBindingPattern:e("Binding member expression."),InvalidRecordProperty:e("Only properties and spread elements are allowed in record definitions."),InvalidRestAssignmentPattern:e("Invalid rest operator's argument."),LabelRedeclaration:e((({labelName:e})=>`Label '${e}' is already declared.`)),LetInLexicalBinding:e("'let' is not allowed to be used as a name in 'let' or 'const' declarations."),LineTerminatorBeforeArrow:e("No line break is allowed before '=>'."),MalformedRegExpFlags:e("Invalid regular expression flag."),MissingClassName:e("A class name is required."),MissingEqInAssignment:e("Only '=' operator can be used for specifying default value."),MissingSemicolon:e("Missing semicolon."),MissingPlugin:e((({missingPlugin:e})=>`This experimental syntax requires enabling the parser plugin: ${e.map((e=>JSON.stringify(e))).join(", ")}.`)),MissingOneOfPlugins:e((({missingPlugin:e})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${e.map((e=>JSON.stringify(e))).join(", ")}.`)),MissingUnicodeEscape:e("Expecting Unicode escape sequence \\uXXXX."),MixingCoalesceWithLogical:e("Nullish coalescing operator(??) requires parens when mixing with logical operators."),ModuleAttributeDifferentFromType:e("The only accepted module attribute is `type`."),ModuleAttributeInvalidValue:e("Only string literals are allowed as module attribute values."),ModuleAttributesWithDuplicateKeys:e((({key:e})=>`Duplicate key "${e}" is not allowed in module attributes.`)),ModuleExportNameHasLoneSurrogate:e((({surrogateCharCode:e})=>`An export name cannot include a lone surrogate, found '\\u${e.toString(16)}'.`)),ModuleExportUndefined:e((({localName:e})=>`Export '${e}' is not defined.`)),MultipleDefaultsInSwitch:e("Multiple default clauses."),NewlineAfterThrow:e("Illegal newline after throw."),NoCatchOrFinally:e("Missing catch or finally clause."),NumberIdentifier:e("Identifier directly after number."),NumericSeparatorInEscapeSequence:e("Numeric separators are not allowed inside unicode escape sequences or hex escape sequences."),ObsoleteAwaitStar:e("'await*' has been removed from the async functions proposal. Use Promise.all() instead."),OptionalChainingNoNew:e("Constructors in/after an Optional Chain are not allowed."),OptionalChainingNoTemplate:e("Tagged Template Literals are not allowed in optionalChain."),OverrideOnConstructor:e("'override' modifier cannot appear on a constructor declaration."),ParamDupe:e("Argument name clash."),PatternHasAccessor:e("Object pattern can't contain getter or setter."),PatternHasMethod:e("Object pattern can't contain methods."),PrivateInExpectedIn:e((({identifierName:e})=>`Private names are only allowed in property accesses (\`obj.#${e}\`) or in \`in\` expressions (\`#${e} in obj\`).`)),PrivateNameRedeclaration:e((({identifierName:e})=>`Duplicate private name #${e}.`)),RecordExpressionBarIncorrectEndSyntaxType:e("Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'."),RecordExpressionBarIncorrectStartSyntaxType:e("Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'."),RecordExpressionHashIncorrectStartSyntaxType:e("Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'."),RecordNoProto:e("'__proto__' is not allowed in Record expressions."),RestTrailingComma:e("Unexpected trailing comma after rest element."),SloppyFunction:e("In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement."),StaticPrototype:e("Classes may not have static property named prototype."),SuperNotAllowed:e("`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?"),SuperPrivateField:e("Private fields can't be accessed on super."),TrailingDecorator:e("Decorators must be attached to a class element."),TupleExpressionBarIncorrectEndSyntaxType:e("Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'."),TupleExpressionBarIncorrectStartSyntaxType:e("Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'."),TupleExpressionHashIncorrectStartSyntaxType:e("Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'."),UnexpectedArgumentPlaceholder:e("Unexpected argument placeholder."),UnexpectedAwaitAfterPipelineBody:e('Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.'),UnexpectedDigitAfterHash:e("Unexpected digit after hash token."),UnexpectedImportExport:e("'import' and 'export' may only appear at the top level."),UnexpectedKeyword:e((({keyword:e})=>`Unexpected keyword '${e}'.`)),UnexpectedLeadingDecorator:e("Leading decorators must be attached to a class declaration."),UnexpectedLexicalDeclaration:e("Lexical declaration cannot appear in a single-statement context."),UnexpectedNewTarget:e("`new.target` can only be used in functions or class properties."),UnexpectedNumericSeparator:e("A numeric separator is only allowed between two digits."),UnexpectedPrivateField:e("Unexpected private name."),UnexpectedReservedWord:e((({reservedWord:e})=>`Unexpected reserved word '${e}'.`)),UnexpectedSuper:e("'super' is only allowed in object methods and classes."),UnexpectedToken:e((({expected:e,unexpected:t})=>`Unexpected token${t?` '${t}'.`:""}${e?`, expected "${e}"`:""}`)),UnexpectedTokenUnaryExponentiation:e("Illegal expression. Wrap left hand side or entire exponentiation in parentheses."),UnsupportedBind:e("Binding should be performed on object property."),UnsupportedDecoratorExport:e("A decorated export must export a class declaration."),UnsupportedDefaultExport:e("Only expressions, functions or classes are allowed as the `default` export."),UnsupportedImport:e("`import` can only be used in `import()` or `import.meta`."),UnsupportedMetaProperty:e((({target:e,onlyValidPropertyName:t})=>`The only valid meta property for ${e} is ${e}.${t}.`)),UnsupportedParameterDecorator:e("Decorators cannot be used to decorate parameters."),UnsupportedPropertyDecorator:e("Decorators cannot be used to decorate object literal properties."),UnsupportedSuper:e("'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop])."),UnterminatedComment:e("Unterminated comment."),UnterminatedRegExp:e("Unterminated regular expression."),UnterminatedString:e("Unterminated string constant."),UnterminatedTemplate:e("Unterminated template."),VarRedeclaration:e((({identifierName:e})=>`Identifier '${e}' has already been declared.`)),YieldBindingIdentifier:e("Can not use 'yield' as identifier inside a generator."),YieldInParameter:e("Yield expression is not allowed in formal parameters."),ZeroDigitNumericSeparator:e("Numeric separator can not be used after leading 0.")}))),m((e=>({StrictDelete:e("Deleting local variable in strict mode."),StrictEvalArguments:e((({referenceName:e})=>`Assigning to '${e}' in strict mode.`)),StrictEvalArgumentsBinding:e((({bindingName:e})=>`Binding '${e}' in strict mode.`)),StrictFunction:e("In strict mode code, functions can only be declared at top level or inside a block."),StrictNumericEscape:e("The only valid numeric escape in strict mode is '\\0'."),StrictOctalLiteral:e("Legacy octal literals are not allowed in strict mode."),StrictWith:e("'with' in strict mode.")}))),m`pipelineOperator`((e=>({PipeBodyIsTighter:e("Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence."),PipeTopicRequiresHackPipes:e('Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'),PipeTopicUnbound:e("Topic reference is unbound; it must be inside a pipe body."),PipeTopicUnconfiguredToken:e((({token:e})=>`Invalid topic token ${e}. In order to use ${e} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${e}" }.`)),PipeTopicUnused:e("Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once."),PipeUnparenthesizedBody:e((({type:e})=>`Hack-style pipe body cannot be an unparenthesized ${c({type:e})}; please wrap it in parentheses.`)),PipelineBodyNoArrow:e('Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.'),PipelineBodySequenceExpression:e("Pipeline body may not be a comma-separated sequence expression."),PipelineHeadSequenceExpression:e("Pipeline head should not be a comma-separated sequence expression."),PipelineTopicUnused:e("Pipeline is in topic style but does not use topic reference."),PrimaryTopicNotAllowed:e("Topic reference was used in a lexical context without topic binding."),PrimaryTopicRequiresSmartPipeline:e('Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.')})))),{defineProperty:T}=Object,S=(e,t)=>T(e,t,{enumerable:!1,value:e[t]});function b(e){return S(e.loc.start,"index"),S(e.loc.end,"index"),e}class E{constructor(e,t){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!t}}const P={brace:new E("{"),j_oTag:new E("<tag"),j_cTag:new E("</tag"),j_expr:new E("<tag>...</tag>",!0)};P.template=new E("`",!0);const x=!0,g=!0,A=!0,v=!0,O=!0;class I{constructor(e,t={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.rightAssociative=!!t.rightAssociative,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=null!=t.binop?t.binop:null,this.updateContext=null}}const N=new Map;function D(e,t={}){t.keyword=e;const n=F(e,t);return N.set(e,n),n}function C(e,t){return F(e,{beforeExpr:x,binop:t})}let w=-1;const L=[],j=[],_=[],M=[],k=[],B=[];function F(e,t={}){var n,r,a,i;return++w,j.push(e),_.push(null!=(n=t.binop)?n:-1),M.push(null!=(r=t.beforeExpr)&&r),k.push(null!=(a=t.startsExpr)&&a),B.push(null!=(i=t.prefix)&&i),L.push(new I(e,t)),w}function R(e,t={}){var n,r,a,i;return++w,N.set(e,w),j.push(e),_.push(null!=(n=t.binop)?n:-1),M.push(null!=(r=t.beforeExpr)&&r),k.push(null!=(a=t.startsExpr)&&a),B.push(null!=(i=t.prefix)&&i),L.push(new I("name",t)),w}const K={bracketL:F("[",{beforeExpr:x,startsExpr:g}),bracketHashL:F("#[",{beforeExpr:x,startsExpr:g}),bracketBarL:F("[|",{beforeExpr:x,startsExpr:g}),bracketR:F("]"),bracketBarR:F("|]"),braceL:F("{",{beforeExpr:x,startsExpr:g}),braceBarL:F("{|",{beforeExpr:x,startsExpr:g}),braceHashL:F("#{",{beforeExpr:x,startsExpr:g}),braceR:F("}",{beforeExpr:x}),braceBarR:F("|}"),parenL:F("(",{beforeExpr:x,startsExpr:g}),parenR:F(")"),comma:F(",",{beforeExpr:x}),semi:F(";",{beforeExpr:x}),colon:F(":",{beforeExpr:x}),doubleColon:F("::",{beforeExpr:x}),dot:F("."),question:F("?",{beforeExpr:x}),questionDot:F("?."),arrow:F("=>",{beforeExpr:x}),template:F("template"),ellipsis:F("...",{beforeExpr:x}),backQuote:F("`",{startsExpr:g}),dollarBraceL:F("${",{beforeExpr:x,startsExpr:g}),templateTail:F("...`",{startsExpr:g}),templateNonTail:F("...${",{beforeExpr:x,startsExpr:g}),at:F("@"),hash:F("#",{startsExpr:g}),interpreterDirective:F("#!..."),eq:F("=",{beforeExpr:x,isAssign:v}),assign:F("_=",{beforeExpr:x,isAssign:v}),slashAssign:F("_=",{beforeExpr:x,isAssign:v}),xorAssign:F("_=",{beforeExpr:x,isAssign:v}),moduloAssign:F("_=",{beforeExpr:x,isAssign:v}),incDec:F("++/--",{prefix:O,postfix:!0,startsExpr:g}),bang:F("!",{beforeExpr:x,prefix:O,startsExpr:g}),tilde:F("~",{beforeExpr:x,prefix:O,startsExpr:g}),doubleCaret:F("^^",{startsExpr:g}),doubleAt:F("@@",{startsExpr:g}),pipeline:C("|>",0),nullishCoalescing:C("??",1),logicalOR:C("||",1),logicalAND:C("&&",2),bitwiseOR:C("|",3),bitwiseXOR:C("^",4),bitwiseAND:C("&",5),equality:C("==/!=/===/!==",6),lt:C("</>/<=/>=",7),gt:C("</>/<=/>=",7),relational:C("</>/<=/>=",7),bitShift:C("<</>>/>>>",8),bitShiftL:C("<</>>/>>>",8),bitShiftR:C("<</>>/>>>",8),plusMin:F("+/-",{beforeExpr:x,binop:9,prefix:O,startsExpr:g}),modulo:F("%",{binop:10,startsExpr:g}),star:F("*",{binop:10}),slash:C("/",10),exponent:F("**",{beforeExpr:x,binop:11,rightAssociative:!0}),_in:D("in",{beforeExpr:x,binop:7}),_instanceof:D("instanceof",{beforeExpr:x,binop:7}),_break:D("break"),_case:D("case",{beforeExpr:x}),_catch:D("catch"),_continue:D("continue"),_debugger:D("debugger"),_default:D("default",{beforeExpr:x}),_else:D("else",{beforeExpr:x}),_finally:D("finally"),_function:D("function",{startsExpr:g}),_if:D("if"),_return:D("return",{beforeExpr:x}),_switch:D("switch"),_throw:D("throw",{beforeExpr:x,prefix:O,startsExpr:g}),_try:D("try"),_var:D("var"),_const:D("const"),_with:D("with"),_new:D("new",{beforeExpr:x,startsExpr:g}),_this:D("this",{startsExpr:g}),_super:D("super",{startsExpr:g}),_class:D("class",{startsExpr:g}),_extends:D("extends",{beforeExpr:x}),_export:D("export"),_import:D("import",{startsExpr:g}),_null:D("null",{startsExpr:g}),_true:D("true",{startsExpr:g}),_false:D("false",{startsExpr:g}),_typeof:D("typeof",{beforeExpr:x,prefix:O,startsExpr:g}),_void:D("void",{beforeExpr:x,prefix:O,startsExpr:g}),_delete:D("delete",{beforeExpr:x,prefix:O,startsExpr:g}),_do:D("do",{isLoop:A,beforeExpr:x}),_for:D("for",{isLoop:A}),_while:D("while",{isLoop:A}),_as:R("as",{startsExpr:g}),_assert:R("assert",{startsExpr:g}),_async:R("async",{startsExpr:g}),_await:R("await",{startsExpr:g}),_from:R("from",{startsExpr:g}),_get:R("get",{startsExpr:g}),_let:R("let",{startsExpr:g}),_meta:R("meta",{startsExpr:g}),_of:R("of",{startsExpr:g}),_sent:R("sent",{startsExpr:g}),_set:R("set",{startsExpr:g}),_static:R("static",{startsExpr:g}),_yield:R("yield",{startsExpr:g}),_asserts:R("asserts",{startsExpr:g}),_checks:R("checks",{startsExpr:g}),_exports:R("exports",{startsExpr:g}),_global:R("global",{startsExpr:g}),_implements:R("implements",{startsExpr:g}),_intrinsic:R("intrinsic",{startsExpr:g}),_infer:R("infer",{startsExpr:g}),_is:R("is",{startsExpr:g}),_mixins:R("mixins",{startsExpr:g}),_proto:R("proto",{startsExpr:g}),_require:R("require",{startsExpr:g}),_keyof:R("keyof",{startsExpr:g}),_readonly:R("readonly",{startsExpr:g}),_unique:R("unique",{startsExpr:g}),_abstract:R("abstract",{startsExpr:g}),_declare:R("declare",{startsExpr:g}),_enum:R("enum",{startsExpr:g}),_module:R("module",{startsExpr:g}),_namespace:R("namespace",{startsExpr:g}),_interface:R("interface",{startsExpr:g}),_type:R("type",{startsExpr:g}),_opaque:R("opaque",{startsExpr:g}),name:F("name",{startsExpr:g}),string:F("string",{startsExpr:g}),num:F("num",{startsExpr:g}),bigint:F("bigint",{startsExpr:g}),decimal:F("decimal",{startsExpr:g}),regexp:F("regexp",{startsExpr:g}),privateName:F("#name",{startsExpr:g}),eof:F("eof"),jsxName:F("jsxName"),jsxText:F("jsxText",{beforeExpr:!0}),jsxTagStart:F("jsxTagStart",{startsExpr:!0}),jsxTagEnd:F("jsxTagEnd"),placeholder:F("%%",{startsExpr:!0})};function V(e){return e>=93&&e<=128}function Y(e){return e>=58&&e<=128}function U(e){return e>=58&&e<=132}function X(e){return k[e]}function J(e){return e>=125&&e<=127}function W(e){return e>=58&&e<=92}function q(e){return j[e]}function $(e){return _[e]}function G(e){return e>=24&&e<=25}function z(e){return L[e]}L[8].updateContext=e=>{e.pop()},L[5].updateContext=L[7].updateContext=L[23].updateContext=e=>{e.push(P.brace)},L[22].updateContext=e=>{e[e.length-1]===P.template?e.pop():e.push(P.template)},L[138].updateContext=e=>{e.push(P.j_expr,P.j_oTag)};let H="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",Q="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_";const Z=new RegExp("["+H+"]"),ee=new RegExp("["+H+Q+"]");H=Q=null;const te=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,190,0,80,921,103,110,18,195,2637,96,16,1070,4050,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,46,2,18,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,482,44,11,6,17,0,322,29,19,43,1269,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4152,8,221,3,5761,15,7472,3104,541,1507,4938],ne=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,154,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,161,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,19306,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,262,6,10,9,357,0,62,13,1495,6,110,6,6,9,4759,9,787719,239];function re(e,t){let n=65536;for(let r=0,a=t.length;r<a;r+=2){if(n+=t[r],n>e)return!1;if(n+=t[r+1],n>=e)return!0}return!1}function ae(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&Z.test(String.fromCharCode(e)):re(e,te)))}function ie(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&ee.test(String.fromCharCode(e)):re(e,te)||re(e,ne))))}const se=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"]),oe=new Set(["implements","interface","let","package","private","protected","public","static","yield"]),le=new Set(["eval","arguments"]);function pe(e,t){return t&&"await"===e||"enum"===e}function ce(e,t){return pe(e,t)||oe.has(e)}function ue(e){return le.has(e)}function de(e,t){return ce(e,t)||ue(e)}const fe=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]),ye=64;class me{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}hasPlugin(e){if("string"==typeof e)return this.plugins.has(e);{const[t,n]=e;if(!this.hasPlugin(t))return!1;const r=this.plugins.get(t);for(const e of Object.keys(n))if((null==r?void 0:r[e])!==n[e])return!1;return!0}}getPluginOption(e,t){var n;return null==(n=this.plugins.get(e))?void 0:n[t]}}function he(e,t){void 0===e.trailingComments?e.trailingComments=t:e.trailingComments.unshift(...t)}function Te(e,t){void 0===e.innerComments?e.innerComments=t:e.innerComments.unshift(...t)}function Se(e,t,n){let r=null,a=t.length;for(;null===r&&a>0;)r=t[--a];null===r||r.start>n.start?Te(e,n.comments):he(r,n.comments)}class be extends me{addComment(e){this.filename&&(e.loc.filename=this.filename),this.state.comments.push(e)}processComment(e){const{commentStack:t}=this.state,n=t.length;if(0===n)return;let r=n-1;const a=t[r];a.start===e.end&&(a.leadingNode=e,r--);const{start:i}=e;for(;r>=0;r--){const n=t[r],a=n.end;if(!(a>i)){a===i&&(n.trailingNode=e);break}n.containingNode=e,this.finalizeComment(n),t.splice(r,1)}}finalizeComment(e){const{comments:t}=e;if(null!==e.leadingNode||null!==e.trailingNode)null!==e.leadingNode&&he(e.leadingNode,t),null!==e.trailingNode&&function(e,t){void 0===e.leadingComments?e.leadingComments=t:e.leadingComments.unshift(...t)}(e.trailingNode,t);else{const{containingNode:n,start:r}=e;if(44===this.input.charCodeAt(r-1))switch(n.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":Se(n,n.properties,e);break;case"CallExpression":case"OptionalCallExpression":Se(n,n.arguments,e);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":Se(n,n.params,e);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":Se(n,n.elements,e);break;case"ExportNamedDeclaration":case"ImportDeclaration":Se(n,n.specifiers,e);break;default:Te(n,t)}else Te(n,t)}}finalizeRemainingComments(){const{commentStack:e}=this.state;for(let t=e.length-1;t>=0;t--)this.finalizeComment(e[t]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(e){const{commentStack:t}=this.state,{length:n}=t;if(0===n)return;const r=t[n-1];r.leadingNode===e&&(r.leadingNode=null)}takeSurroundingComments(e,t,n){const{commentStack:r}=this.state,a=r.length;if(0===a)return;let i=a-1;for(;i>=0;i--){const a=r[i],s=a.end;if(a.start===n)a.leadingNode=e;else if(s===t)a.trailingNode=e;else if(s<t)break}}}const Ee=/\r\n?|[\n\u2028\u2029]/,Pe=new RegExp(Ee.source,"g");function xe(e){switch(e){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}const ge=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,Ae=new RegExp("(?=("+/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/y.source+"))\\1"+/(?=[\n\r\u2028\u2029]|\/\*(?!.*?\*\/)|$)/.source,"y");function ve(e){switch(e){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}class Oe{constructor(){this.strict=void 0,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.maybeInArrowParameters=!1,this.inType=!1,this.noAnonFunctionType=!1,this.hasFlowComment=!1,this.isAmbientContext=!1,this.inAbstractClass=!1,this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.soloAwait=!1,this.inFSharpPipelineDirectBody=!1,this.labels=[],this.decoratorStack=[[]],this.comments=[],this.commentStack=[],this.pos=0,this.type=135,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.lastTokStart=0,this.context=[P.brace],this.canStartJSXElement=!0,this.containsEsc=!1,this.strictErrors=new Map,this.tokensLength=0}init({strictMode:e,sourceType:t,startLine:n,startColumn:a}){this.strict=!1!==e&&(!0===e||"module"===t),this.curLine=n,this.lineStart=-a,this.startLoc=this.endLoc=new r(n,a,0)}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos)}clone(e){const t=new Oe,n=Object.keys(this);for(let r=0,a=n.length;r<a;r++){const a=n[r];let i=this[a];!e&&Array.isArray(i)&&(i=i.slice()),t[a]=i}return t}}const Ie=["at"],Ne=["at"];var De=function(e){return e>=48&&e<=57};const Ce=new Set([103,109,115,105,121,117,100,118]),we={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Le={bin:e=>48===e||49===e,oct:e=>e>=48&&e<=55,dec:e=>e>=48&&e<=57,hex:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102};class je{constructor(e){this.type=e.type,this.value=e.value,this.start=e.start,this.end=e.end,this.loc=new a(e.startLoc,e.endLoc)}}class _e extends be{constructor(e,t){super(),this.isLookahead=void 0,this.tokens=[],this.state=new Oe,this.state.init(e),this.input=t,this.length=t.length,this.isLookahead=!1}pushToken(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new je(this.state)),this.state.lastTokStart=this.state.start,this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(e){return!!this.match(e)&&(this.next(),!0)}match(e){return this.state.type===e}createLookaheadState(e){return{pos:e.pos,value:null,type:e.type,start:e.start,end:e.end,context:[this.curContext()],inType:e.inType,startLoc:e.startLoc,lastTokEndLoc:e.lastTokEndLoc,curLine:e.curLine,lineStart:e.lineStart,curPosition:e.curPosition}}lookahead(){const e=this.state;this.state=this.createLookaheadState(e),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;const t=this.state;return this.state=e,t}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(e){return ge.lastIndex=e,ge.test(this.input)?ge.lastIndex:e}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}codePointAtPos(e){let t=this.input.charCodeAt(e);if(55296==(64512&t)&&++e<this.input.length){const n=this.input.charCodeAt(e);56320==(64512&n)&&(t=65536+((1023&t)<<10)+(1023&n))}return t}setStrict(e){this.state.strict=e,e&&(this.state.strictErrors.forEach((([e,t])=>this.raise(e,{at:t}))),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length?this.finishToken(135):this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(){let e;this.isLookahead||(e=this.state.curPosition());const t=this.state.pos,n=this.input.indexOf("*/",t+2);if(-1===n)throw this.raise(h.UnterminatedComment,{at:this.state.curPosition()});for(this.state.pos=n+2,Pe.lastIndex=t+2;Pe.test(this.input)&&Pe.lastIndex<=n;)++this.state.curLine,this.state.lineStart=Pe.lastIndex;if(this.isLookahead)return;const r={type:"CommentBlock",value:this.input.slice(t+2,n),start:t,end:n+2,loc:new a(e,this.state.curPosition())};return this.options.tokens&&this.pushToken(r),r}skipLineComment(e){const t=this.state.pos;let n;this.isLookahead||(n=this.state.curPosition());let r=this.input.charCodeAt(this.state.pos+=e);if(this.state.pos<this.length)for(;!xe(r)&&++this.state.pos<this.length;)r=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;const i=this.state.pos,s={type:"CommentLine",value:this.input.slice(t+e,i),start:t,end:i,loc:new a(n,this.state.curPosition())};return this.options.tokens&&this.pushToken(s),s}skipSpace(){const e=this.state.pos,t=[];e:for(;this.state.pos<this.length;){const n=this.input.charCodeAt(this.state.pos);switch(n){case 32:case 160:case 9:++this.state.pos;break;case 13:10===this.input.charCodeAt(this.state.pos+1)&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{const e=this.skipBlockComment();void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e));break}case 47:{const e=this.skipLineComment(2);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e));break}default:break e}break;default:if(ve(n))++this.state.pos;else if(45!==n||this.inModule){if(60!==n||this.inModule)break e;{const e=this.state.pos;if(33!==this.input.charCodeAt(e+1)||45!==this.input.charCodeAt(e+2)||45!==this.input.charCodeAt(e+3))break e;{const e=this.skipLineComment(4);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e))}}}else{const n=this.state.pos;if(45!==this.input.charCodeAt(n+1)||62!==this.input.charCodeAt(n+2)||!(0===e||this.state.lineStart>e))break e;{const e=this.skipLineComment(3);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e))}}}}if(t.length>0){const n={start:e,end:this.state.pos,comments:t,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(n)}}finishToken(e,t){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();const n=this.state.type;this.state.type=e,this.state.value=t,this.isLookahead||this.updateContext(n)}replaceToken(e){this.state.type=e,this.updateContext()}readToken_numberSign(){if(0===this.state.pos&&this.readToken_interpreter())return;const e=this.state.pos+1,t=this.codePointAtPos(e);if(t>=48&&t<=57)throw this.raise(h.UnexpectedDigitAfterHash,{at:this.state.curPosition()});if(123===t||91===t&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),"hash"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(123===t?h.RecordExpressionHashIncorrectStartSyntaxType:h.TupleExpressionHashIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,123===t?this.finishToken(7):this.finishToken(1)}else ae(t)?(++this.state.pos,this.finishToken(134,this.readWord1(t))):92===t?(++this.state.pos,this.finishToken(134,this.readWord1())):this.finishOp(27,1)}readToken_dot(){const e=this.input.charCodeAt(this.state.pos+1);e>=48&&e<=57?this.readNumber(!0):46===e&&46===this.input.charCodeAt(this.state.pos+2)?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){61===this.input.charCodeAt(this.state.pos+1)?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(0!==this.state.pos||this.length<2)return!1;let e=this.input.charCodeAt(this.state.pos+1);if(33!==e)return!1;const t=this.state.pos;for(this.state.pos+=1;!xe(e)&&++this.state.pos<this.length;)e=this.input.charCodeAt(this.state.pos);const n=this.input.slice(t+2,this.state.pos);return this.finishToken(28,n),!0}readToken_mult_modulo(e){let t=42===e?55:54,n=1,r=this.input.charCodeAt(this.state.pos+1);42===e&&42===r&&(n++,r=this.input.charCodeAt(this.state.pos+2),t=57),61!==r||this.state.inType||(n++,t=37===e?33:30),this.finishOp(t,n)}readToken_pipe_amp(e){const t=this.input.charCodeAt(this.state.pos+1);if(t!==e){if(124===e){if(62===t)return void this.finishOp(39,2);if(this.hasPlugin("recordAndTuple")&&125===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(h.RecordExpressionBarIncorrectEndSyntaxType,{at:this.state.curPosition()});return this.state.pos+=2,void this.finishToken(9)}if(this.hasPlugin("recordAndTuple")&&93===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(h.TupleExpressionBarIncorrectEndSyntaxType,{at:this.state.curPosition()});return this.state.pos+=2,void this.finishToken(4)}}61!==t?this.finishOp(124===e?43:45,1):this.finishOp(30,2)}else 61===this.input.charCodeAt(this.state.pos+2)?this.finishOp(30,3):this.finishOp(124===e?41:42,2)}readToken_caret(){const e=this.input.charCodeAt(this.state.pos+1);if(61!==e||this.state.inType)if(94===e&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])){if(this.finishOp(37,2),94===this.input.codePointAt(this.state.pos))throw this.unexpected()}else this.finishOp(44,1);else this.finishOp(32,2)}readToken_atSign(){64===this.input.charCodeAt(this.state.pos+1)&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(e){const t=this.input.charCodeAt(this.state.pos+1);t!==e?61===t?this.finishOp(30,2):this.finishOp(53,1):this.finishOp(34,2)}readToken_lt(){const{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(60===t)return 61===this.input.charCodeAt(e+2)?void this.finishOp(30,3):void this.finishOp(51,2);61!==t?this.finishOp(47,1):this.finishOp(49,2)}readToken_gt(){const{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(62===t){const t=62===this.input.charCodeAt(e+2)?3:2;return 61===this.input.charCodeAt(e+t)?void this.finishOp(30,t+1):void this.finishOp(52,t)}61!==t?this.finishOp(48,1):this.finishOp(49,2)}readToken_eq_excl(e){const t=this.input.charCodeAt(this.state.pos+1);if(61!==t)return 61===e&&62===t?(this.state.pos+=2,void this.finishToken(19)):void this.finishOp(61===e?29:35,1);this.finishOp(46,61===this.input.charCodeAt(this.state.pos+2)?3:2)}readToken_question(){const e=this.input.charCodeAt(this.state.pos+1),t=this.input.charCodeAt(this.state.pos+2);63===e?61===t?this.finishOp(30,3):this.finishOp(40,2):46!==e||t>=48&&t<=57?(++this.state.pos,this.finishToken(17)):(this.state.pos+=2,this.finishToken(18))}getTokenFromCode(e){switch(e){case 46:return void this.readToken_dot();case 40:return++this.state.pos,void this.finishToken(10);case 41:return++this.state.pos,void this.finishToken(11);case 59:return++this.state.pos,void this.finishToken(13);case 44:return++this.state.pos,void this.finishToken(12);case 91:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(h.TupleExpressionBarIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:return++this.state.pos,void this.finishToken(3);case 123:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(h.RecordExpressionBarIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:return++this.state.pos,void this.finishToken(8);case 58:return void(this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(15,2):(++this.state.pos,this.finishToken(14)));case 63:return void this.readToken_question();case 96:return void this.readTemplateToken();case 48:{const e=this.input.charCodeAt(this.state.pos+1);if(120===e||88===e)return void this.readRadixNumber(16);if(111===e||79===e)return void this.readRadixNumber(8);if(98===e||66===e)return void this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return void this.readNumber(!1);case 34:case 39:return void this.readString(e);case 47:return void this.readToken_slash();case 37:case 42:return void this.readToken_mult_modulo(e);case 124:case 38:return void this.readToken_pipe_amp(e);case 94:return void this.readToken_caret();case 43:case 45:return void this.readToken_plus_min(e);case 60:return void this.readToken_lt();case 62:return void this.readToken_gt();case 61:case 33:return void this.readToken_eq_excl(e);case 126:return void this.finishOp(36,1);case 64:return void this.readToken_atSign();case 35:return void this.readToken_numberSign();case 92:return void this.readWord();default:if(ae(e))return void this.readWord(e)}throw this.raise(h.InvalidOrUnexpectedToken,{at:this.state.curPosition(),unexpected:String.fromCodePoint(e)})}finishOp(e,t){const n=this.input.slice(this.state.pos,this.state.pos+t);this.state.pos+=t,this.finishToken(e,n)}readRegexp(){const e=this.state.startLoc,t=this.state.start+1;let n,r,{pos:a}=this.state;for(;;++a){if(a>=this.length)throw this.raise(h.UnterminatedRegExp,{at:i(e,1)});const t=this.input.charCodeAt(a);if(xe(t))throw this.raise(h.UnterminatedRegExp,{at:i(e,1)});if(n)n=!1;else{if(91===t)r=!0;else if(93===t&&r)r=!1;else if(47===t&&!r)break;n=92===t}}const s=this.input.slice(t,a);++a;let o="";const l=()=>i(e,a+2-t);for(;a<this.length;){const e=this.codePointAtPos(a),t=String.fromCharCode(e);if(Ce.has(e))118===e?(this.expectPlugin("regexpUnicodeSets",l()),o.includes("u")&&this.raise(h.IncompatibleRegExpUVFlags,{at:l()})):117===e&&o.includes("v")&&this.raise(h.IncompatibleRegExpUVFlags,{at:l()}),o.includes(t)&&this.raise(h.DuplicateRegExpFlags,{at:l()});else{if(!ie(e)&&92!==e)break;this.raise(h.MalformedRegExpFlags,{at:l()})}++a,o+=t}this.state.pos=a,this.finishToken(133,{pattern:s,flags:o})}readInt(e,t,n,r=!0){const a=this.state.pos,i=16===e?we.hex:we.decBinOct,s=16===e?Le.hex:10===e?Le.dec:8===e?Le.oct:Le.bin;let o=!1,l=0;for(let a=0,p=null==t?1/0:t;a<p;++a){const t=this.input.charCodeAt(this.state.pos);let a;if(95!==t||"bail"===r){if(a=t>=97?t-97+10:t>=65?t-65+10:De(t)?t-48:1/0,a>=e)if(this.options.errorRecovery&&a<=9)a=0,this.raise(h.InvalidDigit,{at:this.state.curPosition(),radix:e});else{if(!n)break;a=0,o=!0}++this.state.pos,l=l*e+a}else{const e=this.input.charCodeAt(this.state.pos-1),t=this.input.charCodeAt(this.state.pos+1);r?(Number.isNaN(t)||!s(t)||i.has(e)||i.has(t))&&this.raise(h.UnexpectedNumericSeparator,{at:this.state.curPosition()}):this.raise(h.NumericSeparatorInEscapeSequence,{at:this.state.curPosition()}),++this.state.pos}}return this.state.pos===a||null!=t&&this.state.pos-a!==t||o?null:l}readRadixNumber(e){const t=this.state.curPosition();let n=!1;this.state.pos+=2;const r=this.readInt(e);null==r&&this.raise(h.InvalidDigit,{at:i(t,2),radix:e});const a=this.input.charCodeAt(this.state.pos);if(110===a)++this.state.pos,n=!0;else if(109===a)throw this.raise(h.InvalidDecimal,{at:t});if(ae(this.codePointAtPos(this.state.pos)))throw this.raise(h.NumberIdentifier,{at:this.state.curPosition()});if(n){const e=this.input.slice(t.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(131,e)}else this.finishToken(130,r)}readNumber(e){const t=this.state.pos,n=this.state.curPosition();let r=!1,a=!1,s=!1,o=!1,l=!1;e||null!==this.readInt(10)||this.raise(h.InvalidNumber,{at:this.state.curPosition()});const p=this.state.pos-t>=2&&48===this.input.charCodeAt(t);if(p){const e=this.input.slice(t,this.state.pos);if(this.recordStrictModeErrors(h.StrictOctalLiteral,{at:n}),!this.state.strict){const t=e.indexOf("_");t>0&&this.raise(h.ZeroDigitNumericSeparator,{at:i(n,t)})}l=p&&!/[89]/.test(e)}let c=this.input.charCodeAt(this.state.pos);if(46!==c||l||(++this.state.pos,this.readInt(10),r=!0,c=this.input.charCodeAt(this.state.pos)),69!==c&&101!==c||l||(c=this.input.charCodeAt(++this.state.pos),43!==c&&45!==c||++this.state.pos,null===this.readInt(10)&&this.raise(h.InvalidOrMissingExponent,{at:n}),r=!0,o=!0,c=this.input.charCodeAt(this.state.pos)),110===c&&((r||p)&&this.raise(h.InvalidBigIntLiteral,{at:n}),++this.state.pos,a=!0),109===c&&(this.expectPlugin("decimal",this.state.curPosition()),(o||p)&&this.raise(h.InvalidDecimal,{at:n}),++this.state.pos,s=!0),ae(this.codePointAtPos(this.state.pos)))throw this.raise(h.NumberIdentifier,{at:this.state.curPosition()});const u=this.input.slice(t,this.state.pos).replace(/[_mn]/g,"");if(a)return void this.finishToken(131,u);if(s)return void this.finishToken(132,u);const d=l?parseInt(u,8):parseFloat(u);this.finishToken(130,d)}readCodePoint(e){let t;if(123===this.input.charCodeAt(this.state.pos)){if(++this.state.pos,t=this.readHexChar(this.input.indexOf("}",this.state.pos)-this.state.pos,!0,e),++this.state.pos,null!==t&&t>1114111){if(!e)return null;this.raise(h.InvalidCodePoint,{at:this.state.curPosition()})}}else t=this.readHexChar(4,!1,e);return t}readString(e){let t="",n=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(h.UnterminatedString,{at:this.state.startLoc});const r=this.input.charCodeAt(this.state.pos);if(r===e)break;if(92===r)t+=this.input.slice(n,this.state.pos),t+=this.readEscapedChar(!1),n=this.state.pos;else if(8232===r||8233===r)++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;else{if(xe(r))throw this.raise(h.UnterminatedString,{at:this.state.startLoc});++this.state.pos}}t+=this.input.slice(n,this.state.pos++),this.finishToken(129,t)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let e="",t=this.state.pos,n=!1;for(++this.state.pos;;){if(this.state.pos>=this.length)throw this.raise(h.UnterminatedTemplate,{at:i(this.state.startLoc,1)});const r=this.input.charCodeAt(this.state.pos);if(96===r)return++this.state.pos,e+=this.input.slice(t,this.state.pos),void this.finishToken(24,n?null:e);if(36===r&&123===this.input.charCodeAt(this.state.pos+1))return this.state.pos+=2,e+=this.input.slice(t,this.state.pos),void this.finishToken(25,n?null:e);if(92===r){e+=this.input.slice(t,this.state.pos);const r=this.readEscapedChar(!0);null===r?n=!0:e+=r,t=this.state.pos}else if(xe(r)){switch(e+=this.input.slice(t,this.state.pos),++this.state.pos,r){case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:e+="\n";break;default:e+=String.fromCharCode(r)}++this.state.curLine,this.state.lineStart=this.state.pos,t=this.state.pos}else++this.state.pos}}recordStrictModeErrors(e,{at:t}){const n=t.index;this.state.strict&&!this.state.strictErrors.has(n)?this.raise(e,{at:t}):this.state.strictErrors.set(n,[e,t])}readEscapedChar(e){const t=!e,n=this.input.charCodeAt(++this.state.pos);switch(++this.state.pos,n){case 110:return"\n";case 114:return"\r";case 120:{const e=this.readHexChar(2,!1,t);return null===e?null:String.fromCharCode(e)}case 117:{const e=this.readCodePoint(t);return null===e?null:String.fromCodePoint(e)}case 116:return"\t";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:this.state.lineStart=this.state.pos,++this.state.curLine;case 8232:case 8233:return"";case 56:case 57:if(e)return null;this.recordStrictModeErrors(h.StrictNumericEscape,{at:i(this.state.curPosition(),-1)});default:if(n>=48&&n<=55){const t=i(this.state.curPosition(),-1);let n=this.input.slice(this.state.pos-1,this.state.pos+2).match(/^[0-7]+/)[0],r=parseInt(n,8);r>255&&(n=n.slice(0,-1),r=parseInt(n,8)),this.state.pos+=n.length-1;const a=this.input.charCodeAt(this.state.pos);if("0"!==n||56===a||57===a){if(e)return null;this.recordStrictModeErrors(h.StrictNumericEscape,{at:t})}return String.fromCharCode(r)}return String.fromCharCode(n)}}readHexChar(e,t,n){const r=this.state.curPosition(),a=this.readInt(16,e,t,!1);return null===a&&(n?this.raise(h.InvalidEscapeSequence,{at:r}):this.state.pos=r.index-1),a}readWord1(e){this.state.containsEsc=!1;let t="";const n=this.state.pos;let r=this.state.pos;for(void 0!==e&&(this.state.pos+=e<=65535?1:2);this.state.pos<this.length;){const e=this.codePointAtPos(this.state.pos);if(ie(e))this.state.pos+=e<=65535?1:2;else{if(92!==e)break;{this.state.containsEsc=!0,t+=this.input.slice(r,this.state.pos);const e=this.state.curPosition(),a=this.state.pos===n?ae:ie;if(117!==this.input.charCodeAt(++this.state.pos)){this.raise(h.MissingUnicodeEscape,{at:this.state.curPosition()}),r=this.state.pos-1;continue}++this.state.pos;const i=this.readCodePoint(!0);null!==i&&(a(i)||this.raise(h.EscapedCharNotAnIdentifier,{at:e}),t+=String.fromCodePoint(i)),r=this.state.pos}}}return t+this.input.slice(r,this.state.pos)}readWord(e){const t=this.readWord1(e),n=N.get(t);void 0!==n?this.finishToken(n,q(n)):this.finishToken(128,t)}checkKeywordEscapes(){const{type:e}=this.state;W(e)&&this.state.containsEsc&&this.raise(h.InvalidEscapedReservedWord,{at:this.state.startLoc,reservedWord:q(e)})}raise(e,t){const{at:a}=t,i=n(t,Ie),s=e({loc:a instanceof r?a:a.loc.start,details:i});if(!this.options.errorRecovery)throw s;return this.isLookahead||this.state.errors.push(s),s}raiseOverwrite(e,t){const{at:a}=t,i=n(t,Ne),s=a instanceof r?a:a.loc.start,o=s.index,l=this.state.errors;for(let t=l.length-1;t>=0;t--){const n=l[t];if(n.loc.index===o)return l[t]=e({loc:s,details:i});if(n.loc.index<o)break}return this.raise(e,t)}updateContext(e){}unexpected(e,t){throw this.raise(h.UnexpectedToken,{expected:t?q(t):null,at:null!=e?e:this.state.startLoc})}expectPlugin(e,t){if(this.hasPlugin(e))return!0;throw this.raise(h.MissingPlugin,{at:null!=t?t:this.state.startLoc,missingPlugin:[e]})}expectOnePlugin(e){if(!e.some((e=>this.hasPlugin(e))))throw this.raise(h.MissingOneOfPlugins,{at:this.state.startLoc,missingPlugin:e})}}class Me{constructor(e){this.var=new Set,this.lexical=new Set,this.functions=new Set,this.flags=e}}class ke{constructor(e,t){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=e,this.inModule=t}get inFunction(){return(2&this.currentVarScopeFlags())>0}get allowSuper(){return(16&this.currentThisScopeFlags())>0}get allowDirectSuper(){return(32&this.currentThisScopeFlags())>0}get inClass(){return(64&this.currentThisScopeFlags())>0}get inClassAndNotInNonArrowFunction(){const e=this.currentThisScopeFlags();return(64&e)>0&&0==(2&e)}get inStaticBlock(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(128&t)return!0;if(323&t)return!1}}get inNonArrowFunction(){return(2&this.currentThisScopeFlags())>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(e){return new Me(e)}enter(e){this.scopeStack.push(this.createScope(e))}exit(){this.scopeStack.pop()}treatFunctionsAsVarInScope(e){return!!(130&e.flags||!this.parser.inModule&&1&e.flags)}declareName(e,t,n){let r=this.currentScope();if(8&t||16&t)this.checkRedeclarationInScope(r,e,t,n),16&t?r.functions.add(e):r.lexical.add(e),8&t&&this.maybeExportDefined(r,e);else if(4&t)for(let a=this.scopeStack.length-1;a>=0&&(r=this.scopeStack[a],this.checkRedeclarationInScope(r,e,t,n),r.var.add(e),this.maybeExportDefined(r,e),!(259&r.flags));--a);this.parser.inModule&&1&r.flags&&this.undefinedExports.delete(e)}maybeExportDefined(e,t){this.parser.inModule&&1&e.flags&&this.undefinedExports.delete(t)}checkRedeclarationInScope(e,t,n,r){this.isRedeclaredInScope(e,t,n)&&this.parser.raise(h.VarRedeclaration,{at:r,identifierName:t})}isRedeclaredInScope(e,t,n){return!!(1&n)&&(8&n?e.lexical.has(t)||e.functions.has(t)||e.var.has(t):16&n?e.lexical.has(t)||!this.treatFunctionsAsVarInScope(e)&&e.var.has(t):e.lexical.has(t)&&!(8&e.flags&&e.lexical.values().next().value===t)||!this.treatFunctionsAsVarInScope(e)&&e.functions.has(t))}checkLocalExport(e){const{name:t}=e,n=this.scopeStack[0];n.lexical.has(t)||n.var.has(t)||n.functions.has(t)||this.undefinedExports.set(t,e.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(259&t)return t}}currentThisScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(323&t&&!(4&t))return t}}}class Be extends Me{constructor(...e){super(...e),this.declareFunctions=new Set}}class Fe extends ke{createScope(e){return new Be(e)}declareName(e,t,n){const r=this.currentScope();if(2048&t)return this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e),void r.declareFunctions.add(e);super.declareName(...arguments)}isRedeclaredInScope(e,t,n){return!!super.isRedeclaredInScope(...arguments)||!!(2048&n)&&!e.declareFunctions.has(t)&&(e.lexical.has(t)||e.functions.has(t))}checkLocalExport(e){this.scopeStack[0].declareFunctions.has(e.name)||super.checkLocalExport(e)}}class Re{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}}class Ke{constructor(e){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=e}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new Re)}exit(){const e=this.stack.pop(),t=this.current();for(const[n,r]of Array.from(e.undefinedPrivateNames))t?t.undefinedPrivateNames.has(n)||t.undefinedPrivateNames.set(n,r):this.parser.raise(h.InvalidPrivateFieldResolution,{at:r,identifierName:n})}declarePrivateName(e,t,n){const{privateNames:r,loneAccessors:a,undefinedPrivateNames:i}=this.current();let s=r.has(e);if(3&t){const n=s&&a.get(e);n?(s=(3&n)==(3&t)||(4&n)!=(4&t),s||a.delete(e)):s||a.set(e,t)}s&&this.parser.raise(h.PrivateNameRedeclaration,{at:n,identifierName:e}),r.add(e),i.delete(e)}usePrivateName(e,t){let n;for(n of this.stack)if(n.privateNames.has(e))return;n?n.undefinedPrivateNames.set(e,t):this.parser.raise(h.InvalidPrivateFieldResolution,{at:t,identifierName:e})}}class Ve{constructor(e=0){this.type=void 0,this.type=e}canBeArrowParameterDeclaration(){return 2===this.type||1===this.type}isCertainlyParameterDeclaration(){return 3===this.type}}class Ye extends Ve{constructor(e){super(e),this.declarationErrors=new Map}recordDeclarationError(e,{at:t}){const n=t.index;this.declarationErrors.set(n,[e,t])}clearDeclarationError(e){this.declarationErrors.delete(e)}iterateErrors(e){this.declarationErrors.forEach(e)}}class Ue{constructor(e){this.parser=void 0,this.stack=[new Ve],this.parser=e}enter(e){this.stack.push(e)}exit(){this.stack.pop()}recordParameterInitializerError(e,{at:t}){const n={at:t.loc.start},{stack:r}=this;let a=r.length-1,i=r[a];for(;!i.isCertainlyParameterDeclaration();){if(!i.canBeArrowParameterDeclaration())return;i.recordDeclarationError(e,n),i=r[--a]}this.parser.raise(e,n)}recordArrowParemeterBindingError(e,{at:t}){const{stack:n}=this,r=n[n.length-1],a={at:t.loc.start};if(r.isCertainlyParameterDeclaration())this.parser.raise(e,a);else{if(!r.canBeArrowParameterDeclaration())return;r.recordDeclarationError(e,a)}}recordAsyncArrowParametersError({at:e}){const{stack:t}=this;let n=t.length-1,r=t[n];for(;r.canBeArrowParameterDeclaration();)2===r.type&&r.recordDeclarationError(h.AwaitBindingIdentifier,{at:e}),r=t[--n]}validateAsPattern(){const{stack:e}=this,t=e[e.length-1];t.canBeArrowParameterDeclaration()&&t.iterateErrors((([t,n])=>{this.parser.raise(t,{at:n});let r=e.length-2,a=e[r];for(;a.canBeArrowParameterDeclaration();)a.clearDeclarationError(n.index),a=e[--r]}))}}function Xe(){return new Ve}class Je{constructor(){this.stacks=[]}enter(e){this.stacks.push(e)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(2&this.currentFlags())>0}get hasYield(){return(1&this.currentFlags())>0}get hasReturn(){return(4&this.currentFlags())>0}get hasIn(){return(8&this.currentFlags())>0}}function We(e,t){return(e?2:0)|(t?1:0)}class qe extends _e{addExtra(e,t,n,r=!0){if(!e)return;const a=e.extra=e.extra||{};r?a[t]=n:Object.defineProperty(a,t,{enumerable:r,value:n})}isContextual(e){return this.state.type===e&&!this.state.containsEsc}isUnparsedContextual(e,t){const n=e+t.length;if(this.input.slice(e,n)===t){const e=this.input.charCodeAt(n);return!(ie(e)||55296==(64512&e))}return!1}isLookaheadContextual(e){const t=this.nextTokenStart();return this.isUnparsedContextual(t,e)}eatContextual(e){return!!this.isContextual(e)&&(this.next(),!0)}expectContextual(e,t){if(!this.eatContextual(e)){if(null!=t)throw this.raise(t,{at:this.state.startLoc});throw this.unexpected(null,e)}}canInsertSemicolon(){return this.match(135)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Ee.test(this.input.slice(this.state.lastTokEndLoc.index,this.state.start))}hasFollowingLineBreak(){return Ae.lastIndex=this.state.end,Ae.test(this.input)}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(e=!0){(e?this.isLineTerminator():this.eat(13))||this.raise(h.MissingSemicolon,{at:this.state.lastTokEndLoc})}expect(e,t){this.eat(e)||this.unexpected(t,e)}tryParse(e,t=this.state.clone()){const n={node:null};try{const r=e(((e=null)=>{throw n.node=e,n}));if(this.state.errors.length>t.errors.length){const e=this.state;return this.state=t,this.state.tokensLength=e.tokensLength,{node:r,error:e.errors[t.errors.length],thrown:!1,aborted:!1,failState:e}}return{node:r,error:null,thrown:!1,aborted:!1,failState:null}}catch(e){const r=this.state;if(this.state=t,e instanceof SyntaxError)return{node:null,error:e,thrown:!0,aborted:!1,failState:r};if(e===n)return{node:n.node,error:null,thrown:!1,aborted:!0,failState:r};throw e}}checkExpressionErrors(e,t){if(!e)return!1;const{shorthandAssignLoc:n,doubleProtoLoc:r,privateKeyLoc:a,optionalParametersLoc:i}=e;if(!t)return!!(n||r||i||a);null!=n&&this.raise(h.InvalidCoverInitializedName,{at:n}),null!=r&&this.raise(h.DuplicateProto,{at:r}),null!=a&&this.raise(h.UnexpectedPrivateField,{at:a}),null!=i&&this.unexpected(i)}isLiteralPropertyName(){return U(this.state.type)}isPrivateName(e){return"PrivateName"===e.type}getPrivateNameSV(e){return e.id.name}hasPropertyAsPrivateName(e){return("MemberExpression"===e.type||"OptionalMemberExpression"===e.type)&&this.isPrivateName(e.property)}isOptionalChain(e){return"OptionalMemberExpression"===e.type||"OptionalCallExpression"===e.type}isObjectProperty(e){return"ObjectProperty"===e.type}isObjectMethod(e){return"ObjectMethod"===e.type}initializeScopes(e="module"===this.options.sourceType){const t=this.state.labels;this.state.labels=[];const n=this.exportedIdentifiers;this.exportedIdentifiers=new Set;const r=this.inModule;this.inModule=e;const a=this.scope,i=this.getScopeHandler();this.scope=new i(this,e);const s=this.prodParam;this.prodParam=new Je;const o=this.classScope;this.classScope=new Ke(this);const l=this.expressionScope;return this.expressionScope=new Ue(this),()=>{this.state.labels=t,this.exportedIdentifiers=n,this.inModule=r,this.scope=a,this.prodParam=s,this.classScope=o,this.expressionScope=l}}enterInitialScopes(){let e=0;this.inModule&&(e|=2),this.scope.enter(1),this.prodParam.enter(e)}checkDestructuringPrivate(e){const{privateKeyLoc:t}=e;null!==t&&this.expectPlugin("destructuringPrivate",t)}}class $e{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}}class Ge{constructor(e,t,n){this.type="",this.start=t,this.end=0,this.loc=new a(n),null!=e&&e.options.ranges&&(this.range=[t,0]),null!=e&&e.filename&&(this.loc.filename=e.filename)}}const ze=Ge.prototype;function He(e){const{type:t,start:n,end:r,loc:a,range:i,extra:s,name:o}=e,l=Object.create(ze);return l.type=t,l.start=n,l.end=r,l.loc=a,l.range=i,l.extra=s,l.name=o,"Placeholder"===t&&(l.expectedNode=e.expectedNode),l}ze.__clone=function(){const e=new Ge,t=Object.keys(this);for(let n=0,r=t.length;n<r;n++){const r=t[n];"leadingComments"!==r&&"trailingComments"!==r&&"innerComments"!==r&&(e[r]=this[r])}return e};class Qe extends qe{startNode(){return new Ge(this,this.state.start,this.state.startLoc)}startNodeAt(e,t){return new Ge(this,e,t)}startNodeAtNode(e){return this.startNodeAt(e.start,e.loc.start)}finishNode(e,t){return this.finishNodeAt(e,t,this.state.lastTokEndLoc)}finishNodeAt(e,t,n){return e.type=t,e.end=n.index,e.loc.end=n,this.options.ranges&&(e.range[1]=n.index),this.options.attachComment&&this.processComment(e),e}resetStartLocation(e,t,n){e.start=t,e.loc.start=n,this.options.ranges&&(e.range[0]=t)}resetEndLocation(e,t=this.state.lastTokEndLoc){e.end=t.index,e.loc.end=t,this.options.ranges&&(e.range[1]=t.index)}resetStartLocationFromNode(e,t){this.resetStartLocation(e,t.start,t.loc.start)}}const Ze=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),et=m`flow`((e=>({AmbiguousConditionalArrow:e("Ambiguous expression: wrap the arrow functions in parentheses to disambiguate."),AmbiguousDeclareModuleKind:e("Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module."),AssignReservedType:e((({reservedType:e})=>`Cannot overwrite reserved type ${e}.`)),DeclareClassElement:e("The `declare` modifier can only appear on class fields."),DeclareClassFieldInitializer:e("Initializers are not allowed in fields with the `declare` modifier."),DuplicateDeclareModuleExports:e("Duplicate `declare module.exports` statement."),EnumBooleanMemberNotInitialized:e((({memberName:e,enumName:t})=>`Boolean enum members need to be initialized. Use either \`${e} = true,\` or \`${e} = false,\` in enum \`${t}\`.`)),EnumDuplicateMemberName:e((({memberName:e,enumName:t})=>`Enum member names need to be unique, but the name \`${e}\` has already been used before in enum \`${t}\`.`)),EnumInconsistentMemberValues:e((({enumName:e})=>`Enum \`${e}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`)),EnumInvalidExplicitType:e((({invalidEnumType:e,enumName:t})=>`Enum type \`${e}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${t}\`.`)),EnumInvalidExplicitTypeUnknownSupplied:e((({enumName:e})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${e}\`.`)),EnumInvalidMemberInitializerPrimaryType:e((({enumName:e,memberName:t,explicitType:n})=>`Enum \`${e}\` has type \`${n}\`, so the initializer of \`${t}\` needs to be a ${n} literal.`)),EnumInvalidMemberInitializerSymbolType:e((({enumName:e,memberName:t})=>`Symbol enum members cannot be initialized. Use \`${t},\` in enum \`${e}\`.`)),EnumInvalidMemberInitializerUnknownType:e((({enumName:e,memberName:t})=>`The enum member initializer for \`${t}\` needs to be a literal (either a boolean, number, or string) in enum \`${e}\`.`)),EnumInvalidMemberName:e((({enumName:e,memberName:t,suggestion:n})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${t}\`, consider using \`${n}\`, in enum \`${e}\`.`)),EnumNumberMemberNotInitialized:e((({enumName:e,memberName:t})=>`Number enum members need to be initialized, e.g. \`${t} = 1\` in enum \`${e}\`.`)),EnumStringMemberInconsistentlyInitailized:e((({enumName:e})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${e}\`.`)),GetterMayNotHaveThisParam:e("A getter cannot have a `this` parameter."),ImportTypeShorthandOnlyInPureImport:e("The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements."),InexactInsideExact:e("Explicit inexact syntax cannot appear inside an explicit exact object type."),InexactInsideNonObject:e("Explicit inexact syntax cannot appear in class or interface definitions."),InexactVariance:e("Explicit inexact syntax cannot have variance."),InvalidNonTypeImportInDeclareModule:e("Imports within a `declare module` body must always be `import type` or `import typeof`."),MissingTypeParamDefault:e("Type parameter declaration needs a default, since a preceding type parameter declaration has a default."),NestedDeclareModule:e("`declare module` cannot be used inside another `declare module`."),NestedFlowComment:e("Cannot have a flow comment inside another flow comment."),PatternIsOptional:e("A binding pattern parameter cannot be optional in an implementation signature.",{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:e("A setter cannot have a `this` parameter."),SpreadVariance:e("Spread properties cannot have variance."),ThisParamAnnotationRequired:e("A type annotation is required for the `this` parameter."),ThisParamBannedInConstructor:e("Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions."),ThisParamMayNotBeOptional:e("The `this` parameter cannot be optional."),ThisParamMustBeFirst:e("The `this` parameter must be the first function parameter."),ThisParamNoDefault:e("The `this` parameter may not have a default value."),TypeBeforeInitializer:e("Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`."),TypeCastInPattern:e("The type cast expression is expected to be wrapped with parenthesis."),UnexpectedExplicitInexactInObject:e("Explicit inexact syntax must appear at the end of an inexact object."),UnexpectedReservedType:e((({reservedType:e})=>`Unexpected reserved type ${e}.`)),UnexpectedReservedUnderscore:e("`_` is only allowed as a type argument to call or new."),UnexpectedSpaceBetweenModuloChecks:e("Spaces between `%` and `checks` are not allowed here."),UnexpectedSpreadType:e("Spread operator cannot appear in class or interface definitions."),UnexpectedSubtractionOperand:e('Unexpected token, expected "number" or "bigint".'),UnexpectedTokenAfterTypeParameter:e("Expected an arrow function after this type parameter declaration."),UnexpectedTypeParameterBeforeAsyncArrowFunction:e("Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`."),UnsupportedDeclareExportKind:e((({unsupportedExportKind:e,suggestion:t})=>`\`declare export ${e}\` is not supported. Use \`${t}\` instead.`)),UnsupportedStatementInDeclareModule:e("Only declares and type imports are allowed inside declare module."),UnterminatedFlowComment:e("Unterminated flow-comment.")})));function tt(e){return"type"===e.importKind||"typeof"===e.importKind}function nt(e){return Y(e)&&97!==e}const rt={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"},at=/\*?\s*@((?:no)?flow)\b/,it={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"",zwj:"",lrm:"",rlm:"",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"},st=m`jsx`((e=>({AttributeIsEmpty:e("JSX attributes must only be assigned a non-empty expression."),MissingClosingTagElement:e((({openingTagName:e})=>`Expected corresponding JSX closing tag for <${e}>.`)),MissingClosingTagFragment:e("Expected corresponding JSX closing tag for <>."),UnexpectedSequenceExpression:e("Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?"),UnexpectedToken:e((({unexpected:e,HTMLEntity:t})=>`Unexpected token \`${e}\`. Did you mean \`${t}\` or \`{'${e}'}\`?`)),UnsupportedJsxValue:e("JSX value should be either an expression or a quoted JSX text."),UnterminatedJsxContent:e("Unterminated JSX contents."),UnwrappedAdjacentJSXElements:e("Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?")})));function ot(e){return!!e&&("JSXOpeningFragment"===e.type||"JSXClosingFragment"===e.type)}function lt(e){if("JSXIdentifier"===e.type)return e.name;if("JSXNamespacedName"===e.type)return e.namespace.name+":"+e.name.name;if("JSXMemberExpression"===e.type)return lt(e.object)+"."+lt(e.property);throw new Error("Node had unexpected type: "+e.type)}class pt extends Me{constructor(...e){super(...e),this.types=new Set,this.enums=new Set,this.constEnums=new Set,this.classes=new Set,this.exportOnlyBindings=new Set}}class ct extends ke{createScope(e){return new pt(e)}declareName(e,t,n){const r=this.currentScope();if(1024&t)return this.maybeExportDefined(r,e),void r.exportOnlyBindings.add(e);super.declareName(...arguments),2&t&&(1&t||(this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e)),r.types.add(e)),256&t&&r.enums.add(e),512&t&&r.constEnums.add(e),128&t&&r.classes.add(e)}isRedeclaredInScope(e,t,n){return e.enums.has(t)?!(256&n)||!!(512&n)!==e.constEnums.has(t):128&n&&e.classes.has(t)?!!e.lexical.has(t)&&!!(1&n):!!(2&n&&e.types.has(t))||super.isRedeclaredInScope(...arguments)}checkLocalExport(e){const t=this.scopeStack[0],{name:n}=e;t.types.has(n)||t.exportOnlyBindings.has(n)||super.checkLocalExport(e)}}function ut(e){if(!e)throw new Error("Assert fail")}const dt=m`typescript`((e=>({AbstractMethodHasImplementation:e((({methodName:e})=>`Method '${e}' cannot have an implementation because it is marked abstract.`)),AbstractPropertyHasInitializer:e((({propertyName:e})=>`Property '${e}' cannot have an initializer because it is marked abstract.`)),AccesorCannotDeclareThisParameter:e("'get' and 'set' accessors cannot declare 'this' parameters."),AccesorCannotHaveTypeParameters:e("An accessor cannot have type parameters."),CannotFindName:e((({name:e})=>`Cannot find name '${e}'.`)),ClassMethodHasDeclare:e("Class methods cannot have the 'declare' modifier."),ClassMethodHasReadonly:e("Class methods cannot have the 'readonly' modifier."),ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference:e("A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),ConstructorHasTypeParameters:e("Type parameters cannot appear on a constructor declaration."),DeclareAccessor:e((({kind:e})=>`'declare' is not allowed in ${e}ters.`)),DeclareClassFieldHasInitializer:e("Initializers are not allowed in ambient contexts."),DeclareFunctionHasImplementation:e("An implementation cannot be declared in ambient contexts."),DuplicateAccessibilityModifier:e((({modifier:e})=>"Accessibility modifier already seen.")),DuplicateModifier:e((({modifier:e})=>`Duplicate modifier: '${e}'.`)),EmptyHeritageClauseType:e((({token:e})=>`'${e}' list cannot be empty.`)),EmptyTypeArguments:e("Type argument list cannot be empty."),EmptyTypeParameters:e("Type parameter list cannot be empty."),ExpectedAmbientAfterExportDeclare:e("'export declare' must be followed by an ambient declaration."),ImportAliasHasImportType:e("An import alias can not use 'import type'."),IncompatibleModifiers:e((({modifiers:e})=>`'${e[0]}' modifier cannot be used with '${e[1]}' modifier.`)),IndexSignatureHasAbstract:e("Index signatures cannot have the 'abstract' modifier."),IndexSignatureHasAccessibility:e((({modifier:e})=>`Index signatures cannot have an accessibility modifier ('${e}').`)),IndexSignatureHasDeclare:e("Index signatures cannot have the 'declare' modifier."),IndexSignatureHasOverride:e("'override' modifier cannot appear on an index signature."),IndexSignatureHasStatic:e("Index signatures cannot have the 'static' modifier."),InitializerNotAllowedInAmbientContext:e("Initializers are not allowed in ambient contexts."),InvalidModifierOnTypeMember:e((({modifier:e})=>`'${e}' modifier cannot appear on a type member.`)),InvalidModifiersOrder:e((({orderedModifiers:e})=>`'${e[0]}' modifier must precede '${e[1]}' modifier.`)),InvalidTupleMemberLabel:e("Tuple members must be labeled with a simple identifier."),MissingInterfaceName:e("'interface' declarations must be followed by an identifier."),MixedLabeledAndUnlabeledElements:e("Tuple members must all have names or all not have names."),NonAbstractClassHasAbstractMethod:e("Abstract methods can only appear within an abstract class."),NonClassMethodPropertyHasAbstractModifer:e("'abstract' modifier can only appear on a class, method, or property declaration."),OptionalTypeBeforeRequired:e("A required element cannot follow an optional element."),OverrideNotInSubClass:e("This member cannot have an 'override' modifier because its containing class does not extend another class."),PatternIsOptional:e("A binding pattern parameter cannot be optional in an implementation signature."),PrivateElementHasAbstract:e("Private elements cannot have the 'abstract' modifier."),PrivateElementHasAccessibility:e((({modifier:e})=>`Private elements cannot have an accessibility modifier ('${e}').`)),ReadonlyForMethodSignature:e("'readonly' modifier can only appear on a property declaration or index signature."),ReservedArrowTypeParam:e("This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`."),ReservedTypeAssertion:e("This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),SetAccesorCannotHaveOptionalParameter:e("A 'set' accessor cannot have an optional parameter."),SetAccesorCannotHaveRestParameter:e("A 'set' accessor cannot have rest parameter."),SetAccesorCannotHaveReturnType:e("A 'set' accessor cannot have a return type annotation."),SingleTypeParameterWithoutTrailingComma:e((({typeParameterName:e})=>`Single type parameter ${e} should have a trailing comma. Example usage: <${e},>.`)),StaticBlockCannotHaveModifier:e("Static class blocks cannot have any modifier."),TypeAnnotationAfterAssign:e("Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`."),TypeImportCannotSpecifyDefaultAndNamed:e("A type-only import can specify a default import or named bindings, but not both."),TypeModifierIsUsedInTypeExports:e("The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),TypeModifierIsUsedInTypeImports:e("The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),UnexpectedParameterModifier:e("A parameter property is only allowed in a constructor implementation."),UnexpectedReadonly:e("'readonly' type modifier is only permitted on array and tuple literal types."),UnexpectedTypeAnnotation:e("Did not expect a type annotation here."),UnexpectedTypeCastInParameter:e("Unexpected type cast in parameter position."),UnsupportedImportTypeArgument:e("Argument in a type import must be a string literal."),UnsupportedParameterPropertyKind:e("A parameter property may not be declared using a binding pattern."),UnsupportedSignatureParameterKind:e((({type:e})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${e}.`))})));function ft(e){return"private"===e||"public"===e||"protected"===e}function yt(e){if("MemberExpression"!==e.type)return!1;const{computed:t,property:n}=e;return(!t||"StringLiteral"===n.type||!("TemplateLiteral"!==n.type||n.expressions.length>0))&&mt(e.object)}function mt(e){return"Identifier"===e.type||"MemberExpression"===e.type&&!e.computed&&mt(e.object)}const ht=m`placeholders`((e=>({ClassNameIsRequired:e("A class name is required."),UnexpectedSpace:e("Unexpected space in placeholder.")})));function Tt(e,t){const[n,r]="string"==typeof t?[t,{}]:t,a=Object.keys(r),i=0===a.length;return e.some((e=>{if("string"==typeof e)return i&&e===n;{const[t,i]=e;if(t!==n)return!1;for(const e of a)if(i[e]!==r[e])return!1;return!0}}))}function St(e,t,n){const r=e.find((e=>Array.isArray(e)?e[0]===t:e===t));return r&&Array.isArray(r)?r[1][n]:null}const bt=["minimal","fsharp","hack","smart"],Et=["^^","@@","^","%","#"],Pt=["hash","bar"],xt={estree:e=>class extends e{parse(){const e=b(super.parse());return this.options.tokens&&(e.tokens=e.tokens.map(b)),e}parseRegExpLiteral({pattern:e,flags:t}){let n=null;try{n=new RegExp(e,t)}catch(e){}const r=this.estreeParseLiteral(n);return r.regex={pattern:e,flags:t},r}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch(e){t=null}const n=this.estreeParseLiteral(t);return n.bigint=String(n.value||e),n}parseDecimalLiteral(e){const t=this.estreeParseLiteral(null);return t.decimal=String(t.value||e),t}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}directiveToStmt(e){const t=e.value,n=this.startNodeAt(e.start,e.loc.start),r=this.startNodeAt(t.start,t.loc.start);return r.value=t.extra.expressionValue,r.raw=t.extra.raw,n.expression=this.finishNodeAt(r,"Literal",t.loc.end),n.directive=t.extra.raw.slice(1,-1),this.finishNodeAt(n,"ExpressionStatement",e.loc.end)}initFunction(e,t){super.initFunction(e,t),e.expression=!1}checkDeclaration(e){null!=e&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return"ExpressionStatement"===e.type&&"Literal"===e.expression.type&&"string"==typeof e.expression.value&&!(null!=(t=e.expression.extra)&&t.parenthesized)}parseBlockBody(e,...t){super.parseBlockBody(e,...t);const n=e.directives.map((e=>this.directiveToStmt(e)));e.body=n.concat(e.body),delete e.directives}pushClassMethod(e,t,n,r,a,i){this.parseMethod(t,n,r,a,i,"ClassMethod",!0),t.typeParameters&&(t.value.typeParameters=t.typeParameters,delete t.typeParameters),e.body.push(t)}parsePrivateName(){const e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){const t=super.getPrivateNameSV(e);return delete e.id,e.name=t,e.type="PrivateIdentifier",e}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?"PrivateIdentifier"===e.type:super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){const n=super.parseLiteral(e,t);return n.raw=n.extra.raw,delete n.extra,n}parseFunctionBody(e,t,n=!1){super.parseFunctionBody(e,t,n),e.expression="BlockStatement"!==e.body.type}parseMethod(e,t,n,r,a,i,s=!1){let o=this.startNode();return o.kind=e.kind,o=super.parseMethod(o,t,n,r,a,i,s),o.type="FunctionExpression",delete o.kind,e.value=o,"ClassPrivateMethod"===i&&(e.computed=!1),i="MethodDefinition",this.finishNode(e,i)}parseClassProperty(...e){const t=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")?(t.type="PropertyDefinition",t):t}parseClassPrivateProperty(...e){const t=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")?(t.type="PropertyDefinition",t.computed=!1,t):t}parseObjectMethod(e,t,n,r,a){const i=super.parseObjectMethod(e,t,n,r,a);return i&&(i.type="Property","method"===i.kind&&(i.kind="init"),i.shorthand=!1),i}parseObjectProperty(e,t,n,r,a){const i=super.parseObjectProperty(e,t,n,r,a);return i&&(i.kind="init",i.type="Property"),i}isValidLVal(e,...t){return"Property"===e?"value":super.isValidLVal(e,...t)}isAssignable(e,t){return null!=e&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(null!=e&&this.isObjectProperty(e)){const{key:n,value:r}=e;this.isPrivateName(n)&&this.classScope.usePrivateName(this.getPrivateNameSV(n),n.loc.start),this.toAssignable(r,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e){"get"===e.kind||"set"===e.kind?this.raise(h.PatternHasAccessor,{at:e.key}):e.method?this.raise(h.PatternHasMethod,{at:e.key}):super.toAssignableObjectExpressionProp(...arguments)}finishCallExpression(e,t){var n;(super.finishCallExpression(e,t),"Import"===e.callee.type)&&(e.type="ImportExpression",e.source=e.arguments[0],this.hasPlugin("importAssertions")&&(e.attributes=null!=(n=e.arguments[1])?n:null),delete e.arguments,delete e.callee);return e}toReferencedArguments(e){"ImportExpression"!==e.type&&super.toReferencedArguments(e)}parseExport(e){switch(super.parseExport(e),e.type){case"ExportAllDeclaration":e.exported=null;break;case"ExportNamedDeclaration":1===e.specifiers.length&&"ExportNamespaceSpecifier"===e.specifiers[0].type&&(e.type="ExportAllDeclaration",e.exported=e.specifiers[0].exported,delete e.specifiers)}return e}parseSubscript(e,t,n,r,a){const i=super.parseSubscript(e,t,n,r,a);if(a.optionalChainMember){if("OptionalMemberExpression"!==i.type&&"OptionalCallExpression"!==i.type||(i.type=i.type.substring(8)),a.stop){const e=this.startNodeAtNode(i);return e.expression=i,this.finishNode(e,"ChainExpression")}}else"MemberExpression"!==i.type&&"CallExpression"!==i.type||(i.optional=!1);return i}hasPropertyAsPrivateName(e){return"ChainExpression"===e.type&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isOptionalChain(e){return"ChainExpression"===e.type}isObjectProperty(e){return"Property"===e.type&&"init"===e.kind&&!e.method}isObjectMethod(e){return e.method||"get"===e.kind||"set"===e.kind}finishNodeAt(e,t,n){return b(super.finishNodeAt(e,t,n))}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),b(e)}},jsx:e=>class extends e{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(st.UnterminatedJsxContent,{at:this.state.startLoc});const n=this.input.charCodeAt(this.state.pos);switch(n){case 60:case 123:return this.state.pos===this.state.start?60===n&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(138)):super.getTokenFromCode(n):(e+=this.input.slice(t,this.state.pos),this.finishToken(137,e));case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;default:xe(n)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){const t=this.input.charCodeAt(this.state.pos);let n;return++this.state.pos,13===t&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,n=e?"\n":"\r\n"):n=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,n}jsxReadString(e){let t="",n=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(h.UnterminatedString,{at:this.state.startLoc});const r=this.input.charCodeAt(this.state.pos);if(r===e)break;38===r?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadEntity(),n=this.state.pos):xe(r)?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadNewLine(!1),n=this.state.pos):++this.state.pos}return t+=this.input.slice(n,this.state.pos++),this.finishToken(129,t)}jsxReadEntity(){const e=++this.state.pos;if(35===this.codePointAtPos(this.state.pos)){++this.state.pos;let e=10;120===this.codePointAtPos(this.state.pos)&&(e=16,++this.state.pos);const t=this.readInt(e,void 0,!1,"bail");if(null!==t&&59===this.codePointAtPos(this.state.pos))return++this.state.pos,String.fromCodePoint(t)}else{let t=0,n=!1;for(;t++<10&&this.state.pos<this.length&&!(n=59==this.codePointAtPos(this.state.pos));)++this.state.pos;if(n){const t=this.input.slice(e,this.state.pos),n=it[t];if(++this.state.pos,n)return n}}return this.state.pos=e,"&"}jsxReadWord(){let e;const t=this.state.pos;do{e=this.input.charCodeAt(++this.state.pos)}while(ie(e)||45===e);return this.finishToken(136,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){const e=this.startNode();return this.match(136)?e.name=this.state.value:W(this.state.type)?e.name=q(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){const e=this.state.start,t=this.state.startLoc,n=this.jsxParseIdentifier();if(!this.eat(14))return n;const r=this.startNodeAt(e,t);return r.namespace=n,r.name=this.jsxParseIdentifier(),this.finishNode(r,"JSXNamespacedName")}jsxParseElementName(){const e=this.state.start,t=this.state.startLoc;let n=this.jsxParseNamespacedName();if("JSXNamespacedName"===n.type)return n;for(;this.eat(16);){const r=this.startNodeAt(e,t);r.object=n,r.property=this.jsxParseIdentifier(),n=this.finishNode(r,"JSXMemberExpression")}return n}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(P.brace),this.next(),e=this.jsxParseExpressionContainer(e,P.j_oTag),"JSXEmptyExpression"===e.expression.type&&this.raise(st.AttributeIsEmpty,{at:e}),e;case 138:case 129:return this.parseExprAtom();default:throw this.raise(st.UnsupportedJsxValue,{at:this.state.startLoc})}}jsxParseEmptyExpression(){const e=this.startNodeAt(this.state.lastTokEndLoc.index,this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(e){return this.next(),e.expression=this.parseExpression(),this.setContext(P.j_oTag),this.expect(8),this.finishNode(e,"JSXSpreadChild")}jsxParseExpressionContainer(e,t){if(this.match(8))e.expression=this.jsxParseEmptyExpression();else{const t=this.parseExpression();e.expression=t}return this.setContext(t),this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){const e=this.startNode();return this.match(5)?(this.setContext(P.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(P.j_oTag),this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))}jsxParseOpeningElementAt(e,t){const n=this.startNodeAt(e,t);return this.match(139)?(this.expect(139),this.finishNode(n,"JSXOpeningFragment")):(n.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(n))}jsxParseOpeningElementAfterName(e){const t=[];for(;!this.match(56)&&!this.match(139);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(139),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e,t){const n=this.startNodeAt(e,t);return this.match(139)?(this.expect(139),this.finishNode(n,"JSXClosingFragment")):(n.name=this.jsxParseElementName(),this.expect(139),this.finishNode(n,"JSXClosingElement"))}jsxParseElementAt(e,t){const n=this.startNodeAt(e,t),r=[],a=this.jsxParseOpeningElementAt(e,t);let i=null;if(!a.selfClosing){e:for(;;)switch(this.state.type){case 138:if(e=this.state.start,t=this.state.startLoc,this.next(),this.eat(56)){i=this.jsxParseClosingElementAt(e,t);break e}r.push(this.jsxParseElementAt(e,t));break;case 137:r.push(this.parseExprAtom());break;case 5:{const e=this.startNode();this.setContext(P.brace),this.next(),this.match(21)?r.push(this.jsxParseSpreadChild(e)):r.push(this.jsxParseExpressionContainer(e,P.j_expr));break}default:throw this.unexpected()}ot(a)&&!ot(i)&&null!==i?this.raise(st.MissingClosingTagFragment,{at:i}):!ot(a)&&ot(i)?this.raise(st.MissingClosingTagElement,{at:i,openingTagName:lt(a.name)}):ot(a)||ot(i)||lt(i.name)!==lt(a.name)&&this.raise(st.MissingClosingTagElement,{at:i,openingTagName:lt(a.name)})}if(ot(a)?(n.openingFragment=a,n.closingFragment=i):(n.openingElement=a,n.closingElement=i),n.children=r,this.match(47))throw this.raise(st.UnwrappedAdjacentJSXElements,{at:this.state.startLoc});return ot(a)?this.finishNode(n,"JSXFragment"):this.finishNode(n,"JSXElement")}jsxParseElement(){const e=this.state.start,t=this.state.startLoc;return this.next(),this.jsxParseElementAt(e,t)}setContext(e){const{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(137)?this.parseLiteral(this.state.value,"JSXText"):this.match(138)?this.jsxParseElement():this.match(47)&&33!==this.input.charCodeAt(this.state.pos)?(this.replaceToken(138),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){const t=this.curContext();if(t===P.j_expr)return this.jsxReadToken();if(t===P.j_oTag||t===P.j_cTag){if(ae(e))return this.jsxReadWord();if(62===e)return++this.state.pos,this.finishToken(139);if((34===e||39===e)&&t===P.j_oTag)return this.jsxReadString(e)}return 60===e&&this.state.canStartJSXElement&&33!==this.input.charCodeAt(this.state.pos+1)?(++this.state.pos,this.finishToken(138)):super.getTokenFromCode(e)}updateContext(e){const{context:t,type:n}=this.state;if(56===n&&138===e)t.splice(-2,2,P.j_cTag),this.state.canStartJSXElement=!1;else if(138===n)t.push(P.j_oTag);else if(139===n){const n=t[t.length-1];n===P.j_oTag&&56===e||n===P.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===P.j_expr):(this.setContext(P.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=M[n]}},flow:e=>class extends e{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return Fe}shouldParseTypes(){return this.getPluginOption("flow","all")||"flow"===this.flowPragma}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(e,t){return 129!==e&&13!==e&&28!==e&&void 0===this.flowPragma&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(void 0===this.flowPragma){const t=at.exec(e.value);if(t)if("flow"===t[1])this.flowPragma="flow";else{if("noflow"!==t[1])throw new Error("Unexpected flow pragma");this.flowPragma="noflow"}}return super.addComment(e)}flowParseTypeInitialiser(e){const t=this.state.inType;this.state.inType=!0,this.expect(e||14);const n=this.flowParseType();return this.state.inType=t,n}flowParsePredicate(){const e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(107),this.state.lastTokStart>t.index+1&&this.raise(et.UnexpectedSpaceBetweenModuloChecks,{at:t}),this.eat(10)?(e.value=this.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){const e=this.state.inType;this.state.inType=!0,this.expect(14);let t=null,n=null;return this.match(54)?(this.state.inType=e,n=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(n=this.flowParsePredicate())),[t,n]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();const t=e.id=this.parseIdentifier(),n=this.startNode(),r=this.startNode();this.match(47)?n.typeParameters=this.flowParseTypeParameterDeclaration():n.typeParameters=null,this.expect(10);const a=this.flowParseFunctionTypeParams();return n.params=a.params,n.rest=a.rest,n.this=a._this,this.expect(11),[n.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),r.typeAnnotation=this.finishNode(n,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(r,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,t){if(this.match(80))return this.flowParseDeclareClass(e);if(this.match(68))return this.flowParseDeclareFunction(e);if(this.match(74))return this.flowParseDeclareVariable(e);if(this.eatContextual(123))return this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(et.NestedDeclareModule,{at:this.state.lastTokStartLoc}),this.flowParseDeclareModule(e));if(this.isContextual(126))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(127))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(125))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,t);throw this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,5,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(0),this.match(129)?e.id=this.parseExprAtom():e.id=this.parseIdentifier();const t=e.body=this.startNode(),n=t.body=[];for(this.expect(5);!this.match(8);){let e=this.startNode();this.match(83)?(this.next(),this.isContextual(126)||this.match(87)||this.raise(et.InvalidNonTypeImportInDeclareModule,{at:this.state.lastTokStartLoc}),this.parseImport(e)):(this.expectContextual(121,et.UnsupportedStatementInDeclareModule),e=this.flowParseDeclare(e,!0)),n.push(e)}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let r=null,a=!1;return n.forEach((e=>{!function(e){return"DeclareExportAllDeclaration"===e.type||"DeclareExportDeclaration"===e.type&&(!e.declaration||"TypeAlias"!==e.declaration.type&&"InterfaceDeclaration"!==e.declaration.type)}(e)?"DeclareModuleExports"===e.type&&(a&&this.raise(et.DuplicateDeclareModuleExports,{at:e}),"ES"===r&&this.raise(et.AmbiguousDeclareModuleKind,{at:e}),r="CommonJS",a=!0):("CommonJS"===r&&this.raise(et.AmbiguousDeclareModuleKind,{at:e}),r="ES")})),e.kind=r||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,t){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(126)||this.isContextual(125))&&!t){const e=this.state.value;throw this.raise(et.UnsupportedDeclareExportKind,{at:this.state.startLoc,unsupportedExportKind:e,suggestion:rt[e]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(127))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(125)||this.isContextual(126)||this.isContextual(127))return"ExportNamedDeclaration"===(e=this.parseExport(e)).type&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e;throw this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(108),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){return this.next(),this.flowParseTypeAlias(e),e.type="DeclareTypeAlias",e}flowParseDeclareOpaqueType(e){return this.next(),this.flowParseOpaqueType(e,!0),e.type="DeclareOpaqueType",e}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t=!1){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:9,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],e.implements=[],e.mixins=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(!t&&this.eat(12));if(this.isContextual(114)){this.next();do{e.mixins.push(this.flowParseInterfaceExtends())}while(this.eat(12))}if(this.isContextual(110)){this.next();do{e.implements.push(this.flowParseInterfaceExtends())}while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})}flowParseInterfaceExtends(){const e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){"_"===e&&this.raise(et.UnexpectedReservedUnderscore,{at:this.state.startLoc})}checkReservedType(e,t,n){Ze.has(e)&&this.raise(n?et.AssignReservedType:et.UnexpectedReservedType,{at:t,reservedType:e})}flowParseRestrictedIdentifier(e,t){return this.checkReservedType(this.state.value,this.state.startLoc,t),this.parseIdentifier(e)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,9,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,t){return this.expectContextual(126),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,9,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameter(e=!1){const t=this.state.startLoc,n=this.startNode(),r=this.flowParseVariance(),a=this.flowParseTypeAnnotatableIdentifier();return n.name=a.name,n.variance=r,n.bound=a.typeAnnotation,this.match(29)?(this.eat(29),n.default=this.flowParseType()):e&&this.raise(et.MissingTypeParamDefault,{at:t}),this.finishNode(n,"TypeParameter")}flowParseTypeParameterDeclaration(){const e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(138)?this.next():this.unexpected();let n=!1;do{const e=this.flowParseTypeParameter(n);t.params.push(e),e.default&&(n=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){const e=this.startNode(),t=this.state.inType;e.params=[],this.state.inType=!0,this.expect(47);const n=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=n,this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){const e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){const e=this.startNode();if(this.expectContextual(125),e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(130)||this.match(129)?this.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,n){return e.static=t,14===this.lookahead().type?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=n,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,t){return e.static=t,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.start,e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,t){const n=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(n),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:n,allowProto:r,allowInexact:a}){const i=this.state.inType;this.state.inType=!0;const s=this.startNode();let o,l;s.callProperties=[],s.properties=[],s.indexers=[],s.internalSlots=[];let p=!1;for(t&&this.match(6)?(this.expect(6),o=9,l=!0):(this.expect(5),o=8,l=!1),s.exact=l;!this.match(o);){let t=!1,i=null,o=null;const c=this.startNode();if(r&&this.isContextual(115)){const t=this.lookahead();14!==t.type&&17!==t.type&&(this.next(),i=this.state.startLoc,e=!1)}if(e&&this.isContextual(104)){const e=this.lookahead();14!==e.type&&17!==e.type&&(this.next(),t=!0)}const u=this.flowParseVariance();if(this.eat(0))null!=i&&this.unexpected(i),this.eat(0)?(u&&this.unexpected(u.loc.start),s.internalSlots.push(this.flowParseObjectTypeInternalSlot(c,t))):s.indexers.push(this.flowParseObjectTypeIndexer(c,t,u));else if(this.match(10)||this.match(47))null!=i&&this.unexpected(i),u&&this.unexpected(u.loc.start),s.callProperties.push(this.flowParseObjectTypeCallProperty(c,t));else{let e="init";(this.isContextual(98)||this.isContextual(103))&&U(this.lookahead().type)&&(e=this.state.value,this.next());const r=this.flowParseObjectTypeProperty(c,t,i,u,e,n,null!=a?a:!l);null===r?(p=!0,o=this.state.lastTokStartLoc):s.properties.push(r)}this.flowObjectTypeSemicolon(),!o||this.match(8)||this.match(9)||this.raise(et.UnexpectedExplicitInexactInObject,{at:o})}this.expect(o),n&&(s.inexact=p);const c=this.finishNode(s,"ObjectTypeAnnotation");return this.state.inType=i,c}flowParseObjectTypeProperty(e,t,n,r,a,i,s){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(i?s||this.raise(et.InexactInsideExact,{at:this.state.lastTokStartLoc}):this.raise(et.InexactInsideNonObject,{at:this.state.lastTokStartLoc}),r&&this.raise(et.InexactVariance,{at:r}),null):(i||this.raise(et.UnexpectedSpreadType,{at:this.state.lastTokStartLoc}),null!=n&&this.unexpected(n),r&&this.raise(et.SpreadVariance,{at:r}),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=null!=n,e.kind=a;let s=!1;return this.match(47)||this.match(10)?(e.method=!0,null!=n&&this.unexpected(n),r&&this.unexpected(r.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.start,e.loc.start)),"get"!==a&&"set"!==a||this.flowCheckGetterSetterParams(e),!i&&"constructor"===e.key.name&&e.value.this&&this.raise(et.ThisParamBannedInConstructor,{at:e.value.this})):("init"!==a&&this.unexpected(),e.method=!1,this.eat(17)&&(s=!0),e.value=this.flowParseTypeInitialiser(),e.variance=r),e.optional=s,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){const t="get"===e.kind?0:1,n=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise("get"===e.kind?et.GetterMayNotHaveThisParam:et.SetterMayNotHaveThisParam,{at:e.value.this}),n!==t&&this.raise("get"===e.kind?h.BadGetterArity:h.BadSetterArity,{at:e}),"set"===e.kind&&e.value.rest&&this.raise(h.BadSetterRestParameter,{at:e})}flowObjectTypeSemicolon(){this.eat(13)||this.eat(12)||this.match(8)||this.match(9)||this.unexpected()}flowParseQualifiedTypeIdentifier(e,t,n){e=e||this.state.start,t=t||this.state.startLoc;let r=n||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){const n=this.startNodeAt(e,t);n.qualification=r,n.id=this.flowParseRestrictedIdentifier(!0),r=this.finishNode(n,"QualifiedTypeIdentifier")}return r}flowParseGenericType(e,t,n){const r=this.startNodeAt(e,t);return r.typeParameters=null,r.id=this.flowParseQualifiedTypeIdentifier(e,t,n),this.match(47)&&(r.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(r,"GenericTypeAnnotation")}flowParseTypeofType(){const e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){const e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")}flowParseFunctionTypeParam(e){let t=null,n=!1,r=null;const a=this.startNode(),i=this.lookahead(),s=78===this.state.type;return 14===i.type||17===i.type?(s&&!e&&this.raise(et.ThisParamMustBeFirst,{at:a}),t=this.parseIdentifier(s),this.eat(17)&&(n=!0,s&&this.raise(et.ThisParamMayNotBeOptional,{at:a})),r=this.flowParseTypeInitialiser()):r=this.flowParseType(),a.name=t,a.optional=n,a.typeAnnotation=r,this.finishNode(a,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){const t=this.startNodeAt(e.start,e.loc.start);return t.name=null,t.optional=!1,t.typeAnnotation=e,this.finishNode(t,"FunctionTypeParam")}flowParseFunctionTypeParams(e=[]){let t=null,n=null;for(this.match(78)&&(n=this.flowParseFunctionTypeParam(!0),n.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:n}}flowIdentToTypeAnnotation(e,t,n,r){switch(r.name){case"any":return this.finishNode(n,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(n,"BooleanTypeAnnotation");case"mixed":return this.finishNode(n,"MixedTypeAnnotation");case"empty":return this.finishNode(n,"EmptyTypeAnnotation");case"number":return this.finishNode(n,"NumberTypeAnnotation");case"string":return this.finishNode(n,"StringTypeAnnotation");case"symbol":return this.finishNode(n,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(r.name),this.flowParseGenericType(e,t,r)}}flowParsePrimaryType(){const e=this.state.start,t=this.state.startLoc,n=this.startNode();let r,a,i=!1;const s=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,a=this.flowParseTupleType(),this.state.noAnonFunctionType=s,a;case 47:return n.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),r=this.flowParseFunctionTypeParams(),n.params=r.params,n.rest=r.rest,n.this=r._this,this.expect(11),this.expect(19),n.returnType=this.flowParseType(),this.finishNode(n,"FunctionTypeAnnotation");case 10:if(this.next(),!this.match(11)&&!this.match(21))if(V(this.state.type)||this.match(78)){const e=this.lookahead().type;i=17!==e&&14!==e}else i=!0;if(i){if(this.state.noAnonFunctionType=!1,a=this.flowParseType(),this.state.noAnonFunctionType=s,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&19===this.lookahead().type))return this.expect(11),a;this.eat(12)}return r=a?this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(a)]):this.flowParseFunctionTypeParams(),n.params=r.params,n.rest=r.rest,n.this=r._this,this.expect(11),this.expect(19),n.returnType=this.flowParseType(),n.typeParameters=null,this.finishNode(n,"FunctionTypeAnnotation");case 129:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return n.value=this.match(85),this.next(),this.finishNode(n,"BooleanLiteralTypeAnnotation");case 53:if("-"===this.state.value){if(this.next(),this.match(130))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",n);if(this.match(131))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",n);throw this.raise(et.UnexpectedSubtractionOperand,{at:this.state.startLoc})}throw this.unexpected();case 130:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 131:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(n,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(n,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(n,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(n,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(W(this.state.type)){const e=q(this.state.type);return this.next(),super.createIdentifier(n,e)}if(V(this.state.type))return this.isContextual(125)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,t,n,this.parseIdentifier())}throw this.unexpected()}flowParsePostfixType(){const e=this.state.start,t=this.state.startLoc;let n=this.flowParsePrimaryType(),r=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){const a=this.startNodeAt(e,t),i=this.eat(18);r=r||i,this.expect(0),!i&&this.match(3)?(a.elementType=n,this.next(),n=this.finishNode(a,"ArrayTypeAnnotation")):(a.objectType=n,a.indexType=this.flowParseType(),this.expect(3),r?(a.optional=i,n=this.finishNode(a,"OptionalIndexedAccessType")):n=this.finishNode(a,"IndexedAccessType"))}return n}flowParsePrefixType(){const e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){const e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){const t=this.startNodeAt(e.start,e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.this=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){const e=this.startNode();this.eat(45);const t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return 1===e.types.length?t:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){const e=this.startNode();this.eat(43);const t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return 1===e.types.length?t:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){const e=this.state.inType;this.state.inType=!0;const t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(128===this.state.type&&"_"===this.state.value){const e=this.state.start,t=this.state.startLoc,n=this.parseIdentifier();return this.flowParseGenericType(e,t,n)}return this.flowParseType()}flowParseTypeAnnotation(){const e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){const t=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t)),t}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)&&(e=this.startNode(),"+"===this.state.value?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")),e}parseFunctionBody(e,t,n=!1){return t?this.forwardNoArrowParamsConversionAt(e,(()=>super.parseFunctionBody(e,!0,n))):super.parseFunctionBody(e,!1,n)}parseFunctionBodyAndFinish(e,t,n=!1){if(this.match(14)){const t=this.startNode();[t.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=t.typeAnnotation?this.finishNode(t,"TypeAnnotation"):null}super.parseFunctionBodyAndFinish(e,t,n)}parseStatement(e,t){if(this.state.strict&&this.isContextual(125)){if(Y(this.lookahead().type)){const e=this.startNode();return this.next(),this.flowParseInterface(e)}}else if(this.shouldParseEnums()&&this.isContextual(122)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}const n=super.parseStatement(e,t);return void 0!==this.flowPragma||this.isValidDirective(n)||(this.flowPragma=null),n}parseExpressionStatement(e,t){if("Identifier"===t.type)if("declare"===t.name){if(this.match(80)||V(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(V(this.state.type)){if("interface"===t.name)return this.flowParseInterface(e);if("type"===t.name)return this.flowParseTypeAlias(e);if("opaque"===t.name)return this.flowParseOpaqueType(e,!1)}return super.parseExpressionStatement(e,t)}shouldParseExportDeclaration(){const{type:e}=this.state;return J(e)||this.shouldParseEnums()&&122===e?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){const{type:e}=this.state;return J(e)||this.shouldParseEnums()&&122===e?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(122)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,n,r){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){const t=this.lookaheadCharCode();if(44===t||61===t||58===t||41===t)return this.setOptionalParametersError(r),e}this.expect(17);const a=this.state.clone(),i=this.state.noArrowAt,s=this.startNodeAt(t,n);let{consequent:o,failed:l}=this.tryParseConditionalConsequent(),[p,c]=this.getArrowLikeExpressions(o);if(l||c.length>0){const e=[...i];if(c.length>0){this.state=a,this.state.noArrowAt=e;for(let t=0;t<c.length;t++)e.push(c[t].start);({consequent:o,failed:l}=this.tryParseConditionalConsequent()),[p,c]=this.getArrowLikeExpressions(o)}l&&p.length>1&&this.raise(et.AmbiguousConditionalArrow,{at:a.startLoc}),l&&1===p.length&&(this.state=a,e.push(p[0].start),this.state.noArrowAt=e,({consequent:o,failed:l}=this.tryParseConditionalConsequent()))}return this.getArrowLikeExpressions(o,!0),this.state.noArrowAt=i,this.expect(14),s.test=e,s.consequent=o,s.alternate=this.forwardNoArrowParamsConversionAt(s,(()=>this.parseMaybeAssign(void 0,void 0))),this.finishNode(s,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);const e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){const n=[e],r=[];for(;0!==n.length;){const e=n.pop();"ArrowFunctionExpression"===e.type?(e.typeParameters||!e.returnType?this.finishArrowValidation(e):r.push(e),n.push(e.body)):"ConditionalExpression"===e.type&&(n.push(e.consequent),n.push(e.alternate))}return t?(r.forEach((e=>this.finishArrowValidation(e))),[r,[]]):function(e,t){const n=[],r=[];for(let a=0;a<e.length;a++)(t(e[a])?n:r).push(e[a]);return[n,r]}(r,(e=>e.params.every((e=>this.isAssignable(e,!0)))))}finishArrowValidation(e){var t;this.toAssignableList(e.params,null==(t=e.extra)?void 0:t.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let n;return-1!==this.state.noArrowParamsConversionAt.indexOf(e.start)?(this.state.noArrowParamsConversionAt.push(this.state.start),n=t(),this.state.noArrowParamsConversionAt.pop()):n=t(),n}parseParenItem(e,t,n){if(e=super.parseParenItem(e,t,n),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){const r=this.startNodeAt(t,n);return r.expression=e,r.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(r,"TypeCastExpression")}return e}assertModuleNodeAllowed(e){"ImportDeclaration"===e.type&&("type"===e.importKind||"typeof"===e.importKind)||"ExportNamedDeclaration"===e.type&&"type"===e.exportKind||"ExportAllDeclaration"===e.type&&"type"===e.exportKind||super.assertModuleNodeAllowed(e)}parseExport(e){const t=super.parseExport(e);return"ExportNamedDeclaration"!==t.type&&"ExportAllDeclaration"!==t.type||(t.exportKind=t.exportKind||"value"),t}parseExportDeclaration(e){if(this.isContextual(126)){e.exportKind="type";const t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),this.parseExportFrom(e),null):this.flowParseTypeAlias(t)}if(this.isContextual(127)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}if(this.isContextual(125)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseInterface(t)}if(this.shouldParseEnums()&&this.isContextual(122)){e.exportKind="value";const t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}return super.parseExportDeclaration(e)}eatExportStar(e){return!!super.eatExportStar(...arguments)||!(!this.isContextual(126)||55!==this.lookahead().type)&&(e.exportKind="type",this.next(),this.next(),!0)}maybeParseExportNamespaceSpecifier(e){const{startLoc:t}=this.state,n=super.maybeParseExportNamespaceSpecifier(e);return n&&"type"===e.exportKind&&this.unexpected(t),n}parseClassId(e,t,n){super.parseClassId(e,t,n),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,n){const{startLoc:r}=this.state;if(this.isContextual(121)){if(this.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,n),t.declare&&("ClassProperty"!==t.type&&"ClassPrivateProperty"!==t.type&&"PropertyDefinition"!==t.type?this.raise(et.DeclareClassElement,{at:r}):t.value&&this.raise(et.DeclareClassFieldInitializer,{at:t.value}))}isIterator(e){return"iterator"===e||"asyncIterator"===e}readIterator(){const e=super.readWord1(),t="@@"+e;this.isIterator(e)&&this.state.inType||this.raise(h.InvalidIdentifier,{at:this.state.curPosition(),identifierName:t}),this.finishToken(128,t)}getTokenFromCode(e){const t=this.input.charCodeAt(this.state.pos+1);return 123===e&&124===t?this.finishOp(6,2):!this.state.inType||62!==e&&60!==e?this.state.inType&&63===e?46===t?this.finishOp(18,2):this.finishOp(17,1):function(e,t,n){return 64===e&&64===t&&ae(n)}(e,t,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e):this.finishOp(62===e?48:47,1)}isAssignable(e,t){return"TypeCastExpression"===e.type?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){t||"AssignmentExpression"!==e.type||"TypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left)),super.toAssignable(...arguments)}toAssignableList(e,t,n){for(let t=0;t<e.length;t++){const n=e[t];"TypeCastExpression"===(null==n?void 0:n.type)&&(e[t]=this.typeCastToParameter(n))}super.toAssignableList(e,t,n)}toReferencedList(e,t){for(let r=0;r<e.length;r++){var n;const a=e[r];!a||"TypeCastExpression"!==a.type||null!=(n=a.extra)&&n.parenthesized||!(e.length>1)&&t||this.raise(et.TypeCastInPattern,{at:a.typeAnnotation})}return e}parseArrayLike(e,t,n,r){const a=super.parseArrayLike(e,t,n,r);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(a.elements),a}isValidLVal(e,...t){return"TypeCastExpression"===e||super.isValidLVal(e,...t)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,t,n,r,a,i){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,n,r,a,i),t.params&&a){const e=t.params;e.length>0&&this.isThisParam(e[0])&&this.raise(et.ThisParamBannedInConstructor,{at:t})}else if("MethodDefinition"===t.type&&a&&t.value.params){const e=t.value.params;e.length>0&&this.isThisParam(e[0])&&this.raise(et.ThisParamBannedInConstructor,{at:t})}}pushClassPrivateMethod(e,t,n,r){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,n,r)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&this.match(47)&&(e.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(110)){this.next();const t=e.implements=[];do{const e=this.startNode();e.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,t.push(this.finishNode(e,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);const t=this.getObjectOrClassMethodParams(e);if(t.length>0){const n=t[0];this.isThisParam(n)&&"get"===e.kind?this.raise(et.GetterMayNotHaveThisParam,{at:n}):this.isThisParam(n)&&this.raise(et.SetterMayNotHaveThisParam,{at:n})}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,n,r,a,i,s,o){let l;e.variance&&this.unexpected(e.variance.loc.start),delete e.variance,this.match(47)&&!s&&(l=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected()),super.parseObjPropValue(e,t,n,r,a,i,s,o),l&&((e.value||e).typeParameters=l)}parseAssignableListItemTypes(e){return this.eat(17)&&("Identifier"!==e.type&&this.raise(et.PatternIsOptional,{at:e}),this.isThisParam(e)&&this.raise(et.ThisParamMayNotBeOptional,{at:e}),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(et.ThisParamAnnotationRequired,{at:e}),this.match(29)&&this.isThisParam(e)&&this.raise(et.ThisParamNoDefault,{at:e}),this.resetEndLocation(e),e}parseMaybeDefault(e,t,n){const r=super.parseMaybeDefault(e,t,n);return"AssignmentPattern"===r.type&&r.typeAnnotation&&r.right.start<r.typeAnnotation.start&&this.raise(et.TypeBeforeInitializer,{at:r.typeAnnotation}),r}shouldParseDefaultImport(e){return tt(e)?nt(this.state.type):super.shouldParseDefaultImport(e)}parseImportSpecifierLocal(e,t,n){t.local=tt(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,n))}maybeParseDefaultImportSpecifier(e){e.importKind="value";let t=null;if(this.match(87)?t="typeof":this.isContextual(126)&&(t="type"),t){const n=this.lookahead(),{type:r}=n;"type"===t&&55===r&&this.unexpected(null,n.type),(nt(r)||5===r||55===r)&&(this.next(),e.importKind=t)}return super.maybeParseDefaultImportSpecifier(e)}parseImportSpecifier(e,t,n,r){const a=e.imported;let i=null;"Identifier"===a.type&&("type"===a.name?i="type":"typeof"===a.name&&(i="typeof"));let s=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){const t=this.parseIdentifier(!0);null===i||Y(this.state.type)?(e.imported=a,e.importKind=null,e.local=this.parseIdentifier()):(e.imported=t,e.importKind=i,e.local=He(t))}else{if(null!==i&&Y(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=i;else{if(t)throw this.raise(h.ImportBindingIsString,{at:e,importName:a.value});e.imported=a,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(s=!0,e.local=He(e.imported))}const o=tt(e);return n&&o&&this.raise(et.ImportTypeShorthandOnlyInPureImport,{at:e}),(n||o)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),!s||n||o||this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseFunctionParams(e,t){const n=e.kind;"get"!==n&&"set"!==n&&this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),this.match(14)&&(e.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){if(this.match(14)){const t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=t}return super.parseAsyncArrowFromCallExpression(e,t)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,t){var n;let r,a=null;if(this.hasPlugin("jsx")&&(this.match(138)||this.match(47))){if(a=this.state.clone(),r=this.tryParse((()=>super.parseMaybeAssign(e,t)),a),!r.error)return r.node;const{context:n}=this.state,i=n[n.length-1];i!==P.j_oTag&&i!==P.j_expr||n.pop()}if(null!=(n=r)&&n.error||this.match(47)){var i,s;let n;a=a||this.state.clone();const o=this.tryParse((r=>{var a;n=this.flowParseTypeParameterDeclaration();const i=this.forwardNoArrowParamsConversionAt(n,(()=>{const r=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(r,n),r}));null!=(a=i.extra)&&a.parenthesized&&r();const s=this.maybeUnwrapTypeCastExpression(i);return"ArrowFunctionExpression"!==s.type&&r(),s.typeParameters=n,this.resetStartLocationFromNode(s,n),i}),a);let l=null;if(o.node&&"ArrowFunctionExpression"===this.maybeUnwrapTypeCastExpression(o.node).type){if(!o.error&&!o.aborted)return o.node.async&&this.raise(et.UnexpectedTypeParameterBeforeAsyncArrowFunction,{at:n}),o.node;l=o.node}if(null!=(i=r)&&i.node)return this.state=r.failState,r.node;if(l)return this.state=o.failState,l;if(null!=(s=r)&&s.thrown)throw r.error;if(o.thrown)throw o.error;throw this.raise(et.UnexpectedTokenAfterTypeParameter,{at:n})}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){const t=this.tryParse((()=>{const t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;const n=this.startNode();return[n.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=t,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),n}));if(t.thrown)return null;t.error&&(this.state=t.failState),e.returnType=t.node.typeAnnotation?this.finishNode(t.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,t){-1!==this.state.noArrowParamsConversionAt.indexOf(e.start)?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,n){if(!n||-1===this.state.noArrowParamsConversionAt.indexOf(e.start)){for(let t=0;t<e.params.length;t++)this.isThisParam(e.params[t])&&t>0&&this.raise(et.ThisParamMustBeFirst,{at:e.params[t]});return super.checkParams(...arguments)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&-1===this.state.noArrowAt.indexOf(this.state.start))}parseSubscripts(e,t,n,r){if("Identifier"===e.type&&"async"===e.name&&-1!==this.state.noArrowAt.indexOf(t)){this.next();const r=this.startNodeAt(t,n);r.callee=e,r.arguments=this.parseCallExpressionArguments(11,!1),e=this.finishNode(r,"CallExpression")}else if("Identifier"===e.type&&"async"===e.name&&this.match(47)){const a=this.state.clone(),i=this.tryParse((e=>this.parseAsyncArrowWithTypeParameters(t,n)||e()),a);if(!i.error&&!i.aborted)return i.node;const s=this.tryParse((()=>super.parseSubscripts(e,t,n,r)),a);if(s.node&&!s.error)return s.node;if(i.node)return this.state=i.failState,i.node;if(s.node)return this.state=s.failState,s.node;throw i.error||s.error}return super.parseSubscripts(e,t,n,r)}parseSubscript(e,t,n,r,a){if(this.match(18)&&this.isLookaheadToken_lt()){if(a.optionalChainMember=!0,r)return a.stop=!0,e;this.next();const i=this.startNodeAt(t,n);return i.callee=e,i.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),i.arguments=this.parseCallExpressionArguments(11,!1),i.optional=!0,this.finishCallExpression(i,!0)}if(!r&&this.shouldParseTypes()&&this.match(47)){const r=this.startNodeAt(t,n);r.callee=e;const i=this.tryParse((()=>(r.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),r.arguments=this.parseCallExpressionArguments(11,!1),a.optionalChainMember&&(r.optional=!1),this.finishCallExpression(r,a.optionalChainMember))));if(i.node)return i.error&&(this.state=i.failState),i.node}return super.parseSubscript(e,t,n,r,a)}parseNewArguments(e){let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse((()=>this.flowParseTypeParameterInstantiationCallOrNew())).node),e.typeArguments=t,super.parseNewArguments(e)}parseAsyncArrowWithTypeParameters(e,t){const n=this.startNodeAt(e,t);if(this.parseFunctionParams(n),this.parseArrow(n))return this.parseArrowExpression(n,void 0,!0)}readToken_mult_modulo(e){const t=this.input.charCodeAt(this.state.pos+1);if(42===e&&47===t&&this.state.hasFlowComment)return this.state.hasFlowComment=!1,this.state.pos+=2,void this.nextToken();super.readToken_mult_modulo(e)}readToken_pipe_amp(e){const t=this.input.charCodeAt(this.state.pos+1);124!==e||125!==t?super.readToken_pipe_amp(e):this.finishOp(9,2)}parseTopLevel(e,t){const n=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(et.UnterminatedFlowComment,{at:this.state.curPosition()}),n}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(et.NestedFlowComment,{at:this.state.startLoc});return this.hasFlowCommentCompletion(),this.state.pos+=this.skipFlowComment(),void(this.state.hasFlowComment=!0)}if(!this.state.hasFlowComment)return super.skipBlockComment();{const e=this.input.indexOf("*-/",this.state.pos+2);if(-1===e)throw this.raise(h.UnterminatedComment,{at:this.state.curPosition()});this.state.pos=e+2+3}}skipFlowComment(){const{pos:e}=this.state;let t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;const n=this.input.charCodeAt(t+e),r=this.input.charCodeAt(t+e+1);return 58===n&&58===r?t+2:"flow-include"===this.input.slice(t+e,t+e+12)?t+12:58===n&&58!==r&&t}hasFlowCommentCompletion(){if(-1===this.input.indexOf("*/",this.state.pos))throw this.raise(h.UnterminatedComment,{at:this.state.curPosition()})}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:n}){this.raise(et.EnumBooleanMemberNotInitialized,{at:e,memberName:n,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?"symbol"===t.explicitType?et.EnumInvalidMemberInitializerSymbolType:et.EnumInvalidMemberInitializerPrimaryType:et.EnumInvalidMemberInitializerUnknownType,Object.assign({at:e},t))}flowEnumErrorNumberMemberNotInitialized(e,{enumName:t,memberName:n}){this.raise(et.EnumNumberMemberNotInitialized,{at:e,enumName:t,memberName:n})}flowEnumErrorStringMemberInconsistentlyInitailized(e,{enumName:t}){this.raise(et.EnumStringMemberInconsistentlyInitailized,{at:e,enumName:t})}flowEnumMemberInit(){const e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 130:{const n=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}case 129:{const n=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}case 85:case 86:{const n=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){const e=this.state.startLoc;return{id:this.parseIdentifier(!0),init:this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e}}}flowEnumCheckExplicitTypeMismatch(e,t,n){const{explicitType:r}=t;null!==r&&r!==n&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){const n=new Set,r={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]};let a=!1;for(;!this.match(8);){if(this.eat(21)){a=!0;break}const i=this.startNode(),{id:s,init:o}=this.flowEnumMemberRaw(),l=s.name;if(""===l)continue;/^[a-z]/.test(l)&&this.raise(et.EnumInvalidMemberName,{at:s,memberName:l,suggestion:l[0].toUpperCase()+l.slice(1),enumName:e}),n.has(l)&&this.raise(et.EnumDuplicateMemberName,{at:s,memberName:l,enumName:e}),n.add(l);const p={enumName:e,explicitType:t,memberName:l};switch(i.id=s,o.type){case"boolean":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"boolean"),i.init=o.value,r.booleanMembers.push(this.finishNode(i,"EnumBooleanMember"));break;case"number":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"number"),i.init=o.value,r.numberMembers.push(this.finishNode(i,"EnumNumberMember"));break;case"string":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"string"),i.init=o.value,r.stringMembers.push(this.finishNode(i,"EnumStringMember"));break;case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(o.loc,p);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(o.loc,p);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(o.loc,p);break;default:r.defaultedMembers.push(this.finishNode(i,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:r,hasUnknownMembers:a}}flowEnumStringMembers(e,t,{enumName:n}){if(0===e.length)return t;if(0===t.length)return e;if(t.length>e.length){for(const t of e)this.flowEnumErrorStringMemberInconsistentlyInitailized(t,{enumName:n});return t}for(const e of t)this.flowEnumErrorStringMemberInconsistentlyInitailized(e,{enumName:n});return e}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(101))return null;if(!V(this.state.type))throw this.raise(et.EnumInvalidExplicitTypeUnknownSupplied,{at:this.state.startLoc,enumName:e});const{value:t}=this.state;return this.next(),"boolean"!==t&&"number"!==t&&"string"!==t&&"symbol"!==t&&this.raise(et.EnumInvalidExplicitType,{at:this.state.startLoc,enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){const n=t.name,r=t.loc.start,a=this.flowEnumParseExplicitType({enumName:n});this.expect(5);const{members:i,hasUnknownMembers:s}=this.flowEnumMembers({enumName:n,explicitType:a});switch(e.hasUnknownMembers=s,a){case"boolean":return e.explicitType=!0,e.members=i.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=i.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(i.stringMembers,i.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=i.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{const t=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;const a=i.booleanMembers.length,s=i.numberMembers.length,o=i.stringMembers.length,l=i.defaultedMembers.length;if(a||s||o||l){if(a||s){if(!s&&!o&&a>=l){for(const e of i.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=i.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}if(!a&&!o&&s>=l){for(const e of i.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=i.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}return this.raise(et.EnumInconsistentMemberValues,{at:r,enumName:n}),t()}return e.members=this.flowEnumStringMembers(i.stringMembers,i.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,"EnumStringBody")}return t()}}}flowParseEnumDeclaration(e){const t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")}isLookaheadToken_lt(){const e=this.nextTokenStart();if(60===this.input.charCodeAt(e)){const t=this.input.charCodeAt(e+1);return 60!==t&&61!==t}return!1}maybeUnwrapTypeCastExpression(e){return"TypeCastExpression"===e.type?e.expression:e}},typescript:e=>class extends e{getScopeHandler(){return ct}tsIsIdentifier(){return V(this.state.type)}tsTokenCanFollowModifier(){return(this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(134)||this.isLiteralPropertyName())&&!this.hasPrecedingLineBreak()}tsNextTokenCanFollowModifier(){return this.next(),this.tsTokenCanFollowModifier()}tsParseModifier(e,t){if(!V(this.state.type))return;const n=this.state.value;if(-1!==e.indexOf(n)){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return n}}tsParseModifiers({modified:e,allowedModifiers:t,disallowedModifiers:n,stopOnStartOfClassStaticBlock:r}){const a=(t,n,r,a)=>{n===r&&e[a]&&this.raise(dt.InvalidModifiersOrder,{at:t,orderedModifiers:[r,a]})},i=(t,n,r,a)=>{(e[r]&&n===a||e[a]&&n===r)&&this.raise(dt.IncompatibleModifiers,{at:t,modifiers:[r,a]})};for(;;){const{startLoc:s}=this.state,o=this.tsParseModifier(t.concat(null!=n?n:[]),r);if(!o)break;ft(o)?e.accessibility?this.raise(dt.DuplicateAccessibilityModifier,{at:s,modifier:o}):(a(s,o,o,"override"),a(s,o,o,"static"),a(s,o,o,"readonly"),e.accessibility=o):(Object.hasOwnProperty.call(e,o)?this.raise(dt.DuplicateModifier,{at:s,modifier:o}):(a(s,o,"static","readonly"),a(s,o,"static","override"),a(s,o,"override","readonly"),a(s,o,"abstract","override"),i(s,o,"declare","override"),i(s,o,"static","abstract")),e[o]=!0),null!=n&&n.includes(o)&&this.raise(dt.InvalidModifierOnTypeMember,{at:s,modifier:o})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}throw new Error("Unreachable")}tsParseList(e,t){const n=[];for(;!this.tsIsListTerminator(e);)n.push(t());return n}tsParseDelimitedList(e,t,n){return function(e){if(null==e)throw new Error(`Unexpected ${e} value.`);return e}(this.tsParseDelimitedListWorker(e,t,!0,n))}tsParseDelimitedListWorker(e,t,n,r){const a=[];let i=-1;for(;!this.tsIsListTerminator(e);){i=-1;const r=t();if(null==r)return;if(a.push(r),!this.eat(12)){if(this.tsIsListTerminator(e))break;return void(n&&this.expect(12))}i=this.state.lastTokStart}return r&&(r.value=i),a}tsParseBracketedList(e,t,n,r,a){r||(n?this.expect(0):this.expect(47));const i=this.tsParseDelimitedList(e,t,a);return n?this.expect(3):this.expect(48),i}tsParseImportType(){const e=this.startNode();return this.expect(83),this.expect(10),this.match(129)||this.raise(dt.UnsupportedImportTypeArgument,{at:this.state.startLoc}),e.argument=this.parseExprAtom(),this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName()),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(e=!0){let t=this.parseIdentifier(e);for(;this.eat(16);){const n=this.startNodeAtNode(t);n.left=t,n.right=this.parseIdentifier(e),t=this.finishNode(n,"TSQualifiedName")}return t}tsParseTypeReference(){const e=this.startNode();return e.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();const t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")}tsParseThisTypeNode(){const e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){const e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(){const e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsEatThenParseType(81),e.default=this.tsEatThenParseType(29),this.finishNode(e,"TSTypeParameter")}tsTryParseTypeParameters(){if(this.match(47))return this.tsParseTypeParameters()}tsParseTypeParameters(){const e=this.startNode();this.match(47)||this.match(138)?this.next():this.unexpected();const t={value:-1};return e.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this),!1,!0,t),0===e.params.length&&this.raise(dt.EmptyTypeParameters,{at:e}),-1!==t.value&&this.addExtra(e,"trailingComma",t.value),this.finishNode(e,"TSTypeParameterDeclaration")}tsTryNextParseConstantContext(){if(75!==this.lookahead().type)return null;this.next();const e=this.tsParseTypeReference();return e.typeParameters&&this.raise(dt.CannotFindName,{at:e.typeName,name:"const"}),e}tsFillSignature(e,t){const n=19===e;t.typeParameters=this.tsTryParseTypeParameters(),this.expect(10),t.parameters=this.tsParseBindingListForSignature(),(n||this.match(e))&&(t.typeAnnotation=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){return this.parseBindingList(11,41).map((e=>("Identifier"!==e.type&&"RestElement"!==e.type&&"ObjectPattern"!==e.type&&"ArrayPattern"!==e.type&&this.raise(dt.UnsupportedSignatureParameterKind,{at:e,type:e.type}),e)))}tsParseTypeMemberSemicolon(){this.eat(12)||this.isLineTerminator()||this.expect(13)}tsParseSignatureMember(e,t){return this.tsFillSignature(14,t),this.tsParseTypeMemberSemicolon(),this.finishNode(t,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),!!V(this.state.type)&&(this.next(),this.match(14))}tsTryParseIndexSignature(e){if(!this.match(0)||!this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this)))return;this.expect(0);const t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];const n=this.tsTryParseTypeAnnotation();return n&&(e.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);const n=e;if(this.match(10)||this.match(47)){t&&this.raise(dt.ReadonlyForMethodSignature,{at:e});const r=n;r.kind&&this.match(47)&&this.raise(dt.AccesorCannotHaveTypeParameters,{at:this.state.curPosition()}),this.tsFillSignature(14,r),this.tsParseTypeMemberSemicolon();const a="parameters",i="typeAnnotation";if("get"===r.kind)r[a].length>0&&(this.raise(h.BadGetterArity,{at:this.state.curPosition()}),this.isThisParam(r[a][0])&&this.raise(dt.AccesorCannotDeclareThisParameter,{at:this.state.curPosition()}));else if("set"===r.kind){if(1!==r[a].length)this.raise(h.BadSetterArity,{at:this.state.curPosition()});else{const e=r[a][0];this.isThisParam(e)&&this.raise(dt.AccesorCannotDeclareThisParameter,{at:this.state.curPosition()}),"Identifier"===e.type&&e.optional&&this.raise(dt.SetAccesorCannotHaveOptionalParameter,{at:this.state.curPosition()}),"RestElement"===e.type&&this.raise(dt.SetAccesorCannotHaveRestParameter,{at:this.state.curPosition()})}r[i]&&this.raise(dt.SetAccesorCannotHaveReturnType,{at:r[i]})}else r.kind="method";return this.finishNode(r,"TSMethodSignature")}{const e=n;t&&(e.readonly=!0);const r=this.tsTryParseTypeAnnotation();return r&&(e.typeAnnotation=r),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSPropertySignature")}}tsParseTypeMember(){const e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){const t=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(t,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({modified:e,allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]});return this.tsTryParseIndexSignature(e)||(this.parsePropertyName(e),e.computed||"Identifier"!==e.key.type||"get"!==e.key.name&&"set"!==e.key.name||!this.tsTokenCanFollowModifier()||(e.kind=e.key.name,this.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){const e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);const e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(118):(this.isContextual(118)&&this.next(),!!this.match(0)&&(this.next(),!!this.tsIsIdentifier()&&(this.next(),this.match(58))))}tsParseMappedTypeParameter(){const e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsExpectThenParseType(58),this.finishNode(e,"TSTypeParameter")}tsParseMappedType(){const e=this.startNode();return this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(118)):this.eatContextual(118)&&(e.readonly=!0),this.expect(0),e.typeParameter=this.tsParseMappedTypeParameter(),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){const e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1,n=null;return e.elementTypes.forEach((e=>{var r;let{type:a}=e;!t||"TSRestType"===a||"TSOptionalType"===a||"TSNamedTupleMember"===a&&e.optional||this.raise(dt.OptionalTypeBeforeRequired,{at:e}),t=t||"TSNamedTupleMember"===a&&e.optional||"TSOptionalType"===a,"TSRestType"===a&&(a=(e=e.typeAnnotation).type);const i="TSNamedTupleMember"===a;n=null!=(r=n)?r:i,n!==i&&this.raise(dt.MixedLabeledAndUnlabeledElements,{at:e})})),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){const{start:e,startLoc:t}=this.state,n=this.eat(21);let r=this.tsParseType();const a=this.eat(17);if(this.eat(14)){const e=this.startNodeAtNode(r);e.optional=a,"TSTypeReference"!==r.type||r.typeParameters||"Identifier"!==r.typeName.type?(this.raise(dt.InvalidTupleMemberLabel,{at:r}),e.label=r):e.label=r.typeName,e.elementType=this.tsParseType(),r=this.finishNode(e,"TSNamedTupleMember")}else if(a){const e=this.startNodeAtNode(r);e.typeAnnotation=r,r=this.finishNode(e,"TSOptionalType")}if(n){const n=this.startNodeAt(e,t);n.typeAnnotation=r,r=this.finishNode(n,"TSRestType")}return r}tsParseParenthesizedType(){const e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){const n=this.startNode();return"TSConstructorType"===e&&(n.abstract=!!t,t&&this.next(),this.next()),this.tsFillSignature(19,n),this.finishNode(n,e)}tsParseLiteralTypeNode(){const e=this.startNode();return e.literal=(()=>{switch(this.state.type){case 130:case 131:case 129:case 85:case 86:return this.parseExprAtom();default:throw this.unexpected()}})(),this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){const e=this.startNode();return e.literal=this.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){const e=this.tsParseThisTypeNode();return this.isContextual(113)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 129:case 130:case 131:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if("-"===this.state.value){const e=this.startNode(),t=this.lookahead();if(130!==t.type&&131!==t.type)throw this.unexpected();return e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{const{type:e}=this.state;if(V(e)||88===e||84===e){const t=88===e?"TSVoidKeyword":84===e?"TSNullKeyword":function(e){switch(e){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}(this.state.value);if(void 0!==t&&46!==this.lookaheadCharCode()){const e=this.startNode();return this.next(),this.finishNode(e,t)}return this.tsParseTypeReference()}}}throw this.unexpected()}tsParseArrayTypeOrHigher(){let e=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){const t=this.startNodeAtNode(e);t.elementType=e,this.expect(3),e=this.finishNode(t,"TSArrayType")}else{const t=this.startNodeAtNode(e);t.objectType=e,t.indexType=this.tsParseType(),this.expect(3),e=this.finishNode(t,"TSIndexedAccessType")}return e}tsParseTypeOperator(){const e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),"readonly"===t&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(dt.UnexpectedReadonly,{at:e})}}tsParseInferType(){const e=this.startNode();this.expectContextual(112);const t=this.startNode();return t.name=this.tsParseTypeParameterName(),e.typeParameter=this.finishNode(t,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseTypeOperatorOrHigher(){var e;return(e=this.state.type)>=117&&e<=119&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(112)?this.tsParseInferType():this.tsParseArrayTypeOrHigher()}tsParseUnionOrIntersectionType(e,t,n){const r=this.startNode(),a=this.eat(n),i=[];do{i.push(t())}while(this.eat(n));return 1!==i.length||a?(r.types=i,this.finishNode(r,e)):i[0]}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return!!this.match(47)||this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(V(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){const{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch(e){return!1}}if(this.match(0)){this.next();const{errors:e}=this.state,t=e.length;try{return this.parseBindingList(3,93,!0),e.length===t}catch(e){return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){if(this.next(),this.match(11)||this.match(21))return!0;if(this.tsSkipParameterStart()){if(this.match(14)||this.match(12)||this.match(17)||this.match(29))return!0;if(this.match(11)&&(this.next(),this.match(19)))return!0}return!1}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType((()=>{const t=this.startNode();this.expect(e);const n=this.startNode(),r=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(r&&this.match(78)){let e=this.tsParseThisTypeOrThisTypePredicate();return"TSThisType"===e.type?(n.parameterName=e,n.asserts=!0,n.typeAnnotation=null,e=this.finishNode(n,"TSTypePredicate")):(this.resetStartLocationFromNode(e,n),e.asserts=!0),t.typeAnnotation=e,this.finishNode(t,"TSTypeAnnotation")}const a=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!a)return r?(n.parameterName=this.parseIdentifier(),n.asserts=r,n.typeAnnotation=null,t.typeAnnotation=this.finishNode(n,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);const i=this.tsParseTypeAnnotation(!1);return n.parameterName=a,n.typeAnnotation=i,n.asserts=r,t.typeAnnotation=this.finishNode(n,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")}))}tsTryParseTypeOrTypePredicateAnnotation(){return this.match(14)?this.tsParseTypeOrTypePredicateAnnotation(14):void 0}tsTryParseTypeAnnotation(){return this.match(14)?this.tsParseTypeAnnotation():void 0}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){const e=this.parseIdentifier();if(this.isContextual(113)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(106!==this.state.type)return!1;const e=this.state.containsEsc;return this.next(),!(!V(this.state.type)&&!this.match(78)||(e&&this.raise(h.InvalidEscapedReservedWord,{at:this.state.lastTokStartLoc,reservedWord:"asserts"}),0))}tsParseTypeAnnotation(e=!0,t=this.startNode()){return this.tsInType((()=>{e&&this.expect(14),t.typeAnnotation=this.tsParseType()})),this.finishNode(t,"TSTypeAnnotation")}tsParseType(){ut(this.state.inType);const e=this.tsParseNonConditionalType();if(this.hasPrecedingLineBreak()||!this.eat(81))return e;const t=this.startNodeAtNode(e);return t.checkType=e,t.extendsType=this.tsParseNonConditionalType(),this.expect(17),t.trueType=this.tsParseType(),this.expect(14),t.falseType=this.tsParseType(),this.finishNode(t,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(120)&&77===this.lookahead().type}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(dt.ReservedTypeAssertion,{at:this.state.startLoc});const e=this.startNode(),t=this.tsTryNextParseConstantContext();return e.typeAnnotation=t||this.tsNextThenParseType(),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){const t=this.state.startLoc,n=this.tsParseDelimitedList("HeritageClauseElement",this.tsParseExpressionWithTypeArguments.bind(this));return n.length||this.raise(dt.EmptyHeritageClauseType,{at:t,token:e}),n}tsParseExpressionWithTypeArguments(){const e=this.startNode();return e.expression=this.tsParseEntityName(),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSExpressionWithTypeArguments")}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(125),t.declare&&(e.declare=!0),V(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(dt.MissingInterfaceName,{at:this.state.startLoc})),e.typeParameters=this.tsTryParseTypeParameters(),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));const n=this.startNode();return n.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(n,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,2),e.typeAnnotation=this.tsInType((()=>{if(e.typeParameters=this.tsTryParseTypeParameters(),this.expect(29),this.isContextual(111)&&16!==this.lookahead().type){const e=this.startNode();return this.next(),this.finishNode(e,"TSIntrinsicKeyword")}return this.tsParseType()})),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInNoContext(e){const t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}tsInType(e){const t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsEatThenParseType(e){return this.match(e)?this.tsNextThenParseType():void 0}tsExpectThenParseType(e){return this.tsDoThenParseType((()=>this.expect(e)))}tsNextThenParseType(){return this.tsDoThenParseType((()=>this.next()))}tsDoThenParseType(e){return this.tsInType((()=>(e(),this.tsParseType())))}tsParseEnumMember(){const e=this.startNode();return e.id=this.match(129)?this.parseExprAtom():this.parseIdentifier(!0),this.eat(29)&&(e.initializer=this.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,t={}){return t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(122),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?779:267),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseModuleBlock(){const e=this.startNode();return this.scope.enter(0),this.expect(5),this.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e,t=!1){if(e.id=this.parseIdentifier(),t||this.checkIdentifier(e.id,1024),this.eat(16)){const t=this.startNode();this.tsParseModuleOrNamespaceDeclaration(t,!0),e.body=t}else this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(109)?(e.global=!0,e.id=this.parseIdentifier()):this.match(129)?e.id=this.parseExprAtom():this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,t){e.isExport=t||!1,e.id=this.parseIdentifier(),this.checkIdentifier(e.id,9),this.expect(29);const n=this.tsParseModuleReference();return"type"===e.importKind&&"TSExternalModuleReference"!==n.type&&this.raise(dt.ImportAliasHasImportType,{at:n}),e.moduleReference=n,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(116)&&40===this.lookaheadCharCode()}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){const e=this.startNode();if(this.expectContextual(116),this.expect(10),!this.match(129))throw this.unexpected();return e.expression=this.parseExprAtom(),this.expect(11),this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){const t=this.state.clone(),n=e();return this.state=t,n}tsTryParseAndCatch(e){const t=this.tryParse((t=>e()||t()));if(!t.aborted&&t.node)return t.error&&(this.state=t.failState),t.node}tsTryParse(e){const t=this.state.clone(),n=e();return void 0!==n&&!1!==n?n:void(this.state=t)}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t,n=this.state.type;return this.isContextual(99)&&(n=74,t="let"),this.tsInAmbientContext((()=>{if(68===n)return e.declare=!0,this.parseFunctionStatement(e,!1,!0);if(80===n)return e.declare=!0,this.parseClass(e,!0,!1);if(122===n)return this.tsParseEnumDeclaration(e,{declare:!0});if(109===n)return this.tsParseAmbientExternalModuleDeclaration(e);if(75===n||74===n)return this.match(75)&&this.isLookaheadContextual("enum")?(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0})):(e.declare=!0,this.parseVarStatement(e,t||this.state.value,!0));if(125===n){const t=this.tsParseInterfaceDeclaration(e,{declare:!0});if(t)return t}return V(n)?this.tsParseDeclaration(e,this.state.value,!0):void 0}))}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0)}tsParseExpressionStatement(e,t){switch(t.name){case"declare":{const t=this.tsTryParseDeclare(e);if(t)return t.declare=!0,t;break}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);const n=e;return n.global=!0,n.id=t,n.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(n,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,t.name,!1)}}tsParseDeclaration(e,t,n){switch(t){case"abstract":if(this.tsCheckLineTerminator(n)&&(this.match(80)||V(this.state.type)))return this.tsParseAbstractDeclaration(e);break;case"module":if(this.tsCheckLineTerminator(n)){if(this.match(129))return this.tsParseAmbientExternalModuleDeclaration(e);if(V(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(n)&&V(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(n)&&V(this.state.type))return this.tsParseTypeAliasDeclaration(e)}}tsCheckLineTerminator(e){return e?!this.hasFollowingLineBreak()&&(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e,t){if(!this.match(47))return;const n=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;const r=this.tsTryParseAndCatch((()=>{const n=this.startNodeAt(e,t);return n.typeParameters=this.tsParseTypeParameters(),super.parseFunctionParams(n),n.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),n}));return this.state.maybeInArrowParameters=n,r?this.parseArrowExpression(r,null,!0):void 0}tsParseTypeArgumentsInExpression(){if(47===this.reScan_lt())return this.tsParseTypeArguments()}tsParseTypeArguments(){const e=this.startNode();return e.params=this.tsInType((()=>this.tsInNoContext((()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))))),0===e.params.length&&this.raise(dt.EmptyTypeArguments,{at:e}),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return(e=this.state.type)>=120&&e<=126;var e}isExportDefaultSpecifier(){return!this.tsIsDeclarationStart()&&super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){const n=this.state.start,r=this.state.startLoc;let a,i=!1,s=!1;if(void 0!==e){const t={};this.tsParseModifiers({modified:t,allowedModifiers:["public","private","protected","override","readonly"]}),a=t.accessibility,s=t.override,i=t.readonly,!1===e&&(a||i||s)&&this.raise(dt.UnexpectedParameterModifier,{at:r})}const o=this.parseMaybeDefault();this.parseAssignableListItemTypes(o);const l=this.parseMaybeDefault(o.start,o.loc.start,o);if(a||i||s){const e=this.startNodeAt(n,r);return t.length&&(e.decorators=t),a&&(e.accessibility=a),i&&(e.readonly=i),s&&(e.override=s),"Identifier"!==l.type&&"AssignmentPattern"!==l.type&&this.raise(dt.UnsupportedParameterPropertyKind,{at:e}),e.parameter=l,this.finishNode(e,"TSParameterProperty")}return t.length&&(o.decorators=t),l}isSimpleParameter(e){return"TSParameterProperty"===e.type&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}parseFunctionBodyAndFinish(e,t,n=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));const r="FunctionDeclaration"===t?"TSDeclareFunction":"ClassMethod"===t||"ClassPrivateMethod"===t?"TSDeclareMethod":void 0;r&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,r):"TSDeclareFunction"===r&&this.state.isAmbientContext&&(this.raise(dt.DeclareFunctionHasImplementation,{at:e}),e.declare)?super.parseFunctionBodyAndFinish(e,r,n):super.parseFunctionBodyAndFinish(e,t,n)}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(...arguments)}tsCheckForInvalidTypeCasts(e){e.forEach((e=>{"TSTypeCastExpression"===(null==e?void 0:e.type)&&this.raise(dt.UnexpectedTypeAnnotation,{at:e.typeAnnotation})}))}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(...e){const t=super.parseArrayLike(...e);return"ArrayExpression"===t.type&&this.tsCheckForInvalidTypeCasts(t.elements),t}parseSubscript(e,t,n,r,a){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();const r=this.startNodeAt(t,n);return r.expression=e,this.finishNode(r,"TSNonNullExpression")}let i=!1;if(this.match(18)&&60===this.lookaheadCharCode()){if(r)return a.stop=!0,e;a.optionalChainMember=i=!0,this.next()}if(this.match(47)||this.match(51)){let s;const o=this.tsTryParseAndCatch((()=>{if(!r&&this.atPossibleAsyncArrow(e)){const e=this.tsTryParseGenericAsyncArrowFunction(t,n);if(e)return e}const o=this.startNodeAt(t,n);o.callee=e;const l=this.tsParseTypeArgumentsInExpression();if(l){if(i&&!this.match(10)&&(s=this.state.curPosition(),this.unexpected()),!r&&this.eat(10))return o.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(o.arguments),o.typeParameters=l,a.optionalChainMember&&(o.optional=i),this.finishCallExpression(o,a.optionalChainMember);if(G(this.state.type)){const r=this.parseTaggedTemplateExpression(e,t,n,a);return r.typeParameters=l,r}}this.unexpected()}));if(s&&this.unexpected(s,10),o)return o}return super.parseSubscript(e,t,n,r,a)}parseNewArguments(e){if(this.match(47)||this.match(51)){const t=this.tsTryParseAndCatch((()=>{const e=this.tsParseTypeArgumentsInExpression();return this.match(10)||this.unexpected(),e}));t&&(e.typeParameters=t)}super.parseNewArguments(e)}parseExprOp(e,t,n,r){if($(58)>r&&!this.hasPrecedingLineBreak()&&this.isContextual(93)){const a=this.startNodeAt(t,n);a.expression=e;const i=this.tsTryNextParseConstantContext();return a.typeAnnotation=i||this.tsNextThenParseType(),this.finishNode(a,"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(a,t,n,r)}return super.parseExprOp(e,t,n,r)}checkReservedWord(e,t,n,r){this.state.isAmbientContext||super.checkReservedWord(e,t,n,r)}checkDuplicateExports(){}parseImport(e){if(e.importKind="value",V(this.state.type)||this.match(55)||this.match(5)){let t=this.lookahead();if(this.isContextual(126)&&12!==t.type&&97!==t.type&&29!==t.type&&(e.importKind="type",this.next(),t=this.lookahead()),V(this.state.type)&&29===t.type)return this.tsParseImportEqualsDeclaration(e)}const t=super.parseImport(e);return"type"===t.importKind&&t.specifiers.length>1&&"ImportDefaultSpecifier"===t.specifiers[0].type&&this.raise(dt.TypeImportCannotSpecifyDefaultAndNamed,{at:t}),t}parseExport(e){if(this.match(83))return this.next(),this.isContextual(126)&&61!==this.lookaheadCharCode()?(e.importKind="type",this.next()):e.importKind="value",this.tsParseImportEqualsDeclaration(e,!0);if(this.eat(29)){const t=e;return t.expression=this.parseExpression(),this.semicolon(),this.finishNode(t,"TSExportAssignment")}if(this.eatContextual(93)){const t=e;return this.expectContextual(124),t.id=this.parseIdentifier(),this.semicolon(),this.finishNode(t,"TSNamespaceExportDeclaration")}return this.isContextual(126)&&5===this.lookahead().type?(this.next(),e.exportKind="type"):e.exportKind="value",super.parseExport(e)}isAbstractClass(){return this.isContextual(120)&&80===this.lookahead().type}parseExportDefaultExpression(){if(this.isAbstractClass()){const e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0),e}if(this.match(125)){const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,n=!1){const{isAmbientContext:r}=this.state,a=super.parseVarStatement(e,t,n||r);if(!r)return a;for(const{id:e,init:n}of a.declarations)n&&("const"!==t||e.typeAnnotation?this.raise(dt.InitializerNotAllowedInAmbientContext,{at:n}):"StringLiteral"!==n.type&&"BooleanLiteral"!==n.type&&"NumericLiteral"!==n.type&&"BigIntLiteral"!==n.type&&("TemplateLiteral"!==n.type||n.expressions.length>0)&&!yt(n)&&this.raise(dt.ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference,{at:n}));return a}parseStatementContent(e,t){if(this.match(75)&&this.isLookaheadContextual("enum")){const e=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(e,{const:!0})}if(this.isContextual(122))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(125)){const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseStatementContent(e,t)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,t){return t.some((t=>ft(t)?e.accessibility===t:!!e[t]))}tsIsStartOfStaticBlocks(){return this.isContextual(104)&&123===this.lookaheadCharCode()}parseClassMember(e,t,n){const r=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({modified:t,allowedModifiers:r,stopOnStartOfClassStaticBlock:!0});const a=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,r)&&this.raise(dt.StaticBlockCannotHaveModifier,{at:this.state.curPosition()}),this.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,n,!!t.static)};t.declare?this.tsInAmbientContext(a):a()}parseClassMemberWithIsStatic(e,t,n,r){const a=this.tsTryParseIndexSignature(t);if(a)return e.body.push(a),t.abstract&&this.raise(dt.IndexSignatureHasAbstract,{at:t}),t.accessibility&&this.raise(dt.IndexSignatureHasAccessibility,{at:t,modifier:t.accessibility}),t.declare&&this.raise(dt.IndexSignatureHasDeclare,{at:t}),void(t.override&&this.raise(dt.IndexSignatureHasOverride,{at:t}));!this.state.inAbstractClass&&t.abstract&&this.raise(dt.NonAbstractClassHasAbstractMethod,{at:t}),t.override&&(n.hadSuperClass||this.raise(dt.OverrideNotInSubClass,{at:t})),super.parseClassMemberWithIsStatic(e,t,n,r)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(dt.ClassMethodHasReadonly,{at:e}),e.declare&&this.match(10)&&this.raise(dt.ClassMethodHasDeclare,{at:e})}parseExpressionStatement(e,t){return("Identifier"===t.type?this.tsParseExpressionStatement(e,t):void 0)||super.parseExpressionStatement(e,t)}shouldParseExportDeclaration(){return!!this.tsIsDeclarationStart()||super.shouldParseExportDeclaration()}parseConditional(e,t,n,r){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,n,r);const a=this.tryParse((()=>super.parseConditional(e,t,n)));return a.node?(a.error&&(this.state=a.failState),a.node):(a.error&&super.setOptionalParametersError(r,a.error),e)}parseParenItem(e,t,n){if(e=super.parseParenItem(e,t,n),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){const r=this.startNodeAt(t,n);return r.expression=e,r.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(r,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(121))return this.tsInAmbientContext((()=>this.parseExportDeclaration(e)));const t=this.state.start,n=this.state.startLoc,r=this.eatContextual(121);if(r&&(this.isContextual(121)||!this.shouldParseExportDeclaration()))throw this.raise(dt.ExpectedAmbientAfterExportDeclare,{at:this.state.startLoc});const a=V(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return a?(("TSInterfaceDeclaration"===a.type||"TSTypeAliasDeclaration"===a.type||r)&&(e.exportKind="type"),r&&(this.resetStartLocation(a,t,n),a.declare=!0),a):null}parseClassId(e,t,n){if((!t||n)&&this.isContextual(110))return;super.parseClassId(e,t,n,e.declare?1024:139);const r=this.tsTryParseTypeParameters();r&&(e.typeParameters=r)}parseClassPropertyAnnotation(e){!e.optional&&this.eat(35)&&(e.definite=!0);const t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&this.match(29)&&this.raise(dt.DeclareClassFieldHasInitializer,{at:this.state.startLoc}),e.abstract&&this.match(29)){const{key:t}=e;this.raise(dt.AbstractPropertyHasInitializer,{at:this.state.startLoc,propertyName:"Identifier"!==t.type||e.computed?`[${this.input.slice(t.start,t.end)}]`:t.name})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(dt.PrivateElementHasAbstract,{at:e}),e.accessibility&&this.raise(dt.PrivateElementHasAccessibility,{at:e,modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}pushClassMethod(e,t,n,r,a,i){const s=this.tsTryParseTypeParameters();s&&a&&this.raise(dt.ConstructorHasTypeParameters,{at:s});const{declare:o=!1,kind:l}=t;!o||"get"!==l&&"set"!==l||this.raise(dt.DeclareAccessor,{at:t,kind:l}),s&&(t.typeParameters=s),super.pushClassMethod(e,t,n,r,a,i)}pushClassPrivateMethod(e,t,n,r){const a=this.tsTryParseTypeParameters();a&&(t.typeParameters=a),super.pushClassPrivateMethod(e,t,n,r)}declareClassPrivateMethodInScope(e,t){"TSDeclareMethod"!==e.type&&("MethodDefinition"!==e.type||e.value.body)&&super.declareClassPrivateMethodInScope(e,t)}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(110)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,...t){const n=this.tsTryParseTypeParameters();n&&(e.typeParameters=n),super.parseObjPropValue(e,...t)}parseFunctionParams(e,t){const n=this.tsTryParseTypeParameters();n&&(e.typeParameters=n),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),"Identifier"===e.id.type&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);const n=this.tsTryParseTypeAnnotation();n&&(e.id.typeAnnotation=n,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(...e){var t,n,r,a,i,s,o;let l,p,c,u;if(this.hasPlugin("jsx")&&(this.match(138)||this.match(47))){if(l=this.state.clone(),p=this.tryParse((()=>super.parseMaybeAssign(...e)),l),!p.error)return p.node;const{context:t}=this.state,n=t[t.length-1];n!==P.j_oTag&&n!==P.j_expr||t.pop()}if(!(null!=(t=p)&&t.error||this.match(47)))return super.parseMaybeAssign(...e);l=l||this.state.clone();const d=this.tryParse((t=>{var n,r,a;u=this.tsParseTypeParameters();const i=super.parseMaybeAssign(...e);return("ArrowFunctionExpression"!==i.type||null!=(n=i.extra)&&n.parenthesized)&&t(),0!==(null==(r=u)?void 0:r.params.length)&&this.resetStartLocationFromNode(i,u),i.typeParameters=u,!this.hasPlugin("jsx")||1!==i.typeParameters.params.length||null!=(a=i.typeParameters.extra)&&a.trailingComma||i.typeParameters.params[0].constraint,i}),l);if(!d.error&&!d.aborted)return u&&this.reportReservedArrowTypeParam(u),d.node;if(!p&&(ut(!this.hasPlugin("jsx")),c=this.tryParse((()=>super.parseMaybeAssign(...e)),l),!c.error))return c.node;if(null!=(n=p)&&n.node)return this.state=p.failState,p.node;if(d.node)return this.state=d.failState,u&&this.reportReservedArrowTypeParam(u),d.node;if(null!=(r=c)&&r.node)return this.state=c.failState,c.node;if(null!=(a=p)&&a.thrown)throw p.error;if(d.thrown)throw d.error;if(null!=(i=c)&&i.thrown)throw c.error;throw(null==(s=p)?void 0:s.error)||d.error||(null==(o=c)?void 0:o.error)}reportReservedArrowTypeParam(e){var t;1!==e.params.length||null!=(t=e.extra)&&t.trailingComma||!this.getPluginOption("typescript","disallowAmbiguousJSXLike")||this.raise(dt.ReservedArrowTypeParam,{at:e})}parseMaybeUnary(e){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e)}parseArrow(e){if(this.match(14)){const t=this.tryParse((e=>{const t=this.tsParseTypeOrTypePredicateAnnotation(14);return!this.canInsertSemicolon()&&this.match(19)||e(),t}));if(t.aborted)return;t.thrown||(t.error&&(this.state=t.failState),e.returnType=t.node)}return super.parseArrow(e)}parseAssignableListItemTypes(e){this.eat(17)&&("Identifier"===e.type||this.state.isAmbientContext||this.state.inType||this.raise(dt.PatternIsOptional,{at:e}),e.optional=!0);const t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t),this.resetEndLocation(e),e}isAssignable(e,t){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,t);case"TSParameterProperty":return!0;default:return super.isAssignable(e,t)}}toAssignable(e,t=!1){switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,t);break;case"TSAsExpression":case"TSNonNullExpression":case"TSTypeAssertion":t?this.expressionScope.recordArrowParemeterBindingError(dt.UnexpectedTypeCastInParameter,{at:e}):this.raise(dt.UnexpectedTypeCastInParameter,{at:e}),this.toAssignable(e.expression,t);break;case"AssignmentExpression":t||"TSTypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,t)}}toAssignableParenthesizedExpression(e,t){switch(e.expression.type){case"TSAsExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,t);break;default:super.toAssignable(e,t)}}checkToRestConversion(e,t){switch(e.type){case"TSAsExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,t)}}isValidLVal(e,t,n){return r={TSTypeCastExpression:!0,TSParameterProperty:"parameter",TSNonNullExpression:"expression",TSAsExpression:(n!==ye||!t)&&["expression",!0],TSTypeAssertion:(n!==ye||!t)&&["expression",!0]},a=e,Object.hasOwnProperty.call(r,a)&&r[a]||super.isValidLVal(e,t,n);var r,a}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e){if(this.match(47)||this.match(51)){const t=this.tsParseTypeArgumentsInExpression();if(this.match(10)){const n=super.parseMaybeDecoratorArguments(e);return n.typeParameters=t,n}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(...e){const t=super.parseMaybeDefault(...e);return"AssignmentPattern"===t.type&&t.typeAnnotation&&t.right.start<t.typeAnnotation.start&&this.raise(dt.TypeAnnotationAfterAssign,{at:t.typeAnnotation}),t}getTokenFromCode(e){if(this.state.inType){if(62===e)return this.finishOp(48,1);if(60===e)return this.finishOp(47,1)}return super.getTokenFromCode(e)}reScan_lt_gt(){const{type:e}=this.state;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){const{type:e}=this.state;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableList(e){for(let t=0;t<e.length;t++){const n=e[t];"TSTypeCastExpression"===(null==n?void 0:n.type)&&(e[t]=this.typeCastToParameter(n))}super.toAssignableList(...arguments)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}shouldParseArrow(e){return this.match(14)?e.every((e=>this.isAssignable(e,!0))):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){const t=this.tsTryParseAndCatch((()=>this.tsParseTypeArgumentsInExpression()));t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){const t=super.getGetterSetterExpectedParamCount(e),n=this.getObjectOrClassMethodParams(e)[0];return n&&this.isThisParam(n)?t+1:t}parseCatchClauseParam(){const e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){const t=this.state.isAmbientContext;this.state.isAmbientContext=!0;try{return e()}finally{this.state.isAmbientContext=t}}parseClass(e,...t){const n=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,...t)}finally{this.state.inAbstractClass=n}}tsParseAbstractDeclaration(e){if(this.match(80))return e.abstract=!0,this.parseClass(e,!0,!1);if(this.isContextual(125)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(dt.NonClassMethodPropertyHasAbstractModifer,{at:e}),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(...e){const t=super.parseMethod(...e);if(t.abstract&&(this.hasPlugin("estree")?t.value.body:t.body)){const{key:e}=t;this.raise(dt.AbstractMethodHasImplementation,{at:t,methodName:"Identifier"!==e.type||t.computed?`[${this.input.slice(e.start,e.end)}]`:e.name})}return t}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,t,n,r){return!t&&r?(this.parseTypeOnlyImportExportSpecifier(e,!1,n),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,n,r))}parseImportSpecifier(e,t,n,r){return!t&&r?(this.parseTypeOnlyImportExportSpecifier(e,!0,n),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,n,r))}parseTypeOnlyImportExportSpecifier(e,t,n){const r=t?"imported":"local",a=t?"local":"exported";let i,s=e[r],o=!1,l=!0;const p=s.loc.start;if(this.isContextual(93)){const e=this.parseIdentifier();if(this.isContextual(93)){const n=this.parseIdentifier();Y(this.state.type)?(o=!0,s=e,i=t?this.parseIdentifier():this.parseModuleExportName(),l=!1):(i=n,l=!1)}else Y(this.state.type)?(l=!1,i=t?this.parseIdentifier():this.parseModuleExportName()):(o=!0,s=e)}else Y(this.state.type)&&(o=!0,t?(s=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(s.name,s.loc.start,!0,!0)):s=this.parseModuleExportName());o&&n&&this.raise(t?dt.TypeModifierIsUsedInTypeImports:dt.TypeModifierIsUsedInTypeExports,{at:p}),e[r]=s,e[a]=i,e[t?"importKind":"exportKind"]=o?"type":"value",l&&this.eatContextual(93)&&(e[a]=t?this.parseIdentifier():this.parseModuleExportName()),e[a]||(e[a]=He(e[r])),t&&this.checkIdentifier(e[a],9)}},v8intrinsic:e=>class extends e{parseV8Intrinsic(){if(this.match(54)){const e=this.state.startLoc,t=this.startNode();if(this.next(),V(this.state.type)){const e=this.parseIdentifierName(this.state.start),n=this.createIdentifier(t,e);if(n.type="V8IntrinsicIdentifier",this.match(10))return n}this.unexpected(e)}}parseExprAtom(){return this.parseV8Intrinsic()||super.parseExprAtom(...arguments)}},placeholders:e=>class extends e{parsePlaceholder(e){if(this.match(140)){const t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(140),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){const n=!(!e.expectedNode||"Placeholder"!==e.type);return e.expectedNode=t,n?e:this.finishNode(e,"Placeholder")}getTokenFromCode(e){return 37===e&&37===this.input.charCodeAt(this.state.pos+1)?this.finishOp(140,2):super.getTokenFromCode(...arguments)}parseExprAtom(){return this.parsePlaceholder("Expression")||super.parseExprAtom(...arguments)}parseIdentifier(){return this.parsePlaceholder("Identifier")||super.parseIdentifier(...arguments)}checkReservedWord(e){void 0!==e&&super.checkReservedWord(...arguments)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom(...arguments)}isValidLVal(e,...t){return"Placeholder"===e||super.isValidLVal(e,...t)}toAssignable(e){e&&"Placeholder"===e.type&&"Expression"===e.expectedNode?e.expectedNode="Pattern":super.toAssignable(...arguments)}isLet(e){return!!super.isLet(e)||!!this.isContextual(99)&&(!e&&140===this.lookahead().type)}verifyBreakContinue(e){e.label&&"Placeholder"===e.label.type||super.verifyBreakContinue(...arguments)}parseExpressionStatement(e,t){if("Placeholder"!==t.type||t.extra&&t.extra.parenthesized)return super.parseExpressionStatement(...arguments);if(this.match(14)){const n=e;return n.label=this.finishPlaceholder(t,"Identifier"),this.next(),n.body=this.parseStatement("label"),this.finishNode(n,"LabeledStatement")}return this.semicolon(),e.name=t.name,this.finishPlaceholder(e,"Statement")}parseBlock(){return this.parsePlaceholder("BlockStatement")||super.parseBlock(...arguments)}parseFunctionId(){return this.parsePlaceholder("Identifier")||super.parseFunctionId(...arguments)}parseClass(e,t,n){const r=t?"ClassDeclaration":"ClassExpression";this.next(),this.takeDecorators(e);const a=this.state.strict,i=this.parsePlaceholder("Identifier");if(i){if(!(this.match(81)||this.match(140)||this.match(5))){if(n||!t)return e.id=null,e.body=this.finishPlaceholder(i,"ClassBody"),this.finishNode(e,r);throw this.raise(ht.ClassNameIsRequired,{at:this.state.startLoc})}e.id=i}else this.parseClassId(e,t,n);return this.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||this.parseClassBody(!!e.superClass,a),this.finishNode(e,r)}parseExport(e){const t=this.parsePlaceholder("Identifier");if(!t)return super.parseExport(...arguments);if(!this.isContextual(97)&&!this.match(12))return e.specifiers=[],e.source=null,e.declaration=this.finishPlaceholder(t,"Declaration"),this.finishNode(e,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");const n=this.startNode();return n.exported=t,e.specifiers=[this.finishNode(n,"ExportDefaultSpecifier")],super.parseExport(e)}isExportDefaultSpecifier(){if(this.match(65)){const e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(q(140),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e){return!!(e.specifiers&&e.specifiers.length>0)||super.maybeParseExportDefaultSpecifier(...arguments)}checkExport(e){const{specifiers:t}=e;null!=t&&t.length&&(e.specifiers=t.filter((e=>"Placeholder"===e.exported.type))),super.checkExport(e),e.specifiers=t}parseImport(e){const t=this.parsePlaceholder("Identifier");if(!t)return super.parseImport(...arguments);if(e.specifiers=[],!this.isContextual(97)&&!this.match(12))return e.source=this.finishPlaceholder(t,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");const n=this.startNodeAtNode(t);return n.local=t,this.finishNode(n,"ImportDefaultSpecifier"),e.specifiers.push(n),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),this.expectContextual(97),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource(...arguments)}assertNoSpace(){this.state.start>this.state.lastTokEndLoc.index&&this.raise(ht.UnexpectedSpace,{at:this.state.lastTokEndLoc})}}},gt=Object.keys(xt),At={sourceType:"script",sourceFilename:void 0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0},vt=e=>"ParenthesizedExpression"===e.type?vt(e.expression):e;class Ot extends Qe{toAssignable(e,t=!1){var n,r;let a;switch(("ParenthesizedExpression"===e.type||null!=(n=e.extra)&&n.parenthesized)&&(a=vt(e),t?"Identifier"===a.type?this.expressionScope.recordArrowParemeterBindingError(h.InvalidParenthesizedAssignment,{at:e}):"MemberExpression"!==a.type&&this.raise(h.InvalidParenthesizedAssignment,{at:e}):this.raise(h.InvalidParenthesizedAssignment,{at:e})),e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern";for(let n=0,r=e.properties.length,a=r-1;n<r;n++){var i;const r=e.properties[n],s=n===a;this.toAssignableObjectExpressionProp(r,s,t),s&&"RestElement"===r.type&&null!=(i=e.extra)&&i.trailingCommaLoc&&this.raise(h.RestTrailingComma,{at:e.extra.trailingCommaLoc})}break;case"ObjectProperty":{const{key:n,value:r}=e;this.isPrivateName(n)&&this.classScope.usePrivateName(this.getPrivateNameSV(n),n.loc.start),this.toAssignable(r,t);break}case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":e.type="ArrayPattern",this.toAssignableList(e.elements,null==(r=e.extra)?void 0:r.trailingCommaLoc,t);break;case"AssignmentExpression":"="!==e.operator&&this.raise(h.MissingEqInAssignment,{at:e.left.loc.end}),e.type="AssignmentPattern",delete e.operator,this.toAssignable(e.left,t);break;case"ParenthesizedExpression":this.toAssignable(a,t)}}toAssignableObjectExpressionProp(e,t,n){if("ObjectMethod"===e.type)this.raise("get"===e.kind||"set"===e.kind?h.PatternHasAccessor:h.PatternHasMethod,{at:e.key});else if("SpreadElement"===e.type){e.type="RestElement";const r=e.argument;this.checkToRestConversion(r,!1),this.toAssignable(r,n),t||this.raise(h.RestTrailingComma,{at:e})}else this.toAssignable(e,n)}toAssignableList(e,t,n){const r=e.length-1;for(let a=0;a<=r;a++){const i=e[a];if(i){if("SpreadElement"===i.type){i.type="RestElement";const e=i.argument;this.checkToRestConversion(e,!0),this.toAssignable(e,n)}else this.toAssignable(i,n);"RestElement"===i.type&&(a<r?this.raise(h.RestTrailingComma,{at:i}):t&&this.raise(h.RestTrailingComma,{at:t}))}}}isAssignable(e,t){switch(e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{const t=e.properties.length-1;return e.properties.every(((e,n)=>"ObjectMethod"!==e.type&&(n===t||"SpreadElement"!==e.type)&&this.isAssignable(e)))}case"ObjectProperty":return this.isAssignable(e.value);case"SpreadElement":return this.isAssignable(e.argument);case"ArrayExpression":return e.elements.every((e=>null===e||this.isAssignable(e)));case"AssignmentExpression":return"="===e.operator;case"ParenthesizedExpression":return this.isAssignable(e.expression);case"MemberExpression":case"OptionalMemberExpression":return!t;default:return!1}}toReferencedList(e,t){return e}toReferencedListDeep(e,t){this.toReferencedList(e,t);for(const t of e)"ArrayExpression"===(null==t?void 0:t.type)&&this.toReferencedListDeep(t.elements)}parseSpread(e,t){const n=this.startNode();return this.next(),n.argument=this.parseMaybeAssignAllowIn(e,void 0,t),this.finishNode(n,"SpreadElement")}parseRestBinding(){const e=this.startNode();return this.next(),e.argument=this.parseBindingAtom(),this.finishNode(e,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{const e=this.startNode();return this.next(),e.elements=this.parseBindingList(3,93,!0),this.finishNode(e,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(e,t,n,r){const a=[];let i=!0;for(;!this.eat(e);)if(i?i=!1:this.expect(12),n&&this.match(12))a.push(null);else{if(this.eat(e))break;if(this.match(21)){if(a.push(this.parseAssignableListItemTypes(this.parseRestBinding())),!this.checkCommaAfterRest(t)){this.expect(e);break}}else{const e=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(h.UnsupportedParameterDecorator,{at:this.state.startLoc});this.match(26);)e.push(this.parseDecorator());a.push(this.parseAssignableListItem(r,e))}}return a}parseBindingRestProperty(e){return this.next(),e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,"RestElement")}parseBindingProperty(){const e=this.startNode(),{type:t,start:n,startLoc:r}=this.state;return 21===t?this.parseBindingRestProperty(e):(134===t?(this.expectPlugin("destructuringPrivate",r),this.classScope.usePrivateName(this.state.value,r),e.key=this.parsePrivateName()):this.parsePropertyName(e),e.method=!1,this.parseObjPropValue(e,n,r,!1,!1,!0,!1),e)}parseAssignableListItem(e,t){const n=this.parseMaybeDefault();this.parseAssignableListItemTypes(n);const r=this.parseMaybeDefault(n.start,n.loc.start,n);return t.length&&(n.decorators=t),r}parseAssignableListItemTypes(e){return e}parseMaybeDefault(e,t,n){var r,a,i;if(t=null!=(r=t)?r:this.state.startLoc,e=null!=(a=e)?a:this.state.start,n=null!=(i=n)?i:this.parseBindingAtom(),!this.eat(29))return n;const s=this.startNodeAt(e,t);return s.left=n,s.right=this.parseMaybeAssignAllowIn(),this.finishNode(s,"AssignmentPattern")}isValidLVal(e,t,n){return r={AssignmentPattern:"left",RestElement:"argument",ObjectProperty:"value",ParenthesizedExpression:"expression",ArrayPattern:"elements",ObjectPattern:"properties"},a=e,Object.hasOwnProperty.call(r,a)&&r[a];var r,a}checkLVal(e,{in:t,binding:n=64,checkClashes:r=!1,strictModeChanged:a=!1,allowingSloppyLetBinding:i=!(8&n),hasParenthesizedAncestor:s=!1}){var o;const l=e.type;if(this.isObjectMethod(e))return;if("MemberExpression"===l)return void(n!==ye&&this.raise(h.InvalidPropertyBindingPattern,{at:e}));if("Identifier"===e.type){this.checkIdentifier(e,n,a,i);const{name:t}=e;return void(r&&(r.has(t)?this.raise(h.ParamDupe,{at:e}):r.add(t)))}const p=this.isValidLVal(e.type,!(s||null!=(o=e.extra)&&o.parenthesized)&&"AssignmentExpression"===t.type,n);if(!0===p)return;if(!1===p){const r=n===ye?h.InvalidLhs:h.InvalidLhsBinding;return void this.raise(r,{at:e,ancestor:"UpdateExpression"===t.type?{type:"UpdateExpression",prefix:t.prefix}:{type:t.type}})}const[c,u]=Array.isArray(p)?p:[p,"ParenthesizedExpression"===l],d="ArrayPattern"===e.type||"ObjectPattern"===e.type||"ParenthesizedExpression"===e.type?e:t;for(const t of[].concat(e[c]))t&&this.checkLVal(t,{in:d,binding:n,checkClashes:r,allowingSloppyLetBinding:i,strictModeChanged:a,hasParenthesizedAncestor:u})}checkIdentifier(e,t,n=!1,r=!(8&t)){this.state.strict&&(n?de(e.name,this.inModule):ue(e.name))&&(t===ye?this.raise(h.StrictEvalArguments,{at:e,referenceName:e.name}):this.raise(h.StrictEvalArgumentsBinding,{at:e,bindingName:e.name})),r||"let"!==e.name||this.raise(h.LetInLexicalBinding,{at:e}),t&ye||this.declareNameFromIdentifier(e,t)}declareNameFromIdentifier(e,t){this.scope.declareName(e.name,t,e.loc.start)}checkToRestConversion(e,t){switch(e.type){case"ParenthesizedExpression":this.checkToRestConversion(e.expression,t);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(t)break;default:this.raise(h.InvalidRestAssignmentPattern,{at:e})}}checkCommaAfterRest(e){return!!this.match(12)&&(this.raise(this.lookaheadCharCode()===e?h.RestTrailingComma:h.ElementAfterRest,{at:this.state.startLoc}),!0)}}class It extends Ot{checkProto(e,t,n,r){if("SpreadElement"===e.type||this.isObjectMethod(e)||e.computed||e.shorthand)return;const a=e.key;if("__proto__"===("Identifier"===a.type?a.name:a.value)){if(t)return void this.raise(h.RecordNoProto,{at:a});n.used&&(r?null===r.doubleProtoLoc&&(r.doubleProtoLoc=a.loc.start):this.raise(h.DuplicateProto,{at:a})),n.used=!0}}shouldExitDescending(e,t){return"ArrowFunctionExpression"===e.type&&e.start===t}getExpression(){this.enterInitialScopes(),this.nextToken();const e=this.parseExpression();return this.match(135)||this.unexpected(),this.finalizeRemainingComments(),e.comments=this.state.comments,e.errors=this.state.errors,this.options.tokens&&(e.tokens=this.tokens),e}parseExpression(e,t){return e?this.disallowInAnd((()=>this.parseExpressionBase(t))):this.allowInAnd((()=>this.parseExpressionBase(t)))}parseExpressionBase(e){const t=this.state.start,n=this.state.startLoc,r=this.parseMaybeAssign(e);if(this.match(12)){const a=this.startNodeAt(t,n);for(a.expressions=[r];this.eat(12);)a.expressions.push(this.parseMaybeAssign(e));return this.toReferencedList(a.expressions),this.finishNode(a,"SequenceExpression")}return r}parseMaybeAssignDisallowIn(e,t){return this.disallowInAnd((()=>this.parseMaybeAssign(e,t)))}parseMaybeAssignAllowIn(e,t){return this.allowInAnd((()=>this.parseMaybeAssign(e,t)))}setOptionalParametersError(e,t){var n;e.optionalParametersLoc=null!=(n=null==t?void 0:t.loc)?n:this.state.startLoc}parseMaybeAssign(e,t){const n=this.state.start,r=this.state.startLoc;if(this.isContextual(105)&&this.prodParam.hasYield){let e=this.parseYield();return t&&(e=t.call(this,e,n,r)),e}let a;e?a=!1:(e=new $e,a=!0);const{type:i}=this.state;(10===i||V(i))&&(this.state.potentialArrowAt=this.state.start);let s=this.parseMaybeConditional(e);if(t&&(s=t.call(this,s,n,r)),(o=this.state.type)>=29&&o<=33){const t=this.startNodeAt(n,r),a=this.state.value;return t.operator=a,this.match(29)?(this.toAssignable(s,!0),t.left=s,null!=e.doubleProtoLoc&&e.doubleProtoLoc.index>=n&&(e.doubleProtoLoc=null),null!=e.shorthandAssignLoc&&e.shorthandAssignLoc.index>=n&&(e.shorthandAssignLoc=null),null!=e.privateKeyLoc&&e.privateKeyLoc.index>=n&&(this.checkDestructuringPrivate(e),e.privateKeyLoc=null)):t.left=s,this.next(),t.right=this.parseMaybeAssign(),this.checkLVal(s,{in:this.finishNode(t,"AssignmentExpression")}),t}var o;return a&&this.checkExpressionErrors(e,!0),s}parseMaybeConditional(e){const t=this.state.start,n=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseExprOps(e);return this.shouldExitDescending(a,r)?a:this.parseConditional(a,t,n,e)}parseConditional(e,t,n,r){if(this.eat(17)){const r=this.startNodeAt(t,n);return r.test=e,r.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),r.alternate=this.parseMaybeAssign(),this.finishNode(r,"ConditionalExpression")}return e}parseMaybeUnaryOrPrivate(e){return this.match(134)?this.parsePrivateName():this.parseMaybeUnary(e)}parseExprOps(e){const t=this.state.start,n=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseMaybeUnaryOrPrivate(e);return this.shouldExitDescending(a,r)?a:this.parseExprOp(a,t,n,-1)}parseExprOp(e,t,n,r){if(this.isPrivateName(e)){const t=this.getPrivateNameSV(e);(r>=$(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(h.PrivateInExpectedIn,{at:e,identifierName:t}),this.classScope.usePrivateName(t,e.loc.start)}const a=this.state.type;if((i=a)>=39&&i<=59&&(this.prodParam.hasIn||!this.match(58))){let i=$(a);if(i>r){if(39===a){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,n)}const s=this.startNodeAt(t,n);s.left=e,s.operator=this.state.value;const o=41===a||42===a,l=40===a;if(l&&(i=$(42)),this.next(),39===a&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&96===this.state.type&&this.prodParam.hasAwait)throw this.raise(h.UnexpectedAwaitAfterPipelineBody,{at:this.state.startLoc});s.right=this.parseExprOpRightExpr(a,i),this.finishNode(s,o||l?"LogicalExpression":"BinaryExpression");const p=this.state.type;if(l&&(41===p||42===p)||o&&40===p)throw this.raise(h.MixingCoalesceWithLogical,{at:this.state.startLoc});return this.parseExprOp(s,t,n,r)}}var i;return e}parseExprOpRightExpr(e,t){const n=this.state.start,r=this.state.startLoc;if(39===e)switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext((()=>this.parseHackPipeBody()));case"smart":return this.withTopicBindingContext((()=>{if(this.prodParam.hasYield&&this.isContextual(105))throw this.raise(h.PipeBodyIsTighter,{at:this.state.startLoc});return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e,t),n,r)}));case"fsharp":return this.withSoloAwaitPermittingContext((()=>this.parseFSharpPipelineBody(t)))}return this.parseExprOpBaseRightExpr(e,t)}parseExprOpBaseRightExpr(e,t){const n=this.state.start,r=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),n,r,57===e?t-1:t)}parseHackPipeBody(){var e;const{startLoc:t}=this.state,n=this.parseMaybeAssign();return!u.has(n.type)||null!=(e=n.extra)&&e.parenthesized||this.raise(h.PipeUnparenthesizedBody,{at:t,type:n.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(h.PipeTopicUnused,{at:t}),n}checkExponentialAfterUnary(e){this.match(57)&&this.raise(h.UnexpectedTokenUnaryExponentiation,{at:e.argument})}parseMaybeUnary(e,t){const n=this.state.start,r=this.state.startLoc,a=this.isContextual(96);if(a&&this.isAwaitAllowed()){this.next();const e=this.parseAwait(n,r);return t||this.checkExponentialAfterUnary(e),e}const i=this.match(34),s=this.startNode();if(o=this.state.type,B[o]){s.operator=this.state.value,s.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");const n=this.match(89);if(this.next(),s.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&n){const e=s.argument;"Identifier"===e.type?this.raise(h.StrictDelete,{at:s}):this.hasPropertyAsPrivateName(e)&&this.raise(h.DeletePrivateField,{at:s})}if(!i)return t||this.checkExponentialAfterUnary(s),this.finishNode(s,"UnaryExpression")}var o;const l=this.parseUpdate(s,i,e);if(a){const{type:e}=this.state;if((this.hasPlugin("v8intrinsic")?X(e):X(e)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(h.AwaitNotInAsyncContext,{at:r}),this.parseAwait(n,r)}return l}parseUpdate(e,t,n){if(t)return this.checkLVal(e.argument,{in:this.finishNode(e,"UpdateExpression")}),e;const r=this.state.start,a=this.state.startLoc;let i=this.parseExprSubscripts(n);if(this.checkExpressionErrors(n,!1))return i;for(;34===this.state.type&&!this.canInsertSemicolon();){const e=this.startNodeAt(r,a);e.operator=this.state.value,e.prefix=!1,e.argument=i,this.next(),this.checkLVal(i,{in:i=this.finishNode(e,"UpdateExpression")})}return i}parseExprSubscripts(e){const t=this.state.start,n=this.state.startLoc,r=this.state.potentialArrowAt,a=this.parseExprAtom(e);return this.shouldExitDescending(a,r)?a:this.parseSubscripts(a,t,n)}parseSubscripts(e,t,n,r){const a={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(e),stop:!1};do{e=this.parseSubscript(e,t,n,r,a),a.maybeAsyncArrow=!1}while(!a.stop);return e}parseSubscript(e,t,n,r,a){const{type:i}=this.state;if(!r&&15===i)return this.parseBind(e,t,n,r,a);if(G(i))return this.parseTaggedTemplateExpression(e,t,n,a);let s=!1;if(18===i){if(r&&40===this.lookaheadCharCode())return a.stop=!0,e;a.optionalChainMember=s=!0,this.next()}if(!r&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,t,n,a,s);{const r=this.eat(0);return r||s||this.eat(16)?this.parseMember(e,t,n,a,r,s):(a.stop=!0,e)}}parseMember(e,t,n,r,a,i){const s=this.startNodeAt(t,n);return s.object=e,s.computed=a,a?(s.property=this.parseExpression(),this.expect(3)):this.match(134)?("Super"===e.type&&this.raise(h.SuperPrivateField,{at:n}),this.classScope.usePrivateName(this.state.value,this.state.startLoc),s.property=this.parsePrivateName()):s.property=this.parseIdentifier(!0),r.optionalChainMember?(s.optional=i,this.finishNode(s,"OptionalMemberExpression")):this.finishNode(s,"MemberExpression")}parseBind(e,t,n,r,a){const i=this.startNodeAt(t,n);return i.object=e,this.next(),i.callee=this.parseNoCallExpr(),a.stop=!0,this.parseSubscripts(this.finishNode(i,"BindExpression"),t,n,r)}parseCoverCallAndAsyncArrowHead(e,t,n,r,a){const i=this.state.maybeInArrowParameters;let s=null;this.state.maybeInArrowParameters=!0,this.next();let o=this.startNodeAt(t,n);o.callee=e;const{maybeAsyncArrow:l,optionalChainMember:p}=r;return l&&(this.expressionScope.enter(new Ye(2)),s=new $e),p&&(o.optional=a),o.arguments=a?this.parseCallExpressionArguments(11):this.parseCallExpressionArguments(11,"Import"===e.type,"Super"!==e.type,o,s),this.finishCallExpression(o,p),l&&this.shouldParseAsyncArrow()&&!a?(r.stop=!0,this.checkDestructuringPrivate(s),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),o=this.parseAsyncArrowFromCallExpression(this.startNodeAt(t,n),o)):(l&&(this.checkExpressionErrors(s,!0),this.expressionScope.exit()),this.toReferencedArguments(o)),this.state.maybeInArrowParameters=i,o}toReferencedArguments(e,t){this.toReferencedListDeep(e.arguments,t)}parseTaggedTemplateExpression(e,t,n,r){const a=this.startNodeAt(t,n);return a.tag=e,a.quasi=this.parseTemplate(!0),r.optionalChainMember&&this.raise(h.OptionalChainingNoTemplate,{at:n}),this.finishNode(a,"TaggedTemplateExpression")}atPossibleAsyncArrow(e){return"Identifier"===e.type&&"async"===e.name&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start==5&&e.start===this.state.potentialArrowAt}finishCallExpression(e,t){if("Import"===e.callee.type)if(2===e.arguments.length&&(this.hasPlugin("moduleAttributes")||this.expectPlugin("importAssertions")),0===e.arguments.length||e.arguments.length>2)this.raise(h.ImportCallArity,{at:e,maxArgumentCount:this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(const t of e.arguments)"SpreadElement"===t.type&&this.raise(h.ImportCallSpreadArgument,{at:t});return this.finishNode(e,t?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(e,t,n,r,a){const i=[];let s=!0;const o=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){!t||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")||this.raise(h.ImportCallArgumentTrailingComma,{at:this.state.lastTokStartLoc}),r&&this.addTrailingCommaExtraToNode(r),this.next();break}i.push(this.parseExprListItem(!1,a,n))}return this.state.inFSharpPipelineDirectBody=o,i}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(e,t){var n;return this.resetPreviousNodeTrailingComments(t),this.expect(19),this.parseArrowExpression(e,t.arguments,!0,null==(n=t.extra)?void 0:n.trailingCommaLoc),t.innerComments&&Te(e,t.innerComments),t.callee.trailingComments&&Te(e,t.callee.trailingComments),e}parseNoCallExpr(){const e=this.state.start,t=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,t,!0)}parseExprAtom(e){let t;const{type:n}=this.state;switch(n){case 79:return this.parseSuper();case 83:return t=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(t):(this.match(10)||this.raise(h.UnsupportedImport,{at:this.state.lastTokStartLoc}),this.finishNode(t,"Import"));case 78:return t=this.startNode(),this.next(),this.finishNode(t,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 130:return this.parseNumericLiteral(this.state.value);case 131:return this.parseBigIntLiteral(this.state.value);case 132:return this.parseDecimalLiteral(this.state.value);case 129:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{const e=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(e)}case 2:case 1:return this.parseArrayLike(2===this.state.type?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,e);case 6:case 7:return this.parseObjectLike(6===this.state.type?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,e);case 68:return this.parseFunctionOrFunctionSent();case 26:this.parseDecorators();case 80:return t=this.startNode(),this.takeDecorators(t),this.parseClass(t,!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{t=this.startNode(),this.next(),t.object=null;const e=t.callee=this.parseNoCallExpr();if("MemberExpression"===e.type)return this.finishNode(t,"BindExpression");throw this.raise(h.UnsupportedBind,{at:e})}case 134:return this.raise(h.PrivateInExpectedIn,{at:this.state.startLoc,identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{const e=this.getPluginOption("pipelineOperator","proposal");if(e)return this.parseTopicReference(e);throw this.unexpected()}case 47:{const e=this.input.codePointAt(this.nextTokenStart());if(ae(e)||62===e){this.expectOnePlugin(["jsx","flow","typescript"]);break}throw this.unexpected()}default:if(V(n)){if(this.isContextual(123)&&123===this.lookaheadCharCode()&&!this.hasFollowingLineBreak())return this.parseModuleExpression();const e=this.state.potentialArrowAt===this.state.start,t=this.state.containsEsc,n=this.parseIdentifier();if(!t&&"async"===n.name&&!this.canInsertSemicolon()){const{type:e}=this.state;if(68===e)return this.resetPreviousNodeTrailingComments(n),this.next(),this.parseFunction(this.startNodeAtNode(n),void 0,!0);if(V(e))return 61===this.lookaheadCharCode()?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(n)):n;if(90===e)return this.resetPreviousNodeTrailingComments(n),this.parseDo(this.startNodeAtNode(n),!0)}return e&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(n),[n],!1)):n}throw this.unexpected()}}parseTopicReferenceThenEqualsSign(e,t){const n=this.getPluginOption("pipelineOperator","proposal");if(n)return this.state.type=e,this.state.value=t,this.state.pos--,this.state.end--,this.state.endLoc=i(this.state.endLoc,-1),this.parseTopicReference(n);throw this.unexpected()}parseTopicReference(e){const t=this.startNode(),n=this.state.startLoc,r=this.state.type;return this.next(),this.finishTopicReference(t,n,e,r)}finishTopicReference(e,t,n,r){if(this.testTopicReferenceConfiguration(n,t,r)){const r="smart"===n?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise("smart"===n?h.PrimaryTopicNotAllowed:h.PipeTopicUnbound,{at:t}),this.registerTopicReference(),this.finishNode(e,r)}throw this.raise(h.PipeTopicUnconfiguredToken,{at:t,token:q(r)})}testTopicReferenceConfiguration(e,t,n){switch(e){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:q(n)}]);case"smart":return 27===n;default:throw this.raise(h.PipeTopicRequiresHackPipes,{at:t})}}parseAsyncArrowUnaryFunction(e){this.prodParam.enter(We(!0,this.prodParam.hasYield));const t=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(h.LineTerminatorBeforeArrow,{at:this.state.curPosition()}),this.expect(19),this.parseArrowExpression(e,t,!0),e}parseDo(e,t){this.expectPlugin("doExpressions"),t&&this.expectPlugin("asyncDoExpressions"),e.async=t,this.next();const n=this.state.labels;return this.state.labels=[],t?(this.prodParam.enter(2),e.body=this.parseBlock(),this.prodParam.exit()):e.body=this.parseBlock(),this.state.labels=n,this.finishNode(e,"DoExpression")}parseSuper(){const e=this.startNode();return this.next(),!this.match(10)||this.scope.allowDirectSuper||this.options.allowSuperOutsideMethod?this.scope.allowSuper||this.options.allowSuperOutsideMethod||this.raise(h.UnexpectedSuper,{at:e}):this.raise(h.SuperNotAllowed,{at:e}),this.match(10)||this.match(0)||this.match(16)||this.raise(h.UnsupportedSuper,{at:e}),this.finishNode(e,"Super")}parsePrivateName(){const e=this.startNode(),t=this.startNodeAt(this.state.start+1,new r(this.state.curLine,this.state.start+1-this.state.lineStart,this.state.start+1)),n=this.state.value;return this.next(),e.id=this.createIdentifier(t,n),this.finishNode(e,"PrivateName")}parseFunctionOrFunctionSent(){const e=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"function");return this.next(),this.match(102)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(e,t,"sent")}return this.parseFunction(e)}parseMetaProperty(e,t,n){e.meta=t;const r=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==n||r)&&this.raise(h.UnsupportedMetaProperty,{at:e.property,target:t.name,onlyValidPropertyName:n}),this.finishNode(e,"MetaProperty")}parseImportMetaProperty(e){const t=this.createIdentifier(this.startNodeAtNode(e),"import");return this.next(),this.isContextual(100)&&(this.inModule||this.raise(h.ImportMetaOutsideModule,{at:t}),this.sawUnambiguousESM=!0),this.parseMetaProperty(e,t,"meta")}parseLiteralAtNode(e,t,n){return this.addExtra(n,"rawValue",e),this.addExtra(n,"raw",this.input.slice(n.start,this.state.end)),n.value=e,this.next(),this.finishNode(n,t)}parseLiteral(e,t){const n=this.startNode();return this.parseLiteralAtNode(e,t,n)}parseStringLiteral(e){return this.parseLiteral(e,"StringLiteral")}parseNumericLiteral(e){return this.parseLiteral(e,"NumericLiteral")}parseBigIntLiteral(e){return this.parseLiteral(e,"BigIntLiteral")}parseDecimalLiteral(e){return this.parseLiteral(e,"DecimalLiteral")}parseRegExpLiteral(e){const t=this.parseLiteral(e.value,"RegExpLiteral");return t.pattern=e.pattern,t.flags=e.flags,t}parseBooleanLiteral(e){const t=this.startNode();return t.value=e,this.next(),this.finishNode(t,"BooleanLiteral")}parseNullLiteral(){const e=this.startNode();return this.next(),this.finishNode(e,"NullLiteral")}parseParenAndDistinguishExpression(e){const t=this.state.start,n=this.state.startLoc;let r;this.next(),this.expressionScope.enter(new Ye(1));const a=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;const s=this.state.start,o=this.state.startLoc,l=[],p=new $e;let c,u,d=!0;for(;!this.match(11);){if(d)d=!1;else if(this.expect(12,null===p.optionalParametersLoc?null:p.optionalParametersLoc),this.match(11)){u=this.state.startLoc;break}if(this.match(21)){const e=this.state.start,t=this.state.startLoc;if(c=this.state.startLoc,l.push(this.parseParenItem(this.parseRestBinding(),e,t)),!this.checkCommaAfterRest(41))break}else l.push(this.parseMaybeAssignAllowIn(p,this.parseParenItem))}const f=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=a,this.state.inFSharpPipelineDirectBody=i;let y=this.startNodeAt(t,n);return e&&this.shouldParseArrow(l)&&(y=this.parseArrow(y))?(this.checkDestructuringPrivate(p),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(y,l,!1),y):(this.expressionScope.exit(),l.length||this.unexpected(this.state.lastTokStartLoc),u&&this.unexpected(u),c&&this.unexpected(c),this.checkExpressionErrors(p,!0),this.toReferencedListDeep(l,!0),l.length>1?(r=this.startNodeAt(s,o),r.expressions=l,this.finishNode(r,"SequenceExpression"),this.resetEndLocation(r,f)):r=l[0],this.wrapParenthesis(t,n,r))}wrapParenthesis(e,t,n){if(!this.options.createParenthesizedExpressions)return this.addExtra(n,"parenthesized",!0),this.addExtra(n,"parenStart",e),this.takeSurroundingComments(n,e,this.state.lastTokEndLoc.index),n;const r=this.startNodeAt(e,t);return r.expression=n,this.finishNode(r,"ParenthesizedExpression"),r}shouldParseArrow(e){return!this.canInsertSemicolon()}parseArrow(e){if(this.eat(19))return e}parseParenItem(e,t,n){return e}parseNewOrNewTarget(){const e=this.startNode();if(this.next(),this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"new");this.next();const n=this.parseMetaProperty(e,t,"target");return this.scope.inNonArrowFunction||this.scope.inClass||this.raise(h.UnexpectedNewTarget,{at:n}),n}return this.parseNew(e)}parseNew(e){return e.callee=this.parseNoCallExpr(),"Import"===e.callee.type?this.raise(h.ImportCallNotNewExpression,{at:e.callee}):this.isOptionalChain(e.callee)?this.raise(h.OptionalChainingNoNew,{at:this.state.lastTokEndLoc}):this.eat(18)&&this.raise(h.OptionalChainingNoNew,{at:this.state.startLoc}),this.parseNewArguments(e),this.finishNode(e,"NewExpression")}parseNewArguments(e){if(this.eat(10)){const t=this.parseExprList(11);this.toReferencedList(t),e.arguments=t}else e.arguments=[]}parseTemplateElement(e){const{start:t,startLoc:n,end:r,value:a}=this.state,s=t+1,o=this.startNodeAt(s,i(n,1));null===a&&(e||this.raise(h.InvalidEscapeSequenceTemplate,{at:i(n,2)}));const l=this.match(24),p=l?-1:-2,c=r+p;return o.value={raw:this.input.slice(s,c).replace(/\r\n?/g,"\n"),cooked:null===a?null:a.slice(1,p)},o.tail=l,this.next(),this.finishNode(o,"TemplateElement"),this.resetEndLocation(o,i(this.state.lastTokEndLoc,p)),o}parseTemplate(e){const t=this.startNode();t.expressions=[];let n=this.parseTemplateElement(e);for(t.quasis=[n];!n.tail;)t.expressions.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),t.quasis.push(n=this.parseTemplateElement(e));return this.finishNode(t,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(e,t,n,r){n&&this.expectPlugin("recordAndTuple");const a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const i=Object.create(null);let s=!0;const o=this.startNode();for(o.properties=[],this.next();!this.match(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(o);break}let a;t?a=this.parseBindingProperty():(a=this.parsePropertyDefinition(r),this.checkProto(a,n,i,r)),n&&!this.isObjectProperty(a)&&"SpreadElement"!==a.type&&this.raise(h.InvalidRecordProperty,{at:a}),a.shorthand&&this.addExtra(a,"shorthand",!0),o.properties.push(a)}this.next(),this.state.inFSharpPipelineDirectBody=a;let l="ObjectExpression";return t?l="ObjectPattern":n&&(l="RecordExpression"),this.finishNode(o,l)}addTrailingCommaExtraToNode(e){this.addExtra(e,"trailingComma",this.state.lastTokStart),this.addExtra(e,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(e){return!e.computed&&"Identifier"===e.key.type&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(e){let t=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(h.UnsupportedPropertyDecorator,{at:this.state.startLoc});this.match(26);)t.push(this.parseDecorator());const n=this.startNode();let r,a,i=!1,s=!1;if(this.match(21))return t.length&&this.unexpected(),this.parseSpread();t.length&&(n.decorators=t,t=[]),n.method=!1,e&&(r=this.state.start,a=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(n);const l=this.state.containsEsc,p=this.parsePropertyName(n,e);if(!o&&!l&&this.maybeAsyncOrAccessorProp(n)){const e=p.name;"async"!==e||this.hasPrecedingLineBreak()||(i=!0,this.resetPreviousNodeTrailingComments(p),o=this.eat(55),this.parsePropertyName(n)),"get"!==e&&"set"!==e||(s=!0,this.resetPreviousNodeTrailingComments(p),n.kind=e,this.match(55)&&(o=!0,this.raise(h.AccessorIsGenerator,{at:this.state.curPosition(),kind:e}),this.next()),this.parsePropertyName(n))}return this.parseObjPropValue(n,r,a,o,i,!1,s,e),n}getGetterSetterExpectedParamCount(e){return"get"===e.kind?0:1}getObjectOrClassMethodParams(e){return e.params}checkGetterSetterParams(e){var t;const n=this.getGetterSetterExpectedParamCount(e),r=this.getObjectOrClassMethodParams(e);r.length!==n&&this.raise("get"===e.kind?h.BadGetterArity:h.BadSetterArity,{at:e}),"set"===e.kind&&"RestElement"===(null==(t=r[r.length-1])?void 0:t.type)&&this.raise(h.BadSetterRestParameter,{at:e})}parseObjectMethod(e,t,n,r,a){return a?(this.parseMethod(e,t,!1,!1,!1,"ObjectMethod"),this.checkGetterSetterParams(e),e):n||t||this.match(10)?(r&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,t,n,!1,!1,"ObjectMethod")):void 0}parseObjectProperty(e,t,n,r,a){if(e.shorthand=!1,this.eat(14))return e.value=r?this.parseMaybeDefault(this.state.start,this.state.startLoc):this.parseMaybeAssignAllowIn(a),this.finishNode(e,"ObjectProperty");if(!e.computed&&"Identifier"===e.key.type){if(this.checkReservedWord(e.key.name,e.key.loc.start,!0,!1),r)e.value=this.parseMaybeDefault(t,n,He(e.key));else if(this.match(29)){const r=this.state.startLoc;null!=a?null===a.shorthandAssignLoc&&(a.shorthandAssignLoc=r):this.raise(h.InvalidCoverInitializedName,{at:r}),e.value=this.parseMaybeDefault(t,n,He(e.key))}else e.value=He(e.key);return e.shorthand=!0,this.finishNode(e,"ObjectProperty")}}parseObjPropValue(e,t,n,r,a,i,s,o){const l=this.parseObjectMethod(e,r,a,i,s)||this.parseObjectProperty(e,t,n,i,o);return l||this.unexpected(),l}parsePropertyName(e,t){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{const{type:n,value:r}=this.state;let a;if(Y(n))a=this.parseIdentifier(!0);else switch(n){case 130:a=this.parseNumericLiteral(r);break;case 129:a=this.parseStringLiteral(r);break;case 131:a=this.parseBigIntLiteral(r);break;case 132:a=this.parseDecimalLiteral(r);break;case 134:{const e=this.state.startLoc;null!=t?null===t.privateKeyLoc&&(t.privateKeyLoc=e):this.raise(h.UnexpectedPrivateField,{at:e}),a=this.parsePrivateName();break}default:throw this.unexpected()}e.key=a,134!==n&&(e.computed=!1)}return e.key}initFunction(e,t){e.id=null,e.generator=!1,e.async=!!t}parseMethod(e,t,n,r,a,i,s=!1){this.initFunction(e,n),e.generator=!!t;const o=r;return this.scope.enter(18|(s?64:0)|(a?32:0)),this.prodParam.enter(We(n,e.generator)),this.parseFunctionParams(e,o),this.parseFunctionBodyAndFinish(e,i,!0),this.prodParam.exit(),this.scope.exit(),e}parseArrayLike(e,t,n,r){n&&this.expectPlugin("recordAndTuple");const a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const i=this.startNode();return this.next(),i.elements=this.parseExprList(e,!n,r,i),this.state.inFSharpPipelineDirectBody=a,this.finishNode(i,n?"TupleExpression":"ArrayExpression")}parseArrowExpression(e,t,n,r){this.scope.enter(6);let a=We(n,!1);!this.match(5)&&this.prodParam.hasIn&&(a|=8),this.prodParam.enter(a),this.initFunction(e,n);const i=this.state.maybeInArrowParameters;return t&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(e,t,r)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(e,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=i,this.finishNode(e,"ArrowFunctionExpression")}setArrowFunctionParameters(e,t,n){this.toAssignableList(t,n,!1),e.params=t}parseFunctionBodyAndFinish(e,t,n=!1){this.parseFunctionBody(e,!1,n),this.finishNode(e,t)}parseFunctionBody(e,t,n=!1){const r=t&&!this.match(5);if(this.expressionScope.enter(Xe()),r)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,t,!1);else{const r=this.state.strict,a=this.state.labels;this.state.labels=[],this.prodParam.enter(4|this.prodParam.currentFlags()),e.body=this.parseBlock(!0,!1,(a=>{const i=!this.isSimpleParamList(e.params);a&&i&&this.raise(h.IllegalLanguageModeDirective,{at:"method"!==e.kind&&"constructor"!==e.kind||!e.key?e:e.key.loc.end});const s=!r&&this.state.strict;this.checkParams(e,!(this.state.strict||t||n||i),t,s),this.state.strict&&e.id&&this.checkIdentifier(e.id,65,s)})),this.prodParam.exit(),this.state.labels=a}this.expressionScope.exit()}isSimpleParameter(e){return"Identifier"===e.type}isSimpleParamList(e){for(let t=0,n=e.length;t<n;t++)if(!this.isSimpleParameter(e[t]))return!1;return!0}checkParams(e,t,n,r=!0){const a=!t&&new Set,i={type:"FormalParameters"};for(const t of e.params)this.checkLVal(t,{in:i,binding:5,checkClashes:a,strictModeChanged:r})}parseExprList(e,t,n,r){const a=[];let i=!0;for(;!this.eat(e);){if(i)i=!1;else if(this.expect(12),this.match(e)){r&&this.addTrailingCommaExtraToNode(r),this.next();break}a.push(this.parseExprListItem(t,n))}return a}parseExprListItem(e,t,n){let r;if(this.match(12))e||this.raise(h.UnexpectedToken,{at:this.state.curPosition(),unexpected:","}),r=null;else if(this.match(21)){const e=this.state.start,n=this.state.startLoc;r=this.parseParenItem(this.parseSpread(t),e,n)}else if(this.match(17)){this.expectPlugin("partialApplication"),n||this.raise(h.UnexpectedArgumentPlaceholder,{at:this.state.startLoc});const e=this.startNode();this.next(),r=this.finishNode(e,"ArgumentPlaceholder")}else r=this.parseMaybeAssignAllowIn(t,this.parseParenItem);return r}parseIdentifier(e){const t=this.startNode(),n=this.parseIdentifierName(t.start,e);return this.createIdentifier(t,n)}createIdentifier(e,t){return e.name=t,e.loc.identifierName=t,this.finishNode(e,"Identifier")}parseIdentifierName(e,t){let n;const{startLoc:r,type:a}=this.state;if(!Y(a))throw this.unexpected();n=this.state.value;const i=a<=92;return t?i&&this.replaceToken(128):this.checkReservedWord(n,r,i,!1),this.next(),n}checkReservedWord(e,t,n,r){if(!(e.length>10)&&function(e){return fe.has(e)}(e)){if("yield"===e){if(this.prodParam.hasYield)return void this.raise(h.YieldBindingIdentifier,{at:t})}else if("await"===e){if(this.prodParam.hasAwait)return void this.raise(h.AwaitBindingIdentifier,{at:t});if(this.scope.inStaticBlock)return void this.raise(h.AwaitBindingIdentifierInStaticBlock,{at:t});this.expressionScope.recordAsyncArrowParametersError({at:t})}else if("arguments"===e&&this.scope.inClassAndNotInNonArrowFunction)return void this.raise(h.ArgumentsInClass,{at:t});n&&function(e){return se.has(e)}(e)?this.raise(h.UnexpectedKeyword,{at:t,keyword:e}):(this.state.strict?r?de:ce:pe)(e,this.inModule)&&this.raise(h.UnexpectedReservedWord,{at:t,reservedWord:e})}}isAwaitAllowed(){return!!this.prodParam.hasAwait||!(!this.options.allowAwaitOutsideFunction||this.scope.inFunction)}parseAwait(e,t){const n=this.startNodeAt(e,t);return this.expressionScope.recordParameterInitializerError(h.AwaitExpressionFormalParameter,{at:n}),this.eat(55)&&this.raise(h.ObsoleteAwaitStar,{at:n}),this.scope.inFunction||this.options.allowAwaitOutsideFunction||(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(n.argument=this.parseMaybeUnary(null,!0)),this.finishNode(n,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;const{type:e}=this.state;return 53===e||10===e||0===e||G(e)||133===e||56===e||this.hasPlugin("v8intrinsic")&&54===e}parseYield(){const e=this.startNode();this.expressionScope.recordParameterInitializerError(h.YieldInParameter,{at:e}),this.next();let t=!1,n=null;if(!this.hasPrecedingLineBreak())switch(t=this.eat(55),this.state.type){case 13:case 135:case 8:case 11:case 3:case 9:case 14:case 12:if(!t)break;default:n=this.parseMaybeAssign()}return e.delegate=t,e.argument=n,this.finishNode(e,"YieldExpression")}checkPipelineAtInfixOperator(e,t){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&"SequenceExpression"===e.type&&this.raise(h.PipelineHeadSequenceExpression,{at:t})}parseSmartPipelineBodyInStyle(e,t,n){const r=this.startNodeAt(t,n);return this.isSimpleReference(e)?(r.callee=e,this.finishNode(r,"PipelineBareFunction")):(this.checkSmartPipeTopicBodyEarlyErrors(n),r.expression=e,this.finishNode(r,"PipelineTopicExpression"))}isSimpleReference(e){switch(e.type){case"MemberExpression":return!e.computed&&this.isSimpleReference(e.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(e){if(this.match(19))throw this.raise(h.PipelineBodyNoArrow,{at:this.state.startLoc});this.topicReferenceWasUsedInCurrentContext()||this.raise(h.PipelineTopicUnused,{at:e})}withTopicBindingContext(e){const t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}withSmartMixTopicForbiddingContext(e){if(!this.hasPlugin(["pipelineOperator",{proposal:"smart"}]))return e();{const t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}}withSoloAwaitPermittingContext(e){const t=this.state.soloAwait;this.state.soloAwait=!0;try{return e()}finally{this.state.soloAwait=t}}allowInAnd(e){const t=this.prodParam.currentFlags();if(8&~t){this.prodParam.enter(8|t);try{return e()}finally{this.prodParam.exit()}}return e()}disallowInAnd(e){const t=this.prodParam.currentFlags();if(8&t){this.prodParam.enter(-9&t);try{return e()}finally{this.prodParam.exit()}}return e()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return null!=this.state.topicContext.maxTopicIndex&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(e){const t=this.state.start,n=this.state.startLoc;this.state.potentialArrowAt=this.state.start;const r=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;const a=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,n,e);return this.state.inFSharpPipelineDirectBody=r,a}parseModuleExpression(){this.expectPlugin("moduleBlocks");const e=this.startNode();this.next(),this.eat(5);const t=this.initializeScopes(!0);this.enterInitialScopes();const n=this.startNode();try{e.body=this.parseProgram(n,8,"module")}finally{t()}return this.eat(8),this.finishNode(e,"ModuleExpression")}parsePropertyNamePrefixOperator(e){}}const Nt={kind:"loop"},Dt={kind:"switch"},Ct=/[\uD800-\uDFFF]/u,wt=/in(?:stanceof)?/y;class Lt extends It{parseTopLevel(e,t){return e.program=this.parseProgram(t),e.comments=this.state.comments,this.options.tokens&&(e.tokens=function(e,t){for(let n=0;n<e.length;n++){const r=e[n],{type:a}=r;if("number"==typeof a){if(134===a){const{loc:t,start:a,value:s,end:o}=r,l=a+1,p=i(t.start,1);e.splice(n,1,new je({type:z(27),value:"#",start:a,end:l,startLoc:t.start,endLoc:p}),new je({type:z(128),value:s,start:l,end:o,startLoc:p,endLoc:t.end})),n++;continue}if(G(a)){const{loc:s,start:o,value:l,end:p}=r,c=o+1,u=i(s.start,1);let d,f,y,m,h;d=96===t.charCodeAt(o)?new je({type:z(22),value:"`",start:o,end:c,startLoc:s.start,endLoc:u}):new je({type:z(8),value:"}",start:o,end:c,startLoc:s.start,endLoc:u}),24===a?(y=p-1,m=i(s.end,-1),f=null===l?null:l.slice(1,-1),h=new je({type:z(22),value:"`",start:y,end:p,startLoc:m,endLoc:s.end})):(y=p-2,m=i(s.end,-2),f=null===l?null:l.slice(1,-2),h=new je({type:z(23),value:"${",start:y,end:p,startLoc:m,endLoc:s.end})),e.splice(n,1,d,new je({type:z(20),value:f,start:c,end:y,startLoc:u,endLoc:m}),h),n+=2;continue}r.type=z(a)}}return e}(this.tokens,this.input)),this.finishNode(e,"File")}parseProgram(e,t=135,n=this.options.sourceType){if(e.sourceType=n,e.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(e,!0,!0,t),this.inModule&&!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(const[e,t]of Array.from(this.scope.undefinedExports))this.raise(h.ModuleExportUndefined,{at:t,localName:e});return this.finishNode(e,"Program")}stmtToDirective(e){const t=e;t.type="Directive",t.value=t.expression,delete t.expression;const n=t.value,r=n.value,a=this.input.slice(n.start,n.end),i=n.value=a.slice(1,-1);return this.addExtra(n,"raw",a),this.addExtra(n,"rawValue",i),this.addExtra(n,"expressionValue",r),n.type="DirectiveLiteral",t}parseInterpreterDirective(){if(!this.match(28))return null;const e=this.startNode();return e.value=this.state.value,this.next(),this.finishNode(e,"InterpreterDirective")}isLet(e){return!!this.isContextual(99)&&this.isLetKeyword(e)}isLetKeyword(e){const t=this.nextTokenStart(),n=this.codePointAtPos(t);if(92===n||91===n)return!0;if(e)return!1;if(123===n)return!0;if(ae(n)){if(wt.lastIndex=t,wt.test(this.input)){const e=this.codePointAtPos(wt.lastIndex);if(!ie(e)&&92!==e)return!1}return!0}return!1}parseStatement(e,t){return this.match(26)&&this.parseDecorators(!0),this.parseStatementContent(e,t)}parseStatementContent(e,t){let n=this.state.type;const r=this.startNode();let a;switch(this.isLet(e)&&(n=74,a="let"),n){case 60:return this.parseBreakContinueStatement(r,!0);case 63:return this.parseBreakContinueStatement(r,!1);case 64:return this.parseDebuggerStatement(r);case 90:return this.parseDoStatement(r);case 91:return this.parseForStatement(r);case 68:if(46===this.lookaheadCharCode())break;return e&&(this.state.strict?this.raise(h.StrictFunction,{at:this.state.startLoc}):"if"!==e&&"label"!==e&&this.raise(h.SloppyFunction,{at:this.state.startLoc})),this.parseFunctionStatement(r,!1,!e);case 80:return e&&this.unexpected(),this.parseClass(r,!0);case 69:return this.parseIfStatement(r);case 70:return this.parseReturnStatement(r);case 71:return this.parseSwitchStatement(r);case 72:return this.parseThrowStatement(r);case 73:return this.parseTryStatement(r);case 75:case 74:return a=a||this.state.value,e&&"var"!==a&&this.raise(h.UnexpectedLexicalDeclaration,{at:this.state.startLoc}),this.parseVarStatement(r,a);case 92:return this.parseWhileStatement(r);case 76:return this.parseWithStatement(r);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(r);case 83:{const e=this.lookaheadCharCode();if(40===e||46===e)break}case 82:{let e;return this.options.allowImportExportEverywhere||t||this.raise(h.UnexpectedImportExport,{at:this.state.startLoc}),this.next(),83===n?(e=this.parseImport(r),"ImportDeclaration"!==e.type||e.importKind&&"value"!==e.importKind||(this.sawUnambiguousESM=!0)):(e=this.parseExport(r),("ExportNamedDeclaration"!==e.type||e.exportKind&&"value"!==e.exportKind)&&("ExportAllDeclaration"!==e.type||e.exportKind&&"value"!==e.exportKind)&&"ExportDefaultDeclaration"!==e.type||(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(r),e}default:if(this.isAsyncFunction())return e&&this.raise(h.AsyncFunctionInSingleStatementContext,{at:this.state.startLoc}),this.next(),this.parseFunctionStatement(r,!0,!e)}const i=this.state.value,s=this.parseExpression();return V(n)&&"Identifier"===s.type&&this.eat(14)?this.parseLabeledStatement(r,i,s,e):this.parseExpressionStatement(r,s)}assertModuleNodeAllowed(e){this.options.allowImportExportEverywhere||this.inModule||this.raise(h.ImportOutsideModule,{at:e})}takeDecorators(e){const t=this.state.decoratorStack[this.state.decoratorStack.length-1];t.length&&(e.decorators=t,this.resetStartLocationFromNode(e,t[0]),this.state.decoratorStack[this.state.decoratorStack.length-1]=[])}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(e){const t=this.state.decoratorStack[this.state.decoratorStack.length-1];for(;this.match(26);){const e=this.parseDecorator();t.push(e)}if(this.match(82))e||this.unexpected(),this.hasPlugin("decorators")&&!this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(h.DecoratorExportClass,{at:this.state.startLoc});else if(!this.canHaveLeadingDecorator())throw this.raise(h.UnexpectedLeadingDecorator,{at:this.state.startLoc})}parseDecorator(){this.expectOnePlugin(["decorators-legacy","decorators"]);const e=this.startNode();if(this.next(),this.hasPlugin("decorators")){this.state.decoratorStack.push([]);const t=this.state.start,n=this.state.startLoc;let r;if(this.match(10)){const e=this.state.start,t=this.state.startLoc;this.next(),r=this.parseExpression(),this.expect(11),r=this.wrapParenthesis(e,t,r)}else for(r=this.parseIdentifier(!1);this.eat(16);){const e=this.startNodeAt(t,n);e.object=r,e.property=this.parseIdentifier(!0),e.computed=!1,r=this.finishNode(e,"MemberExpression")}e.expression=this.parseMaybeDecoratorArguments(r),this.state.decoratorStack.pop()}else e.expression=this.parseExprSubscripts();return this.finishNode(e,"Decorator")}parseMaybeDecoratorArguments(e){if(this.eat(10)){const t=this.startNodeAtNode(e);return t.callee=e,t.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(t.arguments),this.finishNode(t,"CallExpression")}return e}parseBreakContinueStatement(e,t){return this.next(),this.isLineTerminator()?e.label=null:(e.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(e,t),this.finishNode(e,t?"BreakStatement":"ContinueStatement")}verifyBreakContinue(e,t){let n;for(n=0;n<this.state.labels.length;++n){const r=this.state.labels[n];if(null==e.label||r.name===e.label.name){if(null!=r.kind&&(t||"loop"===r.kind))break;if(e.label&&t)break}}if(n===this.state.labels.length){const n=t?"BreakStatement":"ContinueStatement";this.raise(h.IllegalBreakContinue,{at:e,type:n})}}parseDebuggerStatement(e){return this.next(),this.semicolon(),this.finishNode(e,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);const e=this.parseExpression();return this.expect(11),e}parseDoStatement(e){return this.next(),this.state.labels.push(Nt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement("do"))),this.state.labels.pop(),this.expect(92),e.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(e,"DoWhileStatement")}parseForStatement(e){this.next(),this.state.labels.push(Nt);let t=null;if(this.isAwaitAllowed()&&this.eatContextual(96)&&(t=this.state.lastTokStartLoc),this.scope.enter(0),this.expect(10),this.match(13))return null!==t&&this.unexpected(t),this.parseFor(e,null);const n=this.isContextual(99),r=n&&this.isLetKeyword();if(this.match(74)||this.match(75)||r){const n=this.startNode(),a=r?"let":this.state.value;return this.next(),this.parseVar(n,!0,a),this.finishNode(n,"VariableDeclaration"),(this.match(58)||this.isContextual(101))&&1===n.declarations.length?this.parseForIn(e,n,t):(null!==t&&this.unexpected(t),this.parseFor(e,n))}const a=this.isContextual(95),i=new $e,s=this.parseExpression(!0,i),o=this.isContextual(101);if(o&&(n&&this.raise(h.ForOfLet,{at:s}),null===t&&a&&"Identifier"===s.type&&this.raise(h.ForOfAsync,{at:s})),o||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(s,!0);const n=o?"ForOfStatement":"ForInStatement";return this.checkLVal(s,{in:{type:n}}),this.parseForIn(e,s,t)}return this.checkExpressionErrors(i,!0),null!==t&&this.unexpected(t),this.parseFor(e,s)}parseFunctionStatement(e,t,n){return this.next(),this.parseFunction(e,1|(n?0:2),t)}parseIfStatement(e){return this.next(),e.test=this.parseHeaderExpression(),e.consequent=this.parseStatement("if"),e.alternate=this.eat(66)?this.parseStatement("if"):null,this.finishNode(e,"IfStatement")}parseReturnStatement(e){return this.prodParam.hasReturn||this.options.allowReturnOutsideFunction||this.raise(h.IllegalReturn,{at:this.state.startLoc}),this.next(),this.isLineTerminator()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")}parseSwitchStatement(e){this.next(),e.discriminant=this.parseHeaderExpression();const t=e.cases=[];let n;this.expect(5),this.state.labels.push(Dt),this.scope.enter(0);for(let e;!this.match(8);)if(this.match(61)||this.match(65)){const r=this.match(61);n&&this.finishNode(n,"SwitchCase"),t.push(n=this.startNode()),n.consequent=[],this.next(),r?n.test=this.parseExpression():(e&&this.raise(h.MultipleDefaultsInSwitch,{at:this.state.lastTokStartLoc}),e=!0,n.test=null),this.expect(14)}else n?n.consequent.push(this.parseStatement(null)):this.unexpected();return this.scope.exit(),n&&this.finishNode(n,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(e,"SwitchStatement")}parseThrowStatement(e){return this.next(),this.hasPrecedingLineBreak()&&this.raise(h.NewlineAfterThrow,{at:this.state.lastTokEndLoc}),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")}parseCatchClauseParam(){const e=this.parseBindingAtom(),t="Identifier"===e.type;return this.scope.enter(t?8:0),this.checkLVal(e,{in:{type:"CatchClause"},binding:9,allowingSloppyLetBinding:!0}),e}parseTryStatement(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.match(62)){const t=this.startNode();this.next(),this.match(10)?(this.expect(10),t.param=this.parseCatchClauseParam(),this.expect(11)):(t.param=null,this.scope.enter(0)),t.body=this.withSmartMixTopicForbiddingContext((()=>this.parseBlock(!1,!1))),this.scope.exit(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(67)?this.parseBlock():null,e.handler||e.finalizer||this.raise(h.NoCatchOrFinally,{at:e}),this.finishNode(e,"TryStatement")}parseVarStatement(e,t,n=!1){return this.next(),this.parseVar(e,!1,t,n),this.semicolon(),this.finishNode(e,"VariableDeclaration")}parseWhileStatement(e){return this.next(),e.test=this.parseHeaderExpression(),this.state.labels.push(Nt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement("while"))),this.state.labels.pop(),this.finishNode(e,"WhileStatement")}parseWithStatement(e){return this.state.strict&&this.raise(h.StrictWith,{at:this.state.startLoc}),this.next(),e.object=this.parseHeaderExpression(),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement("with"))),this.finishNode(e,"WithStatement")}parseEmptyStatement(e){return this.next(),this.finishNode(e,"EmptyStatement")}parseLabeledStatement(e,t,n,r){for(const e of this.state.labels)e.name===t&&this.raise(h.LabelRedeclaration,{at:n,labelName:t});const a=(i=this.state.type)>=90&&i<=92?"loop":this.match(71)?"switch":null;var i;for(let t=this.state.labels.length-1;t>=0;t--){const n=this.state.labels[t];if(n.statementStart!==e.start)break;n.statementStart=this.state.start,n.kind=a}return this.state.labels.push({name:t,kind:a,statementStart:this.state.start}),e.body=this.parseStatement(r?-1===r.indexOf("label")?r+"label":r:"label"),this.state.labels.pop(),e.label=n,this.finishNode(e,"LabeledStatement")}parseExpressionStatement(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")}parseBlock(e=!1,t=!0,n){const r=this.startNode();return e&&this.state.strictErrors.clear(),this.expect(5),t&&this.scope.enter(0),this.parseBlockBody(r,e,!1,8,n),t&&this.scope.exit(),this.finishNode(r,"BlockStatement")}isValidDirective(e){return"ExpressionStatement"===e.type&&"StringLiteral"===e.expression.type&&!e.expression.extra.parenthesized}parseBlockBody(e,t,n,r,a){const i=e.body=[],s=e.directives=[];this.parseBlockOrModuleBlockBody(i,t?s:void 0,n,r,a)}parseBlockOrModuleBlockBody(e,t,n,r,a){const i=this.state.strict;let s=!1,o=!1;for(;!this.match(r);){const r=this.parseStatement(null,n);if(t&&!o){if(this.isValidDirective(r)){const e=this.stmtToDirective(r);t.push(e),s||"use strict"!==e.value.value||(s=!0,this.setStrict(!0));continue}o=!0,this.state.strictErrors.clear()}e.push(r)}a&&a.call(this,s),i||this.setStrict(!1),this.next()}parseFor(e,t){return e.init=t,this.semicolon(!1),e.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),e.update=this.match(11)?null:this.parseExpression(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement("for"))),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,"ForStatement")}parseForIn(e,t,n){const r=this.match(58);return this.next(),r?null!==n&&this.unexpected(n):e.await=null!==n,"VariableDeclaration"!==t.type||null==t.declarations[0].init||r&&!this.state.strict&&"var"===t.kind&&"Identifier"===t.declarations[0].id.type||this.raise(h.ForInOfLoopInitializer,{at:t,type:r?"ForInStatement":"ForOfStatement"}),"AssignmentPattern"===t.type&&this.raise(h.InvalidLhs,{at:t,ancestor:{type:"ForStatement"}}),e.left=t,e.right=r?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement("for"))),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,r?"ForInStatement":"ForOfStatement")}parseVar(e,t,n,r=!1){const a=e.declarations=[];for(e.kind=n;;){const e=this.startNode();if(this.parseVarId(e,n),e.init=this.eat(29)?t?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,null!==e.init||r||("Identifier"===e.id.type||t&&(this.match(58)||this.isContextual(101))?"const"!==n||this.match(58)||this.isContextual(101)||this.raise(h.DeclarationMissingInitializer,{at:this.state.lastTokEndLoc,kind:"const"}):this.raise(h.DeclarationMissingInitializer,{at:this.state.lastTokEndLoc,kind:"destructuring"})),a.push(this.finishNode(e,"VariableDeclarator")),!this.eat(12))break}return e}parseVarId(e,t){e.id=this.parseBindingAtom(),this.checkLVal(e.id,{in:{type:"VariableDeclarator"},binding:"var"===t?5:9})}parseFunction(e,t=0,n=!1){const r=1&t,a=2&t,i=!(!r||4&t);this.initFunction(e,n),this.match(55)&&a&&this.raise(h.GeneratorInSingleStatementContext,{at:this.state.startLoc}),e.generator=this.eat(55),r&&(e.id=this.parseFunctionId(i));const s=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(We(n,e.generator)),r||(e.id=this.parseFunctionId()),this.parseFunctionParams(e,!1),this.withSmartMixTopicForbiddingContext((()=>{this.parseFunctionBodyAndFinish(e,r?"FunctionDeclaration":"FunctionExpression")})),this.prodParam.exit(),this.scope.exit(),r&&!a&&this.registerFunctionStatementId(e),this.state.maybeInArrowParameters=s,e}parseFunctionId(e){return e||V(this.state.type)?this.parseIdentifier():null}parseFunctionParams(e,t){this.expect(10),this.expressionScope.enter(new Ve(3)),e.params=this.parseBindingList(11,41,!1,t),this.expressionScope.exit()}registerFunctionStatementId(e){e.id&&this.scope.declareName(e.id.name,this.state.strict||e.generator||e.async?this.scope.treatFunctionsAsVar?5:9:17,e.id.loc.start)}parseClass(e,t,n){this.next(),this.takeDecorators(e);const r=this.state.strict;return this.state.strict=!0,this.parseClassId(e,t,n),this.parseClassSuper(e),e.body=this.parseClassBody(!!e.superClass,r),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}isNonstaticConstructor(e){return!(e.computed||e.static||"constructor"!==e.key.name&&"constructor"!==e.key.value)}parseClassBody(e,t){this.classScope.enter();const n={hadConstructor:!1,hadSuperClass:e};let r=[];const a=this.startNode();if(a.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext((()=>{for(;!this.match(8);){if(this.eat(13)){if(r.length>0)throw this.raise(h.DecoratorSemicolon,{at:this.state.lastTokEndLoc});continue}if(this.match(26)){r.push(this.parseDecorator());continue}const e=this.startNode();r.length&&(e.decorators=r,this.resetStartLocationFromNode(e,r[0]),r=[]),this.parseClassMember(a,e,n),"constructor"===e.kind&&e.decorators&&e.decorators.length>0&&this.raise(h.DecoratorConstructor,{at:e})}})),this.state.strict=t,this.next(),r.length)throw this.raise(h.TrailingDecorator,{at:this.state.startLoc});return this.classScope.exit(),this.finishNode(a,"ClassBody")}parseClassMemberFromModifier(e,t){const n=this.parseIdentifier(!0);if(this.isClassMethod()){const r=t;return r.kind="method",r.computed=!1,r.key=n,r.static=!1,this.pushClassMethod(e,r,!1,!1,!1,!1),!0}if(this.isClassProperty()){const r=t;return r.computed=!1,r.key=n,r.static=!1,e.body.push(this.parseClassProperty(r)),!0}return this.resetPreviousNodeTrailingComments(n),!1}parseClassMember(e,t,n){const r=this.isContextual(104);if(r){if(this.parseClassMemberFromModifier(e,t))return;if(this.eat(5))return void this.parseClassStaticBlock(e,t)}this.parseClassMemberWithIsStatic(e,t,n,r)}parseClassMemberWithIsStatic(e,t,n,r){const a=t,i=t,s=t,o=t,l=t,p=a,c=a;if(t.static=r,this.parsePropertyNamePrefixOperator(t),this.eat(55)){p.kind="method";const t=this.match(134);return this.parseClassElementName(p),t?void this.pushClassPrivateMethod(e,i,!0,!1):(this.isNonstaticConstructor(a)&&this.raise(h.ConstructorIsGenerator,{at:a.key}),void this.pushClassMethod(e,a,!0,!1,!1,!1))}const u=V(this.state.type)&&!this.state.containsEsc,d=this.match(134),f=this.parseClassElementName(t),y=this.state.startLoc;if(this.parsePostMemberNameModifiers(c),this.isClassMethod()){if(p.kind="method",d)return void this.pushClassPrivateMethod(e,i,!1,!1);const r=this.isNonstaticConstructor(a);let s=!1;r&&(a.kind="constructor",n.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(h.DuplicateConstructor,{at:f}),r&&this.hasPlugin("typescript")&&t.override&&this.raise(h.OverrideOnConstructor,{at:f}),n.hadConstructor=!0,s=n.hadSuperClass),this.pushClassMethod(e,a,!1,!1,r,s)}else if(this.isClassProperty())d?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,s);else if(u&&"async"===f.name&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(f);const t=this.eat(55);c.optional&&this.unexpected(y),p.kind="method";const n=this.match(134);this.parseClassElementName(p),this.parsePostMemberNameModifiers(c),n?this.pushClassPrivateMethod(e,i,t,!0):(this.isNonstaticConstructor(a)&&this.raise(h.ConstructorIsAsync,{at:a.key}),this.pushClassMethod(e,a,t,!0,!1,!1))}else if(!u||"get"!==f.name&&"set"!==f.name||this.match(55)&&this.isLineTerminator())if(u&&"accessor"===f.name&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(f);const t=this.match(134);this.parseClassElementName(s),this.pushClassAccessorProperty(e,l,t)}else this.isLineTerminator()?d?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,s):this.unexpected();else{this.resetPreviousNodeTrailingComments(f),p.kind=f.name;const t=this.match(134);this.parseClassElementName(a),t?this.pushClassPrivateMethod(e,i,!1,!1):(this.isNonstaticConstructor(a)&&this.raise(h.ConstructorIsAccessor,{at:a.key}),this.pushClassMethod(e,a,!1,!1,!1,!1)),this.checkGetterSetterParams(a)}}parseClassElementName(e){const{type:t,value:n}=this.state;if(128!==t&&129!==t||!e.static||"prototype"!==n||this.raise(h.StaticPrototype,{at:this.state.startLoc}),134===t){"constructor"===n&&this.raise(h.ConstructorClassPrivateField,{at:this.state.startLoc});const t=this.parsePrivateName();return e.key=t,t}return this.parsePropertyName(e)}parseClassStaticBlock(e,t){var n;this.scope.enter(208);const r=this.state.labels;this.state.labels=[],this.prodParam.enter(0);const a=t.body=[];this.parseBlockOrModuleBlockBody(a,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=r,e.body.push(this.finishNode(t,"StaticBlock")),null!=(n=t.decorators)&&n.length&&this.raise(h.DecoratorStaticBlock,{at:t})}pushClassProperty(e,t){t.computed||"constructor"!==t.key.name&&"constructor"!==t.key.value||this.raise(h.ConstructorClassField,{at:t.key}),e.body.push(this.parseClassProperty(t))}pushClassPrivateProperty(e,t){const n=this.parseClassPrivateProperty(t);e.body.push(n),this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),0,n.key.loc.start)}pushClassAccessorProperty(e,t,n){if(!n&&!t.computed){const e=t.key;"constructor"!==e.name&&"constructor"!==e.value||this.raise(h.ConstructorClassField,{at:e})}const r=this.parseClassAccessorProperty(t);e.body.push(r),n&&this.classScope.declarePrivateName(this.getPrivateNameSV(r.key),0,r.key.loc.start)}pushClassMethod(e,t,n,r,a,i){e.body.push(this.parseMethod(t,n,r,a,i,"ClassMethod",!0))}pushClassPrivateMethod(e,t,n,r){const a=this.parseMethod(t,n,r,!1,!1,"ClassPrivateMethod",!0);e.body.push(a);const i="get"===a.kind?a.static?6:2:"set"===a.kind?a.static?5:1:0;this.declareClassPrivateMethodInScope(a,i)}declareClassPrivateMethodInScope(e,t){this.classScope.declarePrivateName(this.getPrivateNameSV(e.key),t,e.key.loc.start)}parsePostMemberNameModifiers(e){}parseClassPrivateProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassPrivateProperty")}parseClassProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassProperty")}parseClassAccessorProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassAccessorProperty")}parseInitializer(e){this.scope.enter(80),this.expressionScope.enter(Xe()),this.prodParam.enter(0),e.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(e,t,n,r=139){if(V(this.state.type))e.id=this.parseIdentifier(),t&&this.declareNameFromIdentifier(e.id,r);else{if(!n&&t)throw this.raise(h.MissingClassName,{at:this.state.startLoc});e.id=null}}parseClassSuper(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(e){const t=this.maybeParseExportDefaultSpecifier(e),n=!t||this.eat(12),r=n&&this.eatExportStar(e),a=r&&this.maybeParseExportNamespaceSpecifier(e),i=n&&(!a||this.eat(12)),s=t||r;if(r&&!a)return t&&this.unexpected(),this.parseExportFrom(e,!0),this.finishNode(e,"ExportAllDeclaration");const o=this.maybeParseExportNamedSpecifiers(e);if(t&&n&&!r&&!o||a&&i&&!o)throw this.unexpected(null,5);let l;if(s||o?(l=!1,this.parseExportFrom(e,s)):l=this.maybeParseExportDeclaration(e),s||o||l)return this.checkExport(e,!0,!1,!!e.source),this.finishNode(e,"ExportNamedDeclaration");if(this.eat(65))return e.declaration=this.parseExportDefaultExpression(),this.checkExport(e,!0,!0),this.finishNode(e,"ExportDefaultDeclaration");throw this.unexpected(null,5)}eatExportStar(e){return this.eat(55)}maybeParseExportDefaultSpecifier(e){if(this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom");const t=this.startNode();return t.exported=this.parseIdentifier(!0),e.specifiers=[this.finishNode(t,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(e){if(this.isContextual(93)){e.specifiers||(e.specifiers=[]);const t=this.startNodeAt(this.state.lastTokStart,this.state.lastTokStartLoc);return this.next(),t.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(t,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(e){if(this.match(5)){e.specifiers||(e.specifiers=[]);const t="type"===e.exportKind;return e.specifiers.push(...this.parseExportSpecifiers(t)),e.source=null,e.declaration=null,this.hasPlugin("importAssertions")&&(e.assertions=[]),!0}return!1}maybeParseExportDeclaration(e){return!!this.shouldParseExportDeclaration()&&(e.specifiers=[],e.source=null,this.hasPlugin("importAssertions")&&(e.assertions=[]),e.declaration=this.parseExportDeclaration(e),!0)}isAsyncFunction(){if(!this.isContextual(95))return!1;const e=this.nextTokenStart();return!Ee.test(this.input.slice(this.state.pos,e))&&this.isUnparsedContextual(e,"function")}parseExportDefaultExpression(){const e=this.startNode(),t=this.isAsyncFunction();if(this.match(68)||t)return this.next(),t&&this.next(),this.parseFunction(e,5,t);if(this.match(80))return this.parseClass(e,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(h.DecoratorBeforeExport,{at:this.state.startLoc}),this.parseDecorators(!1),this.parseClass(e,!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(h.UnsupportedDefaultExport,{at:this.state.startLoc});const n=this.parseMaybeAssignAllowIn();return this.semicolon(),n}parseExportDeclaration(e){return this.parseStatement(null)}isExportDefaultSpecifier(){const{type:e}=this.state;if(V(e)){if(95===e&&!this.state.containsEsc||99===e)return!1;if((126===e||125===e)&&!this.state.containsEsc){const{type:e}=this.lookahead();if(V(e)&&97!==e||5===e)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;const t=this.nextTokenStart(),n=this.isUnparsedContextual(t,"from");if(44===this.input.charCodeAt(t)||V(this.state.type)&&n)return!0;if(this.match(65)&&n){const e=this.input.charCodeAt(this.nextTokenStartSince(t+4));return 34===e||39===e}return!1}parseExportFrom(e,t){if(this.eatContextual(97)){e.source=this.parseImportSource(),this.checkExport(e);const t=this.maybeParseImportAssertions();t&&(e.assertions=t)}else t&&this.unexpected();this.semicolon()}shouldParseExportDeclaration(){const{type:e}=this.state;if(26===e&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))){if(this.getPluginOption("decorators","decoratorsBeforeExport"))throw this.raise(h.DecoratorBeforeExport,{at:this.state.startLoc});return!0}return 74===e||75===e||68===e||80===e||this.isLet()||this.isAsyncFunction()}checkExport(e,t,n,r){if(t)if(n){if(this.checkDuplicateExports(e,"default"),this.hasPlugin("exportDefaultFrom")){var a;const t=e.declaration;"Identifier"!==t.type||"from"!==t.name||t.end-t.start!=4||null!=(a=t.extra)&&a.parenthesized||this.raise(h.ExportDefaultFromAsIdentifier,{at:t})}}else if(e.specifiers&&e.specifiers.length)for(const t of e.specifiers){const{exported:e}=t,n="Identifier"===e.type?e.name:e.value;if(this.checkDuplicateExports(t,n),!r&&t.local){const{local:e}=t;"Identifier"!==e.type?this.raise(h.ExportBindingIsString,{at:t,localName:e.value,exportName:n}):(this.checkReservedWord(e.name,e.loc.start,!0,!1),this.scope.checkLocalExport(e))}}else if(e.declaration)if("FunctionDeclaration"===e.declaration.type||"ClassDeclaration"===e.declaration.type){const t=e.declaration.id;if(!t)throw new Error("Assertion failure");this.checkDuplicateExports(e,t.name)}else if("VariableDeclaration"===e.declaration.type)for(const t of e.declaration.declarations)this.checkDeclaration(t.id);if(this.state.decoratorStack[this.state.decoratorStack.length-1].length)throw this.raise(h.UnsupportedDecoratorExport,{at:e})}checkDeclaration(e){if("Identifier"===e.type)this.checkDuplicateExports(e,e.name);else if("ObjectPattern"===e.type)for(const t of e.properties)this.checkDeclaration(t);else if("ArrayPattern"===e.type)for(const t of e.elements)t&&this.checkDeclaration(t);else"ObjectProperty"===e.type?this.checkDeclaration(e.value):"RestElement"===e.type?this.checkDeclaration(e.argument):"AssignmentPattern"===e.type&&this.checkDeclaration(e.left)}checkDuplicateExports(e,t){this.exportedIdentifiers.has(t)&&("default"===t?this.raise(h.DuplicateDefaultExport,{at:e}):this.raise(h.DuplicateExport,{at:e,exportName:t})),this.exportedIdentifiers.add(t)}parseExportSpecifiers(e){const t=[];let n=!0;for(this.expect(5);!this.eat(8);){if(n)n=!1;else if(this.expect(12),this.eat(8))break;const r=this.isContextual(126),a=this.match(129),i=this.startNode();i.local=this.parseModuleExportName(),t.push(this.parseExportSpecifier(i,a,e,r))}return t}parseExportSpecifier(e,t,n,r){return this.eatContextual(93)?e.exported=this.parseModuleExportName():t?e.exported=function(e){const{type:t,start:n,end:r,loc:a,range:i,extra:s}=e;if("Placeholder"===t)return function(e){return He(e)}(e);const o=Object.create(ze);return o.type=t,o.start=n,o.end=r,o.loc=a,o.range=i,void 0!==e.raw?o.raw=e.raw:o.extra=s,o.value=e.value,o}(e.local):e.exported||(e.exported=He(e.local)),this.finishNode(e,"ExportSpecifier")}parseModuleExportName(){if(this.match(129)){const e=this.parseStringLiteral(this.state.value),t=e.value.match(Ct);return t&&this.raise(h.ModuleExportNameHasLoneSurrogate,{at:e,surrogateCharCode:t[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)}parseImport(e){if(e.specifiers=[],!this.match(129)){const t=!this.maybeParseDefaultImportSpecifier(e)||this.eat(12),n=t&&this.maybeParseStarImportSpecifier(e);t&&!n&&this.parseNamedImportSpecifiers(e),this.expectContextual(97)}e.source=this.parseImportSource();const t=this.maybeParseImportAssertions();if(t)e.assertions=t;else{const t=this.maybeParseModuleAttributes();t&&(e.attributes=t)}return this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.match(129)||this.unexpected(),this.parseExprAtom()}shouldParseDefaultImport(e){return V(this.state.type)}parseImportSpecifierLocal(e,t,n){t.local=this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,n))}finishImportSpecifier(e,t){return this.checkLVal(e.local,{in:e,binding:9}),this.finishNode(e,t)}parseAssertEntries(){const e=[],t=new Set;do{if(this.match(8))break;const n=this.startNode(),r=this.state.value;if(t.has(r)&&this.raise(h.ModuleAttributesWithDuplicateKeys,{at:this.state.startLoc,key:r}),t.add(r),this.match(129)?n.key=this.parseStringLiteral(r):n.key=this.parseIdentifier(!0),this.expect(14),!this.match(129))throw this.raise(h.ModuleAttributeInvalidValue,{at:this.state.startLoc});n.value=this.parseStringLiteral(this.state.value),this.finishNode(n,"ImportAttribute"),e.push(n)}while(this.eat(12));return e}maybeParseModuleAttributes(){if(!this.match(76)||this.hasPrecedingLineBreak())return this.hasPlugin("moduleAttributes")?[]:null;this.expectPlugin("moduleAttributes"),this.next();const e=[],t=new Set;do{const n=this.startNode();if(n.key=this.parseIdentifier(!0),"type"!==n.key.name&&this.raise(h.ModuleAttributeDifferentFromType,{at:n.key}),t.has(n.key.name)&&this.raise(h.ModuleAttributesWithDuplicateKeys,{at:n.key,key:n.key.name}),t.add(n.key.name),this.expect(14),!this.match(129))throw this.raise(h.ModuleAttributeInvalidValue,{at:this.state.startLoc});n.value=this.parseStringLiteral(this.state.value),this.finishNode(n,"ImportAttribute"),e.push(n)}while(this.eat(12));return e}maybeParseImportAssertions(){if(!this.isContextual(94)||this.hasPrecedingLineBreak())return this.hasPlugin("importAssertions")?[]:null;this.expectPlugin("importAssertions"),this.next(),this.eat(5);const e=this.parseAssertEntries();return this.eat(8),e}maybeParseDefaultImportSpecifier(e){return!!this.shouldParseDefaultImport(e)&&(this.parseImportSpecifierLocal(e,this.startNode(),"ImportDefaultSpecifier"),!0)}maybeParseStarImportSpecifier(e){if(this.match(55)){const t=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(e,t,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(e){let t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else{if(this.eat(14))throw this.raise(h.DestructureNamedImport,{at:this.state.startLoc});if(this.expect(12),this.eat(8))break}const n=this.startNode(),r=this.match(129),a=this.isContextual(126);n.imported=this.parseModuleExportName();const i=this.parseImportSpecifier(n,r,"type"===e.importKind||"typeof"===e.importKind,a);e.specifiers.push(i)}}parseImportSpecifier(e,t,n,r){if(this.eatContextual(93))e.local=this.parseIdentifier();else{const{imported:n}=e;if(t)throw this.raise(h.ImportBindingIsString,{at:e,importName:n.value});this.checkReservedWord(n.name,e.loc.start,!0,!0),e.local||(e.local=He(n))}return this.finishImportSpecifier(e,"ImportSpecifier")}isThisParam(e){return"Identifier"===e.type&&"this"===e.name}}class jt extends Lt{constructor(e,t){super(e=function(e){const t={};for(const n of Object.keys(At))t[n]=e&&null!=e[n]?e[n]:At[n];return t}(e),t),this.options=e,this.initializeScopes(),this.plugins=function(e){const t=new Map;for(const n of e){const[e,r]=Array.isArray(n)?n:[n,{}];t.has(e)||t.set(e,r||{})}return t}(this.options.plugins),this.filename=e.sourceFilename}getScopeHandler(){return ke}parse(){this.enterInitialScopes();const e=this.startNode(),t=this.startNode();return this.nextToken(),e.errors=null,this.parseTopLevel(e,t),e.errors=this.state.errors,e}}const _t=function(e){const t={};for(const n of Object.keys(e))t[n]=z(e[n]);return t}(K);function Mt(e,t){let n=jt;return null!=e&&e.plugins&&(function(e){if(Tt(e,"decorators")){if(Tt(e,"decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");const t=St(e,"decorators","decoratorsBeforeExport");if(null==t)throw new Error("The 'decorators' plugin requires a 'decoratorsBeforeExport' option, whose value must be a boolean. If you are migrating from Babylon/Babel 6 or want to use the old decorators proposal, you should use the 'decorators-legacy' plugin instead of 'decorators'.");if("boolean"!=typeof t)throw new Error("'decoratorsBeforeExport' must be a boolean.")}if(Tt(e,"flow")&&Tt(e,"typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(Tt(e,"placeholders")&&Tt(e,"v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(Tt(e,"pipelineOperator")){const t=St(e,"pipelineOperator","proposal");if(!bt.includes(t)){const e=bt.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${e}.`)}const n=Tt(e,["recordAndTuple",{syntaxType:"hash"}]);if("hack"===t){if(Tt(e,"placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(Tt(e,"v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");const t=St(e,"pipelineOperator","topicToken");if(!Et.includes(t)){const e=Et.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${e}.`)}if("#"===t&&n)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "hack", topicToken: "#" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}else if("smart"===t&&n)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "smart" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}if(Tt(e,"moduleAttributes")){if(Tt(e,"importAssertions"))throw new Error("Cannot combine importAssertions and moduleAttributes plugins.");if("may-2020"!==St(e,"moduleAttributes","version"))throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(Tt(e,"recordAndTuple")&&!Pt.includes(St(e,"recordAndTuple","syntaxType")))throw new Error("'recordAndTuple' requires 'syntaxType' option whose value should be one of: "+Pt.map((e=>`'${e}'`)).join(", "));if(Tt(e,"asyncDoExpressions")&&!Tt(e,"doExpressions")){const e=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw e.missingPlugins="doExpressions",e}}(e.plugins),n=function(e){const t=gt.filter((t=>Tt(e,t))),n=t.join("/");let r=kt[n];if(!r){r=jt;for(const e of t)r=xt[e](r);kt[n]=r}return r}(e.plugins)),new n(e,t)}const kt={};t.parse=function(e,t){var n;if("unambiguous"!==(null==(n=t)?void 0:n.sourceType))return Mt(t,e).parse();t=Object.assign({},t);try{t.sourceType="module";const n=Mt(t,e),r=n.parse();if(n.sawUnambiguousESM)return r;if(n.ambiguousScriptDifferentAst)try{return t.sourceType="script",Mt(t,e).parse()}catch(e){}else r.program.sourceType="script";return r}catch(n){try{return t.sourceType="script",Mt(t,e).parse()}catch(e){}throw n}},t.parseExpression=function(e,t){const n=Mt(t,e);return n.options.strictMode&&(n.state.strict=!0),n.getExpression()},t.tokTypes=_t},732:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clear=function(){a(),i()},t.clearPath=a,t.clearScope=i,t.scope=t.path=void 0;let n=new WeakMap;t.path=n;let r=new WeakMap;function a(){t.path=n=new WeakMap}function i(){t.scope=r=new WeakMap}t.scope=r},66617:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(72969),a=n(38218);const{VISITOR_KEYS:i}=a;t.default=class{constructor(e,t,n,r){this.queue=null,this.priorityQueue=null,this.parentPath=r,this.scope=e,this.state=n,this.opts=t}shouldVisit(e){const t=this.opts;if(t.enter||t.exit)return!0;if(t[e.type])return!0;const n=i[e.type];if(null==n||!n.length)return!1;for(const t of n)if(e[t])return!0;return!1}create(e,t,n,a){return r.default.get({parentPath:this.parentPath,parent:e,container:t,key:n,listKey:a})}maybeQueue(e,t){this.queue&&(t?this.queue.push(e):this.priorityQueue.push(e))}visitMultiple(e,t,n){if(0===e.length)return!1;const r=[];for(let a=0;a<e.length;a++){const i=e[a];i&&this.shouldVisit(i)&&r.push(this.create(t,e,a,n))}return this.visitQueue(r)}visitSingle(e,t){return!!this.shouldVisit(e[t])&&this.visitQueue([this.create(e,e,t)])}visitQueue(e){this.queue=e,this.priorityQueue=[];const t=new WeakSet;let n=!1;for(const r of e){if(r.resync(),0!==r.contexts.length&&r.contexts[r.contexts.length-1]===this||r.pushContext(this),null===r.key)continue;const{node:a}=r;if(!t.has(a)){if(a&&t.add(a),r.visit()){n=!0;break}if(this.priorityQueue.length&&(n=this.visitQueue(this.priorityQueue),this.priorityQueue=[],this.queue=e,n))break}}for(const t of e)t.popContext();return this.queue=null,n}visit(e,t){const n=e[t];return!!n&&(Array.isArray(n)?this.visitMultiple(n,e,t):this.visitSingle(e,t))}}},2180:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=class{getCode(){}getScope(){}addHelper(){throw new Error("Helpers are not supported by the default hub.")}buildError(e,t,n=TypeError){return new n(t)}}},49838:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"Hub",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"NodePath",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"Scope",{enumerable:!0,get:function(){return l.default}}),t.visitors=t.default=void 0;var r=n(41169);t.visitors=r;var a=n(38218),i=n(732),s=n(46033),o=n(72969),l=n(82570),p=n(2180);const{VISITOR_KEYS:c,removeProperties:u,traverseFast:d}=a;function f(e,t={},n,a,i){if(e){if(!t.noScope&&!n&&"Program"!==e.type&&"File"!==e.type)throw new Error(`You must pass a scope and parentPath unless traversing a Program/File. Instead of that you tried to traverse a ${e.type} node without passing scope and parentPath.`);c[e.type]&&(r.explode(t),(0,s.traverseNode)(e,t,n,a,i))}}var y=f;function m(e,t){e.node.type===t.type&&(t.has=!0,e.stop())}t.default=y,f.visitors=r,f.verify=r.verify,f.explode=r.explode,f.cheap=function(e,t){return d(e,t)},f.node=function(e,t,n,r,a,i){(0,s.traverseNode)(e,t,n,r,a,i)},f.clearNode=function(e,t){u(e,t),i.path.delete(e)},f.removeProperties=function(e,t){return d(e,f.clearNode,t),e},f.hasType=function(e,t,n){if(null!=n&&n.includes(e.type))return!1;if(e.type===t)return!0;const r={has:!1,type:t};return f(e,{noScope:!0,denylist:n,enter:m},null,r),r.has},f.cache=i},26576:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.find=function(e){let t=this;do{if(e(t))return t}while(t=t.parentPath);return null},t.findParent=function(e){let t=this;for(;t=t.parentPath;)if(e(t))return t;return null},t.getAncestry=function(){let e=this;const t=[];do{t.push(e)}while(e=e.parentPath);return t},t.getDeepestCommonAncestorFrom=function(e,t){if(!e.length)return this;if(1===e.length)return e[0];let n,r,a=1/0;const i=e.map((e=>{const t=[];do{t.unshift(e)}while((e=e.parentPath)&&e!==this);return t.length<a&&(a=t.length),t})),s=i[0];e:for(let e=0;e<a;e++){const t=s[e];for(const n of i)if(n[e]!==t)break e;n=e,r=t}if(r)return t?t(r,n,i):r;throw new Error("Couldn't find intersection")},t.getEarliestCommonAncestorFrom=function(e){return this.getDeepestCommonAncestorFrom(e,(function(e,t,n){let r;const i=a[e.type];for(const e of n){const n=e[t+1];r?(n.listKey&&r.listKey===n.listKey&&n.key<r.key||i.indexOf(r.parentKey)>i.indexOf(n.parentKey))&&(r=n):r=n}return r}))},t.getFunctionParent=function(){return this.findParent((e=>e.isFunction()))},t.getStatementParent=function(){let e=this;do{if(!e.parentPath||Array.isArray(e.container)&&e.isStatement())break;e=e.parentPath}while(e);if(e&&(e.isProgram()||e.isFile()))throw new Error("File/Program node, we can't possibly find a statement parent to this");return e},t.inType=function(...e){let t=this;for(;t;){for(const n of e)if(t.node.type===n)return!0;t=t.parentPath}return!1},t.isAncestor=function(e){return e.isDescendant(this)},t.isDescendant=function(e){return!!this.findParent((t=>t===e))};var r=n(38218);n(72969);const{VISITOR_KEYS:a}=r},91483:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.addComment=function(e,t,n){a(this.node,e,t,n)},t.addComments=function(e,t){i(this.node,e,t)},t.shareCommentsWithSiblings=function(){if("string"==typeof this.key)return;const e=this.node;if(!e)return;const t=e.trailingComments,n=e.leadingComments;if(!t&&!n)return;const r=this.getSibling(this.key-1),a=this.getSibling(this.key+1),i=Boolean(r.node),s=Boolean(a.node);i&&!s?r.addComments("trailing",t):s&&!i&&a.addComments("leading",n)};var r=n(38218);const{addComment:a,addComments:i}=r},72523:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._call=function(e){if(!e)return!1;for(const t of e){if(!t)continue;const e=this.node;if(!e)return!0;const n=t.call(this.state,this,this.state);if(n&&"object"==typeof n&&"function"==typeof n.then)throw new Error("You appear to be using a plugin with an async traversal visitor, which your current version of Babel does not support. If you're using a published plugin, you may need to upgrade your @babel/core version.");if(n)throw new Error(`Unexpected return value from visitor method ${t}`);if(this.node!==e)return!0;if(this._traverseFlags>0)return!0}return!1},t._getQueueContexts=function(){let e=this,t=this.contexts;for(;!t.length&&(e=e.parentPath,e);)t=e.contexts;return t},t._resyncKey=function(){if(this.container&&this.node!==this.container[this.key]){if(Array.isArray(this.container)){for(let e=0;e<this.container.length;e++)if(this.container[e]===this.node)return this.setKey(e)}else for(const e of Object.keys(this.container))if(this.container[e]===this.node)return this.setKey(e);this.key=null}},t._resyncList=function(){if(!this.parent||!this.inList)return;const e=this.parent[this.listKey];this.container!==e&&(this.container=e||null)},t._resyncParent=function(){this.parentPath&&(this.parent=this.parentPath.node)},t._resyncRemoved=function(){null!=this.key&&this.container&&this.container[this.key]===this.node||this._markRemoved()},t.call=function(e){const t=this.opts;return this.debug(e),!(!this.node||!this._call(t[e]))||!!this.node&&this._call(t[this.node.type]&&t[this.node.type][e])},t.isBlacklisted=t.isDenylisted=function(){var e;const t=null!=(e=this.opts.denylist)?e:this.opts.blacklist;return t&&t.indexOf(this.node.type)>-1},t.popContext=function(){this.contexts.pop(),this.contexts.length>0?this.setContext(this.contexts[this.contexts.length-1]):this.setContext(void 0)},t.pushContext=function(e){this.contexts.push(e),this.setContext(e)},t.requeue=function(e=this){if(e.removed)return;const t=this.contexts;for(const n of t)n.maybeQueue(e)},t.resync=function(){this.removed||(this._resyncParent(),this._resyncList(),this._resyncKey())},t.setContext=function(e){return null!=this.skipKeys&&(this.skipKeys={}),this._traverseFlags=0,e&&(this.context=e,this.state=e.state,this.opts=e.opts),this.setScope(),this},t.setKey=function(e){var t;this.key=e,this.node=this.container[this.key],this.type=null==(t=this.node)?void 0:t.type},t.setScope=function(){if(this.opts&&this.opts.noScope)return;let e,t=this.parentPath;for("key"===this.key&&t.isMethod()&&(t=t.parentPath);t&&!e;){if(t.opts&&t.opts.noScope)return;e=t.scope,t=t.parentPath}this.scope=this.getScope(e),this.scope&&this.scope.init()},t.setup=function(e,t,n,r){this.listKey=n,this.container=t,this.parentPath=e||this.parentPath,this.setKey(r)},t.skip=function(){this.shouldSkip=!0},t.skipKey=function(e){null==this.skipKeys&&(this.skipKeys={}),this.skipKeys[e]=!0},t.stop=function(){this._traverseFlags|=a.SHOULD_SKIP|a.SHOULD_STOP},t.visit=function(){if(!this.node)return!1;if(this.isDenylisted())return!1;if(this.opts.shouldSkip&&this.opts.shouldSkip(this))return!1;const e=this.context;return this.shouldSkip||this.call("enter")?(this.debug("Skip..."),this.shouldStop):(i(this,e),this.debug("Recursing into..."),this.shouldStop=(0,r.traverseNode)(this.node,this.opts,this.scope,this.state,this,this.skipKeys),i(this,e),this.call("exit"),this.shouldStop)};var r=n(46033),a=n(72969);function i(e,t){e.context!==t&&(e.context=t,e.state=t.state,e.opts=t.opts)}},64249:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.arrowFunctionToExpression=function({allowInsertArrow:e=!0,specCompliant:t=!1,noNewArrows:n=!t}={}){if(!this.isArrowFunctionExpression())throw this.buildCodeFrameError("Cannot convert non-arrow function to a function expression.");const{thisBinding:r,fnPath:a}=j(this,n,e);if(a.ensureBlock(),a.node.type="FunctionExpression",!n){const e=r?null:a.scope.generateUidIdentifier("arrowCheckId");e&&a.parentPath.scope.push({id:e,init:x([])}),a.get("body").unshiftContainer("body",f(u(this.hub.addHelper("newArrowCheck"),[D(),y(e?e.name:r)]))),a.replaceWith(u(b((0,i.default)(this,!0)||a.node,y("bind")),[e?y(e.name):D()]))}},t.arrowFunctionToShadowed=function(){this.isArrowFunctionExpression()&&this.arrowFunctionToExpression()},t.ensureBlock=function(){const e=this.get("body"),t=e.node;if(Array.isArray(e))throw new Error("Can't convert array path to a block statement");if(!t)throw new Error("Can't convert node without a body");if(e.isBlockStatement())return t;const n=[];let r,a,i="body";e.isStatement()?(a="body",r=0,n.push(e.node)):(i+=".body.0",this.isFunction()?(r="argument",n.push(A(e.node))):(r="expression",n.push(f(e.node)))),this.node.body=c(n);const s=this.get(i);return e.setup(s,a?s.node[a]:s.node,a,r),this.node},t.toComputedKey=function(){let e;if(this.isMemberExpression())e=this.node.property;else{if(!this.isProperty()&&!this.isMethod())throw new ReferenceError("todo");e=this.node.key}return this.node.computed||m(e)&&(e=I(e.name)),e},t.unwrapFunctionEnvironment=function(){if(!this.isArrowFunctionExpression()&&!this.isFunctionExpression()&&!this.isFunctionDeclaration())throw this.buildCodeFrameError("Can only unwrap the environment of a function.");j(this)};var r=n(38218),a=n(34705),i=n(22023),s=n(41169);const{arrowFunctionExpression:o,assignmentExpression:l,binaryExpression:p,blockStatement:c,callExpression:u,conditionalExpression:d,expressionStatement:f,identifier:y,isIdentifier:m,jsxIdentifier:h,logicalExpression:T,LOGICAL_OPERATORS:S,memberExpression:b,metaProperty:E,numericLiteral:P,objectExpression:x,restElement:g,returnStatement:A,sequenceExpression:v,spreadElement:O,stringLiteral:I,super:N,thisExpression:D,toExpression:C,unaryExpression:w}=r,L=(0,s.merge)([{CallExpression(e,{allSuperCalls:t}){e.get("callee").isSuper()&&t.push(e)}},a.default]);function j(e,t=!0,n=!0){let r,a=e.findParent((e=>e.isArrowFunctionExpression()?(null!=r||(r=e),!1):e.isFunction()||e.isProgram()||e.isClassProperty({static:!1})||e.isClassPrivateProperty({static:!1})));const i=a.isClassMethod({kind:"constructor"});if(a.isClassProperty()||a.isClassPrivateProperty())if(r)a=r;else{if(!n)throw e.buildCodeFrameError("Unable to transform arrow inside class property");e.replaceWith(u(o([],C(e.node)),[])),a=e.get("callee"),e=a.get("body")}const{thisPaths:s,argumentsPaths:c,newTargetPaths:f,superProps:m,superCalls:x}=function(e){const t=[],n=[],r=[],a=[],i=[];return e.traverse(B,{thisPaths:t,argumentsPaths:n,newTargetPaths:r,superProps:a,superCalls:i}),{thisPaths:t,argumentsPaths:n,newTargetPaths:r,superProps:a,superCalls:i}}(e);if(i&&x.length>0){if(!n)throw x[0].buildCodeFrameError("Unable to handle nested super() usage in arrow");const e=[];a.traverse(L,{allSuperCalls:e});const t=function(e){return k(e,"supercall",(()=>{const t=e.scope.generateUidIdentifier("args");return o([g(t)],u(N(),[O(y(t.name))]))}))}(a);e.forEach((e=>{const n=y(t);n.loc=e.node.callee.loc,e.get("callee").replaceWith(n)}))}if(c.length>0){const e=k(a,"arguments",(()=>{const e=()=>y("arguments");return a.scope.path.isProgram()?d(p("===",w("typeof",e()),I("undefined")),a.scope.buildUndefinedNode(),e()):e()}));c.forEach((t=>{const n=y(e);n.loc=t.node.loc,t.replaceWith(n)}))}if(f.length>0){const e=k(a,"newtarget",(()=>E(y("new"),y("target"))));f.forEach((t=>{const n=y(e);n.loc=t.node.loc,t.replaceWith(n)}))}if(m.length>0){if(!n)throw m[0].buildCodeFrameError("Unable to handle nested super.prop usage");m.reduce(((e,t)=>e.concat(function(e){if(e.parentPath.isAssignmentExpression()&&"="!==e.parentPath.node.operator){const n=e.parentPath,r=n.node.operator.slice(0,-1),a=n.node.right,i=function(e){return S.includes(e)}(r);if(e.node.computed){const s=e.scope.generateDeclaredUidIdentifier("tmp"),o=e.node.object,p=e.node.property;n.get("left").replaceWith(b(o,l("=",s,p),!0)),n.get("right").replaceWith(t(i?"=":r,b(o,y(s.name),!0),a))}else{const s=e.node.object,o=e.node.property;n.get("left").replaceWith(b(s,o)),n.get("right").replaceWith(t(i?"=":r,b(s,y(o.name)),a))}return i?n.replaceWith(T(r,n.node.left,n.node.right)):n.node.operator="=",[n.get("left"),n.get("right").get("left")]}if(e.parentPath.isUpdateExpression()){const t=e.parentPath,n=e.scope.generateDeclaredUidIdentifier("tmp"),r=e.node.computed?e.scope.generateDeclaredUidIdentifier("prop"):null,a=[l("=",n,b(e.node.object,r?l("=",r,e.node.property):e.node.property,e.node.computed)),l("=",b(e.node.object,r?y(r.name):e.node.property,e.node.computed),p(e.parentPath.node.operator[0],y(n.name),P(1)))];return e.parentPath.node.prefix||a.push(y(n.name)),t.replaceWith(v(a)),[t.get("expressions.0.right"),t.get("expressions.1.left")]}return[e];function t(e,t,n){return"="===e?l("=",t,n):p(e,t,n)}}(t))),[]).forEach((e=>{const t=e.node.computed?"":e.get("property").node.name,n=e.parentPath.isAssignmentExpression({left:e.node}),r=e.parentPath.isCallExpression({callee:e.node}),i=function(e,t,n){return k(e,`superprop_${t?"set":"get"}:${n||""}`,(()=>{const r=[];let a;if(n)a=b(N(),y(n));else{const t=e.scope.generateUidIdentifier("prop");r.unshift(t),a=b(N(),y(t.name),!0)}if(t){const t=e.scope.generateUidIdentifier("value");r.push(t),a=l("=",a,y(t.name))}return o(r,a)}))}(a,n,t),p=[];if(e.node.computed&&p.push(e.get("property").node),n){const t=e.parentPath.node.right;p.push(t)}const c=u(y(i),p);r?(e.parentPath.unshiftContainer("arguments",D()),e.replaceWith(b(c,y("call"))),s.push(e.parentPath.get("arguments.0"))):n?e.parentPath.replaceWith(c):e.replaceWith(c)}))}let A;return(s.length>0||!t)&&(A=function(e,t){return k(e,"this",(n=>{if(!t||!_(e))return D();e.traverse(M,{supers:new WeakSet,thisBinding:n})}))}(a,i),(t||i&&_(a))&&(s.forEach((e=>{const t=e.isJSX()?h(A):y(A);t.loc=e.node.loc,e.replaceWith(t)})),t||(A=null))),{thisBinding:A,fnPath:e}}function _(e){return e.isClassMethod()&&!!e.parentPath.parentPath.node.superClass}const M=(0,s.merge)([{CallExpression(e,{supers:t,thisBinding:n}){e.get("callee").isSuper()&&(t.has(e.node)||(t.add(e.node),e.replaceWithMultiple([e.node,l("=",y(n),y("this"))])))}},a.default]);function k(e,t,n){const r="binding:"+t;let a=e.getData(r);if(!a){const i=e.scope.generateUidIdentifier(t);a=i.name,e.setData(r,a),e.scope.push({id:i,init:n(a)})}return a}const B=(0,s.merge)([{ThisExpression(e,{thisPaths:t}){t.push(e)},JSXIdentifier(e,{thisPaths:t}){"this"===e.node.name&&(e.parentPath.isJSXMemberExpression({object:e.node})||e.parentPath.isJSXOpeningElement({name:e.node}))&&t.push(e)},CallExpression(e,{superCalls:t}){e.get("callee").isSuper()&&t.push(e)},MemberExpression(e,{superProps:t}){e.get("object").isSuper()&&t.push(e)},Identifier(e,{argumentsPaths:t}){if(!e.isReferencedIdentifier({name:"arguments"}))return;let n=e.scope;do{if(n.hasOwnBinding("arguments"))return void n.rename("arguments");if(n.path.isFunction()&&!n.path.isArrowFunctionExpression())break}while(n=n.parent);t.push(e)},MetaProperty(e,{newTargetPaths:t}){e.get("meta").isIdentifier({name:"new"})&&e.get("property").isIdentifier({name:"target"})&&t.push(e)}},a.default])},63456:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.evaluate=function(){const e={confident:!0,deoptPath:null,seen:new Map};let t=i(this,e);return e.confident||(t=void 0),{confident:e.confident,deopt:e.deoptPath,value:t}},t.evaluateTruthy=function(){const e=this.evaluate();if(e.confident)return!!e.value};const n=["String","Number","Math"],r=["random"];function a(e,t){t.confident&&(t.deoptPath=e,t.confident=!1)}function i(e,t){const{node:o}=e,{seen:l}=t;if(l.has(o)){const n=l.get(o);return n.resolved?n.value:void a(e,t)}{const p={resolved:!1};l.set(o,p);const c=function(e,t){if(t.confident){if(e.isSequenceExpression()){const n=e.get("expressions");return i(n[n.length-1],t)}if(e.isStringLiteral()||e.isNumericLiteral()||e.isBooleanLiteral())return e.node.value;if(e.isNullLiteral())return null;if(e.isTemplateLiteral())return s(e,e.node.quasis,t);if(e.isTaggedTemplateExpression()&&e.get("tag").isMemberExpression()){const n=e.get("tag.object"),{node:{name:r}}=n,a=e.get("tag.property");if(n.isIdentifier()&&"String"===r&&!e.scope.getBinding(r)&&a.isIdentifier()&&"raw"===a.node.name)return s(e,e.node.quasi.quasis,t,!0)}if(e.isConditionalExpression()){const n=i(e.get("test"),t);if(!t.confident)return;return i(n?e.get("consequent"):e.get("alternate"),t)}if(e.isExpressionWrapper())return i(e.get("expression"),t);if(e.isMemberExpression()&&!e.parentPath.isCallExpression({callee:e.node})){const t=e.get("property"),n=e.get("object");if(n.isLiteral()&&t.isIdentifier()){const e=n.node.value,r=typeof e;if("number"===r||"string"===r)return e[t.node.name]}}if(e.isReferencedIdentifier()){const n=e.scope.getBinding(e.node.name);if(n&&n.constantViolations.length>0)return a(n.path,t);if(n&&e.node.start<n.path.node.end)return a(n.path,t);if(null!=n&&n.hasValue)return n.value;{if("undefined"===e.node.name)return n?a(n.path,t):void 0;if("Infinity"===e.node.name)return n?a(n.path,t):1/0;if("NaN"===e.node.name)return n?a(n.path,t):NaN;const r=e.resolve();return r===e?a(e,t):i(r,t)}}if(e.isUnaryExpression({prefix:!0})){if("void"===e.node.operator)return;const n=e.get("argument");if("typeof"===e.node.operator&&(n.isFunction()||n.isClass()))return"function";const r=i(n,t);if(!t.confident)return;switch(e.node.operator){case"!":return!r;case"+":return+r;case"-":return-r;case"~":return~r;case"typeof":return typeof r}}if(e.isArrayExpression()){const n=[],r=e.get("elements");for(const e of r){const r=e.evaluate();if(!r.confident)return a(r.deopt,t);n.push(r.value)}return n}if(e.isObjectExpression()){const n={},r=e.get("properties");for(const e of r){if(e.isObjectMethod()||e.isSpreadElement())return a(e,t);let r=e.get("key");if(e.node.computed){if(r=r.evaluate(),!r.confident)return a(r.deopt,t);r=r.value}else r=r.isIdentifier()?r.node.name:r.node.value;let i=e.get("value").evaluate();if(!i.confident)return a(i.deopt,t);i=i.value,n[r]=i}return n}if(e.isLogicalExpression()){const n=t.confident,r=i(e.get("left"),t),a=t.confident;t.confident=n;const s=i(e.get("right"),t),o=t.confident;switch(e.node.operator){case"||":if(t.confident=a&&(!!r||o),!t.confident)return;return r||s;case"&&":if(t.confident=a&&(!r||o),!t.confident)return;return r&&s}}if(e.isBinaryExpression()){const n=i(e.get("left"),t);if(!t.confident)return;const r=i(e.get("right"),t);if(!t.confident)return;switch(e.node.operator){case"-":return n-r;case"+":return n+r;case"/":return n/r;case"*":return n*r;case"%":return n%r;case"**":return Math.pow(n,r);case"<":return n<r;case">":return n>r;case"<=":return n<=r;case">=":return n>=r;case"==":return n==r;case"!=":return n!=r;case"===":return n===r;case"!==":return n!==r;case"|":return n|r;case"&":return n&r;case"^":return n^r;case"<<":return n<<r;case">>":return n>>r;case">>>":return n>>>r}}if(e.isCallExpression()){const a=e.get("callee");let s,o;if(a.isIdentifier()&&!e.scope.getBinding(a.node.name)&&n.indexOf(a.node.name)>=0&&(o=global[a.node.name]),a.isMemberExpression()){const e=a.get("object"),t=a.get("property");if(e.isIdentifier()&&t.isIdentifier()&&n.indexOf(e.node.name)>=0&&r.indexOf(t.node.name)<0&&(s=global[e.node.name],o=s[t.node.name]),e.isLiteral()&&t.isIdentifier()){const n=typeof e.node.value;"string"!==n&&"number"!==n||(s=e.node.value,o=s[t.node.name])}}if(o){const n=e.get("arguments").map((e=>i(e,t)));if(!t.confident)return;return o.apply(s,n)}}a(e,t)}}(e,t);return t.confident&&(p.resolved=!0,p.value=c),c}}function s(e,t,n,r=!1){let a="",s=0;const o=e.get("expressions");for(const e of t){if(!n.confident)break;a+=r?e.value.raw:e.value.cooked;const t=o[s++];t&&(a+=String(i(t,n)))}if(n.confident)return a}},39463:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._getKey=function(e,t){const n=this.node,a=n[e];return Array.isArray(a)?a.map(((i,s)=>r.default.get({listKey:e,parentPath:this,parent:n,container:a,key:s}).setContext(t))):r.default.get({parentPath:this,parent:n,container:n,key:e}).setContext(t)},t._getPattern=function(e,t){let n=this;for(const r of e)n="."===r?n.parentPath:Array.isArray(n)?n[r]:n.get(r,t);return n},t.get=function(e,t=!0){!0===t&&(t=this.context);const n=e.split(".");return 1===n.length?this._getKey(e,t):this._getPattern(n,t)},t.getAllNextSiblings=function(){let e=this.key,t=this.getSibling(++e);const n=[];for(;t.node;)n.push(t),t=this.getSibling(++e);return n},t.getAllPrevSiblings=function(){let e=this.key,t=this.getSibling(--e);const n=[];for(;t.node;)n.push(t),t=this.getSibling(--e);return n},t.getBindingIdentifierPaths=function(e=!1,t=!1){const n=[this],r=Object.create(null);for(;n.length;){const a=n.shift();if(!a)continue;if(!a.node)continue;const s=i.keys[a.node.type];if(a.isIdentifier())e?(r[a.node.name]=r[a.node.name]||[]).push(a):r[a.node.name]=a;else if(a.isExportDeclaration()){const e=a.get("declaration");o(e)&&n.push(e)}else{if(t){if(a.isFunctionDeclaration()){n.push(a.get("id"));continue}if(a.isFunctionExpression())continue}if(s)for(let e=0;e<s.length;e++){const t=s[e],r=a.get(t);Array.isArray(r)?n.push(...r):r.node&&n.push(r)}}}return r},t.getBindingIdentifiers=function(e){return i(this.node,e)},t.getCompletionRecords=function(){return h(this,{canHaveBreak:!1,shouldPopulateBreak:!1,inCaseClause:!1}).map((e=>e.path))},t.getNextSibling=function(){return this.getSibling(this.key+1)},t.getOpposite=function(){return"left"===this.key?this.getSibling("right"):"right"===this.key?this.getSibling("left"):null},t.getOuterBindingIdentifierPaths=function(e){return this.getBindingIdentifierPaths(e,!0)},t.getOuterBindingIdentifiers=function(e){return s(this.node,e)},t.getPrevSibling=function(){return this.getSibling(this.key-1)},t.getSibling=function(e){return r.default.get({parentPath:this.parentPath,parent:this.parent,container:this.container,listKey:this.listKey,key:e}).setContext(this.context)};var r=n(72969),a=n(38218);const{getBindingIdentifiers:i,getOuterBindingIdentifiers:s,isDeclaration:o,numericLiteral:l,unaryExpression:p}=a,c=0,u=1;function d(e,t,n){return e&&t.push(...h(e,n)),t}function f(e){e.forEach((e=>{e.type=u}))}function y(e,t){e.forEach((e=>{e.path.isBreakStatement({label:null})&&(t?e.path.replaceWith(p("void",l(0))):e.path.remove())}))}function m(e,t){const n=[];if(t.canHaveBreak){let r=[];for(let a=0;a<e.length;a++){const i=e[a],s=Object.assign({},t,{inCaseClause:!1});i.isBlockStatement()&&(t.inCaseClause||t.shouldPopulateBreak)?s.shouldPopulateBreak=!0:s.shouldPopulateBreak=!1;const o=h(i,s);if(o.length>0&&o.every((e=>e.type===u))){r.length>0&&o.every((e=>e.path.isBreakStatement({label:null})))?(f(r),n.push(...r),r.some((e=>e.path.isDeclaration()))&&(n.push(...o),y(o,!0)),y(o,!1)):(n.push(...o),t.shouldPopulateBreak||y(o,!0));break}if(a===e.length-1)n.push(...o);else{r=[];for(let e=0;e<o.length;e++){const t=o[e];t.type===u&&n.push(t),t.type===c&&r.push(t)}}}}else if(e.length)for(let r=e.length-1;r>=0;r--){const a=h(e[r],t);if(a.length>1||1===a.length&&!a[0].path.isVariableDeclaration()){n.push(...a);break}}return n}function h(e,t){let n=[];if(e.isIfStatement())n=d(e.get("consequent"),n,t),n=d(e.get("alternate"),n,t);else{if(e.isDoExpression()||e.isFor()||e.isWhile()||e.isLabeledStatement())return d(e.get("body"),n,t);if(e.isProgram()||e.isBlockStatement())return m(e.get("body"),t);if(e.isFunction())return h(e.get("body"),t);if(e.isTryStatement())n=d(e.get("block"),n,t),n=d(e.get("handler"),n,t);else{if(e.isCatchClause())return d(e.get("body"),n,t);if(e.isSwitchStatement())return function(e,t,n){let r=[];for(let a=0;a<e.length;a++){const i=h(e[a],n),s=[],o=[];for(const e of i)e.type===c&&s.push(e),e.type===u&&o.push(e);s.length&&(r=s),t.push(...o)}return t.push(...r),t}(e.get("cases"),n,t);if(e.isSwitchCase())return m(e.get("consequent"),{canHaveBreak:!0,shouldPopulateBreak:!1,inCaseClause:!0});e.isBreakStatement()?n.push(function(e){return{type:u,path:e}}(e)):n.push(function(e){return{type:c,path:e}}(e))}}return n}},72969:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.SHOULD_STOP=t.SHOULD_SKIP=t.REMOVED=void 0;var r=n(24387),a=n(15158),i=n(49838),s=n(82570),o=n(38218),l=o,p=n(732),c=n(27848),u=n(26576),d=n(10863),f=n(30023),y=n(63456),m=n(64249),h=n(77743),T=n(72523),S=n(92052),b=n(68129),E=n(39463),P=n(91483);const{validate:x}=o,g=a("babel");t.REMOVED=1,t.SHOULD_STOP=2,t.SHOULD_SKIP=4;class A{constructor(e,t){this.contexts=[],this.state=null,this.opts=null,this._traverseFlags=0,this.skipKeys=null,this.parentPath=null,this.container=null,this.listKey=null,this.key=null,this.node=null,this.type=null,this.parent=t,this.hub=e,this.data=null,this.context=null,this.scope=null}static get({hub:e,parentPath:t,parent:n,container:r,listKey:a,key:i}){if(!e&&t&&(e=t.hub),!n)throw new Error("To get a node path the parent needs to exist");const s=r[i];let o=p.path.get(n);o||(o=new Map,p.path.set(n,o));let l=o.get(s);return l||(l=new A(e,n),s&&o.set(s,l)),l.setup(t,r,a,i),l}getScope(e){return this.isScope()?new s.default(this):e}setData(e,t){return null==this.data&&(this.data=Object.create(null)),this.data[e]=t}getData(e,t){null==this.data&&(this.data=Object.create(null));let n=this.data[e];return void 0===n&&void 0!==t&&(n=this.data[e]=t),n}hasNode(){return null!=this.node}buildCodeFrameError(e,t=SyntaxError){return this.hub.buildError(this.node,e,t)}traverse(e,t){(0,i.default)(this.node,e,this.scope,t,this)}set(e,t){x(this.node,e,t),this.node[e]=t}getPathLocation(){const e=[];let t=this;do{let n=t.key;t.inList&&(n=`${t.listKey}[${n}]`),e.unshift(n)}while(t=t.parentPath);return e.join(".")}debug(e){g.enabled&&g(`${this.getPathLocation()} ${this.type}: ${e}`)}toString(){return(0,c.default)(this.node).code}get inList(){return!!this.listKey}set inList(e){e||(this.listKey=null)}get parentKey(){return this.listKey||this.key}get shouldSkip(){return!!(4&this._traverseFlags)}set shouldSkip(e){e?this._traverseFlags|=4:this._traverseFlags&=-5}get shouldStop(){return!!(2&this._traverseFlags)}set shouldStop(e){e?this._traverseFlags|=2:this._traverseFlags&=-3}get removed(){return!!(1&this._traverseFlags)}set removed(e){e?this._traverseFlags|=1:this._traverseFlags&=-2}}Object.assign(A.prototype,u,d,f,y,m,h,T,S,b,E,P);for(const e of l.TYPES){const t=`is${e}`,n=l[t];A.prototype[t]=function(e){return n(this.node,e)},A.prototype[`assert${e}`]=function(t){if(!n(this.node,t))throw new TypeError(`Expected node path of type ${e}`)}}for(const e of Object.keys(r)){if("_"===e[0])continue;l.TYPES.indexOf(e)<0&&l.TYPES.push(e);const t=r[e];A.prototype[`is${e}`]=function(e){return t.checkPath(this,e)}}var v=A;t.default=v},10863:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._getTypeAnnotation=function(){const e=this.node;if(e){if(e.typeAnnotation)return e.typeAnnotation;if(!E.has(e)){E.add(e);try{var t;let n=r[e.type];if(n)return n.call(this,e);if(n=r[this.parentPath.type],null!=(t=n)&&t.validParent)return this.parentPath.getTypeAnnotation()}finally{E.delete(e)}}}else if("init"===this.key&&this.parentPath.isVariableDeclarator()){const e=this.parentPath.parentPath,t=e.parentPath;return"left"===e.key&&t.isForInStatement()?S():"left"===e.key&&t.isForOfStatement()?i():b()}},t.baseTypeStrictlyMatches=function(e){const t=this.getTypeAnnotation(),n=e.getTypeAnnotation();return!(s(t)||!p(t))&&n.type===t.type},t.couldBeBaseType=function(e){const t=this.getTypeAnnotation();if(s(t))return!0;if(h(t)){for(const n of t.types)if(s(n)||P(e,n,!0))return!0;return!1}return P(e,t,!0)},t.getTypeAnnotation=function(){if(this.typeAnnotation)return this.typeAnnotation;let e=this._getTypeAnnotation()||i();return m(e)&&(e=e.typeAnnotation),this.typeAnnotation=e},t.isBaseType=function(e,t){return P(e,this.getTypeAnnotation(),t)},t.isGenericType=function(e){const t=this.getTypeAnnotation();return c(t)&&u(t.id,{name:e})};var r=n(75081),a=n(38218);const{anyTypeAnnotation:i,isAnyTypeAnnotation:s,isBooleanTypeAnnotation:o,isEmptyTypeAnnotation:l,isFlowBaseAnnotation:p,isGenericTypeAnnotation:c,isIdentifier:u,isMixedTypeAnnotation:d,isNumberTypeAnnotation:f,isStringTypeAnnotation:y,isTypeAnnotation:m,isUnionTypeAnnotation:h,isVoidTypeAnnotation:T,stringTypeAnnotation:S,voidTypeAnnotation:b}=a,E=new WeakSet;function P(e,t,n){if("string"===e)return y(t);if("number"===e)return f(t);if("boolean"===e)return o(t);if("any"===e)return s(t);if("mixed"===e)return d(t);if("empty"===e)return l(t);if("void"===e)return T(t);if(n)return!1;throw new Error(`Unknown base type ${e}`)}},31674:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!this.isReferenced())return;const t=this.scope.getBinding(e.name);return t?t.identifier.typeAnnotation?t.identifier.typeAnnotation:function(e,t,n){const r=[],a=[];let o=d(e,t,a);const c=y(e,t,n);if(c){const t=d(e,c.ifStatement);o=o.filter((e=>t.indexOf(e)<0)),r.push(c.typeAnnotation)}if(o.length){o.push(...a);for(const e of o)r.push(e.getTypeAnnotation())}if(r.length)return p(r[0])&&s?s(r):i?i(r):l(r)}(t,this,e.name):"undefined"===e.name?u():"NaN"===e.name||"Infinity"===e.name?c():void e.name};var r=n(38218);const{BOOLEAN_NUMBER_BINARY_OPERATORS:a,createFlowUnionType:i,createTSUnionType:s,createTypeAnnotationBasedOnTypeof:o,createUnionTypeAnnotation:l,isTSTypeAnnotation:p,numberTypeAnnotation:c,voidTypeAnnotation:u}=r;function d(e,t,n){const r=e.constantViolations.slice();return r.unshift(e.path),r.filter((e=>{const r=(e=e.resolve())._guessExecutionStatusRelativeTo(t);return n&&"unknown"===r&&n.push(e),"before"===r}))}function f(e,t){const n=t.node.operator,r=t.get("right").resolve(),i=t.get("left").resolve();let s,l,p;if(i.isIdentifier({name:e})?s=r:r.isIdentifier({name:e})&&(s=i),s)return"==="===n?s.getTypeAnnotation():a.indexOf(n)>=0?c():void 0;if("==="!==n&&"=="!==n)return;if(i.isUnaryExpression({operator:"typeof"})?(l=i,p=r):r.isUnaryExpression({operator:"typeof"})&&(l=r,p=i),!l)return;if(!l.get("argument").isIdentifier({name:e}))return;if(p=p.resolve(),!p.isLiteral())return;const u=p.node.value;return"string"==typeof u?o(u):void 0}function y(e,t,n){const r=function(e,t,n){let r;for(;r=t.parentPath;){if(r.isIfStatement()||r.isConditionalExpression()){if("test"===t.key)return;return r}if(r.isFunction()&&r.parentPath.scope.getBinding(n)!==e)return;t=r}}(e,t,n);if(!r)return;const a=[r.get("test")],o=[];for(let e=0;e<a.length;e++){const t=a[e];if(t.isLogicalExpression())"&&"===t.node.operator&&(a.push(t.get("left")),a.push(t.get("right")));else if(t.isBinaryExpression()){const e=f(n,t);e&&o.push(e)}}return o.length?p(o[0])&&s?{typeAnnotation:s(o),ifStatement:r}:i?{typeAnnotation:i(o),ifStatement:r}:{typeAnnotation:l(o),ifStatement:r}:y(r,n)}},75081:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArrayExpression=I,t.AssignmentExpression=function(){return this.get("right").getTypeAnnotation()},t.BinaryExpression=function(e){const t=e.operator;if(o.indexOf(t)>=0)return P();if(i.indexOf(t)>=0)return d();if("+"===t){const e=this.get("right"),t=this.get("left");return t.isBaseType("number")&&e.isBaseType("number")?P():t.isBaseType("string")||e.isBaseType("string")?x():A([x(),P()])}},t.BooleanLiteral=function(){return d()},t.CallExpression=function(){const{callee:e}=this.node;return C(e)?u(x()):D(e)||w(e)?u(c()):L(e)?u(g([x(),c()])):j(this.get("callee"))},t.ConditionalExpression=function(){const e=[this.get("consequent").getTypeAnnotation(),this.get("alternate").getTypeAnnotation()];return b(e[0])&&m?m(e):y?y(e):h(e)},t.ClassDeclaration=t.ClassExpression=t.FunctionDeclaration=t.ArrowFunctionExpression=t.FunctionExpression=function(){return T(S("Function"))},Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return a.default}}),t.LogicalExpression=function(){const e=[this.get("left").getTypeAnnotation(),this.get("right").getTypeAnnotation()];return b(e[0])&&m?m(e):y?y(e):h(e)},t.NewExpression=function(e){if(this.get("callee").isIdentifier())return T(e.callee)},t.NullLiteral=function(){return E()},t.NumericLiteral=function(){return P()},t.ObjectExpression=function(){return T(S("Object"))},t.ParenthesizedExpression=function(){return this.get("expression").getTypeAnnotation()},t.RegExpLiteral=function(){return T(S("RegExp"))},t.RestElement=N,t.SequenceExpression=function(){return this.get("expressions").pop().getTypeAnnotation()},t.StringLiteral=function(){return x()},t.TaggedTemplateExpression=function(){return j(this.get("tag"))},t.TemplateLiteral=function(){return x()},t.TypeCastExpression=O,t.UnaryExpression=function(e){const t=e.operator;return"void"===t?v():l.indexOf(t)>=0?P():p.indexOf(t)>=0?x():s.indexOf(t)>=0?d():void 0},t.UpdateExpression=function(e){const t=e.operator;if("++"===t||"--"===t)return P()},t.VariableDeclarator=function(){var e;if(!this.get("id").isIdentifier())return;const t=this.get("init");let n=t.getTypeAnnotation();return"AnyTypeAnnotation"===(null==(e=n)?void 0:e.type)&&t.isCallExpression()&&t.get("callee").isIdentifier({name:"Array"})&&!t.scope.hasBinding("Array",!0)&&(n=I()),n};var r=n(38218),a=n(31674);const{BOOLEAN_BINARY_OPERATORS:i,BOOLEAN_UNARY_OPERATORS:s,NUMBER_BINARY_OPERATORS:o,NUMBER_UNARY_OPERATORS:l,STRING_UNARY_OPERATORS:p,anyTypeAnnotation:c,arrayTypeAnnotation:u,booleanTypeAnnotation:d,buildMatchMemberExpression:f,createFlowUnionType:y,createTSUnionType:m,createUnionTypeAnnotation:h,genericTypeAnnotation:T,identifier:S,isTSTypeAnnotation:b,nullLiteralTypeAnnotation:E,numberTypeAnnotation:P,stringTypeAnnotation:x,tupleTypeAnnotation:g,unionTypeAnnotation:A,voidTypeAnnotation:v}=r;function O(e){return e.typeAnnotation}function I(){return T(S("Array"))}function N(){return I()}O.validParent=!0,N.validParent=!0;const D=f("Array.from"),C=f("Object.keys"),w=f("Object.values"),L=f("Object.entries");function j(e){if((e=e.resolve()).isFunction()){if(e.is("async"))return e.is("generator")?T(S("AsyncIterator")):T(S("Promise"));if(e.node.returnType)return e.node.returnType}}},77743:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._guessExecutionStatusRelativeTo=function(e){const t={this:m(this),target:m(e)};if(t.target.node!==t.this.node)return this._guessExecutionStatusRelativeToDifferentFunctions(t.target);const n={target:e.getAncestry(),this:this.getAncestry()};if(n.target.indexOf(this)>=0)return"after";if(n.this.indexOf(e)>=0)return"before";let r;const a={target:0,this:0};for(;!r&&a.this<n.this.length;){const e=n.this[a.this];a.target=n.target.indexOf(e),a.target>=0?r=e:a.this++}if(!r)throw new Error("Internal Babel error - The two compared nodes don't appear to belong to the same program.");if(T(n.this,a.this-1)||T(n.target,a.target-1))return"unknown";const s={this:n.this[a.this-1],target:n.target[a.target-1]};if(s.target.listKey&&s.this.listKey&&s.target.container===s.this.container)return s.target.key>s.this.key?"before":"after";const o=i[r.type],l=o.indexOf(s.this.parentKey);return o.indexOf(s.target.parentKey)>l?"before":"after"},t._guessExecutionStatusRelativeToDifferentFunctions=function(e){if(!e.isFunctionDeclaration()||e.parentPath.isExportDeclaration())return"unknown";const t=e.scope.getBinding(e.node.id.name);if(!t.references)return"before";const n=t.referencePaths;let r;for(const t of n){if(t.find((t=>t.node===e.node)))continue;if("callee"!==t.key||!t.parentPath.isCallExpression())return"unknown";if(S.has(t.node))continue;S.add(t.node);const n=this._guessExecutionStatusRelativeTo(t);if(S.delete(t.node),r&&r!==n)return"unknown";r=n}return r},t._resolve=function(e,t){if(!(t&&t.indexOf(this)>=0))if((t=t||[]).push(this),this.isVariableDeclarator()){if(this.get("id").isIdentifier())return this.get("init").resolve(e,t)}else if(this.isReferencedIdentifier()){const n=this.scope.getBinding(this.node.name);if(!n)return;if(!n.constant)return;if("module"===n.kind)return;if(n.path!==this){const r=n.path.resolve(e,t);if(this.find((e=>e.node===r.node)))return;return r}}else{if(this.isTypeCastExpression())return this.get("expression").resolve(e,t);if(e&&this.isMemberExpression()){const n=this.toComputedKey();if(!p(n))return;const r=n.value,a=this.get("object").resolve(e,t);if(a.isObjectExpression()){const n=a.get("properties");for(const a of n){if(!a.isProperty())continue;const n=a.get("key");let i=a.isnt("computed")&&n.isIdentifier({name:r});if(i=i||n.isLiteral({value:r}),i)return a.get("value").resolve(e,t)}}else if(a.isArrayExpression()&&!isNaN(+r)){const n=a.get("elements")[r];if(n)return n.resolve(e,t)}}}},t.canHaveVariableDeclarationOrExpression=function(){return("init"===this.key||"left"===this.key)&&this.parentPath.isFor()},t.canSwapBetweenExpressionAndStatement=function(e){return!("body"!==this.key||!this.parentPath.isArrowFunctionExpression())&&(this.isExpression()?s(e):!!this.isBlockStatement()&&o(e))},t.equals=function(e,t){return this.node[e]===t},t.getSource=function(){const e=this.node;if(e.end){const t=this.hub.getCode();if(t)return t.slice(e.start,e.end)}return""},t.has=f,t.is=void 0,t.isCompletionRecord=function(e){let t=this,n=!0;do{const r=t.container;if(t.isFunction()&&!n)return!!e;if(n=!1,Array.isArray(r)&&t.key!==r.length-1)return!1}while((t=t.parentPath)&&!t.isProgram());return!0},t.isConstantExpression=function(){if(this.isIdentifier()){const e=this.scope.getBinding(this.node.name);return!!e&&e.constant}return this.isLiteral()?!this.isRegExpLiteral()&&(!this.isTemplateLiteral()||this.get("expressions").every((e=>e.isConstantExpression()))):this.isUnaryExpression()?"void"===this.node.operator&&this.get("argument").isConstantExpression():!!this.isBinaryExpression()&&(this.get("left").isConstantExpression()&&this.get("right").isConstantExpression())},t.isInStrictMode=function(){return!!(this.isProgram()?this:this.parentPath).find((e=>{if(e.isProgram({sourceType:"module"}))return!0;if(e.isClass())return!0;if(!e.isProgram()&&!e.isFunction())return!1;if(e.isArrowFunctionExpression()&&!e.get("body").isBlockStatement())return!1;const t=e.isFunction()?e.node.body:e.node;for(const e of t.directives)if("use strict"===e.value.value)return!0}))},t.isNodeType=function(e){return u(this.type,e)},t.isStatementOrBlock=function(){return!this.parentPath.isLabeledStatement()&&!s(this.container)&&a.includes(this.key)},t.isStatic=function(){return this.scope.isStatic(this.node)},t.isnt=function(e){return!this.has(e)},t.matchesPattern=function(e,t){return d(this.node,e,t)},t.referencesImport=function(e,t){if(!this.isReferencedIdentifier()){if(this.isJSXMemberExpression()&&this.node.property.name===t||(this.isMemberExpression()||this.isOptionalMemberExpression())&&(this.node.computed?c(this.node.property,{value:t}):this.node.property.name===t)){const t=this.get("object");return t.isReferencedIdentifier()&&t.referencesImport(e,"*")}return!1}const n=this.scope.getBinding(this.node.name);if(!n||"module"!==n.kind)return!1;const r=n.path,a=r.parentPath;return!!a.isImportDeclaration()&&(a.node.source.value===e&&(!t||(!(!r.isImportDefaultSpecifier()||"default"!==t)||(!(!r.isImportNamespaceSpecifier()||"*"!==t)||!(!r.isImportSpecifier()||!l(r.node.imported,{name:t}))))))},t.resolve=function(e,t){return this._resolve(e,t)||this},t.willIMaybeExecuteBefore=function(e){return"after"!==this._guessExecutionStatusRelativeTo(e)};var r=n(38218);const{STATEMENT_OR_BLOCK_KEYS:a,VISITOR_KEYS:i,isBlockStatement:s,isExpression:o,isIdentifier:l,isLiteral:p,isStringLiteral:c,isType:u,matchesPattern:d}=r;function f(e){const t=this.node&&this.node[e];return t&&Array.isArray(t)?!!t.length:!!t}const y=f;function m(e){return(e.scope.getFunctionParent()||e.scope.getProgramParent()).path}function h(e,t){switch(e){case"LogicalExpression":case"AssignmentPattern":return"right"===t;case"ConditionalExpression":case"IfStatement":return"consequent"===t||"alternate"===t;case"WhileStatement":case"DoWhileStatement":case"ForInStatement":case"ForOfStatement":return"body"===t;case"ForStatement":return"body"===t||"update"===t;case"SwitchStatement":return"cases"===t;case"TryStatement":return"handler"===t;case"OptionalMemberExpression":return"property"===t;case"OptionalCallExpression":return"arguments"===t;default:return!1}}function T(e,t){for(let n=0;n<t;n++){const t=e[n];if(h(t.parent.type,t.parentKey))return!0}return!1}t.is=y;const S=new WeakSet},79380:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(38218),a=r;const{react:i}=r,{cloneNode:s,jsxExpressionContainer:o,variableDeclaration:l,variableDeclarator:p}=a,c={ReferencedIdentifier(e,t){if(e.isJSXIdentifier()&&i.isCompatTag(e.node.name)&&!e.parentPath.isJSXMemberExpression())return;if("this"===e.node.name){let n=e.scope;do{if(n.path.isFunction()&&!n.path.isArrowFunctionExpression())break}while(n=n.parent);n&&t.breakOnScopePaths.push(n.path)}const n=e.scope.getBinding(e.node.name);if(n){for(const r of n.constantViolations)if(r.scope!==n.path.scope)return t.mutableBinding=!0,void e.stop();n===t.scope.getBinding(e.node.name)&&(t.bindings[e.node.name]=n)}}};t.default=class{constructor(e,t){this.breakOnScopePaths=void 0,this.bindings=void 0,this.mutableBinding=void 0,this.scopes=void 0,this.scope=void 0,this.path=void 0,this.attachAfter=void 0,this.breakOnScopePaths=[],this.bindings={},this.mutableBinding=!1,this.scopes=[],this.scope=t,this.path=e,this.attachAfter=!1}isCompatibleScope(e){for(const t of Object.keys(this.bindings)){const n=this.bindings[t];if(!e.bindingIdentifierEquals(t,n.identifier))return!1}return!0}getCompatibleScopes(){let e=this.path.scope;do{if(!this.isCompatibleScope(e))break;if(this.scopes.push(e),this.breakOnScopePaths.indexOf(e.path)>=0)break}while(e=e.parent)}getAttachmentPath(){let e=this._getAttachmentPath();if(!e)return;let t=e.scope;if(t.path===e&&(t=e.scope.parent),t.path.isProgram()||t.path.isFunction())for(const n of Object.keys(this.bindings)){if(!t.hasOwnBinding(n))continue;const r=this.bindings[n];if("param"!==r.kind&&"params"!==r.path.parentKey&&this.getAttachmentParentForPath(r.path).key>=e.key){this.attachAfter=!0,e=r.path;for(const t of r.constantViolations)this.getAttachmentParentForPath(t).key>e.key&&(e=t)}}return e}_getAttachmentPath(){const e=this.scopes.pop();if(e)if(e.path.isFunction()){if(!this.hasOwnParamBindings(e))return this.getNextScopeAttachmentParent();{if(this.scope===e)return;const t=e.path.get("body").get("body");for(let e=0;e<t.length;e++)if(!t[e].node._blockHoist)return t[e]}}else if(e.path.isProgram())return this.getNextScopeAttachmentParent()}getNextScopeAttachmentParent(){const e=this.scopes.pop();if(e)return this.getAttachmentParentForPath(e.path)}getAttachmentParentForPath(e){do{if(!e.parentPath||Array.isArray(e.container)&&e.isStatement())return e}while(e=e.parentPath)}hasOwnParamBindings(e){for(const t of Object.keys(this.bindings)){if(!e.hasOwnBinding(t))continue;const n=this.bindings[t];if("param"===n.kind&&n.constant)return!0}return!1}run(){if(this.path.traverse(c,this),this.mutableBinding)return;this.getCompatibleScopes();const e=this.getAttachmentPath();if(!e)return;if(e.getFunctionParent()===this.path.getFunctionParent())return;let t=e.scope.generateUidIdentifier("ref");const n=p(t,this.path.node),r=this.attachAfter?"insertAfter":"insertBefore",[a]=e[r]([e.isVariableDeclarator()?n:l("var",[n])]),i=this.path.parentPath;return i.isJSXElement()&&this.path.container===i.node.children&&(t=o(t)),this.path.replaceWith(s(t)),e.isVariableDeclarator()?a.get("init"):a.get("declarations.0.init")}}},41233:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hooks=void 0,t.hooks=[function(e,t){if("test"===e.key&&(t.isWhile()||t.isSwitchCase())||"declaration"===e.key&&t.isExportDeclaration()||"body"===e.key&&t.isLabeledStatement()||"declarations"===e.listKey&&t.isVariableDeclaration()&&1===t.node.declarations.length||"expression"===e.key&&t.isExpressionStatement())return t.remove(),!0},function(e,t){if(t.isSequenceExpression()&&1===t.node.expressions.length)return t.replaceWith(t.node.expressions[0]),!0},function(e,t){if(t.isBinary())return"left"===e.key?t.replaceWith(t.node.right):t.replaceWith(t.node.left),!0},function(e,t){if(t.isIfStatement()&&("consequent"===e.key||"alternate"===e.key)||"body"===e.key&&(t.isLoop()||t.isArrowFunctionExpression()))return e.replaceWith({type:"BlockStatement",body:[]}),!0}]},24387:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Var=t.User=t.Statement=t.SpreadProperty=t.Scope=t.RestProperty=t.ReferencedMemberExpression=t.ReferencedIdentifier=t.Referenced=t.Pure=t.NumericLiteralTypeAnnotation=t.Generated=t.ForAwaitStatement=t.Flow=t.Expression=t.ExistentialTypeParam=t.BlockScoped=t.BindingIdentifier=void 0;var r=n(38218);const{isBinding:a,isBlockScoped:i,isExportDeclaration:s,isExpression:o,isFlow:l,isForStatement:p,isForXStatement:c,isIdentifier:u,isImportDeclaration:d,isImportSpecifier:f,isJSXIdentifier:y,isJSXMemberExpression:m,isMemberExpression:h,isReferenced:T,isScope:S,isStatement:b,isVar:E,isVariableDeclaration:P,react:x}=r,{isCompatTag:g}=x,A={types:["Identifier","JSXIdentifier"],checkPath(e,t){const{node:n,parent:r}=e;if(!u(n,t)&&!m(r,t)){if(!y(n,t))return!1;if(g(n.name))return!1}return T(n,r,e.parentPath.parent)}};t.ReferencedIdentifier=A;const v={types:["MemberExpression"],checkPath:({node:e,parent:t})=>h(e)&&T(e,t)};t.ReferencedMemberExpression=v;const O={types:["Identifier"],checkPath(e){const{node:t,parent:n}=e,r=e.parentPath.parent;return u(t)&&a(t,n,r)}};t.BindingIdentifier=O;const I={types:["Statement"],checkPath({node:e,parent:t}){if(b(e)){if(P(e)){if(c(t,{left:e}))return!1;if(p(t,{init:e}))return!1}return!0}return!1}};t.Statement=I;const N={types:["Expression"],checkPath:e=>e.isIdentifier()?e.isReferencedIdentifier():o(e.node)};t.Expression=N;const D={types:["Scopable","Pattern"],checkPath:e=>S(e.node,e.parent)};t.Scope=D;const C={checkPath:e=>T(e.node,e.parent)};t.Referenced=C;const w={checkPath:e=>i(e.node)};t.BlockScoped=w;const L={types:["VariableDeclaration"],checkPath:e=>E(e.node)};t.Var=L;t.User={checkPath:e=>e.node&&!!e.node.loc};t.Generated={checkPath:e=>!e.isUser()};t.Pure={checkPath:(e,t)=>e.scope.isPure(e.node,t)};const j={types:["Flow","ImportDeclaration","ExportDeclaration","ImportSpecifier"],checkPath:({node:e})=>!(!l(e)&&(d(e)?"type"!==e.importKind&&"typeof"!==e.importKind:s(e)?"type"!==e.exportKind:!f(e)||"type"!==e.importKind&&"typeof"!==e.importKind))};t.Flow=j;t.RestProperty={types:["RestElement"],checkPath:e=>e.parentPath&&e.parentPath.isObjectPattern()};t.SpreadProperty={types:["RestElement"],checkPath:e=>e.parentPath&&e.parentPath.isObjectExpression()},t.ExistentialTypeParam={types:["ExistsTypeAnnotation"]},t.NumericLiteralTypeAnnotation={types:["NumberLiteralTypeAnnotation"]};t.ForAwaitStatement={types:["ForOfStatement"],checkPath:({node:e})=>!0===e.await}},68129:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._containerInsert=function(e,t){this.updateSiblingKeys(e,t.length);const n=[];this.container.splice(e,0,...t);for(let r=0;r<t.length;r++){const t=e+r,a=this.getSibling(t);n.push(a),this.context&&this.context.queue&&a.pushContext(this.context)}const r=this._getQueueContexts();for(const e of n){e.setScope(),e.debug("Inserted.");for(const t of r)t.maybeQueue(e,!0)}return n},t._containerInsertAfter=function(e){return this._containerInsert(this.key+1,e)},t._containerInsertBefore=function(e){return this._containerInsert(this.key,e)},t._verifyNodeList=function(e){if(!e)return[];Array.isArray(e)||(e=[e]);for(let t=0;t<e.length;t++){const n=e[t];let r;if(n?"object"!=typeof n?r="contains a non-object node":n.type?n instanceof i.default&&(r="has a NodePath when it expected a raw object"):r="without a type":r="has falsy node",r){const e=Array.isArray(n)?"array":typeof n;throw new Error(`Node list ${r} with the index of ${t} and type of ${e}`)}}return e},t.hoist=function(e=this.scope){return new a.default(this,e).run()},t.insertAfter=function(e){if(this._assertUnremoved(),this.isSequenceExpression())return P(this.get("expressions")).insertAfter(e);const t=this._verifyNodeList(e),{parentPath:n}=this;if(n.isExpressionStatement()||n.isLabeledStatement()||n.isExportNamedDeclaration()||n.isExportDefaultDeclaration()&&this.isDeclaration())return n.insertAfter(t.map((e=>h(e)?f(e):e)));if(this.isNodeType("Expression")&&!this.isJSXElement()&&!n.isJSXElement()||n.isForStatement()&&"init"===this.key){if(this.node){const e=this.node;let{scope:r}=this;if(r.path.isPattern())return l(e),this.replaceWith(u(o([],e),[])),this.get("callee.body").insertAfter(t),[this];if(x(this))t.unshift(e);else if(m(e)&&b(e.callee))t.unshift(e),t.push(E());else if(function(e,t){if(!y(e)||!T(e.left))return!1;const n=t.getBlockParent();return n.hasOwnBinding(e.left.name)&&n.getOwnBinding(e.left.name).constantViolations.length<=1}(e,r))t.unshift(e),t.push(d(e.left));else if(r.isPure(e,!0))t.push(e);else{n.isMethod({computed:!0,key:e})&&(r=r.parent);const a=r.generateDeclaredUidIdentifier();t.unshift(f(p("=",d(a),e))),t.push(f(d(a)))}}return this.replaceExpressionWithStatements(t)}if(Array.isArray(this.container))return this._containerInsertAfter(t);if(this.isStatementOrBlock()){const e=this.node,n=e&&(!this.isExpressionStatement()||null!=e.expression);return this.replaceWith(c(n?[e]:[])),this.pushContainer("body",t)}throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")},t.insertBefore=function(e){this._assertUnremoved();const t=this._verifyNodeList(e),{parentPath:n}=this;if(n.isExpressionStatement()||n.isLabeledStatement()||n.isExportNamedDeclaration()||n.isExportDefaultDeclaration()&&this.isDeclaration())return n.insertBefore(t);if(this.isNodeType("Expression")&&!this.isJSXElement()||n.isForStatement()&&"init"===this.key)return this.node&&t.push(this.node),this.replaceExpressionWithStatements(t);if(Array.isArray(this.container))return this._containerInsertBefore(t);if(this.isStatementOrBlock()){const e=this.node,n=e&&(!this.isExpressionStatement()||null!=e.expression);return this.replaceWith(c(n?[e]:[])),this.unshiftContainer("body",t)}throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?")},t.pushContainer=function(e,t){this._assertUnremoved();const n=this._verifyNodeList(t),r=this.node[e];return i.default.get({parentPath:this,parent:this.node,container:r,listKey:e,key:r.length}).setContext(this.context).replaceWithMultiple(n)},t.unshiftContainer=function(e,t){return this._assertUnremoved(),t=this._verifyNodeList(t),i.default.get({parentPath:this,parent:this.node,container:this.node[e],listKey:e,key:0}).setContext(this.context)._containerInsertBefore(t)},t.updateSiblingKeys=function(e,t){if(!this.parent)return;const n=r.path.get(this.parent);for(const[,r]of n)r.key>=e&&(r.key+=t)};var r=n(732),a=n(79380),i=n(72969),s=n(38218);const{arrowFunctionExpression:o,assertExpression:l,assignmentExpression:p,blockStatement:c,callExpression:u,cloneNode:d,expressionStatement:f,isAssignmentExpression:y,isCallExpression:m,isExpression:h,isIdentifier:T,isSequenceExpression:S,isSuper:b,thisExpression:E}=s,P=e=>e[e.length-1];function x(e){return S(e.parent)&&(P(e.parent.expressions)!==e.node||x(e.parentPath))}},92052:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._assertUnremoved=function(){if(this.removed)throw this.buildCodeFrameError("NodePath has been removed so is read-only.")},t._callRemovalHooks=function(){for(const e of r.hooks)if(e(this,this.parentPath))return!0},t._markRemoved=function(){this._traverseFlags|=i.SHOULD_SKIP|i.REMOVED,this.parent&&a.path.get(this.parent).delete(this.node),this.node=null},t._remove=function(){Array.isArray(this.container)?(this.container.splice(this.key,1),this.updateSiblingKeys(this.key,-1)):this._replaceWith(null)},t._removeFromScope=function(){const e=this.getBindingIdentifiers();Object.keys(e).forEach((e=>this.scope.removeBinding(e)))},t.remove=function(){var e;this._assertUnremoved(),this.resync(),null!=(e=this.opts)&&e.noScope||this._removeFromScope(),this._callRemovalHooks()||(this.shareCommentsWithSiblings(),this._remove()),this._markRemoved()};var r=n(41233),a=n(732),i=n(72969)},30023:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t._replaceWith=function(e){var t;if(!this.container)throw new ReferenceError("Container is falsy");this.inList?N(this.parent,this.key,[e]):N(this.parent,this.key,e),this.debug(`Replace with ${null==e?void 0:e.type}`),null==(t=s.path.get(this.parent))||t.set(e,this).delete(this.node),this.node=this.container[this.key]=e},t.replaceExpressionWithStatements=function(e){this.resync();const t=I(e,this.scope);if(t)return this.replaceWith(t)[0].get("expressions");const n=this.getFunctionParent(),r=null==n?void 0:n.is("async"),i=null==n?void 0:n.is("generator"),s=u([],y(e));this.replaceWith(m(s,[]));const o=this.get("callee");(0,p.default)(o.get("body"),(e=>{this.scope.push({id:e})}),"var");const l=this.get("callee").getCompletionRecords();for(const e of l){if(!e.isExpressionStatement())continue;const t=e.findParent((e=>e.isLoop()));if(t){let n=t.getData("expressionReplacementReturnUid");n?n=S(n.name):(n=o.scope.generateDeclaredUidIdentifier("ret"),o.get("body").pushContainer("body",O(h(n))),t.setData("expressionReplacementReturnUid",n)),e.get("expression").replaceWith(d("=",h(n),e.node.expression))}else e.replaceWith(O(e.node.expression))}o.arrowFunctionToExpression();const T=o,b=r&&a.default.hasType(this.get("callee.body").node,"AwaitExpression",c),E=i&&a.default.hasType(this.get("callee.body").node,"YieldExpression",c);return b&&(T.set("async",!0),E||this.replaceWith(f(this.node))),E&&(T.set("generator",!0),this.replaceWith(D(this.node,!0))),T.get("body.body")},t.replaceInline=function(e){if(this.resync(),Array.isArray(e)){if(Array.isArray(this.container)){e=this._verifyNodeList(e);const t=this._containerInsertAfter(e);return this.remove(),t}return this.replaceWithMultiple(e)}return this.replaceWith(e)},t.replaceWith=function(e){if(this.resync(),this.removed)throw new Error("You can't replace this node, we've already removed it");if(e instanceof i.default&&(e=e.node),!e)throw new Error("You passed `path.replaceWith()` a falsy node, use `path.remove()` instead");if(this.node===e)return[this];if(this.isProgram()&&!g(e))throw new Error("You can only replace a Program root node with another Program node");if(Array.isArray(e))throw new Error("Don't use `path.replaceWith()` with an array of nodes, use `path.replaceWithMultiple()`");if("string"==typeof e)throw new Error("Don't use `path.replaceWith()` with a source string, use `path.replaceWithSourceString()`");let t="";if(this.isNodeType("Statement")&&x(e)&&(this.canHaveVariableDeclarationOrExpression()||this.canSwapBetweenExpressionAndStatement(e)||this.parentPath.isExportDefaultDeclaration()||(e=T(e),t="expression")),this.isNodeType("Expression")&&A(e)&&!this.canHaveVariableDeclarationOrExpression()&&!this.canSwapBetweenExpressionAndStatement(e))return this.replaceExpressionWithStatements([e]);const n=this.node;return n&&(P(e,n),v(n)),this._replaceWith(e),this.type=e.type,this.setScope(),this.requeue(),[t?this.get(t):this]},t.replaceWithMultiple=function(e){var t;this.resync(),e=this._verifyNodeList(e),b(e[0],this.node),E(e[e.length-1],this.node),null==(t=s.path.get(this.parent))||t.delete(this.node),this.node=this.container[this.key]=null;const n=this.insertAfter(e);return this.node?this.requeue():this.remove(),n},t.replaceWithSourceString=function(e){this.resync();try{e=`(${e})`,e=(0,o.parse)(e)}catch(t){const n=t.loc;throw n&&(t.message+=" - make sure this is an expression.\n"+(0,r.codeFrameColumns)(e,{start:{line:n.line,column:n.column+1}}),t.code="BABEL_REPLACE_SOURCE_ERROR"),t}return e=e.program.body[0].expression,a.default.removeProperties(e),this.replaceWith(e)};var r=n(4704),a=n(49838),i=n(72969),s=n(732),o=n(73834),l=n(38218),p=n(47438);const{FUNCTION_TYPES:c,arrowFunctionExpression:u,assignmentExpression:d,awaitExpression:f,blockStatement:y,callExpression:m,cloneNode:h,expressionStatement:T,identifier:S,inheritLeadingComments:b,inheritTrailingComments:E,inheritsComments:P,isExpression:x,isProgram:g,isStatement:A,removeComments:v,returnStatement:O,toSequenceExpression:I,validate:N,yieldExpression:D}=l},48287:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=class{constructor({identifier:e,scope:t,path:n,kind:r}){this.identifier=void 0,this.scope=void 0,this.path=void 0,this.kind=void 0,this.constantViolations=[],this.constant=!0,this.referencePaths=[],this.referenced=!1,this.references=0,this.identifier=e,this.scope=t,this.path=n,this.kind=r,this.clearValue()}deoptValue(){this.clearValue(),this.hasDeoptedValue=!0}setValue(e){this.hasDeoptedValue||(this.hasValue=!0,this.value=e)}clearValue(){this.hasDeoptedValue=!1,this.hasValue=!1,this.value=null}reassign(e){this.constant=!1,-1===this.constantViolations.indexOf(e)&&this.constantViolations.push(e)}reference(e){-1===this.referencePaths.indexOf(e)&&(this.referenced=!0,this.references++,this.referencePaths.push(e))}dereference(){this.references--,this.referenced=!!this.references}}},82570:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(81669),a=n(49838),i=n(48287),s=n(11272),o=n(38218),l=n(732);const{NOT_LOCAL_BINDING:p,callExpression:c,cloneNode:u,getBindingIdentifiers:d,identifier:f,isArrayExpression:y,isBinary:m,isClass:h,isClassBody:T,isClassDeclaration:S,isExportAllDeclaration:b,isExportDefaultDeclaration:E,isExportNamedDeclaration:P,isFunctionDeclaration:x,isIdentifier:g,isImportDeclaration:A,isLiteral:v,isMethod:O,isModuleDeclaration:I,isModuleSpecifier:N,isObjectExpression:D,isProperty:C,isPureish:w,isSuper:L,isTaggedTemplateExpression:j,isTemplateLiteral:_,isThisExpression:M,isUnaryExpression:k,isVariableDeclaration:B,matchesPattern:F,memberExpression:R,numericLiteral:K,toIdentifier:V,unaryExpression:Y,variableDeclaration:U,variableDeclarator:X,isRecordExpression:J,isTupleExpression:W,isObjectProperty:q,isTopicReference:$,isMetaProperty:G,isPrivateName:z}=o;function H(e,t){switch(null==e?void 0:e.type){default:if(I(e))if((b(e)||P(e)||A(e))&&e.source)H(e.source,t);else if((P(e)||A(e))&&e.specifiers&&e.specifiers.length)for(const n of e.specifiers)H(n,t);else(E(e)||P(e))&&e.declaration&&H(e.declaration,t);else N(e)?H(e.local,t):v(e)&&t.push(e.value);break;case"MemberExpression":case"OptionalMemberExpression":case"JSXMemberExpression":H(e.object,t),H(e.property,t);break;case"Identifier":case"JSXIdentifier":case"JSXOpeningElement":t.push(e.name);break;case"CallExpression":case"OptionalCallExpression":case"NewExpression":H(e.callee,t);break;case"ObjectExpression":case"ObjectPattern":for(const n of e.properties)H(n,t);break;case"SpreadElement":case"RestElement":case"UnaryExpression":case"UpdateExpression":H(e.argument,t);break;case"ObjectProperty":case"ObjectMethod":case"ClassProperty":case"ClassMethod":case"ClassPrivateProperty":case"ClassPrivateMethod":H(e.key,t);break;case"ThisExpression":t.push("this");break;case"Super":t.push("super");break;case"Import":t.push("import");break;case"DoExpression":t.push("do");break;case"YieldExpression":t.push("yield"),H(e.argument,t);break;case"AwaitExpression":t.push("await"),H(e.argument,t);break;case"AssignmentExpression":H(e.left,t);break;case"VariableDeclarator":case"FunctionExpression":case"FunctionDeclaration":case"ClassExpression":case"ClassDeclaration":case"PrivateName":H(e.id,t);break;case"ParenthesizedExpression":H(e.expression,t);break;case"MetaProperty":H(e.meta,t),H(e.property,t);break;case"JSXElement":H(e.openingElement,t);break;case"JSXFragment":H(e.openingFragment,t);break;case"JSXOpeningFragment":t.push("Fragment");break;case"JSXNamespacedName":H(e.namespace,t),H(e.name,t)}}const Q={ForStatement(e){const t=e.get("init");if(t.isVar()){const{scope:n}=e;(n.getFunctionParent()||n.getProgramParent()).registerBinding("var",t)}},Declaration(e){e.isBlockScoped()||e.isImportDeclaration()||e.isExportDeclaration()||(e.scope.getFunctionParent()||e.scope.getProgramParent()).registerDeclaration(e)},ImportDeclaration(e){e.scope.getBlockParent().registerDeclaration(e)},ReferencedIdentifier(e,t){t.references.push(e)},ForXStatement(e,t){const n=e.get("left");if(n.isPattern()||n.isIdentifier())t.constantViolations.push(e);else if(n.isVar()){const{scope:t}=e;(t.getFunctionParent()||t.getProgramParent()).registerBinding("var",n)}},ExportDeclaration:{exit(e){const{node:t,scope:n}=e;if(b(t))return;const r=t.declaration;if(S(r)||x(r)){const t=r.id;if(!t)return;const a=n.getBinding(t.name);null==a||a.reference(e)}else if(B(r))for(const t of r.declarations)for(const r of Object.keys(d(t))){const t=n.getBinding(r);null==t||t.reference(e)}}},LabeledStatement(e){e.scope.getBlockParent().registerDeclaration(e)},AssignmentExpression(e,t){t.assignments.push(e)},UpdateExpression(e,t){t.constantViolations.push(e)},UnaryExpression(e,t){"delete"===e.node.operator&&t.constantViolations.push(e)},BlockScoped(e){let t=e.scope;if(t.path===e&&(t=t.parent),t.getBlockParent().registerDeclaration(e),e.isClassDeclaration()&&e.node.id){const t=e.node.id.name;e.scope.bindings[t]=e.scope.parent.getBinding(t)}},CatchClause(e){e.scope.registerBinding("let",e)},Function(e){const t=e.get("params");for(const n of t)e.scope.registerBinding("param",n);e.isFunctionExpression()&&e.has("id")&&!e.get("id").node[p]&&e.scope.registerBinding("local",e.get("id"),e)},ClassExpression(e){e.has("id")&&!e.get("id").node[p]&&e.scope.registerBinding("local",e)}};let Z=0;class ee{constructor(e){this.uid=void 0,this.path=void 0,this.block=void 0,this.labels=void 0,this.inited=void 0,this.bindings=void 0,this.references=void 0,this.globals=void 0,this.uids=void 0,this.data=void 0,this.crawling=void 0;const{node:t}=e,n=l.scope.get(t);if((null==n?void 0:n.path)===e)return n;l.scope.set(t,this),this.uid=Z++,this.block=t,this.path=e,this.labels=new Map,this.inited=!1}get parent(){var e;let t,n=this.path;do{const e="key"===n.key;n=n.parentPath,e&&n.isMethod()&&(n=n.parentPath),n&&n.isScope()&&(t=n)}while(n&&!t);return null==(e=t)?void 0:e.scope}get parentBlock(){return this.path.parent}get hub(){return this.path.hub}traverse(e,t,n){(0,a.default)(e,t,this,n,this.path)}generateDeclaredUidIdentifier(e){const t=this.generateUidIdentifier(e);return this.push({id:t}),u(t)}generateUidIdentifier(e){return f(this.generateUid(e))}generateUid(e="temp"){let t;e=V(e).replace(/^_+/,"").replace(/[0-9]+$/g,"");let n=1;do{t=this._generateUid(e,n),n++}while(this.hasLabel(t)||this.hasBinding(t)||this.hasGlobal(t)||this.hasReference(t));const r=this.getProgramParent();return r.references[t]=!0,r.uids[t]=!0,t}_generateUid(e,t){let n=e;return t>1&&(n+=t),`_${n}`}generateUidBasedOnNode(e,t){const n=[];H(e,n);let r=n.join("$");return r=r.replace(/^_/,"")||t||"ref",this.generateUid(r.slice(0,20))}generateUidIdentifierBasedOnNode(e,t){return f(this.generateUidBasedOnNode(e,t))}isStatic(e){if(M(e)||L(e)||$(e))return!0;if(g(e)){const t=this.getBinding(e.name);return t?t.constant:this.hasBinding(e.name)}return!1}maybeGenerateMemoised(e,t){if(this.isStatic(e))return null;{const n=this.generateUidIdentifierBasedOnNode(e);return t?n:(this.push({id:n}),u(n))}}checkBlockScopedCollisions(e,t,n,r){if("param"!==t&&"local"!==e.kind&&("let"===t||"let"===e.kind||"const"===e.kind||"module"===e.kind||"param"===e.kind&&"const"===t))throw this.hub.buildError(r,`Duplicate declaration "${n}"`,TypeError)}rename(e,t,n){const a=this.getBinding(e);if(a)return t=t||this.generateUidIdentifier(e).name,new r.default(a,e,t).rename(n)}_renameFromMap(e,t,n,r){e[t]&&(e[n]=r,e[t]=null)}dump(){const e="-".repeat(60);console.log(e);let t=this;do{console.log("#",t.block.type);for(const e of Object.keys(t.bindings)){const n=t.bindings[e];console.log(" -",e,{constant:n.constant,references:n.references,violations:n.constantViolations.length,kind:n.kind})}}while(t=t.parent);console.log(e)}toArray(e,t,n){if(g(e)){const t=this.getBinding(e.name);if(null!=t&&t.constant&&t.path.isGenericType("Array"))return e}if(y(e))return e;if(g(e,{name:"arguments"}))return c(R(R(R(f("Array"),f("prototype")),f("slice")),f("call")),[e]);let r;const a=[e];return!0===t?r="toConsumableArray":t?(a.push(K(t)),r="slicedToArray"):r="toArray",n&&(a.unshift(this.hub.addHelper(r)),r="maybeArrayLike"),c(this.hub.addHelper(r),a)}hasLabel(e){return!!this.getLabel(e)}getLabel(e){return this.labels.get(e)}registerLabel(e){this.labels.set(e.node.label.name,e)}registerDeclaration(e){if(e.isLabeledStatement())this.registerLabel(e);else if(e.isFunctionDeclaration())this.registerBinding("hoisted",e.get("id"),e);else if(e.isVariableDeclaration()){const t=e.get("declarations");for(const n of t)this.registerBinding(e.node.kind,n)}else if(e.isClassDeclaration()){if(e.node.declare)return;this.registerBinding("let",e)}else if(e.isImportDeclaration()){const t=e.get("specifiers");for(const e of t)this.registerBinding("module",e)}else if(e.isExportDeclaration()){const t=e.get("declaration");(t.isClassDeclaration()||t.isFunctionDeclaration()||t.isVariableDeclaration())&&this.registerDeclaration(t)}else this.registerBinding("unknown",e)}buildUndefinedNode(){return Y("void",K(0),!0)}registerConstantViolation(e){const t=e.getBindingIdentifiers();for(const n of Object.keys(t)){const t=this.getBinding(n);t&&t.reassign(e)}}registerBinding(e,t,n=t){if(!e)throw new ReferenceError("no `kind`");if(t.isVariableDeclaration()){const n=t.get("declarations");for(const t of n)this.registerBinding(e,t);return}const r=this.getProgramParent(),a=t.getOuterBindingIdentifiers(!0);for(const t of Object.keys(a)){r.references[t]=!0;for(const r of a[t]){const a=this.getOwnBinding(t);if(a){if(a.identifier===r)continue;this.checkBlockScopedCollisions(a,e,t,r)}a?this.registerConstantViolation(n):this.bindings[t]=new i.default({identifier:r,scope:this,path:n,kind:e})}}}addGlobal(e){this.globals[e.name]=e}hasUid(e){let t=this;do{if(t.uids[e])return!0}while(t=t.parent);return!1}hasGlobal(e){let t=this;do{if(t.globals[e])return!0}while(t=t.parent);return!1}hasReference(e){return!!this.getProgramParent().references[e]}isPure(e,t){if(g(e)){const n=this.getBinding(e.name);return!!n&&(!t||n.constant)}if(M(e)||G(e)||$(e)||z(e))return!0;var n,r,a;if(h(e))return!(e.superClass&&!this.isPure(e.superClass,t))&&!((null==(n=e.decorators)?void 0:n.length)>0)&&this.isPure(e.body,t);if(T(e)){for(const n of e.body)if(!this.isPure(n,t))return!1;return!0}if(m(e))return this.isPure(e.left,t)&&this.isPure(e.right,t);if(y(e)||W(e)){for(const n of e.elements)if(null!==n&&!this.isPure(n,t))return!1;return!0}if(D(e)||J(e)){for(const n of e.properties)if(!this.isPure(n,t))return!1;return!0}if(O(e))return!(e.computed&&!this.isPure(e.key,t)||(null==(r=e.decorators)?void 0:r.length)>0);if(C(e))return!(e.computed&&!this.isPure(e.key,t)||(null==(a=e.decorators)?void 0:a.length)>0||(q(e)||e.static)&&null!==e.value&&!this.isPure(e.value,t));if(k(e))return this.isPure(e.argument,t);if(j(e))return F(e.tag,"String.raw")&&!this.hasBinding("String",!0)&&this.isPure(e.quasi,t);if(_(e)){for(const n of e.expressions)if(!this.isPure(n,t))return!1;return!0}return w(e)}setData(e,t){return this.data[e]=t}getData(e){let t=this;do{const n=t.data[e];if(null!=n)return n}while(t=t.parent)}removeData(e){let t=this;do{null!=t.data[e]&&(t.data[e]=null)}while(t=t.parent)}init(){this.inited||(this.inited=!0,this.crawl())}crawl(){const e=this.path;this.references=Object.create(null),this.bindings=Object.create(null),this.globals=Object.create(null),this.uids=Object.create(null),this.data=Object.create(null);const t=this.getProgramParent();if(t.crawling)return;const n={references:[],constantViolations:[],assignments:[]};if(this.crawling=!0,"Program"!==e.type&&Q._exploded){for(const t of Q.enter)t(e,n);const t=Q[e.type];if(t)for(const r of t.enter)r(e,n)}e.traverse(Q,n),this.crawling=!1;for(const e of n.assignments){const n=e.getBindingIdentifiers();for(const r of Object.keys(n))e.scope.getBinding(r)||t.addGlobal(n[r]);e.scope.registerConstantViolation(e)}for(const e of n.references){const n=e.scope.getBinding(e.node.name);n?n.reference(e):t.addGlobal(e.node)}for(const e of n.constantViolations)e.scope.registerConstantViolation(e)}push(e){let t=this.path;t.isBlockStatement()||t.isProgram()||(t=this.getBlockParent().path),t.isSwitchStatement()&&(t=(this.getFunctionParent()||this.getProgramParent()).path),(t.isLoop()||t.isCatchClause()||t.isFunction())&&(t.ensureBlock(),t=t.get("body"));const n=e.unique,r=e.kind||"var",a=null==e._blockHoist?2:e._blockHoist,i=`declaration:${r}:${a}`;let s=!n&&t.getData(i);if(!s){const e=U(r,[]);e._blockHoist=a,[s]=t.unshiftContainer("body",[e]),n||t.setData(i,s)}const o=X(e.id,e.init),l=s.node.declarations.push(o);t.scope.registerBinding(r,s.get("declarations")[l-1])}getProgramParent(){let e=this;do{if(e.path.isProgram())return e}while(e=e.parent);throw new Error("Couldn't find a Program")}getFunctionParent(){let e=this;do{if(e.path.isFunctionParent())return e}while(e=e.parent);return null}getBlockParent(){let e=this;do{if(e.path.isBlockParent())return e}while(e=e.parent);throw new Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program...")}getAllBindings(){const e=Object.create(null);let t=this;do{for(const n of Object.keys(t.bindings))n in e==0&&(e[n]=t.bindings[n]);t=t.parent}while(t);return e}getAllBindingsOfKind(...e){const t=Object.create(null);for(const n of e){let e=this;do{for(const r of Object.keys(e.bindings)){const a=e.bindings[r];a.kind===n&&(t[r]=a)}e=e.parent}while(e)}return t}bindingIdentifierEquals(e,t){return this.getBindingIdentifier(e)===t}getBinding(e){let t,n=this;do{const a=n.getOwnBinding(e);var r;if(a){if(null==(r=t)||!r.isPattern()||"param"===a.kind||"local"===a.kind)return a}else if(!a&&"arguments"===e&&n.path.isFunction()&&!n.path.isArrowFunctionExpression())break;t=n.path}while(n=n.parent)}getOwnBinding(e){return this.bindings[e]}getBindingIdentifier(e){var t;return null==(t=this.getBinding(e))?void 0:t.identifier}getOwnBindingIdentifier(e){const t=this.bindings[e];return null==t?void 0:t.identifier}hasOwnBinding(e){return!!this.getOwnBinding(e)}hasBinding(e,t){return!(!e||!this.hasOwnBinding(e)&&!this.parentHasBinding(e,t)&&!this.hasUid(e)&&(t||!ee.globals.includes(e))&&(t||!ee.contextVariables.includes(e)))}parentHasBinding(e,t){var n;return null==(n=this.parent)?void 0:n.hasBinding(e,t)}moveBindingTo(e,t){const n=this.getBinding(e);n&&(n.scope.removeOwnBinding(e),n.scope=t,t.bindings[e]=n)}removeOwnBinding(e){delete this.bindings[e]}removeBinding(e){var t;null==(t=this.getBinding(e))||t.scope.removeOwnBinding(e);let n=this;do{n.uids[e]&&(n.uids[e]=!1)}while(n=n.parent)}}t.default=ee,ee.globals=Object.keys(s.builtin),ee.contextVariables=["arguments","undefined","Infinity","NaN"]},81669:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,n(48287);var r=n(53472),a=n(38218);const{VISITOR_KEYS:i,assignmentExpression:s,identifier:o,toExpression:l,variableDeclaration:p,variableDeclarator:c}=a,u={ReferencedIdentifier({node:e},t){e.name===t.oldName&&(e.name=t.newName)},Scope(e,t){e.scope.bindingIdentifierEquals(t.oldName,t.binding.identifier)||function(e){if(!e.isMethod()||!e.node.computed)return void e.skip();const t=i[e.type];for(const n of t)"key"!==n&&e.skipKey(n)}(e)},"AssignmentExpression|Declaration|VariableDeclarator"(e,t){if(e.isVariableDeclaration())return;const n=e.getOuterBindingIdentifiers();for(const e in n)e===t.oldName&&(n[e].name=t.newName)}};t.default=class{constructor(e,t,n){this.newName=n,this.oldName=t,this.binding=e}maybeConvertFromExportDeclaration(e){const t=e.parentPath;t.isExportDeclaration()&&(t.isExportDefaultDeclaration()&&!t.get("declaration").node.id||(0,r.default)(t))}maybeConvertFromClassFunctionDeclaration(e){}maybeConvertFromClassFunctionExpression(e){}rename(e){const{binding:t,oldName:n,newName:r}=this,{scope:a,path:i}=t,s=i.find((e=>e.isDeclaration()||e.isFunctionExpression()||e.isClassExpression()));s&&s.getOuterBindingIdentifiers()[n]===t.identifier&&this.maybeConvertFromExportDeclaration(s);const o=e||a.block;"SwitchStatement"===(null==o?void 0:o.type)?o.cases.forEach((e=>{a.traverse(e,u,this)})):a.traverse(o,u,this),e||(a.removeOwnBinding(n),a.bindings[r]=t,this.binding.identifier.name=r),s&&(this.maybeConvertFromClassFunctionDeclaration(s),this.maybeConvertFromClassFunctionExpression(s))}}},46033:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.traverseNode=function(e,t,n,a,s,o){const l=i[e.type];if(!l)return!1;const p=new r.default(n,t,a,s);for(const t of l)if((!o||!o[t])&&p.visit(e,t))return!0;return!1};var r=n(66617),a=n(38218);const{VISITOR_KEYS:i}=a},41169:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.explode=l,t.merge=function(e,t=[],n){const r={};for(let a=0;a<e.length;a++){const i=e[a],s=t[a];l(i);for(const e of Object.keys(i)){let t=i[e];(s||n)&&(t=u(t,s,n)),m(r[e]=r[e]||{},t)}}return r},t.verify=p;var r=n(24387),a=n(38218);const{DEPRECATED_KEYS:i,FLIPPED_ALIAS_KEYS:s,TYPES:o}=a;function l(e){if(e._exploded)return e;e._exploded=!0;for(const t of Object.keys(e)){if(y(t))continue;const n=t.split("|");if(1===n.length)continue;const r=e[t];delete e[t];for(const t of n)e[t]=r}p(e),delete e.__esModule,function(e){for(const t of Object.keys(e)){if(y(t))continue;const n=e[t];"function"==typeof n&&(e[t]={enter:n})}}(e),d(e);for(const t of Object.keys(e)){if(y(t))continue;const n=r[t];if(!n)continue;const a=e[t];for(const e of Object.keys(a))a[e]=f(n,a[e]);if(delete e[t],n.types)for(const t of n.types)e[t]?m(e[t],a):e[t]=a;else m(e,a)}for(const t of Object.keys(e)){if(y(t))continue;const n=e[t];let r=s[t];const a=i[t];if(a&&(console.trace(`Visitor defined for ${t} but it has been renamed to ${a}`),r=[a]),r){delete e[t];for(const t of r){const r=e[t];r?m(r,n):e[t]=Object.assign({},n)}}}for(const t of Object.keys(e))y(t)||d(e[t]);return e}function p(e){if(!e._verified){if("function"==typeof e)throw new Error("You passed `traverse()` a function when it expected a visitor object, are you sure you didn't mean `{ enter: Function }`?");for(const t of Object.keys(e)){if("enter"!==t&&"exit"!==t||c(t,e[t]),y(t))continue;if(o.indexOf(t)<0)throw new Error(`You gave us a visitor for the node type ${t} but it's not a valid type`);const n=e[t];if("object"==typeof n)for(const e of Object.keys(n)){if("enter"!==e&&"exit"!==e)throw new Error(`You passed \`traverse()\` a visitor object with the property ${t} that has the invalid property ${e}`);c(`${t}.${e}`,n[e])}}e._verified=!0}}function c(e,t){const n=[].concat(t);for(const t of n)if("function"!=typeof t)throw new TypeError(`Non-function found defined in ${e} with type ${typeof t}`)}function u(e,t,n){const r={};for(const a of Object.keys(e)){let i=e[a];Array.isArray(i)&&(i=i.map((function(e){let r=e;return t&&(r=function(n){return e.call(t,n,t)}),n&&(r=n(t.key,a,r)),r!==e&&(r.toString=()=>e.toString()),r})),r[a]=i)}return r}function d(e){e.enter&&!Array.isArray(e.enter)&&(e.enter=[e.enter]),e.exit&&!Array.isArray(e.exit)&&(e.exit=[e.exit])}function f(e,t){const n=function(n){if(e.checkPath(n))return t.apply(this,arguments)};return n.toString=()=>t.toString(),n}function y(e){return"_"===e[0]||"enter"===e||"exit"===e||"shouldSkip"===e||"denylist"===e||"noScope"===e||"skipKeys"===e||"blacklist"===e}function m(e,t){for(const n of Object.keys(t))e[n]=[].concat(e[n]||[],t[n])}},60245:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!(0,r.default)(e)){var t;const n=null!=(t=null==e?void 0:e.type)?t:JSON.stringify(e);throw new TypeError(`Not a valid node of type "${n}"`)}};var r=n(8523)},27133:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assertAccessor=function(e,t){a("Accessor",e,t)},t.assertAnyTypeAnnotation=function(e,t){a("AnyTypeAnnotation",e,t)},t.assertArgumentPlaceholder=function(e,t){a("ArgumentPlaceholder",e,t)},t.assertArrayExpression=function(e,t){a("ArrayExpression",e,t)},t.assertArrayPattern=function(e,t){a("ArrayPattern",e,t)},t.assertArrayTypeAnnotation=function(e,t){a("ArrayTypeAnnotation",e,t)},t.assertArrowFunctionExpression=function(e,t){a("ArrowFunctionExpression",e,t)},t.assertAssignmentExpression=function(e,t){a("AssignmentExpression",e,t)},t.assertAssignmentPattern=function(e,t){a("AssignmentPattern",e,t)},t.assertAwaitExpression=function(e,t){a("AwaitExpression",e,t)},t.assertBigIntLiteral=function(e,t){a("BigIntLiteral",e,t)},t.assertBinary=function(e,t){a("Binary",e,t)},t.assertBinaryExpression=function(e,t){a("BinaryExpression",e,t)},t.assertBindExpression=function(e,t){a("BindExpression",e,t)},t.assertBlock=function(e,t){a("Block",e,t)},t.assertBlockParent=function(e,t){a("BlockParent",e,t)},t.assertBlockStatement=function(e,t){a("BlockStatement",e,t)},t.assertBooleanLiteral=function(e,t){a("BooleanLiteral",e,t)},t.assertBooleanLiteralTypeAnnotation=function(e,t){a("BooleanLiteralTypeAnnotation",e,t)},t.assertBooleanTypeAnnotation=function(e,t){a("BooleanTypeAnnotation",e,t)},t.assertBreakStatement=function(e,t){a("BreakStatement",e,t)},t.assertCallExpression=function(e,t){a("CallExpression",e,t)},t.assertCatchClause=function(e,t){a("CatchClause",e,t)},t.assertClass=function(e,t){a("Class",e,t)},t.assertClassAccessorProperty=function(e,t){a("ClassAccessorProperty",e,t)},t.assertClassBody=function(e,t){a("ClassBody",e,t)},t.assertClassDeclaration=function(e,t){a("ClassDeclaration",e,t)},t.assertClassExpression=function(e,t){a("ClassExpression",e,t)},t.assertClassImplements=function(e,t){a("ClassImplements",e,t)},t.assertClassMethod=function(e,t){a("ClassMethod",e,t)},t.assertClassPrivateMethod=function(e,t){a("ClassPrivateMethod",e,t)},t.assertClassPrivateProperty=function(e,t){a("ClassPrivateProperty",e,t)},t.assertClassProperty=function(e,t){a("ClassProperty",e,t)},t.assertCompletionStatement=function(e,t){a("CompletionStatement",e,t)},t.assertConditional=function(e,t){a("Conditional",e,t)},t.assertConditionalExpression=function(e,t){a("ConditionalExpression",e,t)},t.assertContinueStatement=function(e,t){a("ContinueStatement",e,t)},t.assertDebuggerStatement=function(e,t){a("DebuggerStatement",e,t)},t.assertDecimalLiteral=function(e,t){a("DecimalLiteral",e,t)},t.assertDeclaration=function(e,t){a("Declaration",e,t)},t.assertDeclareClass=function(e,t){a("DeclareClass",e,t)},t.assertDeclareExportAllDeclaration=function(e,t){a("DeclareExportAllDeclaration",e,t)},t.assertDeclareExportDeclaration=function(e,t){a("DeclareExportDeclaration",e,t)},t.assertDeclareFunction=function(e,t){a("DeclareFunction",e,t)},t.assertDeclareInterface=function(e,t){a("DeclareInterface",e,t)},t.assertDeclareModule=function(e,t){a("DeclareModule",e,t)},t.assertDeclareModuleExports=function(e,t){a("DeclareModuleExports",e,t)},t.assertDeclareOpaqueType=function(e,t){a("DeclareOpaqueType",e,t)},t.assertDeclareTypeAlias=function(e,t){a("DeclareTypeAlias",e,t)},t.assertDeclareVariable=function(e,t){a("DeclareVariable",e,t)},t.assertDeclaredPredicate=function(e,t){a("DeclaredPredicate",e,t)},t.assertDecorator=function(e,t){a("Decorator",e,t)},t.assertDirective=function(e,t){a("Directive",e,t)},t.assertDirectiveLiteral=function(e,t){a("DirectiveLiteral",e,t)},t.assertDoExpression=function(e,t){a("DoExpression",e,t)},t.assertDoWhileStatement=function(e,t){a("DoWhileStatement",e,t)},t.assertEmptyStatement=function(e,t){a("EmptyStatement",e,t)},t.assertEmptyTypeAnnotation=function(e,t){a("EmptyTypeAnnotation",e,t)},t.assertEnumBody=function(e,t){a("EnumBody",e,t)},t.assertEnumBooleanBody=function(e,t){a("EnumBooleanBody",e,t)},t.assertEnumBooleanMember=function(e,t){a("EnumBooleanMember",e,t)},t.assertEnumDeclaration=function(e,t){a("EnumDeclaration",e,t)},t.assertEnumDefaultedMember=function(e,t){a("EnumDefaultedMember",e,t)},t.assertEnumMember=function(e,t){a("EnumMember",e,t)},t.assertEnumNumberBody=function(e,t){a("EnumNumberBody",e,t)},t.assertEnumNumberMember=function(e,t){a("EnumNumberMember",e,t)},t.assertEnumStringBody=function(e,t){a("EnumStringBody",e,t)},t.assertEnumStringMember=function(e,t){a("EnumStringMember",e,t)},t.assertEnumSymbolBody=function(e,t){a("EnumSymbolBody",e,t)},t.assertExistsTypeAnnotation=function(e,t){a("ExistsTypeAnnotation",e,t)},t.assertExportAllDeclaration=function(e,t){a("ExportAllDeclaration",e,t)},t.assertExportDeclaration=function(e,t){a("ExportDeclaration",e,t)},t.assertExportDefaultDeclaration=function(e,t){a("ExportDefaultDeclaration",e,t)},t.assertExportDefaultSpecifier=function(e,t){a("ExportDefaultSpecifier",e,t)},t.assertExportNamedDeclaration=function(e,t){a("ExportNamedDeclaration",e,t)},t.assertExportNamespaceSpecifier=function(e,t){a("ExportNamespaceSpecifier",e,t)},t.assertExportSpecifier=function(e,t){a("ExportSpecifier",e,t)},t.assertExpression=function(e,t){a("Expression",e,t)},t.assertExpressionStatement=function(e,t){a("ExpressionStatement",e,t)},t.assertExpressionWrapper=function(e,t){a("ExpressionWrapper",e,t)},t.assertFile=function(e,t){a("File",e,t)},t.assertFlow=function(e,t){a("Flow",e,t)},t.assertFlowBaseAnnotation=function(e,t){a("FlowBaseAnnotation",e,t)},t.assertFlowDeclaration=function(e,t){a("FlowDeclaration",e,t)},t.assertFlowPredicate=function(e,t){a("FlowPredicate",e,t)},t.assertFlowType=function(e,t){a("FlowType",e,t)},t.assertFor=function(e,t){a("For",e,t)},t.assertForInStatement=function(e,t){a("ForInStatement",e,t)},t.assertForOfStatement=function(e,t){a("ForOfStatement",e,t)},t.assertForStatement=function(e,t){a("ForStatement",e,t)},t.assertForXStatement=function(e,t){a("ForXStatement",e,t)},t.assertFunction=function(e,t){a("Function",e,t)},t.assertFunctionDeclaration=function(e,t){a("FunctionDeclaration",e,t)},t.assertFunctionExpression=function(e,t){a("FunctionExpression",e,t)},t.assertFunctionParent=function(e,t){a("FunctionParent",e,t)},t.assertFunctionTypeAnnotation=function(e,t){a("FunctionTypeAnnotation",e,t)},t.assertFunctionTypeParam=function(e,t){a("FunctionTypeParam",e,t)},t.assertGenericTypeAnnotation=function(e,t){a("GenericTypeAnnotation",e,t)},t.assertIdentifier=function(e,t){a("Identifier",e,t)},t.assertIfStatement=function(e,t){a("IfStatement",e,t)},t.assertImmutable=function(e,t){a("Immutable",e,t)},t.assertImport=function(e,t){a("Import",e,t)},t.assertImportAttribute=function(e,t){a("ImportAttribute",e,t)},t.assertImportDeclaration=function(e,t){a("ImportDeclaration",e,t)},t.assertImportDefaultSpecifier=function(e,t){a("ImportDefaultSpecifier",e,t)},t.assertImportNamespaceSpecifier=function(e,t){a("ImportNamespaceSpecifier",e,t)},t.assertImportSpecifier=function(e,t){a("ImportSpecifier",e,t)},t.assertIndexedAccessType=function(e,t){a("IndexedAccessType",e,t)},t.assertInferredPredicate=function(e,t){a("InferredPredicate",e,t)},t.assertInterfaceDeclaration=function(e,t){a("InterfaceDeclaration",e,t)},t.assertInterfaceExtends=function(e,t){a("InterfaceExtends",e,t)},t.assertInterfaceTypeAnnotation=function(e,t){a("InterfaceTypeAnnotation",e,t)},t.assertInterpreterDirective=function(e,t){a("InterpreterDirective",e,t)},t.assertIntersectionTypeAnnotation=function(e,t){a("IntersectionTypeAnnotation",e,t)},t.assertJSX=function(e,t){a("JSX",e,t)},t.assertJSXAttribute=function(e,t){a("JSXAttribute",e,t)},t.assertJSXClosingElement=function(e,t){a("JSXClosingElement",e,t)},t.assertJSXClosingFragment=function(e,t){a("JSXClosingFragment",e,t)},t.assertJSXElement=function(e,t){a("JSXElement",e,t)},t.assertJSXEmptyExpression=function(e,t){a("JSXEmptyExpression",e,t)},t.assertJSXExpressionContainer=function(e,t){a("JSXExpressionContainer",e,t)},t.assertJSXFragment=function(e,t){a("JSXFragment",e,t)},t.assertJSXIdentifier=function(e,t){a("JSXIdentifier",e,t)},t.assertJSXMemberExpression=function(e,t){a("JSXMemberExpression",e,t)},t.assertJSXNamespacedName=function(e,t){a("JSXNamespacedName",e,t)},t.assertJSXOpeningElement=function(e,t){a("JSXOpeningElement",e,t)},t.assertJSXOpeningFragment=function(e,t){a("JSXOpeningFragment",e,t)},t.assertJSXSpreadAttribute=function(e,t){a("JSXSpreadAttribute",e,t)},t.assertJSXSpreadChild=function(e,t){a("JSXSpreadChild",e,t)},t.assertJSXText=function(e,t){a("JSXText",e,t)},t.assertLVal=function(e,t){a("LVal",e,t)},t.assertLabeledStatement=function(e,t){a("LabeledStatement",e,t)},t.assertLiteral=function(e,t){a("Literal",e,t)},t.assertLogicalExpression=function(e,t){a("LogicalExpression",e,t)},t.assertLoop=function(e,t){a("Loop",e,t)},t.assertMemberExpression=function(e,t){a("MemberExpression",e,t)},t.assertMetaProperty=function(e,t){a("MetaProperty",e,t)},t.assertMethod=function(e,t){a("Method",e,t)},t.assertMiscellaneous=function(e,t){a("Miscellaneous",e,t)},t.assertMixedTypeAnnotation=function(e,t){a("MixedTypeAnnotation",e,t)},t.assertModuleDeclaration=function(e,t){a("ModuleDeclaration",e,t)},t.assertModuleExpression=function(e,t){a("ModuleExpression",e,t)},t.assertModuleSpecifier=function(e,t){a("ModuleSpecifier",e,t)},t.assertNewExpression=function(e,t){a("NewExpression",e,t)},t.assertNoop=function(e,t){a("Noop",e,t)},t.assertNullLiteral=function(e,t){a("NullLiteral",e,t)},t.assertNullLiteralTypeAnnotation=function(e,t){a("NullLiteralTypeAnnotation",e,t)},t.assertNullableTypeAnnotation=function(e,t){a("NullableTypeAnnotation",e,t)},t.assertNumberLiteral=function(e,t){console.trace("The node type NumberLiteral has been renamed to NumericLiteral"),a("NumberLiteral",e,t)},t.assertNumberLiteralTypeAnnotation=function(e,t){a("NumberLiteralTypeAnnotation",e,t)},t.assertNumberTypeAnnotation=function(e,t){a("NumberTypeAnnotation",e,t)},t.assertNumericLiteral=function(e,t){a("NumericLiteral",e,t)},t.assertObjectExpression=function(e,t){a("ObjectExpression",e,t)},t.assertObjectMember=function(e,t){a("ObjectMember",e,t)},t.assertObjectMethod=function(e,t){a("ObjectMethod",e,t)},t.assertObjectPattern=function(e,t){a("ObjectPattern",e,t)},t.assertObjectProperty=function(e,t){a("ObjectProperty",e,t)},t.assertObjectTypeAnnotation=function(e,t){a("ObjectTypeAnnotation",e,t)},t.assertObjectTypeCallProperty=function(e,t){a("ObjectTypeCallProperty",e,t)},t.assertObjectTypeIndexer=function(e,t){a("ObjectTypeIndexer",e,t)},t.assertObjectTypeInternalSlot=function(e,t){a("ObjectTypeInternalSlot",e,t)},t.assertObjectTypeProperty=function(e,t){a("ObjectTypeProperty",e,t)},t.assertObjectTypeSpreadProperty=function(e,t){a("ObjectTypeSpreadProperty",e,t)},t.assertOpaqueType=function(e,t){a("OpaqueType",e,t)},t.assertOptionalCallExpression=function(e,t){a("OptionalCallExpression",e,t)},t.assertOptionalIndexedAccessType=function(e,t){a("OptionalIndexedAccessType",e,t)},t.assertOptionalMemberExpression=function(e,t){a("OptionalMemberExpression",e,t)},t.assertParenthesizedExpression=function(e,t){a("ParenthesizedExpression",e,t)},t.assertPattern=function(e,t){a("Pattern",e,t)},t.assertPatternLike=function(e,t){a("PatternLike",e,t)},t.assertPipelineBareFunction=function(e,t){a("PipelineBareFunction",e,t)},t.assertPipelinePrimaryTopicReference=function(e,t){a("PipelinePrimaryTopicReference",e,t)},t.assertPipelineTopicExpression=function(e,t){a("PipelineTopicExpression",e,t)},t.assertPlaceholder=function(e,t){a("Placeholder",e,t)},t.assertPrivate=function(e,t){a("Private",e,t)},t.assertPrivateName=function(e,t){a("PrivateName",e,t)},t.assertProgram=function(e,t){a("Program",e,t)},t.assertProperty=function(e,t){a("Property",e,t)},t.assertPureish=function(e,t){a("Pureish",e,t)},t.assertQualifiedTypeIdentifier=function(e,t){a("QualifiedTypeIdentifier",e,t)},t.assertRecordExpression=function(e,t){a("RecordExpression",e,t)},t.assertRegExpLiteral=function(e,t){a("RegExpLiteral",e,t)},t.assertRegexLiteral=function(e,t){console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"),a("RegexLiteral",e,t)},t.assertRestElement=function(e,t){a("RestElement",e,t)},t.assertRestProperty=function(e,t){console.trace("The node type RestProperty has been renamed to RestElement"),a("RestProperty",e,t)},t.assertReturnStatement=function(e,t){a("ReturnStatement",e,t)},t.assertScopable=function(e,t){a("Scopable",e,t)},t.assertSequenceExpression=function(e,t){a("SequenceExpression",e,t)},t.assertSpreadElement=function(e,t){a("SpreadElement",e,t)},t.assertSpreadProperty=function(e,t){console.trace("The node type SpreadProperty has been renamed to SpreadElement"),a("SpreadProperty",e,t)},t.assertStandardized=function(e,t){a("Standardized",e,t)},t.assertStatement=function(e,t){a("Statement",e,t)},t.assertStaticBlock=function(e,t){a("StaticBlock",e,t)},t.assertStringLiteral=function(e,t){a("StringLiteral",e,t)},t.assertStringLiteralTypeAnnotation=function(e,t){a("StringLiteralTypeAnnotation",e,t)},t.assertStringTypeAnnotation=function(e,t){a("StringTypeAnnotation",e,t)},t.assertSuper=function(e,t){a("Super",e,t)},t.assertSwitchCase=function(e,t){a("SwitchCase",e,t)},t.assertSwitchStatement=function(e,t){a("SwitchStatement",e,t)},t.assertSymbolTypeAnnotation=function(e,t){a("SymbolTypeAnnotation",e,t)},t.assertTSAnyKeyword=function(e,t){a("TSAnyKeyword",e,t)},t.assertTSArrayType=function(e,t){a("TSArrayType",e,t)},t.assertTSAsExpression=function(e,t){a("TSAsExpression",e,t)},t.assertTSBaseType=function(e,t){a("TSBaseType",e,t)},t.assertTSBigIntKeyword=function(e,t){a("TSBigIntKeyword",e,t)},t.assertTSBooleanKeyword=function(e,t){a("TSBooleanKeyword",e,t)},t.assertTSCallSignatureDeclaration=function(e,t){a("TSCallSignatureDeclaration",e,t)},t.assertTSConditionalType=function(e,t){a("TSConditionalType",e,t)},t.assertTSConstructSignatureDeclaration=function(e,t){a("TSConstructSignatureDeclaration",e,t)},t.assertTSConstructorType=function(e,t){a("TSConstructorType",e,t)},t.assertTSDeclareFunction=function(e,t){a("TSDeclareFunction",e,t)},t.assertTSDeclareMethod=function(e,t){a("TSDeclareMethod",e,t)},t.assertTSEntityName=function(e,t){a("TSEntityName",e,t)},t.assertTSEnumDeclaration=function(e,t){a("TSEnumDeclaration",e,t)},t.assertTSEnumMember=function(e,t){a("TSEnumMember",e,t)},t.assertTSExportAssignment=function(e,t){a("TSExportAssignment",e,t)},t.assertTSExpressionWithTypeArguments=function(e,t){a("TSExpressionWithTypeArguments",e,t)},t.assertTSExternalModuleReference=function(e,t){a("TSExternalModuleReference",e,t)},t.assertTSFunctionType=function(e,t){a("TSFunctionType",e,t)},t.assertTSImportEqualsDeclaration=function(e,t){a("TSImportEqualsDeclaration",e,t)},t.assertTSImportType=function(e,t){a("TSImportType",e,t)},t.assertTSIndexSignature=function(e,t){a("TSIndexSignature",e,t)},t.assertTSIndexedAccessType=function(e,t){a("TSIndexedAccessType",e,t)},t.assertTSInferType=function(e,t){a("TSInferType",e,t)},t.assertTSInterfaceBody=function(e,t){a("TSInterfaceBody",e,t)},t.assertTSInterfaceDeclaration=function(e,t){a("TSInterfaceDeclaration",e,t)},t.assertTSIntersectionType=function(e,t){a("TSIntersectionType",e,t)},t.assertTSIntrinsicKeyword=function(e,t){a("TSIntrinsicKeyword",e,t)},t.assertTSLiteralType=function(e,t){a("TSLiteralType",e,t)},t.assertTSMappedType=function(e,t){a("TSMappedType",e,t)},t.assertTSMethodSignature=function(e,t){a("TSMethodSignature",e,t)},t.assertTSModuleBlock=function(e,t){a("TSModuleBlock",e,t)},t.assertTSModuleDeclaration=function(e,t){a("TSModuleDeclaration",e,t)},t.assertTSNamedTupleMember=function(e,t){a("TSNamedTupleMember",e,t)},t.assertTSNamespaceExportDeclaration=function(e,t){a("TSNamespaceExportDeclaration",e,t)},t.assertTSNeverKeyword=function(e,t){a("TSNeverKeyword",e,t)},t.assertTSNonNullExpression=function(e,t){a("TSNonNullExpression",e,t)},t.assertTSNullKeyword=function(e,t){a("TSNullKeyword",e,t)},t.assertTSNumberKeyword=function(e,t){a("TSNumberKeyword",e,t)},t.assertTSObjectKeyword=function(e,t){a("TSObjectKeyword",e,t)},t.assertTSOptionalType=function(e,t){a("TSOptionalType",e,t)},t.assertTSParameterProperty=function(e,t){a("TSParameterProperty",e,t)},t.assertTSParenthesizedType=function(e,t){a("TSParenthesizedType",e,t)},t.assertTSPropertySignature=function(e,t){a("TSPropertySignature",e,t)},t.assertTSQualifiedName=function(e,t){a("TSQualifiedName",e,t)},t.assertTSRestType=function(e,t){a("TSRestType",e,t)},t.assertTSStringKeyword=function(e,t){a("TSStringKeyword",e,t)},t.assertTSSymbolKeyword=function(e,t){a("TSSymbolKeyword",e,t)},t.assertTSThisType=function(e,t){a("TSThisType",e,t)},t.assertTSTupleType=function(e,t){a("TSTupleType",e,t)},t.assertTSType=function(e,t){a("TSType",e,t)},t.assertTSTypeAliasDeclaration=function(e,t){a("TSTypeAliasDeclaration",e,t)},t.assertTSTypeAnnotation=function(e,t){a("TSTypeAnnotation",e,t)},t.assertTSTypeAssertion=function(e,t){a("TSTypeAssertion",e,t)},t.assertTSTypeElement=function(e,t){a("TSTypeElement",e,t)},t.assertTSTypeLiteral=function(e,t){a("TSTypeLiteral",e,t)},t.assertTSTypeOperator=function(e,t){a("TSTypeOperator",e,t)},t.assertTSTypeParameter=function(e,t){a("TSTypeParameter",e,t)},t.assertTSTypeParameterDeclaration=function(e,t){a("TSTypeParameterDeclaration",e,t)},t.assertTSTypeParameterInstantiation=function(e,t){a("TSTypeParameterInstantiation",e,t)},t.assertTSTypePredicate=function(e,t){a("TSTypePredicate",e,t)},t.assertTSTypeQuery=function(e,t){a("TSTypeQuery",e,t)},t.assertTSTypeReference=function(e,t){a("TSTypeReference",e,t)},t.assertTSUndefinedKeyword=function(e,t){a("TSUndefinedKeyword",e,t)},t.assertTSUnionType=function(e,t){a("TSUnionType",e,t)},t.assertTSUnknownKeyword=function(e,t){a("TSUnknownKeyword",e,t)},t.assertTSVoidKeyword=function(e,t){a("TSVoidKeyword",e,t)},t.assertTaggedTemplateExpression=function(e,t){a("TaggedTemplateExpression",e,t)},t.assertTemplateElement=function(e,t){a("TemplateElement",e,t)},t.assertTemplateLiteral=function(e,t){a("TemplateLiteral",e,t)},t.assertTerminatorless=function(e,t){a("Terminatorless",e,t)},t.assertThisExpression=function(e,t){a("ThisExpression",e,t)},t.assertThisTypeAnnotation=function(e,t){a("ThisTypeAnnotation",e,t)},t.assertThrowStatement=function(e,t){a("ThrowStatement",e,t)},t.assertTopicReference=function(e,t){a("TopicReference",e,t)},t.assertTryStatement=function(e,t){a("TryStatement",e,t)},t.assertTupleExpression=function(e,t){a("TupleExpression",e,t)},t.assertTupleTypeAnnotation=function(e,t){a("TupleTypeAnnotation",e,t)},t.assertTypeAlias=function(e,t){a("TypeAlias",e,t)},t.assertTypeAnnotation=function(e,t){a("TypeAnnotation",e,t)},t.assertTypeCastExpression=function(e,t){a("TypeCastExpression",e,t)},t.assertTypeParameter=function(e,t){a("TypeParameter",e,t)},t.assertTypeParameterDeclaration=function(e,t){a("TypeParameterDeclaration",e,t)},t.assertTypeParameterInstantiation=function(e,t){a("TypeParameterInstantiation",e,t)},t.assertTypeScript=function(e,t){a("TypeScript",e,t)},t.assertTypeofTypeAnnotation=function(e,t){a("TypeofTypeAnnotation",e,t)},t.assertUnaryExpression=function(e,t){a("UnaryExpression",e,t)},t.assertUnaryLike=function(e,t){a("UnaryLike",e,t)},t.assertUnionTypeAnnotation=function(e,t){a("UnionTypeAnnotation",e,t)},t.assertUpdateExpression=function(e,t){a("UpdateExpression",e,t)},t.assertUserWhitespacable=function(e,t){a("UserWhitespacable",e,t)},t.assertV8IntrinsicIdentifier=function(e,t){a("V8IntrinsicIdentifier",e,t)},t.assertVariableDeclaration=function(e,t){a("VariableDeclaration",e,t)},t.assertVariableDeclarator=function(e,t){a("VariableDeclarator",e,t)},t.assertVariance=function(e,t){a("Variance",e,t)},t.assertVoidTypeAnnotation=function(e,t){a("VoidTypeAnnotation",e,t)},t.assertWhile=function(e,t){a("While",e,t)},t.assertWhileStatement=function(e,t){a("WhileStatement",e,t)},t.assertWithStatement=function(e,t){a("WithStatement",e,t)},t.assertYieldExpression=function(e,t){a("YieldExpression",e,t)};var r=n(67275);function a(e,t,n){if(!(0,r.default)(e,t,n))throw new Error(`Expected type "${e}" with option ${JSON.stringify(n)}, but instead got "${t.type}".`)}},91585:()=>{},29983:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,a.default)(e);return 1===t.length?t[0]:(0,r.unionTypeAnnotation)(t)};var r=n(34391),a=n(17321)},40949:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(34391);t.default=function(e){switch(e){case"string":return(0,r.stringTypeAnnotation)();case"number":return(0,r.numberTypeAnnotation)();case"undefined":return(0,r.voidTypeAnnotation)();case"boolean":return(0,r.booleanTypeAnnotation)();case"function":return(0,r.genericTypeAnnotation)((0,r.identifier)("Function"));case"object":return(0,r.genericTypeAnnotation)((0,r.identifier)("Object"));case"symbol":return(0,r.genericTypeAnnotation)((0,r.identifier)("Symbol"));case"bigint":return(0,r.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+e)}},34391:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anyTypeAnnotation=function(){return{type:"AnyTypeAnnotation"}},t.argumentPlaceholder=function(){return{type:"ArgumentPlaceholder"}},t.arrayExpression=function(e=[]){return(0,r.default)({type:"ArrayExpression",elements:e})},t.arrayPattern=function(e){return(0,r.default)({type:"ArrayPattern",elements:e})},t.arrayTypeAnnotation=function(e){return(0,r.default)({type:"ArrayTypeAnnotation",elementType:e})},t.arrowFunctionExpression=function(e,t,n=!1){return(0,r.default)({type:"ArrowFunctionExpression",params:e,body:t,async:n,expression:null})},t.assignmentExpression=function(e,t,n){return(0,r.default)({type:"AssignmentExpression",operator:e,left:t,right:n})},t.assignmentPattern=function(e,t){return(0,r.default)({type:"AssignmentPattern",left:e,right:t})},t.awaitExpression=function(e){return(0,r.default)({type:"AwaitExpression",argument:e})},t.bigIntLiteral=function(e){return(0,r.default)({type:"BigIntLiteral",value:e})},t.binaryExpression=function(e,t,n){return(0,r.default)({type:"BinaryExpression",operator:e,left:t,right:n})},t.bindExpression=function(e,t){return(0,r.default)({type:"BindExpression",object:e,callee:t})},t.blockStatement=function(e,t=[]){return(0,r.default)({type:"BlockStatement",body:e,directives:t})},t.booleanLiteral=function(e){return(0,r.default)({type:"BooleanLiteral",value:e})},t.booleanLiteralTypeAnnotation=function(e){return(0,r.default)({type:"BooleanLiteralTypeAnnotation",value:e})},t.booleanTypeAnnotation=function(){return{type:"BooleanTypeAnnotation"}},t.breakStatement=function(e=null){return(0,r.default)({type:"BreakStatement",label:e})},t.callExpression=function(e,t){return(0,r.default)({type:"CallExpression",callee:e,arguments:t})},t.catchClause=function(e=null,t){return(0,r.default)({type:"CatchClause",param:e,body:t})},t.classAccessorProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.classBody=function(e){return(0,r.default)({type:"ClassBody",body:e})},t.classDeclaration=function(e,t=null,n,a=null){return(0,r.default)({type:"ClassDeclaration",id:e,superClass:t,body:n,decorators:a})},t.classExpression=function(e=null,t=null,n,a=null){return(0,r.default)({type:"ClassExpression",id:e,superClass:t,body:n,decorators:a})},t.classImplements=function(e,t=null){return(0,r.default)({type:"ClassImplements",id:e,typeParameters:t})},t.classMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1,l=!1){return(0,r.default)({type:"ClassMethod",kind:e,key:t,params:n,body:a,computed:i,static:s,generator:o,async:l})},t.classPrivateMethod=function(e="method",t,n,a,i=!1){return(0,r.default)({type:"ClassPrivateMethod",kind:e,key:t,params:n,body:a,static:i})},t.classPrivateProperty=function(e,t=null,n=null,a){return(0,r.default)({type:"ClassPrivateProperty",key:e,value:t,decorators:n,static:a})},t.classProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.conditionalExpression=function(e,t,n){return(0,r.default)({type:"ConditionalExpression",test:e,consequent:t,alternate:n})},t.continueStatement=function(e=null){return(0,r.default)({type:"ContinueStatement",label:e})},t.debuggerStatement=function(){return{type:"DebuggerStatement"}},t.decimalLiteral=function(e){return(0,r.default)({type:"DecimalLiteral",value:e})},t.declareClass=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareClass",id:e,typeParameters:t,extends:n,body:a})},t.declareExportAllDeclaration=function(e){return(0,r.default)({type:"DeclareExportAllDeclaration",source:e})},t.declareExportDeclaration=function(e=null,t=null,n=null){return(0,r.default)({type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:n})},t.declareFunction=function(e){return(0,r.default)({type:"DeclareFunction",id:e})},t.declareInterface=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareInterface",id:e,typeParameters:t,extends:n,body:a})},t.declareModule=function(e,t,n=null){return(0,r.default)({type:"DeclareModule",id:e,body:t,kind:n})},t.declareModuleExports=function(e){return(0,r.default)({type:"DeclareModuleExports",typeAnnotation:e})},t.declareOpaqueType=function(e,t=null,n=null){return(0,r.default)({type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:n})},t.declareTypeAlias=function(e,t=null,n){return(0,r.default)({type:"DeclareTypeAlias",id:e,typeParameters:t,right:n})},t.declareVariable=function(e){return(0,r.default)({type:"DeclareVariable",id:e})},t.declaredPredicate=function(e){return(0,r.default)({type:"DeclaredPredicate",value:e})},t.decorator=function(e){return(0,r.default)({type:"Decorator",expression:e})},t.directive=function(e){return(0,r.default)({type:"Directive",value:e})},t.directiveLiteral=function(e){return(0,r.default)({type:"DirectiveLiteral",value:e})},t.doExpression=function(e,t=!1){return(0,r.default)({type:"DoExpression",body:e,async:t})},t.doWhileStatement=function(e,t){return(0,r.default)({type:"DoWhileStatement",test:e,body:t})},t.emptyStatement=function(){return{type:"EmptyStatement"}},t.emptyTypeAnnotation=function(){return{type:"EmptyTypeAnnotation"}},t.enumBooleanBody=function(e){return(0,r.default)({type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumBooleanMember=function(e){return(0,r.default)({type:"EnumBooleanMember",id:e,init:null})},t.enumDeclaration=function(e,t){return(0,r.default)({type:"EnumDeclaration",id:e,body:t})},t.enumDefaultedMember=function(e){return(0,r.default)({type:"EnumDefaultedMember",id:e})},t.enumNumberBody=function(e){return(0,r.default)({type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumNumberMember=function(e,t){return(0,r.default)({type:"EnumNumberMember",id:e,init:t})},t.enumStringBody=function(e){return(0,r.default)({type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumStringMember=function(e,t){return(0,r.default)({type:"EnumStringMember",id:e,init:t})},t.enumSymbolBody=function(e){return(0,r.default)({type:"EnumSymbolBody",members:e,hasUnknownMembers:null})},t.existsTypeAnnotation=function(){return{type:"ExistsTypeAnnotation"}},t.exportAllDeclaration=function(e){return(0,r.default)({type:"ExportAllDeclaration",source:e})},t.exportDefaultDeclaration=function(e){return(0,r.default)({type:"ExportDefaultDeclaration",declaration:e})},t.exportDefaultSpecifier=function(e){return(0,r.default)({type:"ExportDefaultSpecifier",exported:e})},t.exportNamedDeclaration=function(e=null,t=[],n=null){return(0,r.default)({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n})},t.exportNamespaceSpecifier=function(e){return(0,r.default)({type:"ExportNamespaceSpecifier",exported:e})},t.exportSpecifier=function(e,t){return(0,r.default)({type:"ExportSpecifier",local:e,exported:t})},t.expressionStatement=function(e){return(0,r.default)({type:"ExpressionStatement",expression:e})},t.file=function(e,t=null,n=null){return(0,r.default)({type:"File",program:e,comments:t,tokens:n})},t.forInStatement=function(e,t,n){return(0,r.default)({type:"ForInStatement",left:e,right:t,body:n})},t.forOfStatement=function(e,t,n,a=!1){return(0,r.default)({type:"ForOfStatement",left:e,right:t,body:n,await:a})},t.forStatement=function(e=null,t=null,n=null,a){return(0,r.default)({type:"ForStatement",init:e,test:t,update:n,body:a})},t.functionDeclaration=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionDeclaration",id:e,params:t,body:n,generator:a,async:i})},t.functionExpression=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionExpression",id:e,params:t,body:n,generator:a,async:i})},t.functionTypeAnnotation=function(e=null,t,n=null,a){return(0,r.default)({type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:n,returnType:a})},t.functionTypeParam=function(e=null,t){return(0,r.default)({type:"FunctionTypeParam",name:e,typeAnnotation:t})},t.genericTypeAnnotation=function(e,t=null){return(0,r.default)({type:"GenericTypeAnnotation",id:e,typeParameters:t})},t.identifier=function(e){return(0,r.default)({type:"Identifier",name:e})},t.ifStatement=function(e,t,n=null){return(0,r.default)({type:"IfStatement",test:e,consequent:t,alternate:n})},t.import=function(){return{type:"Import"}},t.importAttribute=function(e,t){return(0,r.default)({type:"ImportAttribute",key:e,value:t})},t.importDeclaration=function(e,t){return(0,r.default)({type:"ImportDeclaration",specifiers:e,source:t})},t.importDefaultSpecifier=function(e){return(0,r.default)({type:"ImportDefaultSpecifier",local:e})},t.importNamespaceSpecifier=function(e){return(0,r.default)({type:"ImportNamespaceSpecifier",local:e})},t.importSpecifier=function(e,t){return(0,r.default)({type:"ImportSpecifier",local:e,imported:t})},t.indexedAccessType=function(e,t){return(0,r.default)({type:"IndexedAccessType",objectType:e,indexType:t})},t.inferredPredicate=function(){return{type:"InferredPredicate"}},t.interfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"InterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.interfaceExtends=function(e,t=null){return(0,r.default)({type:"InterfaceExtends",id:e,typeParameters:t})},t.interfaceTypeAnnotation=function(e=null,t){return(0,r.default)({type:"InterfaceTypeAnnotation",extends:e,body:t})},t.interpreterDirective=function(e){return(0,r.default)({type:"InterpreterDirective",value:e})},t.intersectionTypeAnnotation=function(e){return(0,r.default)({type:"IntersectionTypeAnnotation",types:e})},t.jSXAttribute=t.jsxAttribute=function(e,t=null){return(0,r.default)({type:"JSXAttribute",name:e,value:t})},t.jSXClosingElement=t.jsxClosingElement=function(e){return(0,r.default)({type:"JSXClosingElement",name:e})},t.jSXClosingFragment=t.jsxClosingFragment=function(){return{type:"JSXClosingFragment"}},t.jSXElement=t.jsxElement=function(e,t=null,n,a=null){return(0,r.default)({type:"JSXElement",openingElement:e,closingElement:t,children:n,selfClosing:a})},t.jSXEmptyExpression=t.jsxEmptyExpression=function(){return{type:"JSXEmptyExpression"}},t.jSXExpressionContainer=t.jsxExpressionContainer=function(e){return(0,r.default)({type:"JSXExpressionContainer",expression:e})},t.jSXFragment=t.jsxFragment=function(e,t,n){return(0,r.default)({type:"JSXFragment",openingFragment:e,closingFragment:t,children:n})},t.jSXIdentifier=t.jsxIdentifier=function(e){return(0,r.default)({type:"JSXIdentifier",name:e})},t.jSXMemberExpression=t.jsxMemberExpression=function(e,t){return(0,r.default)({type:"JSXMemberExpression",object:e,property:t})},t.jSXNamespacedName=t.jsxNamespacedName=function(e,t){return(0,r.default)({type:"JSXNamespacedName",namespace:e,name:t})},t.jSXOpeningElement=t.jsxOpeningElement=function(e,t,n=!1){return(0,r.default)({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n})},t.jSXOpeningFragment=t.jsxOpeningFragment=function(){return{type:"JSXOpeningFragment"}},t.jSXSpreadAttribute=t.jsxSpreadAttribute=function(e){return(0,r.default)({type:"JSXSpreadAttribute",argument:e})},t.jSXSpreadChild=t.jsxSpreadChild=function(e){return(0,r.default)({type:"JSXSpreadChild",expression:e})},t.jSXText=t.jsxText=function(e){return(0,r.default)({type:"JSXText",value:e})},t.labeledStatement=function(e,t){return(0,r.default)({type:"LabeledStatement",label:e,body:t})},t.logicalExpression=function(e,t,n){return(0,r.default)({type:"LogicalExpression",operator:e,left:t,right:n})},t.memberExpression=function(e,t,n=!1,a=null){return(0,r.default)({type:"MemberExpression",object:e,property:t,computed:n,optional:a})},t.metaProperty=function(e,t){return(0,r.default)({type:"MetaProperty",meta:e,property:t})},t.mixedTypeAnnotation=function(){return{type:"MixedTypeAnnotation"}},t.moduleExpression=function(e){return(0,r.default)({type:"ModuleExpression",body:e})},t.newExpression=function(e,t){return(0,r.default)({type:"NewExpression",callee:e,arguments:t})},t.noop=function(){return{type:"Noop"}},t.nullLiteral=function(){return{type:"NullLiteral"}},t.nullLiteralTypeAnnotation=function(){return{type:"NullLiteralTypeAnnotation"}},t.nullableTypeAnnotation=function(e){return(0,r.default)({type:"NullableTypeAnnotation",typeAnnotation:e})},t.numberLiteral=function(e){return console.trace("The node type NumberLiteral has been renamed to NumericLiteral"),a(e)},t.numberLiteralTypeAnnotation=function(e){return(0,r.default)({type:"NumberLiteralTypeAnnotation",value:e})},t.numberTypeAnnotation=function(){return{type:"NumberTypeAnnotation"}},t.numericLiteral=a,t.objectExpression=function(e){return(0,r.default)({type:"ObjectExpression",properties:e})},t.objectMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1){return(0,r.default)({type:"ObjectMethod",kind:e,key:t,params:n,body:a,computed:i,generator:s,async:o})},t.objectPattern=function(e){return(0,r.default)({type:"ObjectPattern",properties:e})},t.objectProperty=function(e,t,n=!1,a=!1,i=null){return(0,r.default)({type:"ObjectProperty",key:e,value:t,computed:n,shorthand:a,decorators:i})},t.objectTypeAnnotation=function(e,t=[],n=[],a=[],i=!1){return(0,r.default)({type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:n,internalSlots:a,exact:i})},t.objectTypeCallProperty=function(e){return(0,r.default)({type:"ObjectTypeCallProperty",value:e,static:null})},t.objectTypeIndexer=function(e=null,t,n,a=null){return(0,r.default)({type:"ObjectTypeIndexer",id:e,key:t,value:n,variance:a,static:null})},t.objectTypeInternalSlot=function(e,t,n,a,i){return(0,r.default)({type:"ObjectTypeInternalSlot",id:e,value:t,optional:n,static:a,method:i})},t.objectTypeProperty=function(e,t,n=null){return(0,r.default)({type:"ObjectTypeProperty",key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null})},t.objectTypeSpreadProperty=function(e){return(0,r.default)({type:"ObjectTypeSpreadProperty",argument:e})},t.opaqueType=function(e,t=null,n=null,a){return(0,r.default)({type:"OpaqueType",id:e,typeParameters:t,supertype:n,impltype:a})},t.optionalCallExpression=function(e,t,n){return(0,r.default)({type:"OptionalCallExpression",callee:e,arguments:t,optional:n})},t.optionalIndexedAccessType=function(e,t){return(0,r.default)({type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null})},t.optionalMemberExpression=function(e,t,n=!1,a){return(0,r.default)({type:"OptionalMemberExpression",object:e,property:t,computed:n,optional:a})},t.parenthesizedExpression=function(e){return(0,r.default)({type:"ParenthesizedExpression",expression:e})},t.pipelineBareFunction=function(e){return(0,r.default)({type:"PipelineBareFunction",callee:e})},t.pipelinePrimaryTopicReference=function(){return{type:"PipelinePrimaryTopicReference"}},t.pipelineTopicExpression=function(e){return(0,r.default)({type:"PipelineTopicExpression",expression:e})},t.placeholder=function(e,t){return(0,r.default)({type:"Placeholder",expectedNode:e,name:t})},t.privateName=function(e){return(0,r.default)({type:"PrivateName",id:e})},t.program=function(e,t=[],n="script",a=null){return(0,r.default)({type:"Program",body:e,directives:t,sourceType:n,interpreter:a,sourceFile:null})},t.qualifiedTypeIdentifier=function(e,t){return(0,r.default)({type:"QualifiedTypeIdentifier",id:e,qualification:t})},t.recordExpression=function(e){return(0,r.default)({type:"RecordExpression",properties:e})},t.regExpLiteral=i,t.regexLiteral=function(e,t=""){return console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"),i(e,t)},t.restElement=s,t.restProperty=function(e){return console.trace("The node type RestProperty has been renamed to RestElement"),s(e)},t.returnStatement=function(e=null){return(0,r.default)({type:"ReturnStatement",argument:e})},t.sequenceExpression=function(e){return(0,r.default)({type:"SequenceExpression",expressions:e})},t.spreadElement=o,t.spreadProperty=function(e){return console.trace("The node type SpreadProperty has been renamed to SpreadElement"),o(e)},t.staticBlock=function(e){return(0,r.default)({type:"StaticBlock",body:e})},t.stringLiteral=function(e){return(0,r.default)({type:"StringLiteral",value:e})},t.stringLiteralTypeAnnotation=function(e){return(0,r.default)({type:"StringLiteralTypeAnnotation",value:e})},t.stringTypeAnnotation=function(){return{type:"StringTypeAnnotation"}},t.super=function(){return{type:"Super"}},t.switchCase=function(e=null,t){return(0,r.default)({type:"SwitchCase",test:e,consequent:t})},t.switchStatement=function(e,t){return(0,r.default)({type:"SwitchStatement",discriminant:e,cases:t})},t.symbolTypeAnnotation=function(){return{type:"SymbolTypeAnnotation"}},t.taggedTemplateExpression=function(e,t){return(0,r.default)({type:"TaggedTemplateExpression",tag:e,quasi:t})},t.templateElement=function(e,t=!1){return(0,r.default)({type:"TemplateElement",value:e,tail:t})},t.templateLiteral=function(e,t){return(0,r.default)({type:"TemplateLiteral",quasis:e,expressions:t})},t.thisExpression=function(){return{type:"ThisExpression"}},t.thisTypeAnnotation=function(){return{type:"ThisTypeAnnotation"}},t.throwStatement=function(e){return(0,r.default)({type:"ThrowStatement",argument:e})},t.topicReference=function(){return{type:"TopicReference"}},t.tryStatement=function(e,t=null,n=null){return(0,r.default)({type:"TryStatement",block:e,handler:t,finalizer:n})},t.tSAnyKeyword=t.tsAnyKeyword=function(){return{type:"TSAnyKeyword"}},t.tSArrayType=t.tsArrayType=function(e){return(0,r.default)({type:"TSArrayType",elementType:e})},t.tSAsExpression=t.tsAsExpression=function(e,t){return(0,r.default)({type:"TSAsExpression",expression:e,typeAnnotation:t})},t.tSBigIntKeyword=t.tsBigIntKeyword=function(){return{type:"TSBigIntKeyword"}},t.tSBooleanKeyword=t.tsBooleanKeyword=function(){return{type:"TSBooleanKeyword"}},t.tSCallSignatureDeclaration=t.tsCallSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConditionalType=t.tsConditionalType=function(e,t,n,a){return(0,r.default)({type:"TSConditionalType",checkType:e,extendsType:t,trueType:n,falseType:a})},t.tSConstructSignatureDeclaration=t.tsConstructSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConstructorType=t.tsConstructorType=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSDeclareFunction=t.tsDeclareFunction=function(e=null,t=null,n,a=null){return(0,r.default)({type:"TSDeclareFunction",id:e,typeParameters:t,params:n,returnType:a})},t.tSDeclareMethod=t.tsDeclareMethod=function(e=null,t,n=null,a,i=null){return(0,r.default)({type:"TSDeclareMethod",decorators:e,key:t,typeParameters:n,params:a,returnType:i})},t.tSEnumDeclaration=t.tsEnumDeclaration=function(e,t){return(0,r.default)({type:"TSEnumDeclaration",id:e,members:t})},t.tSEnumMember=t.tsEnumMember=function(e,t=null){return(0,r.default)({type:"TSEnumMember",id:e,initializer:t})},t.tSExportAssignment=t.tsExportAssignment=function(e){return(0,r.default)({type:"TSExportAssignment",expression:e})},t.tSExpressionWithTypeArguments=t.tsExpressionWithTypeArguments=function(e,t=null){return(0,r.default)({type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t})},t.tSExternalModuleReference=t.tsExternalModuleReference=function(e){return(0,r.default)({type:"TSExternalModuleReference",expression:e})},t.tSFunctionType=t.tsFunctionType=function(e=null,t,n=null){return(0,r.default)({type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSImportEqualsDeclaration=t.tsImportEqualsDeclaration=function(e,t){return(0,r.default)({type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null})},t.tSImportType=t.tsImportType=function(e,t=null,n=null){return(0,r.default)({type:"TSImportType",argument:e,qualifier:t,typeParameters:n})},t.tSIndexSignature=t.tsIndexSignature=function(e,t=null){return(0,r.default)({type:"TSIndexSignature",parameters:e,typeAnnotation:t})},t.tSIndexedAccessType=t.tsIndexedAccessType=function(e,t){return(0,r.default)({type:"TSIndexedAccessType",objectType:e,indexType:t})},t.tSInferType=t.tsInferType=function(e){return(0,r.default)({type:"TSInferType",typeParameter:e})},t.tSInterfaceBody=t.tsInterfaceBody=function(e){return(0,r.default)({type:"TSInterfaceBody",body:e})},t.tSInterfaceDeclaration=t.tsInterfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.tSIntersectionType=t.tsIntersectionType=function(e){return(0,r.default)({type:"TSIntersectionType",types:e})},t.tSIntrinsicKeyword=t.tsIntrinsicKeyword=function(){return{type:"TSIntrinsicKeyword"}},t.tSLiteralType=t.tsLiteralType=function(e){return(0,r.default)({type:"TSLiteralType",literal:e})},t.tSMappedType=t.tsMappedType=function(e,t=null,n=null){return(0,r.default)({type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:n})},t.tSMethodSignature=t.tsMethodSignature=function(e,t=null,n,a=null){return(0,r.default)({type:"TSMethodSignature",key:e,typeParameters:t,parameters:n,typeAnnotation:a,kind:null})},t.tSModuleBlock=t.tsModuleBlock=function(e){return(0,r.default)({type:"TSModuleBlock",body:e})},t.tSModuleDeclaration=t.tsModuleDeclaration=function(e,t){return(0,r.default)({type:"TSModuleDeclaration",id:e,body:t})},t.tSNamedTupleMember=t.tsNamedTupleMember=function(e,t,n=!1){return(0,r.default)({type:"TSNamedTupleMember",label:e,elementType:t,optional:n})},t.tSNamespaceExportDeclaration=t.tsNamespaceExportDeclaration=function(e){return(0,r.default)({type:"TSNamespaceExportDeclaration",id:e})},t.tSNeverKeyword=t.tsNeverKeyword=function(){return{type:"TSNeverKeyword"}},t.tSNonNullExpression=t.tsNonNullExpression=function(e){return(0,r.default)({type:"TSNonNullExpression",expression:e})},t.tSNullKeyword=t.tsNullKeyword=function(){return{type:"TSNullKeyword"}},t.tSNumberKeyword=t.tsNumberKeyword=function(){return{type:"TSNumberKeyword"}},t.tSObjectKeyword=t.tsObjectKeyword=function(){return{type:"TSObjectKeyword"}},t.tSOptionalType=t.tsOptionalType=function(e){return(0,r.default)({type:"TSOptionalType",typeAnnotation:e})},t.tSParameterProperty=t.tsParameterProperty=function(e){return(0,r.default)({type:"TSParameterProperty",parameter:e})},t.tSParenthesizedType=t.tsParenthesizedType=function(e){return(0,r.default)({type:"TSParenthesizedType",typeAnnotation:e})},t.tSPropertySignature=t.tsPropertySignature=function(e,t=null,n=null){return(0,r.default)({type:"TSPropertySignature",key:e,typeAnnotation:t,initializer:n,kind:null})},t.tSQualifiedName=t.tsQualifiedName=function(e,t){return(0,r.default)({type:"TSQualifiedName",left:e,right:t})},t.tSRestType=t.tsRestType=function(e){return(0,r.default)({type:"TSRestType",typeAnnotation:e})},t.tSStringKeyword=t.tsStringKeyword=function(){return{type:"TSStringKeyword"}},t.tSSymbolKeyword=t.tsSymbolKeyword=function(){return{type:"TSSymbolKeyword"}},t.tSThisType=t.tsThisType=function(){return{type:"TSThisType"}},t.tSTupleType=t.tsTupleType=function(e){return(0,r.default)({type:"TSTupleType",elementTypes:e})},t.tSTypeAliasDeclaration=t.tsTypeAliasDeclaration=function(e,t=null,n){return(0,r.default)({type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:n})},t.tSTypeAnnotation=t.tsTypeAnnotation=function(e){return(0,r.default)({type:"TSTypeAnnotation",typeAnnotation:e})},t.tSTypeAssertion=t.tsTypeAssertion=function(e,t){return(0,r.default)({type:"TSTypeAssertion",typeAnnotation:e,expression:t})},t.tSTypeLiteral=t.tsTypeLiteral=function(e){return(0,r.default)({type:"TSTypeLiteral",members:e})},t.tSTypeOperator=t.tsTypeOperator=function(e){return(0,r.default)({type:"TSTypeOperator",typeAnnotation:e,operator:null})},t.tSTypeParameter=t.tsTypeParameter=function(e=null,t=null,n){return(0,r.default)({type:"TSTypeParameter",constraint:e,default:t,name:n})},t.tSTypeParameterDeclaration=t.tsTypeParameterDeclaration=function(e){return(0,r.default)({type:"TSTypeParameterDeclaration",params:e})},t.tSTypeParameterInstantiation=t.tsTypeParameterInstantiation=function(e){return(0,r.default)({type:"TSTypeParameterInstantiation",params:e})},t.tSTypePredicate=t.tsTypePredicate=function(e,t=null,n=null){return(0,r.default)({type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:n})},t.tSTypeQuery=t.tsTypeQuery=function(e){return(0,r.default)({type:"TSTypeQuery",exprName:e})},t.tSTypeReference=t.tsTypeReference=function(e,t=null){return(0,r.default)({type:"TSTypeReference",typeName:e,typeParameters:t})},t.tSUndefinedKeyword=t.tsUndefinedKeyword=function(){return{type:"TSUndefinedKeyword"}},t.tSUnionType=t.tsUnionType=function(e){return(0,r.default)({type:"TSUnionType",types:e})},t.tSUnknownKeyword=t.tsUnknownKeyword=function(){return{type:"TSUnknownKeyword"}},t.tSVoidKeyword=t.tsVoidKeyword=function(){return{type:"TSVoidKeyword"}},t.tupleExpression=function(e=[]){return(0,r.default)({type:"TupleExpression",elements:e})},t.tupleTypeAnnotation=function(e){return(0,r.default)({type:"TupleTypeAnnotation",types:e})},t.typeAlias=function(e,t=null,n){return(0,r.default)({type:"TypeAlias",id:e,typeParameters:t,right:n})},t.typeAnnotation=function(e){return(0,r.default)({type:"TypeAnnotation",typeAnnotation:e})},t.typeCastExpression=function(e,t){return(0,r.default)({type:"TypeCastExpression",expression:e,typeAnnotation:t})},t.typeParameter=function(e=null,t=null,n=null){return(0,r.default)({type:"TypeParameter",bound:e,default:t,variance:n,name:null})},t.typeParameterDeclaration=function(e){return(0,r.default)({type:"TypeParameterDeclaration",params:e})},t.typeParameterInstantiation=function(e){return(0,r.default)({type:"TypeParameterInstantiation",params:e})},t.typeofTypeAnnotation=function(e){return(0,r.default)({type:"TypeofTypeAnnotation",argument:e})},t.unaryExpression=function(e,t,n=!0){return(0,r.default)({type:"UnaryExpression",operator:e,argument:t,prefix:n})},t.unionTypeAnnotation=function(e){return(0,r.default)({type:"UnionTypeAnnotation",types:e})},t.updateExpression=function(e,t,n=!1){return(0,r.default)({type:"UpdateExpression",operator:e,argument:t,prefix:n})},t.v8IntrinsicIdentifier=function(e){return(0,r.default)({type:"V8IntrinsicIdentifier",name:e})},t.variableDeclaration=function(e,t){return(0,r.default)({type:"VariableDeclaration",kind:e,declarations:t})},t.variableDeclarator=function(e,t=null){return(0,r.default)({type:"VariableDeclarator",id:e,init:t})},t.variance=function(e){return(0,r.default)({type:"Variance",kind:e})},t.voidTypeAnnotation=function(){return{type:"VoidTypeAnnotation"}},t.whileStatement=function(e,t){return(0,r.default)({type:"WhileStatement",test:e,body:t})},t.withStatement=function(e,t){return(0,r.default)({type:"WithStatement",object:e,body:t})},t.yieldExpression=function(e=null,t=!1){return(0,r.default)({type:"YieldExpression",argument:e,delegate:t})};var r=n(59969);function a(e){return(0,r.default)({type:"NumericLiteral",value:e})}function i(e,t=""){return(0,r.default)({type:"RegExpLiteral",pattern:e,flags:t})}function s(e){return(0,r.default)({type:"RestElement",argument:e})}function o(e){return(0,r.default)({type:"SpreadElement",argument:e})}},86104:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AnyTypeAnnotation",{enumerable:!0,get:function(){return r.anyTypeAnnotation}}),Object.defineProperty(t,"ArgumentPlaceholder",{enumerable:!0,get:function(){return r.argumentPlaceholder}}),Object.defineProperty(t,"ArrayExpression",{enumerable:!0,get:function(){return r.arrayExpression}}),Object.defineProperty(t,"ArrayPattern",{enumerable:!0,get:function(){return r.arrayPattern}}),Object.defineProperty(t,"ArrayTypeAnnotation",{enumerable:!0,get:function(){return r.arrayTypeAnnotation}}),Object.defineProperty(t,"ArrowFunctionExpression",{enumerable:!0,get:function(){return r.arrowFunctionExpression}}),Object.defineProperty(t,"AssignmentExpression",{enumerable:!0,get:function(){return r.assignmentExpression}}),Object.defineProperty(t,"AssignmentPattern",{enumerable:!0,get:function(){return r.assignmentPattern}}),Object.defineProperty(t,"AwaitExpression",{enumerable:!0,get:function(){return r.awaitExpression}}),Object.defineProperty(t,"BigIntLiteral",{enumerable:!0,get:function(){return r.bigIntLiteral}}),Object.defineProperty(t,"BinaryExpression",{enumerable:!0,get:function(){return r.binaryExpression}}),Object.defineProperty(t,"BindExpression",{enumerable:!0,get:function(){return r.bindExpression}}),Object.defineProperty(t,"BlockStatement",{enumerable:!0,get:function(){return r.blockStatement}}),Object.defineProperty(t,"BooleanLiteral",{enumerable:!0,get:function(){return r.booleanLiteral}}),Object.defineProperty(t,"BooleanLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.booleanLiteralTypeAnnotation}}),Object.defineProperty(t,"BooleanTypeAnnotation",{enumerable:!0,get:function(){return r.booleanTypeAnnotation}}),Object.defineProperty(t,"BreakStatement",{enumerable:!0,get:function(){return r.breakStatement}}),Object.defineProperty(t,"CallExpression",{enumerable:!0,get:function(){return r.callExpression}}),Object.defineProperty(t,"CatchClause",{enumerable:!0,get:function(){return r.catchClause}}),Object.defineProperty(t,"ClassAccessorProperty",{enumerable:!0,get:function(){return r.classAccessorProperty}}),Object.defineProperty(t,"ClassBody",{enumerable:!0,get:function(){return r.classBody}}),Object.defineProperty(t,"ClassDeclaration",{enumerable:!0,get:function(){return r.classDeclaration}}),Object.defineProperty(t,"ClassExpression",{enumerable:!0,get:function(){return r.classExpression}}),Object.defineProperty(t,"ClassImplements",{enumerable:!0,get:function(){return r.classImplements}}),Object.defineProperty(t,"ClassMethod",{enumerable:!0,get:function(){return r.classMethod}}),Object.defineProperty(t,"ClassPrivateMethod",{enumerable:!0,get:function(){return r.classPrivateMethod}}),Object.defineProperty(t,"ClassPrivateProperty",{enumerable:!0,get:function(){return r.classPrivateProperty}}),Object.defineProperty(t,"ClassProperty",{enumerable:!0,get:function(){return r.classProperty}}),Object.defineProperty(t,"ConditionalExpression",{enumerable:!0,get:function(){return r.conditionalExpression}}),Object.defineProperty(t,"ContinueStatement",{enumerable:!0,get:function(){return r.continueStatement}}),Object.defineProperty(t,"DebuggerStatement",{enumerable:!0,get:function(){return r.debuggerStatement}}),Object.defineProperty(t,"DecimalLiteral",{enumerable:!0,get:function(){return r.decimalLiteral}}),Object.defineProperty(t,"DeclareClass",{enumerable:!0,get:function(){return r.declareClass}}),Object.defineProperty(t,"DeclareExportAllDeclaration",{enumerable:!0,get:function(){return r.declareExportAllDeclaration}}),Object.defineProperty(t,"DeclareExportDeclaration",{enumerable:!0,get:function(){return r.declareExportDeclaration}}),Object.defineProperty(t,"DeclareFunction",{enumerable:!0,get:function(){return r.declareFunction}}),Object.defineProperty(t,"DeclareInterface",{enumerable:!0,get:function(){return r.declareInterface}}),Object.defineProperty(t,"DeclareModule",{enumerable:!0,get:function(){return r.declareModule}}),Object.defineProperty(t,"DeclareModuleExports",{enumerable:!0,get:function(){return r.declareModuleExports}}),Object.defineProperty(t,"DeclareOpaqueType",{enumerable:!0,get:function(){return r.declareOpaqueType}}),Object.defineProperty(t,"DeclareTypeAlias",{enumerable:!0,get:function(){return r.declareTypeAlias}}),Object.defineProperty(t,"DeclareVariable",{enumerable:!0,get:function(){return r.declareVariable}}),Object.defineProperty(t,"DeclaredPredicate",{enumerable:!0,get:function(){return r.declaredPredicate}}),Object.defineProperty(t,"Decorator",{enumerable:!0,get:function(){return r.decorator}}),Object.defineProperty(t,"Directive",{enumerable:!0,get:function(){return r.directive}}),Object.defineProperty(t,"DirectiveLiteral",{enumerable:!0,get:function(){return r.directiveLiteral}}),Object.defineProperty(t,"DoExpression",{enumerable:!0,get:function(){return r.doExpression}}),Object.defineProperty(t,"DoWhileStatement",{enumerable:!0,get:function(){return r.doWhileStatement}}),Object.defineProperty(t,"EmptyStatement",{enumerable:!0,get:function(){return r.emptyStatement}}),Object.defineProperty(t,"EmptyTypeAnnotation",{enumerable:!0,get:function(){return r.emptyTypeAnnotation}}),Object.defineProperty(t,"EnumBooleanBody",{enumerable:!0,get:function(){return r.enumBooleanBody}}),Object.defineProperty(t,"EnumBooleanMember",{enumerable:!0,get:function(){return r.enumBooleanMember}}),Object.defineProperty(t,"EnumDeclaration",{enumerable:!0,get:function(){return r.enumDeclaration}}),Object.defineProperty(t,"EnumDefaultedMember",{enumerable:!0,get:function(){return r.enumDefaultedMember}}),Object.defineProperty(t,"EnumNumberBody",{enumerable:!0,get:function(){return r.enumNumberBody}}),Object.defineProperty(t,"EnumNumberMember",{enumerable:!0,get:function(){return r.enumNumberMember}}),Object.defineProperty(t,"EnumStringBody",{enumerable:!0,get:function(){return r.enumStringBody}}),Object.defineProperty(t,"EnumStringMember",{enumerable:!0,get:function(){return r.enumStringMember}}),Object.defineProperty(t,"EnumSymbolBody",{enumerable:!0,get:function(){return r.enumSymbolBody}}),Object.defineProperty(t,"ExistsTypeAnnotation",{enumerable:!0,get:function(){return r.existsTypeAnnotation}}),Object.defineProperty(t,"ExportAllDeclaration",{enumerable:!0,get:function(){return r.exportAllDeclaration}}),Object.defineProperty(t,"ExportDefaultDeclaration",{enumerable:!0,get:function(){return r.exportDefaultDeclaration}}),Object.defineProperty(t,"ExportDefaultSpecifier",{enumerable:!0,get:function(){return r.exportDefaultSpecifier}}),Object.defineProperty(t,"ExportNamedDeclaration",{enumerable:!0,get:function(){return r.exportNamedDeclaration}}),Object.defineProperty(t,"ExportNamespaceSpecifier",{enumerable:!0,get:function(){return r.exportNamespaceSpecifier}}),Object.defineProperty(t,"ExportSpecifier",{enumerable:!0,get:function(){return r.exportSpecifier}}),Object.defineProperty(t,"ExpressionStatement",{enumerable:!0,get:function(){return r.expressionStatement}}),Object.defineProperty(t,"File",{enumerable:!0,get:function(){return r.file}}),Object.defineProperty(t,"ForInStatement",{enumerable:!0,get:function(){return r.forInStatement}}),Object.defineProperty(t,"ForOfStatement",{enumerable:!0,get:function(){return r.forOfStatement}}),Object.defineProperty(t,"ForStatement",{enumerable:!0,get:function(){return r.forStatement}}),Object.defineProperty(t,"FunctionDeclaration",{enumerable:!0,get:function(){return r.functionDeclaration}}),Object.defineProperty(t,"FunctionExpression",{enumerable:!0,get:function(){return r.functionExpression}}),Object.defineProperty(t,"FunctionTypeAnnotation",{enumerable:!0,get:function(){return r.functionTypeAnnotation}}),Object.defineProperty(t,"FunctionTypeParam",{enumerable:!0,get:function(){return r.functionTypeParam}}),Object.defineProperty(t,"GenericTypeAnnotation",{enumerable:!0,get:function(){return r.genericTypeAnnotation}}),Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return r.identifier}}),Object.defineProperty(t,"IfStatement",{enumerable:!0,get:function(){return r.ifStatement}}),Object.defineProperty(t,"Import",{enumerable:!0,get:function(){return r.import}}),Object.defineProperty(t,"ImportAttribute",{enumerable:!0,get:function(){return r.importAttribute}}),Object.defineProperty(t,"ImportDeclaration",{enumerable:!0,get:function(){return r.importDeclaration}}),Object.defineProperty(t,"ImportDefaultSpecifier",{enumerable:!0,get:function(){return r.importDefaultSpecifier}}),Object.defineProperty(t,"ImportNamespaceSpecifier",{enumerable:!0,get:function(){return r.importNamespaceSpecifier}}),Object.defineProperty(t,"ImportSpecifier",{enumerable:!0,get:function(){return r.importSpecifier}}),Object.defineProperty(t,"IndexedAccessType",{enumerable:!0,get:function(){return r.indexedAccessType}}),Object.defineProperty(t,"InferredPredicate",{enumerable:!0,get:function(){return r.inferredPredicate}}),Object.defineProperty(t,"InterfaceDeclaration",{enumerable:!0,get:function(){return r.interfaceDeclaration}}),Object.defineProperty(t,"InterfaceExtends",{enumerable:!0,get:function(){return r.interfaceExtends}}),Object.defineProperty(t,"InterfaceTypeAnnotation",{enumerable:!0,get:function(){return r.interfaceTypeAnnotation}}),Object.defineProperty(t,"InterpreterDirective",{enumerable:!0,get:function(){return r.interpreterDirective}}),Object.defineProperty(t,"IntersectionTypeAnnotation",{enumerable:!0,get:function(){return r.intersectionTypeAnnotation}}),Object.defineProperty(t,"JSXAttribute",{enumerable:!0,get:function(){return r.jsxAttribute}}),Object.defineProperty(t,"JSXClosingElement",{enumerable:!0,get:function(){return r.jsxClosingElement}}),Object.defineProperty(t,"JSXClosingFragment",{enumerable:!0,get:function(){return r.jsxClosingFragment}}),Object.defineProperty(t,"JSXElement",{enumerable:!0,get:function(){return r.jsxElement}}),Object.defineProperty(t,"JSXEmptyExpression",{enumerable:!0,get:function(){return r.jsxEmptyExpression}}),Object.defineProperty(t,"JSXExpressionContainer",{enumerable:!0,get:function(){return r.jsxExpressionContainer}}),Object.defineProperty(t,"JSXFragment",{enumerable:!0,get:function(){return r.jsxFragment}}),Object.defineProperty(t,"JSXIdentifier",{enumerable:!0,get:function(){return r.jsxIdentifier}}),Object.defineProperty(t,"JSXMemberExpression",{enumerable:!0,get:function(){return r.jsxMemberExpression}}),Object.defineProperty(t,"JSXNamespacedName",{enumerable:!0,get:function(){return r.jsxNamespacedName}}),Object.defineProperty(t,"JSXOpeningElement",{enumerable:!0,get:function(){return r.jsxOpeningElement}}),Object.defineProperty(t,"JSXOpeningFragment",{enumerable:!0,get:function(){return r.jsxOpeningFragment}}),Object.defineProperty(t,"JSXSpreadAttribute",{enumerable:!0,get:function(){return r.jsxSpreadAttribute}}),Object.defineProperty(t,"JSXSpreadChild",{enumerable:!0,get:function(){return r.jsxSpreadChild}}),Object.defineProperty(t,"JSXText",{enumerable:!0,get:function(){return r.jsxText}}),Object.defineProperty(t,"LabeledStatement",{enumerable:!0,get:function(){return r.labeledStatement}}),Object.defineProperty(t,"LogicalExpression",{enumerable:!0,get:function(){return r.logicalExpression}}),Object.defineProperty(t,"MemberExpression",{enumerable:!0,get:function(){return r.memberExpression}}),Object.defineProperty(t,"MetaProperty",{enumerable:!0,get:function(){return r.metaProperty}}),Object.defineProperty(t,"MixedTypeAnnotation",{enumerable:!0,get:function(){return r.mixedTypeAnnotation}}),Object.defineProperty(t,"ModuleExpression",{enumerable:!0,get:function(){return r.moduleExpression}}),Object.defineProperty(t,"NewExpression",{enumerable:!0,get:function(){return r.newExpression}}),Object.defineProperty(t,"Noop",{enumerable:!0,get:function(){return r.noop}}),Object.defineProperty(t,"NullLiteral",{enumerable:!0,get:function(){return r.nullLiteral}}),Object.defineProperty(t,"NullLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.nullLiteralTypeAnnotation}}),Object.defineProperty(t,"NullableTypeAnnotation",{enumerable:!0,get:function(){return r.nullableTypeAnnotation}}),Object.defineProperty(t,"NumberLiteral",{enumerable:!0,get:function(){return r.numberLiteral}}),Object.defineProperty(t,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.numberLiteralTypeAnnotation}}),Object.defineProperty(t,"NumberTypeAnnotation",{enumerable:!0,get:function(){return r.numberTypeAnnotation}}),Object.defineProperty(t,"NumericLiteral",{enumerable:!0,get:function(){return r.numericLiteral}}),Object.defineProperty(t,"ObjectExpression",{enumerable:!0,get:function(){return r.objectExpression}}),Object.defineProperty(t,"ObjectMethod",{enumerable:!0,get:function(){return r.objectMethod}}),Object.defineProperty(t,"ObjectPattern",{enumerable:!0,get:function(){return r.objectPattern}}),Object.defineProperty(t,"ObjectProperty",{enumerable:!0,get:function(){return r.objectProperty}}),Object.defineProperty(t,"ObjectTypeAnnotation",{enumerable:!0,get:function(){return r.objectTypeAnnotation}}),Object.defineProperty(t,"ObjectTypeCallProperty",{enumerable:!0,get:function(){return r.objectTypeCallProperty}}),Object.defineProperty(t,"ObjectTypeIndexer",{enumerable:!0,get:function(){return r.objectTypeIndexer}}),Object.defineProperty(t,"ObjectTypeInternalSlot",{enumerable:!0,get:function(){return r.objectTypeInternalSlot}}),Object.defineProperty(t,"ObjectTypeProperty",{enumerable:!0,get:function(){return r.objectTypeProperty}}),Object.defineProperty(t,"ObjectTypeSpreadProperty",{enumerable:!0,get:function(){return r.objectTypeSpreadProperty}}),Object.defineProperty(t,"OpaqueType",{enumerable:!0,get:function(){return r.opaqueType}}),Object.defineProperty(t,"OptionalCallExpression",{enumerable:!0,get:function(){return r.optionalCallExpression}}),Object.defineProperty(t,"OptionalIndexedAccessType",{enumerable:!0,get:function(){return r.optionalIndexedAccessType}}),Object.defineProperty(t,"OptionalMemberExpression",{enumerable:!0,get:function(){return r.optionalMemberExpression}}),Object.defineProperty(t,"ParenthesizedExpression",{enumerable:!0,get:function(){return r.parenthesizedExpression}}),Object.defineProperty(t,"PipelineBareFunction",{enumerable:!0,get:function(){return r.pipelineBareFunction}}),Object.defineProperty(t,"PipelinePrimaryTopicReference",{enumerable:!0,get:function(){return r.pipelinePrimaryTopicReference}}),Object.defineProperty(t,"PipelineTopicExpression",{enumerable:!0,get:function(){return r.pipelineTopicExpression}}),Object.defineProperty(t,"Placeholder",{enumerable:!0,get:function(){return r.placeholder}}),Object.defineProperty(t,"PrivateName",{enumerable:!0,get:function(){return r.privateName}}),Object.defineProperty(t,"Program",{enumerable:!0,get:function(){return r.program}}),Object.defineProperty(t,"QualifiedTypeIdentifier",{enumerable:!0,get:function(){return r.qualifiedTypeIdentifier}}),Object.defineProperty(t,"RecordExpression",{enumerable:!0,get:function(){return r.recordExpression}}),Object.defineProperty(t,"RegExpLiteral",{enumerable:!0,get:function(){return r.regExpLiteral}}),Object.defineProperty(t,"RegexLiteral",{enumerable:!0,get:function(){return r.regexLiteral}}),Object.defineProperty(t,"RestElement",{enumerable:!0,get:function(){return r.restElement}}),Object.defineProperty(t,"RestProperty",{enumerable:!0,get:function(){return r.restProperty}}),Object.defineProperty(t,"ReturnStatement",{enumerable:!0,get:function(){return r.returnStatement}}),Object.defineProperty(t,"SequenceExpression",{enumerable:!0,get:function(){return r.sequenceExpression}}),Object.defineProperty(t,"SpreadElement",{enumerable:!0,get:function(){return r.spreadElement}}),Object.defineProperty(t,"SpreadProperty",{enumerable:!0,get:function(){return r.spreadProperty}}),Object.defineProperty(t,"StaticBlock",{enumerable:!0,get:function(){return r.staticBlock}}),Object.defineProperty(t,"StringLiteral",{enumerable:!0,get:function(){return r.stringLiteral}}),Object.defineProperty(t,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.stringLiteralTypeAnnotation}}),Object.defineProperty(t,"StringTypeAnnotation",{enumerable:!0,get:function(){return r.stringTypeAnnotation}}),Object.defineProperty(t,"Super",{enumerable:!0,get:function(){return r.super}}),Object.defineProperty(t,"SwitchCase",{enumerable:!0,get:function(){return r.switchCase}}),Object.defineProperty(t,"SwitchStatement",{enumerable:!0,get:function(){return r.switchStatement}}),Object.defineProperty(t,"SymbolTypeAnnotation",{enumerable:!0,get:function(){return r.symbolTypeAnnotation}}),Object.defineProperty(t,"TSAnyKeyword",{enumerable:!0,get:function(){return r.tsAnyKeyword}}),Object.defineProperty(t,"TSArrayType",{enumerable:!0,get:function(){return r.tsArrayType}}),Object.defineProperty(t,"TSAsExpression",{enumerable:!0,get:function(){return r.tsAsExpression}}),Object.defineProperty(t,"TSBigIntKeyword",{enumerable:!0,get:function(){return r.tsBigIntKeyword}}),Object.defineProperty(t,"TSBooleanKeyword",{enumerable:!0,get:function(){return r.tsBooleanKeyword}}),Object.defineProperty(t,"TSCallSignatureDeclaration",{enumerable:!0,get:function(){return r.tsCallSignatureDeclaration}}),Object.defineProperty(t,"TSConditionalType",{enumerable:!0,get:function(){return r.tsConditionalType}}),Object.defineProperty(t,"TSConstructSignatureDeclaration",{enumerable:!0,get:function(){return r.tsConstructSignatureDeclaration}}),Object.defineProperty(t,"TSConstructorType",{enumerable:!0,get:function(){return r.tsConstructorType}}),Object.defineProperty(t,"TSDeclareFunction",{enumerable:!0,get:function(){return r.tsDeclareFunction}}),Object.defineProperty(t,"TSDeclareMethod",{enumerable:!0,get:function(){return r.tsDeclareMethod}}),Object.defineProperty(t,"TSEnumDeclaration",{enumerable:!0,get:function(){return r.tsEnumDeclaration}}),Object.defineProperty(t,"TSEnumMember",{enumerable:!0,get:function(){return r.tsEnumMember}}),Object.defineProperty(t,"TSExportAssignment",{enumerable:!0,get:function(){return r.tsExportAssignment}}),Object.defineProperty(t,"TSExpressionWithTypeArguments",{enumerable:!0,get:function(){return r.tsExpressionWithTypeArguments}}),Object.defineProperty(t,"TSExternalModuleReference",{enumerable:!0,get:function(){return r.tsExternalModuleReference}}),Object.defineProperty(t,"TSFunctionType",{enumerable:!0,get:function(){return r.tsFunctionType}}),Object.defineProperty(t,"TSImportEqualsDeclaration",{enumerable:!0,get:function(){return r.tsImportEqualsDeclaration}}),Object.defineProperty(t,"TSImportType",{enumerable:!0,get:function(){return r.tsImportType}}),Object.defineProperty(t,"TSIndexSignature",{enumerable:!0,get:function(){return r.tsIndexSignature}}),Object.defineProperty(t,"TSIndexedAccessType",{enumerable:!0,get:function(){return r.tsIndexedAccessType}}),Object.defineProperty(t,"TSInferType",{enumerable:!0,get:function(){return r.tsInferType}}),Object.defineProperty(t,"TSInterfaceBody",{enumerable:!0,get:function(){return r.tsInterfaceBody}}),Object.defineProperty(t,"TSInterfaceDeclaration",{enumerable:!0,get:function(){return r.tsInterfaceDeclaration}}),Object.defineProperty(t,"TSIntersectionType",{enumerable:!0,get:function(){return r.tsIntersectionType}}),Object.defineProperty(t,"TSIntrinsicKeyword",{enumerable:!0,get:function(){return r.tsIntrinsicKeyword}}),Object.defineProperty(t,"TSLiteralType",{enumerable:!0,get:function(){return r.tsLiteralType}}),Object.defineProperty(t,"TSMappedType",{enumerable:!0,get:function(){return r.tsMappedType}}),Object.defineProperty(t,"TSMethodSignature",{enumerable:!0,get:function(){return r.tsMethodSignature}}),Object.defineProperty(t,"TSModuleBlock",{enumerable:!0,get:function(){return r.tsModuleBlock}}),Object.defineProperty(t,"TSModuleDeclaration",{enumerable:!0,get:function(){return r.tsModuleDeclaration}}),Object.defineProperty(t,"TSNamedTupleMember",{enumerable:!0,get:function(){return r.tsNamedTupleMember}}),Object.defineProperty(t,"TSNamespaceExportDeclaration",{enumerable:!0,get:function(){return r.tsNamespaceExportDeclaration}}),Object.defineProperty(t,"TSNeverKeyword",{enumerable:!0,get:function(){return r.tsNeverKeyword}}),Object.defineProperty(t,"TSNonNullExpression",{enumerable:!0,get:function(){return r.tsNonNullExpression}}),Object.defineProperty(t,"TSNullKeyword",{enumerable:!0,get:function(){return r.tsNullKeyword}}),Object.defineProperty(t,"TSNumberKeyword",{enumerable:!0,get:function(){return r.tsNumberKeyword}}),Object.defineProperty(t,"TSObjectKeyword",{enumerable:!0,get:function(){return r.tsObjectKeyword}}),Object.defineProperty(t,"TSOptionalType",{enumerable:!0,get:function(){return r.tsOptionalType}}),Object.defineProperty(t,"TSParameterProperty",{enumerable:!0,get:function(){return r.tsParameterProperty}}),Object.defineProperty(t,"TSParenthesizedType",{enumerable:!0,get:function(){return r.tsParenthesizedType}}),Object.defineProperty(t,"TSPropertySignature",{enumerable:!0,get:function(){return r.tsPropertySignature}}),Object.defineProperty(t,"TSQualifiedName",{enumerable:!0,get:function(){return r.tsQualifiedName}}),Object.defineProperty(t,"TSRestType",{enumerable:!0,get:function(){return r.tsRestType}}),Object.defineProperty(t,"TSStringKeyword",{enumerable:!0,get:function(){return r.tsStringKeyword}}),Object.defineProperty(t,"TSSymbolKeyword",{enumerable:!0,get:function(){return r.tsSymbolKeyword}}),Object.defineProperty(t,"TSThisType",{enumerable:!0,get:function(){return r.tsThisType}}),Object.defineProperty(t,"TSTupleType",{enumerable:!0,get:function(){return r.tsTupleType}}),Object.defineProperty(t,"TSTypeAliasDeclaration",{enumerable:!0,get:function(){return r.tsTypeAliasDeclaration}}),Object.defineProperty(t,"TSTypeAnnotation",{enumerable:!0,get:function(){return r.tsTypeAnnotation}}),Object.defineProperty(t,"TSTypeAssertion",{enumerable:!0,get:function(){return r.tsTypeAssertion}}),Object.defineProperty(t,"TSTypeLiteral",{enumerable:!0,get:function(){return r.tsTypeLiteral}}),Object.defineProperty(t,"TSTypeOperator",{enumerable:!0,get:function(){return r.tsTypeOperator}}),Object.defineProperty(t,"TSTypeParameter",{enumerable:!0,get:function(){return r.tsTypeParameter}}),Object.defineProperty(t,"TSTypeParameterDeclaration",{enumerable:!0,get:function(){return r.tsTypeParameterDeclaration}}),Object.defineProperty(t,"TSTypeParameterInstantiation",{enumerable:!0,get:function(){return r.tsTypeParameterInstantiation}}),Object.defineProperty(t,"TSTypePredicate",{enumerable:!0,get:function(){return r.tsTypePredicate}}),Object.defineProperty(t,"TSTypeQuery",{enumerable:!0,get:function(){return r.tsTypeQuery}}),Object.defineProperty(t,"TSTypeReference",{enumerable:!0,get:function(){return r.tsTypeReference}}),Object.defineProperty(t,"TSUndefinedKeyword",{enumerable:!0,get:function(){return r.tsUndefinedKeyword}}),Object.defineProperty(t,"TSUnionType",{enumerable:!0,get:function(){return r.tsUnionType}}),Object.defineProperty(t,"TSUnknownKeyword",{enumerable:!0,get:function(){return r.tsUnknownKeyword}}),Object.defineProperty(t,"TSVoidKeyword",{enumerable:!0,get:function(){return r.tsVoidKeyword}}),Object.defineProperty(t,"TaggedTemplateExpression",{enumerable:!0,get:function(){return r.taggedTemplateExpression}}),Object.defineProperty(t,"TemplateElement",{enumerable:!0,get:function(){return r.templateElement}}),Object.defineProperty(t,"TemplateLiteral",{enumerable:!0,get:function(){return r.templateLiteral}}),Object.defineProperty(t,"ThisExpression",{enumerable:!0,get:function(){return r.thisExpression}}),Object.defineProperty(t,"ThisTypeAnnotation",{enumerable:!0,get:function(){return r.thisTypeAnnotation}}),Object.defineProperty(t,"ThrowStatement",{enumerable:!0,get:function(){return r.throwStatement}}),Object.defineProperty(t,"TopicReference",{enumerable:!0,get:function(){return r.topicReference}}),Object.defineProperty(t,"TryStatement",{enumerable:!0,get:function(){return r.tryStatement}}),Object.defineProperty(t,"TupleExpression",{enumerable:!0,get:function(){return r.tupleExpression}}),Object.defineProperty(t,"TupleTypeAnnotation",{enumerable:!0,get:function(){return r.tupleTypeAnnotation}}),Object.defineProperty(t,"TypeAlias",{enumerable:!0,get:function(){return r.typeAlias}}),Object.defineProperty(t,"TypeAnnotation",{enumerable:!0,get:function(){return r.typeAnnotation}}),Object.defineProperty(t,"TypeCastExpression",{enumerable:!0,get:function(){return r.typeCastExpression}}),Object.defineProperty(t,"TypeParameter",{enumerable:!0,get:function(){return r.typeParameter}}),Object.defineProperty(t,"TypeParameterDeclaration",{enumerable:!0,get:function(){return r.typeParameterDeclaration}}),Object.defineProperty(t,"TypeParameterInstantiation",{enumerable:!0,get:function(){return r.typeParameterInstantiation}}),Object.defineProperty(t,"TypeofTypeAnnotation",{enumerable:!0,get:function(){return r.typeofTypeAnnotation}}),Object.defineProperty(t,"UnaryExpression",{enumerable:!0,get:function(){return r.unaryExpression}}),Object.defineProperty(t,"UnionTypeAnnotation",{enumerable:!0,get:function(){return r.unionTypeAnnotation}}),Object.defineProperty(t,"UpdateExpression",{enumerable:!0,get:function(){return r.updateExpression}}),Object.defineProperty(t,"V8IntrinsicIdentifier",{enumerable:!0,get:function(){return r.v8IntrinsicIdentifier}}),Object.defineProperty(t,"VariableDeclaration",{enumerable:!0,get:function(){return r.variableDeclaration}}),Object.defineProperty(t,"VariableDeclarator",{enumerable:!0,get:function(){return r.variableDeclarator}}),Object.defineProperty(t,"Variance",{enumerable:!0,get:function(){return r.variance}}),Object.defineProperty(t,"VoidTypeAnnotation",{enumerable:!0,get:function(){return r.voidTypeAnnotation}}),Object.defineProperty(t,"WhileStatement",{enumerable:!0,get:function(){return r.whileStatement}}),Object.defineProperty(t,"WithStatement",{enumerable:!0,get:function(){return r.withStatement}}),Object.defineProperty(t,"YieldExpression",{enumerable:!0,get:function(){return r.yieldExpression}});var r=n(34391)},88478:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];for(let n=0;n<e.children.length;n++){let i=e.children[n];(0,r.isJSXText)(i)?(0,a.default)(i,t):((0,r.isJSXExpressionContainer)(i)&&(i=i.expression),(0,r.isJSXEmptyExpression)(i)||t.push(i))}return t};var r=n(94746),a=n(15835)},4571:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=e.map((e=>e.typeAnnotation)),n=(0,a.default)(t);return 1===n.length?n[0]:(0,r.tsUnionType)(n)};var r=n(34391),a=n(71954)},59969:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=a.BUILDER_KEYS[e.type];for(const n of t)(0,r.default)(e,n,e[n]);return e};var r=n(43804),a=n(38218)},92363:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1)};var r=n(46209)},96953:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)};var r=n(46209)},90863:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!0,!0)};var r=n(46209)},46209:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=l;var r=n(46507),a=n(94746);const i=Function.call.bind(Object.prototype.hasOwnProperty);function s(e,t,n){return e&&"string"==typeof e.type?l(e,t,n):e}function o(e,t,n){return Array.isArray(e)?e.map((e=>s(e,t,n))):s(e,t,n)}function l(e,t=!0,n=!1){if(!e)return e;const{type:s}=e,l={type:e.type};if((0,a.isIdentifier)(e))l.name=e.name,i(e,"optional")&&"boolean"==typeof e.optional&&(l.optional=e.optional),i(e,"typeAnnotation")&&(l.typeAnnotation=t?o(e.typeAnnotation,!0,n):e.typeAnnotation);else{if(!i(r.NODE_FIELDS,s))throw new Error(`Unknown node type: "${s}"`);for(const c of Object.keys(r.NODE_FIELDS[s]))i(e,c)&&(l[c]=t?(0,a.isFile)(e)&&"comments"===c?p(e.comments,t,n):o(e[c],!0,n):e[c])}return i(e,"loc")&&(l.loc=n?null:e.loc),i(e,"leadingComments")&&(l.leadingComments=p(e.leadingComments,t,n)),i(e,"innerComments")&&(l.innerComments=p(e.innerComments,t,n)),i(e,"trailingComments")&&(l.trailingComments=p(e.trailingComments,t,n)),i(e,"extra")&&(l.extra=Object.assign({},e.extra)),l}function p(e,t,n){return e&&t?e.map((({type:e,value:t,loc:r})=>n?{type:e,value:t,loc:null}:{type:e,value:t,loc:r})):e}},30748:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1,!0)};var r=n(46209)},99529:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,a){return(0,r.default)(e,t,[{type:a?"CommentLine":"CommentBlock",value:n}])};var r=n(96182)},96182:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!n||!e)return e;const r=`${t}Comments`;return e[r]?"leading"===t?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n,e}},6455:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("innerComments",e,t)};var r=n(8834)},91835:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("leadingComments",e,t)};var r=n(8834)},59653:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("trailingComments",e,t)};var r=n(8834)},29564:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,t),(0,a.default)(e,t),(0,i.default)(e,t),e};var r=n(59653),a=n(91835),i=n(6455)},91200:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return r.COMMENT_KEYS.forEach((t=>{e[t]=null})),e};var r=n(36325)},18267:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WHILE_TYPES=t.USERWHITESPACABLE_TYPES=t.UNARYLIKE_TYPES=t.TYPESCRIPT_TYPES=t.TSTYPE_TYPES=t.TSTYPEELEMENT_TYPES=t.TSENTITYNAME_TYPES=t.TSBASETYPE_TYPES=t.TERMINATORLESS_TYPES=t.STATEMENT_TYPES=t.STANDARDIZED_TYPES=t.SCOPABLE_TYPES=t.PUREISH_TYPES=t.PROPERTY_TYPES=t.PRIVATE_TYPES=t.PATTERN_TYPES=t.PATTERNLIKE_TYPES=t.OBJECTMEMBER_TYPES=t.MODULESPECIFIER_TYPES=t.MODULEDECLARATION_TYPES=t.MISCELLANEOUS_TYPES=t.METHOD_TYPES=t.LVAL_TYPES=t.LOOP_TYPES=t.LITERAL_TYPES=t.JSX_TYPES=t.IMMUTABLE_TYPES=t.FUNCTION_TYPES=t.FUNCTIONPARENT_TYPES=t.FOR_TYPES=t.FORXSTATEMENT_TYPES=t.FLOW_TYPES=t.FLOWTYPE_TYPES=t.FLOWPREDICATE_TYPES=t.FLOWDECLARATION_TYPES=t.FLOWBASEANNOTATION_TYPES=t.EXPRESSION_TYPES=t.EXPRESSIONWRAPPER_TYPES=t.EXPORTDECLARATION_TYPES=t.ENUMMEMBER_TYPES=t.ENUMBODY_TYPES=t.DECLARATION_TYPES=t.CONDITIONAL_TYPES=t.COMPLETIONSTATEMENT_TYPES=t.CLASS_TYPES=t.BLOCK_TYPES=t.BLOCKPARENT_TYPES=t.BINARY_TYPES=t.ACCESSOR_TYPES=void 0;var r=n(46507);const a=r.FLIPPED_ALIAS_KEYS.Standardized;t.STANDARDIZED_TYPES=a;const i=r.FLIPPED_ALIAS_KEYS.Expression;t.EXPRESSION_TYPES=i;const s=r.FLIPPED_ALIAS_KEYS.Binary;t.BINARY_TYPES=s;const o=r.FLIPPED_ALIAS_KEYS.Scopable;t.SCOPABLE_TYPES=o;const l=r.FLIPPED_ALIAS_KEYS.BlockParent;t.BLOCKPARENT_TYPES=l;const p=r.FLIPPED_ALIAS_KEYS.Block;t.BLOCK_TYPES=p;const c=r.FLIPPED_ALIAS_KEYS.Statement;t.STATEMENT_TYPES=c;const u=r.FLIPPED_ALIAS_KEYS.Terminatorless;t.TERMINATORLESS_TYPES=u;const d=r.FLIPPED_ALIAS_KEYS.CompletionStatement;t.COMPLETIONSTATEMENT_TYPES=d;const f=r.FLIPPED_ALIAS_KEYS.Conditional;t.CONDITIONAL_TYPES=f;const y=r.FLIPPED_ALIAS_KEYS.Loop;t.LOOP_TYPES=y;const m=r.FLIPPED_ALIAS_KEYS.While;t.WHILE_TYPES=m;const h=r.FLIPPED_ALIAS_KEYS.ExpressionWrapper;t.EXPRESSIONWRAPPER_TYPES=h;const T=r.FLIPPED_ALIAS_KEYS.For;t.FOR_TYPES=T;const S=r.FLIPPED_ALIAS_KEYS.ForXStatement;t.FORXSTATEMENT_TYPES=S;const b=r.FLIPPED_ALIAS_KEYS.Function;t.FUNCTION_TYPES=b;const E=r.FLIPPED_ALIAS_KEYS.FunctionParent;t.FUNCTIONPARENT_TYPES=E;const P=r.FLIPPED_ALIAS_KEYS.Pureish;t.PUREISH_TYPES=P;const x=r.FLIPPED_ALIAS_KEYS.Declaration;t.DECLARATION_TYPES=x;const g=r.FLIPPED_ALIAS_KEYS.PatternLike;t.PATTERNLIKE_TYPES=g;const A=r.FLIPPED_ALIAS_KEYS.LVal;t.LVAL_TYPES=A;const v=r.FLIPPED_ALIAS_KEYS.TSEntityName;t.TSENTITYNAME_TYPES=v;const O=r.FLIPPED_ALIAS_KEYS.Literal;t.LITERAL_TYPES=O;const I=r.FLIPPED_ALIAS_KEYS.Immutable;t.IMMUTABLE_TYPES=I;const N=r.FLIPPED_ALIAS_KEYS.UserWhitespacable;t.USERWHITESPACABLE_TYPES=N;const D=r.FLIPPED_ALIAS_KEYS.Method;t.METHOD_TYPES=D;const C=r.FLIPPED_ALIAS_KEYS.ObjectMember;t.OBJECTMEMBER_TYPES=C;const w=r.FLIPPED_ALIAS_KEYS.Property;t.PROPERTY_TYPES=w;const L=r.FLIPPED_ALIAS_KEYS.UnaryLike;t.UNARYLIKE_TYPES=L;const j=r.FLIPPED_ALIAS_KEYS.Pattern;t.PATTERN_TYPES=j;const _=r.FLIPPED_ALIAS_KEYS.Class;t.CLASS_TYPES=_;const M=r.FLIPPED_ALIAS_KEYS.ModuleDeclaration;t.MODULEDECLARATION_TYPES=M;const k=r.FLIPPED_ALIAS_KEYS.ExportDeclaration;t.EXPORTDECLARATION_TYPES=k;const B=r.FLIPPED_ALIAS_KEYS.ModuleSpecifier;t.MODULESPECIFIER_TYPES=B;const F=r.FLIPPED_ALIAS_KEYS.Accessor;t.ACCESSOR_TYPES=F;const R=r.FLIPPED_ALIAS_KEYS.Private;t.PRIVATE_TYPES=R;const K=r.FLIPPED_ALIAS_KEYS.Flow;t.FLOW_TYPES=K;const V=r.FLIPPED_ALIAS_KEYS.FlowType;t.FLOWTYPE_TYPES=V;const Y=r.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation;t.FLOWBASEANNOTATION_TYPES=Y;const U=r.FLIPPED_ALIAS_KEYS.FlowDeclaration;t.FLOWDECLARATION_TYPES=U;const X=r.FLIPPED_ALIAS_KEYS.FlowPredicate;t.FLOWPREDICATE_TYPES=X;const J=r.FLIPPED_ALIAS_KEYS.EnumBody;t.ENUMBODY_TYPES=J;const W=r.FLIPPED_ALIAS_KEYS.EnumMember;t.ENUMMEMBER_TYPES=W;const q=r.FLIPPED_ALIAS_KEYS.JSX;t.JSX_TYPES=q;const $=r.FLIPPED_ALIAS_KEYS.Miscellaneous;t.MISCELLANEOUS_TYPES=$;const G=r.FLIPPED_ALIAS_KEYS.TypeScript;t.TYPESCRIPT_TYPES=G;const z=r.FLIPPED_ALIAS_KEYS.TSTypeElement;t.TSTYPEELEMENT_TYPES=z;const H=r.FLIPPED_ALIAS_KEYS.TSType;t.TSTYPE_TYPES=H;const Q=r.FLIPPED_ALIAS_KEYS.TSBaseType;t.TSBASETYPE_TYPES=Q},36325:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UPDATE_OPERATORS=t.UNARY_OPERATORS=t.STRING_UNARY_OPERATORS=t.STATEMENT_OR_BLOCK_KEYS=t.NUMBER_UNARY_OPERATORS=t.NUMBER_BINARY_OPERATORS=t.NOT_LOCAL_BINDING=t.LOGICAL_OPERATORS=t.INHERIT_KEYS=t.FOR_INIT_KEYS=t.FLATTENABLE_KEYS=t.EQUALITY_BINARY_OPERATORS=t.COMPARISON_BINARY_OPERATORS=t.COMMENT_KEYS=t.BOOLEAN_UNARY_OPERATORS=t.BOOLEAN_NUMBER_BINARY_OPERATORS=t.BOOLEAN_BINARY_OPERATORS=t.BLOCK_SCOPED_SYMBOL=t.BINARY_OPERATORS=t.ASSIGNMENT_OPERATORS=void 0,t.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],t.FLATTENABLE_KEYS=["body","expressions"],t.FOR_INIT_KEYS=["left","init"],t.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const n=["||","&&","??"];t.LOGICAL_OPERATORS=n,t.UPDATE_OPERATORS=["++","--"];const r=[">","<",">=","<="];t.BOOLEAN_NUMBER_BINARY_OPERATORS=r;const a=["==","===","!=","!=="];t.EQUALITY_BINARY_OPERATORS=a;const i=[...a,"in","instanceof"];t.COMPARISON_BINARY_OPERATORS=i;const s=[...i,...r];t.BOOLEAN_BINARY_OPERATORS=s;const o=["-","/","%","*","**","&","|",">>",">>>","<<","^"];t.NUMBER_BINARY_OPERATORS=o;const l=["+",...o,...s,"|>"];t.BINARY_OPERATORS=l;const p=["=","+=",...o.map((e=>e+"=")),...n.map((e=>e+"="))];t.ASSIGNMENT_OPERATORS=p;const c=["delete","!"];t.BOOLEAN_UNARY_OPERATORS=c;const u=["+","-","~"];t.NUMBER_UNARY_OPERATORS=u;const d=["typeof"];t.STRING_UNARY_OPERATORS=d;const f=["void","throw",...c,...u,...d];t.UNARY_OPERATORS=f,t.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};const y=Symbol.for("var used to be block scoped");t.BLOCK_SCOPED_SYMBOL=y;const m=Symbol.for("should not be considered a local binding");t.NOT_LOCAL_BINDING=m},44315:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t="body"){return e[t]=(0,r.default)(e[t],e)};var r=n(19276)},20696:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,o){const l=[];let p=!0;for(const c of t)if((0,a.isEmptyStatement)(c)||(p=!1),(0,a.isExpression)(c))l.push(c);else if((0,a.isExpressionStatement)(c))l.push(c.expression);else if((0,a.isVariableDeclaration)(c)){if("var"!==c.kind)return;for(const e of c.declarations){const t=(0,r.default)(e);for(const e of Object.keys(t))o.push({kind:c.kind,id:(0,s.default)(t[e])});e.init&&l.push((0,i.assignmentExpression)("=",e.id,e.init))}p=!0}else if((0,a.isIfStatement)(c)){const t=c.consequent?e([c.consequent],n,o):n.buildUndefinedNode(),r=c.alternate?e([c.alternate],n,o):n.buildUndefinedNode();if(!t||!r)return;l.push((0,i.conditionalExpression)(c.test,t,r))}else if((0,a.isBlockStatement)(c)){const t=e(c.body,n,o);if(!t)return;l.push(t)}else{if(!(0,a.isEmptyStatement)(c))return;0===t.indexOf(c)&&(p=!0)}return p&&l.push(n.buildUndefinedNode()),1===l.length?l[0]:(0,i.sequenceExpression)(l)};var r=n(1477),a=n(94746),i=n(34391),s=n(46209)},28316:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"eval"!==(e=(0,r.default)(e))&&"arguments"!==e||(e="_"+e),e};var r=n(71309)},19276:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.isBlockStatement)(e))return e;let n=[];return(0,r.isEmptyStatement)(e)?n=[]:((0,r.isStatement)(e)||(e=(0,r.isFunction)(t)?(0,a.returnStatement)(e):(0,a.expressionStatement)(e)),n=[e]),(0,a.blockStatement)(n)};var r=n(94746),a=n(34391)},59434:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=e.key||e.property){return!e.computed&&(0,r.isIdentifier)(t)&&(t=(0,a.stringLiteral)(t.name)),t};var r=n(94746),a=n(34391)},33348:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(94746);t.default=function(e){if((0,r.isExpressionStatement)(e)&&(e=e.expression),(0,r.isExpression)(e))return e;if((0,r.isClass)(e)?e.type="ClassExpression":(0,r.isFunction)(e)&&(e.type="FunctionExpression"),!(0,r.isExpression)(e))throw new Error(`cannot turn ${e.type} to an expression`);return e}},71309:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e+="";let t="";for(const n of e)t+=(0,a.isIdentifierChar)(n.codePointAt(0))?n:"-";return t=t.replace(/^[-0-9]+/,""),t=t.replace(/[-\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""})),(0,r.default)(t)||(t=`_${t}`),t||"_"};var r=n(93045),a=n(29649)},510:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;var r=n(94746),a=n(46209),i=n(94936);function s(e,t=e.key){let n;return"method"===e.kind?s.increment()+"":(n=(0,r.isIdentifier)(t)?t.name:(0,r.isStringLiteral)(t)?JSON.stringify(t.value):JSON.stringify((0,i.default)((0,a.default)(t))),e.computed&&(n=`[${n}]`),e.static&&(n=`static:${n}`),n)}s.uid=0,s.increment=function(){return s.uid>=Number.MAX_SAFE_INTEGER?s.uid=0:s.uid++}},41435:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(null==e||!e.length)return;const n=[],a=(0,r.default)(e,t,n);if(a){for(const e of n)t.push(e);return a}};var r=n(20696)},22307:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(94746),a=n(34391);t.default=function(e,t){if((0,r.isStatement)(e))return e;let n,i=!1;if((0,r.isClass)(e))i=!0,n="ClassDeclaration";else if((0,r.isFunction)(e))i=!0,n="FunctionDeclaration";else if((0,r.isAssignmentExpression)(e))return(0,a.expressionStatement)(e);if(i&&!e.id&&(n=!1),!n){if(t)return!1;throw new Error(`cannot turn ${e.type} to a statement`)}return e.type=n,e}},46794:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(93045),a=n(34391);t.default=function e(t){if(void 0===t)return(0,a.identifier)("undefined");if(!0===t||!1===t)return(0,a.booleanLiteral)(t);if(null===t)return(0,a.nullLiteral)();if("string"==typeof t)return(0,a.stringLiteral)(t);if("number"==typeof t){let e;if(Number.isFinite(t))e=(0,a.numericLiteral)(Math.abs(t));else{let n;n=Number.isNaN(t)?(0,a.numericLiteral)(0):(0,a.numericLiteral)(1),e=(0,a.binaryExpression)("/",n,(0,a.numericLiteral)(0))}return(t<0||Object.is(t,-0))&&(e=(0,a.unaryExpression)("-",e)),e}if(function(e){return"[object RegExp]"===i(e)}(t)){const e=t.source,n=t.toString().match(/\/([a-z]+|)$/)[1];return(0,a.regExpLiteral)(e,n)}if(Array.isArray(t))return(0,a.arrayExpression)(t.map(e));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(t)){const n=[];for(const i of Object.keys(t)){let s;s=(0,r.default)(i)?(0,a.identifier)(i):(0,a.stringLiteral)(i),n.push((0,a.objectProperty)(s,e(t[i])))}return(0,a.objectExpression)(n)}throw new Error("don't know how to turn this value into a node")};const i=Function.call.bind(Object.prototype.toString)},34457:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.patternLikeCommon=t.functionTypeAnnotationCommon=t.functionDeclarationCommon=t.functionCommon=t.classMethodOrPropertyCommon=t.classMethodOrDeclareMethodCommon=void 0;var r=n(67275),a=n(93045),i=n(29649),s=n(36325),o=n(54913);const l=(0,o.defineAliasedType)("Standardized");l("ArrayExpression",{fields:{elements:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeOrValueType)("null","Expression","SpreadElement"))),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),l("AssignmentExpression",{fields:{operator:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,o.assertValueType)("string");const e=(0,o.assertOneOf)(...s.ASSIGNMENT_OPERATORS),t=(0,o.assertOneOf)("=");return function(n,a,i){((0,r.default)("Pattern",n.left)?t:e)(n,a,i)}}()},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSTypeAssertion","TSNonNullExpression"):(0,o.assertNodeType)("LVal")},right:{validate:(0,o.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),l("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,o.assertOneOf)(...s.BINARY_OPERATORS)},left:{validate:function(){const e=(0,o.assertNodeType)("Expression"),t=(0,o.assertNodeType)("Expression","PrivateName"),n=function(n,r,a){("in"===n.operator?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","PrivateName"],n}()},right:{validate:(0,o.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),l("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("string")}}}),l("Directive",{visitor:["value"],fields:{value:{validate:(0,o.assertNodeType)("DirectiveLiteral")}}}),l("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("string")}}}),l("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Directive"))),default:[]},body:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block","Statement"]}),l("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,o.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),l("CallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,o.assertNodeType)("Expression","V8IntrinsicIdentifier")},arguments:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,o.assertOneOf)(!0,!1),optional:!0}},{typeArguments:{validate:(0,o.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,o.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),l("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,o.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,o.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),l("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,o.assertNodeType)("Expression")},consequent:{validate:(0,o.assertNodeType)("Expression")},alternate:{validate:(0,o.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),l("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,o.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),l("DebuggerStatement",{aliases:["Statement"]}),l("DoWhileStatement",{visitor:["test","body"],fields:{test:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),l("EmptyStatement",{aliases:["Statement"]}),l("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,o.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),l("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,o.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertEach)((0,o.assertNodeType)("CommentBlock","CommentLine")):Object.assign((()=>{}),{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,o.assertEach)(Object.assign((()=>{}),{type:"any"})),optional:!0}}}),l("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSTypeAssertion","TSNonNullExpression"):(0,o.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")}}}),l("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,o.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,o.assertNodeType)("Expression"),optional:!0},update:{validate:(0,o.assertNodeType)("Expression"),optional:!0},body:{validate:(0,o.assertNodeType)("Statement")}}});const p={params:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Identifier","Pattern","RestElement")))},generator:{default:!1},async:{default:!1}};t.functionCommon=p;const c={returnType:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,o.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}};t.functionTypeAnnotationCommon=c;const u=Object.assign({},p,{declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},id:{validate:(0,o.assertNodeType)("Identifier"),optional:!0}});t.functionDeclarationCommon=u,l("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","params","body","returnType","typeParameters"],fields:Object.assign({},u,c,{body:{validate:(0,o.assertNodeType)("BlockStatement")},predicate:{validate:(0,o.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return()=>{};const e=(0,o.assertNodeType)("Identifier");return function(t,n,a){(0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}()}),l("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},p,c,{id:{validate:(0,o.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,o.assertNodeType)("BlockStatement")},predicate:{validate:(0,o.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const d={typeAnnotation:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator")))}};t.patternLikeCommon=d,l("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","PatternLike","LVal","TSEntityName"],fields:Object.assign({},d,{name:{validate:(0,o.chain)((0,o.assertValueType)("string"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&!(0,a.default)(n,!1))throw new TypeError(`"${n}" is not a valid identifier name`)}),{type:"string"}))},optional:{validate:(0,o.assertValueType)("boolean"),optional:!0}}),validate(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const a=/\.(\w+)$/.exec(t);if(!a)return;const[,s]=a,o={computed:!1};if("property"===s){if((0,r.default)("MemberExpression",e,o))return;if((0,r.default)("OptionalMemberExpression",e,o))return}else if("key"===s){if((0,r.default)("Property",e,o))return;if((0,r.default)("Method",e,o))return}else if("exported"===s){if((0,r.default)("ExportSpecifier",e))return}else if("imported"===s){if((0,r.default)("ImportSpecifier",e,{imported:n}))return}else if("meta"===s&&(0,r.default)("MetaProperty",e,{meta:n}))return;if(((0,i.isKeyword)(n.name)||(0,i.isReservedWord)(n.name,!1))&&"this"!==n.name)throw new TypeError(`"${n.name}" is not a valid identifier`)}}),l("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,o.assertNodeType)("Expression")},consequent:{validate:(0,o.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,o.assertNodeType)("Statement")}}}),l("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,o.assertNodeType)("Identifier")},body:{validate:(0,o.assertNodeType)("Statement")}}}),l("StringLiteral",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),l("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,o.assertValueType)("number")}},aliases:["Expression","Pureish","Literal","Immutable"]}),l("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),l("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),l("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,o.assertValueType)("string")},flags:{validate:(0,o.chain)((0,o.assertValueType)("string"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const r=/[^gimsuy]/.exec(n);if(r)throw new TypeError(`"${r[0]}" is not a valid RegExp flag`)}),{type:"string"})),default:""}}}),l("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,o.assertOneOf)(...s.LOGICAL_OPERATORS)},left:{validate:(0,o.assertNodeType)("Expression")},right:{validate:(0,o.assertNodeType)("Expression")}}}),l("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal"],fields:Object.assign({object:{validate:(0,o.assertNodeType)("Expression")},property:{validate:function(){const e=(0,o.assertNodeType)("Identifier","PrivateName"),t=(0,o.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","PrivateName"],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,o.assertOneOf)(!0,!1),optional:!0}})}),l("NewExpression",{inherits:"CallExpression"}),l("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceFile:{validate:(0,o.assertValueType)("string")},sourceType:{validate:(0,o.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,o.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Directive"))),default:[]},body:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block"]}),l("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ObjectMethod","ObjectProperty","SpreadElement")))}}}),l("ObjectMethod",{builder:["kind","key","params","body","computed","generator","async"],fields:Object.assign({},p,c,{kind:Object.assign({validate:(0,o.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const e=(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,o.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral"],n}()},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},body:{validate:(0,o.assertNodeType)("BlockStatement")}}),visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]}),l("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],fields:{computed:{default:!1},key:{validate:function(){const e=(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,o.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral"],n}()},value:{validate:(0,o.assertNodeType)("Expression","PatternLike")},shorthand:{validate:(0,o.chain)((0,o.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true")}),{type:"boolean"}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!(0,r.default)("Identifier",e.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")})),default:!1},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0}},visitor:["key","value","decorators"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:function(){const e=(0,o.assertNodeType)("Identifier","Pattern","TSAsExpression","TSNonNullExpression","TSTypeAssertion"),t=(0,o.assertNodeType)("Expression");return function(n,a,i){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ObjectPattern",n)?e:t)(i,"value",i.value)}}()}),l("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["LVal","PatternLike"],deprecatedAlias:"RestProperty",fields:Object.assign({},d,{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSTypeAssertion","TSNonNullExpression"):(0,o.assertNodeType)("LVal")},optional:{validate:(0,o.assertValueType)("boolean"),optional:!0}}),validate(e,t){if(!process.env.BABEL_TYPES_8_BREAKING)return;const n=/(\w+)\[(\d+)\]/.exec(t);if(!n)throw new Error("Internal Babel error: malformed key.");const[,r,a]=n;if(e[r].length>a+1)throw new TypeError(`RestElement must be last element of ${r}`)}}),l("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,o.assertNodeType)("Expression"),optional:!0}}}),l("SequenceExpression",{visitor:["expressions"],fields:{expressions:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Expression")))}},aliases:["Expression"]}),l("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,o.assertNodeType)("Expression")}}}),l("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,o.assertNodeType)("Expression"),optional:!0},consequent:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Statement")))}}}),l("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,o.assertNodeType)("Expression")},cases:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("SwitchCase")))}}}),l("ThisExpression",{aliases:["Expression"]}),l("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,o.assertNodeType)("Expression")}}}),l("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:(0,o.chain)((0,o.assertNodeType)("BlockStatement"),Object.assign((function(e){if(process.env.BABEL_TYPES_8_BREAKING&&!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")}),{oneOfNodeTypes:["BlockStatement"]}))},handler:{optional:!0,validate:(0,o.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,o.assertNodeType)("BlockStatement")}}}),l("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,o.assertNodeType)("Expression")},operator:{validate:(0,o.assertOneOf)(...s.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),l("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)("Identifier","MemberExpression"):(0,o.assertNodeType)("Expression")},operator:{validate:(0,o.assertOneOf)(...s.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),l("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},kind:{validate:(0,o.assertOneOf)("var","let","const")},declarations:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("VariableDeclarator")))}},validate(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&(0,r.default)("ForXStatement",e,{left:n})&&1!==n.declarations.length)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${e.type}`)}}),l("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,o.assertNodeType)("LVal");const e=(0,o.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),t=(0,o.assertNodeType)("Identifier");return function(n,r,a){(n.init?e:t)(n,r,a)}}()},definite:{optional:!0,validate:(0,o.assertValueType)("boolean")},init:{optional:!0,validate:(0,o.assertNodeType)("Expression")}}}),l("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")}}}),l("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")}}}),l("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},d,{left:{validate:(0,o.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,o.assertNodeType)("Expression")},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0}})}),l("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},d,{elements:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeOrValueType)("null","PatternLike")))},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},optional:{validate:(0,o.assertValueType)("boolean"),optional:!0}})}),l("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["params","body","returnType","typeParameters"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},p,c,{expression:{validate:(0,o.assertValueType)("boolean")},body:{validate:(0,o.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,o.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),l("ClassBody",{visitor:["body"],fields:{body:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")))}}}),l("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,o.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,o.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,o.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,o.assertNodeType)("Expression")},superTypeParameters:{validate:(0,o.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,o.assertNodeType)("InterfaceExtends"),optional:!0}}}),l("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,o.assertNodeType)("Identifier")},typeParameters:{validate:(0,o.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,o.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,o.assertNodeType)("Expression")},superTypeParameters:{validate:(0,o.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,o.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,o.assertValueType)("boolean"),optional:!0}},validate:function(){const e=(0,o.assertNodeType)("Identifier");return function(t,n,a){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id))}}()}),l("ExportAllDeclaration",{visitor:["source"],aliases:["Statement","Declaration","ModuleDeclaration","ExportDeclaration"],fields:{source:{validate:(0,o.assertNodeType)("StringLiteral")},exportKind:(0,o.validateOptional)((0,o.assertOneOf)("type","value")),assertions:{optional:!0,validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ImportAttribute")))}}}),l("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ModuleDeclaration","ExportDeclaration"],fields:{declaration:{validate:(0,o.assertNodeType)("FunctionDeclaration","TSDeclareFunction","ClassDeclaration","Expression")},exportKind:(0,o.validateOptional)((0,o.assertOneOf)("value"))}}),l("ExportNamedDeclaration",{visitor:["declaration","specifiers","source"],aliases:["Statement","Declaration","ModuleDeclaration","ExportDeclaration"],fields:{declaration:{optional:!0,validate:(0,o.chain)((0,o.assertNodeType)("Declaration"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration")}),{oneOfNodeTypes:["Declaration"]}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.source)throw new TypeError("Cannot export a declaration from a source")}))},assertions:{optional:!0,validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ImportAttribute")))},specifiers:{default:[],validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)(function(){const e=(0,o.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),t=(0,o.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?function(n,r,a){(n.source?e:t)(n,r,a)}:e}()))},source:{validate:(0,o.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,o.validateOptional)((0,o.assertOneOf)("type","value"))}}),l("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,o.assertNodeType)("Identifier")},exported:{validate:(0,o.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,o.assertOneOf)("type","value"),optional:!0}}}),l("ForOfStatement",{visitor:["left","right","body"],builder:["left","right","body","await"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,o.assertNodeType)("VariableDeclaration","LVal");const e=(0,o.assertNodeType)("VariableDeclaration"),t=(0,o.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSTypeAssertion","TSNonNullExpression");return function(n,a,i){(0,r.default)("VariableDeclaration",i)?e(n,a,i):t(n,a,i)}}()},right:{validate:(0,o.assertNodeType)("Expression")},body:{validate:(0,o.assertNodeType)("Statement")},await:{default:!1}}}),l("ImportDeclaration",{visitor:["specifiers","source"],aliases:["Statement","Declaration","ModuleDeclaration"],fields:{assertions:{optional:!0,validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ImportAttribute")))},specifiers:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier")))},source:{validate:(0,o.assertNodeType)("StringLiteral")},importKind:{validate:(0,o.assertOneOf)("type","typeof","value"),optional:!0}}}),l("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,o.assertNodeType)("Identifier")}}}),l("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,o.assertNodeType)("Identifier")}}}),l("ImportSpecifier",{visitor:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,o.assertNodeType)("Identifier")},imported:{validate:(0,o.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,o.assertOneOf)("type","typeof","value"),optional:!0}}}),l("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:(0,o.chain)((0,o.assertNodeType)("Identifier"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;let a;switch(n.name){case"function":a="sent";break;case"new":a="target";break;case"import":a="meta"}if(!(0,r.default)("Identifier",e.property,{name:a}))throw new TypeError("Unrecognised MetaProperty")}),{oneOfNodeTypes:["Identifier"]}))},property:{validate:(0,o.assertNodeType)("Identifier")}}});const f={abstract:{validate:(0,o.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,o.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,o.assertValueType)("boolean"),optional:!0},key:{validate:(0,o.chain)(function(){const e=(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,o.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral","Expression"))}};t.classMethodOrPropertyCommon=f;const y=Object.assign({},p,f,{params:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Identifier","Pattern","RestElement","TSParameterProperty")))},kind:{validate:(0,o.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,o.chain)((0,o.assertValueType)("string"),(0,o.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0}});t.classMethodOrDeclareMethodCommon=y,l("ClassMethod",{aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["key","params","body","decorators","returnType","typeParameters"],fields:Object.assign({},y,c,{body:{validate:(0,o.assertNodeType)("BlockStatement")}})}),l("ObjectPattern",{visitor:["properties","typeAnnotation","decorators"],builder:["properties"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},d,{properties:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("RestElement","ObjectProperty")))}})}),l("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,o.assertNodeType)("Expression")}}}),l("Super",{aliases:["Expression"]}),l("TaggedTemplateExpression",{visitor:["tag","quasi","typeParameters"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,o.assertNodeType)("Expression")},quasi:{validate:(0,o.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,o.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),l("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,o.assertShape)({raw:{validate:(0,o.assertValueType)("string")},cooked:{validate:(0,o.assertValueType)("string"),optional:!0}})},tail:{default:!1}}}),l("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("TemplateElement")))},expressions:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Expression","TSType")),(function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)}))}}}),l("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:(0,o.chain)((0,o.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")}),{type:"boolean"})),default:!1},argument:{optional:!0,validate:(0,o.assertNodeType)("Expression")}}}),l("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,o.assertNodeType)("Expression")}}}),l("Import",{aliases:["Expression"]}),l("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,o.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),l("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,o.assertNodeType)("Identifier")}}}),l("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,o.assertNodeType)("Expression")},property:{validate:function(){const e=(0,o.assertNodeType)("Identifier"),t=(0,o.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier"],n}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertValueType)("boolean"),(0,o.assertOptionalChainStart)()):(0,o.assertValueType)("boolean")}}}),l("OptionalCallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:{callee:{validate:(0,o.assertNodeType)("Expression")},arguments:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertValueType)("boolean"),(0,o.assertOptionalChainStart)()):(0,o.assertValueType)("boolean")},typeArguments:{validate:(0,o.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,o.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}}}),l("ClassProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"],fields:Object.assign({},f,{value:{validate:(0,o.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,o.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,o.assertValueType)("boolean"),optional:!0},declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},variance:{validate:(0,o.assertNodeType)("Variance"),optional:!0}})}),l("ClassAccessorProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"],fields:Object.assign({},f,{key:{validate:(0,o.chain)(function(){const e=(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral","PrivateName"),t=(0,o.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,o.assertNodeType)("Identifier","StringLiteral","NumericLiteral","Expression","PrivateName"))},value:{validate:(0,o.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,o.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,o.assertValueType)("boolean"),optional:!0},declare:{validate:(0,o.assertValueType)("boolean"),optional:!0},variance:{validate:(0,o.assertNodeType)("Variance"),optional:!0}})}),l("ClassPrivateProperty",{visitor:["key","value","decorators","typeAnnotation"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,o.assertNodeType)("PrivateName")},value:{validate:(0,o.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,o.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,o.assertValueType)("boolean"),optional:!0},definite:{validate:(0,o.assertValueType)("boolean"),optional:!0},variance:{validate:(0,o.assertNodeType)("Variance"),optional:!0}}}),l("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},y,c,{key:{validate:(0,o.assertNodeType)("PrivateName")},body:{validate:(0,o.assertNodeType)("BlockStatement")}})}),l("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,o.assertNodeType)("Identifier")}}}),l("StaticBlock",{visitor:["body"],fields:{body:{validate:(0,o.chain)((0,o.assertValueType)("array"),(0,o.assertEach)((0,o.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","FunctionParent"]})},71456:(e,t,n)=>{"use strict";var r=n(54913);(0,r.default)("ArgumentPlaceholder",{}),(0,r.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,r.assertNodeType)("Expression")},callee:{validate:(0,r.assertNodeType)("Expression")}}:{object:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})}}}),(0,r.default)("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,r.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,r.assertNodeType)("StringLiteral")}}}),(0,r.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),(0,r.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,r.assertNodeType)("BlockStatement")},async:{validate:(0,r.assertValueType)("boolean"),default:!1}}}),(0,r.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,r.assertNodeType)("Identifier")}}}),(0,r.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("ObjectProperty","SpreadElement")))}}}),(0,r.default)("TupleExpression",{fields:{elements:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Expression","SpreadElement"))),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,r.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,r.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,r.assertNodeType)("Program")}},aliases:["Expression"]}),(0,r.default)("TopicReference",{aliases:["Expression"]}),(0,r.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]})},85391:(e,t,n)=>{"use strict";var r=n(54913);const a=(0,r.defineAliasedType)("Flow"),i=(e,t="TypeParameterDeclaration")=>{a(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends","mixins","implements","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)(t),extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),mixins:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),implements:(0,r.validateOptional)((0,r.arrayOfType)("ClassImplements")),body:(0,r.validateType)("ObjectTypeAnnotation")}})};a("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,r.validateType)("FlowType")}}),a("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("DeclareClass"),a("DeclareFunction",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),predicate:(0,r.validateOptionalType)("DeclaredPredicate")}}),i("DeclareInterface"),a("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)("BlockStatement"),kind:(0,r.validateOptional)((0,r.assertOneOf)("CommonJS","ES"))}}),a("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateOptionalType)("FlowType")}}),a("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier")}}),a("DeclareExportDeclaration",{visitor:["declaration","specifiers","source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{declaration:(0,r.validateOptionalType)("Flow"),specifiers:(0,r.validateOptional)((0,r.arrayOfType)(["ExportSpecifier","ExportNamespaceSpecifier"])),source:(0,r.validateOptionalType)("StringLiteral"),default:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("DeclareExportAllDeclaration",{visitor:["source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{source:(0,r.validateType)("StringLiteral"),exportKind:(0,r.validateOptional)((0,r.assertOneOf)("type","value"))}}),a("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,r.validateType)("Flow")}}),a("ExistsTypeAnnotation",{aliases:["FlowType"]}),a("FunctionTypeAnnotation",{visitor:["typeParameters","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),params:(0,r.validate)((0,r.arrayOfType)("FunctionTypeParam")),rest:(0,r.validateOptionalType)("FunctionTypeParam"),this:(0,r.validateOptionalType)("FunctionTypeParam"),returnType:(0,r.validateType)("FlowType")}}),a("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,r.validateOptionalType)("Identifier"),typeAnnotation:(0,r.validateType)("FlowType"),optional:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),a("InferredPredicate",{aliases:["FlowPredicate"]}),a("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("InterfaceDeclaration"),a("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),body:(0,r.validateType)("ObjectTypeAnnotation")}}),a("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("number"))}}),a("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,r.validate)((0,r.arrayOfType)(["ObjectTypeProperty","ObjectTypeSpreadProperty"])),indexers:{validate:(0,r.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,r.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,r.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,r.assertValueType)("boolean"),default:!1},inexact:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeInternalSlot",{visitor:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateType)("Identifier"),value:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean")),static:(0,r.validate)((0,r.assertValueType)("boolean")),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeIndexer",{visitor:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateOptionalType)("Identifier"),key:(0,r.validateType)("FlowType"),value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance")}}),a("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,r.validateType)(["Identifier","StringLiteral"]),value:(0,r.validateType)("FlowType"),kind:(0,r.validate)((0,r.assertOneOf)("init","get","set")),static:(0,r.validate)((0,r.assertValueType)("boolean")),proto:(0,r.validate)((0,r.assertValueType)("boolean")),optional:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance"),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,r.validateType)("FlowType")}}),a("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateType)("FlowType")}}),a("QualifiedTypeIdentifier",{visitor:["id","qualification"],fields:{id:(0,r.validateType)("Identifier"),qualification:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"])}}),a("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("string"))}}),a("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,r.validateType)("FlowType")}}),a("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,r.validate)((0,r.assertValueType)("string")),bound:(0,r.validateOptionalType)("TypeAnnotation"),default:(0,r.validateOptionalType)("FlowType"),variance:(0,r.validateOptionalType)("Variance")}}),a("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("TypeParameter"))}}),a("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("Variance",{builder:["kind"],fields:{kind:(0,r.validate)((0,r.assertOneOf)("minus","plus"))}}),a("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,r.validateType)("Identifier"),body:(0,r.validateType)(["EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody"])}}),a("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)(["EnumStringMember","EnumDefaultedMember"]),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumBooleanMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("BooleanLiteral")}}),a("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("NumericLiteral")}}),a("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("StringLiteral")}}),a("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),a("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType")}}),a("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean"))}})},46507:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ALIAS_KEYS",{enumerable:!0,get:function(){return a.ALIAS_KEYS}}),Object.defineProperty(t,"BUILDER_KEYS",{enumerable:!0,get:function(){return a.BUILDER_KEYS}}),Object.defineProperty(t,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return a.DEPRECATED_KEYS}}),Object.defineProperty(t,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return a.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(t,"NODE_FIELDS",{enumerable:!0,get:function(){return a.NODE_FIELDS}}),Object.defineProperty(t,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return a.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(t,"PLACEHOLDERS",{enumerable:!0,get:function(){return i.PLACEHOLDERS}}),Object.defineProperty(t,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_ALIAS}}),Object.defineProperty(t,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_FLIPPED_ALIAS}}),t.TYPES=void 0,Object.defineProperty(t,"VISITOR_KEYS",{enumerable:!0,get:function(){return a.VISITOR_KEYS}});var r=n(53164);n(34457),n(85391),n(38565),n(55030),n(71456),n(20045);var a=n(54913),i=n(29488);r(a.VISITOR_KEYS),r(a.ALIAS_KEYS),r(a.FLIPPED_ALIAS_KEYS),r(a.NODE_FIELDS),r(a.BUILDER_KEYS),r(a.DEPRECATED_KEYS),r(i.PLACEHOLDERS_ALIAS),r(i.PLACEHOLDERS_FLIPPED_ALIAS);const s=[].concat(Object.keys(a.VISITOR_KEYS),Object.keys(a.FLIPPED_ALIAS_KEYS),Object.keys(a.DEPRECATED_KEYS));t.TYPES=s},38565:(e,t,n)=>{"use strict";var r=n(54913);const a=(0,r.defineAliasedType)("JSX");a("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,r.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),a("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),a("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,r.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,r.assertNodeType)("JSXClosingElement")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}},{selfClosing:{validate:(0,r.assertValueType)("boolean"),optional:!0}})}),a("JSXEmptyExpression",{}),a("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression","JSXEmptyExpression")}}}),a("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}}),a("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,r.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,r.assertNodeType)("JSXIdentifier")},name:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","attributes"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXAttribute","JSXSpreadAttribute")))},typeParameters:{validate:(0,r.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),a("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}}}),a("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,r.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,r.assertNodeType)("JSXClosingFragment")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}}}),a("JSXOpeningFragment",{aliases:["Immutable"]}),a("JSXClosingFragment",{aliases:["Immutable"]})},55030:(e,t,n)=>{"use strict";var r=n(54913),a=n(29488);const i=(0,r.defineAliasedType)("Miscellaneous");i("Noop",{visitor:[]}),i("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:{name:{validate:(0,r.assertNodeType)("Identifier")},expectedNode:{validate:(0,r.assertOneOf)(...a.PLACEHOLDERS)}}}),i("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}})},29488:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PLACEHOLDERS_FLIPPED_ALIAS=t.PLACEHOLDERS_ALIAS=t.PLACEHOLDERS=void 0;var r=n(54913);const a=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"];t.PLACEHOLDERS=a;const i={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};t.PLACEHOLDERS_ALIAS=i;for(const e of a){const t=r.ALIAS_KEYS[e];null!=t&&t.length&&(i[e]=t)}const s={};t.PLACEHOLDERS_FLIPPED_ALIAS=s,Object.keys(i).forEach((e=>{i[e].forEach((t=>{Object.hasOwnProperty.call(s,t)||(s[t]=[]),s[t].push(e)}))}))},20045:(e,t,n)=>{"use strict";var r=n(54913),a=n(34457),i=n(67275);const s=(0,r.defineAliasedType)("TypeScript"),o=(0,r.assertValueType)("boolean"),l={returnType:{validate:(0,r.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,r.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}};s("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,r.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,r.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,r.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,r.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Decorator"))),optional:!0}}}),s("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},a.functionDeclarationCommon,l)}),s("TSDeclareMethod",{visitor:["decorators","key","typeParameters","params","returnType"],fields:Object.assign({},a.classMethodOrDeclareMethodCommon,l)}),s("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,r.validateType)("TSEntityName"),right:(0,r.validateType)("Identifier")}});const p={typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,r.validateArrayOfType)(["Identifier","RestElement"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")},c={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:p};s("TSCallSignatureDeclaration",c),s("TSConstructSignatureDeclaration",c);const u={key:(0,r.validateType)("Expression"),computed:(0,r.validate)(o),optional:(0,r.validateOptional)(o)};s("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation","initializer"],fields:Object.assign({},u,{readonly:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),initializer:(0,r.validateOptionalType)("Expression"),kind:{validate:(0,r.assertOneOf)("get","set")}})}),s("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},p,u,{kind:{validate:(0,r.assertOneOf)("method","get","set")}})}),s("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,r.validateOptional)(o),static:(0,r.validateOptional)(o),parameters:(0,r.validateArrayOfType)("Identifier"),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}});const d=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const e of d)s(e,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});s("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const f={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};s("TSFunctionType",Object.assign({},f,{fields:p})),s("TSConstructorType",Object.assign({},f,{fields:Object.assign({},p,{abstract:(0,r.validateOptional)(o)})})),s("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,r.validateType)(["Identifier","TSThisType"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),asserts:(0,r.validateOptional)(o)}}),s("TSTypeQuery",{aliases:["TSType"],visitor:["exprName"],fields:{exprName:(0,r.validateType)(["TSEntityName","TSImportType"])}}),s("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,r.validateType)("TSType")}}),s("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,r.validateArrayOfType)(["TSType","TSNamedTupleMember"])}}),s("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,r.validateType)("Identifier"),optional:{validate:o,default:!1},elementType:(0,r.validateType)("TSType")}});const y={aliases:["TSType"],visitor:["types"],fields:{types:(0,r.validateArrayOfType)("TSType")}};s("TSUnionType",y),s("TSIntersectionType",y),s("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,r.validateType)("TSType"),extendsType:(0,r.validateType)("TSType"),trueType:(0,r.validateType)("TSType"),falseType:(0,r.validateType)("TSType")}}),s("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,r.validateType)("TSTypeParameter")}}),s("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{operator:(0,r.validate)((0,r.assertValueType)("string")),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,r.validateType)("TSType"),indexType:(0,r.validateType)("TSType")}}),s("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","typeAnnotation","nameType"],fields:{readonly:(0,r.validateOptional)(o),typeParameter:(0,r.validateType)("TSTypeParameter"),optional:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSType"),nameType:(0,r.validateOptionalType)("TSType")}}),s("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const e=(0,r.assertNodeType)("NumericLiteral","BigIntLiteral"),t=(0,r.assertOneOf)("-"),n=(0,r.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral");function a(r,a,s){(0,i.default)("UnaryExpression",s)?(t(s,"operator",s.operator),e(s,"argument",s.argument)):n(r,a,s)}return a.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","UnaryExpression"],a}()}}}),s("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,r.validateType)("TSInterfaceBody")}}),s("TSInterfaceBody",{visitor:["body"],fields:{body:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSAsExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,r.validateType)("TSType"),expression:(0,r.validateType)("Expression")}}),s("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,r.validateOptional)(o),const:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),members:(0,r.validateArrayOfType)("TSEnumMember"),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{declare:(0,r.validateOptional)(o),global:(0,r.validateOptional)(o),id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)(["TSModuleBlock","TSModuleDeclaration"])}}),s("TSModuleBlock",{aliases:["Scopable","Block","BlockParent"],visitor:["body"],fields:{body:(0,r.validateArrayOfType)("Statement")}}),s("TSImportType",{aliases:["TSType"],visitor:["argument","qualifier","typeParameters"],fields:{argument:(0,r.validateType)("StringLiteral"),qualifier:(0,r.validateOptionalType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSImportEqualsDeclaration",{aliases:["Statement"],visitor:["id","moduleReference"],fields:{isExport:(0,r.validate)(o),id:(0,r.validateType)("Identifier"),moduleReference:(0,r.validateType)(["TSEntityName","TSExternalModuleReference"]),importKind:{validate:(0,r.assertOneOf)("type","value"),optional:!0}}}),s("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,r.validateType)("StringLiteral")}}),s("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),s("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,r.assertNodeType)("TSType")}}}),s("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSType")))}}}),s("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSTypeParameter")))}}}),s("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,r.assertValueType)("string")},constraint:{validate:(0,r.assertNodeType)("TSType"),optional:!0},default:{validate:(0,r.assertNodeType)("TSType"),optional:!0}}})},54913:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VISITOR_KEYS=t.NODE_PARENT_VALIDATIONS=t.NODE_FIELDS=t.FLIPPED_ALIAS_KEYS=t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.ALIAS_KEYS=void 0,t.arrayOf=m,t.arrayOfType=h,t.assertEach=T,t.assertNodeOrValueType=function(...e){function t(t,n,i){for(const s of e)if(d(i)===s||(0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeOrValueTypes=e,t},t.assertNodeType=S,t.assertOneOf=function(...e){function t(t,n,r){if(e.indexOf(r)<0)throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t},t.assertOptionalChainStart=function(){return function(e){var t;let n=e;for(;e;){const{type:e}=n;if("OptionalCallExpression"!==e){if("OptionalMemberExpression"!==e)break;if(n.optional)return;n=n.object}else{if(n.optional)return;n=n.callee}}throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null==(t=n)?void 0:t.type}`)}},t.assertShape=function(e){function t(t,n,r){const i=[];for(const n of Object.keys(e))try{(0,a.validateField)(t,n,r[n],e[n])}catch(e){if(e instanceof TypeError){i.push(e.message);continue}throw e}if(i.length)throw new TypeError(`Property ${n} of ${t.type} expected to have the following:\n${i.join("\n")}`)}return t.shapeOf=e,t},t.assertValueType=b,t.chain=E,t.default=g,t.defineAliasedType=function(...e){return(t,n={})=>{let r=n.aliases;var a;r||(n.inherits&&(r=null==(a=A[n.inherits].aliases)?void 0:a.slice()),null!=r||(r=[]),n.aliases=r);const i=e.filter((e=>!r.includes(e)));return r.unshift(...i),g(t,n)}},t.typeIs=y,t.validate=f,t.validateArrayOfType=function(e){return f(h(e))},t.validateOptional=function(e){return{validate:e,optional:!0}},t.validateOptionalType=function(e){return{validate:y(e),optional:!0}},t.validateType=function(e){return f(y(e))};var r=n(67275),a=n(43804);const i={};t.VISITOR_KEYS=i;const s={};t.ALIAS_KEYS=s;const o={};t.FLIPPED_ALIAS_KEYS=o;const l={};t.NODE_FIELDS=l;const p={};t.BUILDER_KEYS=p;const c={};t.DEPRECATED_KEYS=c;const u={};function d(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function f(e){return{validate:e}}function y(e){return"string"==typeof e?S(e):S(...e)}function m(e){return E(b("array"),T(e))}function h(e){return m(y(e))}function T(e){function t(t,n,r){if(Array.isArray(r))for(let i=0;i<r.length;i++){const s=`${n}[${i}]`,o=r[i];e(t,s,o),process.env.BABEL_TYPES_8_BREAKING&&(0,a.validateChild)(t,s,o)}}return t.each=e,t}function S(...e){function t(t,n,i){for(const s of e)if((0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeTypes=e,t}function b(e){function t(t,n,r){if(d(r)!==e)throw new TypeError(`Property ${n} expected type of ${e} but got ${d(r)}`)}return t.type=e,t}function E(...e){function t(...t){for(const n of e)n(...t)}if(t.chainOf=e,e.length>=2&&"type"in e[0]&&"array"===e[0].type&&!("each"in e[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return t}t.NODE_PARENT_VALIDATIONS=u;const P=["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate"],x=["default","optional","validate"];function g(e,t={}){const n=t.inherits&&A[t.inherits]||{};let r=t.fields;if(!r&&(r={},n.fields)){const e=Object.getOwnPropertyNames(n.fields);for(const t of e){const e=n.fields[t],a=e.default;if(Array.isArray(a)?a.length>0:a&&"object"==typeof a)throw new Error("field defaults can only be primitives or empty arrays currently");r[t]={default:Array.isArray(a)?[]:a,optional:e.optional,validate:e.validate}}}const a=t.visitor||n.visitor||[],f=t.aliases||n.aliases||[],y=t.builder||n.builder||t.visitor||[];for(const n of Object.keys(t))if(-1===P.indexOf(n))throw new Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(c[t.deprecatedAlias]=e);for(const e of a.concat(y))r[e]=r[e]||{};for(const t of Object.keys(r)){const n=r[t];void 0!==n.default&&-1===y.indexOf(t)&&(n.optional=!0),void 0===n.default?n.default=null:n.validate||null==n.default||(n.validate=b(d(n.default)));for(const r of Object.keys(n))if(-1===x.indexOf(r))throw new Error(`Unknown field key "${r}" on ${e}.${t}`)}i[e]=t.visitor=a,p[e]=t.builder=y,l[e]=t.fields=r,s[e]=t.aliases=f,f.forEach((t=>{o[t]=o[t]||[],o[t].push(e)})),t.validate&&(u[e]=t.validate),A[e]=t}const A={}},38218:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={react:!0,assertNode:!0,createTypeAnnotationBasedOnTypeof:!0,createUnionTypeAnnotation:!0,createFlowUnionType:!0,createTSUnionType:!0,cloneNode:!0,clone:!0,cloneDeep:!0,cloneDeepWithoutLoc:!0,cloneWithoutLoc:!0,addComment:!0,addComments:!0,inheritInnerComments:!0,inheritLeadingComments:!0,inheritsComments:!0,inheritTrailingComments:!0,removeComments:!0,ensureBlock:!0,toBindingIdentifierName:!0,toBlock:!0,toComputedKey:!0,toExpression:!0,toIdentifier:!0,toKeyAlias:!0,toSequenceExpression:!0,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,traverse:!0,traverseFast:!0,shallowEqual:!0,is:!0,isBinding:!0,isBlockScoped:!0,isImmutable:!0,isLet:!0,isNode:!0,isNodesEquivalent:!0,isPlaceholderType:!0,isReferenced:!0,isScope:!0,isSpecifierDefault:!0,isType:!0,isValidES3Identifier:!0,isValidIdentifier:!0,isVar:!0,matchesPattern:!0,validate:!0,buildMatchMemberExpression:!0};Object.defineProperty(t,"addComment",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"addComments",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"appendToMemberExpression",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"assertNode",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"buildMatchMemberExpression",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"clone",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"cloneDeep",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"cloneNode",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"cloneWithoutLoc",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"createFlowUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"createTSUnionType",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"ensureBlock",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"inheritInnerComments",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"inheritLeadingComments",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"inheritTrailingComments",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"inherits",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"inheritsComments",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"is",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"isPlaceholderType",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"isType",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"isValidES3Identifier",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"matchesPattern",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"prependToMemberExpression",{enumerable:!0,get:function(){return V.default}}),t.react=void 0,Object.defineProperty(t,"removeComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"removeProperties",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"removePropertiesDeep",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"shallowEqual",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"toSequenceExpression",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"traverseFast",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return B.default}});var a=n(86035),i=n(13193),s=n(88478),o=n(60245),l=n(27133);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var p=n(40949),c=n(29983),u=n(4571),d=n(34391);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=n(86104);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}));var y=n(46209),m=n(92363),h=n(96953),T=n(90863),S=n(30748),b=n(99529),E=n(96182),P=n(6455),x=n(91835),g=n(29564),A=n(59653),v=n(91200),O=n(18267);Object.keys(O).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===O[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return O[e]}}))}));var I=n(36325);Object.keys(I).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===I[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return I[e]}}))}));var N=n(44315),D=n(28316),C=n(19276),w=n(59434),L=n(33348),j=n(71309),_=n(510),M=n(41435),k=n(22307),B=n(46794),F=n(46507);Object.keys(F).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===F[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return F[e]}}))}));var R=n(47899),K=n(13633),V=n(73094),Y=n(92714),U=n(94936),X=n(17321),J=n(1477),W=n(92812),q=n(98880);Object.keys(q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return q[e]}}))}));var $=n(92862),G=n(87610),z=n(67275),H=n(86971),Q=n(60443),Z=n(49268),ee=n(77182),te=n(8523),ne=n(4635),re=n(50015),ae=n(24837),ie=n(46400),se=n(52800),oe=n(11452),le=n(38917),pe=n(93045),ce=n(90830),ue=n(92205),de=n(43804),fe=n(88847),ye=n(94746);Object.keys(ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ye[e]}}))}));var me=n(91585);Object.keys(me).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===me[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return me[e]}}))}));const he={isReactComponent:a.default,isCompatTag:i.default,buildChildren:s.default};t.react=he},47899:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n=!1){return e.object=(0,r.memberExpression)(e.object,e.property,e.computed),e.property=t,e.computed=!!n,e};var r=n(34391)},17321:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n={},i={},s=new Set,o=[];for(let l=0;l<t.length;l++){const p=t[l];if(p&&!(o.indexOf(p)>=0)){if((0,r.isAnyTypeAnnotation)(p))return[p];if((0,r.isFlowBaseAnnotation)(p))i[p.type]=p;else if((0,r.isUnionTypeAnnotation)(p))s.has(p.types)||(t=t.concat(p.types),s.add(p.types));else if((0,r.isGenericTypeAnnotation)(p)){const t=a(p.id);if(n[t]){let r=n[t];r.typeParameters?p.typeParameters&&(r.typeParameters.params=e(r.typeParameters.params.concat(p.typeParameters.params))):r=p.typeParameters}else n[t]=p}else o.push(p)}}for(const e of Object.keys(i))o.push(i[e]);for(const e of Object.keys(n))o.push(n[e]);return o};var r=n(94746);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.id.name}.${a(e.qualification)}`}},13633:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!e||!t)return e;for(const n of r.INHERIT_KEYS.optional)null==e[n]&&(e[n]=t[n]);for(const n of Object.keys(t))"_"===n[0]&&"__clone"!==n&&(e[n]=t[n]);for(const n of r.INHERIT_KEYS.force)e[n]=t[n];return(0,a.default)(e,t),e};var r=n(36325),a=n(29564)},73094:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return e.object=(0,r.memberExpression)(t,e.object),e};var r=n(34391)},92714:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t={}){const n=t.preserveComments?a:i;for(const t of n)null!=e[t]&&(e[t]=void 0);for(const t of Object.keys(e))"_"===t[0]&&null!=e[t]&&(e[t]=void 0);const r=Object.getOwnPropertySymbols(e);for(const t of r)e[t]=null};var r=n(36325);const a=["tokens","start","end","loc","raw","rawValue"],i=r.COMMENT_KEYS.concat(["comments"]).concat(a)},94936:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,a.default,t),e};var r=n(92862),a=n(92714)},71954:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t={},n={},a=new Set,i=[];for(let t=0;t<e.length;t++){const s=e[t];if(s&&!(i.indexOf(s)>=0)){if((0,r.isTSAnyKeyword)(s))return[s];(0,r.isTSBaseType)(s)?n[s.type]=s:(0,r.isTSUnionType)(s)?a.has(s.types)||(e.push(...s.types),a.add(s.types)):i.push(s)}}for(const e of Object.keys(n))i.push(n[e]);for(const e of Object.keys(t))i.push(t[e]);return i};var r=n(94746)},1477:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var r=n(94746);function a(e,t,n){let i=[].concat(e);const s=Object.create(null);for(;i.length;){const e=i.shift();if(!e)continue;const o=a.keys[e.type];if((0,r.isIdentifier)(e))t?(s[e.name]=s[e.name]||[]).push(e):s[e.name]=e;else if(!(0,r.isExportDeclaration)(e)||(0,r.isExportAllDeclaration)(e)){if(n){if((0,r.isFunctionDeclaration)(e)){i.push(e.id);continue}if((0,r.isFunctionExpression)(e))continue}if(o)for(let t=0;t<o.length;t++){const n=o[t];e[n]&&(i=i.concat(e[n]))}}else(0,r.isDeclaration)(e.declaration)&&i.push(e.declaration)}return s}a.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]}},92812:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(1477);t.default=function(e,t){return(0,r.default)(e,t,!0)}},98880:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){"function"==typeof t&&(t={enter:t});const{enter:r,exit:i}=t;a(e,r,i,n,[])};var r=n(46507);function a(e,t,n,i,s){const o=r.VISITOR_KEYS[e.type];if(o){t&&t(e,s,i);for(const r of o){const o=e[r];if(Array.isArray(o))for(let l=0;l<o.length;l++){const p=o[l];p&&(s.push({node:e,key:r,index:l}),a(p,t,n,i,s),s.pop())}else o&&(s.push({node:e,key:r}),a(o,t,n,i,s),s.pop())}n&&n(e,s,i)}}},92862:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,a){if(!t)return;const i=r.VISITOR_KEYS[t.type];if(i){n(t,a=a||{});for(const r of i){const i=t[r];if(Array.isArray(i))for(const t of i)e(t,n,a);else e(i,n,a)}}};var r=n(46507)},8834:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))}},15835:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.value.split(/\r\n|\n|\r/);let a=0;for(let e=0;e<n.length;e++)n[e].match(/[^ \t]/)&&(a=e);let i="";for(let e=0;e<n.length;e++){const t=n[e],r=0===e,s=e===n.length-1,o=e===a;let l=t.replace(/\t/g," ");r||(l=l.replace(/^[ ]+/,"")),s||(l=l.replace(/[ ]+$/,"")),l&&(o||(l+=" "),i+=l)}i&&t.push((0,r.stringLiteral)(i))};var r=n(34391)},87610:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=Object.keys(t);for(const r of n)if(e[r]!==t[r])return!1;return!0}},88847:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.split(".");return e=>(0,r.default)(e,n,t)};var r=n(92205)},94746:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAccessor=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isAnyTypeAnnotation=function(e,t){return!!e&&("AnyTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArgumentPlaceholder=function(e,t){return!!e&&("ArgumentPlaceholder"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArrayExpression=function(e,t){return!!e&&("ArrayExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArrayPattern=function(e,t){return!!e&&("ArrayPattern"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArrayTypeAnnotation=function(e,t){return!!e&&("ArrayTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isArrowFunctionExpression=function(e,t){return!!e&&("ArrowFunctionExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isAssignmentExpression=function(e,t){return!!e&&("AssignmentExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isAssignmentPattern=function(e,t){return!!e&&("AssignmentPattern"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isAwaitExpression=function(e,t){return!!e&&("AwaitExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBigIntLiteral=function(e,t){return!!e&&("BigIntLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBinary=function(e,t){if(!e)return!1;const n=e.type;return("BinaryExpression"===n||"LogicalExpression"===n)&&(void 0===t||(0,r.default)(e,t))},t.isBinaryExpression=function(e,t){return!!e&&("BinaryExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBindExpression=function(e,t){return!!e&&("BindExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBlock=function(e,t){if(!e)return!1;const n=e.type;return("BlockStatement"===n||"Program"===n||"TSModuleBlock"===n||"Placeholder"===n&&"BlockStatement"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isBlockParent=function(e,t){if(!e)return!1;const n=e.type;return("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"===n||"Placeholder"===n&&"BlockStatement"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isBlockStatement=function(e,t){return!!e&&("BlockStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBooleanLiteral=function(e,t){return!!e&&("BooleanLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBooleanLiteralTypeAnnotation=function(e,t){return!!e&&("BooleanLiteralTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBooleanTypeAnnotation=function(e,t){return!!e&&("BooleanTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isBreakStatement=function(e,t){return!!e&&("BreakStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isCallExpression=function(e,t){return!!e&&("CallExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isCatchClause=function(e,t){return!!e&&("CatchClause"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClass=function(e,t){if(!e)return!1;const n=e.type;return("ClassExpression"===n||"ClassDeclaration"===n)&&(void 0===t||(0,r.default)(e,t))},t.isClassAccessorProperty=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassBody=function(e,t){return!!e&&("ClassBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassDeclaration=function(e,t){return!!e&&("ClassDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassExpression=function(e,t){return!!e&&("ClassExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassImplements=function(e,t){return!!e&&("ClassImplements"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassMethod=function(e,t){return!!e&&("ClassMethod"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassPrivateMethod=function(e,t){return!!e&&("ClassPrivateMethod"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassPrivateProperty=function(e,t){return!!e&&("ClassPrivateProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isClassProperty=function(e,t){return!!e&&("ClassProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isCompletionStatement=function(e,t){if(!e)return!1;const n=e.type;return("BreakStatement"===n||"ContinueStatement"===n||"ReturnStatement"===n||"ThrowStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isConditional=function(e,t){if(!e)return!1;const n=e.type;return("ConditionalExpression"===n||"IfStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isConditionalExpression=function(e,t){return!!e&&("ConditionalExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isContinueStatement=function(e,t){return!!e&&("ContinueStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDebuggerStatement=function(e,t){return!!e&&("DebuggerStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDecimalLiteral=function(e,t){return!!e&&("DecimalLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclaration=function(e,t){if(!e)return!1;const n=e.type;return("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||"Placeholder"===n&&"Declaration"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isDeclareClass=function(e,t){return!!e&&("DeclareClass"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareExportAllDeclaration=function(e,t){return!!e&&("DeclareExportAllDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareExportDeclaration=function(e,t){return!!e&&("DeclareExportDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareFunction=function(e,t){return!!e&&("DeclareFunction"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareInterface=function(e,t){return!!e&&("DeclareInterface"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareModule=function(e,t){return!!e&&("DeclareModule"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareModuleExports=function(e,t){return!!e&&("DeclareModuleExports"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareOpaqueType=function(e,t){return!!e&&("DeclareOpaqueType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareTypeAlias=function(e,t){return!!e&&("DeclareTypeAlias"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclareVariable=function(e,t){return!!e&&("DeclareVariable"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDeclaredPredicate=function(e,t){return!!e&&("DeclaredPredicate"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDecorator=function(e,t){return!!e&&("Decorator"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDirective=function(e,t){return!!e&&("Directive"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDirectiveLiteral=function(e,t){return!!e&&("DirectiveLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDoExpression=function(e,t){return!!e&&("DoExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isDoWhileStatement=function(e,t){return!!e&&("DoWhileStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEmptyStatement=function(e,t){return!!e&&("EmptyStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEmptyTypeAnnotation=function(e,t){return!!e&&("EmptyTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumBody=function(e,t){if(!e)return!1;const n=e.type;return("EnumBooleanBody"===n||"EnumNumberBody"===n||"EnumStringBody"===n||"EnumSymbolBody"===n)&&(void 0===t||(0,r.default)(e,t))},t.isEnumBooleanBody=function(e,t){return!!e&&("EnumBooleanBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumBooleanMember=function(e,t){return!!e&&("EnumBooleanMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumDeclaration=function(e,t){return!!e&&("EnumDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumDefaultedMember=function(e,t){return!!e&&("EnumDefaultedMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumMember=function(e,t){if(!e)return!1;const n=e.type;return("EnumBooleanMember"===n||"EnumNumberMember"===n||"EnumStringMember"===n||"EnumDefaultedMember"===n)&&(void 0===t||(0,r.default)(e,t))},t.isEnumNumberBody=function(e,t){return!!e&&("EnumNumberBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumNumberMember=function(e,t){return!!e&&("EnumNumberMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumStringBody=function(e,t){return!!e&&("EnumStringBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumStringMember=function(e,t){return!!e&&("EnumStringMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isEnumSymbolBody=function(e,t){return!!e&&("EnumSymbolBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExistsTypeAnnotation=function(e,t){return!!e&&("ExistsTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportAllDeclaration=function(e,t){return!!e&&("ExportAllDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportDeclaration=function(e,t){if(!e)return!1;const n=e.type;return("ExportAllDeclaration"===n||"ExportDefaultDeclaration"===n||"ExportNamedDeclaration"===n)&&(void 0===t||(0,r.default)(e,t))},t.isExportDefaultDeclaration=function(e,t){return!!e&&("ExportDefaultDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportDefaultSpecifier=function(e,t){return!!e&&("ExportDefaultSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportNamedDeclaration=function(e,t){return!!e&&("ExportNamedDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportNamespaceSpecifier=function(e,t){return!!e&&("ExportNamespaceSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExportSpecifier=function(e,t){return!!e&&("ExportSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExpression=function(e,t){if(!e)return!1;const n=e.type;return("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||"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||"TSAsExpression"===n||"TSTypeAssertion"===n||"TSNonNullExpression"===n||"Placeholder"===n&&("Expression"===e.expectedNode||"Identifier"===e.expectedNode||"StringLiteral"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isExpressionStatement=function(e,t){return!!e&&("ExpressionStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isExpressionWrapper=function(e,t){if(!e)return!1;const n=e.type;return("ExpressionStatement"===n||"ParenthesizedExpression"===n||"TypeCastExpression"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFile=function(e,t){return!!e&&("File"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isFlow=function(e,t){if(!e)return!1;const n=e.type;return("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"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFlowBaseAnnotation=function(e,t){if(!e)return!1;const n=e.type;return("AnyTypeAnnotation"===n||"BooleanTypeAnnotation"===n||"NullLiteralTypeAnnotation"===n||"MixedTypeAnnotation"===n||"EmptyTypeAnnotation"===n||"NumberTypeAnnotation"===n||"StringTypeAnnotation"===n||"SymbolTypeAnnotation"===n||"ThisTypeAnnotation"===n||"VoidTypeAnnotation"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFlowDeclaration=function(e,t){if(!e)return!1;const n=e.type;return("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)&&(void 0===t||(0,r.default)(e,t))},t.isFlowPredicate=function(e,t){if(!e)return!1;const n=e.type;return("DeclaredPredicate"===n||"InferredPredicate"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFlowType=function(e,t){if(!e)return!1;const n=e.type;return("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"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFor=function(e,t){if(!e)return!1;const n=e.type;return("ForInStatement"===n||"ForStatement"===n||"ForOfStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isForInStatement=function(e,t){return!!e&&("ForInStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isForOfStatement=function(e,t){return!!e&&("ForOfStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isForStatement=function(e,t){return!!e&&("ForStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isForXStatement=function(e,t){if(!e)return!1;const n=e.type;return("ForInStatement"===n||"ForOfStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFunction=function(e,t){if(!e)return!1;const n=e.type;return("FunctionDeclaration"===n||"FunctionExpression"===n||"ObjectMethod"===n||"ArrowFunctionExpression"===n||"ClassMethod"===n||"ClassPrivateMethod"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFunctionDeclaration=function(e,t){return!!e&&("FunctionDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isFunctionExpression=function(e,t){return!!e&&("FunctionExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isFunctionParent=function(e,t){if(!e)return!1;const n=e.type;return("FunctionDeclaration"===n||"FunctionExpression"===n||"ObjectMethod"===n||"ArrowFunctionExpression"===n||"ClassMethod"===n||"ClassPrivateMethod"===n||"StaticBlock"===n)&&(void 0===t||(0,r.default)(e,t))},t.isFunctionTypeAnnotation=function(e,t){return!!e&&("FunctionTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isFunctionTypeParam=function(e,t){return!!e&&("FunctionTypeParam"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isGenericTypeAnnotation=function(e,t){return!!e&&("GenericTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isIdentifier=function(e,t){return!!e&&("Identifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isIfStatement=function(e,t){return!!e&&("IfStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImmutable=function(e,t){if(!e)return!1;const n=e.type;return("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"===n||"Placeholder"===n&&"StringLiteral"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isImport=function(e,t){return!!e&&("Import"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportAttribute=function(e,t){return!!e&&("ImportAttribute"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportDeclaration=function(e,t){return!!e&&("ImportDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportDefaultSpecifier=function(e,t){return!!e&&("ImportDefaultSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportNamespaceSpecifier=function(e,t){return!!e&&("ImportNamespaceSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isImportSpecifier=function(e,t){return!!e&&("ImportSpecifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isIndexedAccessType=function(e,t){return!!e&&("IndexedAccessType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInferredPredicate=function(e,t){return!!e&&("InferredPredicate"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInterfaceDeclaration=function(e,t){return!!e&&("InterfaceDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInterfaceExtends=function(e,t){return!!e&&("InterfaceExtends"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInterfaceTypeAnnotation=function(e,t){return!!e&&("InterfaceTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isInterpreterDirective=function(e,t){return!!e&&("InterpreterDirective"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isIntersectionTypeAnnotation=function(e,t){return!!e&&("IntersectionTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSX=function(e,t){if(!e)return!1;const n=e.type;return("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"===n)&&(void 0===t||(0,r.default)(e,t))},t.isJSXAttribute=function(e,t){return!!e&&("JSXAttribute"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXClosingElement=function(e,t){return!!e&&("JSXClosingElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXClosingFragment=function(e,t){return!!e&&("JSXClosingFragment"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXElement=function(e,t){return!!e&&("JSXElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXEmptyExpression=function(e,t){return!!e&&("JSXEmptyExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXExpressionContainer=function(e,t){return!!e&&("JSXExpressionContainer"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXFragment=function(e,t){return!!e&&("JSXFragment"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXIdentifier=function(e,t){return!!e&&("JSXIdentifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXMemberExpression=function(e,t){return!!e&&("JSXMemberExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXNamespacedName=function(e,t){return!!e&&("JSXNamespacedName"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXOpeningElement=function(e,t){return!!e&&("JSXOpeningElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXOpeningFragment=function(e,t){return!!e&&("JSXOpeningFragment"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXSpreadAttribute=function(e,t){return!!e&&("JSXSpreadAttribute"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXSpreadChild=function(e,t){return!!e&&("JSXSpreadChild"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isJSXText=function(e,t){return!!e&&("JSXText"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isLVal=function(e,t){if(!e)return!1;const n=e.type;return("Identifier"===n||"MemberExpression"===n||"RestElement"===n||"AssignmentPattern"===n||"ArrayPattern"===n||"ObjectPattern"===n||"TSParameterProperty"===n||"TSAsExpression"===n||"TSTypeAssertion"===n||"TSNonNullExpression"===n||"Placeholder"===n&&("Pattern"===e.expectedNode||"Identifier"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isLabeledStatement=function(e,t){return!!e&&("LabeledStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isLiteral=function(e,t){if(!e)return!1;const n=e.type;return("StringLiteral"===n||"NumericLiteral"===n||"NullLiteral"===n||"BooleanLiteral"===n||"RegExpLiteral"===n||"TemplateLiteral"===n||"BigIntLiteral"===n||"DecimalLiteral"===n||"Placeholder"===n&&"StringLiteral"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isLogicalExpression=function(e,t){return!!e&&("LogicalExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isLoop=function(e,t){if(!e)return!1;const n=e.type;return("DoWhileStatement"===n||"ForInStatement"===n||"ForStatement"===n||"WhileStatement"===n||"ForOfStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isMemberExpression=function(e,t){return!!e&&("MemberExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isMetaProperty=function(e,t){return!!e&&("MetaProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isMethod=function(e,t){if(!e)return!1;const n=e.type;return("ObjectMethod"===n||"ClassMethod"===n||"ClassPrivateMethod"===n)&&(void 0===t||(0,r.default)(e,t))},t.isMiscellaneous=function(e,t){if(!e)return!1;const n=e.type;return("Noop"===n||"Placeholder"===n||"V8IntrinsicIdentifier"===n)&&(void 0===t||(0,r.default)(e,t))},t.isMixedTypeAnnotation=function(e,t){return!!e&&("MixedTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isModuleDeclaration=function(e,t){if(!e)return!1;const n=e.type;return("ExportAllDeclaration"===n||"ExportDefaultDeclaration"===n||"ExportNamedDeclaration"===n||"ImportDeclaration"===n)&&(void 0===t||(0,r.default)(e,t))},t.isModuleExpression=function(e,t){return!!e&&("ModuleExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isModuleSpecifier=function(e,t){if(!e)return!1;const n=e.type;return("ExportSpecifier"===n||"ImportDefaultSpecifier"===n||"ImportNamespaceSpecifier"===n||"ImportSpecifier"===n||"ExportNamespaceSpecifier"===n||"ExportDefaultSpecifier"===n)&&(void 0===t||(0,r.default)(e,t))},t.isNewExpression=function(e,t){return!!e&&("NewExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNoop=function(e,t){return!!e&&("Noop"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNullLiteral=function(e,t){return!!e&&("NullLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNullLiteralTypeAnnotation=function(e,t){return!!e&&("NullLiteralTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNullableTypeAnnotation=function(e,t){return!!e&&("NullableTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNumberLiteral=function(e,t){return console.trace("The node type NumberLiteral has been renamed to NumericLiteral"),!!e&&("NumberLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNumberLiteralTypeAnnotation=function(e,t){return!!e&&("NumberLiteralTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNumberTypeAnnotation=function(e,t){return!!e&&("NumberTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isNumericLiteral=function(e,t){return!!e&&("NumericLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectExpression=function(e,t){return!!e&&("ObjectExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectMember=function(e,t){if(!e)return!1;const n=e.type;return("ObjectMethod"===n||"ObjectProperty"===n)&&(void 0===t||(0,r.default)(e,t))},t.isObjectMethod=function(e,t){return!!e&&("ObjectMethod"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectPattern=function(e,t){return!!e&&("ObjectPattern"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectProperty=function(e,t){return!!e&&("ObjectProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeAnnotation=function(e,t){return!!e&&("ObjectTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeCallProperty=function(e,t){return!!e&&("ObjectTypeCallProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeIndexer=function(e,t){return!!e&&("ObjectTypeIndexer"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeInternalSlot=function(e,t){return!!e&&("ObjectTypeInternalSlot"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeProperty=function(e,t){return!!e&&("ObjectTypeProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isObjectTypeSpreadProperty=function(e,t){return!!e&&("ObjectTypeSpreadProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isOpaqueType=function(e,t){return!!e&&("OpaqueType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isOptionalCallExpression=function(e,t){return!!e&&("OptionalCallExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isOptionalIndexedAccessType=function(e,t){return!!e&&("OptionalIndexedAccessType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isOptionalMemberExpression=function(e,t){return!!e&&("OptionalMemberExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isParenthesizedExpression=function(e,t){return!!e&&("ParenthesizedExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPattern=function(e,t){if(!e)return!1;const n=e.type;return("AssignmentPattern"===n||"ArrayPattern"===n||"ObjectPattern"===n||"Placeholder"===n&&"Pattern"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isPatternLike=function(e,t){if(!e)return!1;const n=e.type;return("Identifier"===n||"RestElement"===n||"AssignmentPattern"===n||"ArrayPattern"===n||"ObjectPattern"===n||"TSAsExpression"===n||"TSTypeAssertion"===n||"TSNonNullExpression"===n||"Placeholder"===n&&("Pattern"===e.expectedNode||"Identifier"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isPipelineBareFunction=function(e,t){return!!e&&("PipelineBareFunction"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPipelinePrimaryTopicReference=function(e,t){return!!e&&("PipelinePrimaryTopicReference"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPipelineTopicExpression=function(e,t){return!!e&&("PipelineTopicExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPlaceholder=function(e,t){return!!e&&("Placeholder"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isPrivate=function(e,t){if(!e)return!1;const n=e.type;return("ClassPrivateProperty"===n||"ClassPrivateMethod"===n||"PrivateName"===n)&&(void 0===t||(0,r.default)(e,t))},t.isPrivateName=function(e,t){return!!e&&("PrivateName"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isProgram=function(e,t){return!!e&&("Program"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isProperty=function(e,t){if(!e)return!1;const n=e.type;return("ObjectProperty"===n||"ClassProperty"===n||"ClassAccessorProperty"===n||"ClassPrivateProperty"===n)&&(void 0===t||(0,r.default)(e,t))},t.isPureish=function(e,t){if(!e)return!1;const n=e.type;return("FunctionDeclaration"===n||"FunctionExpression"===n||"StringLiteral"===n||"NumericLiteral"===n||"NullLiteral"===n||"BooleanLiteral"===n||"RegExpLiteral"===n||"ArrowFunctionExpression"===n||"BigIntLiteral"===n||"DecimalLiteral"===n||"Placeholder"===n&&"StringLiteral"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isQualifiedTypeIdentifier=function(e,t){return!!e&&("QualifiedTypeIdentifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRecordExpression=function(e,t){return!!e&&("RecordExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRegExpLiteral=function(e,t){return!!e&&("RegExpLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRegexLiteral=function(e,t){return console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"),!!e&&("RegexLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRestElement=function(e,t){return!!e&&("RestElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isRestProperty=function(e,t){return console.trace("The node type RestProperty has been renamed to RestElement"),!!e&&("RestProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isReturnStatement=function(e,t){return!!e&&("ReturnStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isScopable=function(e,t){if(!e)return!1;const n=e.type;return("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"===n||"Placeholder"===n&&"BlockStatement"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isSequenceExpression=function(e,t){return!!e&&("SequenceExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSpreadElement=function(e,t){return!!e&&("SpreadElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSpreadProperty=function(e,t){return console.trace("The node type SpreadProperty has been renamed to SpreadElement"),!!e&&("SpreadProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isStandardized=function(e,t){if(!e)return!1;const n=e.type;return("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||"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||"Placeholder"===n&&("Identifier"===e.expectedNode||"StringLiteral"===e.expectedNode||"BlockStatement"===e.expectedNode||"ClassBody"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isStatement=function(e,t){if(!e)return!1;const n=e.type;return("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"===n||"Placeholder"===n&&("Statement"===e.expectedNode||"Declaration"===e.expectedNode||"BlockStatement"===e.expectedNode))&&(void 0===t||(0,r.default)(e,t))},t.isStaticBlock=function(e,t){return!!e&&("StaticBlock"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isStringLiteral=function(e,t){return!!e&&("StringLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isStringLiteralTypeAnnotation=function(e,t){return!!e&&("StringLiteralTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isStringTypeAnnotation=function(e,t){return!!e&&("StringTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSuper=function(e,t){return!!e&&("Super"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSwitchCase=function(e,t){return!!e&&("SwitchCase"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSwitchStatement=function(e,t){return!!e&&("SwitchStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isSymbolTypeAnnotation=function(e,t){return!!e&&("SymbolTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSAnyKeyword=function(e,t){return!!e&&("TSAnyKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSArrayType=function(e,t){return!!e&&("TSArrayType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSAsExpression=function(e,t){return!!e&&("TSAsExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSBaseType=function(e,t){if(!e)return!1;const n=e.type;return("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||"TSLiteralType"===n)&&(void 0===t||(0,r.default)(e,t))},t.isTSBigIntKeyword=function(e,t){return!!e&&("TSBigIntKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSBooleanKeyword=function(e,t){return!!e&&("TSBooleanKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSCallSignatureDeclaration=function(e,t){return!!e&&("TSCallSignatureDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSConditionalType=function(e,t){return!!e&&("TSConditionalType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSConstructSignatureDeclaration=function(e,t){return!!e&&("TSConstructSignatureDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSConstructorType=function(e,t){return!!e&&("TSConstructorType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSDeclareFunction=function(e,t){return!!e&&("TSDeclareFunction"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSDeclareMethod=function(e,t){return!!e&&("TSDeclareMethod"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSEntityName=function(e,t){if(!e)return!1;const n=e.type;return("Identifier"===n||"TSQualifiedName"===n||"Placeholder"===n&&"Identifier"===e.expectedNode)&&(void 0===t||(0,r.default)(e,t))},t.isTSEnumDeclaration=function(e,t){return!!e&&("TSEnumDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSEnumMember=function(e,t){return!!e&&("TSEnumMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSExportAssignment=function(e,t){return!!e&&("TSExportAssignment"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSExpressionWithTypeArguments=function(e,t){return!!e&&("TSExpressionWithTypeArguments"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSExternalModuleReference=function(e,t){return!!e&&("TSExternalModuleReference"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSFunctionType=function(e,t){return!!e&&("TSFunctionType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSImportEqualsDeclaration=function(e,t){return!!e&&("TSImportEqualsDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSImportType=function(e,t){return!!e&&("TSImportType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSIndexSignature=function(e,t){return!!e&&("TSIndexSignature"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSIndexedAccessType=function(e,t){return!!e&&("TSIndexedAccessType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSInferType=function(e,t){return!!e&&("TSInferType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSInterfaceBody=function(e,t){return!!e&&("TSInterfaceBody"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSInterfaceDeclaration=function(e,t){return!!e&&("TSInterfaceDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSIntersectionType=function(e,t){return!!e&&("TSIntersectionType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSIntrinsicKeyword=function(e,t){return!!e&&("TSIntrinsicKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSLiteralType=function(e,t){return!!e&&("TSLiteralType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSMappedType=function(e,t){return!!e&&("TSMappedType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSMethodSignature=function(e,t){return!!e&&("TSMethodSignature"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSModuleBlock=function(e,t){return!!e&&("TSModuleBlock"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSModuleDeclaration=function(e,t){return!!e&&("TSModuleDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNamedTupleMember=function(e,t){return!!e&&("TSNamedTupleMember"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNamespaceExportDeclaration=function(e,t){return!!e&&("TSNamespaceExportDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNeverKeyword=function(e,t){return!!e&&("TSNeverKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNonNullExpression=function(e,t){return!!e&&("TSNonNullExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNullKeyword=function(e,t){return!!e&&("TSNullKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSNumberKeyword=function(e,t){return!!e&&("TSNumberKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSObjectKeyword=function(e,t){return!!e&&("TSObjectKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSOptionalType=function(e,t){return!!e&&("TSOptionalType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSParameterProperty=function(e,t){return!!e&&("TSParameterProperty"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSParenthesizedType=function(e,t){return!!e&&("TSParenthesizedType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSPropertySignature=function(e,t){return!!e&&("TSPropertySignature"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSQualifiedName=function(e,t){return!!e&&("TSQualifiedName"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSRestType=function(e,t){return!!e&&("TSRestType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSStringKeyword=function(e,t){return!!e&&("TSStringKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSSymbolKeyword=function(e,t){return!!e&&("TSSymbolKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSThisType=function(e,t){return!!e&&("TSThisType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTupleType=function(e,t){return!!e&&("TSTupleType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSType=function(e,t){if(!e)return!1;const n=e.type;return("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||"TSLiteralType"===n||"TSExpressionWithTypeArguments"===n||"TSImportType"===n)&&(void 0===t||(0,r.default)(e,t))},t.isTSTypeAliasDeclaration=function(e,t){return!!e&&("TSTypeAliasDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeAnnotation=function(e,t){return!!e&&("TSTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeAssertion=function(e,t){return!!e&&("TSTypeAssertion"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeElement=function(e,t){if(!e)return!1;const n=e.type;return("TSCallSignatureDeclaration"===n||"TSConstructSignatureDeclaration"===n||"TSPropertySignature"===n||"TSMethodSignature"===n||"TSIndexSignature"===n)&&(void 0===t||(0,r.default)(e,t))},t.isTSTypeLiteral=function(e,t){return!!e&&("TSTypeLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeOperator=function(e,t){return!!e&&("TSTypeOperator"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeParameter=function(e,t){return!!e&&("TSTypeParameter"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeParameterDeclaration=function(e,t){return!!e&&("TSTypeParameterDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeParameterInstantiation=function(e,t){return!!e&&("TSTypeParameterInstantiation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypePredicate=function(e,t){return!!e&&("TSTypePredicate"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeQuery=function(e,t){return!!e&&("TSTypeQuery"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSTypeReference=function(e,t){return!!e&&("TSTypeReference"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSUndefinedKeyword=function(e,t){return!!e&&("TSUndefinedKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSUnionType=function(e,t){return!!e&&("TSUnionType"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSUnknownKeyword=function(e,t){return!!e&&("TSUnknownKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTSVoidKeyword=function(e,t){return!!e&&("TSVoidKeyword"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTaggedTemplateExpression=function(e,t){return!!e&&("TaggedTemplateExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTemplateElement=function(e,t){return!!e&&("TemplateElement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTemplateLiteral=function(e,t){return!!e&&("TemplateLiteral"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTerminatorless=function(e,t){if(!e)return!1;const n=e.type;return("BreakStatement"===n||"ContinueStatement"===n||"ReturnStatement"===n||"ThrowStatement"===n||"YieldExpression"===n||"AwaitExpression"===n)&&(void 0===t||(0,r.default)(e,t))},t.isThisExpression=function(e,t){return!!e&&("ThisExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isThisTypeAnnotation=function(e,t){return!!e&&("ThisTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isThrowStatement=function(e,t){return!!e&&("ThrowStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTopicReference=function(e,t){return!!e&&("TopicReference"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTryStatement=function(e,t){return!!e&&("TryStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTupleExpression=function(e,t){return!!e&&("TupleExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTupleTypeAnnotation=function(e,t){return!!e&&("TupleTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeAlias=function(e,t){return!!e&&("TypeAlias"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeAnnotation=function(e,t){return!!e&&("TypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeCastExpression=function(e,t){return!!e&&("TypeCastExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeParameter=function(e,t){return!!e&&("TypeParameter"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeParameterDeclaration=function(e,t){return!!e&&("TypeParameterDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeParameterInstantiation=function(e,t){return!!e&&("TypeParameterInstantiation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isTypeScript=function(e,t){if(!e)return!1;const n=e.type;return("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||"TSLiteralType"===n||"TSExpressionWithTypeArguments"===n||"TSInterfaceDeclaration"===n||"TSInterfaceBody"===n||"TSTypeAliasDeclaration"===n||"TSAsExpression"===n||"TSTypeAssertion"===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"===n)&&(void 0===t||(0,r.default)(e,t))},t.isTypeofTypeAnnotation=function(e,t){return!!e&&("TypeofTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isUnaryExpression=function(e,t){return!!e&&("UnaryExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isUnaryLike=function(e,t){if(!e)return!1;const n=e.type;return("UnaryExpression"===n||"SpreadElement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isUnionTypeAnnotation=function(e,t){return!!e&&("UnionTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isUpdateExpression=function(e,t){return!!e&&("UpdateExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isUserWhitespacable=function(e,t){if(!e)return!1;const n=e.type;return("ObjectMethod"===n||"ObjectProperty"===n||"ObjectTypeInternalSlot"===n||"ObjectTypeCallProperty"===n||"ObjectTypeIndexer"===n||"ObjectTypeProperty"===n||"ObjectTypeSpreadProperty"===n)&&(void 0===t||(0,r.default)(e,t))},t.isV8IntrinsicIdentifier=function(e,t){return!!e&&("V8IntrinsicIdentifier"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isVariableDeclaration=function(e,t){return!!e&&("VariableDeclaration"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isVariableDeclarator=function(e,t){return!!e&&("VariableDeclarator"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isVariance=function(e,t){return!!e&&("Variance"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isVoidTypeAnnotation=function(e,t){return!!e&&("VoidTypeAnnotation"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isWhile=function(e,t){if(!e)return!1;const n=e.type;return("DoWhileStatement"===n||"WhileStatement"===n)&&(void 0===t||(0,r.default)(e,t))},t.isWhileStatement=function(e,t){return!!e&&("WhileStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isWithStatement=function(e,t){return!!e&&("WithStatement"===e.type&&(void 0===t||(0,r.default)(e,t)))},t.isYieldExpression=function(e,t){return!!e&&("YieldExpression"===e.type&&(void 0===t||(0,r.default)(e,t)))};var r=n(87610)},67275:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){return!!t&&((0,a.default)(t.type,e)?void 0===n||(0,r.default)(t,n):!n&&"Placeholder"===t.type&&e in s.FLIPPED_ALIAS_KEYS&&(0,i.default)(t.expectedNode,e))};var r=n(87610),a=n(11452),i=n(50015),s=n(46507)},86971:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(n&&"Identifier"===e.type&&"ObjectProperty"===t.type&&"ObjectExpression"===n.type)return!1;const a=r.default.keys[t.type];if(a)for(let n=0;n<a.length;n++){const r=t[a[n]];if(Array.isArray(r)){if(r.indexOf(e)>=0)return!0}else if(r===e)return!0}return!1};var r=n(1477)},60443:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isFunctionDeclaration)(e)||(0,r.isClassDeclaration)(e)||(0,a.default)(e)};var r=n(94746),a=n(77182)},49268:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!(0,r.default)(e.type,"Immutable")||!!(0,a.isIdentifier)(e)&&"undefined"===e.name};var r=n(11452),a=n(94746)},77182:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e)&&("var"!==e.kind||e[a.BLOCK_SCOPED_SYMBOL])};var r=n(94746),a=n(36325)},8523:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||!r.VISITOR_KEYS[e.type])};var r=n(46507)},4635:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){if("object"!=typeof t||"object"!=typeof n||null==t||null==n)return t===n;if(t.type!==n.type)return!1;const a=Object.keys(r.NODE_FIELDS[t.type]||t.type),i=r.VISITOR_KEYS[t.type];for(const r of a){if(typeof t[r]!=typeof n[r])return!1;if(null!=t[r]||null!=n[r]){if(null==t[r]||null==n[r])return!1;if(Array.isArray(t[r])){if(!Array.isArray(n[r]))return!1;if(t[r].length!==n[r].length)return!1;for(let a=0;a<t[r].length;a++)if(!e(t[r][a],n[r][a]))return!1}else if("object"!=typeof t[r]||null!=i&&i.includes(r)){if(!e(t[r],n[r]))return!1}else for(const e of Object.keys(t[r]))if(t[r][e]!==n[r][e])return!1}}return!0};var r=n(46507)},50015:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;const n=r.PLACEHOLDERS_ALIAS[e];if(n)for(const e of n)if(t===e)return!0;return!1};var r=n(46507)},24837:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:!n||"ObjectPattern"!==n.type;case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==n||!n.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}},46400:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(!(0,r.isBlockStatement)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))&&(!(!(0,r.isPattern)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))||(0,r.isScopable)(e))};var r=n(94746)},52800:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isImportDefaultSpecifier)(e)||(0,r.isIdentifier)(e.imported||e.exported,{name:"default"})};var r=n(94746)},11452:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;if(r.ALIAS_KEYS[t])return!1;const n=r.FLIPPED_ALIAS_KEYS[t];if(n){if(n[0]===e)return!0;for(const t of n)if(e===t)return!0}return!1};var r=n(46507)},38917:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)&&!a.has(e)};var r=n(93045);const a=new Set(["abstract","boolean","byte","char","double","enum","final","float","goto","implements","int","interface","long","native","package","private","protected","public","short","static","synchronized","throws","transient","volatile"])},93045:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0){return"string"==typeof e&&((!t||!(0,r.isKeyword)(e)&&!(0,r.isStrictReservedWord)(e,!0))&&(0,r.isIdentifierName)(e))};var r=n(29649)},90830:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e,{kind:"var"})&&!e[a.BLOCK_SCOPED_SYMBOL]};var r=n(94746),a=n(36325)},92205:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!(0,r.isMemberExpression)(e))return!1;const a=Array.isArray(t)?t:t.split("."),i=[];let s;for(s=e;(0,r.isMemberExpression)(s);s=s.object)i.push(s.property);if(i.push(s),i.length<a.length)return!1;if(!n&&i.length>a.length)return!1;for(let e=0,t=i.length-1;e<a.length;e++,t--){const n=i[t];let s;if((0,r.isIdentifier)(n))s=n.name;else if((0,r.isStringLiteral)(n))s=n.value;else{if(!(0,r.isThisExpression)(n))return!1;s="this"}if(a[e]!==s)return!1}return!0};var r=n(94746)},13193:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!e&&/^[a-z]/.test(e)}},86035:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=(0,n(88847).default)("React.Component");t.default=r},43804:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!e)return;const s=r.NODE_FIELDS[e.type];if(!s)return;a(e,t,n,s[t]),i(e,t,n)},t.validateChild=i,t.validateField=a;var r=n(46507);function a(e,t,n,r){null!=r&&r.validate&&(r.optional&&null==n||r.validate(e,t,n))}function i(e,t,n){if(null==n)return;const a=r.NODE_PARENT_VALIDATIONS[n.type];a&&a(e,t,n)}},92509:function(e,t,n){!function(e,t,n,r){"use strict";let a;e.addSegment=void 0,e.addMapping=void 0,e.maybeAddSegment=void 0,e.maybeAddMapping=void 0,e.setSourceContent=void 0,e.toDecodedMap=void 0,e.toEncodedMap=void 0,e.fromMap=void 0,e.allMappings=void 0;class i{constructor({file:e,sourceRoot:n}={}){this._names=new t.SetArray,this._sources=new t.SetArray,this._sourcesContent=[],this._mappings=[],this.file=e,this.sourceRoot=n}}function s(e,t,n){for(let n=e.length;n>t;n--)e[n]=e[n-1];e[t]=n}function o(e,n){for(let r=0;r<n.length;r++)t.put(e,n[r])}function l(e,t,n){const{generated:r,source:i,original:s,name:o,content:l}=n;if(!i)return a(e,t,r.line-1,r.column,null,null,null,null,null);const p=i;return a(e,t,r.line-1,r.column,p,s.line-1,s.column,o,l)}e.addSegment=(e,t,n,r,i,s,o,l)=>a(!1,e,t,n,r,i,s,o,l),e.maybeAddSegment=(e,t,n,r,i,s,o,l)=>a(!0,e,t,n,r,i,s,o,l),e.addMapping=(e,t)=>l(!1,e,t),e.maybeAddMapping=(e,t)=>l(!0,e,t),e.setSourceContent=(e,n,r)=>{const{_sources:a,_sourcesContent:i}=e;i[t.put(a,n)]=r},e.toDecodedMap=e=>{const{file:t,sourceRoot:n,_mappings:r,_sources:a,_sourcesContent:i,_names:s}=e;return function(e){const{length:t}=e;let n=t;for(let t=n-1;t>=0&&!(e[t].length>0);n=t,t--);n<t&&(e.length=n)}(r),{version:3,file:t||void 0,names:s.array,sourceRoot:n||void 0,sources:a.array,sourcesContent:i,mappings:r}},e.toEncodedMap=t=>{const r=e.toDecodedMap(t);return Object.assign(Object.assign({},r),{mappings:n.encode(r.mappings)})},e.allMappings=e=>{const t=[],{_mappings:n,_sources:r,_names:a}=e;for(let e=0;e<n.length;e++){const i=n[e];for(let n=0;n<i.length;n++){const s=i[n],o={line:e+1,column:s[0]};let l,p,c;1!==s.length&&(l=r.array[s[1]],p={line:s[2]+1,column:s[3]},5===s.length&&(c=a.array[s[4]])),t.push({generated:o,source:l,original:p,name:c})}}return t},e.fromMap=e=>{const t=new r.TraceMap(e),n=new i({file:t.file,sourceRoot:t.sourceRoot});return o(n._names,t.names),o(n._sources,t.sources),n._sourcesContent=t.sourcesContent||t.sources.map((()=>null)),n._mappings=r.decodedMappings(t),n},a=(e,n,r,a,i,o,l,p,c)=>{const{_mappings:u,_sources:d,_sourcesContent:f,_names:y}=n,m=function(e,t){for(let n=e.length;n<=t;n++)e[n]=[];return e[t]}(u,r),h=function(e,t){let n=e.length;for(let r=n-1;r>=0&&!(t>=e[r][0]);n=r--);return n}(m,a);if(!i){if(e&&function(e,t){return 0===t||1===e[t-1].length}(m,h))return;return s(m,h,[a])}const T=t.put(d,i),S=p?t.put(y,p):-1;if(T===f.length&&(f[T]=null!=c?c:null),!e||!function(e,t,n,r,a,i){if(0===t)return!1;const s=e[t-1];return 1!==s.length&&n===s[1]&&r===s[2]&&a===s[3]&&i===(5===s.length?s[4]:-1)}(m,h,T,o,l,S))return s(m,h,p?[a,T,o,l,S]:[a,T,o,l])},e.GenMapping=i,Object.defineProperty(e,"__esModule",{value:!0})}(t,n(22208),n(92297),n(83446))},48435:function(e){e.exports=function(){"use strict";const e=/^[\w+.-]+:\/\//,t=/^([\w+.-]+:)\/\/([^@/#?]*@)?([^:/#?]*)(:\d+)?(\/[^#?]*)?(\?[^#]*)?(#.*)?/,n=/^file:(?:\/\/((?![a-z]:)[^/#?]*)?)?(\/?[^#?]*)(\?[^#]*)?(#.*)?/i;var r;function a(e){return e.startsWith("/")}function i(e){return/^[.?#]/.test(e)}function s(e){const n=t.exec(e);return o(n[1],n[2]||"",n[3],n[4]||"",n[5]||"/",n[6]||"",n[7]||"")}function o(e,t,n,a,i,s,o){return{scheme:e,user:t,host:n,port:a,path:i,query:s,hash:o,type:r.Absolute}}function l(t){if(function(e){return e.startsWith("//")}(t)){const e=s("http:"+t);return e.scheme="",e.type=r.SchemeRelative,e}if(a(t)){const e=s("http://foo.com"+t);return e.scheme="",e.host="",e.type=r.AbsolutePath,e}if(function(e){return e.startsWith("file:")}(t))return function(e){const t=n.exec(e),r=t[2];return o("file:","",t[1]||"","",a(r)?r:"/"+r,t[3]||"",t[4]||"")}(t);if(function(t){return e.test(t)}(t))return s(t);const i=s("http://foo.com/"+t);return i.scheme="",i.host="",i.type=t?t.startsWith("?")?r.Query:t.startsWith("#")?r.Hash:r.RelativePath:r.Empty,i}function p(e,t){const n=t<=r.RelativePath,a=e.path.split("/");let i=1,s=0,o=!1;for(let e=1;e<a.length;e++){const t=a[e];t?(o=!1,"."!==t&&(".."!==t?(a[i++]=t,s++):s?(o=!0,s--,i--):n&&(a[i++]=t))):o=!0}let l="";for(let e=1;e<i;e++)l+="/"+a[e];(!l||o&&!l.endsWith("/.."))&&(l+="/"),e.path=l}return function(e){e[e.Empty=1]="Empty",e[e.Hash=2]="Hash",e[e.Query=3]="Query",e[e.RelativePath=4]="RelativePath",e[e.AbsolutePath=5]="AbsolutePath",e[e.SchemeRelative=6]="SchemeRelative",e[e.Absolute=7]="Absolute"}(r||(r={})),function(e,t){if(!e&&!t)return"";const n=l(e);let a=n.type;if(t&&a!==r.Absolute){const e=l(t),i=e.type;switch(a){case r.Empty:n.hash=e.hash;case r.Hash:n.query=e.query;case r.Query:case r.RelativePath:!function(e,t){p(t,t.type),"/"===e.path?e.path=t.path:e.path=function(e){if(e.endsWith("/.."))return e;const t=e.lastIndexOf("/");return e.slice(0,t+1)}(t.path)+e.path}(n,e);case r.AbsolutePath:n.user=e.user,n.host=e.host,n.port=e.port;case r.SchemeRelative:n.scheme=e.scheme}i>a&&(a=i)}p(n,a);const s=n.query+n.hash;switch(a){case r.Hash:case r.Query:return s;case r.RelativePath:{const r=n.path.slice(1);return r?i(t||e)&&!i(r)?"./"+r+s:r+s:s||"."}case r.AbsolutePath:return n.path+s;default:return n.scheme+"//"+n.user+n.host+n.port+n.path+s}}}()},22208:function(e,t){!function(e){"use strict";e.get=void 0,e.put=void 0,e.pop=void 0;e.get=(e,t)=>e._indexes[t],e.put=(t,n)=>{const r=e.get(t,n);if(void 0!==r)return r;const{array:a,_indexes:i}=t;return i[n]=a.push(n)-1},e.pop=e=>{const{array:t,_indexes:n}=e;0!==t.length&&(n[t.pop()]=void 0)},e.SetArray=class{constructor(){this._indexes={__proto__:null},this.array=[]}},Object.defineProperty(e,"__esModule",{value:!0})}(t)},92297:function(e,t){!function(e){"use strict";const t=",".charCodeAt(0),n=";".charCodeAt(0),r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=new Uint8Array(64),i=new Uint8Array(128);for(let e=0;e<64;e++){const t=r.charCodeAt(e);a[e]=t,i[t]=e}const s="undefined"!=typeof TextDecoder?new TextDecoder:"undefined"!=typeof Buffer?{decode:e=>Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString()}:{decode(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t}};function o(e,t){const n=e.indexOf(";",t);return-1===n?e.length:n}function l(e,t,n,r){let a=0,s=0,o=0;do{const n=e.charCodeAt(t++);o=i[n],a|=(31&o)<<s,s+=5}while(32&o);const l=1&a;return a>>>=1,l&&(a=-2147483648|-a),n[r]+=a,t}function p(e,n,r){return!(n>=r)&&e.charCodeAt(n)!==t}function c(e){e.sort(u)}function u(e,t){return e[0]-t[0]}function d(e,t,n,r,i){const s=r[i];let o=s-n[i];n[i]=s,o=o<0?-o<<1|1:o<<1;do{let n=31&o;o>>>=5,o>0&&(n|=32),e[t++]=a[n]}while(o>0);return t}e.decode=function(e){const t=new Int32Array(5),n=[];let r=0;do{const a=o(e,r),i=[];let s=!0,u=0;t[0]=0;for(let n=r;n<a;n++){let r;n=l(e,n,t,0);const o=t[0];o<u&&(s=!1),u=o,p(e,n,a)?(n=l(e,n,t,1),n=l(e,n,t,2),n=l(e,n,t,3),p(e,n,a)?(n=l(e,n,t,4),r=[o,t[1],t[2],t[3],t[4]]):r=[o,t[1],t[2],t[3]]):r=[o],i.push(r)}s||c(i),n.push(i),r=a+1}while(r<=e.length);return n},e.encode=function(e){const r=new Int32Array(5),a=16384,i=16348,o=new Uint8Array(a),l=o.subarray(0,i);let p=0,c="";for(let u=0;u<e.length;u++){const f=e[u];if(u>0&&(p===a&&(c+=s.decode(o),p=0),o[p++]=n),0!==f.length){r[0]=0;for(let e=0;e<f.length;e++){const n=f[e];p>i&&(c+=s.decode(l),o.copyWithin(0,i,p),p-=i),e>0&&(o[p++]=t),p=d(o,p,r,n,0),1!==n.length&&(p=d(o,p,r,n,1),p=d(o,p,r,n,2),p=d(o,p,r,n,3),4!==n.length&&(p=d(o,p,r,n,4)))}}}return c+s.decode(o.subarray(0,p))},Object.defineProperty(e,"__esModule",{value:!0})}(t)},83446:function(e,t,n){!function(e,t,n){"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=r(n);function i(e,t){return t&&!t.endsWith("/")&&(t+="/"),a.default(e,t)}const s=0,o=1,l=2,p=3,c=4;function u(e,t){for(let n=t;n<e.length;n++)if(!d(e[n]))return n;return e.length}function d(e){for(let t=1;t<e.length;t++)if(e[t][s]<e[t-1][s])return!1;return!0}function f(e,t){return t||(e=e.slice()),e.sort(y)}function y(e,t){return e[s]-t[s]}let m=!1;function h(e,t,n){for(let r=n+1;r<e.length&&e[r][s]===t;n=r++);return n}function T(e,t,n){for(let r=n-1;r>=0&&e[r][s]===t;n=r--);return n}function S(){return{lastKey:-1,lastNeedle:-1,lastIndex:-1}}function b(e,t,n,r){const{lastKey:a,lastNeedle:i,lastIndex:o}=n;let l=0,p=e.length-1;if(r===a){if(t===i)return m=-1!==o&&e[o][s]===t,o;t>=i?l=-1===o?0:o:p=o}return n.lastKey=r,n.lastNeedle=t,n.lastIndex=function(e,t,n,r){for(;n<=r;){const a=n+(r-n>>1),i=e[a][s]-t;if(0===i)return m=!0,a;i<0?n=a+1:r=a-1}return m=!1,n-1}(e,t,l,p)}function E(e,t,n){for(let n=e.length;n>t;n--)e[n]=e[n-1];e[t]=n}function P(){return{__proto__:null}}function x(e,t,n,r,a,i,s,o,l,p){const{sections:c}=e;for(let e=0;e<c.length;e++){const{map:u,offset:d}=c[e];let f=l,y=p;if(e+1<c.length){const t=c[e+1].offset;f=Math.min(l,s+t.line),f===l?y=Math.min(p,o+t.column):f<l&&(y=o+t.column)}g(u,t,n,r,a,i,s+d.line,o+d.column,f,y)}}function g(t,n,r,a,i,u,d,f,y,m){if("sections"in t)return x(...arguments);const h=new D(t,n),T=a.length,S=u.length,b=e.decodedMappings(h),{resolvedSources:E,sourcesContent:P}=h;if(A(a,E),A(u,h.names),P)A(i,P);else for(let e=0;e<E.length;e++)i.push(null);for(let e=0;e<b.length;e++){const t=d+e;if(t>y)return;const n=v(r,t),a=0===e?f:0,i=b[e];for(let e=0;e<i.length;e++){const r=i[e],u=a+r[s];if(t===y&&u>=m)return;if(1===r.length){n.push([u]);continue}const d=T+r[o],f=r[l],h=r[p];n.push(4===r.length?[u,d,f,h]:[u,d,f,h,S+r[c]])}}}function A(e,t){for(let n=0;n<t.length;n++)e.push(t[n])}function v(e,t){for(let n=e.length;n<=t;n++)e[n]=[];return e[t]}const O="`line` must be greater than 0 (lines start at line 1)",I="`column` must be greater than or equal to 0 (columns start at column 0)",N=-1;e.encodedMappings=void 0,e.decodedMappings=void 0,e.traceSegment=void 0,e.originalPositionFor=void 0,e.generatedPositionFor=void 0,e.allGeneratedPositionsFor=void 0,e.eachMapping=void 0,e.sourceContentFor=void 0,e.presortedDecodedMap=void 0,e.decodedMap=void 0,e.encodedMap=void 0;class D{constructor(e,t){const n="string"==typeof e;if(!n&&e._decodedMemo)return e;const r=n?JSON.parse(e):e,{version:a,file:s,names:o,sourceRoot:l,sources:p,sourcesContent:c}=r;this.version=a,this.file=s,this.names=o,this.sourceRoot=l,this.sources=p,this.sourcesContent=c;const d=i(l||"",function(e){if(!e)return"";const t=e.lastIndexOf("/");return e.slice(0,t+1)}(t));this.resolvedSources=p.map((e=>i(e||"",d)));const{mappings:y}=r;"string"==typeof y?(this._encoded=y,this._decoded=void 0):(this._encoded=void 0,this._decoded=function(e,t){const n=u(e,0);if(n===e.length)return e;t||(e=e.slice());for(let r=n;r<e.length;r=u(e,r+1))e[r]=f(e[r],t);return e}(y,n)),this._decodedMemo={lastKey:-1,lastNeedle:-1,lastIndex:-1},this._bySources=void 0,this._bySourceMemos=void 0}}function C(e,t){return{version:e.version,file:e.file,names:e.names,sourceRoot:e.sourceRoot,sources:e.sources,sourcesContent:e.sourcesContent,mappings:t}}function w(e,t,n,r){return{source:e,line:t,column:n,name:r}}function L(e,t){return{line:e,column:t}}function j(e,t,n,r,a){let i=b(e,r,t,n);return m?i=(a===N?h:T)(e,r,i):a===N&&i++,-1===i||i===e.length?-1:i}(()=>{function n(t,n,r,a,i,c){if(--r<0)throw new Error(O);if(a<0)throw new Error(I);const{sources:u,resolvedSources:d}=t;let f=u.indexOf(n);if(-1===f&&(f=d.indexOf(n)),-1===f)return c?[]:L(null,null);const y=(t._bySources||(t._bySources=function(e,t){const n=t.map(P);for(let r=0;r<e.length;r++){const a=e[r];for(let e=0;e<a.length;e++){const i=a[e];if(1===i.length)continue;const c=i[o],u=i[l],d=i[p],f=n[c],y=f[u]||(f[u]=[]),m=t[c],T=h(y,d,b(y,d,m,u));E(y,m.lastIndex=T+1,[d,r,i[s]])}}return n}(e.decodedMappings(t),t._bySourceMemos=u.map(S))))[f][r];if(null==y)return c?[]:L(null,null);const x=t._bySourceMemos[f];if(c)return function(e,t,n,r,a){let i=j(e,t,n,r,1);if(m||a!==N||i++,-1===i||i===e.length)return[];const o=m?r:e[i][s];m||(i=T(e,o,i));const l=h(e,o,i),p=[];for(;i<=l;i++){const t=e[i];p.push(L(t[1]+1,t[2]))}return p}(y,x,r,a,i);const g=j(y,x,r,a,i);if(-1===g)return L(null,null);const A=y[g];return L(A[1]+1,A[2])}e.encodedMappings=e=>{var n;return null!==(n=e._encoded)&&void 0!==n?n:e._encoded=t.encode(e._decoded)},e.decodedMappings=e=>e._decoded||(e._decoded=t.decode(e._encoded)),e.traceSegment=(t,n,r)=>{const a=e.decodedMappings(t);if(n>=a.length)return null;const i=a[n],s=j(i,t._decodedMemo,n,r,1);return-1===s?null:i[s]},e.originalPositionFor=(t,{line:n,column:r,bias:a})=>{if(--n<0)throw new Error(O);if(r<0)throw new Error(I);const i=e.decodedMappings(t);if(n>=i.length)return w(null,null,null,null);const s=i[n],u=j(s,t._decodedMemo,n,r,a||1);if(-1===u)return w(null,null,null,null);const d=s[u];if(1===d.length)return w(null,null,null,null);const{names:f,resolvedSources:y}=t;return w(y[d[o]],d[l]+1,d[p],5===d.length?f[d[c]]:null)},e.allGeneratedPositionsFor=(e,{source:t,line:r,column:a,bias:i})=>n(e,t,r,a,i||N,!0),e.generatedPositionFor=(e,{source:t,line:r,column:a,bias:i})=>n(e,t,r,a,i||1,!1),e.eachMapping=(t,n)=>{const r=e.decodedMappings(t),{names:a,resolvedSources:i}=t;for(let e=0;e<r.length;e++){const t=r[e];for(let r=0;r<t.length;r++){const s=t[r],o=e+1,l=s[0];let p=null,c=null,u=null,d=null;1!==s.length&&(p=i[s[1]],c=s[2]+1,u=s[3]),5===s.length&&(d=a[s[4]]),n({generatedLine:o,generatedColumn:l,source:p,originalLine:c,originalColumn:u,name:d})}}},e.sourceContentFor=(e,t)=>{const{sources:n,resolvedSources:r,sourcesContent:a}=e;if(null==a)return null;let i=n.indexOf(t);return-1===i&&(i=r.indexOf(t)),-1===i?null:a[i]},e.presortedDecodedMap=(e,t)=>{const n=new D(C(e,[]),t);return n._decoded=e.mappings,n},e.decodedMap=t=>C(t,e.decodedMappings(t)),e.encodedMap=t=>C(t,e.encodedMappings(t))})(),e.AnyMap=function(t,n){const r="string"==typeof t?JSON.parse(t):t;if(!("sections"in r))return new D(r,n);const a=[],i=[],s=[],o=[];x(r,n,a,i,s,o,0,0,1/0,1/0);const l={version:3,file:r.file,names:o,sources:i,sourcesContent:s,mappings:a};return e.presortedDecodedMap(l)},e.GREATEST_LOWER_BOUND=1,e.LEAST_UPPER_BOUND=N,e.TraceMap=D,Object.defineProperty(e,"__esModule",{value:!0})}(t,n(92297),n(48435))},26434:(e,t,n)=>{"use strict";e=n.nmd(e);const r=n(12085),a=(e,t)=>function(){return`[${e.apply(r,arguments)+t}m`},i=(e,t)=>function(){const n=e.apply(r,arguments);return`[${38+t};5;${n}m`},s=(e,t)=>function(){const n=e.apply(r,arguments);return`[${38+t};2;${n[0]};${n[1]};${n[2]}m`};Object.defineProperty(e,"exports",{enumerable:!0,get:function(){const e=new Map,t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(const n of Object.keys(t)){const r=t[n];for(const n of Object.keys(r)){const a=r[n];t[n]={open:`[${a[0]}m`,close:`[${a[1]}m`},r[n]=t[n],e.set(a[0],a[1])}Object.defineProperty(t,n,{value:r,enumerable:!1}),Object.defineProperty(t,"codes",{value:e,enumerable:!1})}const n=e=>e,o=(e,t,n)=>[e,t,n];t.color.close="[39m",t.bgColor.close="[49m",t.color.ansi={ansi:a(n,0)},t.color.ansi256={ansi256:i(n,0)},t.color.ansi16m={rgb:s(o,0)},t.bgColor.ansi={ansi:a(n,10)},t.bgColor.ansi256={ansi256:i(n,10)},t.bgColor.ansi16m={rgb:s(o,10)};for(let e of Object.keys(r)){if("object"!=typeof r[e])continue;const n=r[e];"ansi16"===e&&(e="ansi"),"ansi16"in n&&(t.color.ansi[e]=a(n.ansi16,0),t.bgColor.ansi[e]=a(n.ansi16,10)),"ansi256"in n&&(t.color.ansi256[e]=i(n.ansi256,0),t.bgColor.ansi256[e]=i(n.ansi256,10)),"rgb"in n&&(t.color.ansi16m[e]=s(n.rgb,0),t.bgColor.ansi16m[e]=s(n.rgb,10))}return t}})},32589:(e,t,n)=>{"use strict";const r=n(63150),a=n(26434),i=n(92130).stdout,s=n(56864),o="win32"===process.platform&&!(process.env.TERM||"").toLowerCase().startsWith("xterm"),l=["ansi","ansi","ansi256","ansi16m"],p=new Set(["gray"]),c=Object.create(null);function u(e,t){t=t||{};const n=i?i.level:0;e.level=void 0===t.level?n:t.level,e.enabled="enabled"in t?t.enabled:e.level>0}function d(e){if(!this||!(this instanceof d)||this.template){const t={};return u(t,e),t.template=function(){const e=[].slice.call(arguments);return h.apply(null,[t.template].concat(e))},Object.setPrototypeOf(t,d.prototype),Object.setPrototypeOf(t.template,t),t.template.constructor=d,t.template}u(this,e)}o&&(a.blue.open="[94m");for(const e of Object.keys(a))a[e].closeRe=new RegExp(r(a[e].close),"g"),c[e]={get(){const t=a[e];return y.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}};c.visible={get(){return y.call(this,this._styles||[],!0,"visible")}},a.color.closeRe=new RegExp(r(a.color.close),"g");for(const e of Object.keys(a.color.ansi))p.has(e)||(c[e]={get(){const t=this.level;return function(){const n={open:a.color[l[t]][e].apply(null,arguments),close:a.color.close,closeRe:a.color.closeRe};return y.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});a.bgColor.closeRe=new RegExp(r(a.bgColor.close),"g");for(const e of Object.keys(a.bgColor.ansi))p.has(e)||(c["bg"+e[0].toUpperCase()+e.slice(1)]={get(){const t=this.level;return function(){const n={open:a.bgColor[l[t]][e].apply(null,arguments),close:a.bgColor.close,closeRe:a.bgColor.closeRe};return y.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}});const f=Object.defineProperties((()=>{}),c);function y(e,t,n){const r=function(){return m.apply(r,arguments)};r._styles=e,r._empty=t;const a=this;return Object.defineProperty(r,"level",{enumerable:!0,get:()=>a.level,set(e){a.level=e}}),Object.defineProperty(r,"enabled",{enumerable:!0,get:()=>a.enabled,set(e){a.enabled=e}}),r.hasGrey=this.hasGrey||"gray"===n||"grey"===n,r.__proto__=f,r}function m(){const e=arguments,t=e.length;let n=String(arguments[0]);if(0===t)return"";if(t>1)for(let r=1;r<t;r++)n+=" "+e[r];if(!this.enabled||this.level<=0||!n)return this._empty?"":n;const r=a.dim.open;o&&this.hasGrey&&(a.dim.open="");for(const e of this._styles.slice().reverse())n=e.open+n.replace(e.closeRe,e.open)+e.close,n=n.replace(/\r?\n/g,`${e.close}$&${e.open}`);return a.dim.open=r,n}function h(e,t){if(!Array.isArray(t))return[].slice.call(arguments,1).join(" ");const n=[].slice.call(arguments,2),r=[t.raw[0]];for(let e=1;e<t.length;e++)r.push(String(n[e-1]).replace(/[{}\\]/g,"\\$&")),r.push(String(t.raw[e]));return s(e,r.join(""))}Object.defineProperties(d.prototype,c),e.exports=d(),e.exports.supportsColor=i,e.exports.default=e.exports},56864:e=>{"use strict";const t=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,n=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,r=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,a=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi,i=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function s(e){return"u"===e[0]&&5===e.length||"x"===e[0]&&3===e.length?String.fromCharCode(parseInt(e.slice(1),16)):i.get(e)||e}function o(e,t){const n=[],i=t.trim().split(/\s*,\s*/g);let o;for(const t of i)if(isNaN(t)){if(!(o=t.match(r)))throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`);n.push(o[2].replace(a,((e,t,n)=>t?s(t):n)))}else n.push(Number(t));return n}function l(e){n.lastIndex=0;const t=[];let r;for(;null!==(r=n.exec(e));){const e=r[1];if(r[2]){const n=o(e,r[2]);t.push([e].concat(n))}else t.push([e])}return t}function p(e,t){const n={};for(const e of t)for(const t of e.styles)n[t[0]]=e.inverse?null:t.slice(1);let r=e;for(const e of Object.keys(n))if(Array.isArray(n[e])){if(!(e in r))throw new Error(`Unknown Chalk style: ${e}`);r=n[e].length>0?r[e].apply(r,n[e]):r[e]}return r}e.exports=(e,n)=>{const r=[],a=[];let i=[];if(n.replace(t,((t,n,o,c,u,d)=>{if(n)i.push(s(n));else if(c){const t=i.join("");i=[],a.push(0===r.length?t:p(e,r)(t)),r.push({inverse:o,styles:l(c)})}else if(u){if(0===r.length)throw new Error("Found extraneous } in Chalk template literal");a.push(p(e,r)(i.join(""))),i=[],r.pop()}else i.push(d)})),a.push(i.join("")),r.length>0){const e=`Chalk template literal is missing ${r.length} closing bracket${1===r.length?"":"s"} (\`}\`)`;throw new Error(e)}return a.join("")}},48168:(e,t,n)=>{var r=n(8874),a={};for(var i in r)r.hasOwnProperty(i)&&(a[r[i]]=i);var s=e.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var o in s)if(s.hasOwnProperty(o)){if(!("channels"in s[o]))throw new Error("missing channels property: "+o);if(!("labels"in s[o]))throw new Error("missing channel labels property: "+o);if(s[o].labels.length!==s[o].channels)throw new Error("channel and label counts mismatch: "+o);var l=s[o].channels,p=s[o].labels;delete s[o].channels,delete s[o].labels,Object.defineProperty(s[o],"channels",{value:l}),Object.defineProperty(s[o],"labels",{value:p})}s.rgb.hsl=function(e){var t,n,r=e[0]/255,a=e[1]/255,i=e[2]/255,s=Math.min(r,a,i),o=Math.max(r,a,i),l=o-s;return o===s?t=0:r===o?t=(a-i)/l:a===o?t=2+(i-r)/l:i===o&&(t=4+(r-a)/l),(t=Math.min(60*t,360))<0&&(t+=360),n=(s+o)/2,[t,100*(o===s?0:n<=.5?l/(o+s):l/(2-o-s)),100*n]},s.rgb.hsv=function(e){var t,n,r,a,i,s=e[0]/255,o=e[1]/255,l=e[2]/255,p=Math.max(s,o,l),c=p-Math.min(s,o,l),u=function(e){return(p-e)/6/c+.5};return 0===c?a=i=0:(i=c/p,t=u(s),n=u(o),r=u(l),s===p?a=r-n:o===p?a=1/3+t-r:l===p&&(a=2/3+n-t),a<0?a+=1:a>1&&(a-=1)),[360*a,100*i,100*p]},s.rgb.hwb=function(e){var t=e[0],n=e[1],r=e[2];return[s.rgb.hsl(e)[0],1/255*Math.min(t,Math.min(n,r))*100,100*(r=1-1/255*Math.max(t,Math.max(n,r)))]},s.rgb.cmyk=function(e){var t,n=e[0]/255,r=e[1]/255,a=e[2]/255;return[100*((1-n-(t=Math.min(1-n,1-r,1-a)))/(1-t)||0),100*((1-r-t)/(1-t)||0),100*((1-a-t)/(1-t)||0),100*t]},s.rgb.keyword=function(e){var t=a[e];if(t)return t;var n,i,s,o=1/0;for(var l in r)if(r.hasOwnProperty(l)){var p=(i=e,s=r[l],Math.pow(i[0]-s[0],2)+Math.pow(i[1]-s[1],2)+Math.pow(i[2]-s[2],2));p<o&&(o=p,n=l)}return n},s.keyword.rgb=function(e){return r[e]},s.rgb.xyz=function(e){var t=e[0]/255,n=e[1]/255,r=e[2]/255;return[100*(.4124*(t=t>.04045?Math.pow((t+.055)/1.055,2.4):t/12.92)+.3576*(n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92)+.1805*(r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92)),100*(.2126*t+.7152*n+.0722*r),100*(.0193*t+.1192*n+.9505*r)]},s.rgb.lab=function(e){var t=s.rgb.xyz(e),n=t[0],r=t[1],a=t[2];return r/=100,a/=108.883,n=(n/=95.047)>.008856?Math.pow(n,1/3):7.787*n+16/116,[116*(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116)-16,500*(n-r),200*(r-(a=a>.008856?Math.pow(a,1/3):7.787*a+16/116))]},s.hsl.rgb=function(e){var t,n,r,a,i,s=e[0]/360,o=e[1]/100,l=e[2]/100;if(0===o)return[i=255*l,i,i];t=2*l-(n=l<.5?l*(1+o):l+o-l*o),a=[0,0,0];for(var p=0;p<3;p++)(r=s+1/3*-(p-1))<0&&r++,r>1&&r--,i=6*r<1?t+6*(n-t)*r:2*r<1?n:3*r<2?t+(n-t)*(2/3-r)*6:t,a[p]=255*i;return a},s.hsl.hsv=function(e){var t=e[0],n=e[1]/100,r=e[2]/100,a=n,i=Math.max(r,.01);return n*=(r*=2)<=1?r:2-r,a*=i<=1?i:2-i,[t,100*(0===r?2*a/(i+a):2*n/(r+n)),(r+n)/2*100]},s.hsv.rgb=function(e){var t=e[0]/60,n=e[1]/100,r=e[2]/100,a=Math.floor(t)%6,i=t-Math.floor(t),s=255*r*(1-n),o=255*r*(1-n*i),l=255*r*(1-n*(1-i));switch(r*=255,a){case 0:return[r,l,s];case 1:return[o,r,s];case 2:return[s,r,l];case 3:return[s,o,r];case 4:return[l,s,r];case 5:return[r,s,o]}},s.hsv.hsl=function(e){var t,n,r,a=e[0],i=e[1]/100,s=e[2]/100,o=Math.max(s,.01);return r=(2-i)*s,n=i*o,[a,100*(n=(n/=(t=(2-i)*o)<=1?t:2-t)||0),100*(r/=2)]},s.hwb.rgb=function(e){var t,n,r,a,i,s,o,l=e[0]/360,p=e[1]/100,c=e[2]/100,u=p+c;switch(u>1&&(p/=u,c/=u),r=6*l-(t=Math.floor(6*l)),0!=(1&t)&&(r=1-r),a=p+r*((n=1-c)-p),t){default:case 6:case 0:i=n,s=a,o=p;break;case 1:i=a,s=n,o=p;break;case 2:i=p,s=n,o=a;break;case 3:i=p,s=a,o=n;break;case 4:i=a,s=p,o=n;break;case 5:i=n,s=p,o=a}return[255*i,255*s,255*o]},s.cmyk.rgb=function(e){var t=e[0]/100,n=e[1]/100,r=e[2]/100,a=e[3]/100;return[255*(1-Math.min(1,t*(1-a)+a)),255*(1-Math.min(1,n*(1-a)+a)),255*(1-Math.min(1,r*(1-a)+a))]},s.xyz.rgb=function(e){var t,n,r,a=e[0]/100,i=e[1]/100,s=e[2]/100;return n=-.9689*a+1.8758*i+.0415*s,r=.0557*a+-.204*i+1.057*s,t=(t=3.2406*a+-1.5372*i+-.4986*s)>.0031308?1.055*Math.pow(t,1/2.4)-.055:12.92*t,n=n>.0031308?1.055*Math.pow(n,1/2.4)-.055:12.92*n,r=r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r,[255*(t=Math.min(Math.max(0,t),1)),255*(n=Math.min(Math.max(0,n),1)),255*(r=Math.min(Math.max(0,r),1))]},s.xyz.lab=function(e){var t=e[0],n=e[1],r=e[2];return n/=100,r/=108.883,t=(t/=95.047)>.008856?Math.pow(t,1/3):7.787*t+16/116,[116*(n=n>.008856?Math.pow(n,1/3):7.787*n+16/116)-16,500*(t-n),200*(n-(r=r>.008856?Math.pow(r,1/3):7.787*r+16/116))]},s.lab.xyz=function(e){var t,n,r,a=e[0];t=e[1]/500+(n=(a+16)/116),r=n-e[2]/200;var i=Math.pow(n,3),s=Math.pow(t,3),o=Math.pow(r,3);return n=i>.008856?i:(n-16/116)/7.787,t=s>.008856?s:(t-16/116)/7.787,r=o>.008856?o:(r-16/116)/7.787,[t*=95.047,n*=100,r*=108.883]},s.lab.lch=function(e){var t,n=e[0],r=e[1],a=e[2];return(t=360*Math.atan2(a,r)/2/Math.PI)<0&&(t+=360),[n,Math.sqrt(r*r+a*a),t]},s.lch.lab=function(e){var t,n=e[0],r=e[1];return t=e[2]/360*2*Math.PI,[n,r*Math.cos(t),r*Math.sin(t)]},s.rgb.ansi16=function(e){var t=e[0],n=e[1],r=e[2],a=1 in arguments?arguments[1]:s.rgb.hsv(e)[2];if(0===(a=Math.round(a/50)))return 30;var i=30+(Math.round(r/255)<<2|Math.round(n/255)<<1|Math.round(t/255));return 2===a&&(i+=60),i},s.hsv.ansi16=function(e){return s.rgb.ansi16(s.hsv.rgb(e),e[2])},s.rgb.ansi256=function(e){var t=e[0],n=e[1],r=e[2];return t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)},s.ansi16.rgb=function(e){var t=e%10;if(0===t||7===t)return e>50&&(t+=3.5),[t=t/10.5*255,t,t];var n=.5*(1+~~(e>50));return[(1&t)*n*255,(t>>1&1)*n*255,(t>>2&1)*n*255]},s.ansi256.rgb=function(e){if(e>=232){var t=10*(e-232)+8;return[t,t,t]}var n;return e-=16,[Math.floor(e/36)/5*255,Math.floor((n=e%36)/6)/5*255,n%6/5*255]},s.rgb.hex=function(e){var t=(((255&Math.round(e[0]))<<16)+((255&Math.round(e[1]))<<8)+(255&Math.round(e[2]))).toString(16).toUpperCase();return"000000".substring(t.length)+t},s.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];var n=t[0];3===t[0].length&&(n=n.split("").map((function(e){return e+e})).join(""));var r=parseInt(n,16);return[r>>16&255,r>>8&255,255&r]},s.rgb.hcg=function(e){var t,n=e[0]/255,r=e[1]/255,a=e[2]/255,i=Math.max(Math.max(n,r),a),s=Math.min(Math.min(n,r),a),o=i-s;return t=o<=0?0:i===n?(r-a)/o%6:i===r?2+(a-n)/o:4+(n-r)/o+4,t/=6,[360*(t%=1),100*o,100*(o<1?s/(1-o):0)]},s.hsl.hcg=function(e){var t,n=e[1]/100,r=e[2]/100,a=0;return(t=r<.5?2*n*r:2*n*(1-r))<1&&(a=(r-.5*t)/(1-t)),[e[0],100*t,100*a]},s.hsv.hcg=function(e){var t=e[1]/100,n=e[2]/100,r=t*n,a=0;return r<1&&(a=(n-r)/(1-r)),[e[0],100*r,100*a]},s.hcg.rgb=function(e){var t=e[0]/360,n=e[1]/100,r=e[2]/100;if(0===n)return[255*r,255*r,255*r];var a,i=[0,0,0],s=t%1*6,o=s%1,l=1-o;switch(Math.floor(s)){case 0:i[0]=1,i[1]=o,i[2]=0;break;case 1:i[0]=l,i[1]=1,i[2]=0;break;case 2:i[0]=0,i[1]=1,i[2]=o;break;case 3:i[0]=0,i[1]=l,i[2]=1;break;case 4:i[0]=o,i[1]=0,i[2]=1;break;default:i[0]=1,i[1]=0,i[2]=l}return a=(1-n)*r,[255*(n*i[0]+a),255*(n*i[1]+a),255*(n*i[2]+a)]},s.hcg.hsv=function(e){var t=e[1]/100,n=t+e[2]/100*(1-t),r=0;return n>0&&(r=t/n),[e[0],100*r,100*n]},s.hcg.hsl=function(e){var t=e[1]/100,n=e[2]/100*(1-t)+.5*t,r=0;return n>0&&n<.5?r=t/(2*n):n>=.5&&n<1&&(r=t/(2*(1-n))),[e[0],100*r,100*n]},s.hcg.hwb=function(e){var t=e[1]/100,n=t+e[2]/100*(1-t);return[e[0],100*(n-t),100*(1-n)]},s.hwb.hcg=function(e){var t=e[1]/100,n=1-e[2]/100,r=n-t,a=0;return r<1&&(a=(n-r)/(1-r)),[e[0],100*r,100*a]},s.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]},s.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]},s.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]},s.gray.hsl=s.gray.hsv=function(e){return[0,0,e[0]]},s.gray.hwb=function(e){return[0,100,e[0]]},s.gray.cmyk=function(e){return[0,0,0,e[0]]},s.gray.lab=function(e){return[e[0],0,0]},s.gray.hex=function(e){var t=255&Math.round(e[0]/100*255),n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(n.length)+n},s.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]}},12085:(e,t,n)=>{var r=n(48168),a=n(4111),i={};Object.keys(r).forEach((function(e){i[e]={},Object.defineProperty(i[e],"channels",{value:r[e].channels}),Object.defineProperty(i[e],"labels",{value:r[e].labels});var t=a(e);Object.keys(t).forEach((function(n){var r=t[n];i[e][n]=function(e){var t=function(t){if(null==t)return t;arguments.length>1&&(t=Array.prototype.slice.call(arguments));var n=e(t);if("object"==typeof n)for(var r=n.length,a=0;a<r;a++)n[a]=Math.round(n[a]);return n};return"conversion"in e&&(t.conversion=e.conversion),t}(r),i[e][n].raw=function(e){var t=function(t){return null==t?t:(arguments.length>1&&(t=Array.prototype.slice.call(arguments)),e(t))};return"conversion"in e&&(t.conversion=e.conversion),t}(r)}))})),e.exports=i},4111:(e,t,n)=>{var r=n(48168);function a(e,t){return function(n){return t(e(n))}}function i(e,t){for(var n=[t[e].parent,e],i=r[t[e].parent][e],s=t[e].parent;t[s].parent;)n.unshift(t[s].parent),i=a(r[t[s].parent][s],i),s=t[s].parent;return i.conversion=n,i}e.exports=function(e){for(var t=function(e){var t=function(){for(var e={},t=Object.keys(r),n=t.length,a=0;a<n;a++)e[t[a]]={distance:-1,parent:null};return e}(),n=[e];for(t[e].distance=0;n.length;)for(var a=n.pop(),i=Object.keys(r[a]),s=i.length,o=0;o<s;o++){var l=i[o],p=t[l];-1===p.distance&&(p.distance=t[a].distance+1,p.parent=a,n.unshift(l))}return t}(e),n={},a=Object.keys(t),s=a.length,o=0;o<s;o++){var l=a[o];null!==t[l].parent&&(n[l]=i(l,t))}return n}},8874:e=>{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},11227:(e,t,n)=>{t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;t.splice(1,0,n,"color: inherit");let r=0,a=0;t[0].replace(/%[a-zA-Z%]/g,(e=>{"%%"!==e&&(r++,"%c"===e&&(a=r))})),t.splice(a,0,n)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},t.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=n(82447)(t);const{formatters:r}=e.exports;r.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},82447:(e,t,n)=>{e.exports=function(e){function t(e){let n,a,i,s=null;function o(...e){if(!o.enabled)return;const r=o,a=Number(new Date),i=a-(n||a);r.diff=i,r.prev=n,r.curr=a,n=a,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let s=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,((n,a)=>{if("%%"===n)return"%";s++;const i=t.formatters[a];if("function"==typeof i){const t=e[s];n=i.call(r,t),e.splice(s,1),s--}return n})),t.formatArgs.call(r,e),(r.log||t.log).apply(r,e)}return o.namespace=e,o.useColors=t.useColors(),o.color=t.selectColor(e),o.extend=r,o.destroy=t.destroy,Object.defineProperty(o,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==s?s:(a!==t.namespaces&&(a=t.namespaces,i=t.enabled(e)),i),set:e=>{s=e}}),"function"==typeof t.init&&t.init(o),o}function r(e,n){const r=t(this.namespace+(void 0===n?":":n)+e);return r.log=this.log,r}function a(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return t.debug=t,t.default=t,t.coerce=function(e){return e instanceof Error?e.stack||e.message:e},t.disable=function(){const e=[...t.names.map(a),...t.skips.map(a).map((e=>"-"+e))].join(",");return t.enable(""),e},t.enable=function(e){let n;t.save(e),t.namespaces=e,t.names=[],t.skips=[];const r=("string"==typeof e?e:"").split(/[\s,]+/),a=r.length;for(n=0;n<a;n++)r[n]&&("-"===(e=r[n].replace(/\*/g,".*?"))[0]?t.skips.push(new RegExp("^"+e.slice(1)+"$")):t.names.push(new RegExp("^"+e+"$")))},t.enabled=function(e){if("*"===e[e.length-1])return!0;let n,r;for(n=0,r=t.skips.length;n<r;n++)if(t.skips[n].test(e))return!1;for(n=0,r=t.names.length;n<r;n++)if(t.names[n].test(e))return!0;return!1},t.humanize=n(57824),t.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach((n=>{t[n]=e[n]})),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let n=0;for(let t=0;t<e.length;t++)n=(n<<5)-n+e.charCodeAt(t),n|=0;return t.colors[Math.abs(n)%t.colors.length]},t.enable(t.load()),t}},15158:(e,t,n)=>{"undefined"==typeof process||"renderer"===process.type||!0===process.browser||process.__nwjs?e.exports=n(11227):e.exports=n(39)},39:(e,t,n)=>{const r=n(76224),a=n(73837);t.init=function(e){e.inspectOpts={};const n=Object.keys(t.inspectOpts);for(let r=0;r<n.length;r++)e.inspectOpts[n[r]]=t.inspectOpts[n[r]]},t.log=function(...e){return process.stderr.write(a.format(...e)+"\n")},t.formatArgs=function(n){const{namespace:r,useColors:a}=this;if(a){const t=this.color,a="[3"+(t<8?t:"8;5;"+t),i=` ${a};1m${r} [0m`;n[0]=i+n[0].split("\n").join("\n"+i),n.push(a+"m+"+e.exports.humanize(this.diff)+"[0m")}else n[0]=(t.inspectOpts.hideDate?"":(new Date).toISOString()+" ")+r+" "+n[0]},t.save=function(e){e?process.env.DEBUG=e:delete process.env.DEBUG},t.load=function(){return process.env.DEBUG},t.useColors=function(){return"colors"in t.inspectOpts?Boolean(t.inspectOpts.colors):r.isatty(process.stderr.fd)},t.destroy=a.deprecate((()=>{}),"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),t.colors=[6,2,3,4,5,1];try{const e=n(92130);e&&(e.stderr||e).level>=2&&(t.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(e){}t.inspectOpts=Object.keys(process.env).filter((e=>/^debug_/i.test(e))).reduce(((e,t)=>{const n=t.substring(6).toLowerCase().replace(/_([a-z])/g,((e,t)=>t.toUpperCase()));let r=process.env[t];return r=!!/^(yes|on|true|enabled)$/i.test(r)||!/^(no|off|false|disabled)$/i.test(r)&&("null"===r?null:Number(r)),e[n]=r,e}),{}),e.exports=n(82447)(t);const{formatters:i}=e.exports;i.o=function(e){return this.inspectOpts.colors=this.useColors,a.inspect(e,this.inspectOpts).split("\n").map((e=>e.trim())).join(" ")},i.O=function(e){return this.inspectOpts.colors=this.useColors,a.inspect(e,this.inspectOpts)}},63150:e=>{"use strict";var t=/[|\\{}()[\]^$+*?.]/g;e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected a string");return e.replace(t,"\\$&")}},11272:(e,t,n)=>{"use strict";e.exports=n(38487)},86560:e=>{"use strict";e.exports=(e,t)=>{t=t||process.argv;const n=e.startsWith("-")?"":1===e.length?"-":"--",r=t.indexOf(n+e),a=t.indexOf("--");return-1!==r&&(-1===a||r<a)}},66188:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=/((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g,t.matchToToken=function(e){var t={type:"invalid",value:e[0],closed:void 0};return e[1]?(t.type="string",t.closed=!(!e[3]&&!e[4])):e[5]?t.type="comment":e[6]?(t.type="comment",t.closed=!!e[7]):e[8]?t.type="regex":e[9]?t.type="number":e[10]?t.type="name":e[11]?t.type="punctuator":e[12]&&(t.type="whitespace"),t}},3312:e=>{"use strict";const t={},n=t.hasOwnProperty,r=(e,t)=>{for(const r in e)n.call(e,r)&&t(r,e[r])},a=t.toString,i=Array.isArray,s=Buffer.isBuffer,o={'"':'\\"',"'":"\\'","\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},l=/["'\\\b\f\n\r\t]/,p=/[0-9]/,c=/[ !#-&\(-\[\]-_a-~]/,u=(e,t)=>{const n=()=>{E=b,++t.indentLevel,b=t.indent.repeat(t.indentLevel)},d={escapeEverything:!1,minimal:!1,isScriptContext:!1,quotes:"single",wrap:!1,es6:!1,json:!1,compact:!0,lowercaseHex:!1,numbers:"decimal",indent:"\t",indentLevel:0,__inline1__:!1,__inline2__:!1},f=t&&t.json;var y,m;f&&(d.quotes="double",d.wrap=!0),y=d,t=(m=t)?(r(m,((e,t)=>{y[e]=t})),y):y,"single"!=t.quotes&&"double"!=t.quotes&&"backtick"!=t.quotes&&(t.quotes="single");const h="double"==t.quotes?'"':"backtick"==t.quotes?"`":"'",T=t.compact,S=t.lowercaseHex;let b=t.indent.repeat(t.indentLevel),E="";const P=t.__inline1__,x=t.__inline2__,g=T?"":"\n";let A,v=!0;const O="binary"==t.numbers,I="octal"==t.numbers,N="decimal"==t.numbers,D="hexadecimal"==t.numbers;if(f&&e&&"function"==typeof e.toJSON&&(e=e.toJSON()),"string"!=typeof(C=e)&&"[object String]"!=a.call(C)){if((e=>"[object Map]"==a.call(e))(e))return 0==e.size?"new Map()":(T||(t.__inline1__=!0,t.__inline2__=!1),"new Map("+u(Array.from(e),t)+")");if((e=>"[object Set]"==a.call(e))(e))return 0==e.size?"new Set()":"new Set("+u(Array.from(e),t)+")";if(s(e))return 0==e.length?"Buffer.from([])":"Buffer.from("+u(Array.from(e),t)+")";if(i(e))return A=[],t.wrap=!0,P&&(t.__inline1__=!1,t.__inline2__=!0),x||n(),((e,t)=>{const n=e.length;let r=-1;for(;++r<n;)t(e[r])})(e,(e=>{v=!1,x&&(t.__inline2__=!1),A.push((T||x?"":b)+u(e,t))})),v?"[]":x?"["+A.join(", ")+"]":"["+g+A.join(","+g)+g+(T?"":E)+"]";if(!(e=>"number"==typeof e||"[object Number]"==a.call(e))(e))return(e=>"[object Object]"==a.call(e))(e)?(A=[],t.wrap=!0,n(),r(e,((e,n)=>{v=!1,A.push((T?"":b)+u(e,t)+":"+(T?"":" ")+u(n,t))})),v?"{}":"{"+g+A.join(","+g)+g+(T?"":E)+"}"):f?JSON.stringify(e)||"null":String(e);if(f)return JSON.stringify(e);if(N)return String(e);if(D){let t=e.toString(16);return S||(t=t.toUpperCase()),"0x"+t}if(O)return"0b"+e.toString(2);if(I)return"0o"+e.toString(8)}var C;const w=e;let L=-1;const j=w.length;for(A="";++L<j;){const e=w.charAt(L);if(t.es6){const e=w.charCodeAt(L);if(e>=55296&&e<=56319&&j>L+1){const t=w.charCodeAt(L+1);if(t>=56320&&t<=57343){let n=(1024*(e-55296)+t-56320+65536).toString(16);S||(n=n.toUpperCase()),A+="\\u{"+n+"}",++L;continue}}}if(!t.escapeEverything){if(c.test(e)){A+=e;continue}if('"'==e){A+=h==e?'\\"':e;continue}if("`"==e){A+=h==e?"\\`":e;continue}if("'"==e){A+=h==e?"\\'":e;continue}}if("\0"==e&&!f&&!p.test(w.charAt(L+1))){A+="\\0";continue}if(l.test(e)){A+=o[e];continue}const n=e.charCodeAt(0);if(t.minimal&&8232!=n&&8233!=n){A+=e;continue}let r=n.toString(16);S||(r=r.toUpperCase());const a=r.length>2||f,i="\\"+(a?"u":"x")+("0000"+r).slice(a?-4:-2);A+=i}return t.wrap&&(A=h+A+h),"`"==h&&(A=A.replace(/\$\{/g,"\\${")),t.isScriptContext?A.replace(/<\/(script|style)/gi,"<\\/$1").replace(/<!--/g,f?"\\u003C!--":"\\x3C!--"):A};u.version="2.5.2",e.exports=u},57824:e=>{var t=1e3,n=60*t,r=60*n,a=24*r;function i(e,t,n,r){var a=t>=1.5*n;return Math.round(e/n)+" "+r+(a?"s":"")}e.exports=function(e,s){s=s||{};var o,l,p=typeof e;if("string"===p&&e.length>0)return function(e){if(!((e=String(e)).length>100)){var i=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(i){var s=parseFloat(i[1]);switch((i[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*s;case"weeks":case"week":case"w":return 6048e5*s;case"days":case"day":case"d":return s*a;case"hours":case"hour":case"hrs":case"hr":case"h":return s*r;case"minutes":case"minute":case"mins":case"min":case"m":return s*n;case"seconds":case"second":case"secs":case"sec":case"s":return s*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}(e);if("number"===p&&isFinite(e))return s.long?(o=e,(l=Math.abs(o))>=a?i(o,l,a,"day"):l>=r?i(o,l,r,"hour"):l>=n?i(o,l,n,"minute"):l>=t?i(o,l,t,"second"):o+" ms"):function(e){var i=Math.abs(e);return i>=a?Math.round(e/a)+"d":i>=r?Math.round(e/r)+"h":i>=n?Math.round(e/n)+"m":i>=t?Math.round(e/t)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},24563:(e,t,n)=>{var r=n(26547),a=n(71576).StringDecoder;e.exports=function(e,t,n){var i=new a,s="",o=n&&n.maxLength,l=!n||!1!==n.trailing;function p(e,n){if(t){try{n=t(n)}catch(t){return e.emit("error",t)}void 0!==n&&e.queue(n)}else e.queue(n)}function c(t,n){var r=((null!=s?s:"")+n).split(e);if(s=r.pop(),o&&s.length>o)return t.emit("error",new Error("maximum buffer reached"));for(var a=0;a<r.length;a++)p(t,r[a])}return"function"==typeof e&&(t=e,e=null),e||(e=/\r?\n/),r((function(e){c(this,i.write(e))}),(function(){i.end&&c(this,i.end()),l&&null!=s&&p(this,s),this.queue(null)}))}},92130:(e,t,n)=>{"use strict";const r=n(22037),a=n(86560),i=process.env;let s;function o(e){const t=function(e){if(!1===s)return 0;if(a("color=16m")||a("color=full")||a("color=truecolor"))return 3;if(a("color=256"))return 2;if(e&&!e.isTTY&&!0!==s)return 0;const t=s?1:0;if("win32"===process.platform){const e=r.release().split(".");return Number(process.versions.node.split(".")[0])>=8&&Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in i)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some((e=>e in i))||"codeship"===i.CI_NAME?1:t;if("TEAMCITY_VERSION"in i)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(i.TEAMCITY_VERSION)?1:0;if("truecolor"===i.COLORTERM)return 3;if("TERM_PROGRAM"in i){const e=parseInt((i.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(i.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(i.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(i.TERM)||"COLORTERM"in i?1:(i.TERM,t)}(e);return function(e){return 0!==e&&{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}(t)}a("no-color")||a("no-colors")||a("color=false")?s=!1:(a("color")||a("colors")||a("color=true")||a("color=always"))&&(s=!0),"FORCE_COLOR"in i&&(s=0===i.FORCE_COLOR.length||0!==parseInt(i.FORCE_COLOR,10)),e.exports={supportsColor:o,stdout:o(process.stdout),stderr:o(process.stderr)}},26547:(e,t,n)=>{var r=n(12781);function a(e,t,n){e=e||function(e){this.queue(e)},t=t||function(){this.queue(null)};var a=!1,i=!1,s=[],o=!1,l=new r;function p(){for(;s.length&&!l.paused;){var e=s.shift();if(null===e)return l.emit("end");l.emit("data",e)}}return l.readable=l.writable=!0,l.paused=!1,l.autoDestroy=!(n&&!1===n.autoDestroy),l.write=function(t){return e.call(this,t),!l.paused},l.queue=l.push=function(e){return o||(null===e&&(o=!0),s.push(e),p()),l},l.on("end",(function(){l.readable=!1,!l.writable&&l.autoDestroy&&process.nextTick((function(){l.destroy()}))})),l.end=function(e){if(!a)return a=!0,arguments.length&&l.write(e),l.writable=!1,t.call(l),!l.readable&&l.autoDestroy&&l.destroy(),l},l.destroy=function(){if(!i)return i=!0,a=!0,s.length=0,l.writable=l.readable=!1,l.emit("close"),l},l.pause=function(){if(!l.paused)return l.paused=!0,l},l.resume=function(){return l.paused&&(l.paused=!1,l.emit("resume")),p(),l.paused||l.emit("drain"),l},l}e.exports=a,a.through=a},53164:e=>{"use strict";let t=null;function n(e){if(null!==t&&(t.property,1)){const e=t;return t=n.prototype=null,e}return t=n.prototype=null==e?Object.create(null):e,new n}n(),e.exports=function(e){return n(e)}},90766:(e,t,n)=>{var r=function(){var e=n(38218),t="*",r=[],a=[],i=[],s=[];function o(t,n){n.filePath||(n.filePath="No file path provided"),t.node.skipMeOnVisit||(e.isMemberExpression(t)&&"extend"===t.node.property.name&&function(t,n){var r=t.parent.callee;if(r){var i=r.object;extendClass=d(i);var s=t.parent.arguments;1===s.length&&e.isObjectExpression(l)?l=s[0]:e.isStringLiteral(l);var o,l="";if(s.length){if(1===s.length&&e.isObjectExpression(s[0]))o=s[0];else{if(2!==s.length)return;e.isStringLiteral(s[0])&&e.isObjectExpression(s[1])&&(l=s[0],o=s[1])}className=l.value?l.value:"";var p,u=function(t,n){var r=[],a=[],i=[],s=!1;if(e.isObjectExpression(t)){var o=t.properties;for(var l in o)if(!s&&"interfaces"===o[l].key.name.toLowerCase()&&e.isArrayExpression(o[l].value)){s=!0;var p=o[l].value.elements;for(var u in p){var d=c(p[u]);i.push(d)}}else a.push(o[l].key.name)}return r.push(a),r.push(i),r}(o),f=u[0],T=u[1],S=!!(p=className)&&/^((\w+\.)+\w+)$/.test(p),b=y(className);if(className&&!b&&!S)throw{message:"JSParser Error: The 'extend' you are trying to make has an invalid name. Example: '...extend(\"a.b.C\", {...overrides...})'), for class: "+extendClass+" file: "+n.fullPathName,errCode:1};var E="";if(S){n.logger&&n.logger.info(E);var P=S?className:"";return E=m(P,extendClass.reverse().join("."),f,"",n.fullPathName,T),void h(P,n.fullPathName,E)}n.logger&&n.logger.info(E);var x={file:n.filePath,line:t.node.property.loc.start.line,column:t.node.property.loc.start.column+1,className};E=m(S?className:"",extendClass.reverse().join("."),f,x,"",T),a.push(E)}}}(t,n),e.isNewExpression(t)&&function(t,n){if(!n.interfaceNames)throw"JSParser Error: No interface names are provided! You can pass them in config.interfaceNames as an array!";var r=d(t.node.callee),a=!1,s=n.interfaceNames,o=r.reverse().join(".");for(var l in s){var p=s[l].trim();if(p===o){o=p,a=!0;break}}if(a){var c,u="";if(1===t.node.arguments.length)c=t.node.arguments[0];else{if(2!==t.node.arguments.length)throw{message:"JSParser Error: Not enough or too many arguments passed("+t.node.arguments.length+") when trying to extend interface: "+p+" in file: "+n.fullPathName,errCode:1};u=t.node.arguments[0],c=t.node.arguments[1]}var f=y(u.value),h=function(t,n){var r=[];if(e.isObjectExpression(t)){var a=t.properties;for(var i in a)r.push(a[i].key.name)}return r}(c),T={file:n.filePath,line:t.node.loc.start.line,column:t.node.loc.start.column+1,className:f?u.value:""},S=m("",o,h.join(","),T,"");n.logger&&n.logger.info(S),i.push(S)}}(t,n),e.isIdentifier(t)&&"__extends"===t.node.name&&function(t,n){var r;try{r=function(t,n,r){var a=f(t,5,r);if(a){if(!e.isCallExpression(a.node))throw{message:"JSParser Error: Node type is not a call expression. File="+r.fullPathName+" line="+t.node.loc.start.line,errCode:1};var i=a.node.arguments[0]}return d(i).reverse().join(".")}(t,0,n)}catch(e){return void n.logger.warn(e.message)}var i=function(t,n){var r=[],a=f(t,3);for(var i in a.node.body){var s=a.node.body[i];e.isExpressionStatement(s)&&e.isAssignmentExpression(s.expression)&&s.expression.left.property&&r.push(s.expression.left.property.name)}return r}(t),s="",o=function(t,n){var r,a,i,s,o,l,p=!1;if(t.node.body&&t.node.body.length>=3&&(e.isFunctionDeclaration(t.node.body[1])&&t.node.body[1].id&&(r=t.node.body[1].id.name),e.isReturnStatement(t.node.body[t.node.body.length-1])&&(a=t.node.body[t.node.body.length-1].argument.name)),r===a&&r){var c=t.node.body[1],u=function(t){if(e.isExpressionStatement(t)&&e.isCallExpression(t.expression)){var n=t.expression.arguments;if(2==n.length)return n[1].name}}(t.node.body[0]);if(u){var d=[],f=[];if(c.body.body.forEach((t=>{e.isVariableDeclaration(t)?d.push(t):e.isExpressionStatement(t)&&f.push(t)})),d.length>0||f.length>0){var y=(o=u,((l=d.filter((t=>e.isLogicalExpression(t.declarations[0].init)&&e.isCallExpression(t.declarations[0].init.left)&&t.declarations[0].init.left.callee.object.name===o))).length>0?l[0].declarations[0].init.left:null)||function(t,n){var r=t.filter((t=>e.isAssignmentExpression(t.expression)&&e.isLogicalExpression(t.expression.right)&&e.isCallExpression(t.expression.right.left)&&t.expression.right.left.callee.object.name===n));return r.length>0?r[0].expression.right.left:null}(f,u));if(y){var m=y.callee.property;i=m.loc.start.column+1,s=m.loc.start.line,p=!0}}}}return p||n.logger.info("[WARN] TypeScript-extended class has a super() call in an unsupported format. ctor function name: "+r),{line:s,column:i}}(f(t,3,n),n),u=f(t,1,n);e.isCallExpression(u)&&(s=u.node.arguments[0].name);var y,T,S,b=function(e,t,n){var r=f(e,3).node.body;for(var a in r){var i=r[a];if(p(i))return l(i.expression).arguments[0].elements}return null}(t),E=!1,P=[];if(b||(b=function(e,t,n){var r=f(e,7),a=r.getSibling(r.key+1).node;return a&&p(a)?l(a.expression).arguments[0].elements:null}(t)),b)for(var x in b){var g=b[x];if(e.isCallExpression(g)){if(g.callee.name===n.interfacesDecoratorName){g.callee.skipMeOnVisit=!0;var A=g.arguments[0].elements;for(var x in A){var v=c(A[x]);P.push(v)}}g.callee.name===n.extendDecoratorName&&(g.callee.skipMeOnVisit=!0,E=!0,y=void 0===n.extendDecoratorName?"JavaProxy":n.extendDecoratorName,T=g.arguments[0].value)}}E?function(e,t,n,r,a,i){t.logger&&t.logger.info("\t+in "+n+" anchor");var s=e,o=m(s,r,a,"",t.fullPathName,i);t.logger&&t.logger.info(o),h(s,t.fullPathName,o)}(T,n,y,r,i,P):(S=m("",r,i,{file:n.filePath,line:o.line,column:o.column,className:s},"",P),n.logger&&n.logger.info(S),a.push(S))}(t,n))}function l(t){if(!t)return null;for(var n=t.right;e.isAssignmentExpression(n);)n=n.right;return n}function p(t){var n=l(t.expression);return e.isExpressionStatement(t)&&e.isAssignmentExpression(t.expression)&&n.callee&&"__decorate"===n.callee.name&&n.arguments&&e.isArrayExpression(n.arguments[0])}function c(t){var n="";return e.isMemberExpression(t)&&(n+=u(t.object),n+=t.property.name),n}function u(t){var n="";return e.isMemberExpression(t)&&(e.isMemberExpression(t.object)?(n+=u(t.object),n+=t.property.name+"."):(n+=t.object.name+".",n+=t.property.name+".")),n}function d(t){for(var n=[],r=!1;void 0!==t;){if(!e.isMemberExpression(t)){r&&n.push(t.name);break}r=!0,n.push(t.property.name),t=t.object}return n}function f(e,t,n){if(!e)throw{message:"JSParser Error: No parent found for node in file: "+n.fullPathName,errCode:1};return 0===t?e:f(e.parentPath,--t)}function y(e){return!(!e||""==e)&&/^(\w+)$/.test(e)}function m(e,n,r,a,i,s=""){const o=a.file?a.file.replace(/[-\\/\\. ]/g,"_"):"",l=a.line?a.line:"",p=a.column?a.column:"",c=a.className?a.className:"";return`${n}${t}${o}${t}${l}${t}${p}${t}${c}${t}${r}${t}${e}${t}${i}${t}${s}`}function h(e,t,n){-1===s.indexOf(e)?(r.push(n),s.push(e)):(console.log("Warning: there already is an extend called "+e+"."),-1===t.indexOf("tns_modules")&&(console.log("Warning: The static binding generator will generate extend from:"+t+" implementation"),r.push(n),s.push(e)))}return o.getProxyExtendInfo=function(){var e=r.slice();return r=[],e},o.getCommonExtendInfo=function(){var e=[];for(var t in a)"*"!==a[t][0]&&e.push(a[t]);return a=[],e},o.getInterfaceInfo=function(){var e=i.slice();return i=[],e},{es5Visitor:o}}();e.exports=r},57147:e=>{"use strict";e.exports=require("fs")},22037:e=>{"use strict";e.exports=require("os")},71017:e=>{"use strict";e.exports=require("path")},12781:e=>{"use strict";e.exports=require("stream")},71576:e=>{"use strict";e.exports=require("string_decoder")},76224:e=>{"use strict";e.exports=require("tty")},73837:e=>{"use strict";e.exports=require("util")},4704:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.codeFrameColumns=p,t.default=function(e,t,n,r={}){if(!o){o=!0;const e="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";process.emitWarning?process.emitWarning(e,"DeprecationWarning"):(new Error(e).name="DeprecationWarning",console.warn(new Error(e)))}return p(e,{start:{column:n=Math.max(n,0),line:t}},r)};var r=n(8530),a=function(e,t){if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=i(true);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in e)if("default"!==s&&Object.prototype.hasOwnProperty.call(e,s)){var o=a?Object.getOwnPropertyDescriptor(e,s):null;o&&(o.get||o.set)?Object.defineProperty(r,s,o):r[s]=e[s]}return r.default=e,n&&n.set(e,r),r}(n(32589));function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(i=function(e){return e?n:t})(e)}let s,o=!1;const l=/\r\n|[\n\r\u2028\u2029]/;function p(e,t,n={}){const i=(n.highlightCode||n.forceColor)&&(0,r.shouldHighlight)(n),o=n.forceColor?(null!=s||(s=new a.default.constructor({enabled:!0,level:1})),s):a.default,p=function(e){return{gutter:e.grey,marker:e.red.bold,message:e.red.bold}}(o),c=(e,t)=>i?e(t):t,u=e.split(l),{start:d,end:f,markerLines:y}=function(e,t,n){const r=Object.assign({column:0,line:-1},e.start),a=Object.assign({},r,e.end),{linesAbove:i=2,linesBelow:s=3}=n||{},o=r.line,l=r.column,p=a.line,c=a.column;let u=Math.max(o-(i+1),0),d=Math.min(t.length,p+s);-1===o&&(u=0),-1===p&&(d=t.length);const f=p-o,y={};if(f)for(let e=0;e<=f;e++){const n=e+o;if(l)if(0===e){const e=t[n-1].length;y[n]=[l,e-l+1]}else if(e===f)y[n]=[0,c];else{const r=t[n-e].length;y[n]=[0,r]}else y[n]=!0}else y[o]=l===c?!l||[l,0]:[l,c-l];return{start:u,end:d,markerLines:y}}(t,u,n),m=t.start&&"number"==typeof t.start.column,h=String(f).length;let T=(i?(0,r.default)(e,n):e).split(l,f).slice(d,f).map(((e,t)=>{const r=d+1+t,a=` ${` ${r}`.slice(-h)} |`,i=y[r],s=!y[r+1];if(i){let t="";if(Array.isArray(i)){const r=e.slice(0,Math.max(i[0]-1,0)).replace(/[^\t]/g," "),o=i[1]||1;t=["\n ",c(p.gutter,a.replace(/\d/g," "))," ",r,c(p.marker,"^").repeat(o)].join(""),s&&n.message&&(t+=" "+c(p.message,n.message))}return[c(p.marker,">"),c(p.gutter,a),e.length>0?` ${e}`:"",t].join("")}return` ${c(p.gutter,a)}${e.length>0?` ${e}`:""}`})).join("\n");return n.message&&!m&&(T=`${" ".repeat(h+1)}${n.message}\n${T}`),i?o.reset(T):T}},78726:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=class{constructor(e){this._map=null,this._buf="",this._str="",this._appendCount=0,this._last=0,this._queue=[],this._queueCursor=0,this._canMarkIdName=!0,this._position={line:1,column:0},this._sourcePosition={identifierName:void 0,identifierNamePos:void 0,line:void 0,column:void 0,filename:void 0},this._map=e,this._allocQueue()}_allocQueue(){const e=this._queue;for(let t=0;t<16;t++)e.push({char:0,repeat:1,line:void 0,column:void 0,identifierName:void 0,identifierNamePos:void 0,filename:""})}_pushQueue(e,t,n,r,a){const i=this._queueCursor;i===this._queue.length&&this._allocQueue();const s=this._queue[i];s.char=e,s.repeat=t,s.line=n,s.column=r,s.filename=a,this._queueCursor++}_popQueue(){if(0===this._queueCursor)throw new Error("Cannot pop from empty queue");return this._queue[--this._queueCursor]}get(){this._flush();const e=this._map,t={code:(this._buf+this._str).trimRight(),decodedMap:null==e?void 0:e.getDecoded(),get __mergedMap(){return this.map},get map(){const n=e?e.get():null;return t.map=n,n},set map(e){Object.defineProperty(t,"map",{value:e,writable:!0})},get rawMappings(){const n=null==e?void 0:e.getRawMappings();return t.rawMappings=n,n},set rawMappings(e){Object.defineProperty(t,"rawMappings",{value:e,writable:!0})}};return t}append(e,t){this._flush(),this._append(e,this._sourcePosition,t)}appendChar(e){this._flush(),this._appendChar(e,1,this._sourcePosition)}queue(e){if(10===e)for(;0!==this._queueCursor;){const e=this._queue[this._queueCursor-1].char;if(32!==e&&9!==e)break;this._queueCursor--}const t=this._sourcePosition;this._pushQueue(e,1,t.line,t.column,t.filename)}queueIndentation(e,t){this._pushQueue(e,t,void 0,void 0,void 0)}_flush(){const e=this._queueCursor,t=this._queue;for(let n=0;n<e;n++){const e=t[n];this._appendChar(e.char,e.repeat,e)}this._queueCursor=0}_appendChar(e,t,n){this._last=e,this._str+=t>1?String.fromCharCode(e).repeat(t):String.fromCharCode(e),10!==e?(this._mark(n.line,n.column,n.identifierName,n.identifierNamePos,n.filename),this._position.column+=t):(this._position.line++,this._position.column=0),this._canMarkIdName&&(n.identifierName=void 0,n.identifierNamePos=void 0)}_append(e,t,n){const r=e.length,a=this._position;if(this._last=e.charCodeAt(r-1),++this._appendCount>4096?(this._str,this._buf+=this._str,this._str=e,this._appendCount=0):this._str+=e,!n&&!this._map)return void(a.column+=r);const{column:i,identifierName:s,identifierNamePos:o,filename:l}=t;let p=t.line;null==s&&null==o||!this._canMarkIdName||(t.identifierName=void 0,t.identifierNamePos=void 0);let c=e.indexOf("\n"),u=0;for(0!==c&&this._mark(p,i,s,o,l);-1!==c;)a.line++,a.column=0,u=c+1,u<r&&void 0!==p&&this._mark(++p,0,null,null,l),c=e.indexOf("\n",u);a.column+=r-u}_mark(e,t,n,r,a){var i;null==(i=this._map)||i.mark(this._position,e,t,n,r,a)}removeTrailingNewline(){const e=this._queueCursor;0!==e&&10===this._queue[e-1].char&&this._queueCursor--}removeLastSemicolon(){const e=this._queueCursor;0!==e&&59===this._queue[e-1].char&&this._queueCursor--}getLastChar(){const e=this._queueCursor;return 0!==e?this._queue[e-1].char:this._last}getNewlineCount(){const e=this._queueCursor;let t=0;if(0===e)return 10===this._last?1:0;for(let n=e-1;n>=0&&10===this._queue[n].char;n--)t++;return t===e&&10===this._last?t+1:t}endsWithCharAndNewline(){const e=this._queue,t=this._queueCursor;if(0!==t){if(10!==e[t-1].char)return;return t>1?e[t-2].char:this._last}}hasContent(){return 0!==this._queueCursor||!!this._last}exactSource(e,t){if(!this._map)return void t();this.source("start",e);const n=e.identifierName,r=this._sourcePosition;n&&(this._canMarkIdName=!1,r.identifierName=n),t(),n&&(this._canMarkIdName=!0,r.identifierName=void 0,r.identifierNamePos=void 0),this.source("end",e)}source(e,t){this._map&&this._normalizePosition(e,t,0)}sourceWithOffset(e,t,n){this._map&&this._normalizePosition(e,t,n)}withSource(e,t,n){this._map&&this.source(e,t),n()}_normalizePosition(e,t,n){const r=t[e],a=this._sourcePosition;r&&(a.line=r.line,a.column=Math.max(r.column+n,0),a.filename=t.filename)}getCurrentColumn(){const e=this._queue,t=this._queueCursor;let n=-1,r=0;for(let a=0;a<t;a++){const t=e[a];10===t.char&&(n=r),r+=t.repeat}return-1===n?this._position.column+r:r-1-n}getCurrentLine(){let e=0;const t=this._queue;for(let n=0;n<this._queueCursor;n++)10===t[n].char&&e++;return this._position.line+e}}},79230:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlockStatement=function(e){var t;this.tokenChar(123);const n=null==(t=e.directives)?void 0:t.length;if(n){var r;const t=e.body.length?2:1;this.printSequence(e.directives,e,{indent:!0,trailingCommentsLineOffset:t}),null!=(r=e.directives[n-1].trailingComments)&&r.length||this.newline(t)}this.printSequence(e.body,e,{indent:!0}),this.rightBrace(e)},t.Directive=function(e){this.print(e.value,e),this.semicolon()},t.DirectiveLiteral=function(e){const t=this.getPossibleRaw(e);if(!this.format.minified&&void 0!==t)return void this.token(t);const{value:a}=e;if(r.test(a)){if(n.test(a))throw new Error("Malformed AST: it is not possible to print a directive containing both unescaped single and double quotes.");this.token(`'${a}'`)}else this.token(`"${a}"`)},t.File=function(e){e.program&&this.print(e.program.interpreter,e),this.print(e.program,e)},t.InterpreterDirective=function(e){this.token(`#!${e.value}`),this.newline(1,!0)},t.Placeholder=function(e){this.token("%%"),this.print(e.name),this.token("%%"),"Statement"===e.expectedNode&&this.semicolon()},t.Program=function(e){var t;this.noIndentInnerCommentsHere(),this.printInnerComments();const n=null==(t=e.directives)?void 0:t.length;if(n){var r;const t=e.body.length?2:1;this.printSequence(e.directives,e,{trailingCommentsLineOffset:t}),null!=(r=e.directives[n-1].trailingComments)&&r.length||this.newline(t)}this.printSequence(e.body,e)};const n=/(?:^|[^\\])(?:\\\\)*'/,r=/(?:^|[^\\])(?:\\\\)*"/},30695:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClassAccessorProperty=function(e){var t;this.printJoin(e.decorators,e);const n=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;n&&this.catchUp(n),this.tsPrintClassMemberModifiers(e),this.word("accessor",!0),this.space(),e.computed?(this.tokenChar(91),this.print(e.key,e),this.tokenChar(93)):(this._variance(e),this.print(e.key,e)),e.optional&&this.tokenChar(63),e.definite&&this.tokenChar(33),this.print(e.typeAnnotation,e),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value,e)),this.semicolon()},t.ClassBody=function(e){this.tokenChar(123),0===e.body.length?this.tokenChar(125):(this.newline(),this.printSequence(e.body,e,{indent:!0}),this.endsWith(10)||this.newline(),this.rightBrace(e))},t.ClassExpression=t.ClassDeclaration=function(e,t){(a(t)||i(t))&&this._shouldPrintDecoratorsBeforeExport(t)||this.printJoin(e.decorators,e),e.declare&&(this.word("declare"),this.space()),e.abstract&&(this.word("abstract"),this.space()),this.word("class"),e.id&&(this.space(),this.print(e.id,e)),this.print(e.typeParameters,e),e.superClass&&(this.space(),this.word("extends"),this.space(),this.print(e.superClass,e),this.print(e.superTypeParameters,e)),e.implements&&(this.space(),this.word("implements"),this.space(),this.printList(e.implements,e)),this.space(),this.print(e.body,e)},t.ClassMethod=function(e){this._classMethodHead(e),this.space(),this.print(e.body,e)},t.ClassPrivateMethod=function(e){this._classMethodHead(e),this.space(),this.print(e.body,e)},t.ClassPrivateProperty=function(e){this.printJoin(e.decorators,e),e.static&&(this.word("static"),this.space()),this.print(e.key,e),this.print(e.typeAnnotation,e),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value,e)),this.semicolon()},t.ClassProperty=function(e){var t;this.printJoin(e.decorators,e);const n=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;n&&this.catchUp(n),this.tsPrintClassMemberModifiers(e),e.computed?(this.tokenChar(91),this.print(e.key,e),this.tokenChar(93)):(this._variance(e),this.print(e.key,e)),e.optional&&this.tokenChar(63),e.definite&&this.tokenChar(33),this.print(e.typeAnnotation,e),e.value&&(this.space(),this.tokenChar(61),this.space(),this.print(e.value,e)),this.semicolon()},t.StaticBlock=function(e){this.word("static"),this.space(),this.tokenChar(123),0===e.body.length?this.tokenChar(125):(this.newline(),this.printSequence(e.body,e,{indent:!0}),this.rightBrace(e))},t._classMethodHead=function(e){var t;this.printJoin(e.decorators,e);const n=null==(t=e.key.loc)||null==(t=t.end)?void 0:t.line;n&&this.catchUp(n),this.tsPrintClassMemberModifiers(e),this._methodHead(e)};var r=n(84250);const{isExportDefaultDeclaration:a,isExportNamedDeclaration:i}=r},7240:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LogicalExpression=t.BinaryExpression=t.AssignmentExpression=function(e,t){const n=this.inForStatementInitCounter&&"in"===e.operator&&!a.needsParens(e,t);n&&this.tokenChar(40),this.print(e.left,e),this.space(),"in"===e.operator||"instanceof"===e.operator?this.word(e.operator):this.token(e.operator),this.space(),this.print(e.right,e),n&&this.tokenChar(41)},t.AssignmentPattern=function(e){this.print(e.left,e),e.left.optional&&this.tokenChar(63),this.print(e.left.typeAnnotation,e),this.space(),this.tokenChar(61),this.space(),this.print(e.right,e)},t.AwaitExpression=function(e){this.word("await"),e.argument&&(this.space(),this.printTerminatorless(e.argument,e,!1))},t.BindExpression=function(e){this.print(e.object,e),this.token("::"),this.print(e.callee,e)},t.CallExpression=function(e){this.print(e.callee,e),this.print(e.typeArguments,e),this.print(e.typeParameters,e),this.tokenChar(40),this.printList(e.arguments,e),this.rightParens(e)},t.ConditionalExpression=function(e){this.print(e.test,e),this.space(),this.tokenChar(63),this.space(),this.print(e.consequent,e),this.space(),this.tokenChar(58),this.space(),this.print(e.alternate,e)},t.Decorator=function(e){this.tokenChar(64);const{expression:t}=e;!function(e){return"ParenthesizedExpression"!==e.type&&!p("CallExpression"===e.type?e.callee:e)}(t)?this.print(t,e):(this.tokenChar(40),this.print(t,e),this.tokenChar(41)),this.newline()},t.DoExpression=function(e){e.async&&(this.word("async",!0),this.space()),this.word("do"),this.space(),this.print(e.body,e)},t.EmptyStatement=function(){this.semicolon(!0)},t.ExpressionStatement=function(e){this.print(e.expression,e),this.semicolon()},t.Import=function(){this.word("import")},t.MemberExpression=function(e){if(this.print(e.object,e),!e.computed&&o(e.property))throw new TypeError("Got a MemberExpression for MemberExpression property");let t=e.computed;s(e.property)&&"number"==typeof e.property.value&&(t=!0),t?(this.tokenChar(91),this.print(e.property,e),this.tokenChar(93)):(this.tokenChar(46),this.print(e.property,e))},t.MetaProperty=function(e){this.print(e.meta,e),this.tokenChar(46),this.print(e.property,e)},t.ModuleExpression=function(e){this.word("module",!0),this.space(),this.tokenChar(123),this.indent();const{body:t}=e;(t.body.length||t.directives.length)&&this.newline(),this.print(t,e),this.dedent(),this.rightBrace(e)},t.NewExpression=function(e,t){this.word("new"),this.space(),this.print(e.callee,e),(!this.format.minified||0!==e.arguments.length||e.optional||i(t,{callee:e})||o(t)||l(t))&&(this.print(e.typeArguments,e),this.print(e.typeParameters,e),e.optional&&this.token("?."),this.tokenChar(40),this.printList(e.arguments,e),this.rightParens(e))},t.OptionalCallExpression=function(e){this.print(e.callee,e),this.print(e.typeParameters,e),e.optional&&this.token("?."),this.print(e.typeArguments,e),this.tokenChar(40),this.printList(e.arguments,e),this.rightParens(e)},t.OptionalMemberExpression=function(e){let{computed:t}=e;const{optional:n,property:r}=e;if(this.print(e.object,e),!t&&o(r))throw new TypeError("Got a MemberExpression for MemberExpression property");s(r)&&"number"==typeof r.value&&(t=!0),n&&this.token("?."),t?(this.tokenChar(91),this.print(r,e),this.tokenChar(93)):(n||this.tokenChar(46),this.print(r,e))},t.ParenthesizedExpression=function(e){this.tokenChar(40),this.print(e.expression,e),this.rightParens(e)},t.PrivateName=function(e){this.tokenChar(35),this.print(e.id,e)},t.SequenceExpression=function(e){this.printList(e.expressions,e)},t.Super=function(){this.word("super")},t.ThisExpression=function(){this.word("this")},t.UnaryExpression=function(e){const{operator:t}=e;"void"===t||"delete"===t||"typeof"===t||"throw"===t?(this.word(t),this.space()):this.token(t),this.print(e.argument,e)},t.UpdateExpression=function(e){e.prefix?(this.token(e.operator),this.print(e.argument,e)):(this.printTerminatorless(e.argument,e,!0),this.token(e.operator))},t.V8IntrinsicIdentifier=function(e){this.tokenChar(37),this.word(e.name)},t.YieldExpression=function(e){this.word("yield",!0),e.delegate?(this.tokenChar(42),e.argument&&(this.space(),this.print(e.argument,e))):e.argument&&(this.space(),this.printTerminatorless(e.argument,e,!1))},t._shouldPrintDecoratorsBeforeExport=function(e){return"boolean"==typeof this.format.decoratorsBeforeExport?this.format.decoratorsBeforeExport:"number"==typeof e.start&&e.start===e.declaration.start};var r=n(84250),a=n(12419);const{isCallExpression:i,isLiteral:s,isMemberExpression:o,isNewExpression:l}=r;function p(e){switch(e.type){case"Identifier":return!0;case"MemberExpression":return!e.computed&&"Identifier"===e.property.type&&p(e.object);default:return!1}}},84735:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AnyTypeAnnotation=function(){this.word("any")},t.ArrayTypeAnnotation=function(e){this.print(e.elementType,e,!0),this.tokenChar(91),this.tokenChar(93)},t.BooleanLiteralTypeAnnotation=function(e){this.word(e.value?"true":"false")},t.BooleanTypeAnnotation=function(){this.word("boolean")},t.DeclareClass=function(e,t){s(t)||(this.word("declare"),this.space()),this.word("class"),this.space(),this._interfaceish(e)},t.DeclareExportAllDeclaration=function(e){this.word("declare"),this.space(),a.ExportAllDeclaration.call(this,e)},t.DeclareExportDeclaration=function(e){this.word("declare"),this.space(),this.word("export"),this.space(),e.default&&(this.word("default"),this.space()),u.call(this,e)},t.DeclareFunction=function(e,t){s(t)||(this.word("declare"),this.space()),this.word("function"),this.space(),this.print(e.id,e),this.print(e.id.typeAnnotation.typeAnnotation,e),e.predicate&&(this.space(),this.print(e.predicate,e)),this.semicolon()},t.DeclareInterface=function(e){this.word("declare"),this.space(),this.InterfaceDeclaration(e)},t.DeclareModule=function(e){this.word("declare"),this.space(),this.word("module"),this.space(),this.print(e.id,e),this.space(),this.print(e.body,e)},t.DeclareModuleExports=function(e){this.word("declare"),this.space(),this.word("module"),this.tokenChar(46),this.word("exports"),this.print(e.typeAnnotation,e)},t.DeclareOpaqueType=function(e,t){s(t)||(this.word("declare"),this.space()),this.OpaqueType(e)},t.DeclareTypeAlias=function(e){this.word("declare"),this.space(),this.TypeAlias(e)},t.DeclareVariable=function(e,t){s(t)||(this.word("declare"),this.space()),this.word("var"),this.space(),this.print(e.id,e),this.print(e.id.typeAnnotation,e),this.semicolon()},t.DeclaredPredicate=function(e){this.tokenChar(37),this.word("checks"),this.tokenChar(40),this.print(e.value,e),this.tokenChar(41)},t.EmptyTypeAnnotation=function(){this.word("empty")},t.EnumBooleanBody=function(e){const{explicitType:t}=e;l(this,"boolean",t),p(this,e)},t.EnumBooleanMember=function(e){c(this,e)},t.EnumDeclaration=function(e){const{id:t,body:n}=e;this.word("enum"),this.space(),this.print(t,e),this.print(n,e)},t.EnumDefaultedMember=function(e){const{id:t}=e;this.print(t,e),this.tokenChar(44)},t.EnumNumberBody=function(e){const{explicitType:t}=e;l(this,"number",t),p(this,e)},t.EnumNumberMember=function(e){c(this,e)},t.EnumStringBody=function(e){const{explicitType:t}=e;l(this,"string",t),p(this,e)},t.EnumStringMember=function(e){c(this,e)},t.EnumSymbolBody=function(e){l(this,"symbol",!0),p(this,e)},t.ExistsTypeAnnotation=function(){this.tokenChar(42)},t.FunctionTypeAnnotation=function(e,t){this.print(e.typeParameters,e),this.tokenChar(40),e.this&&(this.word("this"),this.tokenChar(58),this.space(),this.print(e.this.typeAnnotation,e),(e.params.length||e.rest)&&(this.tokenChar(44),this.space())),this.printList(e.params,e),e.rest&&(e.params.length&&(this.tokenChar(44),this.space()),this.token("..."),this.print(e.rest,e)),this.tokenChar(41);const n=null==t?void 0:t.type;null!=n&&("ObjectTypeCallProperty"===n||"ObjectTypeInternalSlot"===n||"DeclareFunction"===n||"ObjectTypeProperty"===n&&t.method)?this.tokenChar(58):(this.space(),this.token("=>")),this.space(),this.print(e.returnType,e)},t.FunctionTypeParam=function(e){this.print(e.name,e),e.optional&&this.tokenChar(63),e.name&&(this.tokenChar(58),this.space()),this.print(e.typeAnnotation,e)},t.IndexedAccessType=function(e){this.print(e.objectType,e,!0),this.tokenChar(91),this.print(e.indexType,e),this.tokenChar(93)},t.InferredPredicate=function(){this.tokenChar(37),this.word("checks")},t.InterfaceDeclaration=function(e){this.word("interface"),this.space(),this._interfaceish(e)},t.GenericTypeAnnotation=t.ClassImplements=t.InterfaceExtends=function(e){this.print(e.id,e),this.print(e.typeParameters,e,!0)},t.InterfaceTypeAnnotation=function(e){var t;this.word("interface"),null!=(t=e.extends)&&t.length&&(this.space(),this.word("extends"),this.space(),this.printList(e.extends,e)),this.space(),this.print(e.body,e)},t.IntersectionTypeAnnotation=function(e){this.printJoin(e.types,e,{separator:d})},t.MixedTypeAnnotation=function(){this.word("mixed")},t.NullLiteralTypeAnnotation=function(){this.word("null")},t.NullableTypeAnnotation=function(e){this.tokenChar(63),this.print(e.typeAnnotation,e)},Object.defineProperty(t,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return i.NumericLiteral}}),t.NumberTypeAnnotation=function(){this.word("number")},t.ObjectTypeAnnotation=function(e){e.exact?this.token("{|"):this.tokenChar(123);const t=[...e.properties,...e.callProperties||[],...e.indexers||[],...e.internalSlots||[]];t.length&&(this.newline(),this.space(),this.printJoin(t,e,{addNewlines(e){if(e&&!t[0])return 1},indent:!0,statement:!0,iterator:()=>{(1!==t.length||e.inexact)&&(this.tokenChar(44),this.space())}}),this.space()),e.inexact&&(this.indent(),this.token("..."),t.length&&this.newline(),this.dedent()),e.exact?this.token("|}"):this.tokenChar(125)},t.ObjectTypeCallProperty=function(e){e.static&&(this.word("static"),this.space()),this.print(e.value,e)},t.ObjectTypeIndexer=function(e){e.static&&(this.word("static"),this.space()),this._variance(e),this.tokenChar(91),e.id&&(this.print(e.id,e),this.tokenChar(58),this.space()),this.print(e.key,e),this.tokenChar(93),this.tokenChar(58),this.space(),this.print(e.value,e)},t.ObjectTypeInternalSlot=function(e){e.static&&(this.word("static"),this.space()),this.tokenChar(91),this.tokenChar(91),this.print(e.id,e),this.tokenChar(93),this.tokenChar(93),e.optional&&this.tokenChar(63),e.method||(this.tokenChar(58),this.space()),this.print(e.value,e)},t.ObjectTypeProperty=function(e){e.proto&&(this.word("proto"),this.space()),e.static&&(this.word("static"),this.space()),"get"!==e.kind&&"set"!==e.kind||(this.word(e.kind),this.space()),this._variance(e),this.print(e.key,e),e.optional&&this.tokenChar(63),e.method||(this.tokenChar(58),this.space()),this.print(e.value,e)},t.ObjectTypeSpreadProperty=function(e){this.token("..."),this.print(e.argument,e)},t.OpaqueType=function(e){this.word("opaque"),this.space(),this.word("type"),this.space(),this.print(e.id,e),this.print(e.typeParameters,e),e.supertype&&(this.tokenChar(58),this.space(),this.print(e.supertype,e)),e.impltype&&(this.space(),this.tokenChar(61),this.space(),this.print(e.impltype,e)),this.semicolon()},t.OptionalIndexedAccessType=function(e){this.print(e.objectType,e),e.optional&&this.token("?."),this.tokenChar(91),this.print(e.indexType,e),this.tokenChar(93)},t.QualifiedTypeIdentifier=function(e){this.print(e.qualification,e),this.tokenChar(46),this.print(e.id,e)},Object.defineProperty(t,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return i.StringLiteral}}),t.StringTypeAnnotation=function(){this.word("string")},t.SymbolTypeAnnotation=function(){this.word("symbol")},t.ThisTypeAnnotation=function(){this.word("this")},t.TupleTypeAnnotation=function(e){this.tokenChar(91),this.printList(e.types,e),this.tokenChar(93)},t.TypeAlias=function(e){this.word("type"),this.space(),this.print(e.id,e),this.print(e.typeParameters,e),this.space(),this.tokenChar(61),this.space(),this.print(e.right,e),this.semicolon()},t.TypeAnnotation=function(e){this.tokenChar(58),this.space(),e.optional&&this.tokenChar(63),this.print(e.typeAnnotation,e)},t.TypeCastExpression=function(e){this.tokenChar(40),this.print(e.expression,e),this.print(e.typeAnnotation,e),this.tokenChar(41)},t.TypeParameter=function(e){this._variance(e),this.word(e.name),e.bound&&this.print(e.bound,e),e.default&&(this.space(),this.tokenChar(61),this.space(),this.print(e.default,e))},t.TypeParameterDeclaration=t.TypeParameterInstantiation=function(e){this.tokenChar(60),this.printList(e.params,e,{}),this.tokenChar(62)},t.TypeofTypeAnnotation=function(e){this.word("typeof"),this.space(),this.print(e.argument,e)},t.UnionTypeAnnotation=function(e){this.printJoin(e.types,e,{separator:f})},t.Variance=function(e){"plus"===e.kind?this.tokenChar(43):this.tokenChar(45)},t.VoidTypeAnnotation=function(){this.word("void")},t._interfaceish=function(e){var t,n,r;(this.print(e.id,e),this.print(e.typeParameters,e),null!=(t=e.extends)&&t.length&&(this.space(),this.word("extends"),this.space(),this.printList(e.extends,e)),"DeclareClass"===e.type)&&(null!=(n=e.mixins)&&n.length&&(this.space(),this.word("mixins"),this.space(),this.printList(e.mixins,e)),null!=(r=e.implements)&&r.length&&(this.space(),this.word("implements"),this.space(),this.printList(e.implements,e)));this.space(),this.print(e.body,e)},t._variance=function(e){var t;const n=null==(t=e.variance)?void 0:t.kind;null!=n&&("plus"===n?this.tokenChar(43):"minus"===n&&this.tokenChar(45))};var r=n(84250),a=n(44272),i=n(77585);const{isDeclareExportDeclaration:s,isStatement:o}=r;function l(e,t,n){n&&(e.space(),e.word("of"),e.space(),e.word(t)),e.space()}function p(e,t){const{members:n}=t;e.token("{"),e.indent(),e.newline();for(const r of n)e.print(r,t),e.newline();t.hasUnknownMembers&&(e.token("..."),e.newline()),e.dedent(),e.token("}")}function c(e,t){const{id:n,init:r}=t;e.print(n,t),e.space(),e.token("="),e.space(),e.print(r,t),e.token(",")}function u(e){if(e.declaration){const t=e.declaration;this.print(t,e),o(t)||this.semicolon()}else this.tokenChar(123),e.specifiers.length&&(this.space(),this.printList(e.specifiers,e),this.space()),this.tokenChar(125),e.source&&(this.space(),this.word("from"),this.space(),this.print(e.source,e)),this.semicolon()}function d(){this.space(),this.tokenChar(38),this.space()}function f(){this.space(),this.tokenChar(124),this.space()}},44236:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(29716);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===r[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return r[e]}}))}));var a=n(7240);Object.keys(a).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===a[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}}))}));var i=n(75448);Object.keys(i).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===i[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return i[e]}}))}));var s=n(30695);Object.keys(s).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===s[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return s[e]}}))}));var o=n(67011);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===o[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return o[e]}}))}));var l=n(44272);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var p=n(77585);Object.keys(p).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===p[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return p[e]}}))}));var c=n(84735);Object.keys(c).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===c[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return c[e]}}))}));var u=n(79230);Object.keys(u).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===u[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return u[e]}}))}));var d=n(27878);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=n(15447);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}))},27878:(e,t)=>{"use strict";function n(){this.space()}Object.defineProperty(t,"__esModule",{value:!0}),t.JSXAttribute=function(e){this.print(e.name,e),e.value&&(this.tokenChar(61),this.print(e.value,e))},t.JSXClosingElement=function(e){this.token("</"),this.print(e.name,e),this.tokenChar(62)},t.JSXClosingFragment=function(){this.token("</"),this.tokenChar(62)},t.JSXElement=function(e){const t=e.openingElement;if(this.print(t,e),!t.selfClosing){this.indent();for(const t of e.children)this.print(t,e);this.dedent(),this.print(e.closingElement,e)}},t.JSXEmptyExpression=function(){this.printInnerComments()},t.JSXExpressionContainer=function(e){this.tokenChar(123),this.print(e.expression,e),this.tokenChar(125)},t.JSXFragment=function(e){this.print(e.openingFragment,e),this.indent();for(const t of e.children)this.print(t,e);this.dedent(),this.print(e.closingFragment,e)},t.JSXIdentifier=function(e){this.word(e.name)},t.JSXMemberExpression=function(e){this.print(e.object,e),this.tokenChar(46),this.print(e.property,e)},t.JSXNamespacedName=function(e){this.print(e.namespace,e),this.tokenChar(58),this.print(e.name,e)},t.JSXOpeningElement=function(e){this.tokenChar(60),this.print(e.name,e),this.print(e.typeParameters,e),e.attributes.length>0&&(this.space(),this.printJoin(e.attributes,e,{separator:n})),e.selfClosing?(this.space(),this.token("/>")):this.tokenChar(62)},t.JSXOpeningFragment=function(){this.tokenChar(60),this.tokenChar(62)},t.JSXSpreadAttribute=function(e){this.tokenChar(123),this.token("..."),this.print(e.argument,e),this.tokenChar(125)},t.JSXSpreadChild=function(e){this.tokenChar(123),this.token("..."),this.print(e.expression,e),this.tokenChar(125)},t.JSXText=function(e){const t=this.getPossibleRaw(e);void 0!==t?this.token(t,!0):this.token(e.value,!0)}},67011:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArrowFunctionExpression=function(e,t){let n;e.async&&(this.word("async",!0),this.space()),this.format.retainLines||1!==e.params.length||!a(n=e.params[0])||function(e,t){var n,r;return!!(e.typeParameters||e.returnType||e.predicate||t.typeAnnotation||t.optional||null!=(n=t.leadingComments)&&n.length||null!=(r=t.trailingComments)&&r.length)}(e,n)?this._params(e,void 0,t):this.print(n,e,!0),this._predicate(e,!0),this.space(),this.printInnerComments(),this.token("=>"),this.space(),this.print(e.body,e)},t.FunctionDeclaration=t.FunctionExpression=function(e,t){this._functionHead(e,t),this.space(),this.print(e.body,e)},t._functionHead=function(e,t){e.async&&(this.word("async"),this._endsWithInnerRaw=!1,this.space()),this.word("function"),e.generator&&(this._endsWithInnerRaw=!1,this.tokenChar(42)),this.space(),e.id&&this.print(e.id,e),this._params(e,e.id,t),"TSDeclareFunction"!==e.type&&this._predicate(e)},t._methodHead=function(e){const t=e.kind,n=e.key;"get"!==t&&"set"!==t||(this.word(t),this.space()),e.async&&(this.word("async",!0),this.space()),"method"!==t&&"init"!==t||e.generator&&this.tokenChar(42),e.computed?(this.tokenChar(91),this.print(n,e),this.tokenChar(93)):this.print(n,e),e.optional&&this.tokenChar(63),this._params(e,e.computed&&"StringLiteral"!==e.key.type?void 0:e.key,void 0)},t._param=function(e,t){this.printJoin(e.decorators,e),this.print(e,t),e.optional&&this.tokenChar(63),this.print(e.typeAnnotation,e)},t._parameters=function(e,t){const n=e.length;for(let r=0;r<n;r++)this._param(e[r],t),r<e.length-1&&(this.tokenChar(44),this.space())},t._params=function(e,t,n){this.print(e.typeParameters,e);const r=i.call(this,t,n);r&&this.sourceIdentifierName(r.name,r.pos),this.tokenChar(40),this._parameters(e.params,e),this.tokenChar(41);const a="ArrowFunctionExpression"===e.type;this.print(e.returnType,e,a),this._noLineTerminator=a},t._predicate=function(e,t){e.predicate&&(e.returnType||this.tokenChar(58),this.space(),this.print(e.predicate,e,t))};var r=n(84250);const{isIdentifier:a}=r;function i(e,t){let n,r=e;if(!r&&t){const e=t.type;"VariableDeclarator"===e?r=t.id:"AssignmentExpression"===e||"AssignmentPattern"===e?r=t.left:"ObjectProperty"===e||"ClassProperty"===e?t.computed&&"StringLiteral"!==t.key.type||(r=t.key):"ClassPrivateProperty"!==e&&"ClassAccessorProperty"!==e||(r=t.key)}if(r){var a,i;if("Identifier"===r.type)n={pos:null==(a=r.loc)?void 0:a.start,name:(null==(i=r.loc)?void 0:i.identifierName)||r.name};else if("PrivateName"===r.type){var s;n={pos:null==(s=r.loc)?void 0:s.start,name:"#"+r.id.name}}else if("StringLiteral"===r.type){var o;n={pos:null==(o=r.loc)?void 0:o.start,name:r.value}}return n}}},44272:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ExportAllDeclaration=function(e){var t,n;this.word("export"),this.space(),"type"===e.exportKind&&(this.word("type"),this.space()),this.tokenChar(42),this.space(),this.word("from"),this.space(),null!=(t=e.attributes)&&t.length||null!=(n=e.assertions)&&n.length?(this.print(e.source,e,!0),this.space(),this._printAttributes(e)):this.print(e.source,e),this.semicolon()},t.ExportDefaultDeclaration=function(e){u(this,e),this.word("export"),this.noIndentInnerCommentsHere(),this.space(),this.word("default"),this.space();const t=e.declaration;this.print(t,e),p(t)||this.semicolon()},t.ExportDefaultSpecifier=function(e){this.print(e.exported,e)},t.ExportNamedDeclaration=function(e){if(u(this,e),this.word("export"),this.space(),e.declaration){const t=e.declaration;this.print(t,e),p(t)||this.semicolon()}else{"type"===e.exportKind&&(this.word("type"),this.space());const r=e.specifiers.slice(0);let a=!1;for(;;){const t=r[0];if(!i(t)&&!s(t))break;a=!0,this.print(r.shift(),e),r.length&&(this.tokenChar(44),this.space())}var t,n;(r.length||!r.length&&!a)&&(this.tokenChar(123),r.length&&(this.space(),this.printList(r,e),this.space()),this.tokenChar(125)),e.source&&(this.space(),this.word("from"),this.space(),null!=(t=e.attributes)&&t.length||null!=(n=e.assertions)&&n.length?(this.print(e.source,e,!0),this.space(),this._printAttributes(e)):this.print(e.source,e)),this.semicolon()}},t.ExportNamespaceSpecifier=function(e){this.tokenChar(42),this.space(),this.word("as"),this.space(),this.print(e.exported,e)},t.ExportSpecifier=function(e){"type"===e.exportKind&&(this.word("type"),this.space()),this.print(e.local,e),e.exported&&e.local.name!==e.exported.name&&(this.space(),this.word("as"),this.space(),this.print(e.exported,e))},t.ImportAttribute=function(e){this.print(e.key),this.tokenChar(58),this.space(),this.print(e.value)},t.ImportDeclaration=function(e){var t,n;this.word("import"),this.space();const r="type"===e.importKind||"typeof"===e.importKind;r?(this.noIndentInnerCommentsHere(),this.word(e.importKind),this.space()):e.module&&(this.noIndentInnerCommentsHere(),this.word("module"),this.space());const a=e.specifiers.slice(0),i=!!a.length;for(;i;){const t=a[0];if(!o(t)&&!l(t))break;this.print(a.shift(),e),a.length&&(this.tokenChar(44),this.space())}a.length?(this.tokenChar(123),this.space(),this.printList(a,e),this.space(),this.tokenChar(125)):r&&!i&&(this.tokenChar(123),this.tokenChar(125)),(i||r)&&(this.space(),this.word("from"),this.space()),null!=(t=e.attributes)&&t.length||null!=(n=e.assertions)&&n.length?(this.print(e.source,e,!0),this.space(),this._printAttributes(e)):this.print(e.source,e),this.semicolon()},t.ImportDefaultSpecifier=function(e){this.print(e.local,e)},t.ImportNamespaceSpecifier=function(e){this.tokenChar(42),this.space(),this.word("as"),this.space(),this.print(e.local,e)},t.ImportSpecifier=function(e){"type"!==e.importKind&&"typeof"!==e.importKind||(this.word(e.importKind),this.space()),this.print(e.imported,e),e.local&&e.local.name!==e.imported.name&&(this.space(),this.word("as"),this.space(),this.print(e.local,e))},t._printAttributes=function(e){const{importAttributesKeyword:t}=this.format,{attributes:n,assertions:r}=e;!n||t||c||(c=!0,console.warn('You are using import attributes, without specifying the desired output syntax.\nPlease specify the "importAttributesKeyword" generator option, whose value can be one of:\n - "with" : `import { a } from "b" with { type: "json" };`\n - "assert" : `import { a } from "b" assert { type: "json" };`\n - "with-legacy" : `import { a } from "b" with type: "json";`\n'));const a="assert"===t||!t&&r;this.word(a?"assert":"with"),this.space(),a||"with"===t?(this.tokenChar(123),this.space(),this.printList(n||r,e),this.space(),this.tokenChar(125)):this.printList(n||r,e)};var r=n(84250);const{isClassDeclaration:a,isExportDefaultSpecifier:i,isExportNamespaceSpecifier:s,isImportDefaultSpecifier:o,isImportNamespaceSpecifier:l,isStatement:p}=r;let c=!1;function u(e,t){a(t.declaration)&&e._shouldPrintDecoratorsBeforeExport(t)&&e.printJoin(t.declaration.decorators,t)}},75448:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BreakStatement=function(e){this.word("break"),d(this,e.label,e,!0)},t.CatchClause=function(e){this.word("catch"),this.space(),e.param&&(this.tokenChar(40),this.print(e.param,e),this.print(e.param.typeAnnotation,e),this.tokenChar(41),this.space()),this.print(e.body,e)},t.ContinueStatement=function(e){this.word("continue"),d(this,e.label,e,!0)},t.DebuggerStatement=function(){this.word("debugger"),this.semicolon()},t.DoWhileStatement=function(e){this.word("do"),this.space(),this.print(e.body,e),this.space(),this.word("while"),this.space(),this.tokenChar(40),this.print(e.test,e),this.tokenChar(41),this.semicolon()},t.ForOfStatement=t.ForInStatement=void 0,t.ForStatement=function(e){this.word("for"),this.space(),this.tokenChar(40),this.inForStatementInitCounter++,this.print(e.init,e),this.inForStatementInitCounter--,this.tokenChar(59),e.test&&(this.space(),this.print(e.test,e)),this.tokenChar(59),e.update&&(this.space(),this.print(e.update,e)),this.tokenChar(41),this.printBlock(e)},t.IfStatement=function(e){this.word("if"),this.space(),this.tokenChar(40),this.print(e.test,e),this.tokenChar(41),this.space();const t=e.alternate&&s(l(e.consequent));t&&(this.tokenChar(123),this.newline(),this.indent()),this.printAndIndentOnComments(e.consequent,e),t&&(this.dedent(),this.newline(),this.tokenChar(125)),e.alternate&&(this.endsWith(125)&&this.space(),this.word("else"),this.space(),this.printAndIndentOnComments(e.alternate,e))},t.LabeledStatement=function(e){this.print(e.label,e),this.tokenChar(58),this.space(),this.print(e.body,e)},t.ReturnStatement=function(e){this.word("return"),d(this,e.argument,e,!1)},t.SwitchCase=function(e){e.test?(this.word("case"),this.space(),this.print(e.test,e),this.tokenChar(58)):(this.word("default"),this.tokenChar(58)),e.consequent.length&&(this.newline(),this.printSequence(e.consequent,e,{indent:!0}))},t.SwitchStatement=function(e){this.word("switch"),this.space(),this.tokenChar(40),this.print(e.discriminant,e),this.tokenChar(41),this.space(),this.tokenChar(123),this.printSequence(e.cases,e,{indent:!0,addNewlines(t,n){if(!t&&e.cases[e.cases.length-1]===n)return-1}}),this.rightBrace(e)},t.ThrowStatement=function(e){this.word("throw"),d(this,e.argument,e,!1)},t.TryStatement=function(e){this.word("try"),this.space(),this.print(e.block,e),this.space(),e.handlers?this.print(e.handlers[0],e):this.print(e.handler,e),e.finalizer&&(this.space(),this.word("finally"),this.space(),this.print(e.finalizer,e))},t.VariableDeclaration=function(e,t){e.declare&&(this.word("declare"),this.space());const{kind:n}=e;this.word(n,"using"===n||"await using"===n),this.space();let r=!1;if(!a(t))for(const t of e.declarations)t.init&&(r=!0);if(this.printList(e.declarations,e,{separator:r?function(){this.tokenChar(44),this.newline()}:void 0,indent:e.declarations.length>1}),a(t))if(i(t)){if(t.init===e)return}else if(t.left===e)return;this.semicolon()},t.VariableDeclarator=function(e){this.print(e.id,e),e.definite&&this.tokenChar(33),this.print(e.id.typeAnnotation,e),e.init&&(this.space(),this.tokenChar(61),this.space(),this.print(e.init,e))},t.WhileStatement=function(e){this.word("while"),this.space(),this.tokenChar(40),this.print(e.test,e),this.tokenChar(41),this.printBlock(e)},t.WithStatement=function(e){this.word("with"),this.space(),this.tokenChar(40),this.print(e.object,e),this.tokenChar(41),this.printBlock(e)};var r=n(84250);const{isFor:a,isForStatement:i,isIfStatement:s,isStatement:o}=r;function l(e){const{body:t}=e;return!1===o(t)?e:l(t)}function p(e){this.word("for"),this.space();const t="ForOfStatement"===e.type;t&&e.await&&(this.word("await"),this.space()),this.noIndentInnerCommentsHere(),this.tokenChar(40),this.print(e.left,e),this.space(),this.word(t?"of":"in"),this.space(),this.print(e.right,e),this.tokenChar(41),this.printBlock(e)}const c=p;t.ForInStatement=c;const u=p;function d(e,t,n,r){t&&(e.space(),e.printTerminatorless(t,n,r)),e.semicolon()}t.ForOfStatement=u},29716:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TaggedTemplateExpression=function(e){this.print(e.tag,e),this.print(e.typeParameters,e),this.print(e.quasi,e)},t.TemplateElement=function(e,t){const n=t.quasis[0]===e,r=t.quasis[t.quasis.length-1]===e,a=(n?"`":"}")+e.value.raw+(r?"`":"${");this.token(a,!0)},t.TemplateLiteral=function(e){const t=e.quasis;for(let n=0;n<t.length;n++)this.print(t[n],e),n+1<t.length&&this.print(e.expressions[n],e)}},77585:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArgumentPlaceholder=function(){this.tokenChar(63)},t.ArrayPattern=t.ArrayExpression=function(e){const t=e.elements,n=t.length;this.tokenChar(91);for(let r=0;r<t.length;r++){const a=t[r];a?(r>0&&this.space(),this.print(a,e),r<n-1&&this.tokenChar(44)):this.tokenChar(44)}this.tokenChar(93)},t.BigIntLiteral=function(e){const t=this.getPossibleRaw(e);this.format.minified||void 0===t?this.word(e.value+"n"):this.word(t)},t.BooleanLiteral=function(e){this.word(e.value?"true":"false")},t.DecimalLiteral=function(e){const t=this.getPossibleRaw(e);this.format.minified||void 0===t?this.word(e.value+"m"):this.word(t)},t.Identifier=function(e){var t;this.sourceIdentifierName((null==(t=e.loc)?void 0:t.identifierName)||e.name),this.word(e.name)},t.NullLiteral=function(){this.word("null")},t.NumericLiteral=function(e){const t=this.getPossibleRaw(e),n=this.format.jsescOption,r=e.value+"";n.numbers?this.number(a(e.value,n)):null==t?this.number(r):this.format.minified?this.number(t.length<r.length?t:r):this.number(t)},t.ObjectPattern=t.ObjectExpression=function(e){const t=e.properties;this.tokenChar(123),t.length&&(this.space(),this.printList(t,e,{indent:!0,statement:!0}),this.space()),this.sourceWithOffset("end",e.loc,-1),this.tokenChar(125)},t.ObjectMethod=function(e){this.printJoin(e.decorators,e),this._methodHead(e),this.space(),this.print(e.body,e)},t.ObjectProperty=function(e){if(this.printJoin(e.decorators,e),e.computed)this.tokenChar(91),this.print(e.key,e),this.tokenChar(93);else{if(i(e.value)&&s(e.key)&&e.key.name===e.value.left.name)return void this.print(e.value,e);if(this.print(e.key,e),e.shorthand&&s(e.key)&&s(e.value)&&e.key.name===e.value.name)return}this.tokenChar(58),this.space(),this.print(e.value,e)},t.PipelineBareFunction=function(e){this.print(e.callee,e)},t.PipelinePrimaryTopicReference=function(){this.tokenChar(35)},t.PipelineTopicExpression=function(e){this.print(e.expression,e)},t.RecordExpression=function(e){const t=e.properties;let n,r;if("bar"===this.format.recordAndTupleSyntaxType)n="{|",r="|}";else{if("hash"!==this.format.recordAndTupleSyntaxType&&null!=this.format.recordAndTupleSyntaxType)throw new Error(`The "recordAndTupleSyntaxType" generator option must be "bar" or "hash" (${JSON.stringify(this.format.recordAndTupleSyntaxType)} received).`);n="#{",r="}"}this.token(n),t.length&&(this.space(),this.printList(t,e,{indent:!0,statement:!0}),this.space()),this.token(r)},t.RegExpLiteral=function(e){this.word(`/${e.pattern}/${e.flags}`)},t.SpreadElement=t.RestElement=function(e){this.token("..."),this.print(e.argument,e)},t.StringLiteral=function(e){const t=this.getPossibleRaw(e);if(!this.format.minified&&void 0!==t)return void this.token(t);const n=a(e.value,this.format.jsescOption);this.token(n)},t.TopicReference=function(){const{topicToken:e}=this.format;if(!o.has(e)){const t=JSON.stringify(e),n=Array.from(o,(e=>JSON.stringify(e)));throw new Error(`The "topicToken" generator option must be one of ${n.join(", ")} (${t} received instead).`)}this.token(e)},t.TupleExpression=function(e){const t=e.elements,n=t.length;let r,a;if("bar"===this.format.recordAndTupleSyntaxType)r="[|",a="|]";else{if("hash"!==this.format.recordAndTupleSyntaxType)throw new Error(`${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`);r="#[",a="]"}this.token(r);for(let r=0;r<t.length;r++){const a=t[r];a&&(r>0&&this.space(),this.print(a,e),r<n-1&&this.tokenChar(44))}this.token(a)};var r=n(84250),a=n(3312);const{isAssignmentPattern:i,isIdentifier:s}=r,o=new Set(["^^","@@","^","%","#"])},15447:(e,t)=>{"use strict";function n(e,t,n){if(e.token("{"),t.length){e.indent(),e.newline();for(const r of t)e.print(r,n),e.newline();e.dedent()}e.rightBrace(n)}function r(e,t,n){e.printJoin(t.types,t,{separator(){this.space(),this.token(n),this.space()}})}function a(e,t){!0!==t&&e.token(t)}Object.defineProperty(t,"__esModule",{value:!0}),t.TSAnyKeyword=function(){this.word("any")},t.TSArrayType=function(e){this.print(e.elementType,e,!0),this.token("[]")},t.TSSatisfiesExpression=t.TSAsExpression=function(e){var t;const{type:n,expression:r,typeAnnotation:a}=e,i=!(null==(t=r.trailingComments)||!t.length);this.print(r,e,!0,void 0,i),this.space(),this.word("TSAsExpression"===n?"as":"satisfies"),this.space(),this.print(a,e)},t.TSBigIntKeyword=function(){this.word("bigint")},t.TSBooleanKeyword=function(){this.word("boolean")},t.TSCallSignatureDeclaration=function(e){this.tsPrintSignatureDeclarationBase(e),this.tokenChar(59)},t.TSConditionalType=function(e){this.print(e.checkType),this.space(),this.word("extends"),this.space(),this.print(e.extendsType),this.space(),this.tokenChar(63),this.space(),this.print(e.trueType),this.space(),this.tokenChar(58),this.space(),this.print(e.falseType)},t.TSConstructSignatureDeclaration=function(e){this.word("new"),this.space(),this.tsPrintSignatureDeclarationBase(e),this.tokenChar(59)},t.TSConstructorType=function(e){e.abstract&&(this.word("abstract"),this.space()),this.word("new"),this.space(),this.tsPrintFunctionOrConstructorType(e)},t.TSDeclareFunction=function(e,t){e.declare&&(this.word("declare"),this.space()),this._functionHead(e,t),this.tokenChar(59)},t.TSDeclareMethod=function(e){this._classMethodHead(e),this.tokenChar(59)},t.TSEnumDeclaration=function(e){const{declare:t,const:r,id:a,members:i}=e;t&&(this.word("declare"),this.space()),r&&(this.word("const"),this.space()),this.word("enum"),this.space(),this.print(a,e),this.space(),n(this,i,e)},t.TSEnumMember=function(e){const{id:t,initializer:n}=e;this.print(t,e),n&&(this.space(),this.tokenChar(61),this.space(),this.print(n,e)),this.tokenChar(44)},t.TSExportAssignment=function(e){this.word("export"),this.space(),this.tokenChar(61),this.space(),this.print(e.expression,e),this.tokenChar(59)},t.TSExpressionWithTypeArguments=function(e){this.print(e.expression,e),this.print(e.typeParameters,e)},t.TSExternalModuleReference=function(e){this.token("require("),this.print(e.expression,e),this.tokenChar(41)},t.TSFunctionType=function(e){this.tsPrintFunctionOrConstructorType(e)},t.TSImportEqualsDeclaration=function(e){const{isExport:t,id:n,moduleReference:r}=e;t&&(this.word("export"),this.space()),this.word("import"),this.space(),this.print(n,e),this.space(),this.tokenChar(61),this.space(),this.print(r,e),this.tokenChar(59)},t.TSImportType=function(e){const{argument:t,qualifier:n,typeParameters:r}=e;this.word("import"),this.tokenChar(40),this.print(t,e),this.tokenChar(41),n&&(this.tokenChar(46),this.print(n,e)),r&&this.print(r,e)},t.TSIndexSignature=function(e){const{readonly:t,static:n}=e;n&&(this.word("static"),this.space()),t&&(this.word("readonly"),this.space()),this.tokenChar(91),this._parameters(e.parameters,e),this.tokenChar(93),this.print(e.typeAnnotation,e),this.tokenChar(59)},t.TSIndexedAccessType=function(e){this.print(e.objectType,e,!0),this.tokenChar(91),this.print(e.indexType,e),this.tokenChar(93)},t.TSInferType=function(e){this.token("infer"),this.space(),this.print(e.typeParameter)},t.TSInstantiationExpression=function(e){this.print(e.expression,e),this.print(e.typeParameters,e)},t.TSInterfaceBody=function(e){this.tsPrintTypeLiteralOrInterfaceBody(e.body,e)},t.TSInterfaceDeclaration=function(e){const{declare:t,id:n,typeParameters:r,extends:a,body:i}=e;t&&(this.word("declare"),this.space()),this.word("interface"),this.space(),this.print(n,e),this.print(r,e),null!=a&&a.length&&(this.space(),this.word("extends"),this.space(),this.printList(a,e)),this.space(),this.print(i,e)},t.TSIntersectionType=function(e){r(this,e,"&")},t.TSIntrinsicKeyword=function(){this.word("intrinsic")},t.TSLiteralType=function(e){this.print(e.literal,e)},t.TSMappedType=function(e){const{nameType:t,optional:n,readonly:r,typeParameter:i}=e;this.tokenChar(123),this.space(),r&&(a(this,r),this.word("readonly"),this.space()),this.tokenChar(91),this.word(i.name),this.space(),this.word("in"),this.space(),this.print(i.constraint,i),t&&(this.space(),this.word("as"),this.space(),this.print(t,e)),this.tokenChar(93),n&&(a(this,n),this.tokenChar(63)),this.tokenChar(58),this.space(),this.print(e.typeAnnotation,e),this.space(),this.tokenChar(125)},t.TSMethodSignature=function(e){const{kind:t}=e;"set"!==t&&"get"!==t||(this.word(t),this.space()),this.tsPrintPropertyOrMethodName(e),this.tsPrintSignatureDeclarationBase(e),this.tokenChar(59)},t.TSModuleBlock=function(e){n(this,e.body,e)},t.TSModuleDeclaration=function(e){const{declare:t,id:n}=e;if(t&&(this.word("declare"),this.space()),e.global||(this.word("Identifier"===n.type?"namespace":"module"),this.space()),this.print(n,e),!e.body)return void this.tokenChar(59);let r=e.body;for(;"TSModuleDeclaration"===r.type;)this.tokenChar(46),this.print(r.id,r),r=r.body;this.space(),this.print(r,e)},t.TSNamedTupleMember=function(e){this.print(e.label,e),e.optional&&this.tokenChar(63),this.tokenChar(58),this.space(),this.print(e.elementType,e)},t.TSNamespaceExportDeclaration=function(e){this.word("export"),this.space(),this.word("as"),this.space(),this.word("namespace"),this.space(),this.print(e.id,e)},t.TSNeverKeyword=function(){this.word("never")},t.TSNonNullExpression=function(e){this.print(e.expression,e),this.tokenChar(33)},t.TSNullKeyword=function(){this.word("null")},t.TSNumberKeyword=function(){this.word("number")},t.TSObjectKeyword=function(){this.word("object")},t.TSOptionalType=function(e){this.print(e.typeAnnotation,e),this.tokenChar(63)},t.TSParameterProperty=function(e){e.accessibility&&(this.word(e.accessibility),this.space()),e.readonly&&(this.word("readonly"),this.space()),this._param(e.parameter)},t.TSParenthesizedType=function(e){this.tokenChar(40),this.print(e.typeAnnotation,e),this.tokenChar(41)},t.TSPropertySignature=function(e){const{readonly:t,initializer:n}=e;t&&(this.word("readonly"),this.space()),this.tsPrintPropertyOrMethodName(e),this.print(e.typeAnnotation,e),n&&(this.space(),this.tokenChar(61),this.space(),this.print(n,e)),this.tokenChar(59)},t.TSQualifiedName=function(e){this.print(e.left,e),this.tokenChar(46),this.print(e.right,e)},t.TSRestType=function(e){this.token("..."),this.print(e.typeAnnotation,e)},t.TSStringKeyword=function(){this.word("string")},t.TSSymbolKeyword=function(){this.word("symbol")},t.TSThisType=function(){this.word("this")},t.TSTupleType=function(e){this.tokenChar(91),this.printList(e.elementTypes,e),this.tokenChar(93)},t.TSTypeAliasDeclaration=function(e){const{declare:t,id:n,typeParameters:r,typeAnnotation:a}=e;t&&(this.word("declare"),this.space()),this.word("type"),this.space(),this.print(n,e),this.print(r,e),this.space(),this.tokenChar(61),this.space(),this.print(a,e),this.tokenChar(59)},t.TSTypeAnnotation=function(e){this.tokenChar(58),this.space(),e.optional&&this.tokenChar(63),this.print(e.typeAnnotation,e)},t.TSTypeAssertion=function(e){const{typeAnnotation:t,expression:n}=e;this.tokenChar(60),this.print(t,e),this.tokenChar(62),this.space(),this.print(n,e)},t.TSTypeLiteral=function(e){this.tsPrintTypeLiteralOrInterfaceBody(e.members,e)},t.TSTypeOperator=function(e){this.word(e.operator),this.space(),this.print(e.typeAnnotation,e)},t.TSTypeParameter=function(e){e.in&&(this.word("in"),this.space()),e.out&&(this.word("out"),this.space()),this.word(e.name),e.constraint&&(this.space(),this.word("extends"),this.space(),this.print(e.constraint,e)),e.default&&(this.space(),this.tokenChar(61),this.space(),this.print(e.default,e))},t.TSTypeParameterDeclaration=t.TSTypeParameterInstantiation=function(e,t){this.tokenChar(60),this.printList(e.params,e,{}),"ArrowFunctionExpression"===t.type&&1===e.params.length&&this.tokenChar(44),this.tokenChar(62)},t.TSTypePredicate=function(e){e.asserts&&(this.word("asserts"),this.space()),this.print(e.parameterName),e.typeAnnotation&&(this.space(),this.word("is"),this.space(),this.print(e.typeAnnotation.typeAnnotation))},t.TSTypeQuery=function(e){this.word("typeof"),this.space(),this.print(e.exprName),e.typeParameters&&this.print(e.typeParameters,e)},t.TSTypeReference=function(e){this.print(e.typeName,e,!0),this.print(e.typeParameters,e,!0)},t.TSUndefinedKeyword=function(){this.word("undefined")},t.TSUnionType=function(e){r(this,e,"|")},t.TSUnknownKeyword=function(){this.word("unknown")},t.TSVoidKeyword=function(){this.word("void")},t.tsPrintClassMemberModifiers=function(e){const t="ClassAccessorProperty"===e.type||"ClassProperty"===e.type;t&&e.declare&&(this.word("declare"),this.space()),e.accessibility&&(this.word(e.accessibility),this.space()),e.static&&(this.word("static"),this.space()),e.override&&(this.word("override"),this.space()),e.abstract&&(this.word("abstract"),this.space()),t&&e.readonly&&(this.word("readonly"),this.space())},t.tsPrintFunctionOrConstructorType=function(e){const{typeParameters:t}=e,n=e.parameters;this.print(t,e),this.tokenChar(40),this._parameters(n,e),this.tokenChar(41),this.space(),this.token("=>"),this.space();const r=e.typeAnnotation;this.print(r.typeAnnotation,e)},t.tsPrintPropertyOrMethodName=function(e){e.computed&&this.tokenChar(91),this.print(e.key,e),e.computed&&this.tokenChar(93),e.optional&&this.tokenChar(63)},t.tsPrintSignatureDeclarationBase=function(e){const{typeParameters:t}=e,n=e.parameters;this.print(t,e),this.tokenChar(40),this._parameters(n,e),this.tokenChar(41);const r=e.typeAnnotation;this.print(r,e)},t.tsPrintTypeLiteralOrInterfaceBody=function(e,t){n(this,e,t)}},27848:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CodeGenerator=void 0,t.default=function(e,t,n){return new i(e,t,n).generate()};var r=n(32564),a=n(90516);class i extends a.default{constructor(e,t={},n){const a=function(e,t){var n;const r={auxiliaryCommentBefore:t.auxiliaryCommentBefore,auxiliaryCommentAfter:t.auxiliaryCommentAfter,shouldPrintComment:t.shouldPrintComment,retainLines:t.retainLines,retainFunctionParens:t.retainFunctionParens,comments:null==t.comments||t.comments,compact:t.compact,minified:t.minified,concise:t.concise,indent:{adjustMultilineComment:!0,style:" "},jsescOption:Object.assign({quotes:"double",wrap:!0,minimal:!1},t.jsescOption),recordAndTupleSyntaxType:null!=(n=t.recordAndTupleSyntaxType)?n:"hash",topicToken:t.topicToken,importAttributesKeyword:t.importAttributesKeyword};r.decoratorsBeforeExport=t.decoratorsBeforeExport,r.jsescOption.json=t.jsonCompatibleStrings,r.minified?(r.compact=!0,r.shouldPrintComment=r.shouldPrintComment||(()=>r.comments)):r.shouldPrintComment=r.shouldPrintComment||(e=>r.comments||e.includes("@license")||e.includes("@preserve")),"auto"===r.compact&&(r.compact="string"==typeof e&&e.length>5e5,r.compact&&console.error(`[BABEL] Note: The code generator has deoptimised the styling of ${t.filename} as it exceeds the max of 500KB.`)),r.compact&&(r.indent.adjustMultilineComment=!1);const{auxiliaryCommentBefore:a,auxiliaryCommentAfter:i,shouldPrintComment:s}=r;return a&&!s(a)&&(r.auxiliaryCommentBefore=void 0),i&&!s(i)&&(r.auxiliaryCommentAfter=void 0),r}(n,t);super(a,t.sourceMaps?new r.default(t,n):null),this.ast=void 0,this.ast=e}generate(){return super.generate(this.ast)}}t.CodeGenerator=class{constructor(e,t,n){this._generator=void 0,this._generator=new i(e,t,n)}generate(){return this._generator.generate()}}},12419:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.needsParens=function(e,t,n){return!!t&&(!(!c(t)||t.callee!==e||!m(e))||y(d,e,t,n))},t.needsWhitespace=h,t.needsWhitespaceAfter=function(e,t){return h(e,t,2)},t.needsWhitespaceBefore=function(e,t){return h(e,t,1)};var r=n(19750),a=n(47363),i=n(84250);const{FLIPPED_ALIAS_KEYS:s,isCallExpression:o,isExpressionStatement:l,isMemberExpression:p,isNewExpression:c}=i;function u(e){const t={};function n(e,n){const r=t[e];t[e]=r?function(e,t,a){const i=r(e,t,a);return null==i?n(e,t,a):i}:n}for(const t of Object.keys(e)){const r=s[t];if(r)for(const a of r)n(a,e[t]);else n(t,e[t])}return t}const d=u(a),f=u(r.nodes);function y(e,t,n,r){const a=e[t.type];return a?a(t,n,r):null}function m(e){return!!o(e)||p(e)&&m(e.object)}function h(e,t,n){if(!e)return!1;l(e)&&(e=e.expression);const r=y(f,e,t);return"number"==typeof r&&0!=(r&n)}},47363:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ArrowFunctionExpression=function(e,t){return h(t)||se(e,t)},t.AssignmentExpression=function(e,t){return!!w(e.left)||se(e,t)},t.Binary=function(e,t){if("**"===e.operator&&p(t,{operator:"**"}))return t.left===e;if(re(e,t))return!0;if(ae(e,t)||G(t)||o(t))return!0;if(l(t)){const n=t.operator,r=te[n],a=e.operator,i=te[a];if(r===i&&t.right===e&&!I(t)||r>i)return!0}},t.BinaryExpression=function(e,t){return"in"===e.operator&&(H(t)||b(t))},t.ClassExpression=function(e,t,n){return oe(n,5)},t.ConditionalExpression=se,t.DoExpression=function(e,t,n){return!e.async&&oe(n,1)},t.FunctionExpression=function(e,t,n){return oe(n,5)},t.FunctionTypeAnnotation=function(e,t,n){if(!(n.length<3))return z(t)||O(t)||a(t)||$(t)&&i(n[n.length-3])},t.Identifier=function(e,t,n){var r;return!(null==(r=e.extra)||!r.parenthesized||!s(t,{left:e})||!g(t.right)&&!f(t.right)||null!=t.right.id)||("let"===e.name?oe(n,N(t,{object:e,computed:!0})||j(t,{object:e,computed:!0,optional:!1})?57:32):"async"===e.name&&P(t)&&e===t.left)},t.LogicalExpression=function(e,t){if(ne(t))return!0;switch(e.operator){case"||":return!!I(t)&&("??"===t.operator||"&&"===t.operator);case"&&":return I(t,{operator:"??"});case"??":return I(t)&&"??"!==t.operator}},t.NullableTypeAnnotation=function(e,t){return a(t)},t.ObjectExpression=function(e,t,n){return oe(n,3)},t.OptionalIndexedAccessType=function(e,t){return v(t,{objectType:e})},t.OptionalCallExpression=t.OptionalMemberExpression=function(e,t){return u(t,{callee:e})||N(t,{object:e})},t.SequenceExpression=function(e,t){return!(x(t)||q(t)||_(t)||A(t)&&t.test===e||Q(t)&&t.test===e||E(t)&&t.right===e||k(t)&&t.discriminant===e||S(t)&&t.expression===e)},t.TSTypeAssertion=t.TSSatisfiesExpression=t.TSAsExpression=function(){return!0},t.TSInferType=function(e,t){return B(t)||Y(t)},t.TSInstantiationExpression=function(e,t){return(u(t)||L(t)||D(t)||R(t))&&!!t.typeParameters},t.TSIntersectionType=t.TSUnionType=function(e,t){return B(t)||Y(t)||K(t)||J(t)||U(t)},t.UnaryLike=ie,t.IntersectionTypeAnnotation=t.UnionTypeAnnotation=function(e,t){return a(t)||C(t)||O(t)||z(t)},t.UpdateExpression=function(e,t){return ae(e,t)||re(e,t)},t.AwaitExpression=t.YieldExpression=function(e,t){return l(t)||G(t)||ae(e,t)||o(t)&&Z(e)||m(t)&&e===t.test||re(e,t)};var r=n(84250);const{isArrayTypeAnnotation:a,isArrowFunctionExpression:i,isAssignmentExpression:s,isAwaitExpression:o,isBinary:l,isBinaryExpression:p,isUpdateExpression:c,isCallExpression:u,isClass:d,isClassExpression:f,isConditional:y,isConditionalExpression:m,isExportDeclaration:h,isExportDefaultDeclaration:T,isExpressionStatement:S,isFor:b,isForInStatement:E,isForOfStatement:P,isForStatement:x,isFunctionExpression:g,isIfStatement:A,isIndexedAccessType:v,isIntersectionTypeAnnotation:O,isLogicalExpression:I,isMemberExpression:N,isNewExpression:D,isNullableTypeAnnotation:C,isObjectPattern:w,isOptionalCallExpression:L,isOptionalMemberExpression:j,isReturnStatement:_,isSequenceExpression:M,isSwitchStatement:k,isTSArrayType:B,isTSAsExpression:F,isTSInstantiationExpression:R,isTSIntersectionType:K,isTSNonNullExpression:V,isTSOptionalType:Y,isTSRestType:U,isTSTypeAssertion:X,isTSUnionType:J,isTaggedTemplateExpression:W,isThrowStatement:q,isTypeAnnotation:$,isUnaryLike:G,isUnionTypeAnnotation:z,isVariableDeclarator:H,isWhileStatement:Q,isYieldExpression:Z,isTSSatisfiesExpression:ee}=r,te={"||":0,"??":0,"|>":0,"&&":1,"|":2,"^":3,"&":4,"==":5,"===":5,"!=":5,"!==":5,"<":6,">":6,"<=":6,">=":6,in:6,instanceof:6,">>":7,"<<":7,">>>":7,"+":8,"-":8,"*":9,"/":9,"%":9,"**":10};function ne(e){return F(e)||ee(e)||X(e)}const re=(e,t)=>d(t,{superClass:e}),ae=(e,t)=>(N(t)||j(t))&&t.object===e||(u(t)||L(t)||D(t))&&t.callee===e||W(t)&&t.tag===e||V(t);function ie(e,t){return ae(e,t)||p(t,{operator:"**",left:e})||re(e,t)}function se(e,t){return!!(G(t)||l(t)||m(t,{test:e})||o(t)||ne(t))||ie(e,t)}function oe(e,t){const n=1&t,r=2&t,a=4&t,o=8&t,p=16&t,u=32&t;let d=e.length-1;if(d<=0)return;let f=e[d];d--;let m=e[d];for(;d>=0;){if(n&&S(m,{expression:f})||a&&T(m,{declaration:f})||r&&i(m,{body:f})||o&&x(m,{init:f})||p&&E(m,{left:f})||u&&P(m,{left:f}))return!0;if(!(d>0&&(ae(f,m)&&!D(m)||M(m)&&m.expressions[0]===f||c(m)&&!m.prefix||y(m,{test:f})||l(m,{left:f})||s(m,{left:f}))))return!1;f=m,d--,m=e[d]}return!1}},19750:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.nodes=void 0;var r=n(84250);const{FLIPPED_ALIAS_KEYS:a,isArrayExpression:i,isAssignmentExpression:s,isBinary:o,isBlockStatement:l,isCallExpression:p,isFunction:c,isIdentifier:u,isLiteral:d,isMemberExpression:f,isObjectExpression:y,isOptionalCallExpression:m,isOptionalMemberExpression:h,isStringLiteral:T}=r;function S(e,t){return e?(f(e)||h(e)?(S(e.object,t),e.computed&&S(e.property,t)):o(e)||s(e)?(S(e.left,t),S(e.right,t)):p(e)||m(e)?(t.hasCall=!0,S(e.callee,t)):c(e)?t.hasFunction=!0:u(e)&&(t.hasHelper=t.hasHelper||e.callee&&E(e.callee)),t):t}function b(e){return S(e,{hasCall:!1,hasFunction:!1,hasHelper:!1})}function E(e){return!!e&&(f(e)?E(e.object)||E(e.property):u(e)?"require"===e.name||95===e.name.charCodeAt(0):p(e)?E(e.callee):!(!o(e)&&!s(e))&&(u(e.left)&&E(e.left)||E(e.right)))}function P(e){return d(e)||y(e)||i(e)||u(e)||f(e)}const x={AssignmentExpression(e){const t=b(e.right);if(t.hasCall&&t.hasHelper||t.hasFunction)return t.hasFunction?3:2},SwitchCase:(e,t)=>(e.consequent.length||t.cases[0]===e?1:0)|(e.consequent.length||t.cases[t.cases.length-1]!==e?0:2),LogicalExpression(e){if(c(e.left)||c(e.right))return 2},Literal(e){if(T(e)&&"use strict"===e.value)return 2},CallExpression(e){if(c(e.callee)||E(e))return 3},OptionalCallExpression(e){if(c(e.callee))return 3},VariableDeclaration(e){for(let t=0;t<e.declarations.length;t++){const n=e.declarations[t];let r=E(n.id)&&!P(n.init);if(!r&&n.init){const e=b(n.init);r=E(n.init)&&e.hasCall||e.hasFunction}if(r)return 3}},IfStatement(e){if(l(e.consequent))return 3}};t.nodes=x,x.ObjectProperty=x.ObjectTypeProperty=x.ObjectMethod=function(e,t){if(t.properties[0]===e)return 1},x.ObjectTypeCallProperty=function(e,t){var n;if(t.callProperties[0]===e&&(null==(n=t.properties)||!n.length))return 1},x.ObjectTypeIndexer=function(e,t){var n,r;if(!(t.indexers[0]!==e||null!=(n=t.properties)&&n.length||null!=(r=t.callProperties)&&r.length))return 1},x.ObjectTypeInternalSlot=function(e,t){var n,r,a;if(!(t.internalSlots[0]!==e||null!=(n=t.properties)&&n.length||null!=(r=t.callProperties)&&r.length||null!=(a=t.indexers)&&a.length))return 1},[["Function",!0],["Class",!0],["Loop",!0],["LabeledStatement",!0],["SwitchStatement",!0],["TryStatement",!0]].forEach((function([e,t]){[e].concat(a[e]||[]).forEach((function(e){const n=t?3:0;x[e]=()=>n}))}))},90516:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(78726),a=n(12419),i=n(84250),s=n(44236);const{isFunction:o,isStatement:l,isClassBody:p,isTSInterfaceBody:c,isTSEnumDeclaration:u}=i,d=/e/i,f=/\.0+$/,y=/^0[box]/,m=/^\s*[@#]__PURE__\s*$/,h=/[\n\r\u2028\u2029]/,T=/\*\//,{needsParens:S}=a;class b{constructor(e,t){this.inForStatementInitCounter=0,this._printStack=[],this._indent=0,this._indentChar=0,this._indentRepeat=0,this._insideAux=!1,this._parenPushNewlineState=null,this._noLineTerminator=!1,this._printAuxAfterOnNextUserNode=!1,this._printedComments=new Set,this._endsWithInteger=!1,this._endsWithWord=!1,this._lastCommentLine=0,this._endsWithInnerRaw=!1,this._indentInnerComments=!0,this.format=e,this._buf=new r.default(t),this._indentChar=e.indent.style.charCodeAt(0),this._indentRepeat=e.indent.style.length,this._inputMap=null==t?void 0:t._inputMap}generate(e){return this.print(e),this._maybeAddAuxComment(),this._buf.get()}indent(){this.format.compact||this.format.concise||this._indent++}dedent(){this.format.compact||this.format.concise||this._indent--}semicolon(e=!1){this._maybeAddAuxComment(),e?this._appendChar(59):this._queue(59),this._noLineTerminator=!1}rightBrace(e){this.format.minified&&this._buf.removeLastSemicolon(),this.sourceWithOffset("end",e.loc,-1),this.tokenChar(125)}rightParens(e){this.sourceWithOffset("end",e.loc,-1),this.tokenChar(41)}space(e=!1){if(!this.format.compact)if(e)this._space();else if(this._buf.hasContent()){const e=this.getLastChar();32!==e&&10!==e&&this._space()}}word(e,t=!1){this._maybePrintInnerComments(),(this._endsWithWord||47===e.charCodeAt(0)&&this.endsWith(47))&&this._space(),this._maybeAddAuxComment(),this._append(e,!1),this._endsWithWord=!0,this._noLineTerminator=t}number(e){this.word(e),this._endsWithInteger=Number.isInteger(+e)&&!y.test(e)&&!d.test(e)&&!f.test(e)&&46!==e.charCodeAt(e.length-1)}token(e,t=!1){this._maybePrintInnerComments();const n=this.getLastChar(),r=e.charCodeAt(0);(33===n&&("--"===e||61===r)||43===r&&43===n||45===r&&45===n||46===r&&this._endsWithInteger)&&this._space(),this._maybeAddAuxComment(),this._append(e,t),this._noLineTerminator=!1}tokenChar(e){this._maybePrintInnerComments();const t=this.getLastChar();(43===e&&43===t||45===e&&45===t||46===e&&this._endsWithInteger)&&this._space(),this._maybeAddAuxComment(),this._appendChar(e),this._noLineTerminator=!1}newline(e=1,t){if(!(e<=0)){if(!t){if(this.format.retainLines||this.format.compact)return;if(this.format.concise)return void this.space()}e>2&&(e=2),e-=this._buf.getNewlineCount();for(let t=0;t<e;t++)this._newline()}}endsWith(e){return this.getLastChar()===e}getLastChar(){return this._buf.getLastChar()}endsWithCharAndNewline(){return this._buf.endsWithCharAndNewline()}removeTrailingNewline(){this._buf.removeTrailingNewline()}exactSource(e,t){e?(this._catchUp("start",e),this._buf.exactSource(e,t)):t()}source(e,t){t&&(this._catchUp(e,t),this._buf.source(e,t))}sourceWithOffset(e,t,n){t&&(this._catchUp(e,t),this._buf.sourceWithOffset(e,t,n))}withSource(e,t,n){t?(this._catchUp(e,t),this._buf.withSource(e,t,n)):n()}sourceIdentifierName(e,t){if(!this._buf._canMarkIdName)return;const n=this._buf._sourcePosition;n.identifierNamePos=t,n.identifierName=e}_space(){this._queue(32)}_newline(){this._queue(10)}_append(e,t){this._maybeAddParen(e),this._maybeIndent(e.charCodeAt(0)),this._buf.append(e,t),this._endsWithWord=!1,this._endsWithInteger=!1}_appendChar(e){this._maybeAddParenChar(e),this._maybeIndent(e),this._buf.appendChar(e),this._endsWithWord=!1,this._endsWithInteger=!1}_queue(e){this._maybeAddParenChar(e),this._maybeIndent(e),this._buf.queue(e),this._endsWithWord=!1,this._endsWithInteger=!1}_maybeIndent(e){this._indent&&10!==e&&this.endsWith(10)&&this._buf.queueIndentation(this._indentChar,this._getIndent())}_shouldIndent(e){if(this._indent&&10!==e&&this.endsWith(10))return!0}_maybeAddParenChar(e){const t=this._parenPushNewlineState;t&&32!==e&&(10===e?(this.tokenChar(40),this.indent(),t.printed=!0):this._parenPushNewlineState=null)}_maybeAddParen(e){const t=this._parenPushNewlineState;if(!t)return;const n=e.length;let r;for(r=0;r<n&&32===e.charCodeAt(r);r++)continue;if(r===n)return;const a=e.charCodeAt(r);if(10!==a){if(47!==a||r+1===n)return void(this._parenPushNewlineState=null);const t=e.charCodeAt(r+1);if(42===t){if(m.test(e.slice(r+2,n-2)))return}else if(47!==t)return void(this._parenPushNewlineState=null)}this.tokenChar(40),this.indent(),t.printed=!0}catchUp(e){if(!this.format.retainLines)return;const t=e-this._buf.getCurrentLine();for(let e=0;e<t;e++)this._newline()}_catchUp(e,t){var n;if(!this.format.retainLines)return;const r=null==t||null==(n=t[e])?void 0:n.line;if(null!=r){const e=r-this._buf.getCurrentLine();for(let t=0;t<e;t++)this._newline()}}_getIndent(){return this._indentRepeat*this._indent}printTerminatorless(e,t,n){if(n)this._noLineTerminator=!0,this.print(e,t);else{const n={printed:!1};this._parenPushNewlineState=n,this.print(e,t),n.printed&&(this.dedent(),this.newline(),this.tokenChar(41))}}print(e,t,n,r,a){var i;if(!e)return;this._endsWithInnerRaw=!1;const s=e.type,o=this.format,l=o.concise;e._compact&&(o.concise=!0);const p=this[s];if(void 0===p)throw new ReferenceError(`unknown node of type ${JSON.stringify(s)} with constructor ${JSON.stringify(e.constructor.name)}`);this._printStack.push(e);const c=this._insideAux;this._insideAux=null==e.loc,this._maybeAddAuxComment(this._insideAux&&!c);const u=a||o.retainFunctionParens&&"FunctionExpression"===s&&(null==(i=e.extra)?void 0:i.parenthesized)||S(e,t,this._printStack);u&&(this.tokenChar(40),this._endsWithInnerRaw=!1),this._lastCommentLine=0,this._printLeadingComments(e,t);const d="Program"===s||"File"===s?null:e.loc;this.exactSource(d,p.bind(this,e,t)),u?(this._printTrailingComments(e,t),this.tokenChar(41),this._noLineTerminator=n):n&&!this._noLineTerminator?(this._noLineTerminator=!0,this._printTrailingComments(e,t)):this._printTrailingComments(e,t,r),this._printStack.pop(),o.concise=l,this._insideAux=c,this._endsWithInnerRaw=!1}_maybeAddAuxComment(e){e&&this._printAuxBeforeComment(),this._insideAux||this._printAuxAfterComment()}_printAuxBeforeComment(){if(this._printAuxAfterOnNextUserNode)return;this._printAuxAfterOnNextUserNode=!0;const e=this.format.auxiliaryCommentBefore;e&&this._printComment({type:"CommentBlock",value:e},0)}_printAuxAfterComment(){if(!this._printAuxAfterOnNextUserNode)return;this._printAuxAfterOnNextUserNode=!1;const e=this.format.auxiliaryCommentAfter;e&&this._printComment({type:"CommentBlock",value:e},0)}getPossibleRaw(e){const t=e.extra;if(null!=(null==t?void 0:t.raw)&&null!=t.rawValue&&e.value===t.rawValue)return t.raw}printJoin(e,t,n={}){if(null==e||!e.length)return;let{indent:r}=n;if(null==r&&this.format.retainLines){var a;const t=null==(a=e[0].loc)?void 0:a.start.line;null!=t&&t!==this._buf.getCurrentLine()&&(r=!0)}r&&this.indent();const i={addNewlines:n.addNewlines,nextNodeStartLine:0},s=n.separator?n.separator.bind(this):null,o=e.length;for(let r=0;r<o;r++){const a=e[r];if(a&&(n.statement&&this._printNewline(0===r,i),this.print(a,t,void 0,n.trailingCommentsLineOffset||0),null==n.iterator||n.iterator(a,r),r<o-1&&(null==s||s()),n.statement))if(r+1===o)this.newline(1);else{var l;const t=e[r+1];i.nextNodeStartLine=(null==(l=t.loc)?void 0:l.start.line)||0,this._printNewline(!0,i)}}r&&this.dedent()}printAndIndentOnComments(e,t){const n=e.leadingComments&&e.leadingComments.length>0;n&&this.indent(),this.print(e,t),n&&this.dedent()}printBlock(e){const t=e.body;"EmptyStatement"!==t.type&&this.space(),this.print(t,e)}_printTrailingComments(e,t,n){const{innerComments:r,trailingComments:a}=e;null!=r&&r.length&&this._printComments(2,r,e,t,n),null!=a&&a.length&&this._printComments(2,a,e,t,n)}_printLeadingComments(e,t){const n=e.leadingComments;null!=n&&n.length&&this._printComments(0,n,e,t)}_maybePrintInnerComments(){this._endsWithInnerRaw&&this.printInnerComments(),this._endsWithInnerRaw=!0,this._indentInnerComments=!0}printInnerComments(){const e=this._printStack[this._printStack.length-1],t=e.innerComments;if(null==t||!t.length)return;const n=this.endsWith(32),r=this._indentInnerComments,a=this._printedComments.size;r&&this.indent(),this._printComments(1,t,e),n&&a!==this._printedComments.size&&this.space(),r&&this.dedent()}noIndentInnerCommentsHere(){this._indentInnerComments=!1}printSequence(e,t,n={}){n.statement=!0,null!=n.indent||(n.indent=!1),this.printJoin(e,t,n)}printList(e,t,n={}){null==n.separator&&(n.separator=P),this.printJoin(e,t,n)}_printNewline(e,t){const n=this.format;if(n.retainLines||n.compact)return;if(n.concise)return void this.space();if(!e)return;const r=t.nextNodeStartLine,a=this._lastCommentLine;if(r>0&&a>0){const e=r-a;if(e>=0)return void this.newline(e||1)}this._buf.hasContent()&&this.newline(1)}_shouldPrintComment(e){return e.ignore||this._printedComments.has(e)?0:this._noLineTerminator&&(h.test(e.value)||T.test(e.value))?2:(this._printedComments.add(e),this.format.shouldPrintComment(e.value)?1:0)}_printComment(e,t){const n=this._noLineTerminator,r="CommentBlock"===e.type,a=r&&1!==t&&!this._noLineTerminator;a&&this._buf.hasContent()&&2!==t&&this.newline(1);const i=this.getLastChar();let s;if(91!==i&&123!==i&&this.space(),r){if(s=`/*${e.value}*/`,this.format.indent.adjustMultilineComment){var o;const t=null==(o=e.loc)?void 0:o.start.column;if(t){const e=new RegExp("\\n\\s{1,"+t+"}","g");s=s.replace(e,"\n")}let n=this.format.retainLines?0:this._buf.getCurrentColumn();(this._shouldIndent(47)||this.format.retainLines)&&(n+=this._getIndent()),s=s.replace(/\n(?!$)/g,`\n${" ".repeat(n)}`)}}else s=n?`/*${e.value}*/`:`//${e.value}`;this.endsWith(47)&&this._space(),this.source("start",e.loc),this._append(s,r),r||n||this.newline(1,!0),a&&3!==t&&this.newline(1)}_printComments(e,t,n,r,a=0){const i=n.loc,s=t.length;let d=!!i;const f=d?i.start.line:0,y=d?i.end.line:0;let m=0,T=0;const S=this._noLineTerminator?function(){}:this.newline.bind(this);for(let i=0;i<s;i++){const b=t[i],E=this._shouldPrintComment(b);if(2===E){d=!1;break}if(d&&b.loc&&1===E){const t=b.loc.start.line,n=b.loc.end.line;if(0===e){let e=0;0===i?!this._buf.hasContent()||"CommentLine"!==b.type&&t==n||(e=T=1):e=t-m,m=n,S(e),this._printComment(b,1),i+1===s&&(S(Math.max(f-m,T)),m=f)}else if(1===e){const e=t-(0===i?f:m);m=n,S(e),this._printComment(b,1),i+1===s&&(S(Math.min(1,y-m)),m=y)}else{const e=t-(0===i?y-a:m);m=n,S(e),this._printComment(b,1)}}else{if(d=!1,1!==E)continue;if(1===s){const t=b.loc?b.loc.start.line===b.loc.end.line:!h.test(b.value),a=t&&!l(n)&&!p(r)&&!c(r)&&!u(r);0===e?this._printComment(b,a&&"ObjectExpression"!==n.type||t&&o(r,{body:n})?1:0):a&&2===e?this._printComment(b,1):this._printComment(b,0)}else 1!==e||"ObjectExpression"===n.type&&n.properties.length>1||"ClassBody"===n.type||"TSInterfaceBody"===n.type?this._printComment(b,0):this._printComment(b,0===i?2:i===s-1?3:0)}}2===e&&d&&m&&(this._lastCommentLine=m)}}Object.assign(b.prototype,s),b.prototype.Noop=function(){};var E=b;function P(){this.tokenChar(44),this.space()}t.default=E},32564:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(92509),a=n(83446);t.default=class{constructor(e,t){var n;this._map=void 0,this._rawMappings=void 0,this._sourceFileName=void 0,this._lastGenLine=0,this._lastSourceLine=0,this._lastSourceColumn=0,this._inputMap=void 0;const i=this._map=new r.GenMapping({sourceRoot:e.sourceRoot});if(this._sourceFileName=null==(n=e.sourceFileName)?void 0:n.replace(/\\/g,"/"),this._rawMappings=void 0,e.inputSourceMap){this._inputMap=new a.TraceMap(e.inputSourceMap);const t=this._inputMap.resolvedSources;if(t.length)for(let e=0;e<t.length;e++){var s;(0,r.setSourceContent)(i,t[e],null==(s=this._inputMap.sourcesContent)?void 0:s[e])}}if("string"!=typeof t||e.inputSourceMap){if("object"==typeof t)for(const e of Object.keys(t))(0,r.setSourceContent)(i,e.replace(/\\/g,"/"),t[e])}else(0,r.setSourceContent)(i,this._sourceFileName,t)}get(){return(0,r.toEncodedMap)(this._map)}getDecoded(){return(0,r.toDecodedMap)(this._map)}getRawMappings(){return this._rawMappings||(this._rawMappings=(0,r.allMappings)(this._map))}mark(e,t,n,i,s,o){var l;let p;if(this._rawMappings=void 0,null!=t)if(this._inputMap){if(p=(0,a.originalPositionFor)(this._inputMap,{line:t,column:n}),!p.name&&s){const e=(0,a.originalPositionFor)(this._inputMap,s);e.name&&(i=e.name)}}else p={source:(null==o?void 0:o.replace(/\\/g,"/"))||this._sourceFileName,line:t,column:n};(0,r.maybeAddMapping)(this._map,{name:i,generated:e,source:null==(l=p)?void 0:l.source,original:p})}}},68846:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!(0,r.default)(e)){var t;const n=null!=(t=null==e?void 0:e.type)?t:JSON.stringify(e);throw new TypeError(`Not a valid node of type "${n}"`)}};var r=n(76539)},50761:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assertAccessor=function(e,t){i("Accessor",e,t)},t.assertAnyTypeAnnotation=function(e,t){i("AnyTypeAnnotation",e,t)},t.assertArgumentPlaceholder=function(e,t){i("ArgumentPlaceholder",e,t)},t.assertArrayExpression=function(e,t){i("ArrayExpression",e,t)},t.assertArrayPattern=function(e,t){i("ArrayPattern",e,t)},t.assertArrayTypeAnnotation=function(e,t){i("ArrayTypeAnnotation",e,t)},t.assertArrowFunctionExpression=function(e,t){i("ArrowFunctionExpression",e,t)},t.assertAssignmentExpression=function(e,t){i("AssignmentExpression",e,t)},t.assertAssignmentPattern=function(e,t){i("AssignmentPattern",e,t)},t.assertAwaitExpression=function(e,t){i("AwaitExpression",e,t)},t.assertBigIntLiteral=function(e,t){i("BigIntLiteral",e,t)},t.assertBinary=function(e,t){i("Binary",e,t)},t.assertBinaryExpression=function(e,t){i("BinaryExpression",e,t)},t.assertBindExpression=function(e,t){i("BindExpression",e,t)},t.assertBlock=function(e,t){i("Block",e,t)},t.assertBlockParent=function(e,t){i("BlockParent",e,t)},t.assertBlockStatement=function(e,t){i("BlockStatement",e,t)},t.assertBooleanLiteral=function(e,t){i("BooleanLiteral",e,t)},t.assertBooleanLiteralTypeAnnotation=function(e,t){i("BooleanLiteralTypeAnnotation",e,t)},t.assertBooleanTypeAnnotation=function(e,t){i("BooleanTypeAnnotation",e,t)},t.assertBreakStatement=function(e,t){i("BreakStatement",e,t)},t.assertCallExpression=function(e,t){i("CallExpression",e,t)},t.assertCatchClause=function(e,t){i("CatchClause",e,t)},t.assertClass=function(e,t){i("Class",e,t)},t.assertClassAccessorProperty=function(e,t){i("ClassAccessorProperty",e,t)},t.assertClassBody=function(e,t){i("ClassBody",e,t)},t.assertClassDeclaration=function(e,t){i("ClassDeclaration",e,t)},t.assertClassExpression=function(e,t){i("ClassExpression",e,t)},t.assertClassImplements=function(e,t){i("ClassImplements",e,t)},t.assertClassMethod=function(e,t){i("ClassMethod",e,t)},t.assertClassPrivateMethod=function(e,t){i("ClassPrivateMethod",e,t)},t.assertClassPrivateProperty=function(e,t){i("ClassPrivateProperty",e,t)},t.assertClassProperty=function(e,t){i("ClassProperty",e,t)},t.assertCompletionStatement=function(e,t){i("CompletionStatement",e,t)},t.assertConditional=function(e,t){i("Conditional",e,t)},t.assertConditionalExpression=function(e,t){i("ConditionalExpression",e,t)},t.assertContinueStatement=function(e,t){i("ContinueStatement",e,t)},t.assertDebuggerStatement=function(e,t){i("DebuggerStatement",e,t)},t.assertDecimalLiteral=function(e,t){i("DecimalLiteral",e,t)},t.assertDeclaration=function(e,t){i("Declaration",e,t)},t.assertDeclareClass=function(e,t){i("DeclareClass",e,t)},t.assertDeclareExportAllDeclaration=function(e,t){i("DeclareExportAllDeclaration",e,t)},t.assertDeclareExportDeclaration=function(e,t){i("DeclareExportDeclaration",e,t)},t.assertDeclareFunction=function(e,t){i("DeclareFunction",e,t)},t.assertDeclareInterface=function(e,t){i("DeclareInterface",e,t)},t.assertDeclareModule=function(e,t){i("DeclareModule",e,t)},t.assertDeclareModuleExports=function(e,t){i("DeclareModuleExports",e,t)},t.assertDeclareOpaqueType=function(e,t){i("DeclareOpaqueType",e,t)},t.assertDeclareTypeAlias=function(e,t){i("DeclareTypeAlias",e,t)},t.assertDeclareVariable=function(e,t){i("DeclareVariable",e,t)},t.assertDeclaredPredicate=function(e,t){i("DeclaredPredicate",e,t)},t.assertDecorator=function(e,t){i("Decorator",e,t)},t.assertDirective=function(e,t){i("Directive",e,t)},t.assertDirectiveLiteral=function(e,t){i("DirectiveLiteral",e,t)},t.assertDoExpression=function(e,t){i("DoExpression",e,t)},t.assertDoWhileStatement=function(e,t){i("DoWhileStatement",e,t)},t.assertEmptyStatement=function(e,t){i("EmptyStatement",e,t)},t.assertEmptyTypeAnnotation=function(e,t){i("EmptyTypeAnnotation",e,t)},t.assertEnumBody=function(e,t){i("EnumBody",e,t)},t.assertEnumBooleanBody=function(e,t){i("EnumBooleanBody",e,t)},t.assertEnumBooleanMember=function(e,t){i("EnumBooleanMember",e,t)},t.assertEnumDeclaration=function(e,t){i("EnumDeclaration",e,t)},t.assertEnumDefaultedMember=function(e,t){i("EnumDefaultedMember",e,t)},t.assertEnumMember=function(e,t){i("EnumMember",e,t)},t.assertEnumNumberBody=function(e,t){i("EnumNumberBody",e,t)},t.assertEnumNumberMember=function(e,t){i("EnumNumberMember",e,t)},t.assertEnumStringBody=function(e,t){i("EnumStringBody",e,t)},t.assertEnumStringMember=function(e,t){i("EnumStringMember",e,t)},t.assertEnumSymbolBody=function(e,t){i("EnumSymbolBody",e,t)},t.assertExistsTypeAnnotation=function(e,t){i("ExistsTypeAnnotation",e,t)},t.assertExportAllDeclaration=function(e,t){i("ExportAllDeclaration",e,t)},t.assertExportDeclaration=function(e,t){i("ExportDeclaration",e,t)},t.assertExportDefaultDeclaration=function(e,t){i("ExportDefaultDeclaration",e,t)},t.assertExportDefaultSpecifier=function(e,t){i("ExportDefaultSpecifier",e,t)},t.assertExportNamedDeclaration=function(e,t){i("ExportNamedDeclaration",e,t)},t.assertExportNamespaceSpecifier=function(e,t){i("ExportNamespaceSpecifier",e,t)},t.assertExportSpecifier=function(e,t){i("ExportSpecifier",e,t)},t.assertExpression=function(e,t){i("Expression",e,t)},t.assertExpressionStatement=function(e,t){i("ExpressionStatement",e,t)},t.assertExpressionWrapper=function(e,t){i("ExpressionWrapper",e,t)},t.assertFile=function(e,t){i("File",e,t)},t.assertFlow=function(e,t){i("Flow",e,t)},t.assertFlowBaseAnnotation=function(e,t){i("FlowBaseAnnotation",e,t)},t.assertFlowDeclaration=function(e,t){i("FlowDeclaration",e,t)},t.assertFlowPredicate=function(e,t){i("FlowPredicate",e,t)},t.assertFlowType=function(e,t){i("FlowType",e,t)},t.assertFor=function(e,t){i("For",e,t)},t.assertForInStatement=function(e,t){i("ForInStatement",e,t)},t.assertForOfStatement=function(e,t){i("ForOfStatement",e,t)},t.assertForStatement=function(e,t){i("ForStatement",e,t)},t.assertForXStatement=function(e,t){i("ForXStatement",e,t)},t.assertFunction=function(e,t){i("Function",e,t)},t.assertFunctionDeclaration=function(e,t){i("FunctionDeclaration",e,t)},t.assertFunctionExpression=function(e,t){i("FunctionExpression",e,t)},t.assertFunctionParent=function(e,t){i("FunctionParent",e,t)},t.assertFunctionTypeAnnotation=function(e,t){i("FunctionTypeAnnotation",e,t)},t.assertFunctionTypeParam=function(e,t){i("FunctionTypeParam",e,t)},t.assertGenericTypeAnnotation=function(e,t){i("GenericTypeAnnotation",e,t)},t.assertIdentifier=function(e,t){i("Identifier",e,t)},t.assertIfStatement=function(e,t){i("IfStatement",e,t)},t.assertImmutable=function(e,t){i("Immutable",e,t)},t.assertImport=function(e,t){i("Import",e,t)},t.assertImportAttribute=function(e,t){i("ImportAttribute",e,t)},t.assertImportDeclaration=function(e,t){i("ImportDeclaration",e,t)},t.assertImportDefaultSpecifier=function(e,t){i("ImportDefaultSpecifier",e,t)},t.assertImportNamespaceSpecifier=function(e,t){i("ImportNamespaceSpecifier",e,t)},t.assertImportOrExportDeclaration=function(e,t){i("ImportOrExportDeclaration",e,t)},t.assertImportSpecifier=function(e,t){i("ImportSpecifier",e,t)},t.assertIndexedAccessType=function(e,t){i("IndexedAccessType",e,t)},t.assertInferredPredicate=function(e,t){i("InferredPredicate",e,t)},t.assertInterfaceDeclaration=function(e,t){i("InterfaceDeclaration",e,t)},t.assertInterfaceExtends=function(e,t){i("InterfaceExtends",e,t)},t.assertInterfaceTypeAnnotation=function(e,t){i("InterfaceTypeAnnotation",e,t)},t.assertInterpreterDirective=function(e,t){i("InterpreterDirective",e,t)},t.assertIntersectionTypeAnnotation=function(e,t){i("IntersectionTypeAnnotation",e,t)},t.assertJSX=function(e,t){i("JSX",e,t)},t.assertJSXAttribute=function(e,t){i("JSXAttribute",e,t)},t.assertJSXClosingElement=function(e,t){i("JSXClosingElement",e,t)},t.assertJSXClosingFragment=function(e,t){i("JSXClosingFragment",e,t)},t.assertJSXElement=function(e,t){i("JSXElement",e,t)},t.assertJSXEmptyExpression=function(e,t){i("JSXEmptyExpression",e,t)},t.assertJSXExpressionContainer=function(e,t){i("JSXExpressionContainer",e,t)},t.assertJSXFragment=function(e,t){i("JSXFragment",e,t)},t.assertJSXIdentifier=function(e,t){i("JSXIdentifier",e,t)},t.assertJSXMemberExpression=function(e,t){i("JSXMemberExpression",e,t)},t.assertJSXNamespacedName=function(e,t){i("JSXNamespacedName",e,t)},t.assertJSXOpeningElement=function(e,t){i("JSXOpeningElement",e,t)},t.assertJSXOpeningFragment=function(e,t){i("JSXOpeningFragment",e,t)},t.assertJSXSpreadAttribute=function(e,t){i("JSXSpreadAttribute",e,t)},t.assertJSXSpreadChild=function(e,t){i("JSXSpreadChild",e,t)},t.assertJSXText=function(e,t){i("JSXText",e,t)},t.assertLVal=function(e,t){i("LVal",e,t)},t.assertLabeledStatement=function(e,t){i("LabeledStatement",e,t)},t.assertLiteral=function(e,t){i("Literal",e,t)},t.assertLogicalExpression=function(e,t){i("LogicalExpression",e,t)},t.assertLoop=function(e,t){i("Loop",e,t)},t.assertMemberExpression=function(e,t){i("MemberExpression",e,t)},t.assertMetaProperty=function(e,t){i("MetaProperty",e,t)},t.assertMethod=function(e,t){i("Method",e,t)},t.assertMiscellaneous=function(e,t){i("Miscellaneous",e,t)},t.assertMixedTypeAnnotation=function(e,t){i("MixedTypeAnnotation",e,t)},t.assertModuleDeclaration=function(e,t){(0,a.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),i("ModuleDeclaration",e,t)},t.assertModuleExpression=function(e,t){i("ModuleExpression",e,t)},t.assertModuleSpecifier=function(e,t){i("ModuleSpecifier",e,t)},t.assertNewExpression=function(e,t){i("NewExpression",e,t)},t.assertNoop=function(e,t){i("Noop",e,t)},t.assertNullLiteral=function(e,t){i("NullLiteral",e,t)},t.assertNullLiteralTypeAnnotation=function(e,t){i("NullLiteralTypeAnnotation",e,t)},t.assertNullableTypeAnnotation=function(e,t){i("NullableTypeAnnotation",e,t)},t.assertNumberLiteral=function(e,t){(0,a.default)("assertNumberLiteral","assertNumericLiteral"),i("NumberLiteral",e,t)},t.assertNumberLiteralTypeAnnotation=function(e,t){i("NumberLiteralTypeAnnotation",e,t)},t.assertNumberTypeAnnotation=function(e,t){i("NumberTypeAnnotation",e,t)},t.assertNumericLiteral=function(e,t){i("NumericLiteral",e,t)},t.assertObjectExpression=function(e,t){i("ObjectExpression",e,t)},t.assertObjectMember=function(e,t){i("ObjectMember",e,t)},t.assertObjectMethod=function(e,t){i("ObjectMethod",e,t)},t.assertObjectPattern=function(e,t){i("ObjectPattern",e,t)},t.assertObjectProperty=function(e,t){i("ObjectProperty",e,t)},t.assertObjectTypeAnnotation=function(e,t){i("ObjectTypeAnnotation",e,t)},t.assertObjectTypeCallProperty=function(e,t){i("ObjectTypeCallProperty",e,t)},t.assertObjectTypeIndexer=function(e,t){i("ObjectTypeIndexer",e,t)},t.assertObjectTypeInternalSlot=function(e,t){i("ObjectTypeInternalSlot",e,t)},t.assertObjectTypeProperty=function(e,t){i("ObjectTypeProperty",e,t)},t.assertObjectTypeSpreadProperty=function(e,t){i("ObjectTypeSpreadProperty",e,t)},t.assertOpaqueType=function(e,t){i("OpaqueType",e,t)},t.assertOptionalCallExpression=function(e,t){i("OptionalCallExpression",e,t)},t.assertOptionalIndexedAccessType=function(e,t){i("OptionalIndexedAccessType",e,t)},t.assertOptionalMemberExpression=function(e,t){i("OptionalMemberExpression",e,t)},t.assertParenthesizedExpression=function(e,t){i("ParenthesizedExpression",e,t)},t.assertPattern=function(e,t){i("Pattern",e,t)},t.assertPatternLike=function(e,t){i("PatternLike",e,t)},t.assertPipelineBareFunction=function(e,t){i("PipelineBareFunction",e,t)},t.assertPipelinePrimaryTopicReference=function(e,t){i("PipelinePrimaryTopicReference",e,t)},t.assertPipelineTopicExpression=function(e,t){i("PipelineTopicExpression",e,t)},t.assertPlaceholder=function(e,t){i("Placeholder",e,t)},t.assertPrivate=function(e,t){i("Private",e,t)},t.assertPrivateName=function(e,t){i("PrivateName",e,t)},t.assertProgram=function(e,t){i("Program",e,t)},t.assertProperty=function(e,t){i("Property",e,t)},t.assertPureish=function(e,t){i("Pureish",e,t)},t.assertQualifiedTypeIdentifier=function(e,t){i("QualifiedTypeIdentifier",e,t)},t.assertRecordExpression=function(e,t){i("RecordExpression",e,t)},t.assertRegExpLiteral=function(e,t){i("RegExpLiteral",e,t)},t.assertRegexLiteral=function(e,t){(0,a.default)("assertRegexLiteral","assertRegExpLiteral"),i("RegexLiteral",e,t)},t.assertRestElement=function(e,t){i("RestElement",e,t)},t.assertRestProperty=function(e,t){(0,a.default)("assertRestProperty","assertRestElement"),i("RestProperty",e,t)},t.assertReturnStatement=function(e,t){i("ReturnStatement",e,t)},t.assertScopable=function(e,t){i("Scopable",e,t)},t.assertSequenceExpression=function(e,t){i("SequenceExpression",e,t)},t.assertSpreadElement=function(e,t){i("SpreadElement",e,t)},t.assertSpreadProperty=function(e,t){(0,a.default)("assertSpreadProperty","assertSpreadElement"),i("SpreadProperty",e,t)},t.assertStandardized=function(e,t){i("Standardized",e,t)},t.assertStatement=function(e,t){i("Statement",e,t)},t.assertStaticBlock=function(e,t){i("StaticBlock",e,t)},t.assertStringLiteral=function(e,t){i("StringLiteral",e,t)},t.assertStringLiteralTypeAnnotation=function(e,t){i("StringLiteralTypeAnnotation",e,t)},t.assertStringTypeAnnotation=function(e,t){i("StringTypeAnnotation",e,t)},t.assertSuper=function(e,t){i("Super",e,t)},t.assertSwitchCase=function(e,t){i("SwitchCase",e,t)},t.assertSwitchStatement=function(e,t){i("SwitchStatement",e,t)},t.assertSymbolTypeAnnotation=function(e,t){i("SymbolTypeAnnotation",e,t)},t.assertTSAnyKeyword=function(e,t){i("TSAnyKeyword",e,t)},t.assertTSArrayType=function(e,t){i("TSArrayType",e,t)},t.assertTSAsExpression=function(e,t){i("TSAsExpression",e,t)},t.assertTSBaseType=function(e,t){i("TSBaseType",e,t)},t.assertTSBigIntKeyword=function(e,t){i("TSBigIntKeyword",e,t)},t.assertTSBooleanKeyword=function(e,t){i("TSBooleanKeyword",e,t)},t.assertTSCallSignatureDeclaration=function(e,t){i("TSCallSignatureDeclaration",e,t)},t.assertTSConditionalType=function(e,t){i("TSConditionalType",e,t)},t.assertTSConstructSignatureDeclaration=function(e,t){i("TSConstructSignatureDeclaration",e,t)},t.assertTSConstructorType=function(e,t){i("TSConstructorType",e,t)},t.assertTSDeclareFunction=function(e,t){i("TSDeclareFunction",e,t)},t.assertTSDeclareMethod=function(e,t){i("TSDeclareMethod",e,t)},t.assertTSEntityName=function(e,t){i("TSEntityName",e,t)},t.assertTSEnumDeclaration=function(e,t){i("TSEnumDeclaration",e,t)},t.assertTSEnumMember=function(e,t){i("TSEnumMember",e,t)},t.assertTSExportAssignment=function(e,t){i("TSExportAssignment",e,t)},t.assertTSExpressionWithTypeArguments=function(e,t){i("TSExpressionWithTypeArguments",e,t)},t.assertTSExternalModuleReference=function(e,t){i("TSExternalModuleReference",e,t)},t.assertTSFunctionType=function(e,t){i("TSFunctionType",e,t)},t.assertTSImportEqualsDeclaration=function(e,t){i("TSImportEqualsDeclaration",e,t)},t.assertTSImportType=function(e,t){i("TSImportType",e,t)},t.assertTSIndexSignature=function(e,t){i("TSIndexSignature",e,t)},t.assertTSIndexedAccessType=function(e,t){i("TSIndexedAccessType",e,t)},t.assertTSInferType=function(e,t){i("TSInferType",e,t)},t.assertTSInstantiationExpression=function(e,t){i("TSInstantiationExpression",e,t)},t.assertTSInterfaceBody=function(e,t){i("TSInterfaceBody",e,t)},t.assertTSInterfaceDeclaration=function(e,t){i("TSInterfaceDeclaration",e,t)},t.assertTSIntersectionType=function(e,t){i("TSIntersectionType",e,t)},t.assertTSIntrinsicKeyword=function(e,t){i("TSIntrinsicKeyword",e,t)},t.assertTSLiteralType=function(e,t){i("TSLiteralType",e,t)},t.assertTSMappedType=function(e,t){i("TSMappedType",e,t)},t.assertTSMethodSignature=function(e,t){i("TSMethodSignature",e,t)},t.assertTSModuleBlock=function(e,t){i("TSModuleBlock",e,t)},t.assertTSModuleDeclaration=function(e,t){i("TSModuleDeclaration",e,t)},t.assertTSNamedTupleMember=function(e,t){i("TSNamedTupleMember",e,t)},t.assertTSNamespaceExportDeclaration=function(e,t){i("TSNamespaceExportDeclaration",e,t)},t.assertTSNeverKeyword=function(e,t){i("TSNeverKeyword",e,t)},t.assertTSNonNullExpression=function(e,t){i("TSNonNullExpression",e,t)},t.assertTSNullKeyword=function(e,t){i("TSNullKeyword",e,t)},t.assertTSNumberKeyword=function(e,t){i("TSNumberKeyword",e,t)},t.assertTSObjectKeyword=function(e,t){i("TSObjectKeyword",e,t)},t.assertTSOptionalType=function(e,t){i("TSOptionalType",e,t)},t.assertTSParameterProperty=function(e,t){i("TSParameterProperty",e,t)},t.assertTSParenthesizedType=function(e,t){i("TSParenthesizedType",e,t)},t.assertTSPropertySignature=function(e,t){i("TSPropertySignature",e,t)},t.assertTSQualifiedName=function(e,t){i("TSQualifiedName",e,t)},t.assertTSRestType=function(e,t){i("TSRestType",e,t)},t.assertTSSatisfiesExpression=function(e,t){i("TSSatisfiesExpression",e,t)},t.assertTSStringKeyword=function(e,t){i("TSStringKeyword",e,t)},t.assertTSSymbolKeyword=function(e,t){i("TSSymbolKeyword",e,t)},t.assertTSThisType=function(e,t){i("TSThisType",e,t)},t.assertTSTupleType=function(e,t){i("TSTupleType",e,t)},t.assertTSType=function(e,t){i("TSType",e,t)},t.assertTSTypeAliasDeclaration=function(e,t){i("TSTypeAliasDeclaration",e,t)},t.assertTSTypeAnnotation=function(e,t){i("TSTypeAnnotation",e,t)},t.assertTSTypeAssertion=function(e,t){i("TSTypeAssertion",e,t)},t.assertTSTypeElement=function(e,t){i("TSTypeElement",e,t)},t.assertTSTypeLiteral=function(e,t){i("TSTypeLiteral",e,t)},t.assertTSTypeOperator=function(e,t){i("TSTypeOperator",e,t)},t.assertTSTypeParameter=function(e,t){i("TSTypeParameter",e,t)},t.assertTSTypeParameterDeclaration=function(e,t){i("TSTypeParameterDeclaration",e,t)},t.assertTSTypeParameterInstantiation=function(e,t){i("TSTypeParameterInstantiation",e,t)},t.assertTSTypePredicate=function(e,t){i("TSTypePredicate",e,t)},t.assertTSTypeQuery=function(e,t){i("TSTypeQuery",e,t)},t.assertTSTypeReference=function(e,t){i("TSTypeReference",e,t)},t.assertTSUndefinedKeyword=function(e,t){i("TSUndefinedKeyword",e,t)},t.assertTSUnionType=function(e,t){i("TSUnionType",e,t)},t.assertTSUnknownKeyword=function(e,t){i("TSUnknownKeyword",e,t)},t.assertTSVoidKeyword=function(e,t){i("TSVoidKeyword",e,t)},t.assertTaggedTemplateExpression=function(e,t){i("TaggedTemplateExpression",e,t)},t.assertTemplateElement=function(e,t){i("TemplateElement",e,t)},t.assertTemplateLiteral=function(e,t){i("TemplateLiteral",e,t)},t.assertTerminatorless=function(e,t){i("Terminatorless",e,t)},t.assertThisExpression=function(e,t){i("ThisExpression",e,t)},t.assertThisTypeAnnotation=function(e,t){i("ThisTypeAnnotation",e,t)},t.assertThrowStatement=function(e,t){i("ThrowStatement",e,t)},t.assertTopicReference=function(e,t){i("TopicReference",e,t)},t.assertTryStatement=function(e,t){i("TryStatement",e,t)},t.assertTupleExpression=function(e,t){i("TupleExpression",e,t)},t.assertTupleTypeAnnotation=function(e,t){i("TupleTypeAnnotation",e,t)},t.assertTypeAlias=function(e,t){i("TypeAlias",e,t)},t.assertTypeAnnotation=function(e,t){i("TypeAnnotation",e,t)},t.assertTypeCastExpression=function(e,t){i("TypeCastExpression",e,t)},t.assertTypeParameter=function(e,t){i("TypeParameter",e,t)},t.assertTypeParameterDeclaration=function(e,t){i("TypeParameterDeclaration",e,t)},t.assertTypeParameterInstantiation=function(e,t){i("TypeParameterInstantiation",e,t)},t.assertTypeScript=function(e,t){i("TypeScript",e,t)},t.assertTypeofTypeAnnotation=function(e,t){i("TypeofTypeAnnotation",e,t)},t.assertUnaryExpression=function(e,t){i("UnaryExpression",e,t)},t.assertUnaryLike=function(e,t){i("UnaryLike",e,t)},t.assertUnionTypeAnnotation=function(e,t){i("UnionTypeAnnotation",e,t)},t.assertUpdateExpression=function(e,t){i("UpdateExpression",e,t)},t.assertUserWhitespacable=function(e,t){i("UserWhitespacable",e,t)},t.assertV8IntrinsicIdentifier=function(e,t){i("V8IntrinsicIdentifier",e,t)},t.assertVariableDeclaration=function(e,t){i("VariableDeclaration",e,t)},t.assertVariableDeclarator=function(e,t){i("VariableDeclarator",e,t)},t.assertVariance=function(e,t){i("Variance",e,t)},t.assertVoidTypeAnnotation=function(e,t){i("VoidTypeAnnotation",e,t)},t.assertWhile=function(e,t){i("While",e,t)},t.assertWhileStatement=function(e,t){i("WhileStatement",e,t)},t.assertWithStatement=function(e,t){i("WithStatement",e,t)},t.assertYieldExpression=function(e,t){i("YieldExpression",e,t)};var r=n(23443),a=n(89990);function i(e,t,n){if(!(0,r.default)(e,t,n))throw new Error(`Expected type "${e}" with option ${JSON.stringify(n)}, but instead got "${t.type}".`)}},61904:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,a.default)(e);return 1===t.length?t[0]:(0,r.unionTypeAnnotation)(t)};var r=n(797),a=n(76052)},92927:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(797);t.default=function(e){switch(e){case"string":return(0,r.stringTypeAnnotation)();case"number":return(0,r.numberTypeAnnotation)();case"undefined":return(0,r.voidTypeAnnotation)();case"boolean":return(0,r.booleanTypeAnnotation)();case"function":return(0,r.genericTypeAnnotation)((0,r.identifier)("Function"));case"object":return(0,r.genericTypeAnnotation)((0,r.identifier)("Object"));case"symbol":return(0,r.genericTypeAnnotation)((0,r.identifier)("Symbol"));case"bigint":return(0,r.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+e)}},797:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anyTypeAnnotation=function(){return{type:"AnyTypeAnnotation"}},t.argumentPlaceholder=function(){return{type:"ArgumentPlaceholder"}},t.arrayExpression=function(e=[]){return(0,r.default)({type:"ArrayExpression",elements:e})},t.arrayPattern=function(e){return(0,r.default)({type:"ArrayPattern",elements:e})},t.arrayTypeAnnotation=function(e){return(0,r.default)({type:"ArrayTypeAnnotation",elementType:e})},t.arrowFunctionExpression=function(e,t,n=!1){return(0,r.default)({type:"ArrowFunctionExpression",params:e,body:t,async:n,expression:null})},t.assignmentExpression=function(e,t,n){return(0,r.default)({type:"AssignmentExpression",operator:e,left:t,right:n})},t.assignmentPattern=function(e,t){return(0,r.default)({type:"AssignmentPattern",left:e,right:t})},t.awaitExpression=function(e){return(0,r.default)({type:"AwaitExpression",argument:e})},t.bigIntLiteral=function(e){return(0,r.default)({type:"BigIntLiteral",value:e})},t.binaryExpression=function(e,t,n){return(0,r.default)({type:"BinaryExpression",operator:e,left:t,right:n})},t.bindExpression=function(e,t){return(0,r.default)({type:"BindExpression",object:e,callee:t})},t.blockStatement=function(e,t=[]){return(0,r.default)({type:"BlockStatement",body:e,directives:t})},t.booleanLiteral=function(e){return(0,r.default)({type:"BooleanLiteral",value:e})},t.booleanLiteralTypeAnnotation=function(e){return(0,r.default)({type:"BooleanLiteralTypeAnnotation",value:e})},t.booleanTypeAnnotation=function(){return{type:"BooleanTypeAnnotation"}},t.breakStatement=function(e=null){return(0,r.default)({type:"BreakStatement",label:e})},t.callExpression=function(e,t){return(0,r.default)({type:"CallExpression",callee:e,arguments:t})},t.catchClause=function(e=null,t){return(0,r.default)({type:"CatchClause",param:e,body:t})},t.classAccessorProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.classBody=function(e){return(0,r.default)({type:"ClassBody",body:e})},t.classDeclaration=function(e,t=null,n,a=null){return(0,r.default)({type:"ClassDeclaration",id:e,superClass:t,body:n,decorators:a})},t.classExpression=function(e=null,t=null,n,a=null){return(0,r.default)({type:"ClassExpression",id:e,superClass:t,body:n,decorators:a})},t.classImplements=function(e,t=null){return(0,r.default)({type:"ClassImplements",id:e,typeParameters:t})},t.classMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1,l=!1){return(0,r.default)({type:"ClassMethod",kind:e,key:t,params:n,body:a,computed:i,static:s,generator:o,async:l})},t.classPrivateMethod=function(e="method",t,n,a,i=!1){return(0,r.default)({type:"ClassPrivateMethod",kind:e,key:t,params:n,body:a,static:i})},t.classPrivateProperty=function(e,t=null,n=null,a=!1){return(0,r.default)({type:"ClassPrivateProperty",key:e,value:t,decorators:n,static:a})},t.classProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.conditionalExpression=function(e,t,n){return(0,r.default)({type:"ConditionalExpression",test:e,consequent:t,alternate:n})},t.continueStatement=function(e=null){return(0,r.default)({type:"ContinueStatement",label:e})},t.debuggerStatement=function(){return{type:"DebuggerStatement"}},t.decimalLiteral=function(e){return(0,r.default)({type:"DecimalLiteral",value:e})},t.declareClass=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareClass",id:e,typeParameters:t,extends:n,body:a})},t.declareExportAllDeclaration=function(e){return(0,r.default)({type:"DeclareExportAllDeclaration",source:e})},t.declareExportDeclaration=function(e=null,t=null,n=null){return(0,r.default)({type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:n})},t.declareFunction=function(e){return(0,r.default)({type:"DeclareFunction",id:e})},t.declareInterface=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareInterface",id:e,typeParameters:t,extends:n,body:a})},t.declareModule=function(e,t,n=null){return(0,r.default)({type:"DeclareModule",id:e,body:t,kind:n})},t.declareModuleExports=function(e){return(0,r.default)({type:"DeclareModuleExports",typeAnnotation:e})},t.declareOpaqueType=function(e,t=null,n=null){return(0,r.default)({type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:n})},t.declareTypeAlias=function(e,t=null,n){return(0,r.default)({type:"DeclareTypeAlias",id:e,typeParameters:t,right:n})},t.declareVariable=function(e){return(0,r.default)({type:"DeclareVariable",id:e})},t.declaredPredicate=function(e){return(0,r.default)({type:"DeclaredPredicate",value:e})},t.decorator=function(e){return(0,r.default)({type:"Decorator",expression:e})},t.directive=function(e){return(0,r.default)({type:"Directive",value:e})},t.directiveLiteral=function(e){return(0,r.default)({type:"DirectiveLiteral",value:e})},t.doExpression=function(e,t=!1){return(0,r.default)({type:"DoExpression",body:e,async:t})},t.doWhileStatement=function(e,t){return(0,r.default)({type:"DoWhileStatement",test:e,body:t})},t.emptyStatement=function(){return{type:"EmptyStatement"}},t.emptyTypeAnnotation=function(){return{type:"EmptyTypeAnnotation"}},t.enumBooleanBody=function(e){return(0,r.default)({type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumBooleanMember=function(e){return(0,r.default)({type:"EnumBooleanMember",id:e,init:null})},t.enumDeclaration=function(e,t){return(0,r.default)({type:"EnumDeclaration",id:e,body:t})},t.enumDefaultedMember=function(e){return(0,r.default)({type:"EnumDefaultedMember",id:e})},t.enumNumberBody=function(e){return(0,r.default)({type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumNumberMember=function(e,t){return(0,r.default)({type:"EnumNumberMember",id:e,init:t})},t.enumStringBody=function(e){return(0,r.default)({type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumStringMember=function(e,t){return(0,r.default)({type:"EnumStringMember",id:e,init:t})},t.enumSymbolBody=function(e){return(0,r.default)({type:"EnumSymbolBody",members:e,hasUnknownMembers:null})},t.existsTypeAnnotation=function(){return{type:"ExistsTypeAnnotation"}},t.exportAllDeclaration=function(e){return(0,r.default)({type:"ExportAllDeclaration",source:e})},t.exportDefaultDeclaration=function(e){return(0,r.default)({type:"ExportDefaultDeclaration",declaration:e})},t.exportDefaultSpecifier=function(e){return(0,r.default)({type:"ExportDefaultSpecifier",exported:e})},t.exportNamedDeclaration=function(e=null,t=[],n=null){return(0,r.default)({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n})},t.exportNamespaceSpecifier=function(e){return(0,r.default)({type:"ExportNamespaceSpecifier",exported:e})},t.exportSpecifier=function(e,t){return(0,r.default)({type:"ExportSpecifier",local:e,exported:t})},t.expressionStatement=function(e){return(0,r.default)({type:"ExpressionStatement",expression:e})},t.file=function(e,t=null,n=null){return(0,r.default)({type:"File",program:e,comments:t,tokens:n})},t.forInStatement=function(e,t,n){return(0,r.default)({type:"ForInStatement",left:e,right:t,body:n})},t.forOfStatement=function(e,t,n,a=!1){return(0,r.default)({type:"ForOfStatement",left:e,right:t,body:n,await:a})},t.forStatement=function(e=null,t=null,n=null,a){return(0,r.default)({type:"ForStatement",init:e,test:t,update:n,body:a})},t.functionDeclaration=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionDeclaration",id:e,params:t,body:n,generator:a,async:i})},t.functionExpression=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionExpression",id:e,params:t,body:n,generator:a,async:i})},t.functionTypeAnnotation=function(e=null,t,n=null,a){return(0,r.default)({type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:n,returnType:a})},t.functionTypeParam=function(e=null,t){return(0,r.default)({type:"FunctionTypeParam",name:e,typeAnnotation:t})},t.genericTypeAnnotation=function(e,t=null){return(0,r.default)({type:"GenericTypeAnnotation",id:e,typeParameters:t})},t.identifier=function(e){return(0,r.default)({type:"Identifier",name:e})},t.ifStatement=function(e,t,n=null){return(0,r.default)({type:"IfStatement",test:e,consequent:t,alternate:n})},t.import=function(){return{type:"Import"}},t.importAttribute=function(e,t){return(0,r.default)({type:"ImportAttribute",key:e,value:t})},t.importDeclaration=function(e,t){return(0,r.default)({type:"ImportDeclaration",specifiers:e,source:t})},t.importDefaultSpecifier=function(e){return(0,r.default)({type:"ImportDefaultSpecifier",local:e})},t.importNamespaceSpecifier=function(e){return(0,r.default)({type:"ImportNamespaceSpecifier",local:e})},t.importSpecifier=function(e,t){return(0,r.default)({type:"ImportSpecifier",local:e,imported:t})},t.indexedAccessType=function(e,t){return(0,r.default)({type:"IndexedAccessType",objectType:e,indexType:t})},t.inferredPredicate=function(){return{type:"InferredPredicate"}},t.interfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"InterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.interfaceExtends=function(e,t=null){return(0,r.default)({type:"InterfaceExtends",id:e,typeParameters:t})},t.interfaceTypeAnnotation=function(e=null,t){return(0,r.default)({type:"InterfaceTypeAnnotation",extends:e,body:t})},t.interpreterDirective=function(e){return(0,r.default)({type:"InterpreterDirective",value:e})},t.intersectionTypeAnnotation=function(e){return(0,r.default)({type:"IntersectionTypeAnnotation",types:e})},t.jSXAttribute=t.jsxAttribute=function(e,t=null){return(0,r.default)({type:"JSXAttribute",name:e,value:t})},t.jSXClosingElement=t.jsxClosingElement=function(e){return(0,r.default)({type:"JSXClosingElement",name:e})},t.jSXClosingFragment=t.jsxClosingFragment=function(){return{type:"JSXClosingFragment"}},t.jSXElement=t.jsxElement=function(e,t=null,n,a=null){return(0,r.default)({type:"JSXElement",openingElement:e,closingElement:t,children:n,selfClosing:a})},t.jSXEmptyExpression=t.jsxEmptyExpression=function(){return{type:"JSXEmptyExpression"}},t.jSXExpressionContainer=t.jsxExpressionContainer=function(e){return(0,r.default)({type:"JSXExpressionContainer",expression:e})},t.jSXFragment=t.jsxFragment=function(e,t,n){return(0,r.default)({type:"JSXFragment",openingFragment:e,closingFragment:t,children:n})},t.jSXIdentifier=t.jsxIdentifier=function(e){return(0,r.default)({type:"JSXIdentifier",name:e})},t.jSXMemberExpression=t.jsxMemberExpression=function(e,t){return(0,r.default)({type:"JSXMemberExpression",object:e,property:t})},t.jSXNamespacedName=t.jsxNamespacedName=function(e,t){return(0,r.default)({type:"JSXNamespacedName",namespace:e,name:t})},t.jSXOpeningElement=t.jsxOpeningElement=function(e,t,n=!1){return(0,r.default)({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n})},t.jSXOpeningFragment=t.jsxOpeningFragment=function(){return{type:"JSXOpeningFragment"}},t.jSXSpreadAttribute=t.jsxSpreadAttribute=function(e){return(0,r.default)({type:"JSXSpreadAttribute",argument:e})},t.jSXSpreadChild=t.jsxSpreadChild=function(e){return(0,r.default)({type:"JSXSpreadChild",expression:e})},t.jSXText=t.jsxText=function(e){return(0,r.default)({type:"JSXText",value:e})},t.labeledStatement=function(e,t){return(0,r.default)({type:"LabeledStatement",label:e,body:t})},t.logicalExpression=function(e,t,n){return(0,r.default)({type:"LogicalExpression",operator:e,left:t,right:n})},t.memberExpression=function(e,t,n=!1,a=null){return(0,r.default)({type:"MemberExpression",object:e,property:t,computed:n,optional:a})},t.metaProperty=function(e,t){return(0,r.default)({type:"MetaProperty",meta:e,property:t})},t.mixedTypeAnnotation=function(){return{type:"MixedTypeAnnotation"}},t.moduleExpression=function(e){return(0,r.default)({type:"ModuleExpression",body:e})},t.newExpression=function(e,t){return(0,r.default)({type:"NewExpression",callee:e,arguments:t})},t.noop=function(){return{type:"Noop"}},t.nullLiteral=function(){return{type:"NullLiteral"}},t.nullLiteralTypeAnnotation=function(){return{type:"NullLiteralTypeAnnotation"}},t.nullableTypeAnnotation=function(e){return(0,r.default)({type:"NullableTypeAnnotation",typeAnnotation:e})},t.numberLiteral=function(e){return(0,a.default)("NumberLiteral","NumericLiteral","The node type "),i(e)},t.numberLiteralTypeAnnotation=function(e){return(0,r.default)({type:"NumberLiteralTypeAnnotation",value:e})},t.numberTypeAnnotation=function(){return{type:"NumberTypeAnnotation"}},t.numericLiteral=i,t.objectExpression=function(e){return(0,r.default)({type:"ObjectExpression",properties:e})},t.objectMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1){return(0,r.default)({type:"ObjectMethod",kind:e,key:t,params:n,body:a,computed:i,generator:s,async:o})},t.objectPattern=function(e){return(0,r.default)({type:"ObjectPattern",properties:e})},t.objectProperty=function(e,t,n=!1,a=!1,i=null){return(0,r.default)({type:"ObjectProperty",key:e,value:t,computed:n,shorthand:a,decorators:i})},t.objectTypeAnnotation=function(e,t=[],n=[],a=[],i=!1){return(0,r.default)({type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:n,internalSlots:a,exact:i})},t.objectTypeCallProperty=function(e){return(0,r.default)({type:"ObjectTypeCallProperty",value:e,static:null})},t.objectTypeIndexer=function(e=null,t,n,a=null){return(0,r.default)({type:"ObjectTypeIndexer",id:e,key:t,value:n,variance:a,static:null})},t.objectTypeInternalSlot=function(e,t,n,a,i){return(0,r.default)({type:"ObjectTypeInternalSlot",id:e,value:t,optional:n,static:a,method:i})},t.objectTypeProperty=function(e,t,n=null){return(0,r.default)({type:"ObjectTypeProperty",key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null})},t.objectTypeSpreadProperty=function(e){return(0,r.default)({type:"ObjectTypeSpreadProperty",argument:e})},t.opaqueType=function(e,t=null,n=null,a){return(0,r.default)({type:"OpaqueType",id:e,typeParameters:t,supertype:n,impltype:a})},t.optionalCallExpression=function(e,t,n){return(0,r.default)({type:"OptionalCallExpression",callee:e,arguments:t,optional:n})},t.optionalIndexedAccessType=function(e,t){return(0,r.default)({type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null})},t.optionalMemberExpression=function(e,t,n=!1,a){return(0,r.default)({type:"OptionalMemberExpression",object:e,property:t,computed:n,optional:a})},t.parenthesizedExpression=function(e){return(0,r.default)({type:"ParenthesizedExpression",expression:e})},t.pipelineBareFunction=function(e){return(0,r.default)({type:"PipelineBareFunction",callee:e})},t.pipelinePrimaryTopicReference=function(){return{type:"PipelinePrimaryTopicReference"}},t.pipelineTopicExpression=function(e){return(0,r.default)({type:"PipelineTopicExpression",expression:e})},t.placeholder=function(e,t){return(0,r.default)({type:"Placeholder",expectedNode:e,name:t})},t.privateName=function(e){return(0,r.default)({type:"PrivateName",id:e})},t.program=function(e,t=[],n="script",a=null){return(0,r.default)({type:"Program",body:e,directives:t,sourceType:n,interpreter:a,sourceFile:null})},t.qualifiedTypeIdentifier=function(e,t){return(0,r.default)({type:"QualifiedTypeIdentifier",id:e,qualification:t})},t.recordExpression=function(e){return(0,r.default)({type:"RecordExpression",properties:e})},t.regExpLiteral=s,t.regexLiteral=function(e,t=""){return(0,a.default)("RegexLiteral","RegExpLiteral","The node type "),s(e,t)},t.restElement=o,t.restProperty=function(e){return(0,a.default)("RestProperty","RestElement","The node type "),o(e)},t.returnStatement=function(e=null){return(0,r.default)({type:"ReturnStatement",argument:e})},t.sequenceExpression=function(e){return(0,r.default)({type:"SequenceExpression",expressions:e})},t.spreadElement=l,t.spreadProperty=function(e){return(0,a.default)("SpreadProperty","SpreadElement","The node type "),l(e)},t.staticBlock=function(e){return(0,r.default)({type:"StaticBlock",body:e})},t.stringLiteral=function(e){return(0,r.default)({type:"StringLiteral",value:e})},t.stringLiteralTypeAnnotation=function(e){return(0,r.default)({type:"StringLiteralTypeAnnotation",value:e})},t.stringTypeAnnotation=function(){return{type:"StringTypeAnnotation"}},t.super=function(){return{type:"Super"}},t.switchCase=function(e=null,t){return(0,r.default)({type:"SwitchCase",test:e,consequent:t})},t.switchStatement=function(e,t){return(0,r.default)({type:"SwitchStatement",discriminant:e,cases:t})},t.symbolTypeAnnotation=function(){return{type:"SymbolTypeAnnotation"}},t.taggedTemplateExpression=function(e,t){return(0,r.default)({type:"TaggedTemplateExpression",tag:e,quasi:t})},t.templateElement=function(e,t=!1){return(0,r.default)({type:"TemplateElement",value:e,tail:t})},t.templateLiteral=function(e,t){return(0,r.default)({type:"TemplateLiteral",quasis:e,expressions:t})},t.thisExpression=function(){return{type:"ThisExpression"}},t.thisTypeAnnotation=function(){return{type:"ThisTypeAnnotation"}},t.throwStatement=function(e){return(0,r.default)({type:"ThrowStatement",argument:e})},t.topicReference=function(){return{type:"TopicReference"}},t.tryStatement=function(e,t=null,n=null){return(0,r.default)({type:"TryStatement",block:e,handler:t,finalizer:n})},t.tSAnyKeyword=t.tsAnyKeyword=function(){return{type:"TSAnyKeyword"}},t.tSArrayType=t.tsArrayType=function(e){return(0,r.default)({type:"TSArrayType",elementType:e})},t.tSAsExpression=t.tsAsExpression=function(e,t){return(0,r.default)({type:"TSAsExpression",expression:e,typeAnnotation:t})},t.tSBigIntKeyword=t.tsBigIntKeyword=function(){return{type:"TSBigIntKeyword"}},t.tSBooleanKeyword=t.tsBooleanKeyword=function(){return{type:"TSBooleanKeyword"}},t.tSCallSignatureDeclaration=t.tsCallSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConditionalType=t.tsConditionalType=function(e,t,n,a){return(0,r.default)({type:"TSConditionalType",checkType:e,extendsType:t,trueType:n,falseType:a})},t.tSConstructSignatureDeclaration=t.tsConstructSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConstructorType=t.tsConstructorType=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSDeclareFunction=t.tsDeclareFunction=function(e=null,t=null,n,a=null){return(0,r.default)({type:"TSDeclareFunction",id:e,typeParameters:t,params:n,returnType:a})},t.tSDeclareMethod=t.tsDeclareMethod=function(e=null,t,n=null,a,i=null){return(0,r.default)({type:"TSDeclareMethod",decorators:e,key:t,typeParameters:n,params:a,returnType:i})},t.tSEnumDeclaration=t.tsEnumDeclaration=function(e,t){return(0,r.default)({type:"TSEnumDeclaration",id:e,members:t})},t.tSEnumMember=t.tsEnumMember=function(e,t=null){return(0,r.default)({type:"TSEnumMember",id:e,initializer:t})},t.tSExportAssignment=t.tsExportAssignment=function(e){return(0,r.default)({type:"TSExportAssignment",expression:e})},t.tSExpressionWithTypeArguments=t.tsExpressionWithTypeArguments=function(e,t=null){return(0,r.default)({type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t})},t.tSExternalModuleReference=t.tsExternalModuleReference=function(e){return(0,r.default)({type:"TSExternalModuleReference",expression:e})},t.tSFunctionType=t.tsFunctionType=function(e=null,t,n=null){return(0,r.default)({type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSImportEqualsDeclaration=t.tsImportEqualsDeclaration=function(e,t){return(0,r.default)({type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null})},t.tSImportType=t.tsImportType=function(e,t=null,n=null){return(0,r.default)({type:"TSImportType",argument:e,qualifier:t,typeParameters:n})},t.tSIndexSignature=t.tsIndexSignature=function(e,t=null){return(0,r.default)({type:"TSIndexSignature",parameters:e,typeAnnotation:t})},t.tSIndexedAccessType=t.tsIndexedAccessType=function(e,t){return(0,r.default)({type:"TSIndexedAccessType",objectType:e,indexType:t})},t.tSInferType=t.tsInferType=function(e){return(0,r.default)({type:"TSInferType",typeParameter:e})},t.tSInstantiationExpression=t.tsInstantiationExpression=function(e,t=null){return(0,r.default)({type:"TSInstantiationExpression",expression:e,typeParameters:t})},t.tSInterfaceBody=t.tsInterfaceBody=function(e){return(0,r.default)({type:"TSInterfaceBody",body:e})},t.tSInterfaceDeclaration=t.tsInterfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.tSIntersectionType=t.tsIntersectionType=function(e){return(0,r.default)({type:"TSIntersectionType",types:e})},t.tSIntrinsicKeyword=t.tsIntrinsicKeyword=function(){return{type:"TSIntrinsicKeyword"}},t.tSLiteralType=t.tsLiteralType=function(e){return(0,r.default)({type:"TSLiteralType",literal:e})},t.tSMappedType=t.tsMappedType=function(e,t=null,n=null){return(0,r.default)({type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:n})},t.tSMethodSignature=t.tsMethodSignature=function(e,t=null,n,a=null){return(0,r.default)({type:"TSMethodSignature",key:e,typeParameters:t,parameters:n,typeAnnotation:a,kind:null})},t.tSModuleBlock=t.tsModuleBlock=function(e){return(0,r.default)({type:"TSModuleBlock",body:e})},t.tSModuleDeclaration=t.tsModuleDeclaration=function(e,t){return(0,r.default)({type:"TSModuleDeclaration",id:e,body:t})},t.tSNamedTupleMember=t.tsNamedTupleMember=function(e,t,n=!1){return(0,r.default)({type:"TSNamedTupleMember",label:e,elementType:t,optional:n})},t.tSNamespaceExportDeclaration=t.tsNamespaceExportDeclaration=function(e){return(0,r.default)({type:"TSNamespaceExportDeclaration",id:e})},t.tSNeverKeyword=t.tsNeverKeyword=function(){return{type:"TSNeverKeyword"}},t.tSNonNullExpression=t.tsNonNullExpression=function(e){return(0,r.default)({type:"TSNonNullExpression",expression:e})},t.tSNullKeyword=t.tsNullKeyword=function(){return{type:"TSNullKeyword"}},t.tSNumberKeyword=t.tsNumberKeyword=function(){return{type:"TSNumberKeyword"}},t.tSObjectKeyword=t.tsObjectKeyword=function(){return{type:"TSObjectKeyword"}},t.tSOptionalType=t.tsOptionalType=function(e){return(0,r.default)({type:"TSOptionalType",typeAnnotation:e})},t.tSParameterProperty=t.tsParameterProperty=function(e){return(0,r.default)({type:"TSParameterProperty",parameter:e})},t.tSParenthesizedType=t.tsParenthesizedType=function(e){return(0,r.default)({type:"TSParenthesizedType",typeAnnotation:e})},t.tSPropertySignature=t.tsPropertySignature=function(e,t=null,n=null){return(0,r.default)({type:"TSPropertySignature",key:e,typeAnnotation:t,initializer:n,kind:null})},t.tSQualifiedName=t.tsQualifiedName=function(e,t){return(0,r.default)({type:"TSQualifiedName",left:e,right:t})},t.tSRestType=t.tsRestType=function(e){return(0,r.default)({type:"TSRestType",typeAnnotation:e})},t.tSSatisfiesExpression=t.tsSatisfiesExpression=function(e,t){return(0,r.default)({type:"TSSatisfiesExpression",expression:e,typeAnnotation:t})},t.tSStringKeyword=t.tsStringKeyword=function(){return{type:"TSStringKeyword"}},t.tSSymbolKeyword=t.tsSymbolKeyword=function(){return{type:"TSSymbolKeyword"}},t.tSThisType=t.tsThisType=function(){return{type:"TSThisType"}},t.tSTupleType=t.tsTupleType=function(e){return(0,r.default)({type:"TSTupleType",elementTypes:e})},t.tSTypeAliasDeclaration=t.tsTypeAliasDeclaration=function(e,t=null,n){return(0,r.default)({type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:n})},t.tSTypeAnnotation=t.tsTypeAnnotation=function(e){return(0,r.default)({type:"TSTypeAnnotation",typeAnnotation:e})},t.tSTypeAssertion=t.tsTypeAssertion=function(e,t){return(0,r.default)({type:"TSTypeAssertion",typeAnnotation:e,expression:t})},t.tSTypeLiteral=t.tsTypeLiteral=function(e){return(0,r.default)({type:"TSTypeLiteral",members:e})},t.tSTypeOperator=t.tsTypeOperator=function(e){return(0,r.default)({type:"TSTypeOperator",typeAnnotation:e,operator:null})},t.tSTypeParameter=t.tsTypeParameter=function(e=null,t=null,n){return(0,r.default)({type:"TSTypeParameter",constraint:e,default:t,name:n})},t.tSTypeParameterDeclaration=t.tsTypeParameterDeclaration=function(e){return(0,r.default)({type:"TSTypeParameterDeclaration",params:e})},t.tSTypeParameterInstantiation=t.tsTypeParameterInstantiation=function(e){return(0,r.default)({type:"TSTypeParameterInstantiation",params:e})},t.tSTypePredicate=t.tsTypePredicate=function(e,t=null,n=null){return(0,r.default)({type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:n})},t.tSTypeQuery=t.tsTypeQuery=function(e,t=null){return(0,r.default)({type:"TSTypeQuery",exprName:e,typeParameters:t})},t.tSTypeReference=t.tsTypeReference=function(e,t=null){return(0,r.default)({type:"TSTypeReference",typeName:e,typeParameters:t})},t.tSUndefinedKeyword=t.tsUndefinedKeyword=function(){return{type:"TSUndefinedKeyword"}},t.tSUnionType=t.tsUnionType=function(e){return(0,r.default)({type:"TSUnionType",types:e})},t.tSUnknownKeyword=t.tsUnknownKeyword=function(){return{type:"TSUnknownKeyword"}},t.tSVoidKeyword=t.tsVoidKeyword=function(){return{type:"TSVoidKeyword"}},t.tupleExpression=function(e=[]){return(0,r.default)({type:"TupleExpression",elements:e})},t.tupleTypeAnnotation=function(e){return(0,r.default)({type:"TupleTypeAnnotation",types:e})},t.typeAlias=function(e,t=null,n){return(0,r.default)({type:"TypeAlias",id:e,typeParameters:t,right:n})},t.typeAnnotation=function(e){return(0,r.default)({type:"TypeAnnotation",typeAnnotation:e})},t.typeCastExpression=function(e,t){return(0,r.default)({type:"TypeCastExpression",expression:e,typeAnnotation:t})},t.typeParameter=function(e=null,t=null,n=null){return(0,r.default)({type:"TypeParameter",bound:e,default:t,variance:n,name:null})},t.typeParameterDeclaration=function(e){return(0,r.default)({type:"TypeParameterDeclaration",params:e})},t.typeParameterInstantiation=function(e){return(0,r.default)({type:"TypeParameterInstantiation",params:e})},t.typeofTypeAnnotation=function(e){return(0,r.default)({type:"TypeofTypeAnnotation",argument:e})},t.unaryExpression=function(e,t,n=!0){return(0,r.default)({type:"UnaryExpression",operator:e,argument:t,prefix:n})},t.unionTypeAnnotation=function(e){return(0,r.default)({type:"UnionTypeAnnotation",types:e})},t.updateExpression=function(e,t,n=!1){return(0,r.default)({type:"UpdateExpression",operator:e,argument:t,prefix:n})},t.v8IntrinsicIdentifier=function(e){return(0,r.default)({type:"V8IntrinsicIdentifier",name:e})},t.variableDeclaration=function(e,t){return(0,r.default)({type:"VariableDeclaration",kind:e,declarations:t})},t.variableDeclarator=function(e,t=null){return(0,r.default)({type:"VariableDeclarator",id:e,init:t})},t.variance=function(e){return(0,r.default)({type:"Variance",kind:e})},t.voidTypeAnnotation=function(){return{type:"VoidTypeAnnotation"}},t.whileStatement=function(e,t){return(0,r.default)({type:"WhileStatement",test:e,body:t})},t.withStatement=function(e,t){return(0,r.default)({type:"WithStatement",object:e,body:t})},t.yieldExpression=function(e=null,t=!1){return(0,r.default)({type:"YieldExpression",argument:e,delegate:t})};var r=n(18183),a=n(89990);function i(e){return(0,r.default)({type:"NumericLiteral",value:e})}function s(e,t=""){return(0,r.default)({type:"RegExpLiteral",pattern:e,flags:t})}function o(e){return(0,r.default)({type:"RestElement",argument:e})}function l(e){return(0,r.default)({type:"SpreadElement",argument:e})}},82988:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AnyTypeAnnotation",{enumerable:!0,get:function(){return r.anyTypeAnnotation}}),Object.defineProperty(t,"ArgumentPlaceholder",{enumerable:!0,get:function(){return r.argumentPlaceholder}}),Object.defineProperty(t,"ArrayExpression",{enumerable:!0,get:function(){return r.arrayExpression}}),Object.defineProperty(t,"ArrayPattern",{enumerable:!0,get:function(){return r.arrayPattern}}),Object.defineProperty(t,"ArrayTypeAnnotation",{enumerable:!0,get:function(){return r.arrayTypeAnnotation}}),Object.defineProperty(t,"ArrowFunctionExpression",{enumerable:!0,get:function(){return r.arrowFunctionExpression}}),Object.defineProperty(t,"AssignmentExpression",{enumerable:!0,get:function(){return r.assignmentExpression}}),Object.defineProperty(t,"AssignmentPattern",{enumerable:!0,get:function(){return r.assignmentPattern}}),Object.defineProperty(t,"AwaitExpression",{enumerable:!0,get:function(){return r.awaitExpression}}),Object.defineProperty(t,"BigIntLiteral",{enumerable:!0,get:function(){return r.bigIntLiteral}}),Object.defineProperty(t,"BinaryExpression",{enumerable:!0,get:function(){return r.binaryExpression}}),Object.defineProperty(t,"BindExpression",{enumerable:!0,get:function(){return r.bindExpression}}),Object.defineProperty(t,"BlockStatement",{enumerable:!0,get:function(){return r.blockStatement}}),Object.defineProperty(t,"BooleanLiteral",{enumerable:!0,get:function(){return r.booleanLiteral}}),Object.defineProperty(t,"BooleanLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.booleanLiteralTypeAnnotation}}),Object.defineProperty(t,"BooleanTypeAnnotation",{enumerable:!0,get:function(){return r.booleanTypeAnnotation}}),Object.defineProperty(t,"BreakStatement",{enumerable:!0,get:function(){return r.breakStatement}}),Object.defineProperty(t,"CallExpression",{enumerable:!0,get:function(){return r.callExpression}}),Object.defineProperty(t,"CatchClause",{enumerable:!0,get:function(){return r.catchClause}}),Object.defineProperty(t,"ClassAccessorProperty",{enumerable:!0,get:function(){return r.classAccessorProperty}}),Object.defineProperty(t,"ClassBody",{enumerable:!0,get:function(){return r.classBody}}),Object.defineProperty(t,"ClassDeclaration",{enumerable:!0,get:function(){return r.classDeclaration}}),Object.defineProperty(t,"ClassExpression",{enumerable:!0,get:function(){return r.classExpression}}),Object.defineProperty(t,"ClassImplements",{enumerable:!0,get:function(){return r.classImplements}}),Object.defineProperty(t,"ClassMethod",{enumerable:!0,get:function(){return r.classMethod}}),Object.defineProperty(t,"ClassPrivateMethod",{enumerable:!0,get:function(){return r.classPrivateMethod}}),Object.defineProperty(t,"ClassPrivateProperty",{enumerable:!0,get:function(){return r.classPrivateProperty}}),Object.defineProperty(t,"ClassProperty",{enumerable:!0,get:function(){return r.classProperty}}),Object.defineProperty(t,"ConditionalExpression",{enumerable:!0,get:function(){return r.conditionalExpression}}),Object.defineProperty(t,"ContinueStatement",{enumerable:!0,get:function(){return r.continueStatement}}),Object.defineProperty(t,"DebuggerStatement",{enumerable:!0,get:function(){return r.debuggerStatement}}),Object.defineProperty(t,"DecimalLiteral",{enumerable:!0,get:function(){return r.decimalLiteral}}),Object.defineProperty(t,"DeclareClass",{enumerable:!0,get:function(){return r.declareClass}}),Object.defineProperty(t,"DeclareExportAllDeclaration",{enumerable:!0,get:function(){return r.declareExportAllDeclaration}}),Object.defineProperty(t,"DeclareExportDeclaration",{enumerable:!0,get:function(){return r.declareExportDeclaration}}),Object.defineProperty(t,"DeclareFunction",{enumerable:!0,get:function(){return r.declareFunction}}),Object.defineProperty(t,"DeclareInterface",{enumerable:!0,get:function(){return r.declareInterface}}),Object.defineProperty(t,"DeclareModule",{enumerable:!0,get:function(){return r.declareModule}}),Object.defineProperty(t,"DeclareModuleExports",{enumerable:!0,get:function(){return r.declareModuleExports}}),Object.defineProperty(t,"DeclareOpaqueType",{enumerable:!0,get:function(){return r.declareOpaqueType}}),Object.defineProperty(t,"DeclareTypeAlias",{enumerable:!0,get:function(){return r.declareTypeAlias}}),Object.defineProperty(t,"DeclareVariable",{enumerable:!0,get:function(){return r.declareVariable}}),Object.defineProperty(t,"DeclaredPredicate",{enumerable:!0,get:function(){return r.declaredPredicate}}),Object.defineProperty(t,"Decorator",{enumerable:!0,get:function(){return r.decorator}}),Object.defineProperty(t,"Directive",{enumerable:!0,get:function(){return r.directive}}),Object.defineProperty(t,"DirectiveLiteral",{enumerable:!0,get:function(){return r.directiveLiteral}}),Object.defineProperty(t,"DoExpression",{enumerable:!0,get:function(){return r.doExpression}}),Object.defineProperty(t,"DoWhileStatement",{enumerable:!0,get:function(){return r.doWhileStatement}}),Object.defineProperty(t,"EmptyStatement",{enumerable:!0,get:function(){return r.emptyStatement}}),Object.defineProperty(t,"EmptyTypeAnnotation",{enumerable:!0,get:function(){return r.emptyTypeAnnotation}}),Object.defineProperty(t,"EnumBooleanBody",{enumerable:!0,get:function(){return r.enumBooleanBody}}),Object.defineProperty(t,"EnumBooleanMember",{enumerable:!0,get:function(){return r.enumBooleanMember}}),Object.defineProperty(t,"EnumDeclaration",{enumerable:!0,get:function(){return r.enumDeclaration}}),Object.defineProperty(t,"EnumDefaultedMember",{enumerable:!0,get:function(){return r.enumDefaultedMember}}),Object.defineProperty(t,"EnumNumberBody",{enumerable:!0,get:function(){return r.enumNumberBody}}),Object.defineProperty(t,"EnumNumberMember",{enumerable:!0,get:function(){return r.enumNumberMember}}),Object.defineProperty(t,"EnumStringBody",{enumerable:!0,get:function(){return r.enumStringBody}}),Object.defineProperty(t,"EnumStringMember",{enumerable:!0,get:function(){return r.enumStringMember}}),Object.defineProperty(t,"EnumSymbolBody",{enumerable:!0,get:function(){return r.enumSymbolBody}}),Object.defineProperty(t,"ExistsTypeAnnotation",{enumerable:!0,get:function(){return r.existsTypeAnnotation}}),Object.defineProperty(t,"ExportAllDeclaration",{enumerable:!0,get:function(){return r.exportAllDeclaration}}),Object.defineProperty(t,"ExportDefaultDeclaration",{enumerable:!0,get:function(){return r.exportDefaultDeclaration}}),Object.defineProperty(t,"ExportDefaultSpecifier",{enumerable:!0,get:function(){return r.exportDefaultSpecifier}}),Object.defineProperty(t,"ExportNamedDeclaration",{enumerable:!0,get:function(){return r.exportNamedDeclaration}}),Object.defineProperty(t,"ExportNamespaceSpecifier",{enumerable:!0,get:function(){return r.exportNamespaceSpecifier}}),Object.defineProperty(t,"ExportSpecifier",{enumerable:!0,get:function(){return r.exportSpecifier}}),Object.defineProperty(t,"ExpressionStatement",{enumerable:!0,get:function(){return r.expressionStatement}}),Object.defineProperty(t,"File",{enumerable:!0,get:function(){return r.file}}),Object.defineProperty(t,"ForInStatement",{enumerable:!0,get:function(){return r.forInStatement}}),Object.defineProperty(t,"ForOfStatement",{enumerable:!0,get:function(){return r.forOfStatement}}),Object.defineProperty(t,"ForStatement",{enumerable:!0,get:function(){return r.forStatement}}),Object.defineProperty(t,"FunctionDeclaration",{enumerable:!0,get:function(){return r.functionDeclaration}}),Object.defineProperty(t,"FunctionExpression",{enumerable:!0,get:function(){return r.functionExpression}}),Object.defineProperty(t,"FunctionTypeAnnotation",{enumerable:!0,get:function(){return r.functionTypeAnnotation}}),Object.defineProperty(t,"FunctionTypeParam",{enumerable:!0,get:function(){return r.functionTypeParam}}),Object.defineProperty(t,"GenericTypeAnnotation",{enumerable:!0,get:function(){return r.genericTypeAnnotation}}),Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return r.identifier}}),Object.defineProperty(t,"IfStatement",{enumerable:!0,get:function(){return r.ifStatement}}),Object.defineProperty(t,"Import",{enumerable:!0,get:function(){return r.import}}),Object.defineProperty(t,"ImportAttribute",{enumerable:!0,get:function(){return r.importAttribute}}),Object.defineProperty(t,"ImportDeclaration",{enumerable:!0,get:function(){return r.importDeclaration}}),Object.defineProperty(t,"ImportDefaultSpecifier",{enumerable:!0,get:function(){return r.importDefaultSpecifier}}),Object.defineProperty(t,"ImportNamespaceSpecifier",{enumerable:!0,get:function(){return r.importNamespaceSpecifier}}),Object.defineProperty(t,"ImportSpecifier",{enumerable:!0,get:function(){return r.importSpecifier}}),Object.defineProperty(t,"IndexedAccessType",{enumerable:!0,get:function(){return r.indexedAccessType}}),Object.defineProperty(t,"InferredPredicate",{enumerable:!0,get:function(){return r.inferredPredicate}}),Object.defineProperty(t,"InterfaceDeclaration",{enumerable:!0,get:function(){return r.interfaceDeclaration}}),Object.defineProperty(t,"InterfaceExtends",{enumerable:!0,get:function(){return r.interfaceExtends}}),Object.defineProperty(t,"InterfaceTypeAnnotation",{enumerable:!0,get:function(){return r.interfaceTypeAnnotation}}),Object.defineProperty(t,"InterpreterDirective",{enumerable:!0,get:function(){return r.interpreterDirective}}),Object.defineProperty(t,"IntersectionTypeAnnotation",{enumerable:!0,get:function(){return r.intersectionTypeAnnotation}}),Object.defineProperty(t,"JSXAttribute",{enumerable:!0,get:function(){return r.jsxAttribute}}),Object.defineProperty(t,"JSXClosingElement",{enumerable:!0,get:function(){return r.jsxClosingElement}}),Object.defineProperty(t,"JSXClosingFragment",{enumerable:!0,get:function(){return r.jsxClosingFragment}}),Object.defineProperty(t,"JSXElement",{enumerable:!0,get:function(){return r.jsxElement}}),Object.defineProperty(t,"JSXEmptyExpression",{enumerable:!0,get:function(){return r.jsxEmptyExpression}}),Object.defineProperty(t,"JSXExpressionContainer",{enumerable:!0,get:function(){return r.jsxExpressionContainer}}),Object.defineProperty(t,"JSXFragment",{enumerable:!0,get:function(){return r.jsxFragment}}),Object.defineProperty(t,"JSXIdentifier",{enumerable:!0,get:function(){return r.jsxIdentifier}}),Object.defineProperty(t,"JSXMemberExpression",{enumerable:!0,get:function(){return r.jsxMemberExpression}}),Object.defineProperty(t,"JSXNamespacedName",{enumerable:!0,get:function(){return r.jsxNamespacedName}}),Object.defineProperty(t,"JSXOpeningElement",{enumerable:!0,get:function(){return r.jsxOpeningElement}}),Object.defineProperty(t,"JSXOpeningFragment",{enumerable:!0,get:function(){return r.jsxOpeningFragment}}),Object.defineProperty(t,"JSXSpreadAttribute",{enumerable:!0,get:function(){return r.jsxSpreadAttribute}}),Object.defineProperty(t,"JSXSpreadChild",{enumerable:!0,get:function(){return r.jsxSpreadChild}}),Object.defineProperty(t,"JSXText",{enumerable:!0,get:function(){return r.jsxText}}),Object.defineProperty(t,"LabeledStatement",{enumerable:!0,get:function(){return r.labeledStatement}}),Object.defineProperty(t,"LogicalExpression",{enumerable:!0,get:function(){return r.logicalExpression}}),Object.defineProperty(t,"MemberExpression",{enumerable:!0,get:function(){return r.memberExpression}}),Object.defineProperty(t,"MetaProperty",{enumerable:!0,get:function(){return r.metaProperty}}),Object.defineProperty(t,"MixedTypeAnnotation",{enumerable:!0,get:function(){return r.mixedTypeAnnotation}}),Object.defineProperty(t,"ModuleExpression",{enumerable:!0,get:function(){return r.moduleExpression}}),Object.defineProperty(t,"NewExpression",{enumerable:!0,get:function(){return r.newExpression}}),Object.defineProperty(t,"Noop",{enumerable:!0,get:function(){return r.noop}}),Object.defineProperty(t,"NullLiteral",{enumerable:!0,get:function(){return r.nullLiteral}}),Object.defineProperty(t,"NullLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.nullLiteralTypeAnnotation}}),Object.defineProperty(t,"NullableTypeAnnotation",{enumerable:!0,get:function(){return r.nullableTypeAnnotation}}),Object.defineProperty(t,"NumberLiteral",{enumerable:!0,get:function(){return r.numberLiteral}}),Object.defineProperty(t,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.numberLiteralTypeAnnotation}}),Object.defineProperty(t,"NumberTypeAnnotation",{enumerable:!0,get:function(){return r.numberTypeAnnotation}}),Object.defineProperty(t,"NumericLiteral",{enumerable:!0,get:function(){return r.numericLiteral}}),Object.defineProperty(t,"ObjectExpression",{enumerable:!0,get:function(){return r.objectExpression}}),Object.defineProperty(t,"ObjectMethod",{enumerable:!0,get:function(){return r.objectMethod}}),Object.defineProperty(t,"ObjectPattern",{enumerable:!0,get:function(){return r.objectPattern}}),Object.defineProperty(t,"ObjectProperty",{enumerable:!0,get:function(){return r.objectProperty}}),Object.defineProperty(t,"ObjectTypeAnnotation",{enumerable:!0,get:function(){return r.objectTypeAnnotation}}),Object.defineProperty(t,"ObjectTypeCallProperty",{enumerable:!0,get:function(){return r.objectTypeCallProperty}}),Object.defineProperty(t,"ObjectTypeIndexer",{enumerable:!0,get:function(){return r.objectTypeIndexer}}),Object.defineProperty(t,"ObjectTypeInternalSlot",{enumerable:!0,get:function(){return r.objectTypeInternalSlot}}),Object.defineProperty(t,"ObjectTypeProperty",{enumerable:!0,get:function(){return r.objectTypeProperty}}),Object.defineProperty(t,"ObjectTypeSpreadProperty",{enumerable:!0,get:function(){return r.objectTypeSpreadProperty}}),Object.defineProperty(t,"OpaqueType",{enumerable:!0,get:function(){return r.opaqueType}}),Object.defineProperty(t,"OptionalCallExpression",{enumerable:!0,get:function(){return r.optionalCallExpression}}),Object.defineProperty(t,"OptionalIndexedAccessType",{enumerable:!0,get:function(){return r.optionalIndexedAccessType}}),Object.defineProperty(t,"OptionalMemberExpression",{enumerable:!0,get:function(){return r.optionalMemberExpression}}),Object.defineProperty(t,"ParenthesizedExpression",{enumerable:!0,get:function(){return r.parenthesizedExpression}}),Object.defineProperty(t,"PipelineBareFunction",{enumerable:!0,get:function(){return r.pipelineBareFunction}}),Object.defineProperty(t,"PipelinePrimaryTopicReference",{enumerable:!0,get:function(){return r.pipelinePrimaryTopicReference}}),Object.defineProperty(t,"PipelineTopicExpression",{enumerable:!0,get:function(){return r.pipelineTopicExpression}}),Object.defineProperty(t,"Placeholder",{enumerable:!0,get:function(){return r.placeholder}}),Object.defineProperty(t,"PrivateName",{enumerable:!0,get:function(){return r.privateName}}),Object.defineProperty(t,"Program",{enumerable:!0,get:function(){return r.program}}),Object.defineProperty(t,"QualifiedTypeIdentifier",{enumerable:!0,get:function(){return r.qualifiedTypeIdentifier}}),Object.defineProperty(t,"RecordExpression",{enumerable:!0,get:function(){return r.recordExpression}}),Object.defineProperty(t,"RegExpLiteral",{enumerable:!0,get:function(){return r.regExpLiteral}}),Object.defineProperty(t,"RegexLiteral",{enumerable:!0,get:function(){return r.regexLiteral}}),Object.defineProperty(t,"RestElement",{enumerable:!0,get:function(){return r.restElement}}),Object.defineProperty(t,"RestProperty",{enumerable:!0,get:function(){return r.restProperty}}),Object.defineProperty(t,"ReturnStatement",{enumerable:!0,get:function(){return r.returnStatement}}),Object.defineProperty(t,"SequenceExpression",{enumerable:!0,get:function(){return r.sequenceExpression}}),Object.defineProperty(t,"SpreadElement",{enumerable:!0,get:function(){return r.spreadElement}}),Object.defineProperty(t,"SpreadProperty",{enumerable:!0,get:function(){return r.spreadProperty}}),Object.defineProperty(t,"StaticBlock",{enumerable:!0,get:function(){return r.staticBlock}}),Object.defineProperty(t,"StringLiteral",{enumerable:!0,get:function(){return r.stringLiteral}}),Object.defineProperty(t,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.stringLiteralTypeAnnotation}}),Object.defineProperty(t,"StringTypeAnnotation",{enumerable:!0,get:function(){return r.stringTypeAnnotation}}),Object.defineProperty(t,"Super",{enumerable:!0,get:function(){return r.super}}),Object.defineProperty(t,"SwitchCase",{enumerable:!0,get:function(){return r.switchCase}}),Object.defineProperty(t,"SwitchStatement",{enumerable:!0,get:function(){return r.switchStatement}}),Object.defineProperty(t,"SymbolTypeAnnotation",{enumerable:!0,get:function(){return r.symbolTypeAnnotation}}),Object.defineProperty(t,"TSAnyKeyword",{enumerable:!0,get:function(){return r.tsAnyKeyword}}),Object.defineProperty(t,"TSArrayType",{enumerable:!0,get:function(){return r.tsArrayType}}),Object.defineProperty(t,"TSAsExpression",{enumerable:!0,get:function(){return r.tsAsExpression}}),Object.defineProperty(t,"TSBigIntKeyword",{enumerable:!0,get:function(){return r.tsBigIntKeyword}}),Object.defineProperty(t,"TSBooleanKeyword",{enumerable:!0,get:function(){return r.tsBooleanKeyword}}),Object.defineProperty(t,"TSCallSignatureDeclaration",{enumerable:!0,get:function(){return r.tsCallSignatureDeclaration}}),Object.defineProperty(t,"TSConditionalType",{enumerable:!0,get:function(){return r.tsConditionalType}}),Object.defineProperty(t,"TSConstructSignatureDeclaration",{enumerable:!0,get:function(){return r.tsConstructSignatureDeclaration}}),Object.defineProperty(t,"TSConstructorType",{enumerable:!0,get:function(){return r.tsConstructorType}}),Object.defineProperty(t,"TSDeclareFunction",{enumerable:!0,get:function(){return r.tsDeclareFunction}}),Object.defineProperty(t,"TSDeclareMethod",{enumerable:!0,get:function(){return r.tsDeclareMethod}}),Object.defineProperty(t,"TSEnumDeclaration",{enumerable:!0,get:function(){return r.tsEnumDeclaration}}),Object.defineProperty(t,"TSEnumMember",{enumerable:!0,get:function(){return r.tsEnumMember}}),Object.defineProperty(t,"TSExportAssignment",{enumerable:!0,get:function(){return r.tsExportAssignment}}),Object.defineProperty(t,"TSExpressionWithTypeArguments",{enumerable:!0,get:function(){return r.tsExpressionWithTypeArguments}}),Object.defineProperty(t,"TSExternalModuleReference",{enumerable:!0,get:function(){return r.tsExternalModuleReference}}),Object.defineProperty(t,"TSFunctionType",{enumerable:!0,get:function(){return r.tsFunctionType}}),Object.defineProperty(t,"TSImportEqualsDeclaration",{enumerable:!0,get:function(){return r.tsImportEqualsDeclaration}}),Object.defineProperty(t,"TSImportType",{enumerable:!0,get:function(){return r.tsImportType}}),Object.defineProperty(t,"TSIndexSignature",{enumerable:!0,get:function(){return r.tsIndexSignature}}),Object.defineProperty(t,"TSIndexedAccessType",{enumerable:!0,get:function(){return r.tsIndexedAccessType}}),Object.defineProperty(t,"TSInferType",{enumerable:!0,get:function(){return r.tsInferType}}),Object.defineProperty(t,"TSInstantiationExpression",{enumerable:!0,get:function(){return r.tsInstantiationExpression}}),Object.defineProperty(t,"TSInterfaceBody",{enumerable:!0,get:function(){return r.tsInterfaceBody}}),Object.defineProperty(t,"TSInterfaceDeclaration",{enumerable:!0,get:function(){return r.tsInterfaceDeclaration}}),Object.defineProperty(t,"TSIntersectionType",{enumerable:!0,get:function(){return r.tsIntersectionType}}),Object.defineProperty(t,"TSIntrinsicKeyword",{enumerable:!0,get:function(){return r.tsIntrinsicKeyword}}),Object.defineProperty(t,"TSLiteralType",{enumerable:!0,get:function(){return r.tsLiteralType}}),Object.defineProperty(t,"TSMappedType",{enumerable:!0,get:function(){return r.tsMappedType}}),Object.defineProperty(t,"TSMethodSignature",{enumerable:!0,get:function(){return r.tsMethodSignature}}),Object.defineProperty(t,"TSModuleBlock",{enumerable:!0,get:function(){return r.tsModuleBlock}}),Object.defineProperty(t,"TSModuleDeclaration",{enumerable:!0,get:function(){return r.tsModuleDeclaration}}),Object.defineProperty(t,"TSNamedTupleMember",{enumerable:!0,get:function(){return r.tsNamedTupleMember}}),Object.defineProperty(t,"TSNamespaceExportDeclaration",{enumerable:!0,get:function(){return r.tsNamespaceExportDeclaration}}),Object.defineProperty(t,"TSNeverKeyword",{enumerable:!0,get:function(){return r.tsNeverKeyword}}),Object.defineProperty(t,"TSNonNullExpression",{enumerable:!0,get:function(){return r.tsNonNullExpression}}),Object.defineProperty(t,"TSNullKeyword",{enumerable:!0,get:function(){return r.tsNullKeyword}}),Object.defineProperty(t,"TSNumberKeyword",{enumerable:!0,get:function(){return r.tsNumberKeyword}}),Object.defineProperty(t,"TSObjectKeyword",{enumerable:!0,get:function(){return r.tsObjectKeyword}}),Object.defineProperty(t,"TSOptionalType",{enumerable:!0,get:function(){return r.tsOptionalType}}),Object.defineProperty(t,"TSParameterProperty",{enumerable:!0,get:function(){return r.tsParameterProperty}}),Object.defineProperty(t,"TSParenthesizedType",{enumerable:!0,get:function(){return r.tsParenthesizedType}}),Object.defineProperty(t,"TSPropertySignature",{enumerable:!0,get:function(){return r.tsPropertySignature}}),Object.defineProperty(t,"TSQualifiedName",{enumerable:!0,get:function(){return r.tsQualifiedName}}),Object.defineProperty(t,"TSRestType",{enumerable:!0,get:function(){return r.tsRestType}}),Object.defineProperty(t,"TSSatisfiesExpression",{enumerable:!0,get:function(){return r.tsSatisfiesExpression}}),Object.defineProperty(t,"TSStringKeyword",{enumerable:!0,get:function(){return r.tsStringKeyword}}),Object.defineProperty(t,"TSSymbolKeyword",{enumerable:!0,get:function(){return r.tsSymbolKeyword}}),Object.defineProperty(t,"TSThisType",{enumerable:!0,get:function(){return r.tsThisType}}),Object.defineProperty(t,"TSTupleType",{enumerable:!0,get:function(){return r.tsTupleType}}),Object.defineProperty(t,"TSTypeAliasDeclaration",{enumerable:!0,get:function(){return r.tsTypeAliasDeclaration}}),Object.defineProperty(t,"TSTypeAnnotation",{enumerable:!0,get:function(){return r.tsTypeAnnotation}}),Object.defineProperty(t,"TSTypeAssertion",{enumerable:!0,get:function(){return r.tsTypeAssertion}}),Object.defineProperty(t,"TSTypeLiteral",{enumerable:!0,get:function(){return r.tsTypeLiteral}}),Object.defineProperty(t,"TSTypeOperator",{enumerable:!0,get:function(){return r.tsTypeOperator}}),Object.defineProperty(t,"TSTypeParameter",{enumerable:!0,get:function(){return r.tsTypeParameter}}),Object.defineProperty(t,"TSTypeParameterDeclaration",{enumerable:!0,get:function(){return r.tsTypeParameterDeclaration}}),Object.defineProperty(t,"TSTypeParameterInstantiation",{enumerable:!0,get:function(){return r.tsTypeParameterInstantiation}}),Object.defineProperty(t,"TSTypePredicate",{enumerable:!0,get:function(){return r.tsTypePredicate}}),Object.defineProperty(t,"TSTypeQuery",{enumerable:!0,get:function(){return r.tsTypeQuery}}),Object.defineProperty(t,"TSTypeReference",{enumerable:!0,get:function(){return r.tsTypeReference}}),Object.defineProperty(t,"TSUndefinedKeyword",{enumerable:!0,get:function(){return r.tsUndefinedKeyword}}),Object.defineProperty(t,"TSUnionType",{enumerable:!0,get:function(){return r.tsUnionType}}),Object.defineProperty(t,"TSUnknownKeyword",{enumerable:!0,get:function(){return r.tsUnknownKeyword}}),Object.defineProperty(t,"TSVoidKeyword",{enumerable:!0,get:function(){return r.tsVoidKeyword}}),Object.defineProperty(t,"TaggedTemplateExpression",{enumerable:!0,get:function(){return r.taggedTemplateExpression}}),Object.defineProperty(t,"TemplateElement",{enumerable:!0,get:function(){return r.templateElement}}),Object.defineProperty(t,"TemplateLiteral",{enumerable:!0,get:function(){return r.templateLiteral}}),Object.defineProperty(t,"ThisExpression",{enumerable:!0,get:function(){return r.thisExpression}}),Object.defineProperty(t,"ThisTypeAnnotation",{enumerable:!0,get:function(){return r.thisTypeAnnotation}}),Object.defineProperty(t,"ThrowStatement",{enumerable:!0,get:function(){return r.throwStatement}}),Object.defineProperty(t,"TopicReference",{enumerable:!0,get:function(){return r.topicReference}}),Object.defineProperty(t,"TryStatement",{enumerable:!0,get:function(){return r.tryStatement}}),Object.defineProperty(t,"TupleExpression",{enumerable:!0,get:function(){return r.tupleExpression}}),Object.defineProperty(t,"TupleTypeAnnotation",{enumerable:!0,get:function(){return r.tupleTypeAnnotation}}),Object.defineProperty(t,"TypeAlias",{enumerable:!0,get:function(){return r.typeAlias}}),Object.defineProperty(t,"TypeAnnotation",{enumerable:!0,get:function(){return r.typeAnnotation}}),Object.defineProperty(t,"TypeCastExpression",{enumerable:!0,get:function(){return r.typeCastExpression}}),Object.defineProperty(t,"TypeParameter",{enumerable:!0,get:function(){return r.typeParameter}}),Object.defineProperty(t,"TypeParameterDeclaration",{enumerable:!0,get:function(){return r.typeParameterDeclaration}}),Object.defineProperty(t,"TypeParameterInstantiation",{enumerable:!0,get:function(){return r.typeParameterInstantiation}}),Object.defineProperty(t,"TypeofTypeAnnotation",{enumerable:!0,get:function(){return r.typeofTypeAnnotation}}),Object.defineProperty(t,"UnaryExpression",{enumerable:!0,get:function(){return r.unaryExpression}}),Object.defineProperty(t,"UnionTypeAnnotation",{enumerable:!0,get:function(){return r.unionTypeAnnotation}}),Object.defineProperty(t,"UpdateExpression",{enumerable:!0,get:function(){return r.updateExpression}}),Object.defineProperty(t,"V8IntrinsicIdentifier",{enumerable:!0,get:function(){return r.v8IntrinsicIdentifier}}),Object.defineProperty(t,"VariableDeclaration",{enumerable:!0,get:function(){return r.variableDeclaration}}),Object.defineProperty(t,"VariableDeclarator",{enumerable:!0,get:function(){return r.variableDeclarator}}),Object.defineProperty(t,"Variance",{enumerable:!0,get:function(){return r.variance}}),Object.defineProperty(t,"VoidTypeAnnotation",{enumerable:!0,get:function(){return r.voidTypeAnnotation}}),Object.defineProperty(t,"WhileStatement",{enumerable:!0,get:function(){return r.whileStatement}}),Object.defineProperty(t,"WithStatement",{enumerable:!0,get:function(){return r.withStatement}}),Object.defineProperty(t,"YieldExpression",{enumerable:!0,get:function(){return r.yieldExpression}});var r=n(797)},27620:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];for(let n=0;n<e.children.length;n++){let i=e.children[n];(0,r.isJSXText)(i)?(0,a.default)(i,t):((0,r.isJSXExpressionContainer)(i)&&(i=i.expression),(0,r.isJSXEmptyExpression)(i)||t.push(i))}return t};var r=n(48250),a=n(34651)},35266:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=e.map((e=>(0,i.isTSTypeAnnotation)(e)?e.typeAnnotation:e)),n=(0,a.default)(t);return 1===n.length?n[0]:(0,r.tsUnionType)(n)};var r=n(797),a=n(60747),i=n(48250)},18183:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=a.BUILDER_KEYS[e.type];for(const n of t)(0,r.default)(e,n,e[n]);return e};var r=n(70522),a=n(84250)},66481:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1)};var r=n(49021)},16550:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)};var r=n(49021)},8841:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!0,!0)};var r=n(49021)},49021:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0,n=!1){return l(e,t,n,new Map)};var r=n(74892),a=n(48250);const i=Function.call.bind(Object.prototype.hasOwnProperty);function s(e,t,n,r){return e&&"string"==typeof e.type?l(e,t,n,r):e}function o(e,t,n,r){return Array.isArray(e)?e.map((e=>s(e,t,n,r))):s(e,t,n,r)}function l(e,t=!0,n=!1,s){if(!e)return e;const{type:l}=e,c={type:e.type};if((0,a.isIdentifier)(e))c.name=e.name,i(e,"optional")&&"boolean"==typeof e.optional&&(c.optional=e.optional),i(e,"typeAnnotation")&&(c.typeAnnotation=t?o(e.typeAnnotation,!0,n,s):e.typeAnnotation);else{if(!i(r.NODE_FIELDS,l))throw new Error(`Unknown node type: "${l}"`);for(const u of Object.keys(r.NODE_FIELDS[l]))i(e,u)&&(c[u]=t?(0,a.isFile)(e)&&"comments"===u?p(e.comments,t,n,s):o(e[u],!0,n,s):e[u])}return i(e,"loc")&&(c.loc=n?null:e.loc),i(e,"leadingComments")&&(c.leadingComments=p(e.leadingComments,t,n,s)),i(e,"innerComments")&&(c.innerComments=p(e.innerComments,t,n,s)),i(e,"trailingComments")&&(c.trailingComments=p(e.trailingComments,t,n,s)),i(e,"extra")&&(c.extra=Object.assign({},e.extra)),c}function p(e,t,n,r){return e&&t?e.map((e=>{const t=r.get(e);if(t)return t;const{type:a,value:i,loc:s}=e,o={type:a,value:i,loc:s};return n&&(o.loc=null),r.set(e,o),o})):e}},72160:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1,!0)};var r=n(49021)},33155:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,a){return(0,r.default)(e,t,[{type:a?"CommentLine":"CommentBlock",value:n}])};var r=n(65540)},65540:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!n||!e)return e;const r=`${t}Comments`;return e[r]?"leading"===t?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n,e}},59187:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("innerComments",e,t)};var r=n(95667)},44564:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("leadingComments",e,t)};var r=n(95667)},83987:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("trailingComments",e,t)};var r=n(95667)},25681:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,t),(0,a.default)(e,t),(0,i.default)(e,t),e};var r=n(83987),a=n(44564),i=n(59187)},40295:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return r.COMMENT_KEYS.forEach((t=>{e[t]=null})),e};var r=n(65857)},10080:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WHILE_TYPES=t.USERWHITESPACABLE_TYPES=t.UNARYLIKE_TYPES=t.TYPESCRIPT_TYPES=t.TSTYPE_TYPES=t.TSTYPEELEMENT_TYPES=t.TSENTITYNAME_TYPES=t.TSBASETYPE_TYPES=t.TERMINATORLESS_TYPES=t.STATEMENT_TYPES=t.STANDARDIZED_TYPES=t.SCOPABLE_TYPES=t.PUREISH_TYPES=t.PROPERTY_TYPES=t.PRIVATE_TYPES=t.PATTERN_TYPES=t.PATTERNLIKE_TYPES=t.OBJECTMEMBER_TYPES=t.MODULESPECIFIER_TYPES=t.MODULEDECLARATION_TYPES=t.MISCELLANEOUS_TYPES=t.METHOD_TYPES=t.LVAL_TYPES=t.LOOP_TYPES=t.LITERAL_TYPES=t.JSX_TYPES=t.IMPORTOREXPORTDECLARATION_TYPES=t.IMMUTABLE_TYPES=t.FUNCTION_TYPES=t.FUNCTIONPARENT_TYPES=t.FOR_TYPES=t.FORXSTATEMENT_TYPES=t.FLOW_TYPES=t.FLOWTYPE_TYPES=t.FLOWPREDICATE_TYPES=t.FLOWDECLARATION_TYPES=t.FLOWBASEANNOTATION_TYPES=t.EXPRESSION_TYPES=t.EXPRESSIONWRAPPER_TYPES=t.EXPORTDECLARATION_TYPES=t.ENUMMEMBER_TYPES=t.ENUMBODY_TYPES=t.DECLARATION_TYPES=t.CONDITIONAL_TYPES=t.COMPLETIONSTATEMENT_TYPES=t.CLASS_TYPES=t.BLOCK_TYPES=t.BLOCKPARENT_TYPES=t.BINARY_TYPES=t.ACCESSOR_TYPES=void 0;var r=n(74892);const a=r.FLIPPED_ALIAS_KEYS.Standardized;t.STANDARDIZED_TYPES=a;const i=r.FLIPPED_ALIAS_KEYS.Expression;t.EXPRESSION_TYPES=i;const s=r.FLIPPED_ALIAS_KEYS.Binary;t.BINARY_TYPES=s;const o=r.FLIPPED_ALIAS_KEYS.Scopable;t.SCOPABLE_TYPES=o;const l=r.FLIPPED_ALIAS_KEYS.BlockParent;t.BLOCKPARENT_TYPES=l;const p=r.FLIPPED_ALIAS_KEYS.Block;t.BLOCK_TYPES=p;const c=r.FLIPPED_ALIAS_KEYS.Statement;t.STATEMENT_TYPES=c;const u=r.FLIPPED_ALIAS_KEYS.Terminatorless;t.TERMINATORLESS_TYPES=u;const d=r.FLIPPED_ALIAS_KEYS.CompletionStatement;t.COMPLETIONSTATEMENT_TYPES=d;const f=r.FLIPPED_ALIAS_KEYS.Conditional;t.CONDITIONAL_TYPES=f;const y=r.FLIPPED_ALIAS_KEYS.Loop;t.LOOP_TYPES=y;const m=r.FLIPPED_ALIAS_KEYS.While;t.WHILE_TYPES=m;const h=r.FLIPPED_ALIAS_KEYS.ExpressionWrapper;t.EXPRESSIONWRAPPER_TYPES=h;const T=r.FLIPPED_ALIAS_KEYS.For;t.FOR_TYPES=T;const S=r.FLIPPED_ALIAS_KEYS.ForXStatement;t.FORXSTATEMENT_TYPES=S;const b=r.FLIPPED_ALIAS_KEYS.Function;t.FUNCTION_TYPES=b;const E=r.FLIPPED_ALIAS_KEYS.FunctionParent;t.FUNCTIONPARENT_TYPES=E;const P=r.FLIPPED_ALIAS_KEYS.Pureish;t.PUREISH_TYPES=P;const x=r.FLIPPED_ALIAS_KEYS.Declaration;t.DECLARATION_TYPES=x;const g=r.FLIPPED_ALIAS_KEYS.PatternLike;t.PATTERNLIKE_TYPES=g;const A=r.FLIPPED_ALIAS_KEYS.LVal;t.LVAL_TYPES=A;const v=r.FLIPPED_ALIAS_KEYS.TSEntityName;t.TSENTITYNAME_TYPES=v;const O=r.FLIPPED_ALIAS_KEYS.Literal;t.LITERAL_TYPES=O;const I=r.FLIPPED_ALIAS_KEYS.Immutable;t.IMMUTABLE_TYPES=I;const N=r.FLIPPED_ALIAS_KEYS.UserWhitespacable;t.USERWHITESPACABLE_TYPES=N;const D=r.FLIPPED_ALIAS_KEYS.Method;t.METHOD_TYPES=D;const C=r.FLIPPED_ALIAS_KEYS.ObjectMember;t.OBJECTMEMBER_TYPES=C;const w=r.FLIPPED_ALIAS_KEYS.Property;t.PROPERTY_TYPES=w;const L=r.FLIPPED_ALIAS_KEYS.UnaryLike;t.UNARYLIKE_TYPES=L;const j=r.FLIPPED_ALIAS_KEYS.Pattern;t.PATTERN_TYPES=j;const _=r.FLIPPED_ALIAS_KEYS.Class;t.CLASS_TYPES=_;const M=r.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration;t.IMPORTOREXPORTDECLARATION_TYPES=M;const k=r.FLIPPED_ALIAS_KEYS.ExportDeclaration;t.EXPORTDECLARATION_TYPES=k;const B=r.FLIPPED_ALIAS_KEYS.ModuleSpecifier;t.MODULESPECIFIER_TYPES=B;const F=r.FLIPPED_ALIAS_KEYS.Accessor;t.ACCESSOR_TYPES=F;const R=r.FLIPPED_ALIAS_KEYS.Private;t.PRIVATE_TYPES=R;const K=r.FLIPPED_ALIAS_KEYS.Flow;t.FLOW_TYPES=K;const V=r.FLIPPED_ALIAS_KEYS.FlowType;t.FLOWTYPE_TYPES=V;const Y=r.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation;t.FLOWBASEANNOTATION_TYPES=Y;const U=r.FLIPPED_ALIAS_KEYS.FlowDeclaration;t.FLOWDECLARATION_TYPES=U;const X=r.FLIPPED_ALIAS_KEYS.FlowPredicate;t.FLOWPREDICATE_TYPES=X;const J=r.FLIPPED_ALIAS_KEYS.EnumBody;t.ENUMBODY_TYPES=J;const W=r.FLIPPED_ALIAS_KEYS.EnumMember;t.ENUMMEMBER_TYPES=W;const q=r.FLIPPED_ALIAS_KEYS.JSX;t.JSX_TYPES=q;const $=r.FLIPPED_ALIAS_KEYS.Miscellaneous;t.MISCELLANEOUS_TYPES=$;const G=r.FLIPPED_ALIAS_KEYS.TypeScript;t.TYPESCRIPT_TYPES=G;const z=r.FLIPPED_ALIAS_KEYS.TSTypeElement;t.TSTYPEELEMENT_TYPES=z;const H=r.FLIPPED_ALIAS_KEYS.TSType;t.TSTYPE_TYPES=H;const Q=r.FLIPPED_ALIAS_KEYS.TSBaseType;t.TSBASETYPE_TYPES=Q;const Z=M;t.MODULEDECLARATION_TYPES=Z},65857:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UPDATE_OPERATORS=t.UNARY_OPERATORS=t.STRING_UNARY_OPERATORS=t.STATEMENT_OR_BLOCK_KEYS=t.NUMBER_UNARY_OPERATORS=t.NUMBER_BINARY_OPERATORS=t.NOT_LOCAL_BINDING=t.LOGICAL_OPERATORS=t.INHERIT_KEYS=t.FOR_INIT_KEYS=t.FLATTENABLE_KEYS=t.EQUALITY_BINARY_OPERATORS=t.COMPARISON_BINARY_OPERATORS=t.COMMENT_KEYS=t.BOOLEAN_UNARY_OPERATORS=t.BOOLEAN_NUMBER_BINARY_OPERATORS=t.BOOLEAN_BINARY_OPERATORS=t.BLOCK_SCOPED_SYMBOL=t.BINARY_OPERATORS=t.ASSIGNMENT_OPERATORS=void 0,t.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],t.FLATTENABLE_KEYS=["body","expressions"],t.FOR_INIT_KEYS=["left","init"],t.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const n=["||","&&","??"];t.LOGICAL_OPERATORS=n,t.UPDATE_OPERATORS=["++","--"];const r=[">","<",">=","<="];t.BOOLEAN_NUMBER_BINARY_OPERATORS=r;const a=["==","===","!=","!=="];t.EQUALITY_BINARY_OPERATORS=a;const i=[...a,"in","instanceof"];t.COMPARISON_BINARY_OPERATORS=i;const s=[...i,...r];t.BOOLEAN_BINARY_OPERATORS=s;const o=["-","/","%","*","**","&","|",">>",">>>","<<","^"];t.NUMBER_BINARY_OPERATORS=o;const l=["+",...o,...s,"|>"];t.BINARY_OPERATORS=l;const p=["=","+=",...o.map((e=>e+"=")),...n.map((e=>e+"="))];t.ASSIGNMENT_OPERATORS=p;const c=["delete","!"];t.BOOLEAN_UNARY_OPERATORS=c;const u=["+","-","~"];t.NUMBER_UNARY_OPERATORS=u;const d=["typeof"];t.STRING_UNARY_OPERATORS=d;const f=["void","throw",...c,...u,...d];t.UNARY_OPERATORS=f,t.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};const y=Symbol.for("var used to be block scoped");t.BLOCK_SCOPED_SYMBOL=y;const m=Symbol.for("should not be considered a local binding");t.NOT_LOCAL_BINDING=m},6436:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t="body"){const n=(0,r.default)(e[t],e);return e[t]=n,n};var r=n(35322)},7994:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,o){const l=[];let p=!0;for(const c of t)if((0,a.isEmptyStatement)(c)||(p=!1),(0,a.isExpression)(c))l.push(c);else if((0,a.isExpressionStatement)(c))l.push(c.expression);else if((0,a.isVariableDeclaration)(c)){if("var"!==c.kind)return;for(const e of c.declarations){const t=(0,r.default)(e);for(const e of Object.keys(t))o.push({kind:c.kind,id:(0,s.default)(t[e])});e.init&&l.push((0,i.assignmentExpression)("=",e.id,e.init))}p=!0}else if((0,a.isIfStatement)(c)){const t=c.consequent?e([c.consequent],n,o):n.buildUndefinedNode(),r=c.alternate?e([c.alternate],n,o):n.buildUndefinedNode();if(!t||!r)return;l.push((0,i.conditionalExpression)(c.test,t,r))}else if((0,a.isBlockStatement)(c)){const t=e(c.body,n,o);if(!t)return;l.push(t)}else{if(!(0,a.isEmptyStatement)(c))return;0===t.indexOf(c)&&(p=!0)}return p&&l.push(n.buildUndefinedNode()),1===l.length?l[0]:(0,i.sequenceExpression)(l)};var r=n(74390),a=n(48250),i=n(797),s=n(49021)},4090:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"eval"!==(e=(0,r.default)(e))&&"arguments"!==e||(e="_"+e),e};var r=n(54834)},35322:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.isBlockStatement)(e))return e;let n=[];return(0,r.isEmptyStatement)(e)?n=[]:((0,r.isStatement)(e)||(e=(0,r.isFunction)(t)?(0,a.returnStatement)(e):(0,a.expressionStatement)(e)),n=[e]),(0,a.blockStatement)(n)};var r=n(48250),a=n(797)},50192:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=e.key||e.property){return!e.computed&&(0,r.isIdentifier)(t)&&(t=(0,a.stringLiteral)(t.name)),t};var r=n(48250),a=n(797)},41229:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(48250);t.default=function(e){if((0,r.isExpressionStatement)(e)&&(e=e.expression),(0,r.isExpression)(e))return e;if((0,r.isClass)(e)?e.type="ClassExpression":(0,r.isFunction)(e)&&(e.type="FunctionExpression"),!(0,r.isExpression)(e))throw new Error(`cannot turn ${e.type} to an expression`);return e}},54834:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e+="";let t="";for(const n of e)t+=(0,a.isIdentifierChar)(n.codePointAt(0))?n:"-";return t=t.replace(/^[-0-9]+/,""),t=t.replace(/[-\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""})),(0,r.default)(t)||(t=`_${t}`),t||"_"};var r=n(65287),a=n(29649)},44386:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;var r=n(48250),a=n(49021),i=n(59321);function s(e,t=e.key){let n;return"method"===e.kind?s.increment()+"":(n=(0,r.isIdentifier)(t)?t.name:(0,r.isStringLiteral)(t)?JSON.stringify(t.value):JSON.stringify((0,i.default)((0,a.default)(t))),e.computed&&(n=`[${n}]`),e.static&&(n=`static:${n}`),n)}s.uid=0,s.increment=function(){return s.uid>=Number.MAX_SAFE_INTEGER?s.uid=0:s.uid++}},40618:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(null==e||!e.length)return;const n=[],a=(0,r.default)(e,t,n);if(a){for(const e of n)t.push(e);return a}};var r=n(7994)},29836:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(48250),a=n(797);t.default=function(e,t){if((0,r.isStatement)(e))return e;let n,i=!1;if((0,r.isClass)(e))i=!0,n="ClassDeclaration";else if((0,r.isFunction)(e))i=!0,n="FunctionDeclaration";else if((0,r.isAssignmentExpression)(e))return(0,a.expressionStatement)(e);if(i&&!e.id&&(n=!1),!n){if(t)return!1;throw new Error(`cannot turn ${e.type} to a statement`)}return e.type=n,e}},13671:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(65287),a=n(797);t.default=function e(t){if(void 0===t)return(0,a.identifier)("undefined");if(!0===t||!1===t)return(0,a.booleanLiteral)(t);if(null===t)return(0,a.nullLiteral)();if("string"==typeof t)return(0,a.stringLiteral)(t);if("number"==typeof t){let e;if(Number.isFinite(t))e=(0,a.numericLiteral)(Math.abs(t));else{let n;n=Number.isNaN(t)?(0,a.numericLiteral)(0):(0,a.numericLiteral)(1),e=(0,a.binaryExpression)("/",n,(0,a.numericLiteral)(0))}return(t<0||Object.is(t,-0))&&(e=(0,a.unaryExpression)("-",e)),e}if(function(e){return"[object RegExp]"===i(e)}(t)){const e=t.source,n=t.toString().match(/\/([a-z]+|)$/)[1];return(0,a.regExpLiteral)(e,n)}if(Array.isArray(t))return(0,a.arrayExpression)(t.map(e));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(t)){const n=[];for(const i of Object.keys(t)){let s;s=(0,r.default)(i)?(0,a.identifier)(i):(0,a.stringLiteral)(i),n.push((0,a.objectProperty)(s,e(t[i])))}return(0,a.objectExpression)(n)}throw new Error("don't know how to turn this value into a node")};const i=Function.call.bind(Object.prototype.toString)},9266:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.patternLikeCommon=t.functionTypeAnnotationCommon=t.functionDeclarationCommon=t.functionCommon=t.classMethodOrPropertyCommon=t.classMethodOrDeclareMethodCommon=void 0;var r=n(23443),a=n(65287),i=n(29649),s=n(37648),o=n(65857),l=n(94844);const p=(0,l.defineAliasedType)("Standardized");p("ArrayExpression",{fields:{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","Expression","SpreadElement"))),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),p("AssignmentExpression",{fields:{operator:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertValueType)("string");const e=(0,l.assertOneOf)(...o.ASSIGNMENT_OPERATORS),t=(0,l.assertOneOf)("=");return function(n,a,i){((0,r.default)("Pattern",n.left)?t:e)(n,a,i)}}()},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")},right:{validate:(0,l.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),p("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,l.assertOneOf)(...o.BINARY_OPERATORS)},left:{validate:function(){const e=(0,l.assertNodeType)("Expression"),t=(0,l.assertNodeType)("Expression","PrivateName");return Object.assign((function(n,r,a){("in"===n.operator?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","PrivateName"]})}()},right:{validate:(0,l.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),p("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("Directive",{visitor:["value"],fields:{value:{validate:(0,l.assertNodeType)("DirectiveLiteral")}}}),p("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block","Statement"]}),p("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("CallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,l.assertNodeType)("Expression","Super","V8IntrinsicIdentifier")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}},{typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),p("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),p("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Expression")},alternate:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),p("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("DebuggerStatement",{aliases:["Statement"]}),p("DoWhileStatement",{visitor:["test","body"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),p("EmptyStatement",{aliases:["Statement"]}),p("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),p("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,l.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertEach)((0,l.assertNodeType)("CommentBlock","CommentLine")):Object.assign((()=>{}),{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,l.assertEach)(Object.assign((()=>{}),{type:"any"})),optional:!0}}}),p("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,l.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},update:{validate:(0,l.assertNodeType)("Expression"),optional:!0},body:{validate:(0,l.assertNodeType)("Statement")}}});const c=()=>({params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement")))},generator:{default:!1},async:{default:!1}});t.functionCommon=c;const u=()=>({returnType:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}});t.functionTypeAnnotationCommon=u;const d=()=>Object.assign({},c(),{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}});t.functionDeclarationCommon=d,p("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","params","body","returnType","typeParameters"],fields:Object.assign({},d(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return()=>{};const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){(0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}()}),p("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const f=()=>({typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.patternLikeCommon=f,p("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","PatternLike","LVal","TSEntityName"],fields:Object.assign({},f(),{name:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&!(0,a.default)(n,!1))throw new TypeError(`"${n}" is not a valid identifier name`)}),{type:"string"}))}}),validate(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const a=/\.(\w+)$/.exec(t);if(!a)return;const[,s]=a,o={computed:!1};if("property"===s){if((0,r.default)("MemberExpression",e,o))return;if((0,r.default)("OptionalMemberExpression",e,o))return}else if("key"===s){if((0,r.default)("Property",e,o))return;if((0,r.default)("Method",e,o))return}else if("exported"===s){if((0,r.default)("ExportSpecifier",e))return}else if("imported"===s){if((0,r.default)("ImportSpecifier",e,{imported:n}))return}else if("meta"===s&&(0,r.default)("MetaProperty",e,{meta:n}))return;if(((0,i.isKeyword)(n.name)||(0,i.isReservedWord)(n.name,!1))&&"this"!==n.name)throw new TypeError(`"${n.name}" is not a valid identifier`)}}),p("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,l.assertNodeType)("Statement")}}}),p("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,l.assertNodeType)("Identifier")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("StringLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,l.chain)((0,l.assertValueType)("number"),Object.assign((function(e,t,n){(1/n<0||!Number.isFinite(n))&&new Error(`NumericLiterals must be non-negative finite numbers. You can use t.valueToNode(${n}) instead.`)}),{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),p("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,l.assertValueType)("string")},flags:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const r=/[^gimsuy]/.exec(n);if(r)throw new TypeError(`"${r[0]}" is not a valid RegExp flag`)}),{type:"string"})),default:""}}}),p("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,l.assertOneOf)(...o.LOGICAL_OPERATORS)},left:{validate:(0,l.assertNodeType)("Expression")},right:{validate:(0,l.assertNodeType)("Expression")}}}),p("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal"],fields:Object.assign({object:{validate:(0,l.assertNodeType)("Expression","Super")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier","PrivateName"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","PrivateName"],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}})}),p("NewExpression",{inherits:"CallExpression"}),p("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceFile:{validate:(0,l.assertValueType)("string")},sourceType:{validate:(0,l.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,l.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block"]}),p("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ObjectMethod","ObjectProperty","SpreadElement")))}}}),p("ObjectMethod",{builder:["kind","key","params","body","computed","generator","async"],fields:Object.assign({},c(),u(),{kind:Object.assign({validate:(0,l.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],n}()},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}}),visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]}),p("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],fields:{computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]})}()},value:{validate:(0,l.assertNodeType)("Expression","PatternLike")},shorthand:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true")}),{type:"boolean"}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!(0,r.default)("Identifier",e.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")})),default:!1},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}},visitor:["key","value","decorators"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:function(){const e=(0,l.assertNodeType)("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),t=(0,l.assertNodeType)("Expression");return function(n,a,i){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ObjectPattern",n)?e:t)(i,"value",i.value)}}()}),p("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["LVal","PatternLike"],deprecatedAlias:"RestProperty",fields:Object.assign({},f(),{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")}}),validate(e,t){if(!process.env.BABEL_TYPES_8_BREAKING)return;const n=/(\w+)\[(\d+)\]/.exec(t);if(!n)throw new Error("Internal Babel error: malformed key.");const[,r,a]=n;if(e[r].length>+a+1)throw new TypeError(`RestElement must be last element of ${r}`)}}),p("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression"),optional:!0}}}),p("SequenceExpression",{visitor:["expressions"],fields:{expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression")))}},aliases:["Expression"]}),p("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}}}),p("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},consequent:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}}}),p("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,l.assertNodeType)("Expression")},cases:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("SwitchCase")))}}}),p("ThisExpression",{aliases:["Expression"]}),p("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:(0,l.chain)((0,l.assertNodeType)("BlockStatement"),Object.assign((function(e){if(process.env.BABEL_TYPES_8_BREAKING&&!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")}),{oneOfNodeTypes:["BlockStatement"]}))},handler:{optional:!0,validate:(0,l.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,l.assertNodeType)("BlockStatement")}}}),p("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),p("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression"):(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),p("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},kind:{validate:(0,l.assertOneOf)("var","let","const","using","await using")},declarations:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("VariableDeclarator")))}},validate(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&(0,r.default)("ForXStatement",e,{left:n})&&1!==n.declarations.length)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${e.type}`)}}),p("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("LVal");const e=(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),t=(0,l.assertNodeType)("Identifier");return function(n,r,a){(n.init?e:t)(n,r,a)}}()},definite:{optional:!0,validate:(0,l.assertValueType)("boolean")},init:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{left:{validate:(0,l.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,l.assertNodeType)("Expression")},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}})}),p("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","PatternLike","LVal")))}})}),p("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["params","body","returnType","typeParameters"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{expression:{validate:(0,l.assertValueType)("boolean")},body:{validate:(0,l.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),p("ClassBody",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")))}}}),p("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0}}}),p("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0}},validate:function(){const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id))}}()}),p("ExportAllDeclaration",{builder:["source"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{source:{validate:(0,l.assertNodeType)("StringLiteral")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value")),attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))}}}),p("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{validate:(0,l.assertNodeType)("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("value"))}}),p("ExportNamedDeclaration",{builder:["declaration","specifiers","source"],visitor:["declaration","specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{optional:!0,validate:(0,l.chain)((0,l.assertNodeType)("Declaration"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration")}),{oneOfNodeTypes:["Declaration"]}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.source)throw new TypeError("Cannot export a declaration from a source")}))},attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},specifiers:{default:[],validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)(function(){const e=(0,l.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),t=(0,l.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?function(n,r,a){(n.source?e:t)(n,r,a)}:e}()))},source:{validate:(0,l.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value"))}}),p("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},exported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,l.assertOneOf)("type","value"),optional:!0}}}),p("ForOfStatement",{visitor:["left","right","body"],builder:["left","right","body","await"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("VariableDeclaration","LVal");const e=(0,l.assertNodeType)("VariableDeclaration"),t=(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return function(n,a,i){(0,r.default)("VariableDeclaration",i)?e(n,a,i):t(n,a,i)}}()},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")},await:{default:!1}}}),p("ImportDeclaration",{builder:["specifiers","source"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:{attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},module:{optional:!0,validate:(0,l.assertValueType)("boolean")},specifiers:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier")))},source:{validate:(0,l.assertNodeType)("StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportSpecifier",{visitor:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},imported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:(0,l.chain)((0,l.assertNodeType)("Identifier"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;let a;switch(n.name){case"function":a="sent";break;case"new":a="target";break;case"import":a="meta"}if(!(0,r.default)("Identifier",e.property,{name:a}))throw new TypeError("Unrecognised MetaProperty")}),{oneOfNodeTypes:["Identifier"]}))},property:{validate:(0,l.assertNodeType)("Identifier")}}});const y=()=>({abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,l.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}});t.classMethodOrPropertyCommon=y;const m=()=>Object.assign({},c(),y(),{params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement","TSParameterProperty")))},kind:{validate:(0,l.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,l.chain)((0,l.assertValueType)("string"),(0,l.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.classMethodOrDeclareMethodCommon=m,p("ClassMethod",{aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["key","params","body","decorators","returnType","typeParameters"],fields:Object.assign({},m(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("ObjectPattern",{visitor:["properties","typeAnnotation","decorators"],builder:["properties"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("RestElement","ObjectProperty")))}})}),p("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Super",{aliases:["Expression"]}),p("TaggedTemplateExpression",{visitor:["tag","quasi","typeParameters"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,l.assertNodeType)("Expression")},quasi:{validate:(0,l.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),p("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,l.chain)((0,l.assertShape)({raw:{validate:(0,l.assertValueType)("string")},cooked:{validate:(0,l.assertValueType)("string"),optional:!0}}),(function(e){const t=e.value.raw;let n=!1;const r=()=>{throw new Error("Internal @babel/types error.")},{str:a,firstInvalidLoc:i}=(0,s.readStringContents)("template",t,0,0,0,{unterminated(){n=!0},strictNumericEscape:r,invalidEscapeSequence:r,numericSeparatorInEscapeSequence:r,unexpectedNumericSeparator:r,invalidDigit:r,invalidCodePoint:r});if(!n)throw new Error("Invalid raw");e.value.cooked=i?null:a}))},tail:{default:!1}}}),p("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TemplateElement")))},expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","TSType")),(function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)}))}}}),p("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")}),{type:"boolean"})),default:!1},argument:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Import",{aliases:["Expression"]}),p("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,l.assertNodeType)("Identifier")}}}),p("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier"]})}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")}}}),p("OptionalCallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:{callee:{validate:(0,l.assertNodeType)("Expression")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")},typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}}}),p("ClassProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"],fields:Object.assign({},y(),{value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassAccessorProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"],fields:Object.assign({},y(),{key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassPrivateProperty",{visitor:["key","value","decorators","typeAnnotation"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,l.assertNodeType)("PrivateName")},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},static:{validate:(0,l.assertValueType)("boolean"),default:!1},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}}}),p("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},m(),u(),{kind:{validate:(0,l.assertOneOf)("get","set","method"),default:"method"},key:{validate:(0,l.assertNodeType)("PrivateName")},body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")}}}),p("StaticBlock",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","FunctionParent"]})},54799:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEPRECATED_ALIASES=void 0,t.DEPRECATED_ALIASES={ModuleDeclaration:"ImportOrExportDeclaration"}},78441:(e,t,n)=>{"use strict";var r=n(94844);(0,r.default)("ArgumentPlaceholder",{}),(0,r.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,r.assertNodeType)("Expression")},callee:{validate:(0,r.assertNodeType)("Expression")}}:{object:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})}}}),(0,r.default)("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,r.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,r.assertNodeType)("StringLiteral")}}}),(0,r.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),(0,r.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,r.assertNodeType)("BlockStatement")},async:{validate:(0,r.assertValueType)("boolean"),default:!1}}}),(0,r.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,r.assertNodeType)("Identifier")}}}),(0,r.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("ObjectProperty","SpreadElement")))}}}),(0,r.default)("TupleExpression",{fields:{elements:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Expression","SpreadElement"))),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,r.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,r.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,r.assertNodeType)("Program")}},aliases:["Expression"]}),(0,r.default)("TopicReference",{aliases:["Expression"]}),(0,r.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]})},47971:(e,t,n)=>{"use strict";var r=n(94844);const a=(0,r.defineAliasedType)("Flow"),i=e=>{const t="DeclareClass"===e;a(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends",...t?["mixins","implements"]:[],"body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends"))},t?{mixins:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),implements:(0,r.validateOptional)((0,r.arrayOfType)("ClassImplements"))}:{},{body:(0,r.validateType)("ObjectTypeAnnotation")})})};a("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,r.validateType)("FlowType")}}),a("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("DeclareClass"),a("DeclareFunction",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),predicate:(0,r.validateOptionalType)("DeclaredPredicate")}}),i("DeclareInterface"),a("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)("BlockStatement"),kind:(0,r.validateOptional)((0,r.assertOneOf)("CommonJS","ES"))}}),a("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateOptionalType)("FlowType")}}),a("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier")}}),a("DeclareExportDeclaration",{visitor:["declaration","specifiers","source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{declaration:(0,r.validateOptionalType)("Flow"),specifiers:(0,r.validateOptional)((0,r.arrayOfType)(["ExportSpecifier","ExportNamespaceSpecifier"])),source:(0,r.validateOptionalType)("StringLiteral"),default:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("DeclareExportAllDeclaration",{visitor:["source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{source:(0,r.validateType)("StringLiteral"),exportKind:(0,r.validateOptional)((0,r.assertOneOf)("type","value"))}}),a("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,r.validateType)("Flow")}}),a("ExistsTypeAnnotation",{aliases:["FlowType"]}),a("FunctionTypeAnnotation",{visitor:["typeParameters","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),params:(0,r.validate)((0,r.arrayOfType)("FunctionTypeParam")),rest:(0,r.validateOptionalType)("FunctionTypeParam"),this:(0,r.validateOptionalType)("FunctionTypeParam"),returnType:(0,r.validateType)("FlowType")}}),a("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,r.validateOptionalType)("Identifier"),typeAnnotation:(0,r.validateType)("FlowType"),optional:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),a("InferredPredicate",{aliases:["FlowPredicate"]}),a("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("InterfaceDeclaration"),a("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),body:(0,r.validateType)("ObjectTypeAnnotation")}}),a("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("number"))}}),a("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,r.validate)((0,r.arrayOfType)(["ObjectTypeProperty","ObjectTypeSpreadProperty"])),indexers:{validate:(0,r.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,r.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,r.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,r.assertValueType)("boolean"),default:!1},inexact:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeInternalSlot",{visitor:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateType)("Identifier"),value:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean")),static:(0,r.validate)((0,r.assertValueType)("boolean")),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeIndexer",{visitor:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateOptionalType)("Identifier"),key:(0,r.validateType)("FlowType"),value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance")}}),a("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,r.validateType)(["Identifier","StringLiteral"]),value:(0,r.validateType)("FlowType"),kind:(0,r.validate)((0,r.assertOneOf)("init","get","set")),static:(0,r.validate)((0,r.assertValueType)("boolean")),proto:(0,r.validate)((0,r.assertValueType)("boolean")),optional:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance"),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,r.validateType)("FlowType")}}),a("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateType)("FlowType")}}),a("QualifiedTypeIdentifier",{visitor:["id","qualification"],fields:{id:(0,r.validateType)("Identifier"),qualification:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"])}}),a("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("string"))}}),a("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,r.validateType)("FlowType")}}),a("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,r.validate)((0,r.assertValueType)("string")),bound:(0,r.validateOptionalType)("TypeAnnotation"),default:(0,r.validateOptionalType)("FlowType"),variance:(0,r.validateOptionalType)("Variance")}}),a("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("TypeParameter"))}}),a("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("Variance",{builder:["kind"],fields:{kind:(0,r.validate)((0,r.assertOneOf)("minus","plus"))}}),a("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,r.validateType)("Identifier"),body:(0,r.validateType)(["EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody"])}}),a("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)(["EnumStringMember","EnumDefaultedMember"]),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumBooleanMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("BooleanLiteral")}}),a("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("NumericLiteral")}}),a("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("StringLiteral")}}),a("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),a("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType")}}),a("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean"))}})},74892:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ALIAS_KEYS",{enumerable:!0,get:function(){return a.ALIAS_KEYS}}),Object.defineProperty(t,"BUILDER_KEYS",{enumerable:!0,get:function(){return a.BUILDER_KEYS}}),Object.defineProperty(t,"DEPRECATED_ALIASES",{enumerable:!0,get:function(){return s.DEPRECATED_ALIASES}}),Object.defineProperty(t,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return a.DEPRECATED_KEYS}}),Object.defineProperty(t,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return a.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(t,"NODE_FIELDS",{enumerable:!0,get:function(){return a.NODE_FIELDS}}),Object.defineProperty(t,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return a.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(t,"PLACEHOLDERS",{enumerable:!0,get:function(){return i.PLACEHOLDERS}}),Object.defineProperty(t,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_ALIAS}}),Object.defineProperty(t,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_FLIPPED_ALIAS}}),t.TYPES=void 0,Object.defineProperty(t,"VISITOR_KEYS",{enumerable:!0,get:function(){return a.VISITOR_KEYS}});var r=n(53164);n(9266),n(47971),n(40123),n(81206),n(78441),n(44580);var a=n(94844),i=n(21465),s=n(54799);Object.keys(s.DEPRECATED_ALIASES).forEach((e=>{a.FLIPPED_ALIAS_KEYS[e]=a.FLIPPED_ALIAS_KEYS[s.DEPRECATED_ALIASES[e]]})),r(a.VISITOR_KEYS),r(a.ALIAS_KEYS),r(a.FLIPPED_ALIAS_KEYS),r(a.NODE_FIELDS),r(a.BUILDER_KEYS),r(a.DEPRECATED_KEYS),r(i.PLACEHOLDERS_ALIAS),r(i.PLACEHOLDERS_FLIPPED_ALIAS);const o=[].concat(Object.keys(a.VISITOR_KEYS),Object.keys(a.FLIPPED_ALIAS_KEYS),Object.keys(a.DEPRECATED_KEYS));t.TYPES=o},40123:(e,t,n)=>{"use strict";var r=n(94844);const a=(0,r.defineAliasedType)("JSX");a("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,r.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),a("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),a("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,r.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,r.assertNodeType)("JSXClosingElement")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}},{selfClosing:{validate:(0,r.assertValueType)("boolean"),optional:!0}})}),a("JSXEmptyExpression",{}),a("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression","JSXEmptyExpression")}}}),a("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}}),a("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,r.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,r.assertNodeType)("JSXIdentifier")},name:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","attributes"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXAttribute","JSXSpreadAttribute")))},typeParameters:{validate:(0,r.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),a("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}}}),a("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,r.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,r.assertNodeType)("JSXClosingFragment")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}}}),a("JSXOpeningFragment",{aliases:["Immutable"]}),a("JSXClosingFragment",{aliases:["Immutable"]})},81206:(e,t,n)=>{"use strict";var r=n(94844),a=n(21465);const i=(0,r.defineAliasedType)("Miscellaneous");i("Noop",{visitor:[]}),i("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:{name:{validate:(0,r.assertNodeType)("Identifier")},expectedNode:{validate:(0,r.assertOneOf)(...a.PLACEHOLDERS)}}}),i("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}})},21465:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PLACEHOLDERS_FLIPPED_ALIAS=t.PLACEHOLDERS_ALIAS=t.PLACEHOLDERS=void 0;var r=n(94844);const a=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"];t.PLACEHOLDERS=a;const i={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};t.PLACEHOLDERS_ALIAS=i;for(const e of a){const t=r.ALIAS_KEYS[e];null!=t&&t.length&&(i[e]=t)}const s={};t.PLACEHOLDERS_FLIPPED_ALIAS=s,Object.keys(i).forEach((e=>{i[e].forEach((t=>{Object.hasOwnProperty.call(s,t)||(s[t]=[]),s[t].push(e)}))}))},44580:(e,t,n)=>{"use strict";var r=n(94844),a=n(9266),i=n(23443);const s=(0,r.defineAliasedType)("TypeScript"),o=(0,r.assertValueType)("boolean"),l=()=>({returnType:{validate:(0,r.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,r.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}});s("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,r.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,r.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,r.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,r.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Decorator"))),optional:!0}}}),s("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},(0,a.functionDeclarationCommon)(),l())}),s("TSDeclareMethod",{visitor:["decorators","key","typeParameters","params","returnType"],fields:Object.assign({},(0,a.classMethodOrDeclareMethodCommon)(),l())}),s("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,r.validateType)("TSEntityName"),right:(0,r.validateType)("Identifier")}});const p=()=>({typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,r.validateArrayOfType)(["ArrayPattern","Identifier","ObjectPattern","RestElement"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}),c={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:p()};s("TSCallSignatureDeclaration",c),s("TSConstructSignatureDeclaration",c);const u=()=>({key:(0,r.validateType)("Expression"),computed:{default:!1},optional:(0,r.validateOptional)(o)});s("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation","initializer"],fields:Object.assign({},u(),{readonly:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),initializer:(0,r.validateOptionalType)("Expression"),kind:{validate:(0,r.assertOneOf)("get","set")}})}),s("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},p(),u(),{kind:{validate:(0,r.assertOneOf)("method","get","set")}})}),s("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,r.validateOptional)(o),static:(0,r.validateOptional)(o),parameters:(0,r.validateArrayOfType)("Identifier"),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}});const d=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const e of d)s(e,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});s("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const f={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};s("TSFunctionType",Object.assign({},f,{fields:p()})),s("TSConstructorType",Object.assign({},f,{fields:Object.assign({},p(),{abstract:(0,r.validateOptional)(o)})})),s("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,r.validateType)(["Identifier","TSThisType"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),asserts:(0,r.validateOptional)(o)}}),s("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:{exprName:(0,r.validateType)(["TSEntityName","TSImportType"]),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,r.validateType)("TSType")}}),s("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,r.validateArrayOfType)(["TSType","TSNamedTupleMember"])}}),s("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,r.validateType)("Identifier"),optional:{validate:o,default:!1},elementType:(0,r.validateType)("TSType")}});const y={aliases:["TSType"],visitor:["types"],fields:{types:(0,r.validateArrayOfType)("TSType")}};s("TSUnionType",y),s("TSIntersectionType",y),s("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,r.validateType)("TSType"),extendsType:(0,r.validateType)("TSType"),trueType:(0,r.validateType)("TSType"),falseType:(0,r.validateType)("TSType")}}),s("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,r.validateType)("TSTypeParameter")}}),s("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{operator:(0,r.validate)((0,r.assertValueType)("string")),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,r.validateType)("TSType"),indexType:(0,r.validateType)("TSType")}}),s("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","typeAnnotation","nameType"],fields:{readonly:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeParameter:(0,r.validateType)("TSTypeParameter"),optional:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeAnnotation:(0,r.validateOptionalType)("TSType"),nameType:(0,r.validateOptionalType)("TSType")}}),s("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const e=(0,r.assertNodeType)("NumericLiteral","BigIntLiteral"),t=(0,r.assertOneOf)("-"),n=(0,r.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral");function a(r,a,s){(0,i.default)("UnaryExpression",s)?(t(s,"operator",s.operator),e(s,"argument",s.argument)):n(r,a,s)}return a.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],a}()}}}),s("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,r.validateType)("TSInterfaceBody")}}),s("TSInterfaceBody",{visitor:["body"],fields:{body:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("Expression"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}});const m={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TSType")}};s("TSAsExpression",m),s("TSSatisfiesExpression",m),s("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,r.validateType)("TSType"),expression:(0,r.validateType)("Expression")}}),s("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,r.validateOptional)(o),const:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),members:(0,r.validateArrayOfType)("TSEnumMember"),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{declare:(0,r.validateOptional)(o),global:(0,r.validateOptional)(o),id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)(["TSModuleBlock","TSModuleDeclaration"])}}),s("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:(0,r.validateArrayOfType)("Statement")}}),s("TSImportType",{aliases:["TSType"],visitor:["argument","qualifier","typeParameters"],fields:{argument:(0,r.validateType)("StringLiteral"),qualifier:(0,r.validateOptionalType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSImportEqualsDeclaration",{aliases:["Statement"],visitor:["id","moduleReference"],fields:{isExport:(0,r.validate)(o),id:(0,r.validateType)("Identifier"),moduleReference:(0,r.validateType)(["TSEntityName","TSExternalModuleReference"]),importKind:{validate:(0,r.assertOneOf)("type","value"),optional:!0}}}),s("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,r.validateType)("StringLiteral")}}),s("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),s("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,r.assertNodeType)("TSType")}}}),s("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSType")))}}}),s("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSTypeParameter")))}}}),s("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,r.assertValueType)("string")},in:{validate:(0,r.assertValueType)("boolean"),optional:!0},out:{validate:(0,r.assertValueType)("boolean"),optional:!0},const:{validate:(0,r.assertValueType)("boolean"),optional:!0},constraint:{validate:(0,r.assertNodeType)("TSType"),optional:!0},default:{validate:(0,r.assertNodeType)("TSType"),optional:!0}}})},94844:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VISITOR_KEYS=t.NODE_PARENT_VALIDATIONS=t.NODE_FIELDS=t.FLIPPED_ALIAS_KEYS=t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.ALIAS_KEYS=void 0,t.arrayOf=m,t.arrayOfType=h,t.assertEach=T,t.assertNodeOrValueType=function(...e){function t(t,n,i){for(const s of e)if(d(i)===s||(0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeOrValueTypes=e,t},t.assertNodeType=S,t.assertOneOf=function(...e){function t(t,n,r){if(e.indexOf(r)<0)throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t},t.assertOptionalChainStart=function(){return function(e){var t;let n=e;for(;e;){const{type:e}=n;if("OptionalCallExpression"!==e){if("OptionalMemberExpression"!==e)break;if(n.optional)return;n=n.object}else{if(n.optional)return;n=n.callee}}throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null==(t=n)?void 0:t.type}`)}},t.assertShape=function(e){function t(t,n,r){const i=[];for(const n of Object.keys(e))try{(0,a.validateField)(t,n,r[n],e[n])}catch(e){if(e instanceof TypeError){i.push(e.message);continue}throw e}if(i.length)throw new TypeError(`Property ${n} of ${t.type} expected to have the following:\n${i.join("\n")}`)}return t.shapeOf=e,t},t.assertValueType=b,t.chain=E,t.default=A,t.defineAliasedType=function(...e){return(t,n={})=>{let r=n.aliases;var a;r||(n.inherits&&(r=null==(a=g[n.inherits].aliases)?void 0:a.slice()),null!=r||(r=[]),n.aliases=r);const i=e.filter((e=>!r.includes(e)));r.unshift(...i),A(t,n)}},t.typeIs=y,t.validate=f,t.validateArrayOfType=function(e){return f(h(e))},t.validateOptional=function(e){return{validate:e,optional:!0}},t.validateOptionalType=function(e){return{validate:y(e),optional:!0}},t.validateType=function(e){return f(y(e))};var r=n(23443),a=n(70522);const i={};t.VISITOR_KEYS=i;const s={};t.ALIAS_KEYS=s;const o={};t.FLIPPED_ALIAS_KEYS=o;const l={};t.NODE_FIELDS=l;const p={};t.BUILDER_KEYS=p;const c={};t.DEPRECATED_KEYS=c;const u={};function d(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function f(e){return{validate:e}}function y(e){return"string"==typeof e?S(e):S(...e)}function m(e){return E(b("array"),T(e))}function h(e){return m(y(e))}function T(e){function t(t,n,r){if(Array.isArray(r))for(let i=0;i<r.length;i++){const s=`${n}[${i}]`,o=r[i];e(t,s,o),process.env.BABEL_TYPES_8_BREAKING&&(0,a.validateChild)(t,s,o)}}return t.each=e,t}function S(...e){function t(t,n,i){for(const s of e)if((0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeTypes=e,t}function b(e){function t(t,n,r){if(d(r)!==e)throw new TypeError(`Property ${n} expected type of ${e} but got ${d(r)}`)}return t.type=e,t}function E(...e){function t(...t){for(const n of e)n(...t)}if(t.chainOf=e,e.length>=2&&"type"in e[0]&&"array"===e[0].type&&!("each"in e[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return t}t.NODE_PARENT_VALIDATIONS=u;const P=["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate"],x=["default","optional","deprecated","validate"],g={};function A(e,t={}){const n=t.inherits&&g[t.inherits]||{};let r=t.fields;if(!r&&(r={},n.fields)){const e=Object.getOwnPropertyNames(n.fields);for(const t of e){const e=n.fields[t],a=e.default;if(Array.isArray(a)?a.length>0:a&&"object"==typeof a)throw new Error("field defaults can only be primitives or empty arrays currently");r[t]={default:Array.isArray(a)?[]:a,optional:e.optional,deprecated:e.deprecated,validate:e.validate}}}const a=t.visitor||n.visitor||[],f=t.aliases||n.aliases||[],y=t.builder||n.builder||t.visitor||[];for(const n of Object.keys(t))if(-1===P.indexOf(n))throw new Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(c[t.deprecatedAlias]=e);for(const e of a.concat(y))r[e]=r[e]||{};for(const t of Object.keys(r)){const n=r[t];void 0!==n.default&&-1===y.indexOf(t)&&(n.optional=!0),void 0===n.default?n.default=null:n.validate||null==n.default||(n.validate=b(d(n.default)));for(const r of Object.keys(n))if(-1===x.indexOf(r))throw new Error(`Unknown field key "${r}" on ${e}.${t}`)}i[e]=t.visitor=a,p[e]=t.builder=y,l[e]=t.fields=r,s[e]=t.aliases=f,f.forEach((t=>{o[t]=o[t]||[],o[t].push(e)})),t.validate&&(u[e]=t.validate),g[e]=t}},84250:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={react:!0,assertNode:!0,createTypeAnnotationBasedOnTypeof:!0,createUnionTypeAnnotation:!0,createFlowUnionType:!0,createTSUnionType:!0,cloneNode:!0,clone:!0,cloneDeep:!0,cloneDeepWithoutLoc:!0,cloneWithoutLoc:!0,addComment:!0,addComments:!0,inheritInnerComments:!0,inheritLeadingComments:!0,inheritsComments:!0,inheritTrailingComments:!0,removeComments:!0,ensureBlock:!0,toBindingIdentifierName:!0,toBlock:!0,toComputedKey:!0,toExpression:!0,toIdentifier:!0,toKeyAlias:!0,toSequenceExpression:!0,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,traverse:!0,traverseFast:!0,shallowEqual:!0,is:!0,isBinding:!0,isBlockScoped:!0,isImmutable:!0,isLet:!0,isNode:!0,isNodesEquivalent:!0,isPlaceholderType:!0,isReferenced:!0,isScope:!0,isSpecifierDefault:!0,isType:!0,isValidES3Identifier:!0,isValidIdentifier:!0,isVar:!0,matchesPattern:!0,validate:!0,buildMatchMemberExpression:!0,__internal__deprecationWarning:!0};Object.defineProperty(t,"__internal__deprecationWarning",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"addComment",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"addComments",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"appendToMemberExpression",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"assertNode",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"buildMatchMemberExpression",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"clone",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"cloneDeep",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"cloneNode",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"cloneWithoutLoc",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"createFlowUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"createTSUnionType",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"ensureBlock",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"inheritInnerComments",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"inheritLeadingComments",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"inheritTrailingComments",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"inherits",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"inheritsComments",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"is",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"isPlaceholderType",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"isType",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"isValidES3Identifier",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"matchesPattern",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"prependToMemberExpression",{enumerable:!0,get:function(){return V.default}}),t.react=void 0,Object.defineProperty(t,"removeComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"removeProperties",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"removePropertiesDeep",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"shallowEqual",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"toSequenceExpression",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"traverseFast",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return B.default}});var a=n(26168),i=n(4319),s=n(27620),o=n(68846),l=n(50761);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var p=n(92927),c=n(61904),u=n(35266),d=n(797);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=n(82988);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}));var y=n(49021),m=n(66481),h=n(16550),T=n(8841),S=n(72160),b=n(33155),E=n(65540),P=n(59187),x=n(44564),g=n(25681),A=n(83987),v=n(40295),O=n(10080);Object.keys(O).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===O[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return O[e]}}))}));var I=n(65857);Object.keys(I).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===I[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return I[e]}}))}));var N=n(6436),D=n(4090),C=n(35322),w=n(50192),L=n(41229),j=n(54834),_=n(44386),M=n(40618),k=n(29836),B=n(13671),F=n(74892);Object.keys(F).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===F[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return F[e]}}))}));var R=n(69594),K=n(79011),V=n(46817),Y=n(55467),U=n(59321),X=n(76052),J=n(74390),W=n(68507),q=n(94838);Object.keys(q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return q[e]}}))}));var $=n(99308),G=n(60617),z=n(23443),H=n(64753),Q=n(83351),Z=n(5126),ee=n(61126),te=n(76539),ne=n(72202),re=n(60353),ae=n(46551),ie=n(72812),se=n(99737),oe=n(39075),le=n(82529),pe=n(65287),ce=n(95382),ue=n(8465),de=n(70522),fe=n(40588),ye=n(48250);Object.keys(ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ye[e]}}))}));var me=n(89990);const he={isReactComponent:a.default,isCompatTag:i.default,buildChildren:s.default};t.react=he},69594:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n=!1){return e.object=(0,r.memberExpression)(e.object,e.property,e.computed),e.property=t,e.computed=!!n,e};var r=n(797)},76052:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isAnyTypeAnnotation)(p))return[p];if((0,r.isFlowBaseAnnotation)(p))s.set(p.type,p);else if((0,r.isUnionTypeAnnotation)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isGenericTypeAnnotation)(p)){const t=a(p.id);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(48250);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.id.name}.${a(e.qualification)}`}},79011:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!e||!t)return e;for(const n of r.INHERIT_KEYS.optional)null==e[n]&&(e[n]=t[n]);for(const n of Object.keys(t))"_"===n[0]&&"__clone"!==n&&(e[n]=t[n]);for(const n of r.INHERIT_KEYS.force)e[n]=t[n];return(0,a.default)(e,t),e};var r=n(65857),a=n(25681)},46817:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,a.isSuper)(e.object))throw new Error("Cannot prepend node to super property access (`super.foo`).");return e.object=(0,r.memberExpression)(t,e.object),e};var r=n(797),a=n(84250)},55467:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t={}){const n=t.preserveComments?a:i;for(const t of n)null!=e[t]&&(e[t]=void 0);for(const t of Object.keys(e))"_"===t[0]&&null!=e[t]&&(e[t]=void 0);const r=Object.getOwnPropertySymbols(e);for(const t of r)e[t]=null};var r=n(65857);const a=["tokens","start","end","loc","raw","rawValue"],i=[...r.COMMENT_KEYS,"comments",...a]},59321:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,a.default,t),e};var r=n(99308),a=n(55467)},60747:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isTSAnyKeyword)(p))return[p];if((0,r.isTSBaseType)(p))s.set(p.type,p);else if((0,r.isTSUnionType)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isTSTypeReference)(p)&&p.typeParameters){const t=a(p.typeName);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(48250);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.right.name}.${a(e.left)}`}},74390:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var r=n(48250);function a(e,t,n){const i=[].concat(e),s=Object.create(null);for(;i.length;){const e=i.shift();if(!e)continue;const o=a.keys[e.type];if((0,r.isIdentifier)(e))t?(s[e.name]=s[e.name]||[]).push(e):s[e.name]=e;else if(!(0,r.isExportDeclaration)(e)||(0,r.isExportAllDeclaration)(e)){if(n){if((0,r.isFunctionDeclaration)(e)){i.push(e.id);continue}if((0,r.isFunctionExpression)(e))continue}if(o)for(let t=0;t<o.length;t++){const n=e[o[t]];n&&(Array.isArray(n)?i.push(...n):i.push(n))}}else(0,r.isDeclaration)(e.declaration)&&i.push(e.declaration)}return s}a.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]}},68507:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(74390);t.default=function(e,t){return(0,r.default)(e,t,!0)}},94838:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){"function"==typeof t&&(t={enter:t});const{enter:r,exit:i}=t;a(e,r,i,n,[])};var r=n(74892);function a(e,t,n,i,s){const o=r.VISITOR_KEYS[e.type];if(o){t&&t(e,s,i);for(const r of o){const o=e[r];if(Array.isArray(o))for(let l=0;l<o.length;l++){const p=o[l];p&&(s.push({node:e,key:r,index:l}),a(p,t,n,i,s),s.pop())}else o&&(s.push({node:e,key:r}),a(o,t,n,i,s),s.pop())}n&&n(e,s,i)}}},99308:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,a){if(!t)return;const i=r.VISITOR_KEYS[t.type];if(i){n(t,a=a||{});for(const r of i){const i=t[r];if(Array.isArray(i))for(const t of i)e(t,n,a);else e(i,n,a)}}};var r=n(74892)},89990:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r=""){if(n.has(e))return;n.add(e);const{internal:a,trace:i}=function(e,t){const{stackTraceLimit:n,prepareStackTrace:r}=Error;let a;if(Error.stackTraceLimit=4,Error.prepareStackTrace=function(e,t){a=t},(new Error).stack,Error.stackTraceLimit=n,Error.prepareStackTrace=r,!a)return{internal:!1,trace:""};const i=a.slice(2,4);return{internal:/[\\/]@babel[\\/]/.test(i[1].getFileName()),trace:i.map((e=>` at ${e}`)).join("\n")}}();a||console.warn(`${r}\`${e}\` has been deprecated, please migrate to \`${t}\`\n${i}`)};const n=new Set},95667:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))}},34651:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.value.split(/\r\n|\n|\r/);let i=0;for(let e=0;e<n.length;e++)n[e].match(/[^ \t]/)&&(i=e);let s="";for(let e=0;e<n.length;e++){const t=n[e],r=0===e,a=e===n.length-1,o=e===i;let l=t.replace(/\t/g," ");r||(l=l.replace(/^[ ]+/,"")),a||(l=l.replace(/[ ]+$/,"")),l&&(o||(l+=" "),s+=l)}s&&t.push((0,a.inherits)((0,r.stringLiteral)(s),e))};var r=n(797),a=n(84250)},60617:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=Object.keys(t);for(const r of n)if(e[r]!==t[r])return!1;return!0}},40588:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.split(".");return e=>(0,r.default)(e,n,t)};var r=n(8465)},48250:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAccessor=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t)))},t.isAnyTypeAnnotation=function(e,t){return!!e&&"AnyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArgumentPlaceholder=function(e,t){return!!e&&"ArgumentPlaceholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayExpression=function(e,t){return!!e&&"ArrayExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayPattern=function(e,t){return!!e&&"ArrayPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayTypeAnnotation=function(e,t){return!!e&&"ArrayTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrowFunctionExpression=function(e,t){return!!e&&"ArrowFunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentExpression=function(e,t){return!!e&&"AssignmentExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentPattern=function(e,t){return!!e&&"AssignmentPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isAwaitExpression=function(e,t){return!!e&&"AwaitExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBigIntLiteral=function(e,t){return!!e&&"BigIntLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBinary=function(e,t){if(!e)return!1;switch(e.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBinaryExpression=function(e,t){return!!e&&"BinaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBindExpression=function(e,t){return!!e&&"BindExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBlock=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockParent=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockStatement=function(e,t){return!!e&&"BlockStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteral=function(e,t){return!!e&&"BooleanLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteralTypeAnnotation=function(e,t){return!!e&&"BooleanLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanTypeAnnotation=function(e,t){return!!e&&"BooleanTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBreakStatement=function(e,t){return!!e&&"BreakStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isCallExpression=function(e,t){return!!e&&"CallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isCatchClause=function(e,t){return!!e&&"CatchClause"===e.type&&(null==t||(0,r.default)(e,t))},t.isClass=function(e,t){if(!e)return!1;switch(e.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isClassAccessorProperty=function(e,t){return!!e&&"ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassBody=function(e,t){return!!e&&"ClassBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassDeclaration=function(e,t){return!!e&&"ClassDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassExpression=function(e,t){return!!e&&"ClassExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassImplements=function(e,t){return!!e&&"ClassImplements"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassMethod=function(e,t){return!!e&&"ClassMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateMethod=function(e,t){return!!e&&"ClassPrivateMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateProperty=function(e,t){return!!e&&"ClassPrivateProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassProperty=function(e,t){return!!e&&"ClassProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isCompletionStatement=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditional=function(e,t){if(!e)return!1;switch(e.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditionalExpression=function(e,t){return!!e&&"ConditionalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isContinueStatement=function(e,t){return!!e&&"ContinueStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDebuggerStatement=function(e,t){return!!e&&"DebuggerStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecimalLiteral=function(e,t){return!!e&&"DecimalLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"VariableDeclaration":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":break;case"Placeholder":if("Declaration"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isDeclareClass=function(e,t){return!!e&&"DeclareClass"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportAllDeclaration=function(e,t){return!!e&&"DeclareExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportDeclaration=function(e,t){return!!e&&"DeclareExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareFunction=function(e,t){return!!e&&"DeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareInterface=function(e,t){return!!e&&"DeclareInterface"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModule=function(e,t){return!!e&&"DeclareModule"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModuleExports=function(e,t){return!!e&&"DeclareModuleExports"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareOpaqueType=function(e,t){return!!e&&"DeclareOpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareTypeAlias=function(e,t){return!!e&&"DeclareTypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareVariable=function(e,t){return!!e&&"DeclareVariable"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaredPredicate=function(e,t){return!!e&&"DeclaredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecorator=function(e,t){return!!e&&"Decorator"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirective=function(e,t){return!!e&&"Directive"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirectiveLiteral=function(e,t){return!!e&&"DirectiveLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoExpression=function(e,t){return!!e&&"DoExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoWhileStatement=function(e,t){return!!e&&"DoWhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyStatement=function(e,t){return!!e&&"EmptyStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyTypeAnnotation=function(e,t){return!!e&&"EmptyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBody=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumBooleanBody=function(e,t){return!!e&&"EnumBooleanBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBooleanMember=function(e,t){return!!e&&"EnumBooleanMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDeclaration=function(e,t){return!!e&&"EnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDefaultedMember=function(e,t){return!!e&&"EnumDefaultedMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumMember=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumNumberBody=function(e,t){return!!e&&"EnumNumberBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumNumberMember=function(e,t){return!!e&&"EnumNumberMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringBody=function(e,t){return!!e&&"EnumStringBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringMember=function(e,t){return!!e&&"EnumStringMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumSymbolBody=function(e,t){return!!e&&"EnumSymbolBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isExistsTypeAnnotation=function(e,t){return!!e&&"ExistsTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportAllDeclaration=function(e,t){return!!e&&"ExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExportDefaultDeclaration=function(e,t){return!!e&&"ExportDefaultDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDefaultSpecifier=function(e,t){return!!e&&"ExportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamedDeclaration=function(e,t){return!!e&&"ExportNamedDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamespaceSpecifier=function(e,t){return!!e&&"ExportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportSpecifier=function(e,t){return!!e&&"ExportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpression=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ParenthesizedExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":case"ArrowFunctionExpression":case"ClassExpression":case"MetaProperty":case"Super":case"TaggedTemplateExpression":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"OptionalMemberExpression":case"OptionalCallExpression":case"TypeCastExpression":case"JSXElement":case"JSXFragment":case"BindExpression":case"DoExpression":case"RecordExpression":case"TupleExpression":case"DecimalLiteral":case"ModuleExpression":case"TopicReference":case"PipelineTopicExpression":case"PipelineBareFunction":case"PipelinePrimaryTopicReference":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExpressionStatement=function(e,t){return!!e&&"ExpressionStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpressionWrapper=function(e,t){if(!e)return!1;switch(e.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFile=function(e,t){return!!e&&"File"===e.type&&(null==t||(0,r.default)(e,t))},t.isFlow=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ClassImplements":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"DeclaredPredicate":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"FunctionTypeParam":case"GenericTypeAnnotation":case"InferredPredicate":case"InterfaceExtends":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":case"OpaqueType":case"QualifiedTypeIdentifier":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"TypeAlias":case"TypeAnnotation":case"TypeCastExpression":case"TypeParameter":case"TypeParameterDeclaration":case"TypeParameterInstantiation":case"UnionTypeAnnotation":case"Variance":case"VoidTypeAnnotation":case"EnumDeclaration":case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowBaseAnnotation=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"BooleanTypeAnnotation":case"NullLiteralTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NumberTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"VoidTypeAnnotation":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowPredicate=function(e,t){if(!e)return!1;switch(e.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowType=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"UnionTypeAnnotation":case"VoidTypeAnnotation":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFor=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isForInStatement=function(e,t){return!!e&&"ForInStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForOfStatement=function(e,t){return!!e&&"ForOfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForStatement=function(e,t){return!!e&&"ForStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForXStatement=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunction=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionDeclaration=function(e,t){return!!e&&"FunctionDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionExpression=function(e,t){return!!e&&"FunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionParent=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionTypeAnnotation=function(e,t){return!!e&&"FunctionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionTypeParam=function(e,t){return!!e&&"FunctionTypeParam"===e.type&&(null==t||(0,r.default)(e,t))},t.isGenericTypeAnnotation=function(e,t){return!!e&&"GenericTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isIdentifier=function(e,t){return!!e&&"Identifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIfStatement=function(e,t){return!!e&&"IfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isImmutable=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"BigIntLiteral":case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXOpeningElement":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isImport=function(e,t){return!!e&&"Import"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportAttribute=function(e,t){return!!e&&"ImportAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDeclaration=function(e,t){return!!e&&"ImportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDefaultSpecifier=function(e,t){return!!e&&"ImportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportNamespaceSpecifier=function(e,t){return!!e&&"ImportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportOrExportDeclaration=i,t.isImportSpecifier=function(e,t){return!!e&&"ImportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIndexedAccessType=function(e,t){return!!e&&"IndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isInferredPredicate=function(e,t){return!!e&&"InferredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceDeclaration=function(e,t){return!!e&&"InterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceExtends=function(e,t){return!!e&&"InterfaceExtends"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceTypeAnnotation=function(e,t){return!!e&&"InterfaceTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterpreterDirective=function(e,t){return!!e&&"InterpreterDirective"===e.type&&(null==t||(0,r.default)(e,t))},t.isIntersectionTypeAnnotation=function(e,t){return!!e&&"IntersectionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSX=function(e,t){if(!e)return!1;switch(e.type){case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXEmptyExpression":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXIdentifier":case"JSXMemberExpression":case"JSXNamespacedName":case"JSXOpeningElement":case"JSXSpreadAttribute":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isJSXAttribute=function(e,t){return!!e&&"JSXAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingElement=function(e,t){return!!e&&"JSXClosingElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingFragment=function(e,t){return!!e&&"JSXClosingFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXElement=function(e,t){return!!e&&"JSXElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXEmptyExpression=function(e,t){return!!e&&"JSXEmptyExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXExpressionContainer=function(e,t){return!!e&&"JSXExpressionContainer"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXFragment=function(e,t){return!!e&&"JSXFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXIdentifier=function(e,t){return!!e&&"JSXIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXMemberExpression=function(e,t){return!!e&&"JSXMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXNamespacedName=function(e,t){return!!e&&"JSXNamespacedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningElement=function(e,t){return!!e&&"JSXOpeningElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningFragment=function(e,t){return!!e&&"JSXOpeningFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadAttribute=function(e,t){return!!e&&"JSXSpreadAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadChild=function(e,t){return!!e&&"JSXSpreadChild"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXText=function(e,t){return!!e&&"JSXText"===e.type&&(null==t||(0,r.default)(e,t))},t.isLVal=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSParameterProperty":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLabeledStatement=function(e,t){return!!e&&"LabeledStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isLiteral=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLogicalExpression=function(e,t){return!!e&&"LogicalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isLoop=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMemberExpression=function(e,t){return!!e&&"MemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isMetaProperty=function(e,t){return!!e&&"MetaProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isMethod=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMiscellaneous=function(e,t){if(!e)return!1;switch(e.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMixedTypeAnnotation=function(e,t){return!!e&&"MixedTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleDeclaration=function(e,t){return(0,a.default)("isModuleDeclaration","isImportOrExportDeclaration"),i(e,t)},t.isModuleExpression=function(e,t){return!!e&&"ModuleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleSpecifier=function(e,t){if(!e)return!1;switch(e.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isNewExpression=function(e,t){return!!e&&"NewExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isNoop=function(e,t){return!!e&&"Noop"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteral=function(e,t){return!!e&&"NullLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteralTypeAnnotation=function(e,t){return!!e&&"NullLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullableTypeAnnotation=function(e,t){return!!e&&"NullableTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteral=function(e,t){return(0,a.default)("isNumberLiteral","isNumericLiteral"),!!e&&"NumberLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteralTypeAnnotation=function(e,t){return!!e&&"NumberLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberTypeAnnotation=function(e,t){return!!e&&"NumberTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumericLiteral=function(e,t){return!!e&&"NumericLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectExpression=function(e,t){return!!e&&"ObjectExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectMember=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isObjectMethod=function(e,t){return!!e&&"ObjectMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectPattern=function(e,t){return!!e&&"ObjectPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectProperty=function(e,t){return!!e&&"ObjectProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeAnnotation=function(e,t){return!!e&&"ObjectTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeCallProperty=function(e,t){return!!e&&"ObjectTypeCallProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeIndexer=function(e,t){return!!e&&"ObjectTypeIndexer"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeInternalSlot=function(e,t){return!!e&&"ObjectTypeInternalSlot"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeProperty=function(e,t){return!!e&&"ObjectTypeProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeSpreadProperty=function(e,t){return!!e&&"ObjectTypeSpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isOpaqueType=function(e,t){return!!e&&"OpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalCallExpression=function(e,t){return!!e&&"OptionalCallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalIndexedAccessType=function(e,t){return!!e&&"OptionalIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalMemberExpression=function(e,t){return!!e&&"OptionalMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isParenthesizedExpression=function(e,t){return!!e&&"ParenthesizedExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPattern=function(e,t){if(!e)return!1;switch(e.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":break;case"Placeholder":if("Pattern"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPatternLike=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPipelineBareFunction=function(e,t){return!!e&&"PipelineBareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelinePrimaryTopicReference=function(e,t){return!!e&&"PipelinePrimaryTopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelineTopicExpression=function(e,t){return!!e&&"PipelineTopicExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPlaceholder=function(e,t){return!!e&&"Placeholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isPrivate=function(e,t){if(!e)return!1;switch(e.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPrivateName=function(e,t){return!!e&&"PrivateName"===e.type&&(null==t||(0,r.default)(e,t))},t.isProgram=function(e,t){return!!e&&"Program"===e.type&&(null==t||(0,r.default)(e,t))},t.isProperty=function(e,t){if(!e)return!1;switch(e.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPureish=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"ArrowFunctionExpression":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isQualifiedTypeIdentifier=function(e,t){return!!e&&"QualifiedTypeIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isRecordExpression=function(e,t){return!!e&&"RecordExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegExpLiteral=function(e,t){return!!e&&"RegExpLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegexLiteral=function(e,t){return(0,a.default)("isRegexLiteral","isRegExpLiteral"),!!e&&"RegexLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestElement=function(e,t){return!!e&&"RestElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestProperty=function(e,t){return(0,a.default)("isRestProperty","isRestElement"),!!e&&"RestProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isReturnStatement=function(e,t){return!!e&&"ReturnStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isScopable=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ClassExpression":case"ClassDeclaration":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isSequenceExpression=function(e,t){return!!e&&"SequenceExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadElement=function(e,t){return!!e&&"SpreadElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadProperty=function(e,t){return(0,a.default)("isSpreadProperty","isSpreadElement"),!!e&&"SpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isStandardized=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"InterpreterDirective":case"Directive":case"DirectiveLiteral":case"BlockStatement":case"BreakStatement":case"CallExpression":case"CatchClause":case"ConditionalExpression":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"File":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Identifier":case"IfStatement":case"LabeledStatement":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"Program":case"ObjectExpression":case"ObjectMethod":case"ObjectProperty":case"RestElement":case"ReturnStatement":case"SequenceExpression":case"ParenthesizedExpression":case"SwitchCase":case"SwitchStatement":case"ThisExpression":case"ThrowStatement":case"TryStatement":case"UnaryExpression":case"UpdateExpression":case"VariableDeclaration":case"VariableDeclarator":case"WhileStatement":case"WithStatement":case"AssignmentPattern":case"ArrayPattern":case"ArrowFunctionExpression":case"ClassBody":case"ClassExpression":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportSpecifier":case"ForOfStatement":case"ImportDeclaration":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"MetaProperty":case"ClassMethod":case"ObjectPattern":case"SpreadElement":case"Super":case"TaggedTemplateExpression":case"TemplateElement":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"ExportNamespaceSpecifier":case"OptionalMemberExpression":case"OptionalCallExpression":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":case"StaticBlock":break;case"Placeholder":switch(e.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStatement=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ForOfStatement":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":case"TSExportAssignment":case"TSNamespaceExportDeclaration":break;case"Placeholder":switch(e.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStaticBlock=function(e,t){return!!e&&"StaticBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteral=function(e,t){return!!e&&"StringLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteralTypeAnnotation=function(e,t){return!!e&&"StringLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringTypeAnnotation=function(e,t){return!!e&&"StringTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isSuper=function(e,t){return!!e&&"Super"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchCase=function(e,t){return!!e&&"SwitchCase"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchStatement=function(e,t){return!!e&&"SwitchStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSymbolTypeAnnotation=function(e,t){return!!e&&"SymbolTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAnyKeyword=function(e,t){return!!e&&"TSAnyKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSArrayType=function(e,t){return!!e&&"TSArrayType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAsExpression=function(e,t){return!!e&&"TSAsExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBaseType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSLiteralType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSBigIntKeyword=function(e,t){return!!e&&"TSBigIntKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBooleanKeyword=function(e,t){return!!e&&"TSBooleanKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSCallSignatureDeclaration=function(e,t){return!!e&&"TSCallSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConditionalType=function(e,t){return!!e&&"TSConditionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructSignatureDeclaration=function(e,t){return!!e&&"TSConstructSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructorType=function(e,t){return!!e&&"TSConstructorType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareFunction=function(e,t){return!!e&&"TSDeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareMethod=function(e,t){return!!e&&"TSDeclareMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEntityName=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if("Identifier"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSEnumDeclaration=function(e,t){return!!e&&"TSEnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEnumMember=function(e,t){return!!e&&"TSEnumMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExportAssignment=function(e,t){return!!e&&"TSExportAssignment"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExpressionWithTypeArguments=function(e,t){return!!e&&"TSExpressionWithTypeArguments"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExternalModuleReference=function(e,t){return!!e&&"TSExternalModuleReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSFunctionType=function(e,t){return!!e&&"TSFunctionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportEqualsDeclaration=function(e,t){return!!e&&"TSImportEqualsDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportType=function(e,t){return!!e&&"TSImportType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexSignature=function(e,t){return!!e&&"TSIndexSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexedAccessType=function(e,t){return!!e&&"TSIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInferType=function(e,t){return!!e&&"TSInferType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInstantiationExpression=function(e,t){return!!e&&"TSInstantiationExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceBody=function(e,t){return!!e&&"TSInterfaceBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceDeclaration=function(e,t){return!!e&&"TSInterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntersectionType=function(e,t){return!!e&&"TSIntersectionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntrinsicKeyword=function(e,t){return!!e&&"TSIntrinsicKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSLiteralType=function(e,t){return!!e&&"TSLiteralType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMappedType=function(e,t){return!!e&&"TSMappedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMethodSignature=function(e,t){return!!e&&"TSMethodSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleBlock=function(e,t){return!!e&&"TSModuleBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleDeclaration=function(e,t){return!!e&&"TSModuleDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamedTupleMember=function(e,t){return!!e&&"TSNamedTupleMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamespaceExportDeclaration=function(e,t){return!!e&&"TSNamespaceExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNeverKeyword=function(e,t){return!!e&&"TSNeverKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNonNullExpression=function(e,t){return!!e&&"TSNonNullExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNullKeyword=function(e,t){return!!e&&"TSNullKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNumberKeyword=function(e,t){return!!e&&"TSNumberKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSObjectKeyword=function(e,t){return!!e&&"TSObjectKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSOptionalType=function(e,t){return!!e&&"TSOptionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParameterProperty=function(e,t){return!!e&&"TSParameterProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParenthesizedType=function(e,t){return!!e&&"TSParenthesizedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSPropertySignature=function(e,t){return!!e&&"TSPropertySignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSQualifiedName=function(e,t){return!!e&&"TSQualifiedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSRestType=function(e,t){return!!e&&"TSRestType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSatisfiesExpression=function(e,t){return!!e&&"TSSatisfiesExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSStringKeyword=function(e,t){return!!e&&"TSStringKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSymbolKeyword=function(e,t){return!!e&&"TSSymbolKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSThisType=function(e,t){return!!e&&"TSThisType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTupleType=function(e,t){return!!e&&"TSTupleType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSImportType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeAliasDeclaration=function(e,t){return!!e&&"TSTypeAliasDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAnnotation=function(e,t){return!!e&&"TSTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAssertion=function(e,t){return!!e&&"TSTypeAssertion"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeElement=function(e,t){if(!e)return!1;switch(e.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeLiteral=function(e,t){return!!e&&"TSTypeLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeOperator=function(e,t){return!!e&&"TSTypeOperator"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameter=function(e,t){return!!e&&"TSTypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterDeclaration=function(e,t){return!!e&&"TSTypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterInstantiation=function(e,t){return!!e&&"TSTypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypePredicate=function(e,t){return!!e&&"TSTypePredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeQuery=function(e,t){return!!e&&"TSTypeQuery"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeReference=function(e,t){return!!e&&"TSTypeReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUndefinedKeyword=function(e,t){return!!e&&"TSUndefinedKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnionType=function(e,t){return!!e&&"TSUnionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnknownKeyword=function(e,t){return!!e&&"TSUnknownKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSVoidKeyword=function(e,t){return!!e&&"TSVoidKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTaggedTemplateExpression=function(e,t){return!!e&&"TaggedTemplateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateElement=function(e,t){return!!e&&"TemplateElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateLiteral=function(e,t){return!!e&&"TemplateLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTerminatorless=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isThisExpression=function(e,t){return!!e&&"ThisExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isThisTypeAnnotation=function(e,t){return!!e&&"ThisTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isThrowStatement=function(e,t){return!!e&&"ThrowStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTopicReference=function(e,t){return!!e&&"TopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTryStatement=function(e,t){return!!e&&"TryStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleExpression=function(e,t){return!!e&&"TupleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleTypeAnnotation=function(e,t){return!!e&&"TupleTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAlias=function(e,t){return!!e&&"TypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAnnotation=function(e,t){return!!e&&"TypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeCastExpression=function(e,t){return!!e&&"TypeCastExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameter=function(e,t){return!!e&&"TypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterDeclaration=function(e,t){return!!e&&"TypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterInstantiation=function(e,t){return!!e&&"TypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeScript=function(e,t){if(!e)return!1;switch(e.type){case"TSParameterProperty":case"TSDeclareFunction":case"TSDeclareMethod":case"TSQualifiedName":case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSNamedTupleMember":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSInterfaceDeclaration":case"TSInterfaceBody":case"TSTypeAliasDeclaration":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSEnumDeclaration":case"TSEnumMember":case"TSModuleDeclaration":case"TSModuleBlock":case"TSImportType":case"TSImportEqualsDeclaration":case"TSExternalModuleReference":case"TSNonNullExpression":case"TSExportAssignment":case"TSNamespaceExportDeclaration":case"TSTypeAnnotation":case"TSTypeParameterInstantiation":case"TSTypeParameterDeclaration":case"TSTypeParameter":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTypeofTypeAnnotation=function(e,t){return!!e&&"TypeofTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryExpression=function(e,t){return!!e&&"UnaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryLike=function(e,t){if(!e)return!1;switch(e.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isUnionTypeAnnotation=function(e,t){return!!e&&"UnionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUpdateExpression=function(e,t){return!!e&&"UpdateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUserWhitespacable=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isV8IntrinsicIdentifier=function(e,t){return!!e&&"V8IntrinsicIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclaration=function(e,t){return!!e&&"VariableDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclarator=function(e,t){return!!e&&"VariableDeclarator"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariance=function(e,t){return!!e&&"Variance"===e.type&&(null==t||(0,r.default)(e,t))},t.isVoidTypeAnnotation=function(e,t){return!!e&&"VoidTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isWhile=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isWhileStatement=function(e,t){return!!e&&"WhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isWithStatement=function(e,t){return!!e&&"WithStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isYieldExpression=function(e,t){return!!e&&"YieldExpression"===e.type&&(null==t||(0,r.default)(e,t))};var r=n(60617),a=n(89990);function i(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)}},23443:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){return!!t&&((0,a.default)(t.type,e)?void 0===n||(0,r.default)(t,n):!n&&"Placeholder"===t.type&&e in s.FLIPPED_ALIAS_KEYS&&(0,i.default)(t.expectedNode,e))};var r=n(60617),a=n(39075),i=n(60353),s=n(74892)},64753:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(n&&"Identifier"===e.type&&"ObjectProperty"===t.type&&"ObjectExpression"===n.type)return!1;const a=r.default.keys[t.type];if(a)for(let n=0;n<a.length;n++){const r=t[a[n]];if(Array.isArray(r)){if(r.indexOf(e)>=0)return!0}else if(r===e)return!0}return!1};var r=n(74390)},83351:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isFunctionDeclaration)(e)||(0,r.isClassDeclaration)(e)||(0,a.default)(e)};var r=n(48250),a=n(61126)},5126:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!(0,r.default)(e.type,"Immutable")||!!(0,a.isIdentifier)(e)&&"undefined"===e.name};var r=n(39075),a=n(48250)},61126:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e)&&("var"!==e.kind||e[a.BLOCK_SCOPED_SYMBOL])};var r=n(48250),a=n(65857)},76539:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||!r.VISITOR_KEYS[e.type])};var r=n(74892)},72202:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){if("object"!=typeof t||"object"!=typeof n||null==t||null==n)return t===n;if(t.type!==n.type)return!1;const a=Object.keys(r.NODE_FIELDS[t.type]||t.type),i=r.VISITOR_KEYS[t.type];for(const r of a){const a=t[r],s=n[r];if(typeof a!=typeof s)return!1;if(null!=a||null!=s){if(null==a||null==s)return!1;if(Array.isArray(a)){if(!Array.isArray(s))return!1;if(a.length!==s.length)return!1;for(let t=0;t<a.length;t++)if(!e(a[t],s[t]))return!1}else if("object"!=typeof a||null!=i&&i.includes(r)){if(!e(a,s))return!1}else for(const e of Object.keys(a))if(a[e]!==s[e])return!1}}return!0};var r=n(74892)},60353:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;const n=r.PLACEHOLDERS_ALIAS[e];if(n)for(const e of n)if(t===e)return!0;return!1};var r=n(74892)},46551:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:!n||"ObjectPattern"!==n.type;case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==n||!n.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}},72812:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(!(0,r.isBlockStatement)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))&&(!(!(0,r.isPattern)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))||(0,r.isScopable)(e))};var r=n(48250)},99737:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isImportDefaultSpecifier)(e)||(0,r.isIdentifier)(e.imported||e.exported,{name:"default"})};var r=n(48250)},39075:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;if(null==e)return!1;if(r.ALIAS_KEYS[t])return!1;const n=r.FLIPPED_ALIAS_KEYS[t];if(n){if(n[0]===e)return!0;for(const t of n)if(e===t)return!0}return!1};var r=n(74892)},82529:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)&&!a.has(e)};var r=n(65287);const a=new Set(["abstract","boolean","byte","char","double","enum","final","float","goto","implements","int","interface","long","native","package","private","protected","public","short","static","synchronized","throws","transient","volatile"])},65287:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0){return"string"==typeof e&&((!t||!(0,r.isKeyword)(e)&&!(0,r.isStrictReservedWord)(e,!0))&&(0,r.isIdentifierName)(e))};var r=n(29649)},95382:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e,{kind:"var"})&&!e[a.BLOCK_SCOPED_SYMBOL]};var r=n(48250),a=n(65857)},8465:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!(0,r.isMemberExpression)(e))return!1;const a=Array.isArray(t)?t:t.split("."),i=[];let s;for(s=e;(0,r.isMemberExpression)(s);s=s.object)i.push(s.property);if(i.push(s),i.length<a.length)return!1;if(!n&&i.length>a.length)return!1;for(let e=0,t=i.length-1;e<a.length;e++,t--){const n=i[t];let s;if((0,r.isIdentifier)(n))s=n.name;else if((0,r.isStringLiteral)(n))s=n.value;else{if(!(0,r.isThisExpression)(n))return!1;s="this"}if(a[e]!==s)return!1}return!0};var r=n(48250)},4319:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!e&&/^[a-z]/.test(e)}},26168:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=(0,n(40588).default)("React.Component");t.default=r},70522:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!e)return;const s=r.NODE_FIELDS[e.type];if(!s)return;a(e,t,n,s[t]),i(e,t,n)},t.validateChild=i,t.validateField=a;var r=n(74892);function a(e,t,n,r){null!=r&&r.validate&&(r.optional&&null==n||r.validate(e,t,n))}function i(e,t,n){if(null==n)return;const a=r.NODE_PARENT_VALIDATIONS[n.type];a&&a(e,t,n)}},34705:(e,t)=>{"use strict";function n(e){const{context:t,node:n}=e;if(n.computed&&t.maybeQueue(e.get("key")),n.decorators)for(const n of e.get("decorators"))t.maybeQueue(n)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.requeueComputedKeyAndDecorators=n,t.skipAllButComputedKey=function(e){e.skip(),e.node.computed&&e.context.maybeQueue(e.get("key"))};var r={FunctionParent(e){e.isArrowFunctionExpression()||(e.skip(),e.isMethod()&&n(e))},Property(e){e.isObjectProperty()||(e.skip(),n(e))}};t.default=r},22023:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function({node:e,parent:t,scope:n,id:r},a=!1,A=!1){if(e.id)return;if(!m(t)&&!y(t,{kind:"method"})||t.computed&&!d(t.key)){if(b(t)){if(r=t.id,u(r)&&!a){const t=n.parent.getBinding(r.name);if(t&&t.constant&&n.getBinding(r.name)===t)return e.id=s(r),void(e.id[i]=!0)}}else if(l(t,{operator:"="}))r=t.left;else if(!r)return}else r=t.key;let v;if(r&&d(r)?v=function(e){return f(e)?"null":h(e)?`_${e.pattern}_${e.flags}`:S(e)?e.quasis.map((e=>e.value.raw)).join(""):void 0!==e.value?e.value+"":""}(r):r&&u(r)&&(v=r.name),void 0===v)return;if(!A&&c(e)&&/[\uD800-\uDFFF]/.test(v))return;v=E(v);const O=o(v);return O[i]=!0,function(e,t,n,r){if(e.selfReference){if(!r.hasBinding(n.name)||r.hasGlobal(n.name)){if(!c(t))return;let e=P;t.generator&&(e=x);const a=e({FUNCTION:t,FUNCTION_ID:n,FUNCTION_KEY:r.generateUidIdentifier(n.name)}).expression,i=a.callee.body.body[0].params;for(let e=0,n=function(e){const t=e.params.findIndex((e=>p(e)||T(e)));return-1===t?e.params.length:t}(t);e<n;e++)i.push(r.generateUidIdentifier("x"));return a}r.rename(n.name)}t.id=n,r.getProgramParent().references[n.name]=!0}(function(e,t,n){const r={selfAssignment:!1,selfReference:!1,outerDeclar:n.getBindingIdentifier(t),name:t},a=n.getOwnBinding(t);return a?"param"===a.kind&&(r.selfReference=!0):(r.outerDeclar||n.hasGlobal(t))&&n.traverse(e,g,r),r}(e,v,n),e,O,n)||e};var r=n(76849),a=n(65226);const{NOT_LOCAL_BINDING:i,cloneNode:s,identifier:o,isAssignmentExpression:l,isAssignmentPattern:p,isFunction:c,isIdentifier:u,isLiteral:d,isNullLiteral:f,isObjectMethod:y,isObjectProperty:m,isRegExpLiteral:h,isRestElement:T,isTemplateLiteral:S,isVariableDeclarator:b,toBindingIdentifierName:E}=a,P=r.default.statement("\n (function (FUNCTION_KEY) {\n function FUNCTION_ID() {\n return FUNCTION_KEY.apply(this, arguments);\n }\n\n FUNCTION_ID.toString = function () {\n return FUNCTION_KEY.toString();\n }\n\n return FUNCTION_ID;\n })(FUNCTION)\n"),x=r.default.statement("\n (function (FUNCTION_KEY) {\n function* FUNCTION_ID() {\n return yield* FUNCTION_KEY.apply(this, arguments);\n }\n\n FUNCTION_ID.toString = function () {\n return FUNCTION_KEY.toString();\n };\n\n return FUNCTION_ID;\n })(FUNCTION)\n"),g={"ReferencedIdentifier|BindingIdentifier"(e,t){e.node.name===t.name&&e.scope.getBindingIdentifier(t.name)===t.outerDeclar&&(t.selfReference=!0,e.stop())}}},46360:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!(0,r.default)(e)){var t;const n=null!=(t=null==e?void 0:e.type)?t:JSON.stringify(e);throw new TypeError(`Not a valid node of type "${n}"`)}};var r=n(63765)},74950:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assertAccessor=function(e,t){i("Accessor",e,t)},t.assertAnyTypeAnnotation=function(e,t){i("AnyTypeAnnotation",e,t)},t.assertArgumentPlaceholder=function(e,t){i("ArgumentPlaceholder",e,t)},t.assertArrayExpression=function(e,t){i("ArrayExpression",e,t)},t.assertArrayPattern=function(e,t){i("ArrayPattern",e,t)},t.assertArrayTypeAnnotation=function(e,t){i("ArrayTypeAnnotation",e,t)},t.assertArrowFunctionExpression=function(e,t){i("ArrowFunctionExpression",e,t)},t.assertAssignmentExpression=function(e,t){i("AssignmentExpression",e,t)},t.assertAssignmentPattern=function(e,t){i("AssignmentPattern",e,t)},t.assertAwaitExpression=function(e,t){i("AwaitExpression",e,t)},t.assertBigIntLiteral=function(e,t){i("BigIntLiteral",e,t)},t.assertBinary=function(e,t){i("Binary",e,t)},t.assertBinaryExpression=function(e,t){i("BinaryExpression",e,t)},t.assertBindExpression=function(e,t){i("BindExpression",e,t)},t.assertBlock=function(e,t){i("Block",e,t)},t.assertBlockParent=function(e,t){i("BlockParent",e,t)},t.assertBlockStatement=function(e,t){i("BlockStatement",e,t)},t.assertBooleanLiteral=function(e,t){i("BooleanLiteral",e,t)},t.assertBooleanLiteralTypeAnnotation=function(e,t){i("BooleanLiteralTypeAnnotation",e,t)},t.assertBooleanTypeAnnotation=function(e,t){i("BooleanTypeAnnotation",e,t)},t.assertBreakStatement=function(e,t){i("BreakStatement",e,t)},t.assertCallExpression=function(e,t){i("CallExpression",e,t)},t.assertCatchClause=function(e,t){i("CatchClause",e,t)},t.assertClass=function(e,t){i("Class",e,t)},t.assertClassAccessorProperty=function(e,t){i("ClassAccessorProperty",e,t)},t.assertClassBody=function(e,t){i("ClassBody",e,t)},t.assertClassDeclaration=function(e,t){i("ClassDeclaration",e,t)},t.assertClassExpression=function(e,t){i("ClassExpression",e,t)},t.assertClassImplements=function(e,t){i("ClassImplements",e,t)},t.assertClassMethod=function(e,t){i("ClassMethod",e,t)},t.assertClassPrivateMethod=function(e,t){i("ClassPrivateMethod",e,t)},t.assertClassPrivateProperty=function(e,t){i("ClassPrivateProperty",e,t)},t.assertClassProperty=function(e,t){i("ClassProperty",e,t)},t.assertCompletionStatement=function(e,t){i("CompletionStatement",e,t)},t.assertConditional=function(e,t){i("Conditional",e,t)},t.assertConditionalExpression=function(e,t){i("ConditionalExpression",e,t)},t.assertContinueStatement=function(e,t){i("ContinueStatement",e,t)},t.assertDebuggerStatement=function(e,t){i("DebuggerStatement",e,t)},t.assertDecimalLiteral=function(e,t){i("DecimalLiteral",e,t)},t.assertDeclaration=function(e,t){i("Declaration",e,t)},t.assertDeclareClass=function(e,t){i("DeclareClass",e,t)},t.assertDeclareExportAllDeclaration=function(e,t){i("DeclareExportAllDeclaration",e,t)},t.assertDeclareExportDeclaration=function(e,t){i("DeclareExportDeclaration",e,t)},t.assertDeclareFunction=function(e,t){i("DeclareFunction",e,t)},t.assertDeclareInterface=function(e,t){i("DeclareInterface",e,t)},t.assertDeclareModule=function(e,t){i("DeclareModule",e,t)},t.assertDeclareModuleExports=function(e,t){i("DeclareModuleExports",e,t)},t.assertDeclareOpaqueType=function(e,t){i("DeclareOpaqueType",e,t)},t.assertDeclareTypeAlias=function(e,t){i("DeclareTypeAlias",e,t)},t.assertDeclareVariable=function(e,t){i("DeclareVariable",e,t)},t.assertDeclaredPredicate=function(e,t){i("DeclaredPredicate",e,t)},t.assertDecorator=function(e,t){i("Decorator",e,t)},t.assertDirective=function(e,t){i("Directive",e,t)},t.assertDirectiveLiteral=function(e,t){i("DirectiveLiteral",e,t)},t.assertDoExpression=function(e,t){i("DoExpression",e,t)},t.assertDoWhileStatement=function(e,t){i("DoWhileStatement",e,t)},t.assertEmptyStatement=function(e,t){i("EmptyStatement",e,t)},t.assertEmptyTypeAnnotation=function(e,t){i("EmptyTypeAnnotation",e,t)},t.assertEnumBody=function(e,t){i("EnumBody",e,t)},t.assertEnumBooleanBody=function(e,t){i("EnumBooleanBody",e,t)},t.assertEnumBooleanMember=function(e,t){i("EnumBooleanMember",e,t)},t.assertEnumDeclaration=function(e,t){i("EnumDeclaration",e,t)},t.assertEnumDefaultedMember=function(e,t){i("EnumDefaultedMember",e,t)},t.assertEnumMember=function(e,t){i("EnumMember",e,t)},t.assertEnumNumberBody=function(e,t){i("EnumNumberBody",e,t)},t.assertEnumNumberMember=function(e,t){i("EnumNumberMember",e,t)},t.assertEnumStringBody=function(e,t){i("EnumStringBody",e,t)},t.assertEnumStringMember=function(e,t){i("EnumStringMember",e,t)},t.assertEnumSymbolBody=function(e,t){i("EnumSymbolBody",e,t)},t.assertExistsTypeAnnotation=function(e,t){i("ExistsTypeAnnotation",e,t)},t.assertExportAllDeclaration=function(e,t){i("ExportAllDeclaration",e,t)},t.assertExportDeclaration=function(e,t){i("ExportDeclaration",e,t)},t.assertExportDefaultDeclaration=function(e,t){i("ExportDefaultDeclaration",e,t)},t.assertExportDefaultSpecifier=function(e,t){i("ExportDefaultSpecifier",e,t)},t.assertExportNamedDeclaration=function(e,t){i("ExportNamedDeclaration",e,t)},t.assertExportNamespaceSpecifier=function(e,t){i("ExportNamespaceSpecifier",e,t)},t.assertExportSpecifier=function(e,t){i("ExportSpecifier",e,t)},t.assertExpression=function(e,t){i("Expression",e,t)},t.assertExpressionStatement=function(e,t){i("ExpressionStatement",e,t)},t.assertExpressionWrapper=function(e,t){i("ExpressionWrapper",e,t)},t.assertFile=function(e,t){i("File",e,t)},t.assertFlow=function(e,t){i("Flow",e,t)},t.assertFlowBaseAnnotation=function(e,t){i("FlowBaseAnnotation",e,t)},t.assertFlowDeclaration=function(e,t){i("FlowDeclaration",e,t)},t.assertFlowPredicate=function(e,t){i("FlowPredicate",e,t)},t.assertFlowType=function(e,t){i("FlowType",e,t)},t.assertFor=function(e,t){i("For",e,t)},t.assertForInStatement=function(e,t){i("ForInStatement",e,t)},t.assertForOfStatement=function(e,t){i("ForOfStatement",e,t)},t.assertForStatement=function(e,t){i("ForStatement",e,t)},t.assertForXStatement=function(e,t){i("ForXStatement",e,t)},t.assertFunction=function(e,t){i("Function",e,t)},t.assertFunctionDeclaration=function(e,t){i("FunctionDeclaration",e,t)},t.assertFunctionExpression=function(e,t){i("FunctionExpression",e,t)},t.assertFunctionParent=function(e,t){i("FunctionParent",e,t)},t.assertFunctionTypeAnnotation=function(e,t){i("FunctionTypeAnnotation",e,t)},t.assertFunctionTypeParam=function(e,t){i("FunctionTypeParam",e,t)},t.assertGenericTypeAnnotation=function(e,t){i("GenericTypeAnnotation",e,t)},t.assertIdentifier=function(e,t){i("Identifier",e,t)},t.assertIfStatement=function(e,t){i("IfStatement",e,t)},t.assertImmutable=function(e,t){i("Immutable",e,t)},t.assertImport=function(e,t){i("Import",e,t)},t.assertImportAttribute=function(e,t){i("ImportAttribute",e,t)},t.assertImportDeclaration=function(e,t){i("ImportDeclaration",e,t)},t.assertImportDefaultSpecifier=function(e,t){i("ImportDefaultSpecifier",e,t)},t.assertImportNamespaceSpecifier=function(e,t){i("ImportNamespaceSpecifier",e,t)},t.assertImportOrExportDeclaration=function(e,t){i("ImportOrExportDeclaration",e,t)},t.assertImportSpecifier=function(e,t){i("ImportSpecifier",e,t)},t.assertIndexedAccessType=function(e,t){i("IndexedAccessType",e,t)},t.assertInferredPredicate=function(e,t){i("InferredPredicate",e,t)},t.assertInterfaceDeclaration=function(e,t){i("InterfaceDeclaration",e,t)},t.assertInterfaceExtends=function(e,t){i("InterfaceExtends",e,t)},t.assertInterfaceTypeAnnotation=function(e,t){i("InterfaceTypeAnnotation",e,t)},t.assertInterpreterDirective=function(e,t){i("InterpreterDirective",e,t)},t.assertIntersectionTypeAnnotation=function(e,t){i("IntersectionTypeAnnotation",e,t)},t.assertJSX=function(e,t){i("JSX",e,t)},t.assertJSXAttribute=function(e,t){i("JSXAttribute",e,t)},t.assertJSXClosingElement=function(e,t){i("JSXClosingElement",e,t)},t.assertJSXClosingFragment=function(e,t){i("JSXClosingFragment",e,t)},t.assertJSXElement=function(e,t){i("JSXElement",e,t)},t.assertJSXEmptyExpression=function(e,t){i("JSXEmptyExpression",e,t)},t.assertJSXExpressionContainer=function(e,t){i("JSXExpressionContainer",e,t)},t.assertJSXFragment=function(e,t){i("JSXFragment",e,t)},t.assertJSXIdentifier=function(e,t){i("JSXIdentifier",e,t)},t.assertJSXMemberExpression=function(e,t){i("JSXMemberExpression",e,t)},t.assertJSXNamespacedName=function(e,t){i("JSXNamespacedName",e,t)},t.assertJSXOpeningElement=function(e,t){i("JSXOpeningElement",e,t)},t.assertJSXOpeningFragment=function(e,t){i("JSXOpeningFragment",e,t)},t.assertJSXSpreadAttribute=function(e,t){i("JSXSpreadAttribute",e,t)},t.assertJSXSpreadChild=function(e,t){i("JSXSpreadChild",e,t)},t.assertJSXText=function(e,t){i("JSXText",e,t)},t.assertLVal=function(e,t){i("LVal",e,t)},t.assertLabeledStatement=function(e,t){i("LabeledStatement",e,t)},t.assertLiteral=function(e,t){i("Literal",e,t)},t.assertLogicalExpression=function(e,t){i("LogicalExpression",e,t)},t.assertLoop=function(e,t){i("Loop",e,t)},t.assertMemberExpression=function(e,t){i("MemberExpression",e,t)},t.assertMetaProperty=function(e,t){i("MetaProperty",e,t)},t.assertMethod=function(e,t){i("Method",e,t)},t.assertMiscellaneous=function(e,t){i("Miscellaneous",e,t)},t.assertMixedTypeAnnotation=function(e,t){i("MixedTypeAnnotation",e,t)},t.assertModuleDeclaration=function(e,t){(0,a.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),i("ModuleDeclaration",e,t)},t.assertModuleExpression=function(e,t){i("ModuleExpression",e,t)},t.assertModuleSpecifier=function(e,t){i("ModuleSpecifier",e,t)},t.assertNewExpression=function(e,t){i("NewExpression",e,t)},t.assertNoop=function(e,t){i("Noop",e,t)},t.assertNullLiteral=function(e,t){i("NullLiteral",e,t)},t.assertNullLiteralTypeAnnotation=function(e,t){i("NullLiteralTypeAnnotation",e,t)},t.assertNullableTypeAnnotation=function(e,t){i("NullableTypeAnnotation",e,t)},t.assertNumberLiteral=function(e,t){(0,a.default)("assertNumberLiteral","assertNumericLiteral"),i("NumberLiteral",e,t)},t.assertNumberLiteralTypeAnnotation=function(e,t){i("NumberLiteralTypeAnnotation",e,t)},t.assertNumberTypeAnnotation=function(e,t){i("NumberTypeAnnotation",e,t)},t.assertNumericLiteral=function(e,t){i("NumericLiteral",e,t)},t.assertObjectExpression=function(e,t){i("ObjectExpression",e,t)},t.assertObjectMember=function(e,t){i("ObjectMember",e,t)},t.assertObjectMethod=function(e,t){i("ObjectMethod",e,t)},t.assertObjectPattern=function(e,t){i("ObjectPattern",e,t)},t.assertObjectProperty=function(e,t){i("ObjectProperty",e,t)},t.assertObjectTypeAnnotation=function(e,t){i("ObjectTypeAnnotation",e,t)},t.assertObjectTypeCallProperty=function(e,t){i("ObjectTypeCallProperty",e,t)},t.assertObjectTypeIndexer=function(e,t){i("ObjectTypeIndexer",e,t)},t.assertObjectTypeInternalSlot=function(e,t){i("ObjectTypeInternalSlot",e,t)},t.assertObjectTypeProperty=function(e,t){i("ObjectTypeProperty",e,t)},t.assertObjectTypeSpreadProperty=function(e,t){i("ObjectTypeSpreadProperty",e,t)},t.assertOpaqueType=function(e,t){i("OpaqueType",e,t)},t.assertOptionalCallExpression=function(e,t){i("OptionalCallExpression",e,t)},t.assertOptionalIndexedAccessType=function(e,t){i("OptionalIndexedAccessType",e,t)},t.assertOptionalMemberExpression=function(e,t){i("OptionalMemberExpression",e,t)},t.assertParenthesizedExpression=function(e,t){i("ParenthesizedExpression",e,t)},t.assertPattern=function(e,t){i("Pattern",e,t)},t.assertPatternLike=function(e,t){i("PatternLike",e,t)},t.assertPipelineBareFunction=function(e,t){i("PipelineBareFunction",e,t)},t.assertPipelinePrimaryTopicReference=function(e,t){i("PipelinePrimaryTopicReference",e,t)},t.assertPipelineTopicExpression=function(e,t){i("PipelineTopicExpression",e,t)},t.assertPlaceholder=function(e,t){i("Placeholder",e,t)},t.assertPrivate=function(e,t){i("Private",e,t)},t.assertPrivateName=function(e,t){i("PrivateName",e,t)},t.assertProgram=function(e,t){i("Program",e,t)},t.assertProperty=function(e,t){i("Property",e,t)},t.assertPureish=function(e,t){i("Pureish",e,t)},t.assertQualifiedTypeIdentifier=function(e,t){i("QualifiedTypeIdentifier",e,t)},t.assertRecordExpression=function(e,t){i("RecordExpression",e,t)},t.assertRegExpLiteral=function(e,t){i("RegExpLiteral",e,t)},t.assertRegexLiteral=function(e,t){(0,a.default)("assertRegexLiteral","assertRegExpLiteral"),i("RegexLiteral",e,t)},t.assertRestElement=function(e,t){i("RestElement",e,t)},t.assertRestProperty=function(e,t){(0,a.default)("assertRestProperty","assertRestElement"),i("RestProperty",e,t)},t.assertReturnStatement=function(e,t){i("ReturnStatement",e,t)},t.assertScopable=function(e,t){i("Scopable",e,t)},t.assertSequenceExpression=function(e,t){i("SequenceExpression",e,t)},t.assertSpreadElement=function(e,t){i("SpreadElement",e,t)},t.assertSpreadProperty=function(e,t){(0,a.default)("assertSpreadProperty","assertSpreadElement"),i("SpreadProperty",e,t)},t.assertStandardized=function(e,t){i("Standardized",e,t)},t.assertStatement=function(e,t){i("Statement",e,t)},t.assertStaticBlock=function(e,t){i("StaticBlock",e,t)},t.assertStringLiteral=function(e,t){i("StringLiteral",e,t)},t.assertStringLiteralTypeAnnotation=function(e,t){i("StringLiteralTypeAnnotation",e,t)},t.assertStringTypeAnnotation=function(e,t){i("StringTypeAnnotation",e,t)},t.assertSuper=function(e,t){i("Super",e,t)},t.assertSwitchCase=function(e,t){i("SwitchCase",e,t)},t.assertSwitchStatement=function(e,t){i("SwitchStatement",e,t)},t.assertSymbolTypeAnnotation=function(e,t){i("SymbolTypeAnnotation",e,t)},t.assertTSAnyKeyword=function(e,t){i("TSAnyKeyword",e,t)},t.assertTSArrayType=function(e,t){i("TSArrayType",e,t)},t.assertTSAsExpression=function(e,t){i("TSAsExpression",e,t)},t.assertTSBaseType=function(e,t){i("TSBaseType",e,t)},t.assertTSBigIntKeyword=function(e,t){i("TSBigIntKeyword",e,t)},t.assertTSBooleanKeyword=function(e,t){i("TSBooleanKeyword",e,t)},t.assertTSCallSignatureDeclaration=function(e,t){i("TSCallSignatureDeclaration",e,t)},t.assertTSConditionalType=function(e,t){i("TSConditionalType",e,t)},t.assertTSConstructSignatureDeclaration=function(e,t){i("TSConstructSignatureDeclaration",e,t)},t.assertTSConstructorType=function(e,t){i("TSConstructorType",e,t)},t.assertTSDeclareFunction=function(e,t){i("TSDeclareFunction",e,t)},t.assertTSDeclareMethod=function(e,t){i("TSDeclareMethod",e,t)},t.assertTSEntityName=function(e,t){i("TSEntityName",e,t)},t.assertTSEnumDeclaration=function(e,t){i("TSEnumDeclaration",e,t)},t.assertTSEnumMember=function(e,t){i("TSEnumMember",e,t)},t.assertTSExportAssignment=function(e,t){i("TSExportAssignment",e,t)},t.assertTSExpressionWithTypeArguments=function(e,t){i("TSExpressionWithTypeArguments",e,t)},t.assertTSExternalModuleReference=function(e,t){i("TSExternalModuleReference",e,t)},t.assertTSFunctionType=function(e,t){i("TSFunctionType",e,t)},t.assertTSImportEqualsDeclaration=function(e,t){i("TSImportEqualsDeclaration",e,t)},t.assertTSImportType=function(e,t){i("TSImportType",e,t)},t.assertTSIndexSignature=function(e,t){i("TSIndexSignature",e,t)},t.assertTSIndexedAccessType=function(e,t){i("TSIndexedAccessType",e,t)},t.assertTSInferType=function(e,t){i("TSInferType",e,t)},t.assertTSInstantiationExpression=function(e,t){i("TSInstantiationExpression",e,t)},t.assertTSInterfaceBody=function(e,t){i("TSInterfaceBody",e,t)},t.assertTSInterfaceDeclaration=function(e,t){i("TSInterfaceDeclaration",e,t)},t.assertTSIntersectionType=function(e,t){i("TSIntersectionType",e,t)},t.assertTSIntrinsicKeyword=function(e,t){i("TSIntrinsicKeyword",e,t)},t.assertTSLiteralType=function(e,t){i("TSLiteralType",e,t)},t.assertTSMappedType=function(e,t){i("TSMappedType",e,t)},t.assertTSMethodSignature=function(e,t){i("TSMethodSignature",e,t)},t.assertTSModuleBlock=function(e,t){i("TSModuleBlock",e,t)},t.assertTSModuleDeclaration=function(e,t){i("TSModuleDeclaration",e,t)},t.assertTSNamedTupleMember=function(e,t){i("TSNamedTupleMember",e,t)},t.assertTSNamespaceExportDeclaration=function(e,t){i("TSNamespaceExportDeclaration",e,t)},t.assertTSNeverKeyword=function(e,t){i("TSNeverKeyword",e,t)},t.assertTSNonNullExpression=function(e,t){i("TSNonNullExpression",e,t)},t.assertTSNullKeyword=function(e,t){i("TSNullKeyword",e,t)},t.assertTSNumberKeyword=function(e,t){i("TSNumberKeyword",e,t)},t.assertTSObjectKeyword=function(e,t){i("TSObjectKeyword",e,t)},t.assertTSOptionalType=function(e,t){i("TSOptionalType",e,t)},t.assertTSParameterProperty=function(e,t){i("TSParameterProperty",e,t)},t.assertTSParenthesizedType=function(e,t){i("TSParenthesizedType",e,t)},t.assertTSPropertySignature=function(e,t){i("TSPropertySignature",e,t)},t.assertTSQualifiedName=function(e,t){i("TSQualifiedName",e,t)},t.assertTSRestType=function(e,t){i("TSRestType",e,t)},t.assertTSSatisfiesExpression=function(e,t){i("TSSatisfiesExpression",e,t)},t.assertTSStringKeyword=function(e,t){i("TSStringKeyword",e,t)},t.assertTSSymbolKeyword=function(e,t){i("TSSymbolKeyword",e,t)},t.assertTSThisType=function(e,t){i("TSThisType",e,t)},t.assertTSTupleType=function(e,t){i("TSTupleType",e,t)},t.assertTSType=function(e,t){i("TSType",e,t)},t.assertTSTypeAliasDeclaration=function(e,t){i("TSTypeAliasDeclaration",e,t)},t.assertTSTypeAnnotation=function(e,t){i("TSTypeAnnotation",e,t)},t.assertTSTypeAssertion=function(e,t){i("TSTypeAssertion",e,t)},t.assertTSTypeElement=function(e,t){i("TSTypeElement",e,t)},t.assertTSTypeLiteral=function(e,t){i("TSTypeLiteral",e,t)},t.assertTSTypeOperator=function(e,t){i("TSTypeOperator",e,t)},t.assertTSTypeParameter=function(e,t){i("TSTypeParameter",e,t)},t.assertTSTypeParameterDeclaration=function(e,t){i("TSTypeParameterDeclaration",e,t)},t.assertTSTypeParameterInstantiation=function(e,t){i("TSTypeParameterInstantiation",e,t)},t.assertTSTypePredicate=function(e,t){i("TSTypePredicate",e,t)},t.assertTSTypeQuery=function(e,t){i("TSTypeQuery",e,t)},t.assertTSTypeReference=function(e,t){i("TSTypeReference",e,t)},t.assertTSUndefinedKeyword=function(e,t){i("TSUndefinedKeyword",e,t)},t.assertTSUnionType=function(e,t){i("TSUnionType",e,t)},t.assertTSUnknownKeyword=function(e,t){i("TSUnknownKeyword",e,t)},t.assertTSVoidKeyword=function(e,t){i("TSVoidKeyword",e,t)},t.assertTaggedTemplateExpression=function(e,t){i("TaggedTemplateExpression",e,t)},t.assertTemplateElement=function(e,t){i("TemplateElement",e,t)},t.assertTemplateLiteral=function(e,t){i("TemplateLiteral",e,t)},t.assertTerminatorless=function(e,t){i("Terminatorless",e,t)},t.assertThisExpression=function(e,t){i("ThisExpression",e,t)},t.assertThisTypeAnnotation=function(e,t){i("ThisTypeAnnotation",e,t)},t.assertThrowStatement=function(e,t){i("ThrowStatement",e,t)},t.assertTopicReference=function(e,t){i("TopicReference",e,t)},t.assertTryStatement=function(e,t){i("TryStatement",e,t)},t.assertTupleExpression=function(e,t){i("TupleExpression",e,t)},t.assertTupleTypeAnnotation=function(e,t){i("TupleTypeAnnotation",e,t)},t.assertTypeAlias=function(e,t){i("TypeAlias",e,t)},t.assertTypeAnnotation=function(e,t){i("TypeAnnotation",e,t)},t.assertTypeCastExpression=function(e,t){i("TypeCastExpression",e,t)},t.assertTypeParameter=function(e,t){i("TypeParameter",e,t)},t.assertTypeParameterDeclaration=function(e,t){i("TypeParameterDeclaration",e,t)},t.assertTypeParameterInstantiation=function(e,t){i("TypeParameterInstantiation",e,t)},t.assertTypeScript=function(e,t){i("TypeScript",e,t)},t.assertTypeofTypeAnnotation=function(e,t){i("TypeofTypeAnnotation",e,t)},t.assertUnaryExpression=function(e,t){i("UnaryExpression",e,t)},t.assertUnaryLike=function(e,t){i("UnaryLike",e,t)},t.assertUnionTypeAnnotation=function(e,t){i("UnionTypeAnnotation",e,t)},t.assertUpdateExpression=function(e,t){i("UpdateExpression",e,t)},t.assertUserWhitespacable=function(e,t){i("UserWhitespacable",e,t)},t.assertV8IntrinsicIdentifier=function(e,t){i("V8IntrinsicIdentifier",e,t)},t.assertVariableDeclaration=function(e,t){i("VariableDeclaration",e,t)},t.assertVariableDeclarator=function(e,t){i("VariableDeclarator",e,t)},t.assertVariance=function(e,t){i("Variance",e,t)},t.assertVoidTypeAnnotation=function(e,t){i("VoidTypeAnnotation",e,t)},t.assertWhile=function(e,t){i("While",e,t)},t.assertWhileStatement=function(e,t){i("WhileStatement",e,t)},t.assertWithStatement=function(e,t){i("WithStatement",e,t)},t.assertYieldExpression=function(e,t){i("YieldExpression",e,t)};var r=n(41856),a=n(5732);function i(e,t,n){if(!(0,r.default)(e,t,n))throw new Error(`Expected type "${e}" with option ${JSON.stringify(n)}, but instead got "${t.type}".`)}},66433:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,a.default)(e);return 1===t.length?t[0]:(0,r.unionTypeAnnotation)(t)};var r=n(19630),a=n(73318)},53555:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(19630);t.default=function(e){switch(e){case"string":return(0,r.stringTypeAnnotation)();case"number":return(0,r.numberTypeAnnotation)();case"undefined":return(0,r.voidTypeAnnotation)();case"boolean":return(0,r.booleanTypeAnnotation)();case"function":return(0,r.genericTypeAnnotation)((0,r.identifier)("Function"));case"object":return(0,r.genericTypeAnnotation)((0,r.identifier)("Object"));case"symbol":return(0,r.genericTypeAnnotation)((0,r.identifier)("Symbol"));case"bigint":return(0,r.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+e)}},19630:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anyTypeAnnotation=function(){return{type:"AnyTypeAnnotation"}},t.argumentPlaceholder=function(){return{type:"ArgumentPlaceholder"}},t.arrayExpression=function(e=[]){return(0,r.default)({type:"ArrayExpression",elements:e})},t.arrayPattern=function(e){return(0,r.default)({type:"ArrayPattern",elements:e})},t.arrayTypeAnnotation=function(e){return(0,r.default)({type:"ArrayTypeAnnotation",elementType:e})},t.arrowFunctionExpression=function(e,t,n=!1){return(0,r.default)({type:"ArrowFunctionExpression",params:e,body:t,async:n,expression:null})},t.assignmentExpression=function(e,t,n){return(0,r.default)({type:"AssignmentExpression",operator:e,left:t,right:n})},t.assignmentPattern=function(e,t){return(0,r.default)({type:"AssignmentPattern",left:e,right:t})},t.awaitExpression=function(e){return(0,r.default)({type:"AwaitExpression",argument:e})},t.bigIntLiteral=function(e){return(0,r.default)({type:"BigIntLiteral",value:e})},t.binaryExpression=function(e,t,n){return(0,r.default)({type:"BinaryExpression",operator:e,left:t,right:n})},t.bindExpression=function(e,t){return(0,r.default)({type:"BindExpression",object:e,callee:t})},t.blockStatement=function(e,t=[]){return(0,r.default)({type:"BlockStatement",body:e,directives:t})},t.booleanLiteral=function(e){return(0,r.default)({type:"BooleanLiteral",value:e})},t.booleanLiteralTypeAnnotation=function(e){return(0,r.default)({type:"BooleanLiteralTypeAnnotation",value:e})},t.booleanTypeAnnotation=function(){return{type:"BooleanTypeAnnotation"}},t.breakStatement=function(e=null){return(0,r.default)({type:"BreakStatement",label:e})},t.callExpression=function(e,t){return(0,r.default)({type:"CallExpression",callee:e,arguments:t})},t.catchClause=function(e=null,t){return(0,r.default)({type:"CatchClause",param:e,body:t})},t.classAccessorProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.classBody=function(e){return(0,r.default)({type:"ClassBody",body:e})},t.classDeclaration=function(e,t=null,n,a=null){return(0,r.default)({type:"ClassDeclaration",id:e,superClass:t,body:n,decorators:a})},t.classExpression=function(e=null,t=null,n,a=null){return(0,r.default)({type:"ClassExpression",id:e,superClass:t,body:n,decorators:a})},t.classImplements=function(e,t=null){return(0,r.default)({type:"ClassImplements",id:e,typeParameters:t})},t.classMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1,l=!1){return(0,r.default)({type:"ClassMethod",kind:e,key:t,params:n,body:a,computed:i,static:s,generator:o,async:l})},t.classPrivateMethod=function(e="method",t,n,a,i=!1){return(0,r.default)({type:"ClassPrivateMethod",kind:e,key:t,params:n,body:a,static:i})},t.classPrivateProperty=function(e,t=null,n=null,a=!1){return(0,r.default)({type:"ClassPrivateProperty",key:e,value:t,decorators:n,static:a})},t.classProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.conditionalExpression=function(e,t,n){return(0,r.default)({type:"ConditionalExpression",test:e,consequent:t,alternate:n})},t.continueStatement=function(e=null){return(0,r.default)({type:"ContinueStatement",label:e})},t.debuggerStatement=function(){return{type:"DebuggerStatement"}},t.decimalLiteral=function(e){return(0,r.default)({type:"DecimalLiteral",value:e})},t.declareClass=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareClass",id:e,typeParameters:t,extends:n,body:a})},t.declareExportAllDeclaration=function(e){return(0,r.default)({type:"DeclareExportAllDeclaration",source:e})},t.declareExportDeclaration=function(e=null,t=null,n=null){return(0,r.default)({type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:n})},t.declareFunction=function(e){return(0,r.default)({type:"DeclareFunction",id:e})},t.declareInterface=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareInterface",id:e,typeParameters:t,extends:n,body:a})},t.declareModule=function(e,t,n=null){return(0,r.default)({type:"DeclareModule",id:e,body:t,kind:n})},t.declareModuleExports=function(e){return(0,r.default)({type:"DeclareModuleExports",typeAnnotation:e})},t.declareOpaqueType=function(e,t=null,n=null){return(0,r.default)({type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:n})},t.declareTypeAlias=function(e,t=null,n){return(0,r.default)({type:"DeclareTypeAlias",id:e,typeParameters:t,right:n})},t.declareVariable=function(e){return(0,r.default)({type:"DeclareVariable",id:e})},t.declaredPredicate=function(e){return(0,r.default)({type:"DeclaredPredicate",value:e})},t.decorator=function(e){return(0,r.default)({type:"Decorator",expression:e})},t.directive=function(e){return(0,r.default)({type:"Directive",value:e})},t.directiveLiteral=function(e){return(0,r.default)({type:"DirectiveLiteral",value:e})},t.doExpression=function(e,t=!1){return(0,r.default)({type:"DoExpression",body:e,async:t})},t.doWhileStatement=function(e,t){return(0,r.default)({type:"DoWhileStatement",test:e,body:t})},t.emptyStatement=function(){return{type:"EmptyStatement"}},t.emptyTypeAnnotation=function(){return{type:"EmptyTypeAnnotation"}},t.enumBooleanBody=function(e){return(0,r.default)({type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumBooleanMember=function(e){return(0,r.default)({type:"EnumBooleanMember",id:e,init:null})},t.enumDeclaration=function(e,t){return(0,r.default)({type:"EnumDeclaration",id:e,body:t})},t.enumDefaultedMember=function(e){return(0,r.default)({type:"EnumDefaultedMember",id:e})},t.enumNumberBody=function(e){return(0,r.default)({type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumNumberMember=function(e,t){return(0,r.default)({type:"EnumNumberMember",id:e,init:t})},t.enumStringBody=function(e){return(0,r.default)({type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumStringMember=function(e,t){return(0,r.default)({type:"EnumStringMember",id:e,init:t})},t.enumSymbolBody=function(e){return(0,r.default)({type:"EnumSymbolBody",members:e,hasUnknownMembers:null})},t.existsTypeAnnotation=function(){return{type:"ExistsTypeAnnotation"}},t.exportAllDeclaration=function(e){return(0,r.default)({type:"ExportAllDeclaration",source:e})},t.exportDefaultDeclaration=function(e){return(0,r.default)({type:"ExportDefaultDeclaration",declaration:e})},t.exportDefaultSpecifier=function(e){return(0,r.default)({type:"ExportDefaultSpecifier",exported:e})},t.exportNamedDeclaration=function(e=null,t=[],n=null){return(0,r.default)({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n})},t.exportNamespaceSpecifier=function(e){return(0,r.default)({type:"ExportNamespaceSpecifier",exported:e})},t.exportSpecifier=function(e,t){return(0,r.default)({type:"ExportSpecifier",local:e,exported:t})},t.expressionStatement=function(e){return(0,r.default)({type:"ExpressionStatement",expression:e})},t.file=function(e,t=null,n=null){return(0,r.default)({type:"File",program:e,comments:t,tokens:n})},t.forInStatement=function(e,t,n){return(0,r.default)({type:"ForInStatement",left:e,right:t,body:n})},t.forOfStatement=function(e,t,n,a=!1){return(0,r.default)({type:"ForOfStatement",left:e,right:t,body:n,await:a})},t.forStatement=function(e=null,t=null,n=null,a){return(0,r.default)({type:"ForStatement",init:e,test:t,update:n,body:a})},t.functionDeclaration=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionDeclaration",id:e,params:t,body:n,generator:a,async:i})},t.functionExpression=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionExpression",id:e,params:t,body:n,generator:a,async:i})},t.functionTypeAnnotation=function(e=null,t,n=null,a){return(0,r.default)({type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:n,returnType:a})},t.functionTypeParam=function(e=null,t){return(0,r.default)({type:"FunctionTypeParam",name:e,typeAnnotation:t})},t.genericTypeAnnotation=function(e,t=null){return(0,r.default)({type:"GenericTypeAnnotation",id:e,typeParameters:t})},t.identifier=function(e){return(0,r.default)({type:"Identifier",name:e})},t.ifStatement=function(e,t,n=null){return(0,r.default)({type:"IfStatement",test:e,consequent:t,alternate:n})},t.import=function(){return{type:"Import"}},t.importAttribute=function(e,t){return(0,r.default)({type:"ImportAttribute",key:e,value:t})},t.importDeclaration=function(e,t){return(0,r.default)({type:"ImportDeclaration",specifiers:e,source:t})},t.importDefaultSpecifier=function(e){return(0,r.default)({type:"ImportDefaultSpecifier",local:e})},t.importNamespaceSpecifier=function(e){return(0,r.default)({type:"ImportNamespaceSpecifier",local:e})},t.importSpecifier=function(e,t){return(0,r.default)({type:"ImportSpecifier",local:e,imported:t})},t.indexedAccessType=function(e,t){return(0,r.default)({type:"IndexedAccessType",objectType:e,indexType:t})},t.inferredPredicate=function(){return{type:"InferredPredicate"}},t.interfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"InterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.interfaceExtends=function(e,t=null){return(0,r.default)({type:"InterfaceExtends",id:e,typeParameters:t})},t.interfaceTypeAnnotation=function(e=null,t){return(0,r.default)({type:"InterfaceTypeAnnotation",extends:e,body:t})},t.interpreterDirective=function(e){return(0,r.default)({type:"InterpreterDirective",value:e})},t.intersectionTypeAnnotation=function(e){return(0,r.default)({type:"IntersectionTypeAnnotation",types:e})},t.jSXAttribute=t.jsxAttribute=function(e,t=null){return(0,r.default)({type:"JSXAttribute",name:e,value:t})},t.jSXClosingElement=t.jsxClosingElement=function(e){return(0,r.default)({type:"JSXClosingElement",name:e})},t.jSXClosingFragment=t.jsxClosingFragment=function(){return{type:"JSXClosingFragment"}},t.jSXElement=t.jsxElement=function(e,t=null,n,a=null){return(0,r.default)({type:"JSXElement",openingElement:e,closingElement:t,children:n,selfClosing:a})},t.jSXEmptyExpression=t.jsxEmptyExpression=function(){return{type:"JSXEmptyExpression"}},t.jSXExpressionContainer=t.jsxExpressionContainer=function(e){return(0,r.default)({type:"JSXExpressionContainer",expression:e})},t.jSXFragment=t.jsxFragment=function(e,t,n){return(0,r.default)({type:"JSXFragment",openingFragment:e,closingFragment:t,children:n})},t.jSXIdentifier=t.jsxIdentifier=function(e){return(0,r.default)({type:"JSXIdentifier",name:e})},t.jSXMemberExpression=t.jsxMemberExpression=function(e,t){return(0,r.default)({type:"JSXMemberExpression",object:e,property:t})},t.jSXNamespacedName=t.jsxNamespacedName=function(e,t){return(0,r.default)({type:"JSXNamespacedName",namespace:e,name:t})},t.jSXOpeningElement=t.jsxOpeningElement=function(e,t,n=!1){return(0,r.default)({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n})},t.jSXOpeningFragment=t.jsxOpeningFragment=function(){return{type:"JSXOpeningFragment"}},t.jSXSpreadAttribute=t.jsxSpreadAttribute=function(e){return(0,r.default)({type:"JSXSpreadAttribute",argument:e})},t.jSXSpreadChild=t.jsxSpreadChild=function(e){return(0,r.default)({type:"JSXSpreadChild",expression:e})},t.jSXText=t.jsxText=function(e){return(0,r.default)({type:"JSXText",value:e})},t.labeledStatement=function(e,t){return(0,r.default)({type:"LabeledStatement",label:e,body:t})},t.logicalExpression=function(e,t,n){return(0,r.default)({type:"LogicalExpression",operator:e,left:t,right:n})},t.memberExpression=function(e,t,n=!1,a=null){return(0,r.default)({type:"MemberExpression",object:e,property:t,computed:n,optional:a})},t.metaProperty=function(e,t){return(0,r.default)({type:"MetaProperty",meta:e,property:t})},t.mixedTypeAnnotation=function(){return{type:"MixedTypeAnnotation"}},t.moduleExpression=function(e){return(0,r.default)({type:"ModuleExpression",body:e})},t.newExpression=function(e,t){return(0,r.default)({type:"NewExpression",callee:e,arguments:t})},t.noop=function(){return{type:"Noop"}},t.nullLiteral=function(){return{type:"NullLiteral"}},t.nullLiteralTypeAnnotation=function(){return{type:"NullLiteralTypeAnnotation"}},t.nullableTypeAnnotation=function(e){return(0,r.default)({type:"NullableTypeAnnotation",typeAnnotation:e})},t.numberLiteral=function(e){return(0,a.default)("NumberLiteral","NumericLiteral","The node type "),i(e)},t.numberLiteralTypeAnnotation=function(e){return(0,r.default)({type:"NumberLiteralTypeAnnotation",value:e})},t.numberTypeAnnotation=function(){return{type:"NumberTypeAnnotation"}},t.numericLiteral=i,t.objectExpression=function(e){return(0,r.default)({type:"ObjectExpression",properties:e})},t.objectMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1){return(0,r.default)({type:"ObjectMethod",kind:e,key:t,params:n,body:a,computed:i,generator:s,async:o})},t.objectPattern=function(e){return(0,r.default)({type:"ObjectPattern",properties:e})},t.objectProperty=function(e,t,n=!1,a=!1,i=null){return(0,r.default)({type:"ObjectProperty",key:e,value:t,computed:n,shorthand:a,decorators:i})},t.objectTypeAnnotation=function(e,t=[],n=[],a=[],i=!1){return(0,r.default)({type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:n,internalSlots:a,exact:i})},t.objectTypeCallProperty=function(e){return(0,r.default)({type:"ObjectTypeCallProperty",value:e,static:null})},t.objectTypeIndexer=function(e=null,t,n,a=null){return(0,r.default)({type:"ObjectTypeIndexer",id:e,key:t,value:n,variance:a,static:null})},t.objectTypeInternalSlot=function(e,t,n,a,i){return(0,r.default)({type:"ObjectTypeInternalSlot",id:e,value:t,optional:n,static:a,method:i})},t.objectTypeProperty=function(e,t,n=null){return(0,r.default)({type:"ObjectTypeProperty",key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null})},t.objectTypeSpreadProperty=function(e){return(0,r.default)({type:"ObjectTypeSpreadProperty",argument:e})},t.opaqueType=function(e,t=null,n=null,a){return(0,r.default)({type:"OpaqueType",id:e,typeParameters:t,supertype:n,impltype:a})},t.optionalCallExpression=function(e,t,n){return(0,r.default)({type:"OptionalCallExpression",callee:e,arguments:t,optional:n})},t.optionalIndexedAccessType=function(e,t){return(0,r.default)({type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null})},t.optionalMemberExpression=function(e,t,n=!1,a){return(0,r.default)({type:"OptionalMemberExpression",object:e,property:t,computed:n,optional:a})},t.parenthesizedExpression=function(e){return(0,r.default)({type:"ParenthesizedExpression",expression:e})},t.pipelineBareFunction=function(e){return(0,r.default)({type:"PipelineBareFunction",callee:e})},t.pipelinePrimaryTopicReference=function(){return{type:"PipelinePrimaryTopicReference"}},t.pipelineTopicExpression=function(e){return(0,r.default)({type:"PipelineTopicExpression",expression:e})},t.placeholder=function(e,t){return(0,r.default)({type:"Placeholder",expectedNode:e,name:t})},t.privateName=function(e){return(0,r.default)({type:"PrivateName",id:e})},t.program=function(e,t=[],n="script",a=null){return(0,r.default)({type:"Program",body:e,directives:t,sourceType:n,interpreter:a,sourceFile:null})},t.qualifiedTypeIdentifier=function(e,t){return(0,r.default)({type:"QualifiedTypeIdentifier",id:e,qualification:t})},t.recordExpression=function(e){return(0,r.default)({type:"RecordExpression",properties:e})},t.regExpLiteral=s,t.regexLiteral=function(e,t=""){return(0,a.default)("RegexLiteral","RegExpLiteral","The node type "),s(e,t)},t.restElement=o,t.restProperty=function(e){return(0,a.default)("RestProperty","RestElement","The node type "),o(e)},t.returnStatement=function(e=null){return(0,r.default)({type:"ReturnStatement",argument:e})},t.sequenceExpression=function(e){return(0,r.default)({type:"SequenceExpression",expressions:e})},t.spreadElement=l,t.spreadProperty=function(e){return(0,a.default)("SpreadProperty","SpreadElement","The node type "),l(e)},t.staticBlock=function(e){return(0,r.default)({type:"StaticBlock",body:e})},t.stringLiteral=function(e){return(0,r.default)({type:"StringLiteral",value:e})},t.stringLiteralTypeAnnotation=function(e){return(0,r.default)({type:"StringLiteralTypeAnnotation",value:e})},t.stringTypeAnnotation=function(){return{type:"StringTypeAnnotation"}},t.super=function(){return{type:"Super"}},t.switchCase=function(e=null,t){return(0,r.default)({type:"SwitchCase",test:e,consequent:t})},t.switchStatement=function(e,t){return(0,r.default)({type:"SwitchStatement",discriminant:e,cases:t})},t.symbolTypeAnnotation=function(){return{type:"SymbolTypeAnnotation"}},t.taggedTemplateExpression=function(e,t){return(0,r.default)({type:"TaggedTemplateExpression",tag:e,quasi:t})},t.templateElement=function(e,t=!1){return(0,r.default)({type:"TemplateElement",value:e,tail:t})},t.templateLiteral=function(e,t){return(0,r.default)({type:"TemplateLiteral",quasis:e,expressions:t})},t.thisExpression=function(){return{type:"ThisExpression"}},t.thisTypeAnnotation=function(){return{type:"ThisTypeAnnotation"}},t.throwStatement=function(e){return(0,r.default)({type:"ThrowStatement",argument:e})},t.topicReference=function(){return{type:"TopicReference"}},t.tryStatement=function(e,t=null,n=null){return(0,r.default)({type:"TryStatement",block:e,handler:t,finalizer:n})},t.tSAnyKeyword=t.tsAnyKeyword=function(){return{type:"TSAnyKeyword"}},t.tSArrayType=t.tsArrayType=function(e){return(0,r.default)({type:"TSArrayType",elementType:e})},t.tSAsExpression=t.tsAsExpression=function(e,t){return(0,r.default)({type:"TSAsExpression",expression:e,typeAnnotation:t})},t.tSBigIntKeyword=t.tsBigIntKeyword=function(){return{type:"TSBigIntKeyword"}},t.tSBooleanKeyword=t.tsBooleanKeyword=function(){return{type:"TSBooleanKeyword"}},t.tSCallSignatureDeclaration=t.tsCallSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConditionalType=t.tsConditionalType=function(e,t,n,a){return(0,r.default)({type:"TSConditionalType",checkType:e,extendsType:t,trueType:n,falseType:a})},t.tSConstructSignatureDeclaration=t.tsConstructSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConstructorType=t.tsConstructorType=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSDeclareFunction=t.tsDeclareFunction=function(e=null,t=null,n,a=null){return(0,r.default)({type:"TSDeclareFunction",id:e,typeParameters:t,params:n,returnType:a})},t.tSDeclareMethod=t.tsDeclareMethod=function(e=null,t,n=null,a,i=null){return(0,r.default)({type:"TSDeclareMethod",decorators:e,key:t,typeParameters:n,params:a,returnType:i})},t.tSEnumDeclaration=t.tsEnumDeclaration=function(e,t){return(0,r.default)({type:"TSEnumDeclaration",id:e,members:t})},t.tSEnumMember=t.tsEnumMember=function(e,t=null){return(0,r.default)({type:"TSEnumMember",id:e,initializer:t})},t.tSExportAssignment=t.tsExportAssignment=function(e){return(0,r.default)({type:"TSExportAssignment",expression:e})},t.tSExpressionWithTypeArguments=t.tsExpressionWithTypeArguments=function(e,t=null){return(0,r.default)({type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t})},t.tSExternalModuleReference=t.tsExternalModuleReference=function(e){return(0,r.default)({type:"TSExternalModuleReference",expression:e})},t.tSFunctionType=t.tsFunctionType=function(e=null,t,n=null){return(0,r.default)({type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSImportEqualsDeclaration=t.tsImportEqualsDeclaration=function(e,t){return(0,r.default)({type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null})},t.tSImportType=t.tsImportType=function(e,t=null,n=null){return(0,r.default)({type:"TSImportType",argument:e,qualifier:t,typeParameters:n})},t.tSIndexSignature=t.tsIndexSignature=function(e,t=null){return(0,r.default)({type:"TSIndexSignature",parameters:e,typeAnnotation:t})},t.tSIndexedAccessType=t.tsIndexedAccessType=function(e,t){return(0,r.default)({type:"TSIndexedAccessType",objectType:e,indexType:t})},t.tSInferType=t.tsInferType=function(e){return(0,r.default)({type:"TSInferType",typeParameter:e})},t.tSInstantiationExpression=t.tsInstantiationExpression=function(e,t=null){return(0,r.default)({type:"TSInstantiationExpression",expression:e,typeParameters:t})},t.tSInterfaceBody=t.tsInterfaceBody=function(e){return(0,r.default)({type:"TSInterfaceBody",body:e})},t.tSInterfaceDeclaration=t.tsInterfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.tSIntersectionType=t.tsIntersectionType=function(e){return(0,r.default)({type:"TSIntersectionType",types:e})},t.tSIntrinsicKeyword=t.tsIntrinsicKeyword=function(){return{type:"TSIntrinsicKeyword"}},t.tSLiteralType=t.tsLiteralType=function(e){return(0,r.default)({type:"TSLiteralType",literal:e})},t.tSMappedType=t.tsMappedType=function(e,t=null,n=null){return(0,r.default)({type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:n})},t.tSMethodSignature=t.tsMethodSignature=function(e,t=null,n,a=null){return(0,r.default)({type:"TSMethodSignature",key:e,typeParameters:t,parameters:n,typeAnnotation:a,kind:null})},t.tSModuleBlock=t.tsModuleBlock=function(e){return(0,r.default)({type:"TSModuleBlock",body:e})},t.tSModuleDeclaration=t.tsModuleDeclaration=function(e,t){return(0,r.default)({type:"TSModuleDeclaration",id:e,body:t})},t.tSNamedTupleMember=t.tsNamedTupleMember=function(e,t,n=!1){return(0,r.default)({type:"TSNamedTupleMember",label:e,elementType:t,optional:n})},t.tSNamespaceExportDeclaration=t.tsNamespaceExportDeclaration=function(e){return(0,r.default)({type:"TSNamespaceExportDeclaration",id:e})},t.tSNeverKeyword=t.tsNeverKeyword=function(){return{type:"TSNeverKeyword"}},t.tSNonNullExpression=t.tsNonNullExpression=function(e){return(0,r.default)({type:"TSNonNullExpression",expression:e})},t.tSNullKeyword=t.tsNullKeyword=function(){return{type:"TSNullKeyword"}},t.tSNumberKeyword=t.tsNumberKeyword=function(){return{type:"TSNumberKeyword"}},t.tSObjectKeyword=t.tsObjectKeyword=function(){return{type:"TSObjectKeyword"}},t.tSOptionalType=t.tsOptionalType=function(e){return(0,r.default)({type:"TSOptionalType",typeAnnotation:e})},t.tSParameterProperty=t.tsParameterProperty=function(e){return(0,r.default)({type:"TSParameterProperty",parameter:e})},t.tSParenthesizedType=t.tsParenthesizedType=function(e){return(0,r.default)({type:"TSParenthesizedType",typeAnnotation:e})},t.tSPropertySignature=t.tsPropertySignature=function(e,t=null,n=null){return(0,r.default)({type:"TSPropertySignature",key:e,typeAnnotation:t,initializer:n,kind:null})},t.tSQualifiedName=t.tsQualifiedName=function(e,t){return(0,r.default)({type:"TSQualifiedName",left:e,right:t})},t.tSRestType=t.tsRestType=function(e){return(0,r.default)({type:"TSRestType",typeAnnotation:e})},t.tSSatisfiesExpression=t.tsSatisfiesExpression=function(e,t){return(0,r.default)({type:"TSSatisfiesExpression",expression:e,typeAnnotation:t})},t.tSStringKeyword=t.tsStringKeyword=function(){return{type:"TSStringKeyword"}},t.tSSymbolKeyword=t.tsSymbolKeyword=function(){return{type:"TSSymbolKeyword"}},t.tSThisType=t.tsThisType=function(){return{type:"TSThisType"}},t.tSTupleType=t.tsTupleType=function(e){return(0,r.default)({type:"TSTupleType",elementTypes:e})},t.tSTypeAliasDeclaration=t.tsTypeAliasDeclaration=function(e,t=null,n){return(0,r.default)({type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:n})},t.tSTypeAnnotation=t.tsTypeAnnotation=function(e){return(0,r.default)({type:"TSTypeAnnotation",typeAnnotation:e})},t.tSTypeAssertion=t.tsTypeAssertion=function(e,t){return(0,r.default)({type:"TSTypeAssertion",typeAnnotation:e,expression:t})},t.tSTypeLiteral=t.tsTypeLiteral=function(e){return(0,r.default)({type:"TSTypeLiteral",members:e})},t.tSTypeOperator=t.tsTypeOperator=function(e){return(0,r.default)({type:"TSTypeOperator",typeAnnotation:e,operator:null})},t.tSTypeParameter=t.tsTypeParameter=function(e=null,t=null,n){return(0,r.default)({type:"TSTypeParameter",constraint:e,default:t,name:n})},t.tSTypeParameterDeclaration=t.tsTypeParameterDeclaration=function(e){return(0,r.default)({type:"TSTypeParameterDeclaration",params:e})},t.tSTypeParameterInstantiation=t.tsTypeParameterInstantiation=function(e){return(0,r.default)({type:"TSTypeParameterInstantiation",params:e})},t.tSTypePredicate=t.tsTypePredicate=function(e,t=null,n=null){return(0,r.default)({type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:n})},t.tSTypeQuery=t.tsTypeQuery=function(e,t=null){return(0,r.default)({type:"TSTypeQuery",exprName:e,typeParameters:t})},t.tSTypeReference=t.tsTypeReference=function(e,t=null){return(0,r.default)({type:"TSTypeReference",typeName:e,typeParameters:t})},t.tSUndefinedKeyword=t.tsUndefinedKeyword=function(){return{type:"TSUndefinedKeyword"}},t.tSUnionType=t.tsUnionType=function(e){return(0,r.default)({type:"TSUnionType",types:e})},t.tSUnknownKeyword=t.tsUnknownKeyword=function(){return{type:"TSUnknownKeyword"}},t.tSVoidKeyword=t.tsVoidKeyword=function(){return{type:"TSVoidKeyword"}},t.tupleExpression=function(e=[]){return(0,r.default)({type:"TupleExpression",elements:e})},t.tupleTypeAnnotation=function(e){return(0,r.default)({type:"TupleTypeAnnotation",types:e})},t.typeAlias=function(e,t=null,n){return(0,r.default)({type:"TypeAlias",id:e,typeParameters:t,right:n})},t.typeAnnotation=function(e){return(0,r.default)({type:"TypeAnnotation",typeAnnotation:e})},t.typeCastExpression=function(e,t){return(0,r.default)({type:"TypeCastExpression",expression:e,typeAnnotation:t})},t.typeParameter=function(e=null,t=null,n=null){return(0,r.default)({type:"TypeParameter",bound:e,default:t,variance:n,name:null})},t.typeParameterDeclaration=function(e){return(0,r.default)({type:"TypeParameterDeclaration",params:e})},t.typeParameterInstantiation=function(e){return(0,r.default)({type:"TypeParameterInstantiation",params:e})},t.typeofTypeAnnotation=function(e){return(0,r.default)({type:"TypeofTypeAnnotation",argument:e})},t.unaryExpression=function(e,t,n=!0){return(0,r.default)({type:"UnaryExpression",operator:e,argument:t,prefix:n})},t.unionTypeAnnotation=function(e){return(0,r.default)({type:"UnionTypeAnnotation",types:e})},t.updateExpression=function(e,t,n=!1){return(0,r.default)({type:"UpdateExpression",operator:e,argument:t,prefix:n})},t.v8IntrinsicIdentifier=function(e){return(0,r.default)({type:"V8IntrinsicIdentifier",name:e})},t.variableDeclaration=function(e,t){return(0,r.default)({type:"VariableDeclaration",kind:e,declarations:t})},t.variableDeclarator=function(e,t=null){return(0,r.default)({type:"VariableDeclarator",id:e,init:t})},t.variance=function(e){return(0,r.default)({type:"Variance",kind:e})},t.voidTypeAnnotation=function(){return{type:"VoidTypeAnnotation"}},t.whileStatement=function(e,t){return(0,r.default)({type:"WhileStatement",test:e,body:t})},t.withStatement=function(e,t){return(0,r.default)({type:"WithStatement",object:e,body:t})},t.yieldExpression=function(e=null,t=!1){return(0,r.default)({type:"YieldExpression",argument:e,delegate:t})};var r=n(18177),a=n(5732);function i(e){return(0,r.default)({type:"NumericLiteral",value:e})}function s(e,t=""){return(0,r.default)({type:"RegExpLiteral",pattern:e,flags:t})}function o(e){return(0,r.default)({type:"RestElement",argument:e})}function l(e){return(0,r.default)({type:"SpreadElement",argument:e})}},73045:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AnyTypeAnnotation",{enumerable:!0,get:function(){return r.anyTypeAnnotation}}),Object.defineProperty(t,"ArgumentPlaceholder",{enumerable:!0,get:function(){return r.argumentPlaceholder}}),Object.defineProperty(t,"ArrayExpression",{enumerable:!0,get:function(){return r.arrayExpression}}),Object.defineProperty(t,"ArrayPattern",{enumerable:!0,get:function(){return r.arrayPattern}}),Object.defineProperty(t,"ArrayTypeAnnotation",{enumerable:!0,get:function(){return r.arrayTypeAnnotation}}),Object.defineProperty(t,"ArrowFunctionExpression",{enumerable:!0,get:function(){return r.arrowFunctionExpression}}),Object.defineProperty(t,"AssignmentExpression",{enumerable:!0,get:function(){return r.assignmentExpression}}),Object.defineProperty(t,"AssignmentPattern",{enumerable:!0,get:function(){return r.assignmentPattern}}),Object.defineProperty(t,"AwaitExpression",{enumerable:!0,get:function(){return r.awaitExpression}}),Object.defineProperty(t,"BigIntLiteral",{enumerable:!0,get:function(){return r.bigIntLiteral}}),Object.defineProperty(t,"BinaryExpression",{enumerable:!0,get:function(){return r.binaryExpression}}),Object.defineProperty(t,"BindExpression",{enumerable:!0,get:function(){return r.bindExpression}}),Object.defineProperty(t,"BlockStatement",{enumerable:!0,get:function(){return r.blockStatement}}),Object.defineProperty(t,"BooleanLiteral",{enumerable:!0,get:function(){return r.booleanLiteral}}),Object.defineProperty(t,"BooleanLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.booleanLiteralTypeAnnotation}}),Object.defineProperty(t,"BooleanTypeAnnotation",{enumerable:!0,get:function(){return r.booleanTypeAnnotation}}),Object.defineProperty(t,"BreakStatement",{enumerable:!0,get:function(){return r.breakStatement}}),Object.defineProperty(t,"CallExpression",{enumerable:!0,get:function(){return r.callExpression}}),Object.defineProperty(t,"CatchClause",{enumerable:!0,get:function(){return r.catchClause}}),Object.defineProperty(t,"ClassAccessorProperty",{enumerable:!0,get:function(){return r.classAccessorProperty}}),Object.defineProperty(t,"ClassBody",{enumerable:!0,get:function(){return r.classBody}}),Object.defineProperty(t,"ClassDeclaration",{enumerable:!0,get:function(){return r.classDeclaration}}),Object.defineProperty(t,"ClassExpression",{enumerable:!0,get:function(){return r.classExpression}}),Object.defineProperty(t,"ClassImplements",{enumerable:!0,get:function(){return r.classImplements}}),Object.defineProperty(t,"ClassMethod",{enumerable:!0,get:function(){return r.classMethod}}),Object.defineProperty(t,"ClassPrivateMethod",{enumerable:!0,get:function(){return r.classPrivateMethod}}),Object.defineProperty(t,"ClassPrivateProperty",{enumerable:!0,get:function(){return r.classPrivateProperty}}),Object.defineProperty(t,"ClassProperty",{enumerable:!0,get:function(){return r.classProperty}}),Object.defineProperty(t,"ConditionalExpression",{enumerable:!0,get:function(){return r.conditionalExpression}}),Object.defineProperty(t,"ContinueStatement",{enumerable:!0,get:function(){return r.continueStatement}}),Object.defineProperty(t,"DebuggerStatement",{enumerable:!0,get:function(){return r.debuggerStatement}}),Object.defineProperty(t,"DecimalLiteral",{enumerable:!0,get:function(){return r.decimalLiteral}}),Object.defineProperty(t,"DeclareClass",{enumerable:!0,get:function(){return r.declareClass}}),Object.defineProperty(t,"DeclareExportAllDeclaration",{enumerable:!0,get:function(){return r.declareExportAllDeclaration}}),Object.defineProperty(t,"DeclareExportDeclaration",{enumerable:!0,get:function(){return r.declareExportDeclaration}}),Object.defineProperty(t,"DeclareFunction",{enumerable:!0,get:function(){return r.declareFunction}}),Object.defineProperty(t,"DeclareInterface",{enumerable:!0,get:function(){return r.declareInterface}}),Object.defineProperty(t,"DeclareModule",{enumerable:!0,get:function(){return r.declareModule}}),Object.defineProperty(t,"DeclareModuleExports",{enumerable:!0,get:function(){return r.declareModuleExports}}),Object.defineProperty(t,"DeclareOpaqueType",{enumerable:!0,get:function(){return r.declareOpaqueType}}),Object.defineProperty(t,"DeclareTypeAlias",{enumerable:!0,get:function(){return r.declareTypeAlias}}),Object.defineProperty(t,"DeclareVariable",{enumerable:!0,get:function(){return r.declareVariable}}),Object.defineProperty(t,"DeclaredPredicate",{enumerable:!0,get:function(){return r.declaredPredicate}}),Object.defineProperty(t,"Decorator",{enumerable:!0,get:function(){return r.decorator}}),Object.defineProperty(t,"Directive",{enumerable:!0,get:function(){return r.directive}}),Object.defineProperty(t,"DirectiveLiteral",{enumerable:!0,get:function(){return r.directiveLiteral}}),Object.defineProperty(t,"DoExpression",{enumerable:!0,get:function(){return r.doExpression}}),Object.defineProperty(t,"DoWhileStatement",{enumerable:!0,get:function(){return r.doWhileStatement}}),Object.defineProperty(t,"EmptyStatement",{enumerable:!0,get:function(){return r.emptyStatement}}),Object.defineProperty(t,"EmptyTypeAnnotation",{enumerable:!0,get:function(){return r.emptyTypeAnnotation}}),Object.defineProperty(t,"EnumBooleanBody",{enumerable:!0,get:function(){return r.enumBooleanBody}}),Object.defineProperty(t,"EnumBooleanMember",{enumerable:!0,get:function(){return r.enumBooleanMember}}),Object.defineProperty(t,"EnumDeclaration",{enumerable:!0,get:function(){return r.enumDeclaration}}),Object.defineProperty(t,"EnumDefaultedMember",{enumerable:!0,get:function(){return r.enumDefaultedMember}}),Object.defineProperty(t,"EnumNumberBody",{enumerable:!0,get:function(){return r.enumNumberBody}}),Object.defineProperty(t,"EnumNumberMember",{enumerable:!0,get:function(){return r.enumNumberMember}}),Object.defineProperty(t,"EnumStringBody",{enumerable:!0,get:function(){return r.enumStringBody}}),Object.defineProperty(t,"EnumStringMember",{enumerable:!0,get:function(){return r.enumStringMember}}),Object.defineProperty(t,"EnumSymbolBody",{enumerable:!0,get:function(){return r.enumSymbolBody}}),Object.defineProperty(t,"ExistsTypeAnnotation",{enumerable:!0,get:function(){return r.existsTypeAnnotation}}),Object.defineProperty(t,"ExportAllDeclaration",{enumerable:!0,get:function(){return r.exportAllDeclaration}}),Object.defineProperty(t,"ExportDefaultDeclaration",{enumerable:!0,get:function(){return r.exportDefaultDeclaration}}),Object.defineProperty(t,"ExportDefaultSpecifier",{enumerable:!0,get:function(){return r.exportDefaultSpecifier}}),Object.defineProperty(t,"ExportNamedDeclaration",{enumerable:!0,get:function(){return r.exportNamedDeclaration}}),Object.defineProperty(t,"ExportNamespaceSpecifier",{enumerable:!0,get:function(){return r.exportNamespaceSpecifier}}),Object.defineProperty(t,"ExportSpecifier",{enumerable:!0,get:function(){return r.exportSpecifier}}),Object.defineProperty(t,"ExpressionStatement",{enumerable:!0,get:function(){return r.expressionStatement}}),Object.defineProperty(t,"File",{enumerable:!0,get:function(){return r.file}}),Object.defineProperty(t,"ForInStatement",{enumerable:!0,get:function(){return r.forInStatement}}),Object.defineProperty(t,"ForOfStatement",{enumerable:!0,get:function(){return r.forOfStatement}}),Object.defineProperty(t,"ForStatement",{enumerable:!0,get:function(){return r.forStatement}}),Object.defineProperty(t,"FunctionDeclaration",{enumerable:!0,get:function(){return r.functionDeclaration}}),Object.defineProperty(t,"FunctionExpression",{enumerable:!0,get:function(){return r.functionExpression}}),Object.defineProperty(t,"FunctionTypeAnnotation",{enumerable:!0,get:function(){return r.functionTypeAnnotation}}),Object.defineProperty(t,"FunctionTypeParam",{enumerable:!0,get:function(){return r.functionTypeParam}}),Object.defineProperty(t,"GenericTypeAnnotation",{enumerable:!0,get:function(){return r.genericTypeAnnotation}}),Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return r.identifier}}),Object.defineProperty(t,"IfStatement",{enumerable:!0,get:function(){return r.ifStatement}}),Object.defineProperty(t,"Import",{enumerable:!0,get:function(){return r.import}}),Object.defineProperty(t,"ImportAttribute",{enumerable:!0,get:function(){return r.importAttribute}}),Object.defineProperty(t,"ImportDeclaration",{enumerable:!0,get:function(){return r.importDeclaration}}),Object.defineProperty(t,"ImportDefaultSpecifier",{enumerable:!0,get:function(){return r.importDefaultSpecifier}}),Object.defineProperty(t,"ImportNamespaceSpecifier",{enumerable:!0,get:function(){return r.importNamespaceSpecifier}}),Object.defineProperty(t,"ImportSpecifier",{enumerable:!0,get:function(){return r.importSpecifier}}),Object.defineProperty(t,"IndexedAccessType",{enumerable:!0,get:function(){return r.indexedAccessType}}),Object.defineProperty(t,"InferredPredicate",{enumerable:!0,get:function(){return r.inferredPredicate}}),Object.defineProperty(t,"InterfaceDeclaration",{enumerable:!0,get:function(){return r.interfaceDeclaration}}),Object.defineProperty(t,"InterfaceExtends",{enumerable:!0,get:function(){return r.interfaceExtends}}),Object.defineProperty(t,"InterfaceTypeAnnotation",{enumerable:!0,get:function(){return r.interfaceTypeAnnotation}}),Object.defineProperty(t,"InterpreterDirective",{enumerable:!0,get:function(){return r.interpreterDirective}}),Object.defineProperty(t,"IntersectionTypeAnnotation",{enumerable:!0,get:function(){return r.intersectionTypeAnnotation}}),Object.defineProperty(t,"JSXAttribute",{enumerable:!0,get:function(){return r.jsxAttribute}}),Object.defineProperty(t,"JSXClosingElement",{enumerable:!0,get:function(){return r.jsxClosingElement}}),Object.defineProperty(t,"JSXClosingFragment",{enumerable:!0,get:function(){return r.jsxClosingFragment}}),Object.defineProperty(t,"JSXElement",{enumerable:!0,get:function(){return r.jsxElement}}),Object.defineProperty(t,"JSXEmptyExpression",{enumerable:!0,get:function(){return r.jsxEmptyExpression}}),Object.defineProperty(t,"JSXExpressionContainer",{enumerable:!0,get:function(){return r.jsxExpressionContainer}}),Object.defineProperty(t,"JSXFragment",{enumerable:!0,get:function(){return r.jsxFragment}}),Object.defineProperty(t,"JSXIdentifier",{enumerable:!0,get:function(){return r.jsxIdentifier}}),Object.defineProperty(t,"JSXMemberExpression",{enumerable:!0,get:function(){return r.jsxMemberExpression}}),Object.defineProperty(t,"JSXNamespacedName",{enumerable:!0,get:function(){return r.jsxNamespacedName}}),Object.defineProperty(t,"JSXOpeningElement",{enumerable:!0,get:function(){return r.jsxOpeningElement}}),Object.defineProperty(t,"JSXOpeningFragment",{enumerable:!0,get:function(){return r.jsxOpeningFragment}}),Object.defineProperty(t,"JSXSpreadAttribute",{enumerable:!0,get:function(){return r.jsxSpreadAttribute}}),Object.defineProperty(t,"JSXSpreadChild",{enumerable:!0,get:function(){return r.jsxSpreadChild}}),Object.defineProperty(t,"JSXText",{enumerable:!0,get:function(){return r.jsxText}}),Object.defineProperty(t,"LabeledStatement",{enumerable:!0,get:function(){return r.labeledStatement}}),Object.defineProperty(t,"LogicalExpression",{enumerable:!0,get:function(){return r.logicalExpression}}),Object.defineProperty(t,"MemberExpression",{enumerable:!0,get:function(){return r.memberExpression}}),Object.defineProperty(t,"MetaProperty",{enumerable:!0,get:function(){return r.metaProperty}}),Object.defineProperty(t,"MixedTypeAnnotation",{enumerable:!0,get:function(){return r.mixedTypeAnnotation}}),Object.defineProperty(t,"ModuleExpression",{enumerable:!0,get:function(){return r.moduleExpression}}),Object.defineProperty(t,"NewExpression",{enumerable:!0,get:function(){return r.newExpression}}),Object.defineProperty(t,"Noop",{enumerable:!0,get:function(){return r.noop}}),Object.defineProperty(t,"NullLiteral",{enumerable:!0,get:function(){return r.nullLiteral}}),Object.defineProperty(t,"NullLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.nullLiteralTypeAnnotation}}),Object.defineProperty(t,"NullableTypeAnnotation",{enumerable:!0,get:function(){return r.nullableTypeAnnotation}}),Object.defineProperty(t,"NumberLiteral",{enumerable:!0,get:function(){return r.numberLiteral}}),Object.defineProperty(t,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.numberLiteralTypeAnnotation}}),Object.defineProperty(t,"NumberTypeAnnotation",{enumerable:!0,get:function(){return r.numberTypeAnnotation}}),Object.defineProperty(t,"NumericLiteral",{enumerable:!0,get:function(){return r.numericLiteral}}),Object.defineProperty(t,"ObjectExpression",{enumerable:!0,get:function(){return r.objectExpression}}),Object.defineProperty(t,"ObjectMethod",{enumerable:!0,get:function(){return r.objectMethod}}),Object.defineProperty(t,"ObjectPattern",{enumerable:!0,get:function(){return r.objectPattern}}),Object.defineProperty(t,"ObjectProperty",{enumerable:!0,get:function(){return r.objectProperty}}),Object.defineProperty(t,"ObjectTypeAnnotation",{enumerable:!0,get:function(){return r.objectTypeAnnotation}}),Object.defineProperty(t,"ObjectTypeCallProperty",{enumerable:!0,get:function(){return r.objectTypeCallProperty}}),Object.defineProperty(t,"ObjectTypeIndexer",{enumerable:!0,get:function(){return r.objectTypeIndexer}}),Object.defineProperty(t,"ObjectTypeInternalSlot",{enumerable:!0,get:function(){return r.objectTypeInternalSlot}}),Object.defineProperty(t,"ObjectTypeProperty",{enumerable:!0,get:function(){return r.objectTypeProperty}}),Object.defineProperty(t,"ObjectTypeSpreadProperty",{enumerable:!0,get:function(){return r.objectTypeSpreadProperty}}),Object.defineProperty(t,"OpaqueType",{enumerable:!0,get:function(){return r.opaqueType}}),Object.defineProperty(t,"OptionalCallExpression",{enumerable:!0,get:function(){return r.optionalCallExpression}}),Object.defineProperty(t,"OptionalIndexedAccessType",{enumerable:!0,get:function(){return r.optionalIndexedAccessType}}),Object.defineProperty(t,"OptionalMemberExpression",{enumerable:!0,get:function(){return r.optionalMemberExpression}}),Object.defineProperty(t,"ParenthesizedExpression",{enumerable:!0,get:function(){return r.parenthesizedExpression}}),Object.defineProperty(t,"PipelineBareFunction",{enumerable:!0,get:function(){return r.pipelineBareFunction}}),Object.defineProperty(t,"PipelinePrimaryTopicReference",{enumerable:!0,get:function(){return r.pipelinePrimaryTopicReference}}),Object.defineProperty(t,"PipelineTopicExpression",{enumerable:!0,get:function(){return r.pipelineTopicExpression}}),Object.defineProperty(t,"Placeholder",{enumerable:!0,get:function(){return r.placeholder}}),Object.defineProperty(t,"PrivateName",{enumerable:!0,get:function(){return r.privateName}}),Object.defineProperty(t,"Program",{enumerable:!0,get:function(){return r.program}}),Object.defineProperty(t,"QualifiedTypeIdentifier",{enumerable:!0,get:function(){return r.qualifiedTypeIdentifier}}),Object.defineProperty(t,"RecordExpression",{enumerable:!0,get:function(){return r.recordExpression}}),Object.defineProperty(t,"RegExpLiteral",{enumerable:!0,get:function(){return r.regExpLiteral}}),Object.defineProperty(t,"RegexLiteral",{enumerable:!0,get:function(){return r.regexLiteral}}),Object.defineProperty(t,"RestElement",{enumerable:!0,get:function(){return r.restElement}}),Object.defineProperty(t,"RestProperty",{enumerable:!0,get:function(){return r.restProperty}}),Object.defineProperty(t,"ReturnStatement",{enumerable:!0,get:function(){return r.returnStatement}}),Object.defineProperty(t,"SequenceExpression",{enumerable:!0,get:function(){return r.sequenceExpression}}),Object.defineProperty(t,"SpreadElement",{enumerable:!0,get:function(){return r.spreadElement}}),Object.defineProperty(t,"SpreadProperty",{enumerable:!0,get:function(){return r.spreadProperty}}),Object.defineProperty(t,"StaticBlock",{enumerable:!0,get:function(){return r.staticBlock}}),Object.defineProperty(t,"StringLiteral",{enumerable:!0,get:function(){return r.stringLiteral}}),Object.defineProperty(t,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.stringLiteralTypeAnnotation}}),Object.defineProperty(t,"StringTypeAnnotation",{enumerable:!0,get:function(){return r.stringTypeAnnotation}}),Object.defineProperty(t,"Super",{enumerable:!0,get:function(){return r.super}}),Object.defineProperty(t,"SwitchCase",{enumerable:!0,get:function(){return r.switchCase}}),Object.defineProperty(t,"SwitchStatement",{enumerable:!0,get:function(){return r.switchStatement}}),Object.defineProperty(t,"SymbolTypeAnnotation",{enumerable:!0,get:function(){return r.symbolTypeAnnotation}}),Object.defineProperty(t,"TSAnyKeyword",{enumerable:!0,get:function(){return r.tsAnyKeyword}}),Object.defineProperty(t,"TSArrayType",{enumerable:!0,get:function(){return r.tsArrayType}}),Object.defineProperty(t,"TSAsExpression",{enumerable:!0,get:function(){return r.tsAsExpression}}),Object.defineProperty(t,"TSBigIntKeyword",{enumerable:!0,get:function(){return r.tsBigIntKeyword}}),Object.defineProperty(t,"TSBooleanKeyword",{enumerable:!0,get:function(){return r.tsBooleanKeyword}}),Object.defineProperty(t,"TSCallSignatureDeclaration",{enumerable:!0,get:function(){return r.tsCallSignatureDeclaration}}),Object.defineProperty(t,"TSConditionalType",{enumerable:!0,get:function(){return r.tsConditionalType}}),Object.defineProperty(t,"TSConstructSignatureDeclaration",{enumerable:!0,get:function(){return r.tsConstructSignatureDeclaration}}),Object.defineProperty(t,"TSConstructorType",{enumerable:!0,get:function(){return r.tsConstructorType}}),Object.defineProperty(t,"TSDeclareFunction",{enumerable:!0,get:function(){return r.tsDeclareFunction}}),Object.defineProperty(t,"TSDeclareMethod",{enumerable:!0,get:function(){return r.tsDeclareMethod}}),Object.defineProperty(t,"TSEnumDeclaration",{enumerable:!0,get:function(){return r.tsEnumDeclaration}}),Object.defineProperty(t,"TSEnumMember",{enumerable:!0,get:function(){return r.tsEnumMember}}),Object.defineProperty(t,"TSExportAssignment",{enumerable:!0,get:function(){return r.tsExportAssignment}}),Object.defineProperty(t,"TSExpressionWithTypeArguments",{enumerable:!0,get:function(){return r.tsExpressionWithTypeArguments}}),Object.defineProperty(t,"TSExternalModuleReference",{enumerable:!0,get:function(){return r.tsExternalModuleReference}}),Object.defineProperty(t,"TSFunctionType",{enumerable:!0,get:function(){return r.tsFunctionType}}),Object.defineProperty(t,"TSImportEqualsDeclaration",{enumerable:!0,get:function(){return r.tsImportEqualsDeclaration}}),Object.defineProperty(t,"TSImportType",{enumerable:!0,get:function(){return r.tsImportType}}),Object.defineProperty(t,"TSIndexSignature",{enumerable:!0,get:function(){return r.tsIndexSignature}}),Object.defineProperty(t,"TSIndexedAccessType",{enumerable:!0,get:function(){return r.tsIndexedAccessType}}),Object.defineProperty(t,"TSInferType",{enumerable:!0,get:function(){return r.tsInferType}}),Object.defineProperty(t,"TSInstantiationExpression",{enumerable:!0,get:function(){return r.tsInstantiationExpression}}),Object.defineProperty(t,"TSInterfaceBody",{enumerable:!0,get:function(){return r.tsInterfaceBody}}),Object.defineProperty(t,"TSInterfaceDeclaration",{enumerable:!0,get:function(){return r.tsInterfaceDeclaration}}),Object.defineProperty(t,"TSIntersectionType",{enumerable:!0,get:function(){return r.tsIntersectionType}}),Object.defineProperty(t,"TSIntrinsicKeyword",{enumerable:!0,get:function(){return r.tsIntrinsicKeyword}}),Object.defineProperty(t,"TSLiteralType",{enumerable:!0,get:function(){return r.tsLiteralType}}),Object.defineProperty(t,"TSMappedType",{enumerable:!0,get:function(){return r.tsMappedType}}),Object.defineProperty(t,"TSMethodSignature",{enumerable:!0,get:function(){return r.tsMethodSignature}}),Object.defineProperty(t,"TSModuleBlock",{enumerable:!0,get:function(){return r.tsModuleBlock}}),Object.defineProperty(t,"TSModuleDeclaration",{enumerable:!0,get:function(){return r.tsModuleDeclaration}}),Object.defineProperty(t,"TSNamedTupleMember",{enumerable:!0,get:function(){return r.tsNamedTupleMember}}),Object.defineProperty(t,"TSNamespaceExportDeclaration",{enumerable:!0,get:function(){return r.tsNamespaceExportDeclaration}}),Object.defineProperty(t,"TSNeverKeyword",{enumerable:!0,get:function(){return r.tsNeverKeyword}}),Object.defineProperty(t,"TSNonNullExpression",{enumerable:!0,get:function(){return r.tsNonNullExpression}}),Object.defineProperty(t,"TSNullKeyword",{enumerable:!0,get:function(){return r.tsNullKeyword}}),Object.defineProperty(t,"TSNumberKeyword",{enumerable:!0,get:function(){return r.tsNumberKeyword}}),Object.defineProperty(t,"TSObjectKeyword",{enumerable:!0,get:function(){return r.tsObjectKeyword}}),Object.defineProperty(t,"TSOptionalType",{enumerable:!0,get:function(){return r.tsOptionalType}}),Object.defineProperty(t,"TSParameterProperty",{enumerable:!0,get:function(){return r.tsParameterProperty}}),Object.defineProperty(t,"TSParenthesizedType",{enumerable:!0,get:function(){return r.tsParenthesizedType}}),Object.defineProperty(t,"TSPropertySignature",{enumerable:!0,get:function(){return r.tsPropertySignature}}),Object.defineProperty(t,"TSQualifiedName",{enumerable:!0,get:function(){return r.tsQualifiedName}}),Object.defineProperty(t,"TSRestType",{enumerable:!0,get:function(){return r.tsRestType}}),Object.defineProperty(t,"TSSatisfiesExpression",{enumerable:!0,get:function(){return r.tsSatisfiesExpression}}),Object.defineProperty(t,"TSStringKeyword",{enumerable:!0,get:function(){return r.tsStringKeyword}}),Object.defineProperty(t,"TSSymbolKeyword",{enumerable:!0,get:function(){return r.tsSymbolKeyword}}),Object.defineProperty(t,"TSThisType",{enumerable:!0,get:function(){return r.tsThisType}}),Object.defineProperty(t,"TSTupleType",{enumerable:!0,get:function(){return r.tsTupleType}}),Object.defineProperty(t,"TSTypeAliasDeclaration",{enumerable:!0,get:function(){return r.tsTypeAliasDeclaration}}),Object.defineProperty(t,"TSTypeAnnotation",{enumerable:!0,get:function(){return r.tsTypeAnnotation}}),Object.defineProperty(t,"TSTypeAssertion",{enumerable:!0,get:function(){return r.tsTypeAssertion}}),Object.defineProperty(t,"TSTypeLiteral",{enumerable:!0,get:function(){return r.tsTypeLiteral}}),Object.defineProperty(t,"TSTypeOperator",{enumerable:!0,get:function(){return r.tsTypeOperator}}),Object.defineProperty(t,"TSTypeParameter",{enumerable:!0,get:function(){return r.tsTypeParameter}}),Object.defineProperty(t,"TSTypeParameterDeclaration",{enumerable:!0,get:function(){return r.tsTypeParameterDeclaration}}),Object.defineProperty(t,"TSTypeParameterInstantiation",{enumerable:!0,get:function(){return r.tsTypeParameterInstantiation}}),Object.defineProperty(t,"TSTypePredicate",{enumerable:!0,get:function(){return r.tsTypePredicate}}),Object.defineProperty(t,"TSTypeQuery",{enumerable:!0,get:function(){return r.tsTypeQuery}}),Object.defineProperty(t,"TSTypeReference",{enumerable:!0,get:function(){return r.tsTypeReference}}),Object.defineProperty(t,"TSUndefinedKeyword",{enumerable:!0,get:function(){return r.tsUndefinedKeyword}}),Object.defineProperty(t,"TSUnionType",{enumerable:!0,get:function(){return r.tsUnionType}}),Object.defineProperty(t,"TSUnknownKeyword",{enumerable:!0,get:function(){return r.tsUnknownKeyword}}),Object.defineProperty(t,"TSVoidKeyword",{enumerable:!0,get:function(){return r.tsVoidKeyword}}),Object.defineProperty(t,"TaggedTemplateExpression",{enumerable:!0,get:function(){return r.taggedTemplateExpression}}),Object.defineProperty(t,"TemplateElement",{enumerable:!0,get:function(){return r.templateElement}}),Object.defineProperty(t,"TemplateLiteral",{enumerable:!0,get:function(){return r.templateLiteral}}),Object.defineProperty(t,"ThisExpression",{enumerable:!0,get:function(){return r.thisExpression}}),Object.defineProperty(t,"ThisTypeAnnotation",{enumerable:!0,get:function(){return r.thisTypeAnnotation}}),Object.defineProperty(t,"ThrowStatement",{enumerable:!0,get:function(){return r.throwStatement}}),Object.defineProperty(t,"TopicReference",{enumerable:!0,get:function(){return r.topicReference}}),Object.defineProperty(t,"TryStatement",{enumerable:!0,get:function(){return r.tryStatement}}),Object.defineProperty(t,"TupleExpression",{enumerable:!0,get:function(){return r.tupleExpression}}),Object.defineProperty(t,"TupleTypeAnnotation",{enumerable:!0,get:function(){return r.tupleTypeAnnotation}}),Object.defineProperty(t,"TypeAlias",{enumerable:!0,get:function(){return r.typeAlias}}),Object.defineProperty(t,"TypeAnnotation",{enumerable:!0,get:function(){return r.typeAnnotation}}),Object.defineProperty(t,"TypeCastExpression",{enumerable:!0,get:function(){return r.typeCastExpression}}),Object.defineProperty(t,"TypeParameter",{enumerable:!0,get:function(){return r.typeParameter}}),Object.defineProperty(t,"TypeParameterDeclaration",{enumerable:!0,get:function(){return r.typeParameterDeclaration}}),Object.defineProperty(t,"TypeParameterInstantiation",{enumerable:!0,get:function(){return r.typeParameterInstantiation}}),Object.defineProperty(t,"TypeofTypeAnnotation",{enumerable:!0,get:function(){return r.typeofTypeAnnotation}}),Object.defineProperty(t,"UnaryExpression",{enumerable:!0,get:function(){return r.unaryExpression}}),Object.defineProperty(t,"UnionTypeAnnotation",{enumerable:!0,get:function(){return r.unionTypeAnnotation}}),Object.defineProperty(t,"UpdateExpression",{enumerable:!0,get:function(){return r.updateExpression}}),Object.defineProperty(t,"V8IntrinsicIdentifier",{enumerable:!0,get:function(){return r.v8IntrinsicIdentifier}}),Object.defineProperty(t,"VariableDeclaration",{enumerable:!0,get:function(){return r.variableDeclaration}}),Object.defineProperty(t,"VariableDeclarator",{enumerable:!0,get:function(){return r.variableDeclarator}}),Object.defineProperty(t,"Variance",{enumerable:!0,get:function(){return r.variance}}),Object.defineProperty(t,"VoidTypeAnnotation",{enumerable:!0,get:function(){return r.voidTypeAnnotation}}),Object.defineProperty(t,"WhileStatement",{enumerable:!0,get:function(){return r.whileStatement}}),Object.defineProperty(t,"WithStatement",{enumerable:!0,get:function(){return r.withStatement}}),Object.defineProperty(t,"YieldExpression",{enumerable:!0,get:function(){return r.yieldExpression}});var r=n(19630)},47746:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];for(let n=0;n<e.children.length;n++){let i=e.children[n];(0,r.isJSXText)(i)?(0,a.default)(i,t):((0,r.isJSXExpressionContainer)(i)&&(i=i.expression),(0,r.isJSXEmptyExpression)(i)||t.push(i))}return t};var r=n(6440),a=n(47056)},46906:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=e.map((e=>(0,i.isTSTypeAnnotation)(e)?e.typeAnnotation:e)),n=(0,a.default)(t);return 1===n.length?n[0]:(0,r.tsUnionType)(n)};var r=n(19630),a=n(56360),i=n(6440)},18177:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=a.BUILDER_KEYS[e.type];for(const n of t)(0,r.default)(e,n,e[n]);return e};var r=n(38934),a=n(65226)},36967:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1)};var r=n(916)},59630:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)};var r=n(916)},39301:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!0,!0)};var r=n(916)},916:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0,n=!1){return l(e,t,n,new Map)};var r=n(53225),a=n(6440);const i=Function.call.bind(Object.prototype.hasOwnProperty);function s(e,t,n,r){return e&&"string"==typeof e.type?l(e,t,n,r):e}function o(e,t,n,r){return Array.isArray(e)?e.map((e=>s(e,t,n,r))):s(e,t,n,r)}function l(e,t=!0,n=!1,s){if(!e)return e;const{type:l}=e,c={type:e.type};if((0,a.isIdentifier)(e))c.name=e.name,i(e,"optional")&&"boolean"==typeof e.optional&&(c.optional=e.optional),i(e,"typeAnnotation")&&(c.typeAnnotation=t?o(e.typeAnnotation,!0,n,s):e.typeAnnotation);else{if(!i(r.NODE_FIELDS,l))throw new Error(`Unknown node type: "${l}"`);for(const u of Object.keys(r.NODE_FIELDS[l]))i(e,u)&&(c[u]=t?(0,a.isFile)(e)&&"comments"===u?p(e.comments,t,n,s):o(e[u],!0,n,s):e[u])}return i(e,"loc")&&(c.loc=n?null:e.loc),i(e,"leadingComments")&&(c.leadingComments=p(e.leadingComments,t,n,s)),i(e,"innerComments")&&(c.innerComments=p(e.innerComments,t,n,s)),i(e,"trailingComments")&&(c.trailingComments=p(e.trailingComments,t,n,s)),i(e,"extra")&&(c.extra=Object.assign({},e.extra)),c}function p(e,t,n,r){return e&&t?e.map((e=>{const t=r.get(e);if(t)return t;const{type:a,value:i,loc:s}=e,o={type:a,value:i,loc:s};return n&&(o.loc=null),r.set(e,o),o})):e}},31409:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1,!0)};var r=n(916)},77613:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,a){return(0,r.default)(e,t,[{type:a?"CommentLine":"CommentBlock",value:n}])};var r=n(94020)},94020:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!n||!e)return e;const r=`${t}Comments`;return e[r]?"leading"===t?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n,e}},45492:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("innerComments",e,t)};var r=n(213)},96054:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("leadingComments",e,t)};var r=n(213)},76357:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("trailingComments",e,t)};var r=n(213)},27444:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,t),(0,a.default)(e,t),(0,i.default)(e,t),e};var r=n(76357),a=n(96054),i=n(45492)},45785:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return r.COMMENT_KEYS.forEach((t=>{e[t]=null})),e};var r=n(92926)},13037:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WHILE_TYPES=t.USERWHITESPACABLE_TYPES=t.UNARYLIKE_TYPES=t.TYPESCRIPT_TYPES=t.TSTYPE_TYPES=t.TSTYPEELEMENT_TYPES=t.TSENTITYNAME_TYPES=t.TSBASETYPE_TYPES=t.TERMINATORLESS_TYPES=t.STATEMENT_TYPES=t.STANDARDIZED_TYPES=t.SCOPABLE_TYPES=t.PUREISH_TYPES=t.PROPERTY_TYPES=t.PRIVATE_TYPES=t.PATTERN_TYPES=t.PATTERNLIKE_TYPES=t.OBJECTMEMBER_TYPES=t.MODULESPECIFIER_TYPES=t.MODULEDECLARATION_TYPES=t.MISCELLANEOUS_TYPES=t.METHOD_TYPES=t.LVAL_TYPES=t.LOOP_TYPES=t.LITERAL_TYPES=t.JSX_TYPES=t.IMPORTOREXPORTDECLARATION_TYPES=t.IMMUTABLE_TYPES=t.FUNCTION_TYPES=t.FUNCTIONPARENT_TYPES=t.FOR_TYPES=t.FORXSTATEMENT_TYPES=t.FLOW_TYPES=t.FLOWTYPE_TYPES=t.FLOWPREDICATE_TYPES=t.FLOWDECLARATION_TYPES=t.FLOWBASEANNOTATION_TYPES=t.EXPRESSION_TYPES=t.EXPRESSIONWRAPPER_TYPES=t.EXPORTDECLARATION_TYPES=t.ENUMMEMBER_TYPES=t.ENUMBODY_TYPES=t.DECLARATION_TYPES=t.CONDITIONAL_TYPES=t.COMPLETIONSTATEMENT_TYPES=t.CLASS_TYPES=t.BLOCK_TYPES=t.BLOCKPARENT_TYPES=t.BINARY_TYPES=t.ACCESSOR_TYPES=void 0;var r=n(53225);const a=r.FLIPPED_ALIAS_KEYS.Standardized;t.STANDARDIZED_TYPES=a;const i=r.FLIPPED_ALIAS_KEYS.Expression;t.EXPRESSION_TYPES=i;const s=r.FLIPPED_ALIAS_KEYS.Binary;t.BINARY_TYPES=s;const o=r.FLIPPED_ALIAS_KEYS.Scopable;t.SCOPABLE_TYPES=o;const l=r.FLIPPED_ALIAS_KEYS.BlockParent;t.BLOCKPARENT_TYPES=l;const p=r.FLIPPED_ALIAS_KEYS.Block;t.BLOCK_TYPES=p;const c=r.FLIPPED_ALIAS_KEYS.Statement;t.STATEMENT_TYPES=c;const u=r.FLIPPED_ALIAS_KEYS.Terminatorless;t.TERMINATORLESS_TYPES=u;const d=r.FLIPPED_ALIAS_KEYS.CompletionStatement;t.COMPLETIONSTATEMENT_TYPES=d;const f=r.FLIPPED_ALIAS_KEYS.Conditional;t.CONDITIONAL_TYPES=f;const y=r.FLIPPED_ALIAS_KEYS.Loop;t.LOOP_TYPES=y;const m=r.FLIPPED_ALIAS_KEYS.While;t.WHILE_TYPES=m;const h=r.FLIPPED_ALIAS_KEYS.ExpressionWrapper;t.EXPRESSIONWRAPPER_TYPES=h;const T=r.FLIPPED_ALIAS_KEYS.For;t.FOR_TYPES=T;const S=r.FLIPPED_ALIAS_KEYS.ForXStatement;t.FORXSTATEMENT_TYPES=S;const b=r.FLIPPED_ALIAS_KEYS.Function;t.FUNCTION_TYPES=b;const E=r.FLIPPED_ALIAS_KEYS.FunctionParent;t.FUNCTIONPARENT_TYPES=E;const P=r.FLIPPED_ALIAS_KEYS.Pureish;t.PUREISH_TYPES=P;const x=r.FLIPPED_ALIAS_KEYS.Declaration;t.DECLARATION_TYPES=x;const g=r.FLIPPED_ALIAS_KEYS.PatternLike;t.PATTERNLIKE_TYPES=g;const A=r.FLIPPED_ALIAS_KEYS.LVal;t.LVAL_TYPES=A;const v=r.FLIPPED_ALIAS_KEYS.TSEntityName;t.TSENTITYNAME_TYPES=v;const O=r.FLIPPED_ALIAS_KEYS.Literal;t.LITERAL_TYPES=O;const I=r.FLIPPED_ALIAS_KEYS.Immutable;t.IMMUTABLE_TYPES=I;const N=r.FLIPPED_ALIAS_KEYS.UserWhitespacable;t.USERWHITESPACABLE_TYPES=N;const D=r.FLIPPED_ALIAS_KEYS.Method;t.METHOD_TYPES=D;const C=r.FLIPPED_ALIAS_KEYS.ObjectMember;t.OBJECTMEMBER_TYPES=C;const w=r.FLIPPED_ALIAS_KEYS.Property;t.PROPERTY_TYPES=w;const L=r.FLIPPED_ALIAS_KEYS.UnaryLike;t.UNARYLIKE_TYPES=L;const j=r.FLIPPED_ALIAS_KEYS.Pattern;t.PATTERN_TYPES=j;const _=r.FLIPPED_ALIAS_KEYS.Class;t.CLASS_TYPES=_;const M=r.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration;t.IMPORTOREXPORTDECLARATION_TYPES=M;const k=r.FLIPPED_ALIAS_KEYS.ExportDeclaration;t.EXPORTDECLARATION_TYPES=k;const B=r.FLIPPED_ALIAS_KEYS.ModuleSpecifier;t.MODULESPECIFIER_TYPES=B;const F=r.FLIPPED_ALIAS_KEYS.Accessor;t.ACCESSOR_TYPES=F;const R=r.FLIPPED_ALIAS_KEYS.Private;t.PRIVATE_TYPES=R;const K=r.FLIPPED_ALIAS_KEYS.Flow;t.FLOW_TYPES=K;const V=r.FLIPPED_ALIAS_KEYS.FlowType;t.FLOWTYPE_TYPES=V;const Y=r.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation;t.FLOWBASEANNOTATION_TYPES=Y;const U=r.FLIPPED_ALIAS_KEYS.FlowDeclaration;t.FLOWDECLARATION_TYPES=U;const X=r.FLIPPED_ALIAS_KEYS.FlowPredicate;t.FLOWPREDICATE_TYPES=X;const J=r.FLIPPED_ALIAS_KEYS.EnumBody;t.ENUMBODY_TYPES=J;const W=r.FLIPPED_ALIAS_KEYS.EnumMember;t.ENUMMEMBER_TYPES=W;const q=r.FLIPPED_ALIAS_KEYS.JSX;t.JSX_TYPES=q;const $=r.FLIPPED_ALIAS_KEYS.Miscellaneous;t.MISCELLANEOUS_TYPES=$;const G=r.FLIPPED_ALIAS_KEYS.TypeScript;t.TYPESCRIPT_TYPES=G;const z=r.FLIPPED_ALIAS_KEYS.TSTypeElement;t.TSTYPEELEMENT_TYPES=z;const H=r.FLIPPED_ALIAS_KEYS.TSType;t.TSTYPE_TYPES=H;const Q=r.FLIPPED_ALIAS_KEYS.TSBaseType;t.TSBASETYPE_TYPES=Q;const Z=M;t.MODULEDECLARATION_TYPES=Z},92926:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UPDATE_OPERATORS=t.UNARY_OPERATORS=t.STRING_UNARY_OPERATORS=t.STATEMENT_OR_BLOCK_KEYS=t.NUMBER_UNARY_OPERATORS=t.NUMBER_BINARY_OPERATORS=t.NOT_LOCAL_BINDING=t.LOGICAL_OPERATORS=t.INHERIT_KEYS=t.FOR_INIT_KEYS=t.FLATTENABLE_KEYS=t.EQUALITY_BINARY_OPERATORS=t.COMPARISON_BINARY_OPERATORS=t.COMMENT_KEYS=t.BOOLEAN_UNARY_OPERATORS=t.BOOLEAN_NUMBER_BINARY_OPERATORS=t.BOOLEAN_BINARY_OPERATORS=t.BLOCK_SCOPED_SYMBOL=t.BINARY_OPERATORS=t.ASSIGNMENT_OPERATORS=void 0,t.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],t.FLATTENABLE_KEYS=["body","expressions"],t.FOR_INIT_KEYS=["left","init"],t.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const n=["||","&&","??"];t.LOGICAL_OPERATORS=n,t.UPDATE_OPERATORS=["++","--"];const r=[">","<",">=","<="];t.BOOLEAN_NUMBER_BINARY_OPERATORS=r;const a=["==","===","!=","!=="];t.EQUALITY_BINARY_OPERATORS=a;const i=[...a,"in","instanceof"];t.COMPARISON_BINARY_OPERATORS=i;const s=[...i,...r];t.BOOLEAN_BINARY_OPERATORS=s;const o=["-","/","%","*","**","&","|",">>",">>>","<<","^"];t.NUMBER_BINARY_OPERATORS=o;const l=["+",...o,...s,"|>"];t.BINARY_OPERATORS=l;const p=["=","+=",...o.map((e=>e+"=")),...n.map((e=>e+"="))];t.ASSIGNMENT_OPERATORS=p;const c=["delete","!"];t.BOOLEAN_UNARY_OPERATORS=c;const u=["+","-","~"];t.NUMBER_UNARY_OPERATORS=u;const d=["typeof"];t.STRING_UNARY_OPERATORS=d;const f=["void","throw",...c,...u,...d];t.UNARY_OPERATORS=f,t.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};const y=Symbol.for("var used to be block scoped");t.BLOCK_SCOPED_SYMBOL=y;const m=Symbol.for("should not be considered a local binding");t.NOT_LOCAL_BINDING=m},33137:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t="body"){const n=(0,r.default)(e[t],e);return e[t]=n,n};var r=n(47752)},31554:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,o){const l=[];let p=!0;for(const c of t)if((0,a.isEmptyStatement)(c)||(p=!1),(0,a.isExpression)(c))l.push(c);else if((0,a.isExpressionStatement)(c))l.push(c.expression);else if((0,a.isVariableDeclaration)(c)){if("var"!==c.kind)return;for(const e of c.declarations){const t=(0,r.default)(e);for(const e of Object.keys(t))o.push({kind:c.kind,id:(0,s.default)(t[e])});e.init&&l.push((0,i.assignmentExpression)("=",e.id,e.init))}p=!0}else if((0,a.isIfStatement)(c)){const t=c.consequent?e([c.consequent],n,o):n.buildUndefinedNode(),r=c.alternate?e([c.alternate],n,o):n.buildUndefinedNode();if(!t||!r)return;l.push((0,i.conditionalExpression)(c.test,t,r))}else if((0,a.isBlockStatement)(c)){const t=e(c.body,n,o);if(!t)return;l.push(t)}else{if(!(0,a.isEmptyStatement)(c))return;0===t.indexOf(c)&&(p=!0)}return p&&l.push(n.buildUndefinedNode()),1===l.length?l[0]:(0,i.sequenceExpression)(l)};var r=n(46798),a=n(6440),i=n(19630),s=n(916)},72452:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"eval"!==(e=(0,r.default)(e))&&"arguments"!==e||(e="_"+e),e};var r=n(2236)},47752:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.isBlockStatement)(e))return e;let n=[];return(0,r.isEmptyStatement)(e)?n=[]:((0,r.isStatement)(e)||(e=(0,r.isFunction)(t)?(0,a.returnStatement)(e):(0,a.expressionStatement)(e)),n=[e]),(0,a.blockStatement)(n)};var r=n(6440),a=n(19630)},37920:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=e.key||e.property){return!e.computed&&(0,r.isIdentifier)(t)&&(t=(0,a.stringLiteral)(t.name)),t};var r=n(6440),a=n(19630)},66959:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6440);t.default=function(e){if((0,r.isExpressionStatement)(e)&&(e=e.expression),(0,r.isExpression)(e))return e;if((0,r.isClass)(e)?e.type="ClassExpression":(0,r.isFunction)(e)&&(e.type="FunctionExpression"),!(0,r.isExpression)(e))throw new Error(`cannot turn ${e.type} to an expression`);return e}},2236:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e+="";let t="";for(const n of e)t+=(0,a.isIdentifierChar)(n.codePointAt(0))?n:"-";return t=t.replace(/^[-0-9]+/,""),t=t.replace(/[-\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""})),(0,r.default)(t)||(t=`_${t}`),t||"_"};var r=n(16502),a=n(29649)},22505:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;var r=n(6440),a=n(916),i=n(73632);function s(e,t=e.key){let n;return"method"===e.kind?s.increment()+"":(n=(0,r.isIdentifier)(t)?t.name:(0,r.isStringLiteral)(t)?JSON.stringify(t.value):JSON.stringify((0,i.default)((0,a.default)(t))),e.computed&&(n=`[${n}]`),e.static&&(n=`static:${n}`),n)}s.uid=0,s.increment=function(){return s.uid>=Number.MAX_SAFE_INTEGER?s.uid=0:s.uid++}},45802:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(null==e||!e.length)return;const n=[],a=(0,r.default)(e,t,n);if(a){for(const e of n)t.push(e);return a}};var r=n(31554)},99852:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6440),a=n(19630);t.default=function(e,t){if((0,r.isStatement)(e))return e;let n,i=!1;if((0,r.isClass)(e))i=!0,n="ClassDeclaration";else if((0,r.isFunction)(e))i=!0,n="FunctionDeclaration";else if((0,r.isAssignmentExpression)(e))return(0,a.expressionStatement)(e);if(i&&!e.id&&(n=!1),!n){if(t)return!1;throw new Error(`cannot turn ${e.type} to a statement`)}return e.type=n,e}},28774:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(16502),a=n(19630);t.default=function e(t){if(void 0===t)return(0,a.identifier)("undefined");if(!0===t||!1===t)return(0,a.booleanLiteral)(t);if(null===t)return(0,a.nullLiteral)();if("string"==typeof t)return(0,a.stringLiteral)(t);if("number"==typeof t){let e;if(Number.isFinite(t))e=(0,a.numericLiteral)(Math.abs(t));else{let n;n=Number.isNaN(t)?(0,a.numericLiteral)(0):(0,a.numericLiteral)(1),e=(0,a.binaryExpression)("/",n,(0,a.numericLiteral)(0))}return(t<0||Object.is(t,-0))&&(e=(0,a.unaryExpression)("-",e)),e}if(function(e){return"[object RegExp]"===i(e)}(t)){const e=t.source,n=t.toString().match(/\/([a-z]+|)$/)[1];return(0,a.regExpLiteral)(e,n)}if(Array.isArray(t))return(0,a.arrayExpression)(t.map(e));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(t)){const n=[];for(const i of Object.keys(t)){let s;s=(0,r.default)(i)?(0,a.identifier)(i):(0,a.stringLiteral)(i),n.push((0,a.objectProperty)(s,e(t[i])))}return(0,a.objectExpression)(n)}throw new Error("don't know how to turn this value into a node")};const i=Function.call.bind(Object.prototype.toString)},77114:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.patternLikeCommon=t.functionTypeAnnotationCommon=t.functionDeclarationCommon=t.functionCommon=t.classMethodOrPropertyCommon=t.classMethodOrDeclareMethodCommon=void 0;var r=n(41856),a=n(16502),i=n(29649),s=n(37648),o=n(92926),l=n(37455);const p=(0,l.defineAliasedType)("Standardized");p("ArrayExpression",{fields:{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","Expression","SpreadElement"))),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),p("AssignmentExpression",{fields:{operator:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertValueType)("string");const e=(0,l.assertOneOf)(...o.ASSIGNMENT_OPERATORS),t=(0,l.assertOneOf)("=");return function(n,a,i){((0,r.default)("Pattern",n.left)?t:e)(n,a,i)}}()},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")},right:{validate:(0,l.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),p("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,l.assertOneOf)(...o.BINARY_OPERATORS)},left:{validate:function(){const e=(0,l.assertNodeType)("Expression"),t=(0,l.assertNodeType)("Expression","PrivateName");return Object.assign((function(n,r,a){("in"===n.operator?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","PrivateName"]})}()},right:{validate:(0,l.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),p("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("Directive",{visitor:["value"],fields:{value:{validate:(0,l.assertNodeType)("DirectiveLiteral")}}}),p("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block","Statement"]}),p("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("CallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,l.assertNodeType)("Expression","Super","V8IntrinsicIdentifier")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}},{typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),p("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),p("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Expression")},alternate:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),p("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("DebuggerStatement",{aliases:["Statement"]}),p("DoWhileStatement",{visitor:["test","body"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),p("EmptyStatement",{aliases:["Statement"]}),p("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),p("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,l.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertEach)((0,l.assertNodeType)("CommentBlock","CommentLine")):Object.assign((()=>{}),{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,l.assertEach)(Object.assign((()=>{}),{type:"any"})),optional:!0}}}),p("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,l.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},update:{validate:(0,l.assertNodeType)("Expression"),optional:!0},body:{validate:(0,l.assertNodeType)("Statement")}}});const c=()=>({params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement")))},generator:{default:!1},async:{default:!1}});t.functionCommon=c;const u=()=>({returnType:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}});t.functionTypeAnnotationCommon=u;const d=()=>Object.assign({},c(),{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}});t.functionDeclarationCommon=d,p("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","params","body","returnType","typeParameters"],fields:Object.assign({},d(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return()=>{};const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){(0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}()}),p("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const f=()=>({typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.patternLikeCommon=f,p("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","PatternLike","LVal","TSEntityName"],fields:Object.assign({},f(),{name:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&!(0,a.default)(n,!1))throw new TypeError(`"${n}" is not a valid identifier name`)}),{type:"string"}))}}),validate(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const a=/\.(\w+)$/.exec(t);if(!a)return;const[,s]=a,o={computed:!1};if("property"===s){if((0,r.default)("MemberExpression",e,o))return;if((0,r.default)("OptionalMemberExpression",e,o))return}else if("key"===s){if((0,r.default)("Property",e,o))return;if((0,r.default)("Method",e,o))return}else if("exported"===s){if((0,r.default)("ExportSpecifier",e))return}else if("imported"===s){if((0,r.default)("ImportSpecifier",e,{imported:n}))return}else if("meta"===s&&(0,r.default)("MetaProperty",e,{meta:n}))return;if(((0,i.isKeyword)(n.name)||(0,i.isReservedWord)(n.name,!1))&&"this"!==n.name)throw new TypeError(`"${n.name}" is not a valid identifier`)}}),p("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,l.assertNodeType)("Statement")}}}),p("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,l.assertNodeType)("Identifier")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("StringLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,l.chain)((0,l.assertValueType)("number"),Object.assign((function(e,t,n){(1/n<0||!Number.isFinite(n))&&new Error(`NumericLiterals must be non-negative finite numbers. You can use t.valueToNode(${n}) instead.`)}),{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),p("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,l.assertValueType)("string")},flags:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const r=/[^gimsuy]/.exec(n);if(r)throw new TypeError(`"${r[0]}" is not a valid RegExp flag`)}),{type:"string"})),default:""}}}),p("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,l.assertOneOf)(...o.LOGICAL_OPERATORS)},left:{validate:(0,l.assertNodeType)("Expression")},right:{validate:(0,l.assertNodeType)("Expression")}}}),p("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal"],fields:Object.assign({object:{validate:(0,l.assertNodeType)("Expression","Super")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier","PrivateName"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","PrivateName"],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}})}),p("NewExpression",{inherits:"CallExpression"}),p("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceFile:{validate:(0,l.assertValueType)("string")},sourceType:{validate:(0,l.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,l.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block"]}),p("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ObjectMethod","ObjectProperty","SpreadElement")))}}}),p("ObjectMethod",{builder:["kind","key","params","body","computed","generator","async"],fields:Object.assign({},c(),u(),{kind:Object.assign({validate:(0,l.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],n}()},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}}),visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]}),p("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],fields:{computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]})}()},value:{validate:(0,l.assertNodeType)("Expression","PatternLike")},shorthand:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true")}),{type:"boolean"}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!(0,r.default)("Identifier",e.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")})),default:!1},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}},visitor:["key","value","decorators"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:function(){const e=(0,l.assertNodeType)("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),t=(0,l.assertNodeType)("Expression");return function(n,a,i){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ObjectPattern",n)?e:t)(i,"value",i.value)}}()}),p("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["LVal","PatternLike"],deprecatedAlias:"RestProperty",fields:Object.assign({},f(),{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")}}),validate(e,t){if(!process.env.BABEL_TYPES_8_BREAKING)return;const n=/(\w+)\[(\d+)\]/.exec(t);if(!n)throw new Error("Internal Babel error: malformed key.");const[,r,a]=n;if(e[r].length>+a+1)throw new TypeError(`RestElement must be last element of ${r}`)}}),p("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression"),optional:!0}}}),p("SequenceExpression",{visitor:["expressions"],fields:{expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression")))}},aliases:["Expression"]}),p("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}}}),p("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},consequent:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}}}),p("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,l.assertNodeType)("Expression")},cases:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("SwitchCase")))}}}),p("ThisExpression",{aliases:["Expression"]}),p("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:(0,l.chain)((0,l.assertNodeType)("BlockStatement"),Object.assign((function(e){if(process.env.BABEL_TYPES_8_BREAKING&&!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")}),{oneOfNodeTypes:["BlockStatement"]}))},handler:{optional:!0,validate:(0,l.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,l.assertNodeType)("BlockStatement")}}}),p("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),p("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression"):(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),p("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},kind:{validate:(0,l.assertOneOf)("var","let","const","using","await using")},declarations:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("VariableDeclarator")))}},validate(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&(0,r.default)("ForXStatement",e,{left:n})&&1!==n.declarations.length)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${e.type}`)}}),p("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("LVal");const e=(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),t=(0,l.assertNodeType)("Identifier");return function(n,r,a){(n.init?e:t)(n,r,a)}}()},definite:{optional:!0,validate:(0,l.assertValueType)("boolean")},init:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{left:{validate:(0,l.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,l.assertNodeType)("Expression")},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}})}),p("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","PatternLike","LVal")))}})}),p("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["params","body","returnType","typeParameters"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{expression:{validate:(0,l.assertValueType)("boolean")},body:{validate:(0,l.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),p("ClassBody",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")))}}}),p("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0}}}),p("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0}},validate:function(){const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id))}}()}),p("ExportAllDeclaration",{builder:["source"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{source:{validate:(0,l.assertNodeType)("StringLiteral")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value")),attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))}}}),p("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{validate:(0,l.assertNodeType)("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("value"))}}),p("ExportNamedDeclaration",{builder:["declaration","specifiers","source"],visitor:["declaration","specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{optional:!0,validate:(0,l.chain)((0,l.assertNodeType)("Declaration"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration")}),{oneOfNodeTypes:["Declaration"]}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.source)throw new TypeError("Cannot export a declaration from a source")}))},attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},specifiers:{default:[],validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)(function(){const e=(0,l.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),t=(0,l.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?function(n,r,a){(n.source?e:t)(n,r,a)}:e}()))},source:{validate:(0,l.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value"))}}),p("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},exported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,l.assertOneOf)("type","value"),optional:!0}}}),p("ForOfStatement",{visitor:["left","right","body"],builder:["left","right","body","await"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("VariableDeclaration","LVal");const e=(0,l.assertNodeType)("VariableDeclaration"),t=(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return function(n,a,i){(0,r.default)("VariableDeclaration",i)?e(n,a,i):t(n,a,i)}}()},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")},await:{default:!1}}}),p("ImportDeclaration",{builder:["specifiers","source"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:{attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},module:{optional:!0,validate:(0,l.assertValueType)("boolean")},specifiers:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier")))},source:{validate:(0,l.assertNodeType)("StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportSpecifier",{visitor:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},imported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:(0,l.chain)((0,l.assertNodeType)("Identifier"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;let a;switch(n.name){case"function":a="sent";break;case"new":a="target";break;case"import":a="meta"}if(!(0,r.default)("Identifier",e.property,{name:a}))throw new TypeError("Unrecognised MetaProperty")}),{oneOfNodeTypes:["Identifier"]}))},property:{validate:(0,l.assertNodeType)("Identifier")}}});const y=()=>({abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,l.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}});t.classMethodOrPropertyCommon=y;const m=()=>Object.assign({},c(),y(),{params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement","TSParameterProperty")))},kind:{validate:(0,l.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,l.chain)((0,l.assertValueType)("string"),(0,l.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.classMethodOrDeclareMethodCommon=m,p("ClassMethod",{aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["key","params","body","decorators","returnType","typeParameters"],fields:Object.assign({},m(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("ObjectPattern",{visitor:["properties","typeAnnotation","decorators"],builder:["properties"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("RestElement","ObjectProperty")))}})}),p("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Super",{aliases:["Expression"]}),p("TaggedTemplateExpression",{visitor:["tag","quasi","typeParameters"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,l.assertNodeType)("Expression")},quasi:{validate:(0,l.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),p("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,l.chain)((0,l.assertShape)({raw:{validate:(0,l.assertValueType)("string")},cooked:{validate:(0,l.assertValueType)("string"),optional:!0}}),(function(e){const t=e.value.raw;let n=!1;const r=()=>{throw new Error("Internal @babel/types error.")},{str:a,firstInvalidLoc:i}=(0,s.readStringContents)("template",t,0,0,0,{unterminated(){n=!0},strictNumericEscape:r,invalidEscapeSequence:r,numericSeparatorInEscapeSequence:r,unexpectedNumericSeparator:r,invalidDigit:r,invalidCodePoint:r});if(!n)throw new Error("Invalid raw");e.value.cooked=i?null:a}))},tail:{default:!1}}}),p("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TemplateElement")))},expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","TSType")),(function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)}))}}}),p("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")}),{type:"boolean"})),default:!1},argument:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Import",{aliases:["Expression"]}),p("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,l.assertNodeType)("Identifier")}}}),p("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier"]})}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")}}}),p("OptionalCallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:{callee:{validate:(0,l.assertNodeType)("Expression")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")},typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}}}),p("ClassProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"],fields:Object.assign({},y(),{value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassAccessorProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"],fields:Object.assign({},y(),{key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassPrivateProperty",{visitor:["key","value","decorators","typeAnnotation"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,l.assertNodeType)("PrivateName")},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},static:{validate:(0,l.assertValueType)("boolean"),default:!1},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}}}),p("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},m(),u(),{kind:{validate:(0,l.assertOneOf)("get","set","method"),default:"method"},key:{validate:(0,l.assertNodeType)("PrivateName")},body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")}}}),p("StaticBlock",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","FunctionParent"]})},883:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEPRECATED_ALIASES=void 0,t.DEPRECATED_ALIASES={ModuleDeclaration:"ImportOrExportDeclaration"}},61109:(e,t,n)=>{"use strict";var r=n(37455);(0,r.default)("ArgumentPlaceholder",{}),(0,r.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,r.assertNodeType)("Expression")},callee:{validate:(0,r.assertNodeType)("Expression")}}:{object:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})}}}),(0,r.default)("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,r.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,r.assertNodeType)("StringLiteral")}}}),(0,r.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),(0,r.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,r.assertNodeType)("BlockStatement")},async:{validate:(0,r.assertValueType)("boolean"),default:!1}}}),(0,r.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,r.assertNodeType)("Identifier")}}}),(0,r.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("ObjectProperty","SpreadElement")))}}}),(0,r.default)("TupleExpression",{fields:{elements:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Expression","SpreadElement"))),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,r.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,r.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,r.assertNodeType)("Program")}},aliases:["Expression"]}),(0,r.default)("TopicReference",{aliases:["Expression"]}),(0,r.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]})},80306:(e,t,n)=>{"use strict";var r=n(37455);const a=(0,r.defineAliasedType)("Flow"),i=e=>{const t="DeclareClass"===e;a(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends",...t?["mixins","implements"]:[],"body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends"))},t?{mixins:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),implements:(0,r.validateOptional)((0,r.arrayOfType)("ClassImplements"))}:{},{body:(0,r.validateType)("ObjectTypeAnnotation")})})};a("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,r.validateType)("FlowType")}}),a("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("DeclareClass"),a("DeclareFunction",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),predicate:(0,r.validateOptionalType)("DeclaredPredicate")}}),i("DeclareInterface"),a("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)("BlockStatement"),kind:(0,r.validateOptional)((0,r.assertOneOf)("CommonJS","ES"))}}),a("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateOptionalType)("FlowType")}}),a("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier")}}),a("DeclareExportDeclaration",{visitor:["declaration","specifiers","source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{declaration:(0,r.validateOptionalType)("Flow"),specifiers:(0,r.validateOptional)((0,r.arrayOfType)(["ExportSpecifier","ExportNamespaceSpecifier"])),source:(0,r.validateOptionalType)("StringLiteral"),default:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("DeclareExportAllDeclaration",{visitor:["source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{source:(0,r.validateType)("StringLiteral"),exportKind:(0,r.validateOptional)((0,r.assertOneOf)("type","value"))}}),a("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,r.validateType)("Flow")}}),a("ExistsTypeAnnotation",{aliases:["FlowType"]}),a("FunctionTypeAnnotation",{visitor:["typeParameters","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),params:(0,r.validate)((0,r.arrayOfType)("FunctionTypeParam")),rest:(0,r.validateOptionalType)("FunctionTypeParam"),this:(0,r.validateOptionalType)("FunctionTypeParam"),returnType:(0,r.validateType)("FlowType")}}),a("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,r.validateOptionalType)("Identifier"),typeAnnotation:(0,r.validateType)("FlowType"),optional:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),a("InferredPredicate",{aliases:["FlowPredicate"]}),a("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("InterfaceDeclaration"),a("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),body:(0,r.validateType)("ObjectTypeAnnotation")}}),a("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("number"))}}),a("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,r.validate)((0,r.arrayOfType)(["ObjectTypeProperty","ObjectTypeSpreadProperty"])),indexers:{validate:(0,r.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,r.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,r.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,r.assertValueType)("boolean"),default:!1},inexact:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeInternalSlot",{visitor:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateType)("Identifier"),value:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean")),static:(0,r.validate)((0,r.assertValueType)("boolean")),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeIndexer",{visitor:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateOptionalType)("Identifier"),key:(0,r.validateType)("FlowType"),value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance")}}),a("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,r.validateType)(["Identifier","StringLiteral"]),value:(0,r.validateType)("FlowType"),kind:(0,r.validate)((0,r.assertOneOf)("init","get","set")),static:(0,r.validate)((0,r.assertValueType)("boolean")),proto:(0,r.validate)((0,r.assertValueType)("boolean")),optional:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance"),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,r.validateType)("FlowType")}}),a("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateType)("FlowType")}}),a("QualifiedTypeIdentifier",{visitor:["id","qualification"],fields:{id:(0,r.validateType)("Identifier"),qualification:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"])}}),a("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("string"))}}),a("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,r.validateType)("FlowType")}}),a("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,r.validate)((0,r.assertValueType)("string")),bound:(0,r.validateOptionalType)("TypeAnnotation"),default:(0,r.validateOptionalType)("FlowType"),variance:(0,r.validateOptionalType)("Variance")}}),a("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("TypeParameter"))}}),a("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("Variance",{builder:["kind"],fields:{kind:(0,r.validate)((0,r.assertOneOf)("minus","plus"))}}),a("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,r.validateType)("Identifier"),body:(0,r.validateType)(["EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody"])}}),a("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)(["EnumStringMember","EnumDefaultedMember"]),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumBooleanMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("BooleanLiteral")}}),a("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("NumericLiteral")}}),a("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("StringLiteral")}}),a("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),a("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType")}}),a("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean"))}})},53225:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ALIAS_KEYS",{enumerable:!0,get:function(){return a.ALIAS_KEYS}}),Object.defineProperty(t,"BUILDER_KEYS",{enumerable:!0,get:function(){return a.BUILDER_KEYS}}),Object.defineProperty(t,"DEPRECATED_ALIASES",{enumerable:!0,get:function(){return s.DEPRECATED_ALIASES}}),Object.defineProperty(t,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return a.DEPRECATED_KEYS}}),Object.defineProperty(t,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return a.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(t,"NODE_FIELDS",{enumerable:!0,get:function(){return a.NODE_FIELDS}}),Object.defineProperty(t,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return a.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(t,"PLACEHOLDERS",{enumerable:!0,get:function(){return i.PLACEHOLDERS}}),Object.defineProperty(t,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_ALIAS}}),Object.defineProperty(t,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_FLIPPED_ALIAS}}),t.TYPES=void 0,Object.defineProperty(t,"VISITOR_KEYS",{enumerable:!0,get:function(){return a.VISITOR_KEYS}});var r=n(53164);n(77114),n(80306),n(14170),n(403),n(61109),n(40289);var a=n(37455),i=n(24912),s=n(883);Object.keys(s.DEPRECATED_ALIASES).forEach((e=>{a.FLIPPED_ALIAS_KEYS[e]=a.FLIPPED_ALIAS_KEYS[s.DEPRECATED_ALIASES[e]]})),r(a.VISITOR_KEYS),r(a.ALIAS_KEYS),r(a.FLIPPED_ALIAS_KEYS),r(a.NODE_FIELDS),r(a.BUILDER_KEYS),r(a.DEPRECATED_KEYS),r(i.PLACEHOLDERS_ALIAS),r(i.PLACEHOLDERS_FLIPPED_ALIAS);const o=[].concat(Object.keys(a.VISITOR_KEYS),Object.keys(a.FLIPPED_ALIAS_KEYS),Object.keys(a.DEPRECATED_KEYS));t.TYPES=o},14170:(e,t,n)=>{"use strict";var r=n(37455);const a=(0,r.defineAliasedType)("JSX");a("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,r.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),a("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),a("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,r.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,r.assertNodeType)("JSXClosingElement")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}},{selfClosing:{validate:(0,r.assertValueType)("boolean"),optional:!0}})}),a("JSXEmptyExpression",{}),a("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression","JSXEmptyExpression")}}}),a("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}}),a("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,r.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,r.assertNodeType)("JSXIdentifier")},name:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","attributes"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXAttribute","JSXSpreadAttribute")))},typeParameters:{validate:(0,r.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),a("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}}}),a("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,r.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,r.assertNodeType)("JSXClosingFragment")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}}}),a("JSXOpeningFragment",{aliases:["Immutable"]}),a("JSXClosingFragment",{aliases:["Immutable"]})},403:(e,t,n)=>{"use strict";var r=n(37455),a=n(24912);const i=(0,r.defineAliasedType)("Miscellaneous");i("Noop",{visitor:[]}),i("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:{name:{validate:(0,r.assertNodeType)("Identifier")},expectedNode:{validate:(0,r.assertOneOf)(...a.PLACEHOLDERS)}}}),i("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}})},24912:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PLACEHOLDERS_FLIPPED_ALIAS=t.PLACEHOLDERS_ALIAS=t.PLACEHOLDERS=void 0;var r=n(37455);const a=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"];t.PLACEHOLDERS=a;const i={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};t.PLACEHOLDERS_ALIAS=i;for(const e of a){const t=r.ALIAS_KEYS[e];null!=t&&t.length&&(i[e]=t)}const s={};t.PLACEHOLDERS_FLIPPED_ALIAS=s,Object.keys(i).forEach((e=>{i[e].forEach((t=>{Object.hasOwnProperty.call(s,t)||(s[t]=[]),s[t].push(e)}))}))},40289:(e,t,n)=>{"use strict";var r=n(37455),a=n(77114),i=n(41856);const s=(0,r.defineAliasedType)("TypeScript"),o=(0,r.assertValueType)("boolean"),l=()=>({returnType:{validate:(0,r.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,r.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}});s("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,r.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,r.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,r.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,r.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Decorator"))),optional:!0}}}),s("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},(0,a.functionDeclarationCommon)(),l())}),s("TSDeclareMethod",{visitor:["decorators","key","typeParameters","params","returnType"],fields:Object.assign({},(0,a.classMethodOrDeclareMethodCommon)(),l())}),s("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,r.validateType)("TSEntityName"),right:(0,r.validateType)("Identifier")}});const p=()=>({typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,r.validateArrayOfType)(["ArrayPattern","Identifier","ObjectPattern","RestElement"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}),c={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:p()};s("TSCallSignatureDeclaration",c),s("TSConstructSignatureDeclaration",c);const u=()=>({key:(0,r.validateType)("Expression"),computed:{default:!1},optional:(0,r.validateOptional)(o)});s("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation","initializer"],fields:Object.assign({},u(),{readonly:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),initializer:(0,r.validateOptionalType)("Expression"),kind:{validate:(0,r.assertOneOf)("get","set")}})}),s("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},p(),u(),{kind:{validate:(0,r.assertOneOf)("method","get","set")}})}),s("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,r.validateOptional)(o),static:(0,r.validateOptional)(o),parameters:(0,r.validateArrayOfType)("Identifier"),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}});const d=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const e of d)s(e,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});s("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const f={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};s("TSFunctionType",Object.assign({},f,{fields:p()})),s("TSConstructorType",Object.assign({},f,{fields:Object.assign({},p(),{abstract:(0,r.validateOptional)(o)})})),s("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,r.validateType)(["Identifier","TSThisType"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),asserts:(0,r.validateOptional)(o)}}),s("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:{exprName:(0,r.validateType)(["TSEntityName","TSImportType"]),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,r.validateType)("TSType")}}),s("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,r.validateArrayOfType)(["TSType","TSNamedTupleMember"])}}),s("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,r.validateType)("Identifier"),optional:{validate:o,default:!1},elementType:(0,r.validateType)("TSType")}});const y={aliases:["TSType"],visitor:["types"],fields:{types:(0,r.validateArrayOfType)("TSType")}};s("TSUnionType",y),s("TSIntersectionType",y),s("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,r.validateType)("TSType"),extendsType:(0,r.validateType)("TSType"),trueType:(0,r.validateType)("TSType"),falseType:(0,r.validateType)("TSType")}}),s("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,r.validateType)("TSTypeParameter")}}),s("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{operator:(0,r.validate)((0,r.assertValueType)("string")),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,r.validateType)("TSType"),indexType:(0,r.validateType)("TSType")}}),s("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","typeAnnotation","nameType"],fields:{readonly:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeParameter:(0,r.validateType)("TSTypeParameter"),optional:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeAnnotation:(0,r.validateOptionalType)("TSType"),nameType:(0,r.validateOptionalType)("TSType")}}),s("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const e=(0,r.assertNodeType)("NumericLiteral","BigIntLiteral"),t=(0,r.assertOneOf)("-"),n=(0,r.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral");function a(r,a,s){(0,i.default)("UnaryExpression",s)?(t(s,"operator",s.operator),e(s,"argument",s.argument)):n(r,a,s)}return a.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],a}()}}}),s("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,r.validateType)("TSInterfaceBody")}}),s("TSInterfaceBody",{visitor:["body"],fields:{body:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("Expression"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}});const m={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TSType")}};s("TSAsExpression",m),s("TSSatisfiesExpression",m),s("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,r.validateType)("TSType"),expression:(0,r.validateType)("Expression")}}),s("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,r.validateOptional)(o),const:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),members:(0,r.validateArrayOfType)("TSEnumMember"),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{declare:(0,r.validateOptional)(o),global:(0,r.validateOptional)(o),id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)(["TSModuleBlock","TSModuleDeclaration"])}}),s("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:(0,r.validateArrayOfType)("Statement")}}),s("TSImportType",{aliases:["TSType"],visitor:["argument","qualifier","typeParameters"],fields:{argument:(0,r.validateType)("StringLiteral"),qualifier:(0,r.validateOptionalType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSImportEqualsDeclaration",{aliases:["Statement"],visitor:["id","moduleReference"],fields:{isExport:(0,r.validate)(o),id:(0,r.validateType)("Identifier"),moduleReference:(0,r.validateType)(["TSEntityName","TSExternalModuleReference"]),importKind:{validate:(0,r.assertOneOf)("type","value"),optional:!0}}}),s("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,r.validateType)("StringLiteral")}}),s("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),s("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,r.assertNodeType)("TSType")}}}),s("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSType")))}}}),s("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSTypeParameter")))}}}),s("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,r.assertValueType)("string")},in:{validate:(0,r.assertValueType)("boolean"),optional:!0},out:{validate:(0,r.assertValueType)("boolean"),optional:!0},const:{validate:(0,r.assertValueType)("boolean"),optional:!0},constraint:{validate:(0,r.assertNodeType)("TSType"),optional:!0},default:{validate:(0,r.assertNodeType)("TSType"),optional:!0}}})},37455:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VISITOR_KEYS=t.NODE_PARENT_VALIDATIONS=t.NODE_FIELDS=t.FLIPPED_ALIAS_KEYS=t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.ALIAS_KEYS=void 0,t.arrayOf=m,t.arrayOfType=h,t.assertEach=T,t.assertNodeOrValueType=function(...e){function t(t,n,i){for(const s of e)if(d(i)===s||(0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeOrValueTypes=e,t},t.assertNodeType=S,t.assertOneOf=function(...e){function t(t,n,r){if(e.indexOf(r)<0)throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t},t.assertOptionalChainStart=function(){return function(e){var t;let n=e;for(;e;){const{type:e}=n;if("OptionalCallExpression"!==e){if("OptionalMemberExpression"!==e)break;if(n.optional)return;n=n.object}else{if(n.optional)return;n=n.callee}}throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null==(t=n)?void 0:t.type}`)}},t.assertShape=function(e){function t(t,n,r){const i=[];for(const n of Object.keys(e))try{(0,a.validateField)(t,n,r[n],e[n])}catch(e){if(e instanceof TypeError){i.push(e.message);continue}throw e}if(i.length)throw new TypeError(`Property ${n} of ${t.type} expected to have the following:\n${i.join("\n")}`)}return t.shapeOf=e,t},t.assertValueType=b,t.chain=E,t.default=A,t.defineAliasedType=function(...e){return(t,n={})=>{let r=n.aliases;var a;r||(n.inherits&&(r=null==(a=g[n.inherits].aliases)?void 0:a.slice()),null!=r||(r=[]),n.aliases=r);const i=e.filter((e=>!r.includes(e)));r.unshift(...i),A(t,n)}},t.typeIs=y,t.validate=f,t.validateArrayOfType=function(e){return f(h(e))},t.validateOptional=function(e){return{validate:e,optional:!0}},t.validateOptionalType=function(e){return{validate:y(e),optional:!0}},t.validateType=function(e){return f(y(e))};var r=n(41856),a=n(38934);const i={};t.VISITOR_KEYS=i;const s={};t.ALIAS_KEYS=s;const o={};t.FLIPPED_ALIAS_KEYS=o;const l={};t.NODE_FIELDS=l;const p={};t.BUILDER_KEYS=p;const c={};t.DEPRECATED_KEYS=c;const u={};function d(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function f(e){return{validate:e}}function y(e){return"string"==typeof e?S(e):S(...e)}function m(e){return E(b("array"),T(e))}function h(e){return m(y(e))}function T(e){function t(t,n,r){if(Array.isArray(r))for(let i=0;i<r.length;i++){const s=`${n}[${i}]`,o=r[i];e(t,s,o),process.env.BABEL_TYPES_8_BREAKING&&(0,a.validateChild)(t,s,o)}}return t.each=e,t}function S(...e){function t(t,n,i){for(const s of e)if((0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeTypes=e,t}function b(e){function t(t,n,r){if(d(r)!==e)throw new TypeError(`Property ${n} expected type of ${e} but got ${d(r)}`)}return t.type=e,t}function E(...e){function t(...t){for(const n of e)n(...t)}if(t.chainOf=e,e.length>=2&&"type"in e[0]&&"array"===e[0].type&&!("each"in e[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return t}t.NODE_PARENT_VALIDATIONS=u;const P=["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate"],x=["default","optional","deprecated","validate"],g={};function A(e,t={}){const n=t.inherits&&g[t.inherits]||{};let r=t.fields;if(!r&&(r={},n.fields)){const e=Object.getOwnPropertyNames(n.fields);for(const t of e){const e=n.fields[t],a=e.default;if(Array.isArray(a)?a.length>0:a&&"object"==typeof a)throw new Error("field defaults can only be primitives or empty arrays currently");r[t]={default:Array.isArray(a)?[]:a,optional:e.optional,deprecated:e.deprecated,validate:e.validate}}}const a=t.visitor||n.visitor||[],f=t.aliases||n.aliases||[],y=t.builder||n.builder||t.visitor||[];for(const n of Object.keys(t))if(-1===P.indexOf(n))throw new Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(c[t.deprecatedAlias]=e);for(const e of a.concat(y))r[e]=r[e]||{};for(const t of Object.keys(r)){const n=r[t];void 0!==n.default&&-1===y.indexOf(t)&&(n.optional=!0),void 0===n.default?n.default=null:n.validate||null==n.default||(n.validate=b(d(n.default)));for(const r of Object.keys(n))if(-1===x.indexOf(r))throw new Error(`Unknown field key "${r}" on ${e}.${t}`)}i[e]=t.visitor=a,p[e]=t.builder=y,l[e]=t.fields=r,s[e]=t.aliases=f,f.forEach((t=>{o[t]=o[t]||[],o[t].push(e)})),t.validate&&(u[e]=t.validate),g[e]=t}},65226:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={react:!0,assertNode:!0,createTypeAnnotationBasedOnTypeof:!0,createUnionTypeAnnotation:!0,createFlowUnionType:!0,createTSUnionType:!0,cloneNode:!0,clone:!0,cloneDeep:!0,cloneDeepWithoutLoc:!0,cloneWithoutLoc:!0,addComment:!0,addComments:!0,inheritInnerComments:!0,inheritLeadingComments:!0,inheritsComments:!0,inheritTrailingComments:!0,removeComments:!0,ensureBlock:!0,toBindingIdentifierName:!0,toBlock:!0,toComputedKey:!0,toExpression:!0,toIdentifier:!0,toKeyAlias:!0,toSequenceExpression:!0,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,traverse:!0,traverseFast:!0,shallowEqual:!0,is:!0,isBinding:!0,isBlockScoped:!0,isImmutable:!0,isLet:!0,isNode:!0,isNodesEquivalent:!0,isPlaceholderType:!0,isReferenced:!0,isScope:!0,isSpecifierDefault:!0,isType:!0,isValidES3Identifier:!0,isValidIdentifier:!0,isVar:!0,matchesPattern:!0,validate:!0,buildMatchMemberExpression:!0,__internal__deprecationWarning:!0};Object.defineProperty(t,"__internal__deprecationWarning",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"addComment",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"addComments",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"appendToMemberExpression",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"assertNode",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"buildMatchMemberExpression",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"clone",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"cloneDeep",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"cloneNode",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"cloneWithoutLoc",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"createFlowUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"createTSUnionType",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"ensureBlock",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"inheritInnerComments",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"inheritLeadingComments",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"inheritTrailingComments",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"inherits",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"inheritsComments",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"is",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"isPlaceholderType",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"isType",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"isValidES3Identifier",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"matchesPattern",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"prependToMemberExpression",{enumerable:!0,get:function(){return V.default}}),t.react=void 0,Object.defineProperty(t,"removeComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"removeProperties",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"removePropertiesDeep",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"shallowEqual",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"toSequenceExpression",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"traverseFast",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return B.default}});var a=n(61502),i=n(15750),s=n(47746),o=n(46360),l=n(74950);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var p=n(53555),c=n(66433),u=n(46906),d=n(19630);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=n(73045);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}));var y=n(916),m=n(36967),h=n(59630),T=n(39301),S=n(31409),b=n(77613),E=n(94020),P=n(45492),x=n(96054),g=n(27444),A=n(76357),v=n(45785),O=n(13037);Object.keys(O).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===O[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return O[e]}}))}));var I=n(92926);Object.keys(I).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===I[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return I[e]}}))}));var N=n(33137),D=n(72452),C=n(47752),w=n(37920),L=n(66959),j=n(2236),_=n(22505),M=n(45802),k=n(99852),B=n(28774),F=n(53225);Object.keys(F).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===F[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return F[e]}}))}));var R=n(11695),K=n(72057),V=n(94012),Y=n(41270),U=n(73632),X=n(73318),J=n(46798),W=n(41468),q=n(17811);Object.keys(q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return q[e]}}))}));var $=n(84793),G=n(25944),z=n(41856),H=n(54794),Q=n(27795),Z=n(90667),ee=n(13196),te=n(63765),ne=n(89201),re=n(70839),ae=n(926),ie=n(49576),se=n(30652),oe=n(68957),le=n(9118),pe=n(16502),ce=n(36571),ue=n(31862),de=n(38934),fe=n(49086),ye=n(6440);Object.keys(ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ye[e]}}))}));var me=n(5732);const he={isReactComponent:a.default,isCompatTag:i.default,buildChildren:s.default};t.react=he},11695:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n=!1){return e.object=(0,r.memberExpression)(e.object,e.property,e.computed),e.property=t,e.computed=!!n,e};var r=n(19630)},73318:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isAnyTypeAnnotation)(p))return[p];if((0,r.isFlowBaseAnnotation)(p))s.set(p.type,p);else if((0,r.isUnionTypeAnnotation)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isGenericTypeAnnotation)(p)){const t=a(p.id);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(6440);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.id.name}.${a(e.qualification)}`}},72057:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!e||!t)return e;for(const n of r.INHERIT_KEYS.optional)null==e[n]&&(e[n]=t[n]);for(const n of Object.keys(t))"_"===n[0]&&"__clone"!==n&&(e[n]=t[n]);for(const n of r.INHERIT_KEYS.force)e[n]=t[n];return(0,a.default)(e,t),e};var r=n(92926),a=n(27444)},94012:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,a.isSuper)(e.object))throw new Error("Cannot prepend node to super property access (`super.foo`).");return e.object=(0,r.memberExpression)(t,e.object),e};var r=n(19630),a=n(65226)},41270:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t={}){const n=t.preserveComments?a:i;for(const t of n)null!=e[t]&&(e[t]=void 0);for(const t of Object.keys(e))"_"===t[0]&&null!=e[t]&&(e[t]=void 0);const r=Object.getOwnPropertySymbols(e);for(const t of r)e[t]=null};var r=n(92926);const a=["tokens","start","end","loc","raw","rawValue"],i=[...r.COMMENT_KEYS,"comments",...a]},73632:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,a.default,t),e};var r=n(84793),a=n(41270)},56360:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isTSAnyKeyword)(p))return[p];if((0,r.isTSBaseType)(p))s.set(p.type,p);else if((0,r.isTSUnionType)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isTSTypeReference)(p)&&p.typeParameters){const t=a(p.typeName);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(6440);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.right.name}.${a(e.left)}`}},46798:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var r=n(6440);function a(e,t,n){const i=[].concat(e),s=Object.create(null);for(;i.length;){const e=i.shift();if(!e)continue;const o=a.keys[e.type];if((0,r.isIdentifier)(e))t?(s[e.name]=s[e.name]||[]).push(e):s[e.name]=e;else if(!(0,r.isExportDeclaration)(e)||(0,r.isExportAllDeclaration)(e)){if(n){if((0,r.isFunctionDeclaration)(e)){i.push(e.id);continue}if((0,r.isFunctionExpression)(e))continue}if(o)for(let t=0;t<o.length;t++){const n=e[o[t]];n&&(Array.isArray(n)?i.push(...n):i.push(n))}}else(0,r.isDeclaration)(e.declaration)&&i.push(e.declaration)}return s}a.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]}},41468:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(46798);t.default=function(e,t){return(0,r.default)(e,t,!0)}},17811:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){"function"==typeof t&&(t={enter:t});const{enter:r,exit:i}=t;a(e,r,i,n,[])};var r=n(53225);function a(e,t,n,i,s){const o=r.VISITOR_KEYS[e.type];if(o){t&&t(e,s,i);for(const r of o){const o=e[r];if(Array.isArray(o))for(let l=0;l<o.length;l++){const p=o[l];p&&(s.push({node:e,key:r,index:l}),a(p,t,n,i,s),s.pop())}else o&&(s.push({node:e,key:r}),a(o,t,n,i,s),s.pop())}n&&n(e,s,i)}}},84793:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,a){if(!t)return;const i=r.VISITOR_KEYS[t.type];if(i){n(t,a=a||{});for(const r of i){const i=t[r];if(Array.isArray(i))for(const t of i)e(t,n,a);else e(i,n,a)}}};var r=n(53225)},5732:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r=""){if(n.has(e))return;n.add(e);const{internal:a,trace:i}=function(e,t){const{stackTraceLimit:n,prepareStackTrace:r}=Error;let a;if(Error.stackTraceLimit=4,Error.prepareStackTrace=function(e,t){a=t},(new Error).stack,Error.stackTraceLimit=n,Error.prepareStackTrace=r,!a)return{internal:!1,trace:""};const i=a.slice(2,4);return{internal:/[\\/]@babel[\\/]/.test(i[1].getFileName()),trace:i.map((e=>` at ${e}`)).join("\n")}}();a||console.warn(`${r}\`${e}\` has been deprecated, please migrate to \`${t}\`\n${i}`)};const n=new Set},213:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))}},47056:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.value.split(/\r\n|\n|\r/);let i=0;for(let e=0;e<n.length;e++)n[e].match(/[^ \t]/)&&(i=e);let s="";for(let e=0;e<n.length;e++){const t=n[e],r=0===e,a=e===n.length-1,o=e===i;let l=t.replace(/\t/g," ");r||(l=l.replace(/^[ ]+/,"")),a||(l=l.replace(/[ ]+$/,"")),l&&(o||(l+=" "),s+=l)}s&&t.push((0,a.inherits)((0,r.stringLiteral)(s),e))};var r=n(19630),a=n(65226)},25944:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=Object.keys(t);for(const r of n)if(e[r]!==t[r])return!1;return!0}},49086:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.split(".");return e=>(0,r.default)(e,n,t)};var r=n(31862)},6440:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAccessor=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t)))},t.isAnyTypeAnnotation=function(e,t){return!!e&&"AnyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArgumentPlaceholder=function(e,t){return!!e&&"ArgumentPlaceholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayExpression=function(e,t){return!!e&&"ArrayExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayPattern=function(e,t){return!!e&&"ArrayPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayTypeAnnotation=function(e,t){return!!e&&"ArrayTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrowFunctionExpression=function(e,t){return!!e&&"ArrowFunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentExpression=function(e,t){return!!e&&"AssignmentExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentPattern=function(e,t){return!!e&&"AssignmentPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isAwaitExpression=function(e,t){return!!e&&"AwaitExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBigIntLiteral=function(e,t){return!!e&&"BigIntLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBinary=function(e,t){if(!e)return!1;switch(e.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBinaryExpression=function(e,t){return!!e&&"BinaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBindExpression=function(e,t){return!!e&&"BindExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBlock=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockParent=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockStatement=function(e,t){return!!e&&"BlockStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteral=function(e,t){return!!e&&"BooleanLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteralTypeAnnotation=function(e,t){return!!e&&"BooleanLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanTypeAnnotation=function(e,t){return!!e&&"BooleanTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBreakStatement=function(e,t){return!!e&&"BreakStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isCallExpression=function(e,t){return!!e&&"CallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isCatchClause=function(e,t){return!!e&&"CatchClause"===e.type&&(null==t||(0,r.default)(e,t))},t.isClass=function(e,t){if(!e)return!1;switch(e.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isClassAccessorProperty=function(e,t){return!!e&&"ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassBody=function(e,t){return!!e&&"ClassBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassDeclaration=function(e,t){return!!e&&"ClassDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassExpression=function(e,t){return!!e&&"ClassExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassImplements=function(e,t){return!!e&&"ClassImplements"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassMethod=function(e,t){return!!e&&"ClassMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateMethod=function(e,t){return!!e&&"ClassPrivateMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateProperty=function(e,t){return!!e&&"ClassPrivateProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassProperty=function(e,t){return!!e&&"ClassProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isCompletionStatement=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditional=function(e,t){if(!e)return!1;switch(e.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditionalExpression=function(e,t){return!!e&&"ConditionalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isContinueStatement=function(e,t){return!!e&&"ContinueStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDebuggerStatement=function(e,t){return!!e&&"DebuggerStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecimalLiteral=function(e,t){return!!e&&"DecimalLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"VariableDeclaration":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":break;case"Placeholder":if("Declaration"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isDeclareClass=function(e,t){return!!e&&"DeclareClass"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportAllDeclaration=function(e,t){return!!e&&"DeclareExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportDeclaration=function(e,t){return!!e&&"DeclareExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareFunction=function(e,t){return!!e&&"DeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareInterface=function(e,t){return!!e&&"DeclareInterface"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModule=function(e,t){return!!e&&"DeclareModule"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModuleExports=function(e,t){return!!e&&"DeclareModuleExports"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareOpaqueType=function(e,t){return!!e&&"DeclareOpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareTypeAlias=function(e,t){return!!e&&"DeclareTypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareVariable=function(e,t){return!!e&&"DeclareVariable"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaredPredicate=function(e,t){return!!e&&"DeclaredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecorator=function(e,t){return!!e&&"Decorator"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirective=function(e,t){return!!e&&"Directive"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirectiveLiteral=function(e,t){return!!e&&"DirectiveLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoExpression=function(e,t){return!!e&&"DoExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoWhileStatement=function(e,t){return!!e&&"DoWhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyStatement=function(e,t){return!!e&&"EmptyStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyTypeAnnotation=function(e,t){return!!e&&"EmptyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBody=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumBooleanBody=function(e,t){return!!e&&"EnumBooleanBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBooleanMember=function(e,t){return!!e&&"EnumBooleanMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDeclaration=function(e,t){return!!e&&"EnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDefaultedMember=function(e,t){return!!e&&"EnumDefaultedMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumMember=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumNumberBody=function(e,t){return!!e&&"EnumNumberBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumNumberMember=function(e,t){return!!e&&"EnumNumberMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringBody=function(e,t){return!!e&&"EnumStringBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringMember=function(e,t){return!!e&&"EnumStringMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumSymbolBody=function(e,t){return!!e&&"EnumSymbolBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isExistsTypeAnnotation=function(e,t){return!!e&&"ExistsTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportAllDeclaration=function(e,t){return!!e&&"ExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExportDefaultDeclaration=function(e,t){return!!e&&"ExportDefaultDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDefaultSpecifier=function(e,t){return!!e&&"ExportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamedDeclaration=function(e,t){return!!e&&"ExportNamedDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamespaceSpecifier=function(e,t){return!!e&&"ExportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportSpecifier=function(e,t){return!!e&&"ExportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpression=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ParenthesizedExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":case"ArrowFunctionExpression":case"ClassExpression":case"MetaProperty":case"Super":case"TaggedTemplateExpression":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"OptionalMemberExpression":case"OptionalCallExpression":case"TypeCastExpression":case"JSXElement":case"JSXFragment":case"BindExpression":case"DoExpression":case"RecordExpression":case"TupleExpression":case"DecimalLiteral":case"ModuleExpression":case"TopicReference":case"PipelineTopicExpression":case"PipelineBareFunction":case"PipelinePrimaryTopicReference":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExpressionStatement=function(e,t){return!!e&&"ExpressionStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpressionWrapper=function(e,t){if(!e)return!1;switch(e.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFile=function(e,t){return!!e&&"File"===e.type&&(null==t||(0,r.default)(e,t))},t.isFlow=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ClassImplements":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"DeclaredPredicate":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"FunctionTypeParam":case"GenericTypeAnnotation":case"InferredPredicate":case"InterfaceExtends":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":case"OpaqueType":case"QualifiedTypeIdentifier":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"TypeAlias":case"TypeAnnotation":case"TypeCastExpression":case"TypeParameter":case"TypeParameterDeclaration":case"TypeParameterInstantiation":case"UnionTypeAnnotation":case"Variance":case"VoidTypeAnnotation":case"EnumDeclaration":case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowBaseAnnotation=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"BooleanTypeAnnotation":case"NullLiteralTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NumberTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"VoidTypeAnnotation":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowPredicate=function(e,t){if(!e)return!1;switch(e.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowType=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"UnionTypeAnnotation":case"VoidTypeAnnotation":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFor=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isForInStatement=function(e,t){return!!e&&"ForInStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForOfStatement=function(e,t){return!!e&&"ForOfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForStatement=function(e,t){return!!e&&"ForStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForXStatement=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunction=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionDeclaration=function(e,t){return!!e&&"FunctionDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionExpression=function(e,t){return!!e&&"FunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionParent=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionTypeAnnotation=function(e,t){return!!e&&"FunctionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionTypeParam=function(e,t){return!!e&&"FunctionTypeParam"===e.type&&(null==t||(0,r.default)(e,t))},t.isGenericTypeAnnotation=function(e,t){return!!e&&"GenericTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isIdentifier=function(e,t){return!!e&&"Identifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIfStatement=function(e,t){return!!e&&"IfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isImmutable=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"BigIntLiteral":case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXOpeningElement":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isImport=function(e,t){return!!e&&"Import"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportAttribute=function(e,t){return!!e&&"ImportAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDeclaration=function(e,t){return!!e&&"ImportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDefaultSpecifier=function(e,t){return!!e&&"ImportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportNamespaceSpecifier=function(e,t){return!!e&&"ImportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportOrExportDeclaration=i,t.isImportSpecifier=function(e,t){return!!e&&"ImportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIndexedAccessType=function(e,t){return!!e&&"IndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isInferredPredicate=function(e,t){return!!e&&"InferredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceDeclaration=function(e,t){return!!e&&"InterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceExtends=function(e,t){return!!e&&"InterfaceExtends"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceTypeAnnotation=function(e,t){return!!e&&"InterfaceTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterpreterDirective=function(e,t){return!!e&&"InterpreterDirective"===e.type&&(null==t||(0,r.default)(e,t))},t.isIntersectionTypeAnnotation=function(e,t){return!!e&&"IntersectionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSX=function(e,t){if(!e)return!1;switch(e.type){case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXEmptyExpression":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXIdentifier":case"JSXMemberExpression":case"JSXNamespacedName":case"JSXOpeningElement":case"JSXSpreadAttribute":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isJSXAttribute=function(e,t){return!!e&&"JSXAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingElement=function(e,t){return!!e&&"JSXClosingElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingFragment=function(e,t){return!!e&&"JSXClosingFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXElement=function(e,t){return!!e&&"JSXElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXEmptyExpression=function(e,t){return!!e&&"JSXEmptyExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXExpressionContainer=function(e,t){return!!e&&"JSXExpressionContainer"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXFragment=function(e,t){return!!e&&"JSXFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXIdentifier=function(e,t){return!!e&&"JSXIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXMemberExpression=function(e,t){return!!e&&"JSXMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXNamespacedName=function(e,t){return!!e&&"JSXNamespacedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningElement=function(e,t){return!!e&&"JSXOpeningElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningFragment=function(e,t){return!!e&&"JSXOpeningFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadAttribute=function(e,t){return!!e&&"JSXSpreadAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadChild=function(e,t){return!!e&&"JSXSpreadChild"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXText=function(e,t){return!!e&&"JSXText"===e.type&&(null==t||(0,r.default)(e,t))},t.isLVal=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSParameterProperty":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLabeledStatement=function(e,t){return!!e&&"LabeledStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isLiteral=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLogicalExpression=function(e,t){return!!e&&"LogicalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isLoop=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMemberExpression=function(e,t){return!!e&&"MemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isMetaProperty=function(e,t){return!!e&&"MetaProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isMethod=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMiscellaneous=function(e,t){if(!e)return!1;switch(e.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMixedTypeAnnotation=function(e,t){return!!e&&"MixedTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleDeclaration=function(e,t){return(0,a.default)("isModuleDeclaration","isImportOrExportDeclaration"),i(e,t)},t.isModuleExpression=function(e,t){return!!e&&"ModuleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleSpecifier=function(e,t){if(!e)return!1;switch(e.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isNewExpression=function(e,t){return!!e&&"NewExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isNoop=function(e,t){return!!e&&"Noop"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteral=function(e,t){return!!e&&"NullLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteralTypeAnnotation=function(e,t){return!!e&&"NullLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullableTypeAnnotation=function(e,t){return!!e&&"NullableTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteral=function(e,t){return(0,a.default)("isNumberLiteral","isNumericLiteral"),!!e&&"NumberLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteralTypeAnnotation=function(e,t){return!!e&&"NumberLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberTypeAnnotation=function(e,t){return!!e&&"NumberTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumericLiteral=function(e,t){return!!e&&"NumericLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectExpression=function(e,t){return!!e&&"ObjectExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectMember=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isObjectMethod=function(e,t){return!!e&&"ObjectMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectPattern=function(e,t){return!!e&&"ObjectPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectProperty=function(e,t){return!!e&&"ObjectProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeAnnotation=function(e,t){return!!e&&"ObjectTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeCallProperty=function(e,t){return!!e&&"ObjectTypeCallProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeIndexer=function(e,t){return!!e&&"ObjectTypeIndexer"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeInternalSlot=function(e,t){return!!e&&"ObjectTypeInternalSlot"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeProperty=function(e,t){return!!e&&"ObjectTypeProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeSpreadProperty=function(e,t){return!!e&&"ObjectTypeSpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isOpaqueType=function(e,t){return!!e&&"OpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalCallExpression=function(e,t){return!!e&&"OptionalCallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalIndexedAccessType=function(e,t){return!!e&&"OptionalIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalMemberExpression=function(e,t){return!!e&&"OptionalMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isParenthesizedExpression=function(e,t){return!!e&&"ParenthesizedExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPattern=function(e,t){if(!e)return!1;switch(e.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":break;case"Placeholder":if("Pattern"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPatternLike=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPipelineBareFunction=function(e,t){return!!e&&"PipelineBareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelinePrimaryTopicReference=function(e,t){return!!e&&"PipelinePrimaryTopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelineTopicExpression=function(e,t){return!!e&&"PipelineTopicExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPlaceholder=function(e,t){return!!e&&"Placeholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isPrivate=function(e,t){if(!e)return!1;switch(e.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPrivateName=function(e,t){return!!e&&"PrivateName"===e.type&&(null==t||(0,r.default)(e,t))},t.isProgram=function(e,t){return!!e&&"Program"===e.type&&(null==t||(0,r.default)(e,t))},t.isProperty=function(e,t){if(!e)return!1;switch(e.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPureish=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"ArrowFunctionExpression":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isQualifiedTypeIdentifier=function(e,t){return!!e&&"QualifiedTypeIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isRecordExpression=function(e,t){return!!e&&"RecordExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegExpLiteral=function(e,t){return!!e&&"RegExpLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegexLiteral=function(e,t){return(0,a.default)("isRegexLiteral","isRegExpLiteral"),!!e&&"RegexLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestElement=function(e,t){return!!e&&"RestElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestProperty=function(e,t){return(0,a.default)("isRestProperty","isRestElement"),!!e&&"RestProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isReturnStatement=function(e,t){return!!e&&"ReturnStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isScopable=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ClassExpression":case"ClassDeclaration":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isSequenceExpression=function(e,t){return!!e&&"SequenceExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadElement=function(e,t){return!!e&&"SpreadElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadProperty=function(e,t){return(0,a.default)("isSpreadProperty","isSpreadElement"),!!e&&"SpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isStandardized=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"InterpreterDirective":case"Directive":case"DirectiveLiteral":case"BlockStatement":case"BreakStatement":case"CallExpression":case"CatchClause":case"ConditionalExpression":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"File":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Identifier":case"IfStatement":case"LabeledStatement":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"Program":case"ObjectExpression":case"ObjectMethod":case"ObjectProperty":case"RestElement":case"ReturnStatement":case"SequenceExpression":case"ParenthesizedExpression":case"SwitchCase":case"SwitchStatement":case"ThisExpression":case"ThrowStatement":case"TryStatement":case"UnaryExpression":case"UpdateExpression":case"VariableDeclaration":case"VariableDeclarator":case"WhileStatement":case"WithStatement":case"AssignmentPattern":case"ArrayPattern":case"ArrowFunctionExpression":case"ClassBody":case"ClassExpression":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportSpecifier":case"ForOfStatement":case"ImportDeclaration":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"MetaProperty":case"ClassMethod":case"ObjectPattern":case"SpreadElement":case"Super":case"TaggedTemplateExpression":case"TemplateElement":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"ExportNamespaceSpecifier":case"OptionalMemberExpression":case"OptionalCallExpression":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":case"StaticBlock":break;case"Placeholder":switch(e.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStatement=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ForOfStatement":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":case"TSExportAssignment":case"TSNamespaceExportDeclaration":break;case"Placeholder":switch(e.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStaticBlock=function(e,t){return!!e&&"StaticBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteral=function(e,t){return!!e&&"StringLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteralTypeAnnotation=function(e,t){return!!e&&"StringLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringTypeAnnotation=function(e,t){return!!e&&"StringTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isSuper=function(e,t){return!!e&&"Super"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchCase=function(e,t){return!!e&&"SwitchCase"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchStatement=function(e,t){return!!e&&"SwitchStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSymbolTypeAnnotation=function(e,t){return!!e&&"SymbolTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAnyKeyword=function(e,t){return!!e&&"TSAnyKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSArrayType=function(e,t){return!!e&&"TSArrayType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAsExpression=function(e,t){return!!e&&"TSAsExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBaseType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSLiteralType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSBigIntKeyword=function(e,t){return!!e&&"TSBigIntKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBooleanKeyword=function(e,t){return!!e&&"TSBooleanKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSCallSignatureDeclaration=function(e,t){return!!e&&"TSCallSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConditionalType=function(e,t){return!!e&&"TSConditionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructSignatureDeclaration=function(e,t){return!!e&&"TSConstructSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructorType=function(e,t){return!!e&&"TSConstructorType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareFunction=function(e,t){return!!e&&"TSDeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareMethod=function(e,t){return!!e&&"TSDeclareMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEntityName=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if("Identifier"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSEnumDeclaration=function(e,t){return!!e&&"TSEnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEnumMember=function(e,t){return!!e&&"TSEnumMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExportAssignment=function(e,t){return!!e&&"TSExportAssignment"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExpressionWithTypeArguments=function(e,t){return!!e&&"TSExpressionWithTypeArguments"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExternalModuleReference=function(e,t){return!!e&&"TSExternalModuleReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSFunctionType=function(e,t){return!!e&&"TSFunctionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportEqualsDeclaration=function(e,t){return!!e&&"TSImportEqualsDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportType=function(e,t){return!!e&&"TSImportType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexSignature=function(e,t){return!!e&&"TSIndexSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexedAccessType=function(e,t){return!!e&&"TSIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInferType=function(e,t){return!!e&&"TSInferType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInstantiationExpression=function(e,t){return!!e&&"TSInstantiationExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceBody=function(e,t){return!!e&&"TSInterfaceBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceDeclaration=function(e,t){return!!e&&"TSInterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntersectionType=function(e,t){return!!e&&"TSIntersectionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntrinsicKeyword=function(e,t){return!!e&&"TSIntrinsicKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSLiteralType=function(e,t){return!!e&&"TSLiteralType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMappedType=function(e,t){return!!e&&"TSMappedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMethodSignature=function(e,t){return!!e&&"TSMethodSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleBlock=function(e,t){return!!e&&"TSModuleBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleDeclaration=function(e,t){return!!e&&"TSModuleDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamedTupleMember=function(e,t){return!!e&&"TSNamedTupleMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamespaceExportDeclaration=function(e,t){return!!e&&"TSNamespaceExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNeverKeyword=function(e,t){return!!e&&"TSNeverKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNonNullExpression=function(e,t){return!!e&&"TSNonNullExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNullKeyword=function(e,t){return!!e&&"TSNullKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNumberKeyword=function(e,t){return!!e&&"TSNumberKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSObjectKeyword=function(e,t){return!!e&&"TSObjectKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSOptionalType=function(e,t){return!!e&&"TSOptionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParameterProperty=function(e,t){return!!e&&"TSParameterProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParenthesizedType=function(e,t){return!!e&&"TSParenthesizedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSPropertySignature=function(e,t){return!!e&&"TSPropertySignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSQualifiedName=function(e,t){return!!e&&"TSQualifiedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSRestType=function(e,t){return!!e&&"TSRestType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSatisfiesExpression=function(e,t){return!!e&&"TSSatisfiesExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSStringKeyword=function(e,t){return!!e&&"TSStringKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSymbolKeyword=function(e,t){return!!e&&"TSSymbolKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSThisType=function(e,t){return!!e&&"TSThisType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTupleType=function(e,t){return!!e&&"TSTupleType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSImportType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeAliasDeclaration=function(e,t){return!!e&&"TSTypeAliasDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAnnotation=function(e,t){return!!e&&"TSTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAssertion=function(e,t){return!!e&&"TSTypeAssertion"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeElement=function(e,t){if(!e)return!1;switch(e.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeLiteral=function(e,t){return!!e&&"TSTypeLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeOperator=function(e,t){return!!e&&"TSTypeOperator"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameter=function(e,t){return!!e&&"TSTypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterDeclaration=function(e,t){return!!e&&"TSTypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterInstantiation=function(e,t){return!!e&&"TSTypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypePredicate=function(e,t){return!!e&&"TSTypePredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeQuery=function(e,t){return!!e&&"TSTypeQuery"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeReference=function(e,t){return!!e&&"TSTypeReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUndefinedKeyword=function(e,t){return!!e&&"TSUndefinedKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnionType=function(e,t){return!!e&&"TSUnionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnknownKeyword=function(e,t){return!!e&&"TSUnknownKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSVoidKeyword=function(e,t){return!!e&&"TSVoidKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTaggedTemplateExpression=function(e,t){return!!e&&"TaggedTemplateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateElement=function(e,t){return!!e&&"TemplateElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateLiteral=function(e,t){return!!e&&"TemplateLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTerminatorless=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isThisExpression=function(e,t){return!!e&&"ThisExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isThisTypeAnnotation=function(e,t){return!!e&&"ThisTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isThrowStatement=function(e,t){return!!e&&"ThrowStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTopicReference=function(e,t){return!!e&&"TopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTryStatement=function(e,t){return!!e&&"TryStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleExpression=function(e,t){return!!e&&"TupleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleTypeAnnotation=function(e,t){return!!e&&"TupleTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAlias=function(e,t){return!!e&&"TypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAnnotation=function(e,t){return!!e&&"TypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeCastExpression=function(e,t){return!!e&&"TypeCastExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameter=function(e,t){return!!e&&"TypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterDeclaration=function(e,t){return!!e&&"TypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterInstantiation=function(e,t){return!!e&&"TypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeScript=function(e,t){if(!e)return!1;switch(e.type){case"TSParameterProperty":case"TSDeclareFunction":case"TSDeclareMethod":case"TSQualifiedName":case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSNamedTupleMember":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSInterfaceDeclaration":case"TSInterfaceBody":case"TSTypeAliasDeclaration":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSEnumDeclaration":case"TSEnumMember":case"TSModuleDeclaration":case"TSModuleBlock":case"TSImportType":case"TSImportEqualsDeclaration":case"TSExternalModuleReference":case"TSNonNullExpression":case"TSExportAssignment":case"TSNamespaceExportDeclaration":case"TSTypeAnnotation":case"TSTypeParameterInstantiation":case"TSTypeParameterDeclaration":case"TSTypeParameter":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTypeofTypeAnnotation=function(e,t){return!!e&&"TypeofTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryExpression=function(e,t){return!!e&&"UnaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryLike=function(e,t){if(!e)return!1;switch(e.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isUnionTypeAnnotation=function(e,t){return!!e&&"UnionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUpdateExpression=function(e,t){return!!e&&"UpdateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUserWhitespacable=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isV8IntrinsicIdentifier=function(e,t){return!!e&&"V8IntrinsicIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclaration=function(e,t){return!!e&&"VariableDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclarator=function(e,t){return!!e&&"VariableDeclarator"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariance=function(e,t){return!!e&&"Variance"===e.type&&(null==t||(0,r.default)(e,t))},t.isVoidTypeAnnotation=function(e,t){return!!e&&"VoidTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isWhile=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isWhileStatement=function(e,t){return!!e&&"WhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isWithStatement=function(e,t){return!!e&&"WithStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isYieldExpression=function(e,t){return!!e&&"YieldExpression"===e.type&&(null==t||(0,r.default)(e,t))};var r=n(25944),a=n(5732);function i(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)}},41856:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){return!!t&&((0,a.default)(t.type,e)?void 0===n||(0,r.default)(t,n):!n&&"Placeholder"===t.type&&e in s.FLIPPED_ALIAS_KEYS&&(0,i.default)(t.expectedNode,e))};var r=n(25944),a=n(68957),i=n(70839),s=n(53225)},54794:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(n&&"Identifier"===e.type&&"ObjectProperty"===t.type&&"ObjectExpression"===n.type)return!1;const a=r.default.keys[t.type];if(a)for(let n=0;n<a.length;n++){const r=t[a[n]];if(Array.isArray(r)){if(r.indexOf(e)>=0)return!0}else if(r===e)return!0}return!1};var r=n(46798)},27795:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isFunctionDeclaration)(e)||(0,r.isClassDeclaration)(e)||(0,a.default)(e)};var r=n(6440),a=n(13196)},90667:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!(0,r.default)(e.type,"Immutable")||!!(0,a.isIdentifier)(e)&&"undefined"===e.name};var r=n(68957),a=n(6440)},13196:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e)&&("var"!==e.kind||e[a.BLOCK_SCOPED_SYMBOL])};var r=n(6440),a=n(92926)},63765:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||!r.VISITOR_KEYS[e.type])};var r=n(53225)},89201:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){if("object"!=typeof t||"object"!=typeof n||null==t||null==n)return t===n;if(t.type!==n.type)return!1;const a=Object.keys(r.NODE_FIELDS[t.type]||t.type),i=r.VISITOR_KEYS[t.type];for(const r of a){const a=t[r],s=n[r];if(typeof a!=typeof s)return!1;if(null!=a||null!=s){if(null==a||null==s)return!1;if(Array.isArray(a)){if(!Array.isArray(s))return!1;if(a.length!==s.length)return!1;for(let t=0;t<a.length;t++)if(!e(a[t],s[t]))return!1}else if("object"!=typeof a||null!=i&&i.includes(r)){if(!e(a,s))return!1}else for(const e of Object.keys(a))if(a[e]!==s[e])return!1}}return!0};var r=n(53225)},70839:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;const n=r.PLACEHOLDERS_ALIAS[e];if(n)for(const e of n)if(t===e)return!0;return!1};var r=n(53225)},926:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:!n||"ObjectPattern"!==n.type;case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==n||!n.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}},49576:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(!(0,r.isBlockStatement)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))&&(!(!(0,r.isPattern)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))||(0,r.isScopable)(e))};var r=n(6440)},30652:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isImportDefaultSpecifier)(e)||(0,r.isIdentifier)(e.imported||e.exported,{name:"default"})};var r=n(6440)},68957:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;if(null==e)return!1;if(r.ALIAS_KEYS[t])return!1;const n=r.FLIPPED_ALIAS_KEYS[t];if(n){if(n[0]===e)return!0;for(const t of n)if(e===t)return!0}return!1};var r=n(53225)},9118:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)&&!a.has(e)};var r=n(16502);const a=new Set(["abstract","boolean","byte","char","double","enum","final","float","goto","implements","int","interface","long","native","package","private","protected","public","short","static","synchronized","throws","transient","volatile"])},16502:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0){return"string"==typeof e&&((!t||!(0,r.isKeyword)(e)&&!(0,r.isStrictReservedWord)(e,!0))&&(0,r.isIdentifierName)(e))};var r=n(29649)},36571:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e,{kind:"var"})&&!e[a.BLOCK_SCOPED_SYMBOL]};var r=n(6440),a=n(92926)},31862:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!(0,r.isMemberExpression)(e))return!1;const a=Array.isArray(t)?t:t.split("."),i=[];let s;for(s=e;(0,r.isMemberExpression)(s);s=s.object)i.push(s.property);if(i.push(s),i.length<a.length)return!1;if(!n&&i.length>a.length)return!1;for(let e=0,t=i.length-1;e<a.length;e++,t--){const n=i[t];let s;if((0,r.isIdentifier)(n))s=n.name;else if((0,r.isStringLiteral)(n))s=n.value;else{if(!(0,r.isThisExpression)(n))return!1;s="this"}if(a[e]!==s)return!1}return!0};var r=n(6440)},15750:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!e&&/^[a-z]/.test(e)}},61502:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=(0,n(49086).default)("React.Component");t.default=r},38934:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!e)return;const s=r.NODE_FIELDS[e.type];if(!s)return;a(e,t,n,s[t]),i(e,t,n)},t.validateChild=i,t.validateField=a;var r=n(53225);function a(e,t,n,r){null!=r&&r.validate&&(r.optional&&null==n||r.validate(e,t,n))}function i(e,t,n){if(null==n)return;const a=r.NODE_PARENT_VALIDATIONS[n.type];a&&a(e,t,n)}},47438:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n="var"){e.traverse(o,{kind:n,emit:t})};var r=n(7139);const{assignmentExpression:a,expressionStatement:i,identifier:s}=r,o={Scope(e,t){"let"===t.kind&&e.skip()},FunctionParent(e){e.skip()},VariableDeclaration(e,t){if(t.kind&&e.node.kind!==t.kind)return;const n=[],r=e.get("declarations");let o;for(const e of r){o=e.node.id,e.node.init&&n.push(i(a("=",e.node.id,e.node.init)));for(const n of Object.keys(e.getBindingIdentifiers()))t.emit(s(n),n,null!==e.node.init)}e.parentPath.isFor({left:e.node})?e.replaceWith(o):e.replaceWithMultiple(n)}}},66021:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!(0,r.default)(e)){var t;const n=null!=(t=null==e?void 0:e.type)?t:JSON.stringify(e);throw new TypeError(`Not a valid node of type "${n}"`)}};var r=n(21879)},9069:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assertAccessor=function(e,t){i("Accessor",e,t)},t.assertAnyTypeAnnotation=function(e,t){i("AnyTypeAnnotation",e,t)},t.assertArgumentPlaceholder=function(e,t){i("ArgumentPlaceholder",e,t)},t.assertArrayExpression=function(e,t){i("ArrayExpression",e,t)},t.assertArrayPattern=function(e,t){i("ArrayPattern",e,t)},t.assertArrayTypeAnnotation=function(e,t){i("ArrayTypeAnnotation",e,t)},t.assertArrowFunctionExpression=function(e,t){i("ArrowFunctionExpression",e,t)},t.assertAssignmentExpression=function(e,t){i("AssignmentExpression",e,t)},t.assertAssignmentPattern=function(e,t){i("AssignmentPattern",e,t)},t.assertAwaitExpression=function(e,t){i("AwaitExpression",e,t)},t.assertBigIntLiteral=function(e,t){i("BigIntLiteral",e,t)},t.assertBinary=function(e,t){i("Binary",e,t)},t.assertBinaryExpression=function(e,t){i("BinaryExpression",e,t)},t.assertBindExpression=function(e,t){i("BindExpression",e,t)},t.assertBlock=function(e,t){i("Block",e,t)},t.assertBlockParent=function(e,t){i("BlockParent",e,t)},t.assertBlockStatement=function(e,t){i("BlockStatement",e,t)},t.assertBooleanLiteral=function(e,t){i("BooleanLiteral",e,t)},t.assertBooleanLiteralTypeAnnotation=function(e,t){i("BooleanLiteralTypeAnnotation",e,t)},t.assertBooleanTypeAnnotation=function(e,t){i("BooleanTypeAnnotation",e,t)},t.assertBreakStatement=function(e,t){i("BreakStatement",e,t)},t.assertCallExpression=function(e,t){i("CallExpression",e,t)},t.assertCatchClause=function(e,t){i("CatchClause",e,t)},t.assertClass=function(e,t){i("Class",e,t)},t.assertClassAccessorProperty=function(e,t){i("ClassAccessorProperty",e,t)},t.assertClassBody=function(e,t){i("ClassBody",e,t)},t.assertClassDeclaration=function(e,t){i("ClassDeclaration",e,t)},t.assertClassExpression=function(e,t){i("ClassExpression",e,t)},t.assertClassImplements=function(e,t){i("ClassImplements",e,t)},t.assertClassMethod=function(e,t){i("ClassMethod",e,t)},t.assertClassPrivateMethod=function(e,t){i("ClassPrivateMethod",e,t)},t.assertClassPrivateProperty=function(e,t){i("ClassPrivateProperty",e,t)},t.assertClassProperty=function(e,t){i("ClassProperty",e,t)},t.assertCompletionStatement=function(e,t){i("CompletionStatement",e,t)},t.assertConditional=function(e,t){i("Conditional",e,t)},t.assertConditionalExpression=function(e,t){i("ConditionalExpression",e,t)},t.assertContinueStatement=function(e,t){i("ContinueStatement",e,t)},t.assertDebuggerStatement=function(e,t){i("DebuggerStatement",e,t)},t.assertDecimalLiteral=function(e,t){i("DecimalLiteral",e,t)},t.assertDeclaration=function(e,t){i("Declaration",e,t)},t.assertDeclareClass=function(e,t){i("DeclareClass",e,t)},t.assertDeclareExportAllDeclaration=function(e,t){i("DeclareExportAllDeclaration",e,t)},t.assertDeclareExportDeclaration=function(e,t){i("DeclareExportDeclaration",e,t)},t.assertDeclareFunction=function(e,t){i("DeclareFunction",e,t)},t.assertDeclareInterface=function(e,t){i("DeclareInterface",e,t)},t.assertDeclareModule=function(e,t){i("DeclareModule",e,t)},t.assertDeclareModuleExports=function(e,t){i("DeclareModuleExports",e,t)},t.assertDeclareOpaqueType=function(e,t){i("DeclareOpaqueType",e,t)},t.assertDeclareTypeAlias=function(e,t){i("DeclareTypeAlias",e,t)},t.assertDeclareVariable=function(e,t){i("DeclareVariable",e,t)},t.assertDeclaredPredicate=function(e,t){i("DeclaredPredicate",e,t)},t.assertDecorator=function(e,t){i("Decorator",e,t)},t.assertDirective=function(e,t){i("Directive",e,t)},t.assertDirectiveLiteral=function(e,t){i("DirectiveLiteral",e,t)},t.assertDoExpression=function(e,t){i("DoExpression",e,t)},t.assertDoWhileStatement=function(e,t){i("DoWhileStatement",e,t)},t.assertEmptyStatement=function(e,t){i("EmptyStatement",e,t)},t.assertEmptyTypeAnnotation=function(e,t){i("EmptyTypeAnnotation",e,t)},t.assertEnumBody=function(e,t){i("EnumBody",e,t)},t.assertEnumBooleanBody=function(e,t){i("EnumBooleanBody",e,t)},t.assertEnumBooleanMember=function(e,t){i("EnumBooleanMember",e,t)},t.assertEnumDeclaration=function(e,t){i("EnumDeclaration",e,t)},t.assertEnumDefaultedMember=function(e,t){i("EnumDefaultedMember",e,t)},t.assertEnumMember=function(e,t){i("EnumMember",e,t)},t.assertEnumNumberBody=function(e,t){i("EnumNumberBody",e,t)},t.assertEnumNumberMember=function(e,t){i("EnumNumberMember",e,t)},t.assertEnumStringBody=function(e,t){i("EnumStringBody",e,t)},t.assertEnumStringMember=function(e,t){i("EnumStringMember",e,t)},t.assertEnumSymbolBody=function(e,t){i("EnumSymbolBody",e,t)},t.assertExistsTypeAnnotation=function(e,t){i("ExistsTypeAnnotation",e,t)},t.assertExportAllDeclaration=function(e,t){i("ExportAllDeclaration",e,t)},t.assertExportDeclaration=function(e,t){i("ExportDeclaration",e,t)},t.assertExportDefaultDeclaration=function(e,t){i("ExportDefaultDeclaration",e,t)},t.assertExportDefaultSpecifier=function(e,t){i("ExportDefaultSpecifier",e,t)},t.assertExportNamedDeclaration=function(e,t){i("ExportNamedDeclaration",e,t)},t.assertExportNamespaceSpecifier=function(e,t){i("ExportNamespaceSpecifier",e,t)},t.assertExportSpecifier=function(e,t){i("ExportSpecifier",e,t)},t.assertExpression=function(e,t){i("Expression",e,t)},t.assertExpressionStatement=function(e,t){i("ExpressionStatement",e,t)},t.assertExpressionWrapper=function(e,t){i("ExpressionWrapper",e,t)},t.assertFile=function(e,t){i("File",e,t)},t.assertFlow=function(e,t){i("Flow",e,t)},t.assertFlowBaseAnnotation=function(e,t){i("FlowBaseAnnotation",e,t)},t.assertFlowDeclaration=function(e,t){i("FlowDeclaration",e,t)},t.assertFlowPredicate=function(e,t){i("FlowPredicate",e,t)},t.assertFlowType=function(e,t){i("FlowType",e,t)},t.assertFor=function(e,t){i("For",e,t)},t.assertForInStatement=function(e,t){i("ForInStatement",e,t)},t.assertForOfStatement=function(e,t){i("ForOfStatement",e,t)},t.assertForStatement=function(e,t){i("ForStatement",e,t)},t.assertForXStatement=function(e,t){i("ForXStatement",e,t)},t.assertFunction=function(e,t){i("Function",e,t)},t.assertFunctionDeclaration=function(e,t){i("FunctionDeclaration",e,t)},t.assertFunctionExpression=function(e,t){i("FunctionExpression",e,t)},t.assertFunctionParent=function(e,t){i("FunctionParent",e,t)},t.assertFunctionTypeAnnotation=function(e,t){i("FunctionTypeAnnotation",e,t)},t.assertFunctionTypeParam=function(e,t){i("FunctionTypeParam",e,t)},t.assertGenericTypeAnnotation=function(e,t){i("GenericTypeAnnotation",e,t)},t.assertIdentifier=function(e,t){i("Identifier",e,t)},t.assertIfStatement=function(e,t){i("IfStatement",e,t)},t.assertImmutable=function(e,t){i("Immutable",e,t)},t.assertImport=function(e,t){i("Import",e,t)},t.assertImportAttribute=function(e,t){i("ImportAttribute",e,t)},t.assertImportDeclaration=function(e,t){i("ImportDeclaration",e,t)},t.assertImportDefaultSpecifier=function(e,t){i("ImportDefaultSpecifier",e,t)},t.assertImportNamespaceSpecifier=function(e,t){i("ImportNamespaceSpecifier",e,t)},t.assertImportOrExportDeclaration=function(e,t){i("ImportOrExportDeclaration",e,t)},t.assertImportSpecifier=function(e,t){i("ImportSpecifier",e,t)},t.assertIndexedAccessType=function(e,t){i("IndexedAccessType",e,t)},t.assertInferredPredicate=function(e,t){i("InferredPredicate",e,t)},t.assertInterfaceDeclaration=function(e,t){i("InterfaceDeclaration",e,t)},t.assertInterfaceExtends=function(e,t){i("InterfaceExtends",e,t)},t.assertInterfaceTypeAnnotation=function(e,t){i("InterfaceTypeAnnotation",e,t)},t.assertInterpreterDirective=function(e,t){i("InterpreterDirective",e,t)},t.assertIntersectionTypeAnnotation=function(e,t){i("IntersectionTypeAnnotation",e,t)},t.assertJSX=function(e,t){i("JSX",e,t)},t.assertJSXAttribute=function(e,t){i("JSXAttribute",e,t)},t.assertJSXClosingElement=function(e,t){i("JSXClosingElement",e,t)},t.assertJSXClosingFragment=function(e,t){i("JSXClosingFragment",e,t)},t.assertJSXElement=function(e,t){i("JSXElement",e,t)},t.assertJSXEmptyExpression=function(e,t){i("JSXEmptyExpression",e,t)},t.assertJSXExpressionContainer=function(e,t){i("JSXExpressionContainer",e,t)},t.assertJSXFragment=function(e,t){i("JSXFragment",e,t)},t.assertJSXIdentifier=function(e,t){i("JSXIdentifier",e,t)},t.assertJSXMemberExpression=function(e,t){i("JSXMemberExpression",e,t)},t.assertJSXNamespacedName=function(e,t){i("JSXNamespacedName",e,t)},t.assertJSXOpeningElement=function(e,t){i("JSXOpeningElement",e,t)},t.assertJSXOpeningFragment=function(e,t){i("JSXOpeningFragment",e,t)},t.assertJSXSpreadAttribute=function(e,t){i("JSXSpreadAttribute",e,t)},t.assertJSXSpreadChild=function(e,t){i("JSXSpreadChild",e,t)},t.assertJSXText=function(e,t){i("JSXText",e,t)},t.assertLVal=function(e,t){i("LVal",e,t)},t.assertLabeledStatement=function(e,t){i("LabeledStatement",e,t)},t.assertLiteral=function(e,t){i("Literal",e,t)},t.assertLogicalExpression=function(e,t){i("LogicalExpression",e,t)},t.assertLoop=function(e,t){i("Loop",e,t)},t.assertMemberExpression=function(e,t){i("MemberExpression",e,t)},t.assertMetaProperty=function(e,t){i("MetaProperty",e,t)},t.assertMethod=function(e,t){i("Method",e,t)},t.assertMiscellaneous=function(e,t){i("Miscellaneous",e,t)},t.assertMixedTypeAnnotation=function(e,t){i("MixedTypeAnnotation",e,t)},t.assertModuleDeclaration=function(e,t){(0,a.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),i("ModuleDeclaration",e,t)},t.assertModuleExpression=function(e,t){i("ModuleExpression",e,t)},t.assertModuleSpecifier=function(e,t){i("ModuleSpecifier",e,t)},t.assertNewExpression=function(e,t){i("NewExpression",e,t)},t.assertNoop=function(e,t){i("Noop",e,t)},t.assertNullLiteral=function(e,t){i("NullLiteral",e,t)},t.assertNullLiteralTypeAnnotation=function(e,t){i("NullLiteralTypeAnnotation",e,t)},t.assertNullableTypeAnnotation=function(e,t){i("NullableTypeAnnotation",e,t)},t.assertNumberLiteral=function(e,t){(0,a.default)("assertNumberLiteral","assertNumericLiteral"),i("NumberLiteral",e,t)},t.assertNumberLiteralTypeAnnotation=function(e,t){i("NumberLiteralTypeAnnotation",e,t)},t.assertNumberTypeAnnotation=function(e,t){i("NumberTypeAnnotation",e,t)},t.assertNumericLiteral=function(e,t){i("NumericLiteral",e,t)},t.assertObjectExpression=function(e,t){i("ObjectExpression",e,t)},t.assertObjectMember=function(e,t){i("ObjectMember",e,t)},t.assertObjectMethod=function(e,t){i("ObjectMethod",e,t)},t.assertObjectPattern=function(e,t){i("ObjectPattern",e,t)},t.assertObjectProperty=function(e,t){i("ObjectProperty",e,t)},t.assertObjectTypeAnnotation=function(e,t){i("ObjectTypeAnnotation",e,t)},t.assertObjectTypeCallProperty=function(e,t){i("ObjectTypeCallProperty",e,t)},t.assertObjectTypeIndexer=function(e,t){i("ObjectTypeIndexer",e,t)},t.assertObjectTypeInternalSlot=function(e,t){i("ObjectTypeInternalSlot",e,t)},t.assertObjectTypeProperty=function(e,t){i("ObjectTypeProperty",e,t)},t.assertObjectTypeSpreadProperty=function(e,t){i("ObjectTypeSpreadProperty",e,t)},t.assertOpaqueType=function(e,t){i("OpaqueType",e,t)},t.assertOptionalCallExpression=function(e,t){i("OptionalCallExpression",e,t)},t.assertOptionalIndexedAccessType=function(e,t){i("OptionalIndexedAccessType",e,t)},t.assertOptionalMemberExpression=function(e,t){i("OptionalMemberExpression",e,t)},t.assertParenthesizedExpression=function(e,t){i("ParenthesizedExpression",e,t)},t.assertPattern=function(e,t){i("Pattern",e,t)},t.assertPatternLike=function(e,t){i("PatternLike",e,t)},t.assertPipelineBareFunction=function(e,t){i("PipelineBareFunction",e,t)},t.assertPipelinePrimaryTopicReference=function(e,t){i("PipelinePrimaryTopicReference",e,t)},t.assertPipelineTopicExpression=function(e,t){i("PipelineTopicExpression",e,t)},t.assertPlaceholder=function(e,t){i("Placeholder",e,t)},t.assertPrivate=function(e,t){i("Private",e,t)},t.assertPrivateName=function(e,t){i("PrivateName",e,t)},t.assertProgram=function(e,t){i("Program",e,t)},t.assertProperty=function(e,t){i("Property",e,t)},t.assertPureish=function(e,t){i("Pureish",e,t)},t.assertQualifiedTypeIdentifier=function(e,t){i("QualifiedTypeIdentifier",e,t)},t.assertRecordExpression=function(e,t){i("RecordExpression",e,t)},t.assertRegExpLiteral=function(e,t){i("RegExpLiteral",e,t)},t.assertRegexLiteral=function(e,t){(0,a.default)("assertRegexLiteral","assertRegExpLiteral"),i("RegexLiteral",e,t)},t.assertRestElement=function(e,t){i("RestElement",e,t)},t.assertRestProperty=function(e,t){(0,a.default)("assertRestProperty","assertRestElement"),i("RestProperty",e,t)},t.assertReturnStatement=function(e,t){i("ReturnStatement",e,t)},t.assertScopable=function(e,t){i("Scopable",e,t)},t.assertSequenceExpression=function(e,t){i("SequenceExpression",e,t)},t.assertSpreadElement=function(e,t){i("SpreadElement",e,t)},t.assertSpreadProperty=function(e,t){(0,a.default)("assertSpreadProperty","assertSpreadElement"),i("SpreadProperty",e,t)},t.assertStandardized=function(e,t){i("Standardized",e,t)},t.assertStatement=function(e,t){i("Statement",e,t)},t.assertStaticBlock=function(e,t){i("StaticBlock",e,t)},t.assertStringLiteral=function(e,t){i("StringLiteral",e,t)},t.assertStringLiteralTypeAnnotation=function(e,t){i("StringLiteralTypeAnnotation",e,t)},t.assertStringTypeAnnotation=function(e,t){i("StringTypeAnnotation",e,t)},t.assertSuper=function(e,t){i("Super",e,t)},t.assertSwitchCase=function(e,t){i("SwitchCase",e,t)},t.assertSwitchStatement=function(e,t){i("SwitchStatement",e,t)},t.assertSymbolTypeAnnotation=function(e,t){i("SymbolTypeAnnotation",e,t)},t.assertTSAnyKeyword=function(e,t){i("TSAnyKeyword",e,t)},t.assertTSArrayType=function(e,t){i("TSArrayType",e,t)},t.assertTSAsExpression=function(e,t){i("TSAsExpression",e,t)},t.assertTSBaseType=function(e,t){i("TSBaseType",e,t)},t.assertTSBigIntKeyword=function(e,t){i("TSBigIntKeyword",e,t)},t.assertTSBooleanKeyword=function(e,t){i("TSBooleanKeyword",e,t)},t.assertTSCallSignatureDeclaration=function(e,t){i("TSCallSignatureDeclaration",e,t)},t.assertTSConditionalType=function(e,t){i("TSConditionalType",e,t)},t.assertTSConstructSignatureDeclaration=function(e,t){i("TSConstructSignatureDeclaration",e,t)},t.assertTSConstructorType=function(e,t){i("TSConstructorType",e,t)},t.assertTSDeclareFunction=function(e,t){i("TSDeclareFunction",e,t)},t.assertTSDeclareMethod=function(e,t){i("TSDeclareMethod",e,t)},t.assertTSEntityName=function(e,t){i("TSEntityName",e,t)},t.assertTSEnumDeclaration=function(e,t){i("TSEnumDeclaration",e,t)},t.assertTSEnumMember=function(e,t){i("TSEnumMember",e,t)},t.assertTSExportAssignment=function(e,t){i("TSExportAssignment",e,t)},t.assertTSExpressionWithTypeArguments=function(e,t){i("TSExpressionWithTypeArguments",e,t)},t.assertTSExternalModuleReference=function(e,t){i("TSExternalModuleReference",e,t)},t.assertTSFunctionType=function(e,t){i("TSFunctionType",e,t)},t.assertTSImportEqualsDeclaration=function(e,t){i("TSImportEqualsDeclaration",e,t)},t.assertTSImportType=function(e,t){i("TSImportType",e,t)},t.assertTSIndexSignature=function(e,t){i("TSIndexSignature",e,t)},t.assertTSIndexedAccessType=function(e,t){i("TSIndexedAccessType",e,t)},t.assertTSInferType=function(e,t){i("TSInferType",e,t)},t.assertTSInstantiationExpression=function(e,t){i("TSInstantiationExpression",e,t)},t.assertTSInterfaceBody=function(e,t){i("TSInterfaceBody",e,t)},t.assertTSInterfaceDeclaration=function(e,t){i("TSInterfaceDeclaration",e,t)},t.assertTSIntersectionType=function(e,t){i("TSIntersectionType",e,t)},t.assertTSIntrinsicKeyword=function(e,t){i("TSIntrinsicKeyword",e,t)},t.assertTSLiteralType=function(e,t){i("TSLiteralType",e,t)},t.assertTSMappedType=function(e,t){i("TSMappedType",e,t)},t.assertTSMethodSignature=function(e,t){i("TSMethodSignature",e,t)},t.assertTSModuleBlock=function(e,t){i("TSModuleBlock",e,t)},t.assertTSModuleDeclaration=function(e,t){i("TSModuleDeclaration",e,t)},t.assertTSNamedTupleMember=function(e,t){i("TSNamedTupleMember",e,t)},t.assertTSNamespaceExportDeclaration=function(e,t){i("TSNamespaceExportDeclaration",e,t)},t.assertTSNeverKeyword=function(e,t){i("TSNeverKeyword",e,t)},t.assertTSNonNullExpression=function(e,t){i("TSNonNullExpression",e,t)},t.assertTSNullKeyword=function(e,t){i("TSNullKeyword",e,t)},t.assertTSNumberKeyword=function(e,t){i("TSNumberKeyword",e,t)},t.assertTSObjectKeyword=function(e,t){i("TSObjectKeyword",e,t)},t.assertTSOptionalType=function(e,t){i("TSOptionalType",e,t)},t.assertTSParameterProperty=function(e,t){i("TSParameterProperty",e,t)},t.assertTSParenthesizedType=function(e,t){i("TSParenthesizedType",e,t)},t.assertTSPropertySignature=function(e,t){i("TSPropertySignature",e,t)},t.assertTSQualifiedName=function(e,t){i("TSQualifiedName",e,t)},t.assertTSRestType=function(e,t){i("TSRestType",e,t)},t.assertTSSatisfiesExpression=function(e,t){i("TSSatisfiesExpression",e,t)},t.assertTSStringKeyword=function(e,t){i("TSStringKeyword",e,t)},t.assertTSSymbolKeyword=function(e,t){i("TSSymbolKeyword",e,t)},t.assertTSThisType=function(e,t){i("TSThisType",e,t)},t.assertTSTupleType=function(e,t){i("TSTupleType",e,t)},t.assertTSType=function(e,t){i("TSType",e,t)},t.assertTSTypeAliasDeclaration=function(e,t){i("TSTypeAliasDeclaration",e,t)},t.assertTSTypeAnnotation=function(e,t){i("TSTypeAnnotation",e,t)},t.assertTSTypeAssertion=function(e,t){i("TSTypeAssertion",e,t)},t.assertTSTypeElement=function(e,t){i("TSTypeElement",e,t)},t.assertTSTypeLiteral=function(e,t){i("TSTypeLiteral",e,t)},t.assertTSTypeOperator=function(e,t){i("TSTypeOperator",e,t)},t.assertTSTypeParameter=function(e,t){i("TSTypeParameter",e,t)},t.assertTSTypeParameterDeclaration=function(e,t){i("TSTypeParameterDeclaration",e,t)},t.assertTSTypeParameterInstantiation=function(e,t){i("TSTypeParameterInstantiation",e,t)},t.assertTSTypePredicate=function(e,t){i("TSTypePredicate",e,t)},t.assertTSTypeQuery=function(e,t){i("TSTypeQuery",e,t)},t.assertTSTypeReference=function(e,t){i("TSTypeReference",e,t)},t.assertTSUndefinedKeyword=function(e,t){i("TSUndefinedKeyword",e,t)},t.assertTSUnionType=function(e,t){i("TSUnionType",e,t)},t.assertTSUnknownKeyword=function(e,t){i("TSUnknownKeyword",e,t)},t.assertTSVoidKeyword=function(e,t){i("TSVoidKeyword",e,t)},t.assertTaggedTemplateExpression=function(e,t){i("TaggedTemplateExpression",e,t)},t.assertTemplateElement=function(e,t){i("TemplateElement",e,t)},t.assertTemplateLiteral=function(e,t){i("TemplateLiteral",e,t)},t.assertTerminatorless=function(e,t){i("Terminatorless",e,t)},t.assertThisExpression=function(e,t){i("ThisExpression",e,t)},t.assertThisTypeAnnotation=function(e,t){i("ThisTypeAnnotation",e,t)},t.assertThrowStatement=function(e,t){i("ThrowStatement",e,t)},t.assertTopicReference=function(e,t){i("TopicReference",e,t)},t.assertTryStatement=function(e,t){i("TryStatement",e,t)},t.assertTupleExpression=function(e,t){i("TupleExpression",e,t)},t.assertTupleTypeAnnotation=function(e,t){i("TupleTypeAnnotation",e,t)},t.assertTypeAlias=function(e,t){i("TypeAlias",e,t)},t.assertTypeAnnotation=function(e,t){i("TypeAnnotation",e,t)},t.assertTypeCastExpression=function(e,t){i("TypeCastExpression",e,t)},t.assertTypeParameter=function(e,t){i("TypeParameter",e,t)},t.assertTypeParameterDeclaration=function(e,t){i("TypeParameterDeclaration",e,t)},t.assertTypeParameterInstantiation=function(e,t){i("TypeParameterInstantiation",e,t)},t.assertTypeScript=function(e,t){i("TypeScript",e,t)},t.assertTypeofTypeAnnotation=function(e,t){i("TypeofTypeAnnotation",e,t)},t.assertUnaryExpression=function(e,t){i("UnaryExpression",e,t)},t.assertUnaryLike=function(e,t){i("UnaryLike",e,t)},t.assertUnionTypeAnnotation=function(e,t){i("UnionTypeAnnotation",e,t)},t.assertUpdateExpression=function(e,t){i("UpdateExpression",e,t)},t.assertUserWhitespacable=function(e,t){i("UserWhitespacable",e,t)},t.assertV8IntrinsicIdentifier=function(e,t){i("V8IntrinsicIdentifier",e,t)},t.assertVariableDeclaration=function(e,t){i("VariableDeclaration",e,t)},t.assertVariableDeclarator=function(e,t){i("VariableDeclarator",e,t)},t.assertVariance=function(e,t){i("Variance",e,t)},t.assertVoidTypeAnnotation=function(e,t){i("VoidTypeAnnotation",e,t)},t.assertWhile=function(e,t){i("While",e,t)},t.assertWhileStatement=function(e,t){i("WhileStatement",e,t)},t.assertWithStatement=function(e,t){i("WithStatement",e,t)},t.assertYieldExpression=function(e,t){i("YieldExpression",e,t)};var r=n(67566),a=n(52694);function i(e,t,n){if(!(0,r.default)(e,t,n))throw new Error(`Expected type "${e}" with option ${JSON.stringify(n)}, but instead got "${t.type}".`)}},35547:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,a.default)(e);return 1===t.length?t[0]:(0,r.unionTypeAnnotation)(t)};var r=n(53376),a=n(38374)},36962:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(53376);t.default=function(e){switch(e){case"string":return(0,r.stringTypeAnnotation)();case"number":return(0,r.numberTypeAnnotation)();case"undefined":return(0,r.voidTypeAnnotation)();case"boolean":return(0,r.booleanTypeAnnotation)();case"function":return(0,r.genericTypeAnnotation)((0,r.identifier)("Function"));case"object":return(0,r.genericTypeAnnotation)((0,r.identifier)("Object"));case"symbol":return(0,r.genericTypeAnnotation)((0,r.identifier)("Symbol"));case"bigint":return(0,r.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+e)}},53376:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anyTypeAnnotation=function(){return{type:"AnyTypeAnnotation"}},t.argumentPlaceholder=function(){return{type:"ArgumentPlaceholder"}},t.arrayExpression=function(e=[]){return(0,r.default)({type:"ArrayExpression",elements:e})},t.arrayPattern=function(e){return(0,r.default)({type:"ArrayPattern",elements:e})},t.arrayTypeAnnotation=function(e){return(0,r.default)({type:"ArrayTypeAnnotation",elementType:e})},t.arrowFunctionExpression=function(e,t,n=!1){return(0,r.default)({type:"ArrowFunctionExpression",params:e,body:t,async:n,expression:null})},t.assignmentExpression=function(e,t,n){return(0,r.default)({type:"AssignmentExpression",operator:e,left:t,right:n})},t.assignmentPattern=function(e,t){return(0,r.default)({type:"AssignmentPattern",left:e,right:t})},t.awaitExpression=function(e){return(0,r.default)({type:"AwaitExpression",argument:e})},t.bigIntLiteral=function(e){return(0,r.default)({type:"BigIntLiteral",value:e})},t.binaryExpression=function(e,t,n){return(0,r.default)({type:"BinaryExpression",operator:e,left:t,right:n})},t.bindExpression=function(e,t){return(0,r.default)({type:"BindExpression",object:e,callee:t})},t.blockStatement=function(e,t=[]){return(0,r.default)({type:"BlockStatement",body:e,directives:t})},t.booleanLiteral=function(e){return(0,r.default)({type:"BooleanLiteral",value:e})},t.booleanLiteralTypeAnnotation=function(e){return(0,r.default)({type:"BooleanLiteralTypeAnnotation",value:e})},t.booleanTypeAnnotation=function(){return{type:"BooleanTypeAnnotation"}},t.breakStatement=function(e=null){return(0,r.default)({type:"BreakStatement",label:e})},t.callExpression=function(e,t){return(0,r.default)({type:"CallExpression",callee:e,arguments:t})},t.catchClause=function(e=null,t){return(0,r.default)({type:"CatchClause",param:e,body:t})},t.classAccessorProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.classBody=function(e){return(0,r.default)({type:"ClassBody",body:e})},t.classDeclaration=function(e,t=null,n,a=null){return(0,r.default)({type:"ClassDeclaration",id:e,superClass:t,body:n,decorators:a})},t.classExpression=function(e=null,t=null,n,a=null){return(0,r.default)({type:"ClassExpression",id:e,superClass:t,body:n,decorators:a})},t.classImplements=function(e,t=null){return(0,r.default)({type:"ClassImplements",id:e,typeParameters:t})},t.classMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1,l=!1){return(0,r.default)({type:"ClassMethod",kind:e,key:t,params:n,body:a,computed:i,static:s,generator:o,async:l})},t.classPrivateMethod=function(e="method",t,n,a,i=!1){return(0,r.default)({type:"ClassPrivateMethod",kind:e,key:t,params:n,body:a,static:i})},t.classPrivateProperty=function(e,t=null,n=null,a=!1){return(0,r.default)({type:"ClassPrivateProperty",key:e,value:t,decorators:n,static:a})},t.classProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.conditionalExpression=function(e,t,n){return(0,r.default)({type:"ConditionalExpression",test:e,consequent:t,alternate:n})},t.continueStatement=function(e=null){return(0,r.default)({type:"ContinueStatement",label:e})},t.debuggerStatement=function(){return{type:"DebuggerStatement"}},t.decimalLiteral=function(e){return(0,r.default)({type:"DecimalLiteral",value:e})},t.declareClass=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareClass",id:e,typeParameters:t,extends:n,body:a})},t.declareExportAllDeclaration=function(e){return(0,r.default)({type:"DeclareExportAllDeclaration",source:e})},t.declareExportDeclaration=function(e=null,t=null,n=null){return(0,r.default)({type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:n})},t.declareFunction=function(e){return(0,r.default)({type:"DeclareFunction",id:e})},t.declareInterface=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareInterface",id:e,typeParameters:t,extends:n,body:a})},t.declareModule=function(e,t,n=null){return(0,r.default)({type:"DeclareModule",id:e,body:t,kind:n})},t.declareModuleExports=function(e){return(0,r.default)({type:"DeclareModuleExports",typeAnnotation:e})},t.declareOpaqueType=function(e,t=null,n=null){return(0,r.default)({type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:n})},t.declareTypeAlias=function(e,t=null,n){return(0,r.default)({type:"DeclareTypeAlias",id:e,typeParameters:t,right:n})},t.declareVariable=function(e){return(0,r.default)({type:"DeclareVariable",id:e})},t.declaredPredicate=function(e){return(0,r.default)({type:"DeclaredPredicate",value:e})},t.decorator=function(e){return(0,r.default)({type:"Decorator",expression:e})},t.directive=function(e){return(0,r.default)({type:"Directive",value:e})},t.directiveLiteral=function(e){return(0,r.default)({type:"DirectiveLiteral",value:e})},t.doExpression=function(e,t=!1){return(0,r.default)({type:"DoExpression",body:e,async:t})},t.doWhileStatement=function(e,t){return(0,r.default)({type:"DoWhileStatement",test:e,body:t})},t.emptyStatement=function(){return{type:"EmptyStatement"}},t.emptyTypeAnnotation=function(){return{type:"EmptyTypeAnnotation"}},t.enumBooleanBody=function(e){return(0,r.default)({type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumBooleanMember=function(e){return(0,r.default)({type:"EnumBooleanMember",id:e,init:null})},t.enumDeclaration=function(e,t){return(0,r.default)({type:"EnumDeclaration",id:e,body:t})},t.enumDefaultedMember=function(e){return(0,r.default)({type:"EnumDefaultedMember",id:e})},t.enumNumberBody=function(e){return(0,r.default)({type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumNumberMember=function(e,t){return(0,r.default)({type:"EnumNumberMember",id:e,init:t})},t.enumStringBody=function(e){return(0,r.default)({type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumStringMember=function(e,t){return(0,r.default)({type:"EnumStringMember",id:e,init:t})},t.enumSymbolBody=function(e){return(0,r.default)({type:"EnumSymbolBody",members:e,hasUnknownMembers:null})},t.existsTypeAnnotation=function(){return{type:"ExistsTypeAnnotation"}},t.exportAllDeclaration=function(e){return(0,r.default)({type:"ExportAllDeclaration",source:e})},t.exportDefaultDeclaration=function(e){return(0,r.default)({type:"ExportDefaultDeclaration",declaration:e})},t.exportDefaultSpecifier=function(e){return(0,r.default)({type:"ExportDefaultSpecifier",exported:e})},t.exportNamedDeclaration=function(e=null,t=[],n=null){return(0,r.default)({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n})},t.exportNamespaceSpecifier=function(e){return(0,r.default)({type:"ExportNamespaceSpecifier",exported:e})},t.exportSpecifier=function(e,t){return(0,r.default)({type:"ExportSpecifier",local:e,exported:t})},t.expressionStatement=function(e){return(0,r.default)({type:"ExpressionStatement",expression:e})},t.file=function(e,t=null,n=null){return(0,r.default)({type:"File",program:e,comments:t,tokens:n})},t.forInStatement=function(e,t,n){return(0,r.default)({type:"ForInStatement",left:e,right:t,body:n})},t.forOfStatement=function(e,t,n,a=!1){return(0,r.default)({type:"ForOfStatement",left:e,right:t,body:n,await:a})},t.forStatement=function(e=null,t=null,n=null,a){return(0,r.default)({type:"ForStatement",init:e,test:t,update:n,body:a})},t.functionDeclaration=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionDeclaration",id:e,params:t,body:n,generator:a,async:i})},t.functionExpression=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionExpression",id:e,params:t,body:n,generator:a,async:i})},t.functionTypeAnnotation=function(e=null,t,n=null,a){return(0,r.default)({type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:n,returnType:a})},t.functionTypeParam=function(e=null,t){return(0,r.default)({type:"FunctionTypeParam",name:e,typeAnnotation:t})},t.genericTypeAnnotation=function(e,t=null){return(0,r.default)({type:"GenericTypeAnnotation",id:e,typeParameters:t})},t.identifier=function(e){return(0,r.default)({type:"Identifier",name:e})},t.ifStatement=function(e,t,n=null){return(0,r.default)({type:"IfStatement",test:e,consequent:t,alternate:n})},t.import=function(){return{type:"Import"}},t.importAttribute=function(e,t){return(0,r.default)({type:"ImportAttribute",key:e,value:t})},t.importDeclaration=function(e,t){return(0,r.default)({type:"ImportDeclaration",specifiers:e,source:t})},t.importDefaultSpecifier=function(e){return(0,r.default)({type:"ImportDefaultSpecifier",local:e})},t.importNamespaceSpecifier=function(e){return(0,r.default)({type:"ImportNamespaceSpecifier",local:e})},t.importSpecifier=function(e,t){return(0,r.default)({type:"ImportSpecifier",local:e,imported:t})},t.indexedAccessType=function(e,t){return(0,r.default)({type:"IndexedAccessType",objectType:e,indexType:t})},t.inferredPredicate=function(){return{type:"InferredPredicate"}},t.interfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"InterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.interfaceExtends=function(e,t=null){return(0,r.default)({type:"InterfaceExtends",id:e,typeParameters:t})},t.interfaceTypeAnnotation=function(e=null,t){return(0,r.default)({type:"InterfaceTypeAnnotation",extends:e,body:t})},t.interpreterDirective=function(e){return(0,r.default)({type:"InterpreterDirective",value:e})},t.intersectionTypeAnnotation=function(e){return(0,r.default)({type:"IntersectionTypeAnnotation",types:e})},t.jSXAttribute=t.jsxAttribute=function(e,t=null){return(0,r.default)({type:"JSXAttribute",name:e,value:t})},t.jSXClosingElement=t.jsxClosingElement=function(e){return(0,r.default)({type:"JSXClosingElement",name:e})},t.jSXClosingFragment=t.jsxClosingFragment=function(){return{type:"JSXClosingFragment"}},t.jSXElement=t.jsxElement=function(e,t=null,n,a=null){return(0,r.default)({type:"JSXElement",openingElement:e,closingElement:t,children:n,selfClosing:a})},t.jSXEmptyExpression=t.jsxEmptyExpression=function(){return{type:"JSXEmptyExpression"}},t.jSXExpressionContainer=t.jsxExpressionContainer=function(e){return(0,r.default)({type:"JSXExpressionContainer",expression:e})},t.jSXFragment=t.jsxFragment=function(e,t,n){return(0,r.default)({type:"JSXFragment",openingFragment:e,closingFragment:t,children:n})},t.jSXIdentifier=t.jsxIdentifier=function(e){return(0,r.default)({type:"JSXIdentifier",name:e})},t.jSXMemberExpression=t.jsxMemberExpression=function(e,t){return(0,r.default)({type:"JSXMemberExpression",object:e,property:t})},t.jSXNamespacedName=t.jsxNamespacedName=function(e,t){return(0,r.default)({type:"JSXNamespacedName",namespace:e,name:t})},t.jSXOpeningElement=t.jsxOpeningElement=function(e,t,n=!1){return(0,r.default)({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n})},t.jSXOpeningFragment=t.jsxOpeningFragment=function(){return{type:"JSXOpeningFragment"}},t.jSXSpreadAttribute=t.jsxSpreadAttribute=function(e){return(0,r.default)({type:"JSXSpreadAttribute",argument:e})},t.jSXSpreadChild=t.jsxSpreadChild=function(e){return(0,r.default)({type:"JSXSpreadChild",expression:e})},t.jSXText=t.jsxText=function(e){return(0,r.default)({type:"JSXText",value:e})},t.labeledStatement=function(e,t){return(0,r.default)({type:"LabeledStatement",label:e,body:t})},t.logicalExpression=function(e,t,n){return(0,r.default)({type:"LogicalExpression",operator:e,left:t,right:n})},t.memberExpression=function(e,t,n=!1,a=null){return(0,r.default)({type:"MemberExpression",object:e,property:t,computed:n,optional:a})},t.metaProperty=function(e,t){return(0,r.default)({type:"MetaProperty",meta:e,property:t})},t.mixedTypeAnnotation=function(){return{type:"MixedTypeAnnotation"}},t.moduleExpression=function(e){return(0,r.default)({type:"ModuleExpression",body:e})},t.newExpression=function(e,t){return(0,r.default)({type:"NewExpression",callee:e,arguments:t})},t.noop=function(){return{type:"Noop"}},t.nullLiteral=function(){return{type:"NullLiteral"}},t.nullLiteralTypeAnnotation=function(){return{type:"NullLiteralTypeAnnotation"}},t.nullableTypeAnnotation=function(e){return(0,r.default)({type:"NullableTypeAnnotation",typeAnnotation:e})},t.numberLiteral=function(e){return(0,a.default)("NumberLiteral","NumericLiteral","The node type "),i(e)},t.numberLiteralTypeAnnotation=function(e){return(0,r.default)({type:"NumberLiteralTypeAnnotation",value:e})},t.numberTypeAnnotation=function(){return{type:"NumberTypeAnnotation"}},t.numericLiteral=i,t.objectExpression=function(e){return(0,r.default)({type:"ObjectExpression",properties:e})},t.objectMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1){return(0,r.default)({type:"ObjectMethod",kind:e,key:t,params:n,body:a,computed:i,generator:s,async:o})},t.objectPattern=function(e){return(0,r.default)({type:"ObjectPattern",properties:e})},t.objectProperty=function(e,t,n=!1,a=!1,i=null){return(0,r.default)({type:"ObjectProperty",key:e,value:t,computed:n,shorthand:a,decorators:i})},t.objectTypeAnnotation=function(e,t=[],n=[],a=[],i=!1){return(0,r.default)({type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:n,internalSlots:a,exact:i})},t.objectTypeCallProperty=function(e){return(0,r.default)({type:"ObjectTypeCallProperty",value:e,static:null})},t.objectTypeIndexer=function(e=null,t,n,a=null){return(0,r.default)({type:"ObjectTypeIndexer",id:e,key:t,value:n,variance:a,static:null})},t.objectTypeInternalSlot=function(e,t,n,a,i){return(0,r.default)({type:"ObjectTypeInternalSlot",id:e,value:t,optional:n,static:a,method:i})},t.objectTypeProperty=function(e,t,n=null){return(0,r.default)({type:"ObjectTypeProperty",key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null})},t.objectTypeSpreadProperty=function(e){return(0,r.default)({type:"ObjectTypeSpreadProperty",argument:e})},t.opaqueType=function(e,t=null,n=null,a){return(0,r.default)({type:"OpaqueType",id:e,typeParameters:t,supertype:n,impltype:a})},t.optionalCallExpression=function(e,t,n){return(0,r.default)({type:"OptionalCallExpression",callee:e,arguments:t,optional:n})},t.optionalIndexedAccessType=function(e,t){return(0,r.default)({type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null})},t.optionalMemberExpression=function(e,t,n=!1,a){return(0,r.default)({type:"OptionalMemberExpression",object:e,property:t,computed:n,optional:a})},t.parenthesizedExpression=function(e){return(0,r.default)({type:"ParenthesizedExpression",expression:e})},t.pipelineBareFunction=function(e){return(0,r.default)({type:"PipelineBareFunction",callee:e})},t.pipelinePrimaryTopicReference=function(){return{type:"PipelinePrimaryTopicReference"}},t.pipelineTopicExpression=function(e){return(0,r.default)({type:"PipelineTopicExpression",expression:e})},t.placeholder=function(e,t){return(0,r.default)({type:"Placeholder",expectedNode:e,name:t})},t.privateName=function(e){return(0,r.default)({type:"PrivateName",id:e})},t.program=function(e,t=[],n="script",a=null){return(0,r.default)({type:"Program",body:e,directives:t,sourceType:n,interpreter:a,sourceFile:null})},t.qualifiedTypeIdentifier=function(e,t){return(0,r.default)({type:"QualifiedTypeIdentifier",id:e,qualification:t})},t.recordExpression=function(e){return(0,r.default)({type:"RecordExpression",properties:e})},t.regExpLiteral=s,t.regexLiteral=function(e,t=""){return(0,a.default)("RegexLiteral","RegExpLiteral","The node type "),s(e,t)},t.restElement=o,t.restProperty=function(e){return(0,a.default)("RestProperty","RestElement","The node type "),o(e)},t.returnStatement=function(e=null){return(0,r.default)({type:"ReturnStatement",argument:e})},t.sequenceExpression=function(e){return(0,r.default)({type:"SequenceExpression",expressions:e})},t.spreadElement=l,t.spreadProperty=function(e){return(0,a.default)("SpreadProperty","SpreadElement","The node type "),l(e)},t.staticBlock=function(e){return(0,r.default)({type:"StaticBlock",body:e})},t.stringLiteral=function(e){return(0,r.default)({type:"StringLiteral",value:e})},t.stringLiteralTypeAnnotation=function(e){return(0,r.default)({type:"StringLiteralTypeAnnotation",value:e})},t.stringTypeAnnotation=function(){return{type:"StringTypeAnnotation"}},t.super=function(){return{type:"Super"}},t.switchCase=function(e=null,t){return(0,r.default)({type:"SwitchCase",test:e,consequent:t})},t.switchStatement=function(e,t){return(0,r.default)({type:"SwitchStatement",discriminant:e,cases:t})},t.symbolTypeAnnotation=function(){return{type:"SymbolTypeAnnotation"}},t.taggedTemplateExpression=function(e,t){return(0,r.default)({type:"TaggedTemplateExpression",tag:e,quasi:t})},t.templateElement=function(e,t=!1){return(0,r.default)({type:"TemplateElement",value:e,tail:t})},t.templateLiteral=function(e,t){return(0,r.default)({type:"TemplateLiteral",quasis:e,expressions:t})},t.thisExpression=function(){return{type:"ThisExpression"}},t.thisTypeAnnotation=function(){return{type:"ThisTypeAnnotation"}},t.throwStatement=function(e){return(0,r.default)({type:"ThrowStatement",argument:e})},t.topicReference=function(){return{type:"TopicReference"}},t.tryStatement=function(e,t=null,n=null){return(0,r.default)({type:"TryStatement",block:e,handler:t,finalizer:n})},t.tSAnyKeyword=t.tsAnyKeyword=function(){return{type:"TSAnyKeyword"}},t.tSArrayType=t.tsArrayType=function(e){return(0,r.default)({type:"TSArrayType",elementType:e})},t.tSAsExpression=t.tsAsExpression=function(e,t){return(0,r.default)({type:"TSAsExpression",expression:e,typeAnnotation:t})},t.tSBigIntKeyword=t.tsBigIntKeyword=function(){return{type:"TSBigIntKeyword"}},t.tSBooleanKeyword=t.tsBooleanKeyword=function(){return{type:"TSBooleanKeyword"}},t.tSCallSignatureDeclaration=t.tsCallSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConditionalType=t.tsConditionalType=function(e,t,n,a){return(0,r.default)({type:"TSConditionalType",checkType:e,extendsType:t,trueType:n,falseType:a})},t.tSConstructSignatureDeclaration=t.tsConstructSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConstructorType=t.tsConstructorType=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSDeclareFunction=t.tsDeclareFunction=function(e=null,t=null,n,a=null){return(0,r.default)({type:"TSDeclareFunction",id:e,typeParameters:t,params:n,returnType:a})},t.tSDeclareMethod=t.tsDeclareMethod=function(e=null,t,n=null,a,i=null){return(0,r.default)({type:"TSDeclareMethod",decorators:e,key:t,typeParameters:n,params:a,returnType:i})},t.tSEnumDeclaration=t.tsEnumDeclaration=function(e,t){return(0,r.default)({type:"TSEnumDeclaration",id:e,members:t})},t.tSEnumMember=t.tsEnumMember=function(e,t=null){return(0,r.default)({type:"TSEnumMember",id:e,initializer:t})},t.tSExportAssignment=t.tsExportAssignment=function(e){return(0,r.default)({type:"TSExportAssignment",expression:e})},t.tSExpressionWithTypeArguments=t.tsExpressionWithTypeArguments=function(e,t=null){return(0,r.default)({type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t})},t.tSExternalModuleReference=t.tsExternalModuleReference=function(e){return(0,r.default)({type:"TSExternalModuleReference",expression:e})},t.tSFunctionType=t.tsFunctionType=function(e=null,t,n=null){return(0,r.default)({type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSImportEqualsDeclaration=t.tsImportEqualsDeclaration=function(e,t){return(0,r.default)({type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null})},t.tSImportType=t.tsImportType=function(e,t=null,n=null){return(0,r.default)({type:"TSImportType",argument:e,qualifier:t,typeParameters:n})},t.tSIndexSignature=t.tsIndexSignature=function(e,t=null){return(0,r.default)({type:"TSIndexSignature",parameters:e,typeAnnotation:t})},t.tSIndexedAccessType=t.tsIndexedAccessType=function(e,t){return(0,r.default)({type:"TSIndexedAccessType",objectType:e,indexType:t})},t.tSInferType=t.tsInferType=function(e){return(0,r.default)({type:"TSInferType",typeParameter:e})},t.tSInstantiationExpression=t.tsInstantiationExpression=function(e,t=null){return(0,r.default)({type:"TSInstantiationExpression",expression:e,typeParameters:t})},t.tSInterfaceBody=t.tsInterfaceBody=function(e){return(0,r.default)({type:"TSInterfaceBody",body:e})},t.tSInterfaceDeclaration=t.tsInterfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.tSIntersectionType=t.tsIntersectionType=function(e){return(0,r.default)({type:"TSIntersectionType",types:e})},t.tSIntrinsicKeyword=t.tsIntrinsicKeyword=function(){return{type:"TSIntrinsicKeyword"}},t.tSLiteralType=t.tsLiteralType=function(e){return(0,r.default)({type:"TSLiteralType",literal:e})},t.tSMappedType=t.tsMappedType=function(e,t=null,n=null){return(0,r.default)({type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:n})},t.tSMethodSignature=t.tsMethodSignature=function(e,t=null,n,a=null){return(0,r.default)({type:"TSMethodSignature",key:e,typeParameters:t,parameters:n,typeAnnotation:a,kind:null})},t.tSModuleBlock=t.tsModuleBlock=function(e){return(0,r.default)({type:"TSModuleBlock",body:e})},t.tSModuleDeclaration=t.tsModuleDeclaration=function(e,t){return(0,r.default)({type:"TSModuleDeclaration",id:e,body:t})},t.tSNamedTupleMember=t.tsNamedTupleMember=function(e,t,n=!1){return(0,r.default)({type:"TSNamedTupleMember",label:e,elementType:t,optional:n})},t.tSNamespaceExportDeclaration=t.tsNamespaceExportDeclaration=function(e){return(0,r.default)({type:"TSNamespaceExportDeclaration",id:e})},t.tSNeverKeyword=t.tsNeverKeyword=function(){return{type:"TSNeverKeyword"}},t.tSNonNullExpression=t.tsNonNullExpression=function(e){return(0,r.default)({type:"TSNonNullExpression",expression:e})},t.tSNullKeyword=t.tsNullKeyword=function(){return{type:"TSNullKeyword"}},t.tSNumberKeyword=t.tsNumberKeyword=function(){return{type:"TSNumberKeyword"}},t.tSObjectKeyword=t.tsObjectKeyword=function(){return{type:"TSObjectKeyword"}},t.tSOptionalType=t.tsOptionalType=function(e){return(0,r.default)({type:"TSOptionalType",typeAnnotation:e})},t.tSParameterProperty=t.tsParameterProperty=function(e){return(0,r.default)({type:"TSParameterProperty",parameter:e})},t.tSParenthesizedType=t.tsParenthesizedType=function(e){return(0,r.default)({type:"TSParenthesizedType",typeAnnotation:e})},t.tSPropertySignature=t.tsPropertySignature=function(e,t=null,n=null){return(0,r.default)({type:"TSPropertySignature",key:e,typeAnnotation:t,initializer:n,kind:null})},t.tSQualifiedName=t.tsQualifiedName=function(e,t){return(0,r.default)({type:"TSQualifiedName",left:e,right:t})},t.tSRestType=t.tsRestType=function(e){return(0,r.default)({type:"TSRestType",typeAnnotation:e})},t.tSSatisfiesExpression=t.tsSatisfiesExpression=function(e,t){return(0,r.default)({type:"TSSatisfiesExpression",expression:e,typeAnnotation:t})},t.tSStringKeyword=t.tsStringKeyword=function(){return{type:"TSStringKeyword"}},t.tSSymbolKeyword=t.tsSymbolKeyword=function(){return{type:"TSSymbolKeyword"}},t.tSThisType=t.tsThisType=function(){return{type:"TSThisType"}},t.tSTupleType=t.tsTupleType=function(e){return(0,r.default)({type:"TSTupleType",elementTypes:e})},t.tSTypeAliasDeclaration=t.tsTypeAliasDeclaration=function(e,t=null,n){return(0,r.default)({type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:n})},t.tSTypeAnnotation=t.tsTypeAnnotation=function(e){return(0,r.default)({type:"TSTypeAnnotation",typeAnnotation:e})},t.tSTypeAssertion=t.tsTypeAssertion=function(e,t){return(0,r.default)({type:"TSTypeAssertion",typeAnnotation:e,expression:t})},t.tSTypeLiteral=t.tsTypeLiteral=function(e){return(0,r.default)({type:"TSTypeLiteral",members:e})},t.tSTypeOperator=t.tsTypeOperator=function(e){return(0,r.default)({type:"TSTypeOperator",typeAnnotation:e,operator:null})},t.tSTypeParameter=t.tsTypeParameter=function(e=null,t=null,n){return(0,r.default)({type:"TSTypeParameter",constraint:e,default:t,name:n})},t.tSTypeParameterDeclaration=t.tsTypeParameterDeclaration=function(e){return(0,r.default)({type:"TSTypeParameterDeclaration",params:e})},t.tSTypeParameterInstantiation=t.tsTypeParameterInstantiation=function(e){return(0,r.default)({type:"TSTypeParameterInstantiation",params:e})},t.tSTypePredicate=t.tsTypePredicate=function(e,t=null,n=null){return(0,r.default)({type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:n})},t.tSTypeQuery=t.tsTypeQuery=function(e,t=null){return(0,r.default)({type:"TSTypeQuery",exprName:e,typeParameters:t})},t.tSTypeReference=t.tsTypeReference=function(e,t=null){return(0,r.default)({type:"TSTypeReference",typeName:e,typeParameters:t})},t.tSUndefinedKeyword=t.tsUndefinedKeyword=function(){return{type:"TSUndefinedKeyword"}},t.tSUnionType=t.tsUnionType=function(e){return(0,r.default)({type:"TSUnionType",types:e})},t.tSUnknownKeyword=t.tsUnknownKeyword=function(){return{type:"TSUnknownKeyword"}},t.tSVoidKeyword=t.tsVoidKeyword=function(){return{type:"TSVoidKeyword"}},t.tupleExpression=function(e=[]){return(0,r.default)({type:"TupleExpression",elements:e})},t.tupleTypeAnnotation=function(e){return(0,r.default)({type:"TupleTypeAnnotation",types:e})},t.typeAlias=function(e,t=null,n){return(0,r.default)({type:"TypeAlias",id:e,typeParameters:t,right:n})},t.typeAnnotation=function(e){return(0,r.default)({type:"TypeAnnotation",typeAnnotation:e})},t.typeCastExpression=function(e,t){return(0,r.default)({type:"TypeCastExpression",expression:e,typeAnnotation:t})},t.typeParameter=function(e=null,t=null,n=null){return(0,r.default)({type:"TypeParameter",bound:e,default:t,variance:n,name:null})},t.typeParameterDeclaration=function(e){return(0,r.default)({type:"TypeParameterDeclaration",params:e})},t.typeParameterInstantiation=function(e){return(0,r.default)({type:"TypeParameterInstantiation",params:e})},t.typeofTypeAnnotation=function(e){return(0,r.default)({type:"TypeofTypeAnnotation",argument:e})},t.unaryExpression=function(e,t,n=!0){return(0,r.default)({type:"UnaryExpression",operator:e,argument:t,prefix:n})},t.unionTypeAnnotation=function(e){return(0,r.default)({type:"UnionTypeAnnotation",types:e})},t.updateExpression=function(e,t,n=!1){return(0,r.default)({type:"UpdateExpression",operator:e,argument:t,prefix:n})},t.v8IntrinsicIdentifier=function(e){return(0,r.default)({type:"V8IntrinsicIdentifier",name:e})},t.variableDeclaration=function(e,t){return(0,r.default)({type:"VariableDeclaration",kind:e,declarations:t})},t.variableDeclarator=function(e,t=null){return(0,r.default)({type:"VariableDeclarator",id:e,init:t})},t.variance=function(e){return(0,r.default)({type:"Variance",kind:e})},t.voidTypeAnnotation=function(){return{type:"VoidTypeAnnotation"}},t.whileStatement=function(e,t){return(0,r.default)({type:"WhileStatement",test:e,body:t})},t.withStatement=function(e,t){return(0,r.default)({type:"WithStatement",object:e,body:t})},t.yieldExpression=function(e=null,t=!1){return(0,r.default)({type:"YieldExpression",argument:e,delegate:t})};var r=n(23553),a=n(52694);function i(e){return(0,r.default)({type:"NumericLiteral",value:e})}function s(e,t=""){return(0,r.default)({type:"RegExpLiteral",pattern:e,flags:t})}function o(e){return(0,r.default)({type:"RestElement",argument:e})}function l(e){return(0,r.default)({type:"SpreadElement",argument:e})}},23496:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AnyTypeAnnotation",{enumerable:!0,get:function(){return r.anyTypeAnnotation}}),Object.defineProperty(t,"ArgumentPlaceholder",{enumerable:!0,get:function(){return r.argumentPlaceholder}}),Object.defineProperty(t,"ArrayExpression",{enumerable:!0,get:function(){return r.arrayExpression}}),Object.defineProperty(t,"ArrayPattern",{enumerable:!0,get:function(){return r.arrayPattern}}),Object.defineProperty(t,"ArrayTypeAnnotation",{enumerable:!0,get:function(){return r.arrayTypeAnnotation}}),Object.defineProperty(t,"ArrowFunctionExpression",{enumerable:!0,get:function(){return r.arrowFunctionExpression}}),Object.defineProperty(t,"AssignmentExpression",{enumerable:!0,get:function(){return r.assignmentExpression}}),Object.defineProperty(t,"AssignmentPattern",{enumerable:!0,get:function(){return r.assignmentPattern}}),Object.defineProperty(t,"AwaitExpression",{enumerable:!0,get:function(){return r.awaitExpression}}),Object.defineProperty(t,"BigIntLiteral",{enumerable:!0,get:function(){return r.bigIntLiteral}}),Object.defineProperty(t,"BinaryExpression",{enumerable:!0,get:function(){return r.binaryExpression}}),Object.defineProperty(t,"BindExpression",{enumerable:!0,get:function(){return r.bindExpression}}),Object.defineProperty(t,"BlockStatement",{enumerable:!0,get:function(){return r.blockStatement}}),Object.defineProperty(t,"BooleanLiteral",{enumerable:!0,get:function(){return r.booleanLiteral}}),Object.defineProperty(t,"BooleanLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.booleanLiteralTypeAnnotation}}),Object.defineProperty(t,"BooleanTypeAnnotation",{enumerable:!0,get:function(){return r.booleanTypeAnnotation}}),Object.defineProperty(t,"BreakStatement",{enumerable:!0,get:function(){return r.breakStatement}}),Object.defineProperty(t,"CallExpression",{enumerable:!0,get:function(){return r.callExpression}}),Object.defineProperty(t,"CatchClause",{enumerable:!0,get:function(){return r.catchClause}}),Object.defineProperty(t,"ClassAccessorProperty",{enumerable:!0,get:function(){return r.classAccessorProperty}}),Object.defineProperty(t,"ClassBody",{enumerable:!0,get:function(){return r.classBody}}),Object.defineProperty(t,"ClassDeclaration",{enumerable:!0,get:function(){return r.classDeclaration}}),Object.defineProperty(t,"ClassExpression",{enumerable:!0,get:function(){return r.classExpression}}),Object.defineProperty(t,"ClassImplements",{enumerable:!0,get:function(){return r.classImplements}}),Object.defineProperty(t,"ClassMethod",{enumerable:!0,get:function(){return r.classMethod}}),Object.defineProperty(t,"ClassPrivateMethod",{enumerable:!0,get:function(){return r.classPrivateMethod}}),Object.defineProperty(t,"ClassPrivateProperty",{enumerable:!0,get:function(){return r.classPrivateProperty}}),Object.defineProperty(t,"ClassProperty",{enumerable:!0,get:function(){return r.classProperty}}),Object.defineProperty(t,"ConditionalExpression",{enumerable:!0,get:function(){return r.conditionalExpression}}),Object.defineProperty(t,"ContinueStatement",{enumerable:!0,get:function(){return r.continueStatement}}),Object.defineProperty(t,"DebuggerStatement",{enumerable:!0,get:function(){return r.debuggerStatement}}),Object.defineProperty(t,"DecimalLiteral",{enumerable:!0,get:function(){return r.decimalLiteral}}),Object.defineProperty(t,"DeclareClass",{enumerable:!0,get:function(){return r.declareClass}}),Object.defineProperty(t,"DeclareExportAllDeclaration",{enumerable:!0,get:function(){return r.declareExportAllDeclaration}}),Object.defineProperty(t,"DeclareExportDeclaration",{enumerable:!0,get:function(){return r.declareExportDeclaration}}),Object.defineProperty(t,"DeclareFunction",{enumerable:!0,get:function(){return r.declareFunction}}),Object.defineProperty(t,"DeclareInterface",{enumerable:!0,get:function(){return r.declareInterface}}),Object.defineProperty(t,"DeclareModule",{enumerable:!0,get:function(){return r.declareModule}}),Object.defineProperty(t,"DeclareModuleExports",{enumerable:!0,get:function(){return r.declareModuleExports}}),Object.defineProperty(t,"DeclareOpaqueType",{enumerable:!0,get:function(){return r.declareOpaqueType}}),Object.defineProperty(t,"DeclareTypeAlias",{enumerable:!0,get:function(){return r.declareTypeAlias}}),Object.defineProperty(t,"DeclareVariable",{enumerable:!0,get:function(){return r.declareVariable}}),Object.defineProperty(t,"DeclaredPredicate",{enumerable:!0,get:function(){return r.declaredPredicate}}),Object.defineProperty(t,"Decorator",{enumerable:!0,get:function(){return r.decorator}}),Object.defineProperty(t,"Directive",{enumerable:!0,get:function(){return r.directive}}),Object.defineProperty(t,"DirectiveLiteral",{enumerable:!0,get:function(){return r.directiveLiteral}}),Object.defineProperty(t,"DoExpression",{enumerable:!0,get:function(){return r.doExpression}}),Object.defineProperty(t,"DoWhileStatement",{enumerable:!0,get:function(){return r.doWhileStatement}}),Object.defineProperty(t,"EmptyStatement",{enumerable:!0,get:function(){return r.emptyStatement}}),Object.defineProperty(t,"EmptyTypeAnnotation",{enumerable:!0,get:function(){return r.emptyTypeAnnotation}}),Object.defineProperty(t,"EnumBooleanBody",{enumerable:!0,get:function(){return r.enumBooleanBody}}),Object.defineProperty(t,"EnumBooleanMember",{enumerable:!0,get:function(){return r.enumBooleanMember}}),Object.defineProperty(t,"EnumDeclaration",{enumerable:!0,get:function(){return r.enumDeclaration}}),Object.defineProperty(t,"EnumDefaultedMember",{enumerable:!0,get:function(){return r.enumDefaultedMember}}),Object.defineProperty(t,"EnumNumberBody",{enumerable:!0,get:function(){return r.enumNumberBody}}),Object.defineProperty(t,"EnumNumberMember",{enumerable:!0,get:function(){return r.enumNumberMember}}),Object.defineProperty(t,"EnumStringBody",{enumerable:!0,get:function(){return r.enumStringBody}}),Object.defineProperty(t,"EnumStringMember",{enumerable:!0,get:function(){return r.enumStringMember}}),Object.defineProperty(t,"EnumSymbolBody",{enumerable:!0,get:function(){return r.enumSymbolBody}}),Object.defineProperty(t,"ExistsTypeAnnotation",{enumerable:!0,get:function(){return r.existsTypeAnnotation}}),Object.defineProperty(t,"ExportAllDeclaration",{enumerable:!0,get:function(){return r.exportAllDeclaration}}),Object.defineProperty(t,"ExportDefaultDeclaration",{enumerable:!0,get:function(){return r.exportDefaultDeclaration}}),Object.defineProperty(t,"ExportDefaultSpecifier",{enumerable:!0,get:function(){return r.exportDefaultSpecifier}}),Object.defineProperty(t,"ExportNamedDeclaration",{enumerable:!0,get:function(){return r.exportNamedDeclaration}}),Object.defineProperty(t,"ExportNamespaceSpecifier",{enumerable:!0,get:function(){return r.exportNamespaceSpecifier}}),Object.defineProperty(t,"ExportSpecifier",{enumerable:!0,get:function(){return r.exportSpecifier}}),Object.defineProperty(t,"ExpressionStatement",{enumerable:!0,get:function(){return r.expressionStatement}}),Object.defineProperty(t,"File",{enumerable:!0,get:function(){return r.file}}),Object.defineProperty(t,"ForInStatement",{enumerable:!0,get:function(){return r.forInStatement}}),Object.defineProperty(t,"ForOfStatement",{enumerable:!0,get:function(){return r.forOfStatement}}),Object.defineProperty(t,"ForStatement",{enumerable:!0,get:function(){return r.forStatement}}),Object.defineProperty(t,"FunctionDeclaration",{enumerable:!0,get:function(){return r.functionDeclaration}}),Object.defineProperty(t,"FunctionExpression",{enumerable:!0,get:function(){return r.functionExpression}}),Object.defineProperty(t,"FunctionTypeAnnotation",{enumerable:!0,get:function(){return r.functionTypeAnnotation}}),Object.defineProperty(t,"FunctionTypeParam",{enumerable:!0,get:function(){return r.functionTypeParam}}),Object.defineProperty(t,"GenericTypeAnnotation",{enumerable:!0,get:function(){return r.genericTypeAnnotation}}),Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return r.identifier}}),Object.defineProperty(t,"IfStatement",{enumerable:!0,get:function(){return r.ifStatement}}),Object.defineProperty(t,"Import",{enumerable:!0,get:function(){return r.import}}),Object.defineProperty(t,"ImportAttribute",{enumerable:!0,get:function(){return r.importAttribute}}),Object.defineProperty(t,"ImportDeclaration",{enumerable:!0,get:function(){return r.importDeclaration}}),Object.defineProperty(t,"ImportDefaultSpecifier",{enumerable:!0,get:function(){return r.importDefaultSpecifier}}),Object.defineProperty(t,"ImportNamespaceSpecifier",{enumerable:!0,get:function(){return r.importNamespaceSpecifier}}),Object.defineProperty(t,"ImportSpecifier",{enumerable:!0,get:function(){return r.importSpecifier}}),Object.defineProperty(t,"IndexedAccessType",{enumerable:!0,get:function(){return r.indexedAccessType}}),Object.defineProperty(t,"InferredPredicate",{enumerable:!0,get:function(){return r.inferredPredicate}}),Object.defineProperty(t,"InterfaceDeclaration",{enumerable:!0,get:function(){return r.interfaceDeclaration}}),Object.defineProperty(t,"InterfaceExtends",{enumerable:!0,get:function(){return r.interfaceExtends}}),Object.defineProperty(t,"InterfaceTypeAnnotation",{enumerable:!0,get:function(){return r.interfaceTypeAnnotation}}),Object.defineProperty(t,"InterpreterDirective",{enumerable:!0,get:function(){return r.interpreterDirective}}),Object.defineProperty(t,"IntersectionTypeAnnotation",{enumerable:!0,get:function(){return r.intersectionTypeAnnotation}}),Object.defineProperty(t,"JSXAttribute",{enumerable:!0,get:function(){return r.jsxAttribute}}),Object.defineProperty(t,"JSXClosingElement",{enumerable:!0,get:function(){return r.jsxClosingElement}}),Object.defineProperty(t,"JSXClosingFragment",{enumerable:!0,get:function(){return r.jsxClosingFragment}}),Object.defineProperty(t,"JSXElement",{enumerable:!0,get:function(){return r.jsxElement}}),Object.defineProperty(t,"JSXEmptyExpression",{enumerable:!0,get:function(){return r.jsxEmptyExpression}}),Object.defineProperty(t,"JSXExpressionContainer",{enumerable:!0,get:function(){return r.jsxExpressionContainer}}),Object.defineProperty(t,"JSXFragment",{enumerable:!0,get:function(){return r.jsxFragment}}),Object.defineProperty(t,"JSXIdentifier",{enumerable:!0,get:function(){return r.jsxIdentifier}}),Object.defineProperty(t,"JSXMemberExpression",{enumerable:!0,get:function(){return r.jsxMemberExpression}}),Object.defineProperty(t,"JSXNamespacedName",{enumerable:!0,get:function(){return r.jsxNamespacedName}}),Object.defineProperty(t,"JSXOpeningElement",{enumerable:!0,get:function(){return r.jsxOpeningElement}}),Object.defineProperty(t,"JSXOpeningFragment",{enumerable:!0,get:function(){return r.jsxOpeningFragment}}),Object.defineProperty(t,"JSXSpreadAttribute",{enumerable:!0,get:function(){return r.jsxSpreadAttribute}}),Object.defineProperty(t,"JSXSpreadChild",{enumerable:!0,get:function(){return r.jsxSpreadChild}}),Object.defineProperty(t,"JSXText",{enumerable:!0,get:function(){return r.jsxText}}),Object.defineProperty(t,"LabeledStatement",{enumerable:!0,get:function(){return r.labeledStatement}}),Object.defineProperty(t,"LogicalExpression",{enumerable:!0,get:function(){return r.logicalExpression}}),Object.defineProperty(t,"MemberExpression",{enumerable:!0,get:function(){return r.memberExpression}}),Object.defineProperty(t,"MetaProperty",{enumerable:!0,get:function(){return r.metaProperty}}),Object.defineProperty(t,"MixedTypeAnnotation",{enumerable:!0,get:function(){return r.mixedTypeAnnotation}}),Object.defineProperty(t,"ModuleExpression",{enumerable:!0,get:function(){return r.moduleExpression}}),Object.defineProperty(t,"NewExpression",{enumerable:!0,get:function(){return r.newExpression}}),Object.defineProperty(t,"Noop",{enumerable:!0,get:function(){return r.noop}}),Object.defineProperty(t,"NullLiteral",{enumerable:!0,get:function(){return r.nullLiteral}}),Object.defineProperty(t,"NullLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.nullLiteralTypeAnnotation}}),Object.defineProperty(t,"NullableTypeAnnotation",{enumerable:!0,get:function(){return r.nullableTypeAnnotation}}),Object.defineProperty(t,"NumberLiteral",{enumerable:!0,get:function(){return r.numberLiteral}}),Object.defineProperty(t,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.numberLiteralTypeAnnotation}}),Object.defineProperty(t,"NumberTypeAnnotation",{enumerable:!0,get:function(){return r.numberTypeAnnotation}}),Object.defineProperty(t,"NumericLiteral",{enumerable:!0,get:function(){return r.numericLiteral}}),Object.defineProperty(t,"ObjectExpression",{enumerable:!0,get:function(){return r.objectExpression}}),Object.defineProperty(t,"ObjectMethod",{enumerable:!0,get:function(){return r.objectMethod}}),Object.defineProperty(t,"ObjectPattern",{enumerable:!0,get:function(){return r.objectPattern}}),Object.defineProperty(t,"ObjectProperty",{enumerable:!0,get:function(){return r.objectProperty}}),Object.defineProperty(t,"ObjectTypeAnnotation",{enumerable:!0,get:function(){return r.objectTypeAnnotation}}),Object.defineProperty(t,"ObjectTypeCallProperty",{enumerable:!0,get:function(){return r.objectTypeCallProperty}}),Object.defineProperty(t,"ObjectTypeIndexer",{enumerable:!0,get:function(){return r.objectTypeIndexer}}),Object.defineProperty(t,"ObjectTypeInternalSlot",{enumerable:!0,get:function(){return r.objectTypeInternalSlot}}),Object.defineProperty(t,"ObjectTypeProperty",{enumerable:!0,get:function(){return r.objectTypeProperty}}),Object.defineProperty(t,"ObjectTypeSpreadProperty",{enumerable:!0,get:function(){return r.objectTypeSpreadProperty}}),Object.defineProperty(t,"OpaqueType",{enumerable:!0,get:function(){return r.opaqueType}}),Object.defineProperty(t,"OptionalCallExpression",{enumerable:!0,get:function(){return r.optionalCallExpression}}),Object.defineProperty(t,"OptionalIndexedAccessType",{enumerable:!0,get:function(){return r.optionalIndexedAccessType}}),Object.defineProperty(t,"OptionalMemberExpression",{enumerable:!0,get:function(){return r.optionalMemberExpression}}),Object.defineProperty(t,"ParenthesizedExpression",{enumerable:!0,get:function(){return r.parenthesizedExpression}}),Object.defineProperty(t,"PipelineBareFunction",{enumerable:!0,get:function(){return r.pipelineBareFunction}}),Object.defineProperty(t,"PipelinePrimaryTopicReference",{enumerable:!0,get:function(){return r.pipelinePrimaryTopicReference}}),Object.defineProperty(t,"PipelineTopicExpression",{enumerable:!0,get:function(){return r.pipelineTopicExpression}}),Object.defineProperty(t,"Placeholder",{enumerable:!0,get:function(){return r.placeholder}}),Object.defineProperty(t,"PrivateName",{enumerable:!0,get:function(){return r.privateName}}),Object.defineProperty(t,"Program",{enumerable:!0,get:function(){return r.program}}),Object.defineProperty(t,"QualifiedTypeIdentifier",{enumerable:!0,get:function(){return r.qualifiedTypeIdentifier}}),Object.defineProperty(t,"RecordExpression",{enumerable:!0,get:function(){return r.recordExpression}}),Object.defineProperty(t,"RegExpLiteral",{enumerable:!0,get:function(){return r.regExpLiteral}}),Object.defineProperty(t,"RegexLiteral",{enumerable:!0,get:function(){return r.regexLiteral}}),Object.defineProperty(t,"RestElement",{enumerable:!0,get:function(){return r.restElement}}),Object.defineProperty(t,"RestProperty",{enumerable:!0,get:function(){return r.restProperty}}),Object.defineProperty(t,"ReturnStatement",{enumerable:!0,get:function(){return r.returnStatement}}),Object.defineProperty(t,"SequenceExpression",{enumerable:!0,get:function(){return r.sequenceExpression}}),Object.defineProperty(t,"SpreadElement",{enumerable:!0,get:function(){return r.spreadElement}}),Object.defineProperty(t,"SpreadProperty",{enumerable:!0,get:function(){return r.spreadProperty}}),Object.defineProperty(t,"StaticBlock",{enumerable:!0,get:function(){return r.staticBlock}}),Object.defineProperty(t,"StringLiteral",{enumerable:!0,get:function(){return r.stringLiteral}}),Object.defineProperty(t,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.stringLiteralTypeAnnotation}}),Object.defineProperty(t,"StringTypeAnnotation",{enumerable:!0,get:function(){return r.stringTypeAnnotation}}),Object.defineProperty(t,"Super",{enumerable:!0,get:function(){return r.super}}),Object.defineProperty(t,"SwitchCase",{enumerable:!0,get:function(){return r.switchCase}}),Object.defineProperty(t,"SwitchStatement",{enumerable:!0,get:function(){return r.switchStatement}}),Object.defineProperty(t,"SymbolTypeAnnotation",{enumerable:!0,get:function(){return r.symbolTypeAnnotation}}),Object.defineProperty(t,"TSAnyKeyword",{enumerable:!0,get:function(){return r.tsAnyKeyword}}),Object.defineProperty(t,"TSArrayType",{enumerable:!0,get:function(){return r.tsArrayType}}),Object.defineProperty(t,"TSAsExpression",{enumerable:!0,get:function(){return r.tsAsExpression}}),Object.defineProperty(t,"TSBigIntKeyword",{enumerable:!0,get:function(){return r.tsBigIntKeyword}}),Object.defineProperty(t,"TSBooleanKeyword",{enumerable:!0,get:function(){return r.tsBooleanKeyword}}),Object.defineProperty(t,"TSCallSignatureDeclaration",{enumerable:!0,get:function(){return r.tsCallSignatureDeclaration}}),Object.defineProperty(t,"TSConditionalType",{enumerable:!0,get:function(){return r.tsConditionalType}}),Object.defineProperty(t,"TSConstructSignatureDeclaration",{enumerable:!0,get:function(){return r.tsConstructSignatureDeclaration}}),Object.defineProperty(t,"TSConstructorType",{enumerable:!0,get:function(){return r.tsConstructorType}}),Object.defineProperty(t,"TSDeclareFunction",{enumerable:!0,get:function(){return r.tsDeclareFunction}}),Object.defineProperty(t,"TSDeclareMethod",{enumerable:!0,get:function(){return r.tsDeclareMethod}}),Object.defineProperty(t,"TSEnumDeclaration",{enumerable:!0,get:function(){return r.tsEnumDeclaration}}),Object.defineProperty(t,"TSEnumMember",{enumerable:!0,get:function(){return r.tsEnumMember}}),Object.defineProperty(t,"TSExportAssignment",{enumerable:!0,get:function(){return r.tsExportAssignment}}),Object.defineProperty(t,"TSExpressionWithTypeArguments",{enumerable:!0,get:function(){return r.tsExpressionWithTypeArguments}}),Object.defineProperty(t,"TSExternalModuleReference",{enumerable:!0,get:function(){return r.tsExternalModuleReference}}),Object.defineProperty(t,"TSFunctionType",{enumerable:!0,get:function(){return r.tsFunctionType}}),Object.defineProperty(t,"TSImportEqualsDeclaration",{enumerable:!0,get:function(){return r.tsImportEqualsDeclaration}}),Object.defineProperty(t,"TSImportType",{enumerable:!0,get:function(){return r.tsImportType}}),Object.defineProperty(t,"TSIndexSignature",{enumerable:!0,get:function(){return r.tsIndexSignature}}),Object.defineProperty(t,"TSIndexedAccessType",{enumerable:!0,get:function(){return r.tsIndexedAccessType}}),Object.defineProperty(t,"TSInferType",{enumerable:!0,get:function(){return r.tsInferType}}),Object.defineProperty(t,"TSInstantiationExpression",{enumerable:!0,get:function(){return r.tsInstantiationExpression}}),Object.defineProperty(t,"TSInterfaceBody",{enumerable:!0,get:function(){return r.tsInterfaceBody}}),Object.defineProperty(t,"TSInterfaceDeclaration",{enumerable:!0,get:function(){return r.tsInterfaceDeclaration}}),Object.defineProperty(t,"TSIntersectionType",{enumerable:!0,get:function(){return r.tsIntersectionType}}),Object.defineProperty(t,"TSIntrinsicKeyword",{enumerable:!0,get:function(){return r.tsIntrinsicKeyword}}),Object.defineProperty(t,"TSLiteralType",{enumerable:!0,get:function(){return r.tsLiteralType}}),Object.defineProperty(t,"TSMappedType",{enumerable:!0,get:function(){return r.tsMappedType}}),Object.defineProperty(t,"TSMethodSignature",{enumerable:!0,get:function(){return r.tsMethodSignature}}),Object.defineProperty(t,"TSModuleBlock",{enumerable:!0,get:function(){return r.tsModuleBlock}}),Object.defineProperty(t,"TSModuleDeclaration",{enumerable:!0,get:function(){return r.tsModuleDeclaration}}),Object.defineProperty(t,"TSNamedTupleMember",{enumerable:!0,get:function(){return r.tsNamedTupleMember}}),Object.defineProperty(t,"TSNamespaceExportDeclaration",{enumerable:!0,get:function(){return r.tsNamespaceExportDeclaration}}),Object.defineProperty(t,"TSNeverKeyword",{enumerable:!0,get:function(){return r.tsNeverKeyword}}),Object.defineProperty(t,"TSNonNullExpression",{enumerable:!0,get:function(){return r.tsNonNullExpression}}),Object.defineProperty(t,"TSNullKeyword",{enumerable:!0,get:function(){return r.tsNullKeyword}}),Object.defineProperty(t,"TSNumberKeyword",{enumerable:!0,get:function(){return r.tsNumberKeyword}}),Object.defineProperty(t,"TSObjectKeyword",{enumerable:!0,get:function(){return r.tsObjectKeyword}}),Object.defineProperty(t,"TSOptionalType",{enumerable:!0,get:function(){return r.tsOptionalType}}),Object.defineProperty(t,"TSParameterProperty",{enumerable:!0,get:function(){return r.tsParameterProperty}}),Object.defineProperty(t,"TSParenthesizedType",{enumerable:!0,get:function(){return r.tsParenthesizedType}}),Object.defineProperty(t,"TSPropertySignature",{enumerable:!0,get:function(){return r.tsPropertySignature}}),Object.defineProperty(t,"TSQualifiedName",{enumerable:!0,get:function(){return r.tsQualifiedName}}),Object.defineProperty(t,"TSRestType",{enumerable:!0,get:function(){return r.tsRestType}}),Object.defineProperty(t,"TSSatisfiesExpression",{enumerable:!0,get:function(){return r.tsSatisfiesExpression}}),Object.defineProperty(t,"TSStringKeyword",{enumerable:!0,get:function(){return r.tsStringKeyword}}),Object.defineProperty(t,"TSSymbolKeyword",{enumerable:!0,get:function(){return r.tsSymbolKeyword}}),Object.defineProperty(t,"TSThisType",{enumerable:!0,get:function(){return r.tsThisType}}),Object.defineProperty(t,"TSTupleType",{enumerable:!0,get:function(){return r.tsTupleType}}),Object.defineProperty(t,"TSTypeAliasDeclaration",{enumerable:!0,get:function(){return r.tsTypeAliasDeclaration}}),Object.defineProperty(t,"TSTypeAnnotation",{enumerable:!0,get:function(){return r.tsTypeAnnotation}}),Object.defineProperty(t,"TSTypeAssertion",{enumerable:!0,get:function(){return r.tsTypeAssertion}}),Object.defineProperty(t,"TSTypeLiteral",{enumerable:!0,get:function(){return r.tsTypeLiteral}}),Object.defineProperty(t,"TSTypeOperator",{enumerable:!0,get:function(){return r.tsTypeOperator}}),Object.defineProperty(t,"TSTypeParameter",{enumerable:!0,get:function(){return r.tsTypeParameter}}),Object.defineProperty(t,"TSTypeParameterDeclaration",{enumerable:!0,get:function(){return r.tsTypeParameterDeclaration}}),Object.defineProperty(t,"TSTypeParameterInstantiation",{enumerable:!0,get:function(){return r.tsTypeParameterInstantiation}}),Object.defineProperty(t,"TSTypePredicate",{enumerable:!0,get:function(){return r.tsTypePredicate}}),Object.defineProperty(t,"TSTypeQuery",{enumerable:!0,get:function(){return r.tsTypeQuery}}),Object.defineProperty(t,"TSTypeReference",{enumerable:!0,get:function(){return r.tsTypeReference}}),Object.defineProperty(t,"TSUndefinedKeyword",{enumerable:!0,get:function(){return r.tsUndefinedKeyword}}),Object.defineProperty(t,"TSUnionType",{enumerable:!0,get:function(){return r.tsUnionType}}),Object.defineProperty(t,"TSUnknownKeyword",{enumerable:!0,get:function(){return r.tsUnknownKeyword}}),Object.defineProperty(t,"TSVoidKeyword",{enumerable:!0,get:function(){return r.tsVoidKeyword}}),Object.defineProperty(t,"TaggedTemplateExpression",{enumerable:!0,get:function(){return r.taggedTemplateExpression}}),Object.defineProperty(t,"TemplateElement",{enumerable:!0,get:function(){return r.templateElement}}),Object.defineProperty(t,"TemplateLiteral",{enumerable:!0,get:function(){return r.templateLiteral}}),Object.defineProperty(t,"ThisExpression",{enumerable:!0,get:function(){return r.thisExpression}}),Object.defineProperty(t,"ThisTypeAnnotation",{enumerable:!0,get:function(){return r.thisTypeAnnotation}}),Object.defineProperty(t,"ThrowStatement",{enumerable:!0,get:function(){return r.throwStatement}}),Object.defineProperty(t,"TopicReference",{enumerable:!0,get:function(){return r.topicReference}}),Object.defineProperty(t,"TryStatement",{enumerable:!0,get:function(){return r.tryStatement}}),Object.defineProperty(t,"TupleExpression",{enumerable:!0,get:function(){return r.tupleExpression}}),Object.defineProperty(t,"TupleTypeAnnotation",{enumerable:!0,get:function(){return r.tupleTypeAnnotation}}),Object.defineProperty(t,"TypeAlias",{enumerable:!0,get:function(){return r.typeAlias}}),Object.defineProperty(t,"TypeAnnotation",{enumerable:!0,get:function(){return r.typeAnnotation}}),Object.defineProperty(t,"TypeCastExpression",{enumerable:!0,get:function(){return r.typeCastExpression}}),Object.defineProperty(t,"TypeParameter",{enumerable:!0,get:function(){return r.typeParameter}}),Object.defineProperty(t,"TypeParameterDeclaration",{enumerable:!0,get:function(){return r.typeParameterDeclaration}}),Object.defineProperty(t,"TypeParameterInstantiation",{enumerable:!0,get:function(){return r.typeParameterInstantiation}}),Object.defineProperty(t,"TypeofTypeAnnotation",{enumerable:!0,get:function(){return r.typeofTypeAnnotation}}),Object.defineProperty(t,"UnaryExpression",{enumerable:!0,get:function(){return r.unaryExpression}}),Object.defineProperty(t,"UnionTypeAnnotation",{enumerable:!0,get:function(){return r.unionTypeAnnotation}}),Object.defineProperty(t,"UpdateExpression",{enumerable:!0,get:function(){return r.updateExpression}}),Object.defineProperty(t,"V8IntrinsicIdentifier",{enumerable:!0,get:function(){return r.v8IntrinsicIdentifier}}),Object.defineProperty(t,"VariableDeclaration",{enumerable:!0,get:function(){return r.variableDeclaration}}),Object.defineProperty(t,"VariableDeclarator",{enumerable:!0,get:function(){return r.variableDeclarator}}),Object.defineProperty(t,"Variance",{enumerable:!0,get:function(){return r.variance}}),Object.defineProperty(t,"VoidTypeAnnotation",{enumerable:!0,get:function(){return r.voidTypeAnnotation}}),Object.defineProperty(t,"WhileStatement",{enumerable:!0,get:function(){return r.whileStatement}}),Object.defineProperty(t,"WithStatement",{enumerable:!0,get:function(){return r.withStatement}}),Object.defineProperty(t,"YieldExpression",{enumerable:!0,get:function(){return r.yieldExpression}});var r=n(53376)},72750:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];for(let n=0;n<e.children.length;n++){let i=e.children[n];(0,r.isJSXText)(i)?(0,a.default)(i,t):((0,r.isJSXExpressionContainer)(i)&&(i=i.expression),(0,r.isJSXEmptyExpression)(i)||t.push(i))}return t};var r=n(39369),a=n(77782)},65696:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=e.map((e=>(0,i.isTSTypeAnnotation)(e)?e.typeAnnotation:e)),n=(0,a.default)(t);return 1===n.length?n[0]:(0,r.tsUnionType)(n)};var r=n(53376),a=n(83886),i=n(39369)},23553:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=a.BUILDER_KEYS[e.type];for(const n of t)(0,r.default)(e,n,e[n]);return e};var r=n(8894),a=n(7139)},19762:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1)};var r=n(31124)},15796:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)};var r=n(31124)},47393:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!0,!0)};var r=n(31124)},31124:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0,n=!1){return l(e,t,n,new Map)};var r=n(1969),a=n(39369);const i=Function.call.bind(Object.prototype.hasOwnProperty);function s(e,t,n,r){return e&&"string"==typeof e.type?l(e,t,n,r):e}function o(e,t,n,r){return Array.isArray(e)?e.map((e=>s(e,t,n,r))):s(e,t,n,r)}function l(e,t=!0,n=!1,s){if(!e)return e;const{type:l}=e,c={type:e.type};if((0,a.isIdentifier)(e))c.name=e.name,i(e,"optional")&&"boolean"==typeof e.optional&&(c.optional=e.optional),i(e,"typeAnnotation")&&(c.typeAnnotation=t?o(e.typeAnnotation,!0,n,s):e.typeAnnotation);else{if(!i(r.NODE_FIELDS,l))throw new Error(`Unknown node type: "${l}"`);for(const u of Object.keys(r.NODE_FIELDS[l]))i(e,u)&&(c[u]=t?(0,a.isFile)(e)&&"comments"===u?p(e.comments,t,n,s):o(e[u],!0,n,s):e[u])}return i(e,"loc")&&(c.loc=n?null:e.loc),i(e,"leadingComments")&&(c.leadingComments=p(e.leadingComments,t,n,s)),i(e,"innerComments")&&(c.innerComments=p(e.innerComments,t,n,s)),i(e,"trailingComments")&&(c.trailingComments=p(e.trailingComments,t,n,s)),i(e,"extra")&&(c.extra=Object.assign({},e.extra)),c}function p(e,t,n,r){return e&&t?e.map((e=>{const t=r.get(e);if(t)return t;const{type:a,value:i,loc:s}=e,o={type:a,value:i,loc:s};return n&&(o.loc=null),r.set(e,o),o})):e}},83076:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1,!0)};var r=n(31124)},44689:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,a){return(0,r.default)(e,t,[{type:a?"CommentLine":"CommentBlock",value:n}])};var r=n(37442)},37442:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!n||!e)return e;const r=`${t}Comments`;return e[r]?"leading"===t?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n,e}},78470:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("innerComments",e,t)};var r=n(98003)},31684:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("leadingComments",e,t)};var r=n(98003)},49477:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("trailingComments",e,t)};var r=n(98003)},24412:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,t),(0,a.default)(e,t),(0,i.default)(e,t),e};var r=n(49477),a=n(31684),i=n(78470)},50614:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return r.COMMENT_KEYS.forEach((t=>{e[t]=null})),e};var r=n(95520)},36495:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WHILE_TYPES=t.USERWHITESPACABLE_TYPES=t.UNARYLIKE_TYPES=t.TYPESCRIPT_TYPES=t.TSTYPE_TYPES=t.TSTYPEELEMENT_TYPES=t.TSENTITYNAME_TYPES=t.TSBASETYPE_TYPES=t.TERMINATORLESS_TYPES=t.STATEMENT_TYPES=t.STANDARDIZED_TYPES=t.SCOPABLE_TYPES=t.PUREISH_TYPES=t.PROPERTY_TYPES=t.PRIVATE_TYPES=t.PATTERN_TYPES=t.PATTERNLIKE_TYPES=t.OBJECTMEMBER_TYPES=t.MODULESPECIFIER_TYPES=t.MODULEDECLARATION_TYPES=t.MISCELLANEOUS_TYPES=t.METHOD_TYPES=t.LVAL_TYPES=t.LOOP_TYPES=t.LITERAL_TYPES=t.JSX_TYPES=t.IMPORTOREXPORTDECLARATION_TYPES=t.IMMUTABLE_TYPES=t.FUNCTION_TYPES=t.FUNCTIONPARENT_TYPES=t.FOR_TYPES=t.FORXSTATEMENT_TYPES=t.FLOW_TYPES=t.FLOWTYPE_TYPES=t.FLOWPREDICATE_TYPES=t.FLOWDECLARATION_TYPES=t.FLOWBASEANNOTATION_TYPES=t.EXPRESSION_TYPES=t.EXPRESSIONWRAPPER_TYPES=t.EXPORTDECLARATION_TYPES=t.ENUMMEMBER_TYPES=t.ENUMBODY_TYPES=t.DECLARATION_TYPES=t.CONDITIONAL_TYPES=t.COMPLETIONSTATEMENT_TYPES=t.CLASS_TYPES=t.BLOCK_TYPES=t.BLOCKPARENT_TYPES=t.BINARY_TYPES=t.ACCESSOR_TYPES=void 0;var r=n(1969);const a=r.FLIPPED_ALIAS_KEYS.Standardized;t.STANDARDIZED_TYPES=a;const i=r.FLIPPED_ALIAS_KEYS.Expression;t.EXPRESSION_TYPES=i;const s=r.FLIPPED_ALIAS_KEYS.Binary;t.BINARY_TYPES=s;const o=r.FLIPPED_ALIAS_KEYS.Scopable;t.SCOPABLE_TYPES=o;const l=r.FLIPPED_ALIAS_KEYS.BlockParent;t.BLOCKPARENT_TYPES=l;const p=r.FLIPPED_ALIAS_KEYS.Block;t.BLOCK_TYPES=p;const c=r.FLIPPED_ALIAS_KEYS.Statement;t.STATEMENT_TYPES=c;const u=r.FLIPPED_ALIAS_KEYS.Terminatorless;t.TERMINATORLESS_TYPES=u;const d=r.FLIPPED_ALIAS_KEYS.CompletionStatement;t.COMPLETIONSTATEMENT_TYPES=d;const f=r.FLIPPED_ALIAS_KEYS.Conditional;t.CONDITIONAL_TYPES=f;const y=r.FLIPPED_ALIAS_KEYS.Loop;t.LOOP_TYPES=y;const m=r.FLIPPED_ALIAS_KEYS.While;t.WHILE_TYPES=m;const h=r.FLIPPED_ALIAS_KEYS.ExpressionWrapper;t.EXPRESSIONWRAPPER_TYPES=h;const T=r.FLIPPED_ALIAS_KEYS.For;t.FOR_TYPES=T;const S=r.FLIPPED_ALIAS_KEYS.ForXStatement;t.FORXSTATEMENT_TYPES=S;const b=r.FLIPPED_ALIAS_KEYS.Function;t.FUNCTION_TYPES=b;const E=r.FLIPPED_ALIAS_KEYS.FunctionParent;t.FUNCTIONPARENT_TYPES=E;const P=r.FLIPPED_ALIAS_KEYS.Pureish;t.PUREISH_TYPES=P;const x=r.FLIPPED_ALIAS_KEYS.Declaration;t.DECLARATION_TYPES=x;const g=r.FLIPPED_ALIAS_KEYS.PatternLike;t.PATTERNLIKE_TYPES=g;const A=r.FLIPPED_ALIAS_KEYS.LVal;t.LVAL_TYPES=A;const v=r.FLIPPED_ALIAS_KEYS.TSEntityName;t.TSENTITYNAME_TYPES=v;const O=r.FLIPPED_ALIAS_KEYS.Literal;t.LITERAL_TYPES=O;const I=r.FLIPPED_ALIAS_KEYS.Immutable;t.IMMUTABLE_TYPES=I;const N=r.FLIPPED_ALIAS_KEYS.UserWhitespacable;t.USERWHITESPACABLE_TYPES=N;const D=r.FLIPPED_ALIAS_KEYS.Method;t.METHOD_TYPES=D;const C=r.FLIPPED_ALIAS_KEYS.ObjectMember;t.OBJECTMEMBER_TYPES=C;const w=r.FLIPPED_ALIAS_KEYS.Property;t.PROPERTY_TYPES=w;const L=r.FLIPPED_ALIAS_KEYS.UnaryLike;t.UNARYLIKE_TYPES=L;const j=r.FLIPPED_ALIAS_KEYS.Pattern;t.PATTERN_TYPES=j;const _=r.FLIPPED_ALIAS_KEYS.Class;t.CLASS_TYPES=_;const M=r.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration;t.IMPORTOREXPORTDECLARATION_TYPES=M;const k=r.FLIPPED_ALIAS_KEYS.ExportDeclaration;t.EXPORTDECLARATION_TYPES=k;const B=r.FLIPPED_ALIAS_KEYS.ModuleSpecifier;t.MODULESPECIFIER_TYPES=B;const F=r.FLIPPED_ALIAS_KEYS.Accessor;t.ACCESSOR_TYPES=F;const R=r.FLIPPED_ALIAS_KEYS.Private;t.PRIVATE_TYPES=R;const K=r.FLIPPED_ALIAS_KEYS.Flow;t.FLOW_TYPES=K;const V=r.FLIPPED_ALIAS_KEYS.FlowType;t.FLOWTYPE_TYPES=V;const Y=r.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation;t.FLOWBASEANNOTATION_TYPES=Y;const U=r.FLIPPED_ALIAS_KEYS.FlowDeclaration;t.FLOWDECLARATION_TYPES=U;const X=r.FLIPPED_ALIAS_KEYS.FlowPredicate;t.FLOWPREDICATE_TYPES=X;const J=r.FLIPPED_ALIAS_KEYS.EnumBody;t.ENUMBODY_TYPES=J;const W=r.FLIPPED_ALIAS_KEYS.EnumMember;t.ENUMMEMBER_TYPES=W;const q=r.FLIPPED_ALIAS_KEYS.JSX;t.JSX_TYPES=q;const $=r.FLIPPED_ALIAS_KEYS.Miscellaneous;t.MISCELLANEOUS_TYPES=$;const G=r.FLIPPED_ALIAS_KEYS.TypeScript;t.TYPESCRIPT_TYPES=G;const z=r.FLIPPED_ALIAS_KEYS.TSTypeElement;t.TSTYPEELEMENT_TYPES=z;const H=r.FLIPPED_ALIAS_KEYS.TSType;t.TSTYPE_TYPES=H;const Q=r.FLIPPED_ALIAS_KEYS.TSBaseType;t.TSBASETYPE_TYPES=Q;const Z=M;t.MODULEDECLARATION_TYPES=Z},95520:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UPDATE_OPERATORS=t.UNARY_OPERATORS=t.STRING_UNARY_OPERATORS=t.STATEMENT_OR_BLOCK_KEYS=t.NUMBER_UNARY_OPERATORS=t.NUMBER_BINARY_OPERATORS=t.NOT_LOCAL_BINDING=t.LOGICAL_OPERATORS=t.INHERIT_KEYS=t.FOR_INIT_KEYS=t.FLATTENABLE_KEYS=t.EQUALITY_BINARY_OPERATORS=t.COMPARISON_BINARY_OPERATORS=t.COMMENT_KEYS=t.BOOLEAN_UNARY_OPERATORS=t.BOOLEAN_NUMBER_BINARY_OPERATORS=t.BOOLEAN_BINARY_OPERATORS=t.BLOCK_SCOPED_SYMBOL=t.BINARY_OPERATORS=t.ASSIGNMENT_OPERATORS=void 0,t.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],t.FLATTENABLE_KEYS=["body","expressions"],t.FOR_INIT_KEYS=["left","init"],t.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const n=["||","&&","??"];t.LOGICAL_OPERATORS=n,t.UPDATE_OPERATORS=["++","--"];const r=[">","<",">=","<="];t.BOOLEAN_NUMBER_BINARY_OPERATORS=r;const a=["==","===","!=","!=="];t.EQUALITY_BINARY_OPERATORS=a;const i=[...a,"in","instanceof"];t.COMPARISON_BINARY_OPERATORS=i;const s=[...i,...r];t.BOOLEAN_BINARY_OPERATORS=s;const o=["-","/","%","*","**","&","|",">>",">>>","<<","^"];t.NUMBER_BINARY_OPERATORS=o;const l=["+",...o,...s,"|>"];t.BINARY_OPERATORS=l;const p=["=","+=",...o.map((e=>e+"=")),...n.map((e=>e+"="))];t.ASSIGNMENT_OPERATORS=p;const c=["delete","!"];t.BOOLEAN_UNARY_OPERATORS=c;const u=["+","-","~"];t.NUMBER_UNARY_OPERATORS=u;const d=["typeof"];t.STRING_UNARY_OPERATORS=d;const f=["void","throw",...c,...u,...d];t.UNARY_OPERATORS=f,t.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};const y=Symbol.for("var used to be block scoped");t.BLOCK_SCOPED_SYMBOL=y;const m=Symbol.for("should not be considered a local binding");t.NOT_LOCAL_BINDING=m},69590:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t="body"){const n=(0,r.default)(e[t],e);return e[t]=n,n};var r=n(28084)},21287:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,o){const l=[];let p=!0;for(const c of t)if((0,a.isEmptyStatement)(c)||(p=!1),(0,a.isExpression)(c))l.push(c);else if((0,a.isExpressionStatement)(c))l.push(c.expression);else if((0,a.isVariableDeclaration)(c)){if("var"!==c.kind)return;for(const e of c.declarations){const t=(0,r.default)(e);for(const e of Object.keys(t))o.push({kind:c.kind,id:(0,s.default)(t[e])});e.init&&l.push((0,i.assignmentExpression)("=",e.id,e.init))}p=!0}else if((0,a.isIfStatement)(c)){const t=c.consequent?e([c.consequent],n,o):n.buildUndefinedNode(),r=c.alternate?e([c.alternate],n,o):n.buildUndefinedNode();if(!t||!r)return;l.push((0,i.conditionalExpression)(c.test,t,r))}else if((0,a.isBlockStatement)(c)){const t=e(c.body,n,o);if(!t)return;l.push(t)}else{if(!(0,a.isEmptyStatement)(c))return;0===t.indexOf(c)&&(p=!0)}return p&&l.push(n.buildUndefinedNode()),1===l.length?l[0]:(0,i.sequenceExpression)(l)};var r=n(8736),a=n(39369),i=n(53376),s=n(31124)},11280:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"eval"!==(e=(0,r.default)(e))&&"arguments"!==e||(e="_"+e),e};var r=n(70845)},28084:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.isBlockStatement)(e))return e;let n=[];return(0,r.isEmptyStatement)(e)?n=[]:((0,r.isStatement)(e)||(e=(0,r.isFunction)(t)?(0,a.returnStatement)(e):(0,a.expressionStatement)(e)),n=[e]),(0,a.blockStatement)(n)};var r=n(39369),a=n(53376)},95518:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=e.key||e.property){return!e.computed&&(0,r.isIdentifier)(t)&&(t=(0,a.stringLiteral)(t.name)),t};var r=n(39369),a=n(53376)},34103:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(39369);t.default=function(e){if((0,r.isExpressionStatement)(e)&&(e=e.expression),(0,r.isExpression)(e))return e;if((0,r.isClass)(e)?e.type="ClassExpression":(0,r.isFunction)(e)&&(e.type="FunctionExpression"),!(0,r.isExpression)(e))throw new Error(`cannot turn ${e.type} to an expression`);return e}},70845:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e+="";let t="";for(const n of e)t+=(0,a.isIdentifierChar)(n.codePointAt(0))?n:"-";return t=t.replace(/^[-0-9]+/,""),t=t.replace(/[-\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""})),(0,r.default)(t)||(t=`_${t}`),t||"_"};var r=n(43226),a=n(29649)},59030:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;var r=n(39369),a=n(31124),i=n(1194);function s(e,t=e.key){let n;return"method"===e.kind?s.increment()+"":(n=(0,r.isIdentifier)(t)?t.name:(0,r.isStringLiteral)(t)?JSON.stringify(t.value):JSON.stringify((0,i.default)((0,a.default)(t))),e.computed&&(n=`[${n}]`),e.static&&(n=`static:${n}`),n)}s.uid=0,s.increment=function(){return s.uid>=Number.MAX_SAFE_INTEGER?s.uid=0:s.uid++}},69708:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(null==e||!e.length)return;const n=[],a=(0,r.default)(e,t,n);if(a){for(const e of n)t.push(e);return a}};var r=n(21287)},43208:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(39369),a=n(53376);t.default=function(e,t){if((0,r.isStatement)(e))return e;let n,i=!1;if((0,r.isClass)(e))i=!0,n="ClassDeclaration";else if((0,r.isFunction)(e))i=!0,n="FunctionDeclaration";else if((0,r.isAssignmentExpression)(e))return(0,a.expressionStatement)(e);if(i&&!e.id&&(n=!1),!n){if(t)return!1;throw new Error(`cannot turn ${e.type} to a statement`)}return e.type=n,e}},79771:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(43226),a=n(53376);t.default=function e(t){if(void 0===t)return(0,a.identifier)("undefined");if(!0===t||!1===t)return(0,a.booleanLiteral)(t);if(null===t)return(0,a.nullLiteral)();if("string"==typeof t)return(0,a.stringLiteral)(t);if("number"==typeof t){let e;if(Number.isFinite(t))e=(0,a.numericLiteral)(Math.abs(t));else{let n;n=Number.isNaN(t)?(0,a.numericLiteral)(0):(0,a.numericLiteral)(1),e=(0,a.binaryExpression)("/",n,(0,a.numericLiteral)(0))}return(t<0||Object.is(t,-0))&&(e=(0,a.unaryExpression)("-",e)),e}if(function(e){return"[object RegExp]"===i(e)}(t)){const e=t.source,n=t.toString().match(/\/([a-z]+|)$/)[1];return(0,a.regExpLiteral)(e,n)}if(Array.isArray(t))return(0,a.arrayExpression)(t.map(e));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(t)){const n=[];for(const i of Object.keys(t)){let s;s=(0,r.default)(i)?(0,a.identifier)(i):(0,a.stringLiteral)(i),n.push((0,a.objectProperty)(s,e(t[i])))}return(0,a.objectExpression)(n)}throw new Error("don't know how to turn this value into a node")};const i=Function.call.bind(Object.prototype.toString)},85365:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.patternLikeCommon=t.functionTypeAnnotationCommon=t.functionDeclarationCommon=t.functionCommon=t.classMethodOrPropertyCommon=t.classMethodOrDeclareMethodCommon=void 0;var r=n(67566),a=n(43226),i=n(29649),s=n(37648),o=n(95520),l=n(79114);const p=(0,l.defineAliasedType)("Standardized");p("ArrayExpression",{fields:{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","Expression","SpreadElement"))),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),p("AssignmentExpression",{fields:{operator:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertValueType)("string");const e=(0,l.assertOneOf)(...o.ASSIGNMENT_OPERATORS),t=(0,l.assertOneOf)("=");return function(n,a,i){((0,r.default)("Pattern",n.left)?t:e)(n,a,i)}}()},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")},right:{validate:(0,l.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),p("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,l.assertOneOf)(...o.BINARY_OPERATORS)},left:{validate:function(){const e=(0,l.assertNodeType)("Expression"),t=(0,l.assertNodeType)("Expression","PrivateName");return Object.assign((function(n,r,a){("in"===n.operator?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","PrivateName"]})}()},right:{validate:(0,l.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),p("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("Directive",{visitor:["value"],fields:{value:{validate:(0,l.assertNodeType)("DirectiveLiteral")}}}),p("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block","Statement"]}),p("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("CallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,l.assertNodeType)("Expression","Super","V8IntrinsicIdentifier")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}},{typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),p("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),p("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Expression")},alternate:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),p("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("DebuggerStatement",{aliases:["Statement"]}),p("DoWhileStatement",{visitor:["test","body"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),p("EmptyStatement",{aliases:["Statement"]}),p("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),p("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,l.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertEach)((0,l.assertNodeType)("CommentBlock","CommentLine")):Object.assign((()=>{}),{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,l.assertEach)(Object.assign((()=>{}),{type:"any"})),optional:!0}}}),p("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,l.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},update:{validate:(0,l.assertNodeType)("Expression"),optional:!0},body:{validate:(0,l.assertNodeType)("Statement")}}});const c=()=>({params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement")))},generator:{default:!1},async:{default:!1}});t.functionCommon=c;const u=()=>({returnType:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}});t.functionTypeAnnotationCommon=u;const d=()=>Object.assign({},c(),{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}});t.functionDeclarationCommon=d,p("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","params","body","returnType","typeParameters"],fields:Object.assign({},d(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return()=>{};const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){(0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}()}),p("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const f=()=>({typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.patternLikeCommon=f,p("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","PatternLike","LVal","TSEntityName"],fields:Object.assign({},f(),{name:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&!(0,a.default)(n,!1))throw new TypeError(`"${n}" is not a valid identifier name`)}),{type:"string"}))}}),validate(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const a=/\.(\w+)$/.exec(t);if(!a)return;const[,s]=a,o={computed:!1};if("property"===s){if((0,r.default)("MemberExpression",e,o))return;if((0,r.default)("OptionalMemberExpression",e,o))return}else if("key"===s){if((0,r.default)("Property",e,o))return;if((0,r.default)("Method",e,o))return}else if("exported"===s){if((0,r.default)("ExportSpecifier",e))return}else if("imported"===s){if((0,r.default)("ImportSpecifier",e,{imported:n}))return}else if("meta"===s&&(0,r.default)("MetaProperty",e,{meta:n}))return;if(((0,i.isKeyword)(n.name)||(0,i.isReservedWord)(n.name,!1))&&"this"!==n.name)throw new TypeError(`"${n.name}" is not a valid identifier`)}}),p("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,l.assertNodeType)("Statement")}}}),p("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,l.assertNodeType)("Identifier")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("StringLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,l.chain)((0,l.assertValueType)("number"),Object.assign((function(e,t,n){(1/n<0||!Number.isFinite(n))&&new Error(`NumericLiterals must be non-negative finite numbers. You can use t.valueToNode(${n}) instead.`)}),{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),p("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,l.assertValueType)("string")},flags:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const r=/[^gimsuy]/.exec(n);if(r)throw new TypeError(`"${r[0]}" is not a valid RegExp flag`)}),{type:"string"})),default:""}}}),p("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,l.assertOneOf)(...o.LOGICAL_OPERATORS)},left:{validate:(0,l.assertNodeType)("Expression")},right:{validate:(0,l.assertNodeType)("Expression")}}}),p("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal"],fields:Object.assign({object:{validate:(0,l.assertNodeType)("Expression","Super")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier","PrivateName"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","PrivateName"],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}})}),p("NewExpression",{inherits:"CallExpression"}),p("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceFile:{validate:(0,l.assertValueType)("string")},sourceType:{validate:(0,l.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,l.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block"]}),p("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ObjectMethod","ObjectProperty","SpreadElement")))}}}),p("ObjectMethod",{builder:["kind","key","params","body","computed","generator","async"],fields:Object.assign({},c(),u(),{kind:Object.assign({validate:(0,l.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],n}()},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}}),visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]}),p("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],fields:{computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]})}()},value:{validate:(0,l.assertNodeType)("Expression","PatternLike")},shorthand:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true")}),{type:"boolean"}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!(0,r.default)("Identifier",e.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")})),default:!1},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}},visitor:["key","value","decorators"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:function(){const e=(0,l.assertNodeType)("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),t=(0,l.assertNodeType)("Expression");return function(n,a,i){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ObjectPattern",n)?e:t)(i,"value",i.value)}}()}),p("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["LVal","PatternLike"],deprecatedAlias:"RestProperty",fields:Object.assign({},f(),{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")}}),validate(e,t){if(!process.env.BABEL_TYPES_8_BREAKING)return;const n=/(\w+)\[(\d+)\]/.exec(t);if(!n)throw new Error("Internal Babel error: malformed key.");const[,r,a]=n;if(e[r].length>+a+1)throw new TypeError(`RestElement must be last element of ${r}`)}}),p("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression"),optional:!0}}}),p("SequenceExpression",{visitor:["expressions"],fields:{expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression")))}},aliases:["Expression"]}),p("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}}}),p("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},consequent:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}}}),p("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,l.assertNodeType)("Expression")},cases:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("SwitchCase")))}}}),p("ThisExpression",{aliases:["Expression"]}),p("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:(0,l.chain)((0,l.assertNodeType)("BlockStatement"),Object.assign((function(e){if(process.env.BABEL_TYPES_8_BREAKING&&!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")}),{oneOfNodeTypes:["BlockStatement"]}))},handler:{optional:!0,validate:(0,l.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,l.assertNodeType)("BlockStatement")}}}),p("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),p("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression"):(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),p("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},kind:{validate:(0,l.assertOneOf)("var","let","const","using","await using")},declarations:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("VariableDeclarator")))}},validate(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&(0,r.default)("ForXStatement",e,{left:n})&&1!==n.declarations.length)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${e.type}`)}}),p("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("LVal");const e=(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),t=(0,l.assertNodeType)("Identifier");return function(n,r,a){(n.init?e:t)(n,r,a)}}()},definite:{optional:!0,validate:(0,l.assertValueType)("boolean")},init:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{left:{validate:(0,l.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,l.assertNodeType)("Expression")},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}})}),p("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","PatternLike","LVal")))}})}),p("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["params","body","returnType","typeParameters"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{expression:{validate:(0,l.assertValueType)("boolean")},body:{validate:(0,l.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),p("ClassBody",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")))}}}),p("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0}}}),p("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0}},validate:function(){const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id))}}()}),p("ExportAllDeclaration",{builder:["source"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{source:{validate:(0,l.assertNodeType)("StringLiteral")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value")),attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))}}}),p("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{validate:(0,l.assertNodeType)("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("value"))}}),p("ExportNamedDeclaration",{builder:["declaration","specifiers","source"],visitor:["declaration","specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{optional:!0,validate:(0,l.chain)((0,l.assertNodeType)("Declaration"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration")}),{oneOfNodeTypes:["Declaration"]}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.source)throw new TypeError("Cannot export a declaration from a source")}))},attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},specifiers:{default:[],validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)(function(){const e=(0,l.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),t=(0,l.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?function(n,r,a){(n.source?e:t)(n,r,a)}:e}()))},source:{validate:(0,l.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value"))}}),p("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},exported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,l.assertOneOf)("type","value"),optional:!0}}}),p("ForOfStatement",{visitor:["left","right","body"],builder:["left","right","body","await"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("VariableDeclaration","LVal");const e=(0,l.assertNodeType)("VariableDeclaration"),t=(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return function(n,a,i){(0,r.default)("VariableDeclaration",i)?e(n,a,i):t(n,a,i)}}()},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")},await:{default:!1}}}),p("ImportDeclaration",{builder:["specifiers","source"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:{attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},module:{optional:!0,validate:(0,l.assertValueType)("boolean")},specifiers:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier")))},source:{validate:(0,l.assertNodeType)("StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportSpecifier",{visitor:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},imported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:(0,l.chain)((0,l.assertNodeType)("Identifier"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;let a;switch(n.name){case"function":a="sent";break;case"new":a="target";break;case"import":a="meta"}if(!(0,r.default)("Identifier",e.property,{name:a}))throw new TypeError("Unrecognised MetaProperty")}),{oneOfNodeTypes:["Identifier"]}))},property:{validate:(0,l.assertNodeType)("Identifier")}}});const y=()=>({abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,l.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}});t.classMethodOrPropertyCommon=y;const m=()=>Object.assign({},c(),y(),{params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement","TSParameterProperty")))},kind:{validate:(0,l.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,l.chain)((0,l.assertValueType)("string"),(0,l.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.classMethodOrDeclareMethodCommon=m,p("ClassMethod",{aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["key","params","body","decorators","returnType","typeParameters"],fields:Object.assign({},m(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("ObjectPattern",{visitor:["properties","typeAnnotation","decorators"],builder:["properties"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("RestElement","ObjectProperty")))}})}),p("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Super",{aliases:["Expression"]}),p("TaggedTemplateExpression",{visitor:["tag","quasi","typeParameters"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,l.assertNodeType)("Expression")},quasi:{validate:(0,l.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),p("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,l.chain)((0,l.assertShape)({raw:{validate:(0,l.assertValueType)("string")},cooked:{validate:(0,l.assertValueType)("string"),optional:!0}}),(function(e){const t=e.value.raw;let n=!1;const r=()=>{throw new Error("Internal @babel/types error.")},{str:a,firstInvalidLoc:i}=(0,s.readStringContents)("template",t,0,0,0,{unterminated(){n=!0},strictNumericEscape:r,invalidEscapeSequence:r,numericSeparatorInEscapeSequence:r,unexpectedNumericSeparator:r,invalidDigit:r,invalidCodePoint:r});if(!n)throw new Error("Invalid raw");e.value.cooked=i?null:a}))},tail:{default:!1}}}),p("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TemplateElement")))},expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","TSType")),(function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)}))}}}),p("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")}),{type:"boolean"})),default:!1},argument:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Import",{aliases:["Expression"]}),p("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,l.assertNodeType)("Identifier")}}}),p("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier"]})}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")}}}),p("OptionalCallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:{callee:{validate:(0,l.assertNodeType)("Expression")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")},typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}}}),p("ClassProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"],fields:Object.assign({},y(),{value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassAccessorProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"],fields:Object.assign({},y(),{key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassPrivateProperty",{visitor:["key","value","decorators","typeAnnotation"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,l.assertNodeType)("PrivateName")},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},static:{validate:(0,l.assertValueType)("boolean"),default:!1},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}}}),p("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},m(),u(),{kind:{validate:(0,l.assertOneOf)("get","set","method"),default:"method"},key:{validate:(0,l.assertNodeType)("PrivateName")},body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")}}}),p("StaticBlock",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","FunctionParent"]})},44360:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEPRECATED_ALIASES=void 0,t.DEPRECATED_ALIASES={ModuleDeclaration:"ImportOrExportDeclaration"}},20812:(e,t,n)=>{"use strict";var r=n(79114);(0,r.default)("ArgumentPlaceholder",{}),(0,r.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,r.assertNodeType)("Expression")},callee:{validate:(0,r.assertNodeType)("Expression")}}:{object:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})}}}),(0,r.default)("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,r.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,r.assertNodeType)("StringLiteral")}}}),(0,r.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),(0,r.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,r.assertNodeType)("BlockStatement")},async:{validate:(0,r.assertValueType)("boolean"),default:!1}}}),(0,r.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,r.assertNodeType)("Identifier")}}}),(0,r.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("ObjectProperty","SpreadElement")))}}}),(0,r.default)("TupleExpression",{fields:{elements:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Expression","SpreadElement"))),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,r.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,r.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,r.assertNodeType)("Program")}},aliases:["Expression"]}),(0,r.default)("TopicReference",{aliases:["Expression"]}),(0,r.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]})},21646:(e,t,n)=>{"use strict";var r=n(79114);const a=(0,r.defineAliasedType)("Flow"),i=e=>{const t="DeclareClass"===e;a(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends",...t?["mixins","implements"]:[],"body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends"))},t?{mixins:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),implements:(0,r.validateOptional)((0,r.arrayOfType)("ClassImplements"))}:{},{body:(0,r.validateType)("ObjectTypeAnnotation")})})};a("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,r.validateType)("FlowType")}}),a("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("DeclareClass"),a("DeclareFunction",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),predicate:(0,r.validateOptionalType)("DeclaredPredicate")}}),i("DeclareInterface"),a("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)("BlockStatement"),kind:(0,r.validateOptional)((0,r.assertOneOf)("CommonJS","ES"))}}),a("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateOptionalType)("FlowType")}}),a("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier")}}),a("DeclareExportDeclaration",{visitor:["declaration","specifiers","source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{declaration:(0,r.validateOptionalType)("Flow"),specifiers:(0,r.validateOptional)((0,r.arrayOfType)(["ExportSpecifier","ExportNamespaceSpecifier"])),source:(0,r.validateOptionalType)("StringLiteral"),default:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("DeclareExportAllDeclaration",{visitor:["source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{source:(0,r.validateType)("StringLiteral"),exportKind:(0,r.validateOptional)((0,r.assertOneOf)("type","value"))}}),a("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,r.validateType)("Flow")}}),a("ExistsTypeAnnotation",{aliases:["FlowType"]}),a("FunctionTypeAnnotation",{visitor:["typeParameters","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),params:(0,r.validate)((0,r.arrayOfType)("FunctionTypeParam")),rest:(0,r.validateOptionalType)("FunctionTypeParam"),this:(0,r.validateOptionalType)("FunctionTypeParam"),returnType:(0,r.validateType)("FlowType")}}),a("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,r.validateOptionalType)("Identifier"),typeAnnotation:(0,r.validateType)("FlowType"),optional:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),a("InferredPredicate",{aliases:["FlowPredicate"]}),a("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("InterfaceDeclaration"),a("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),body:(0,r.validateType)("ObjectTypeAnnotation")}}),a("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("number"))}}),a("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,r.validate)((0,r.arrayOfType)(["ObjectTypeProperty","ObjectTypeSpreadProperty"])),indexers:{validate:(0,r.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,r.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,r.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,r.assertValueType)("boolean"),default:!1},inexact:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeInternalSlot",{visitor:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateType)("Identifier"),value:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean")),static:(0,r.validate)((0,r.assertValueType)("boolean")),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeIndexer",{visitor:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateOptionalType)("Identifier"),key:(0,r.validateType)("FlowType"),value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance")}}),a("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,r.validateType)(["Identifier","StringLiteral"]),value:(0,r.validateType)("FlowType"),kind:(0,r.validate)((0,r.assertOneOf)("init","get","set")),static:(0,r.validate)((0,r.assertValueType)("boolean")),proto:(0,r.validate)((0,r.assertValueType)("boolean")),optional:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance"),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,r.validateType)("FlowType")}}),a("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateType)("FlowType")}}),a("QualifiedTypeIdentifier",{visitor:["id","qualification"],fields:{id:(0,r.validateType)("Identifier"),qualification:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"])}}),a("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("string"))}}),a("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,r.validateType)("FlowType")}}),a("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,r.validate)((0,r.assertValueType)("string")),bound:(0,r.validateOptionalType)("TypeAnnotation"),default:(0,r.validateOptionalType)("FlowType"),variance:(0,r.validateOptionalType)("Variance")}}),a("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("TypeParameter"))}}),a("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("Variance",{builder:["kind"],fields:{kind:(0,r.validate)((0,r.assertOneOf)("minus","plus"))}}),a("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,r.validateType)("Identifier"),body:(0,r.validateType)(["EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody"])}}),a("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)(["EnumStringMember","EnumDefaultedMember"]),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumBooleanMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("BooleanLiteral")}}),a("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("NumericLiteral")}}),a("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("StringLiteral")}}),a("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),a("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType")}}),a("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean"))}})},1969:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ALIAS_KEYS",{enumerable:!0,get:function(){return a.ALIAS_KEYS}}),Object.defineProperty(t,"BUILDER_KEYS",{enumerable:!0,get:function(){return a.BUILDER_KEYS}}),Object.defineProperty(t,"DEPRECATED_ALIASES",{enumerable:!0,get:function(){return s.DEPRECATED_ALIASES}}),Object.defineProperty(t,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return a.DEPRECATED_KEYS}}),Object.defineProperty(t,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return a.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(t,"NODE_FIELDS",{enumerable:!0,get:function(){return a.NODE_FIELDS}}),Object.defineProperty(t,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return a.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(t,"PLACEHOLDERS",{enumerable:!0,get:function(){return i.PLACEHOLDERS}}),Object.defineProperty(t,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_ALIAS}}),Object.defineProperty(t,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_FLIPPED_ALIAS}}),t.TYPES=void 0,Object.defineProperty(t,"VISITOR_KEYS",{enumerable:!0,get:function(){return a.VISITOR_KEYS}});var r=n(53164);n(85365),n(21646),n(2229),n(45040),n(20812),n(12315);var a=n(79114),i=n(92412),s=n(44360);Object.keys(s.DEPRECATED_ALIASES).forEach((e=>{a.FLIPPED_ALIAS_KEYS[e]=a.FLIPPED_ALIAS_KEYS[s.DEPRECATED_ALIASES[e]]})),r(a.VISITOR_KEYS),r(a.ALIAS_KEYS),r(a.FLIPPED_ALIAS_KEYS),r(a.NODE_FIELDS),r(a.BUILDER_KEYS),r(a.DEPRECATED_KEYS),r(i.PLACEHOLDERS_ALIAS),r(i.PLACEHOLDERS_FLIPPED_ALIAS);const o=[].concat(Object.keys(a.VISITOR_KEYS),Object.keys(a.FLIPPED_ALIAS_KEYS),Object.keys(a.DEPRECATED_KEYS));t.TYPES=o},2229:(e,t,n)=>{"use strict";var r=n(79114);const a=(0,r.defineAliasedType)("JSX");a("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,r.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),a("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),a("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,r.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,r.assertNodeType)("JSXClosingElement")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}},{selfClosing:{validate:(0,r.assertValueType)("boolean"),optional:!0}})}),a("JSXEmptyExpression",{}),a("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression","JSXEmptyExpression")}}}),a("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}}),a("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,r.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,r.assertNodeType)("JSXIdentifier")},name:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","attributes"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXAttribute","JSXSpreadAttribute")))},typeParameters:{validate:(0,r.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),a("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}}}),a("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,r.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,r.assertNodeType)("JSXClosingFragment")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}}}),a("JSXOpeningFragment",{aliases:["Immutable"]}),a("JSXClosingFragment",{aliases:["Immutable"]})},45040:(e,t,n)=>{"use strict";var r=n(79114),a=n(92412);const i=(0,r.defineAliasedType)("Miscellaneous");i("Noop",{visitor:[]}),i("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:{name:{validate:(0,r.assertNodeType)("Identifier")},expectedNode:{validate:(0,r.assertOneOf)(...a.PLACEHOLDERS)}}}),i("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}})},92412:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PLACEHOLDERS_FLIPPED_ALIAS=t.PLACEHOLDERS_ALIAS=t.PLACEHOLDERS=void 0;var r=n(79114);const a=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"];t.PLACEHOLDERS=a;const i={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};t.PLACEHOLDERS_ALIAS=i;for(const e of a){const t=r.ALIAS_KEYS[e];null!=t&&t.length&&(i[e]=t)}const s={};t.PLACEHOLDERS_FLIPPED_ALIAS=s,Object.keys(i).forEach((e=>{i[e].forEach((t=>{Object.hasOwnProperty.call(s,t)||(s[t]=[]),s[t].push(e)}))}))},12315:(e,t,n)=>{"use strict";var r=n(79114),a=n(85365),i=n(67566);const s=(0,r.defineAliasedType)("TypeScript"),o=(0,r.assertValueType)("boolean"),l=()=>({returnType:{validate:(0,r.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,r.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}});s("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,r.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,r.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,r.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,r.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Decorator"))),optional:!0}}}),s("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},(0,a.functionDeclarationCommon)(),l())}),s("TSDeclareMethod",{visitor:["decorators","key","typeParameters","params","returnType"],fields:Object.assign({},(0,a.classMethodOrDeclareMethodCommon)(),l())}),s("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,r.validateType)("TSEntityName"),right:(0,r.validateType)("Identifier")}});const p=()=>({typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,r.validateArrayOfType)(["ArrayPattern","Identifier","ObjectPattern","RestElement"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}),c={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:p()};s("TSCallSignatureDeclaration",c),s("TSConstructSignatureDeclaration",c);const u=()=>({key:(0,r.validateType)("Expression"),computed:{default:!1},optional:(0,r.validateOptional)(o)});s("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation","initializer"],fields:Object.assign({},u(),{readonly:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),initializer:(0,r.validateOptionalType)("Expression"),kind:{validate:(0,r.assertOneOf)("get","set")}})}),s("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},p(),u(),{kind:{validate:(0,r.assertOneOf)("method","get","set")}})}),s("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,r.validateOptional)(o),static:(0,r.validateOptional)(o),parameters:(0,r.validateArrayOfType)("Identifier"),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}});const d=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const e of d)s(e,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});s("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const f={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};s("TSFunctionType",Object.assign({},f,{fields:p()})),s("TSConstructorType",Object.assign({},f,{fields:Object.assign({},p(),{abstract:(0,r.validateOptional)(o)})})),s("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,r.validateType)(["Identifier","TSThisType"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),asserts:(0,r.validateOptional)(o)}}),s("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:{exprName:(0,r.validateType)(["TSEntityName","TSImportType"]),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,r.validateType)("TSType")}}),s("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,r.validateArrayOfType)(["TSType","TSNamedTupleMember"])}}),s("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,r.validateType)("Identifier"),optional:{validate:o,default:!1},elementType:(0,r.validateType)("TSType")}});const y={aliases:["TSType"],visitor:["types"],fields:{types:(0,r.validateArrayOfType)("TSType")}};s("TSUnionType",y),s("TSIntersectionType",y),s("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,r.validateType)("TSType"),extendsType:(0,r.validateType)("TSType"),trueType:(0,r.validateType)("TSType"),falseType:(0,r.validateType)("TSType")}}),s("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,r.validateType)("TSTypeParameter")}}),s("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{operator:(0,r.validate)((0,r.assertValueType)("string")),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,r.validateType)("TSType"),indexType:(0,r.validateType)("TSType")}}),s("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","typeAnnotation","nameType"],fields:{readonly:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeParameter:(0,r.validateType)("TSTypeParameter"),optional:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeAnnotation:(0,r.validateOptionalType)("TSType"),nameType:(0,r.validateOptionalType)("TSType")}}),s("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const e=(0,r.assertNodeType)("NumericLiteral","BigIntLiteral"),t=(0,r.assertOneOf)("-"),n=(0,r.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral");function a(r,a,s){(0,i.default)("UnaryExpression",s)?(t(s,"operator",s.operator),e(s,"argument",s.argument)):n(r,a,s)}return a.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],a}()}}}),s("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,r.validateType)("TSInterfaceBody")}}),s("TSInterfaceBody",{visitor:["body"],fields:{body:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("Expression"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}});const m={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TSType")}};s("TSAsExpression",m),s("TSSatisfiesExpression",m),s("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,r.validateType)("TSType"),expression:(0,r.validateType)("Expression")}}),s("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,r.validateOptional)(o),const:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),members:(0,r.validateArrayOfType)("TSEnumMember"),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{declare:(0,r.validateOptional)(o),global:(0,r.validateOptional)(o),id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)(["TSModuleBlock","TSModuleDeclaration"])}}),s("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:(0,r.validateArrayOfType)("Statement")}}),s("TSImportType",{aliases:["TSType"],visitor:["argument","qualifier","typeParameters"],fields:{argument:(0,r.validateType)("StringLiteral"),qualifier:(0,r.validateOptionalType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSImportEqualsDeclaration",{aliases:["Statement"],visitor:["id","moduleReference"],fields:{isExport:(0,r.validate)(o),id:(0,r.validateType)("Identifier"),moduleReference:(0,r.validateType)(["TSEntityName","TSExternalModuleReference"]),importKind:{validate:(0,r.assertOneOf)("type","value"),optional:!0}}}),s("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,r.validateType)("StringLiteral")}}),s("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),s("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,r.assertNodeType)("TSType")}}}),s("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSType")))}}}),s("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSTypeParameter")))}}}),s("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,r.assertValueType)("string")},in:{validate:(0,r.assertValueType)("boolean"),optional:!0},out:{validate:(0,r.assertValueType)("boolean"),optional:!0},const:{validate:(0,r.assertValueType)("boolean"),optional:!0},constraint:{validate:(0,r.assertNodeType)("TSType"),optional:!0},default:{validate:(0,r.assertNodeType)("TSType"),optional:!0}}})},79114:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VISITOR_KEYS=t.NODE_PARENT_VALIDATIONS=t.NODE_FIELDS=t.FLIPPED_ALIAS_KEYS=t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.ALIAS_KEYS=void 0,t.arrayOf=m,t.arrayOfType=h,t.assertEach=T,t.assertNodeOrValueType=function(...e){function t(t,n,i){for(const s of e)if(d(i)===s||(0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeOrValueTypes=e,t},t.assertNodeType=S,t.assertOneOf=function(...e){function t(t,n,r){if(e.indexOf(r)<0)throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t},t.assertOptionalChainStart=function(){return function(e){var t;let n=e;for(;e;){const{type:e}=n;if("OptionalCallExpression"!==e){if("OptionalMemberExpression"!==e)break;if(n.optional)return;n=n.object}else{if(n.optional)return;n=n.callee}}throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null==(t=n)?void 0:t.type}`)}},t.assertShape=function(e){function t(t,n,r){const i=[];for(const n of Object.keys(e))try{(0,a.validateField)(t,n,r[n],e[n])}catch(e){if(e instanceof TypeError){i.push(e.message);continue}throw e}if(i.length)throw new TypeError(`Property ${n} of ${t.type} expected to have the following:\n${i.join("\n")}`)}return t.shapeOf=e,t},t.assertValueType=b,t.chain=E,t.default=A,t.defineAliasedType=function(...e){return(t,n={})=>{let r=n.aliases;var a;r||(n.inherits&&(r=null==(a=g[n.inherits].aliases)?void 0:a.slice()),null!=r||(r=[]),n.aliases=r);const i=e.filter((e=>!r.includes(e)));r.unshift(...i),A(t,n)}},t.typeIs=y,t.validate=f,t.validateArrayOfType=function(e){return f(h(e))},t.validateOptional=function(e){return{validate:e,optional:!0}},t.validateOptionalType=function(e){return{validate:y(e),optional:!0}},t.validateType=function(e){return f(y(e))};var r=n(67566),a=n(8894);const i={};t.VISITOR_KEYS=i;const s={};t.ALIAS_KEYS=s;const o={};t.FLIPPED_ALIAS_KEYS=o;const l={};t.NODE_FIELDS=l;const p={};t.BUILDER_KEYS=p;const c={};t.DEPRECATED_KEYS=c;const u={};function d(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function f(e){return{validate:e}}function y(e){return"string"==typeof e?S(e):S(...e)}function m(e){return E(b("array"),T(e))}function h(e){return m(y(e))}function T(e){function t(t,n,r){if(Array.isArray(r))for(let i=0;i<r.length;i++){const s=`${n}[${i}]`,o=r[i];e(t,s,o),process.env.BABEL_TYPES_8_BREAKING&&(0,a.validateChild)(t,s,o)}}return t.each=e,t}function S(...e){function t(t,n,i){for(const s of e)if((0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeTypes=e,t}function b(e){function t(t,n,r){if(d(r)!==e)throw new TypeError(`Property ${n} expected type of ${e} but got ${d(r)}`)}return t.type=e,t}function E(...e){function t(...t){for(const n of e)n(...t)}if(t.chainOf=e,e.length>=2&&"type"in e[0]&&"array"===e[0].type&&!("each"in e[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return t}t.NODE_PARENT_VALIDATIONS=u;const P=["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate"],x=["default","optional","deprecated","validate"],g={};function A(e,t={}){const n=t.inherits&&g[t.inherits]||{};let r=t.fields;if(!r&&(r={},n.fields)){const e=Object.getOwnPropertyNames(n.fields);for(const t of e){const e=n.fields[t],a=e.default;if(Array.isArray(a)?a.length>0:a&&"object"==typeof a)throw new Error("field defaults can only be primitives or empty arrays currently");r[t]={default:Array.isArray(a)?[]:a,optional:e.optional,deprecated:e.deprecated,validate:e.validate}}}const a=t.visitor||n.visitor||[],f=t.aliases||n.aliases||[],y=t.builder||n.builder||t.visitor||[];for(const n of Object.keys(t))if(-1===P.indexOf(n))throw new Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(c[t.deprecatedAlias]=e);for(const e of a.concat(y))r[e]=r[e]||{};for(const t of Object.keys(r)){const n=r[t];void 0!==n.default&&-1===y.indexOf(t)&&(n.optional=!0),void 0===n.default?n.default=null:n.validate||null==n.default||(n.validate=b(d(n.default)));for(const r of Object.keys(n))if(-1===x.indexOf(r))throw new Error(`Unknown field key "${r}" on ${e}.${t}`)}i[e]=t.visitor=a,p[e]=t.builder=y,l[e]=t.fields=r,s[e]=t.aliases=f,f.forEach((t=>{o[t]=o[t]||[],o[t].push(e)})),t.validate&&(u[e]=t.validate),g[e]=t}},7139:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={react:!0,assertNode:!0,createTypeAnnotationBasedOnTypeof:!0,createUnionTypeAnnotation:!0,createFlowUnionType:!0,createTSUnionType:!0,cloneNode:!0,clone:!0,cloneDeep:!0,cloneDeepWithoutLoc:!0,cloneWithoutLoc:!0,addComment:!0,addComments:!0,inheritInnerComments:!0,inheritLeadingComments:!0,inheritsComments:!0,inheritTrailingComments:!0,removeComments:!0,ensureBlock:!0,toBindingIdentifierName:!0,toBlock:!0,toComputedKey:!0,toExpression:!0,toIdentifier:!0,toKeyAlias:!0,toSequenceExpression:!0,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,traverse:!0,traverseFast:!0,shallowEqual:!0,is:!0,isBinding:!0,isBlockScoped:!0,isImmutable:!0,isLet:!0,isNode:!0,isNodesEquivalent:!0,isPlaceholderType:!0,isReferenced:!0,isScope:!0,isSpecifierDefault:!0,isType:!0,isValidES3Identifier:!0,isValidIdentifier:!0,isVar:!0,matchesPattern:!0,validate:!0,buildMatchMemberExpression:!0,__internal__deprecationWarning:!0};Object.defineProperty(t,"__internal__deprecationWarning",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"addComment",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"addComments",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"appendToMemberExpression",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"assertNode",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"buildMatchMemberExpression",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"clone",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"cloneDeep",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"cloneNode",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"cloneWithoutLoc",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"createFlowUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"createTSUnionType",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"ensureBlock",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"inheritInnerComments",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"inheritLeadingComments",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"inheritTrailingComments",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"inherits",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"inheritsComments",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"is",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"isPlaceholderType",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"isType",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"isValidES3Identifier",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"matchesPattern",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"prependToMemberExpression",{enumerable:!0,get:function(){return V.default}}),t.react=void 0,Object.defineProperty(t,"removeComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"removeProperties",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"removePropertiesDeep",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"shallowEqual",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"toSequenceExpression",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"traverseFast",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return B.default}});var a=n(66388),i=n(82546),s=n(72750),o=n(66021),l=n(9069);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var p=n(36962),c=n(35547),u=n(65696),d=n(53376);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=n(23496);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}));var y=n(31124),m=n(19762),h=n(15796),T=n(47393),S=n(83076),b=n(44689),E=n(37442),P=n(78470),x=n(31684),g=n(24412),A=n(49477),v=n(50614),O=n(36495);Object.keys(O).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===O[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return O[e]}}))}));var I=n(95520);Object.keys(I).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===I[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return I[e]}}))}));var N=n(69590),D=n(11280),C=n(28084),w=n(95518),L=n(34103),j=n(70845),_=n(59030),M=n(69708),k=n(43208),B=n(79771),F=n(1969);Object.keys(F).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===F[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return F[e]}}))}));var R=n(61751),K=n(17870),V=n(52290),Y=n(14802),U=n(1194),X=n(38374),J=n(8736),W=n(60210),q=n(75413);Object.keys(q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return q[e]}}))}));var $=n(4734),G=n(37064),z=n(67566),H=n(51700),Q=n(93308),Z=n(3759),ee=n(32563),te=n(21879),ne=n(40257),re=n(1938),ae=n(99265),ie=n(48439),se=n(93039),oe=n(36351),le=n(76465),pe=n(43226),ce=n(76319),ue=n(30913),de=n(8894),fe=n(75446),ye=n(39369);Object.keys(ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ye[e]}}))}));var me=n(52694);const he={isReactComponent:a.default,isCompatTag:i.default,buildChildren:s.default};t.react=he},61751:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n=!1){return e.object=(0,r.memberExpression)(e.object,e.property,e.computed),e.property=t,e.computed=!!n,e};var r=n(53376)},38374:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isAnyTypeAnnotation)(p))return[p];if((0,r.isFlowBaseAnnotation)(p))s.set(p.type,p);else if((0,r.isUnionTypeAnnotation)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isGenericTypeAnnotation)(p)){const t=a(p.id);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(39369);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.id.name}.${a(e.qualification)}`}},17870:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!e||!t)return e;for(const n of r.INHERIT_KEYS.optional)null==e[n]&&(e[n]=t[n]);for(const n of Object.keys(t))"_"===n[0]&&"__clone"!==n&&(e[n]=t[n]);for(const n of r.INHERIT_KEYS.force)e[n]=t[n];return(0,a.default)(e,t),e};var r=n(95520),a=n(24412)},52290:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,a.isSuper)(e.object))throw new Error("Cannot prepend node to super property access (`super.foo`).");return e.object=(0,r.memberExpression)(t,e.object),e};var r=n(53376),a=n(7139)},14802:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t={}){const n=t.preserveComments?a:i;for(const t of n)null!=e[t]&&(e[t]=void 0);for(const t of Object.keys(e))"_"===t[0]&&null!=e[t]&&(e[t]=void 0);const r=Object.getOwnPropertySymbols(e);for(const t of r)e[t]=null};var r=n(95520);const a=["tokens","start","end","loc","raw","rawValue"],i=[...r.COMMENT_KEYS,"comments",...a]},1194:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,a.default,t),e};var r=n(4734),a=n(14802)},83886:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isTSAnyKeyword)(p))return[p];if((0,r.isTSBaseType)(p))s.set(p.type,p);else if((0,r.isTSUnionType)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isTSTypeReference)(p)&&p.typeParameters){const t=a(p.typeName);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(39369);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.right.name}.${a(e.left)}`}},8736:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var r=n(39369);function a(e,t,n){const i=[].concat(e),s=Object.create(null);for(;i.length;){const e=i.shift();if(!e)continue;const o=a.keys[e.type];if((0,r.isIdentifier)(e))t?(s[e.name]=s[e.name]||[]).push(e):s[e.name]=e;else if(!(0,r.isExportDeclaration)(e)||(0,r.isExportAllDeclaration)(e)){if(n){if((0,r.isFunctionDeclaration)(e)){i.push(e.id);continue}if((0,r.isFunctionExpression)(e))continue}if(o)for(let t=0;t<o.length;t++){const n=e[o[t]];n&&(Array.isArray(n)?i.push(...n):i.push(n))}}else(0,r.isDeclaration)(e.declaration)&&i.push(e.declaration)}return s}a.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]}},60210:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(8736);t.default=function(e,t){return(0,r.default)(e,t,!0)}},75413:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){"function"==typeof t&&(t={enter:t});const{enter:r,exit:i}=t;a(e,r,i,n,[])};var r=n(1969);function a(e,t,n,i,s){const o=r.VISITOR_KEYS[e.type];if(o){t&&t(e,s,i);for(const r of o){const o=e[r];if(Array.isArray(o))for(let l=0;l<o.length;l++){const p=o[l];p&&(s.push({node:e,key:r,index:l}),a(p,t,n,i,s),s.pop())}else o&&(s.push({node:e,key:r}),a(o,t,n,i,s),s.pop())}n&&n(e,s,i)}}},4734:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,a){if(!t)return;const i=r.VISITOR_KEYS[t.type];if(i){n(t,a=a||{});for(const r of i){const i=t[r];if(Array.isArray(i))for(const t of i)e(t,n,a);else e(i,n,a)}}};var r=n(1969)},52694:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r=""){if(n.has(e))return;n.add(e);const{internal:a,trace:i}=function(e,t){const{stackTraceLimit:n,prepareStackTrace:r}=Error;let a;if(Error.stackTraceLimit=4,Error.prepareStackTrace=function(e,t){a=t},(new Error).stack,Error.stackTraceLimit=n,Error.prepareStackTrace=r,!a)return{internal:!1,trace:""};const i=a.slice(2,4);return{internal:/[\\/]@babel[\\/]/.test(i[1].getFileName()),trace:i.map((e=>` at ${e}`)).join("\n")}}();a||console.warn(`${r}\`${e}\` has been deprecated, please migrate to \`${t}\`\n${i}`)};const n=new Set},98003:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))}},77782:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.value.split(/\r\n|\n|\r/);let i=0;for(let e=0;e<n.length;e++)n[e].match(/[^ \t]/)&&(i=e);let s="";for(let e=0;e<n.length;e++){const t=n[e],r=0===e,a=e===n.length-1,o=e===i;let l=t.replace(/\t/g," ");r||(l=l.replace(/^[ ]+/,"")),a||(l=l.replace(/[ ]+$/,"")),l&&(o||(l+=" "),s+=l)}s&&t.push((0,a.inherits)((0,r.stringLiteral)(s),e))};var r=n(53376),a=n(7139)},37064:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=Object.keys(t);for(const r of n)if(e[r]!==t[r])return!1;return!0}},75446:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.split(".");return e=>(0,r.default)(e,n,t)};var r=n(30913)},39369:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAccessor=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t)))},t.isAnyTypeAnnotation=function(e,t){return!!e&&"AnyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArgumentPlaceholder=function(e,t){return!!e&&"ArgumentPlaceholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayExpression=function(e,t){return!!e&&"ArrayExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayPattern=function(e,t){return!!e&&"ArrayPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayTypeAnnotation=function(e,t){return!!e&&"ArrayTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrowFunctionExpression=function(e,t){return!!e&&"ArrowFunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentExpression=function(e,t){return!!e&&"AssignmentExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentPattern=function(e,t){return!!e&&"AssignmentPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isAwaitExpression=function(e,t){return!!e&&"AwaitExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBigIntLiteral=function(e,t){return!!e&&"BigIntLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBinary=function(e,t){if(!e)return!1;switch(e.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBinaryExpression=function(e,t){return!!e&&"BinaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBindExpression=function(e,t){return!!e&&"BindExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBlock=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockParent=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockStatement=function(e,t){return!!e&&"BlockStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteral=function(e,t){return!!e&&"BooleanLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteralTypeAnnotation=function(e,t){return!!e&&"BooleanLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanTypeAnnotation=function(e,t){return!!e&&"BooleanTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBreakStatement=function(e,t){return!!e&&"BreakStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isCallExpression=function(e,t){return!!e&&"CallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isCatchClause=function(e,t){return!!e&&"CatchClause"===e.type&&(null==t||(0,r.default)(e,t))},t.isClass=function(e,t){if(!e)return!1;switch(e.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isClassAccessorProperty=function(e,t){return!!e&&"ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassBody=function(e,t){return!!e&&"ClassBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassDeclaration=function(e,t){return!!e&&"ClassDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassExpression=function(e,t){return!!e&&"ClassExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassImplements=function(e,t){return!!e&&"ClassImplements"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassMethod=function(e,t){return!!e&&"ClassMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateMethod=function(e,t){return!!e&&"ClassPrivateMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateProperty=function(e,t){return!!e&&"ClassPrivateProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassProperty=function(e,t){return!!e&&"ClassProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isCompletionStatement=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditional=function(e,t){if(!e)return!1;switch(e.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditionalExpression=function(e,t){return!!e&&"ConditionalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isContinueStatement=function(e,t){return!!e&&"ContinueStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDebuggerStatement=function(e,t){return!!e&&"DebuggerStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecimalLiteral=function(e,t){return!!e&&"DecimalLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"VariableDeclaration":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":break;case"Placeholder":if("Declaration"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isDeclareClass=function(e,t){return!!e&&"DeclareClass"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportAllDeclaration=function(e,t){return!!e&&"DeclareExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportDeclaration=function(e,t){return!!e&&"DeclareExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareFunction=function(e,t){return!!e&&"DeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareInterface=function(e,t){return!!e&&"DeclareInterface"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModule=function(e,t){return!!e&&"DeclareModule"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModuleExports=function(e,t){return!!e&&"DeclareModuleExports"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareOpaqueType=function(e,t){return!!e&&"DeclareOpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareTypeAlias=function(e,t){return!!e&&"DeclareTypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareVariable=function(e,t){return!!e&&"DeclareVariable"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaredPredicate=function(e,t){return!!e&&"DeclaredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecorator=function(e,t){return!!e&&"Decorator"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirective=function(e,t){return!!e&&"Directive"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirectiveLiteral=function(e,t){return!!e&&"DirectiveLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoExpression=function(e,t){return!!e&&"DoExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoWhileStatement=function(e,t){return!!e&&"DoWhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyStatement=function(e,t){return!!e&&"EmptyStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyTypeAnnotation=function(e,t){return!!e&&"EmptyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBody=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumBooleanBody=function(e,t){return!!e&&"EnumBooleanBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBooleanMember=function(e,t){return!!e&&"EnumBooleanMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDeclaration=function(e,t){return!!e&&"EnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDefaultedMember=function(e,t){return!!e&&"EnumDefaultedMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumMember=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumNumberBody=function(e,t){return!!e&&"EnumNumberBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumNumberMember=function(e,t){return!!e&&"EnumNumberMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringBody=function(e,t){return!!e&&"EnumStringBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringMember=function(e,t){return!!e&&"EnumStringMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumSymbolBody=function(e,t){return!!e&&"EnumSymbolBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isExistsTypeAnnotation=function(e,t){return!!e&&"ExistsTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportAllDeclaration=function(e,t){return!!e&&"ExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExportDefaultDeclaration=function(e,t){return!!e&&"ExportDefaultDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDefaultSpecifier=function(e,t){return!!e&&"ExportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamedDeclaration=function(e,t){return!!e&&"ExportNamedDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamespaceSpecifier=function(e,t){return!!e&&"ExportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportSpecifier=function(e,t){return!!e&&"ExportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpression=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ParenthesizedExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":case"ArrowFunctionExpression":case"ClassExpression":case"MetaProperty":case"Super":case"TaggedTemplateExpression":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"OptionalMemberExpression":case"OptionalCallExpression":case"TypeCastExpression":case"JSXElement":case"JSXFragment":case"BindExpression":case"DoExpression":case"RecordExpression":case"TupleExpression":case"DecimalLiteral":case"ModuleExpression":case"TopicReference":case"PipelineTopicExpression":case"PipelineBareFunction":case"PipelinePrimaryTopicReference":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExpressionStatement=function(e,t){return!!e&&"ExpressionStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpressionWrapper=function(e,t){if(!e)return!1;switch(e.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFile=function(e,t){return!!e&&"File"===e.type&&(null==t||(0,r.default)(e,t))},t.isFlow=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ClassImplements":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"DeclaredPredicate":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"FunctionTypeParam":case"GenericTypeAnnotation":case"InferredPredicate":case"InterfaceExtends":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":case"OpaqueType":case"QualifiedTypeIdentifier":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"TypeAlias":case"TypeAnnotation":case"TypeCastExpression":case"TypeParameter":case"TypeParameterDeclaration":case"TypeParameterInstantiation":case"UnionTypeAnnotation":case"Variance":case"VoidTypeAnnotation":case"EnumDeclaration":case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowBaseAnnotation=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"BooleanTypeAnnotation":case"NullLiteralTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NumberTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"VoidTypeAnnotation":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowPredicate=function(e,t){if(!e)return!1;switch(e.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowType=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"UnionTypeAnnotation":case"VoidTypeAnnotation":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFor=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isForInStatement=function(e,t){return!!e&&"ForInStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForOfStatement=function(e,t){return!!e&&"ForOfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForStatement=function(e,t){return!!e&&"ForStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForXStatement=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunction=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionDeclaration=function(e,t){return!!e&&"FunctionDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionExpression=function(e,t){return!!e&&"FunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionParent=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionTypeAnnotation=function(e,t){return!!e&&"FunctionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionTypeParam=function(e,t){return!!e&&"FunctionTypeParam"===e.type&&(null==t||(0,r.default)(e,t))},t.isGenericTypeAnnotation=function(e,t){return!!e&&"GenericTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isIdentifier=function(e,t){return!!e&&"Identifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIfStatement=function(e,t){return!!e&&"IfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isImmutable=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"BigIntLiteral":case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXOpeningElement":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isImport=function(e,t){return!!e&&"Import"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportAttribute=function(e,t){return!!e&&"ImportAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDeclaration=function(e,t){return!!e&&"ImportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDefaultSpecifier=function(e,t){return!!e&&"ImportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportNamespaceSpecifier=function(e,t){return!!e&&"ImportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportOrExportDeclaration=i,t.isImportSpecifier=function(e,t){return!!e&&"ImportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIndexedAccessType=function(e,t){return!!e&&"IndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isInferredPredicate=function(e,t){return!!e&&"InferredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceDeclaration=function(e,t){return!!e&&"InterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceExtends=function(e,t){return!!e&&"InterfaceExtends"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceTypeAnnotation=function(e,t){return!!e&&"InterfaceTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterpreterDirective=function(e,t){return!!e&&"InterpreterDirective"===e.type&&(null==t||(0,r.default)(e,t))},t.isIntersectionTypeAnnotation=function(e,t){return!!e&&"IntersectionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSX=function(e,t){if(!e)return!1;switch(e.type){case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXEmptyExpression":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXIdentifier":case"JSXMemberExpression":case"JSXNamespacedName":case"JSXOpeningElement":case"JSXSpreadAttribute":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isJSXAttribute=function(e,t){return!!e&&"JSXAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingElement=function(e,t){return!!e&&"JSXClosingElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingFragment=function(e,t){return!!e&&"JSXClosingFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXElement=function(e,t){return!!e&&"JSXElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXEmptyExpression=function(e,t){return!!e&&"JSXEmptyExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXExpressionContainer=function(e,t){return!!e&&"JSXExpressionContainer"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXFragment=function(e,t){return!!e&&"JSXFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXIdentifier=function(e,t){return!!e&&"JSXIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXMemberExpression=function(e,t){return!!e&&"JSXMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXNamespacedName=function(e,t){return!!e&&"JSXNamespacedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningElement=function(e,t){return!!e&&"JSXOpeningElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningFragment=function(e,t){return!!e&&"JSXOpeningFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadAttribute=function(e,t){return!!e&&"JSXSpreadAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadChild=function(e,t){return!!e&&"JSXSpreadChild"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXText=function(e,t){return!!e&&"JSXText"===e.type&&(null==t||(0,r.default)(e,t))},t.isLVal=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSParameterProperty":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLabeledStatement=function(e,t){return!!e&&"LabeledStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isLiteral=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLogicalExpression=function(e,t){return!!e&&"LogicalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isLoop=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMemberExpression=function(e,t){return!!e&&"MemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isMetaProperty=function(e,t){return!!e&&"MetaProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isMethod=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMiscellaneous=function(e,t){if(!e)return!1;switch(e.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMixedTypeAnnotation=function(e,t){return!!e&&"MixedTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleDeclaration=function(e,t){return(0,a.default)("isModuleDeclaration","isImportOrExportDeclaration"),i(e,t)},t.isModuleExpression=function(e,t){return!!e&&"ModuleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleSpecifier=function(e,t){if(!e)return!1;switch(e.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isNewExpression=function(e,t){return!!e&&"NewExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isNoop=function(e,t){return!!e&&"Noop"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteral=function(e,t){return!!e&&"NullLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteralTypeAnnotation=function(e,t){return!!e&&"NullLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullableTypeAnnotation=function(e,t){return!!e&&"NullableTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteral=function(e,t){return(0,a.default)("isNumberLiteral","isNumericLiteral"),!!e&&"NumberLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteralTypeAnnotation=function(e,t){return!!e&&"NumberLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberTypeAnnotation=function(e,t){return!!e&&"NumberTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumericLiteral=function(e,t){return!!e&&"NumericLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectExpression=function(e,t){return!!e&&"ObjectExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectMember=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isObjectMethod=function(e,t){return!!e&&"ObjectMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectPattern=function(e,t){return!!e&&"ObjectPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectProperty=function(e,t){return!!e&&"ObjectProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeAnnotation=function(e,t){return!!e&&"ObjectTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeCallProperty=function(e,t){return!!e&&"ObjectTypeCallProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeIndexer=function(e,t){return!!e&&"ObjectTypeIndexer"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeInternalSlot=function(e,t){return!!e&&"ObjectTypeInternalSlot"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeProperty=function(e,t){return!!e&&"ObjectTypeProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeSpreadProperty=function(e,t){return!!e&&"ObjectTypeSpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isOpaqueType=function(e,t){return!!e&&"OpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalCallExpression=function(e,t){return!!e&&"OptionalCallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalIndexedAccessType=function(e,t){return!!e&&"OptionalIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalMemberExpression=function(e,t){return!!e&&"OptionalMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isParenthesizedExpression=function(e,t){return!!e&&"ParenthesizedExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPattern=function(e,t){if(!e)return!1;switch(e.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":break;case"Placeholder":if("Pattern"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPatternLike=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPipelineBareFunction=function(e,t){return!!e&&"PipelineBareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelinePrimaryTopicReference=function(e,t){return!!e&&"PipelinePrimaryTopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelineTopicExpression=function(e,t){return!!e&&"PipelineTopicExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPlaceholder=function(e,t){return!!e&&"Placeholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isPrivate=function(e,t){if(!e)return!1;switch(e.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPrivateName=function(e,t){return!!e&&"PrivateName"===e.type&&(null==t||(0,r.default)(e,t))},t.isProgram=function(e,t){return!!e&&"Program"===e.type&&(null==t||(0,r.default)(e,t))},t.isProperty=function(e,t){if(!e)return!1;switch(e.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPureish=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"ArrowFunctionExpression":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isQualifiedTypeIdentifier=function(e,t){return!!e&&"QualifiedTypeIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isRecordExpression=function(e,t){return!!e&&"RecordExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegExpLiteral=function(e,t){return!!e&&"RegExpLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegexLiteral=function(e,t){return(0,a.default)("isRegexLiteral","isRegExpLiteral"),!!e&&"RegexLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestElement=function(e,t){return!!e&&"RestElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestProperty=function(e,t){return(0,a.default)("isRestProperty","isRestElement"),!!e&&"RestProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isReturnStatement=function(e,t){return!!e&&"ReturnStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isScopable=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ClassExpression":case"ClassDeclaration":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isSequenceExpression=function(e,t){return!!e&&"SequenceExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadElement=function(e,t){return!!e&&"SpreadElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadProperty=function(e,t){return(0,a.default)("isSpreadProperty","isSpreadElement"),!!e&&"SpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isStandardized=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"InterpreterDirective":case"Directive":case"DirectiveLiteral":case"BlockStatement":case"BreakStatement":case"CallExpression":case"CatchClause":case"ConditionalExpression":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"File":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Identifier":case"IfStatement":case"LabeledStatement":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"Program":case"ObjectExpression":case"ObjectMethod":case"ObjectProperty":case"RestElement":case"ReturnStatement":case"SequenceExpression":case"ParenthesizedExpression":case"SwitchCase":case"SwitchStatement":case"ThisExpression":case"ThrowStatement":case"TryStatement":case"UnaryExpression":case"UpdateExpression":case"VariableDeclaration":case"VariableDeclarator":case"WhileStatement":case"WithStatement":case"AssignmentPattern":case"ArrayPattern":case"ArrowFunctionExpression":case"ClassBody":case"ClassExpression":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportSpecifier":case"ForOfStatement":case"ImportDeclaration":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"MetaProperty":case"ClassMethod":case"ObjectPattern":case"SpreadElement":case"Super":case"TaggedTemplateExpression":case"TemplateElement":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"ExportNamespaceSpecifier":case"OptionalMemberExpression":case"OptionalCallExpression":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":case"StaticBlock":break;case"Placeholder":switch(e.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStatement=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ForOfStatement":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":case"TSExportAssignment":case"TSNamespaceExportDeclaration":break;case"Placeholder":switch(e.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStaticBlock=function(e,t){return!!e&&"StaticBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteral=function(e,t){return!!e&&"StringLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteralTypeAnnotation=function(e,t){return!!e&&"StringLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringTypeAnnotation=function(e,t){return!!e&&"StringTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isSuper=function(e,t){return!!e&&"Super"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchCase=function(e,t){return!!e&&"SwitchCase"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchStatement=function(e,t){return!!e&&"SwitchStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSymbolTypeAnnotation=function(e,t){return!!e&&"SymbolTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAnyKeyword=function(e,t){return!!e&&"TSAnyKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSArrayType=function(e,t){return!!e&&"TSArrayType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAsExpression=function(e,t){return!!e&&"TSAsExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBaseType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSLiteralType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSBigIntKeyword=function(e,t){return!!e&&"TSBigIntKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBooleanKeyword=function(e,t){return!!e&&"TSBooleanKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSCallSignatureDeclaration=function(e,t){return!!e&&"TSCallSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConditionalType=function(e,t){return!!e&&"TSConditionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructSignatureDeclaration=function(e,t){return!!e&&"TSConstructSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructorType=function(e,t){return!!e&&"TSConstructorType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareFunction=function(e,t){return!!e&&"TSDeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareMethod=function(e,t){return!!e&&"TSDeclareMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEntityName=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if("Identifier"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSEnumDeclaration=function(e,t){return!!e&&"TSEnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEnumMember=function(e,t){return!!e&&"TSEnumMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExportAssignment=function(e,t){return!!e&&"TSExportAssignment"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExpressionWithTypeArguments=function(e,t){return!!e&&"TSExpressionWithTypeArguments"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExternalModuleReference=function(e,t){return!!e&&"TSExternalModuleReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSFunctionType=function(e,t){return!!e&&"TSFunctionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportEqualsDeclaration=function(e,t){return!!e&&"TSImportEqualsDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportType=function(e,t){return!!e&&"TSImportType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexSignature=function(e,t){return!!e&&"TSIndexSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexedAccessType=function(e,t){return!!e&&"TSIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInferType=function(e,t){return!!e&&"TSInferType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInstantiationExpression=function(e,t){return!!e&&"TSInstantiationExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceBody=function(e,t){return!!e&&"TSInterfaceBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceDeclaration=function(e,t){return!!e&&"TSInterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntersectionType=function(e,t){return!!e&&"TSIntersectionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntrinsicKeyword=function(e,t){return!!e&&"TSIntrinsicKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSLiteralType=function(e,t){return!!e&&"TSLiteralType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMappedType=function(e,t){return!!e&&"TSMappedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMethodSignature=function(e,t){return!!e&&"TSMethodSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleBlock=function(e,t){return!!e&&"TSModuleBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleDeclaration=function(e,t){return!!e&&"TSModuleDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamedTupleMember=function(e,t){return!!e&&"TSNamedTupleMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamespaceExportDeclaration=function(e,t){return!!e&&"TSNamespaceExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNeverKeyword=function(e,t){return!!e&&"TSNeverKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNonNullExpression=function(e,t){return!!e&&"TSNonNullExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNullKeyword=function(e,t){return!!e&&"TSNullKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNumberKeyword=function(e,t){return!!e&&"TSNumberKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSObjectKeyword=function(e,t){return!!e&&"TSObjectKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSOptionalType=function(e,t){return!!e&&"TSOptionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParameterProperty=function(e,t){return!!e&&"TSParameterProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParenthesizedType=function(e,t){return!!e&&"TSParenthesizedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSPropertySignature=function(e,t){return!!e&&"TSPropertySignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSQualifiedName=function(e,t){return!!e&&"TSQualifiedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSRestType=function(e,t){return!!e&&"TSRestType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSatisfiesExpression=function(e,t){return!!e&&"TSSatisfiesExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSStringKeyword=function(e,t){return!!e&&"TSStringKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSymbolKeyword=function(e,t){return!!e&&"TSSymbolKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSThisType=function(e,t){return!!e&&"TSThisType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTupleType=function(e,t){return!!e&&"TSTupleType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSImportType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeAliasDeclaration=function(e,t){return!!e&&"TSTypeAliasDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAnnotation=function(e,t){return!!e&&"TSTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAssertion=function(e,t){return!!e&&"TSTypeAssertion"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeElement=function(e,t){if(!e)return!1;switch(e.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeLiteral=function(e,t){return!!e&&"TSTypeLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeOperator=function(e,t){return!!e&&"TSTypeOperator"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameter=function(e,t){return!!e&&"TSTypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterDeclaration=function(e,t){return!!e&&"TSTypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterInstantiation=function(e,t){return!!e&&"TSTypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypePredicate=function(e,t){return!!e&&"TSTypePredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeQuery=function(e,t){return!!e&&"TSTypeQuery"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeReference=function(e,t){return!!e&&"TSTypeReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUndefinedKeyword=function(e,t){return!!e&&"TSUndefinedKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnionType=function(e,t){return!!e&&"TSUnionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnknownKeyword=function(e,t){return!!e&&"TSUnknownKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSVoidKeyword=function(e,t){return!!e&&"TSVoidKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTaggedTemplateExpression=function(e,t){return!!e&&"TaggedTemplateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateElement=function(e,t){return!!e&&"TemplateElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateLiteral=function(e,t){return!!e&&"TemplateLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTerminatorless=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isThisExpression=function(e,t){return!!e&&"ThisExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isThisTypeAnnotation=function(e,t){return!!e&&"ThisTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isThrowStatement=function(e,t){return!!e&&"ThrowStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTopicReference=function(e,t){return!!e&&"TopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTryStatement=function(e,t){return!!e&&"TryStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleExpression=function(e,t){return!!e&&"TupleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleTypeAnnotation=function(e,t){return!!e&&"TupleTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAlias=function(e,t){return!!e&&"TypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAnnotation=function(e,t){return!!e&&"TypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeCastExpression=function(e,t){return!!e&&"TypeCastExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameter=function(e,t){return!!e&&"TypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterDeclaration=function(e,t){return!!e&&"TypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterInstantiation=function(e,t){return!!e&&"TypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeScript=function(e,t){if(!e)return!1;switch(e.type){case"TSParameterProperty":case"TSDeclareFunction":case"TSDeclareMethod":case"TSQualifiedName":case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSNamedTupleMember":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSInterfaceDeclaration":case"TSInterfaceBody":case"TSTypeAliasDeclaration":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSEnumDeclaration":case"TSEnumMember":case"TSModuleDeclaration":case"TSModuleBlock":case"TSImportType":case"TSImportEqualsDeclaration":case"TSExternalModuleReference":case"TSNonNullExpression":case"TSExportAssignment":case"TSNamespaceExportDeclaration":case"TSTypeAnnotation":case"TSTypeParameterInstantiation":case"TSTypeParameterDeclaration":case"TSTypeParameter":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTypeofTypeAnnotation=function(e,t){return!!e&&"TypeofTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryExpression=function(e,t){return!!e&&"UnaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryLike=function(e,t){if(!e)return!1;switch(e.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isUnionTypeAnnotation=function(e,t){return!!e&&"UnionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUpdateExpression=function(e,t){return!!e&&"UpdateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUserWhitespacable=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isV8IntrinsicIdentifier=function(e,t){return!!e&&"V8IntrinsicIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclaration=function(e,t){return!!e&&"VariableDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclarator=function(e,t){return!!e&&"VariableDeclarator"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariance=function(e,t){return!!e&&"Variance"===e.type&&(null==t||(0,r.default)(e,t))},t.isVoidTypeAnnotation=function(e,t){return!!e&&"VoidTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isWhile=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isWhileStatement=function(e,t){return!!e&&"WhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isWithStatement=function(e,t){return!!e&&"WithStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isYieldExpression=function(e,t){return!!e&&"YieldExpression"===e.type&&(null==t||(0,r.default)(e,t))};var r=n(37064),a=n(52694);function i(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)}},67566:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){return!!t&&((0,a.default)(t.type,e)?void 0===n||(0,r.default)(t,n):!n&&"Placeholder"===t.type&&e in s.FLIPPED_ALIAS_KEYS&&(0,i.default)(t.expectedNode,e))};var r=n(37064),a=n(36351),i=n(1938),s=n(1969)},51700:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(n&&"Identifier"===e.type&&"ObjectProperty"===t.type&&"ObjectExpression"===n.type)return!1;const a=r.default.keys[t.type];if(a)for(let n=0;n<a.length;n++){const r=t[a[n]];if(Array.isArray(r)){if(r.indexOf(e)>=0)return!0}else if(r===e)return!0}return!1};var r=n(8736)},93308:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isFunctionDeclaration)(e)||(0,r.isClassDeclaration)(e)||(0,a.default)(e)};var r=n(39369),a=n(32563)},3759:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!(0,r.default)(e.type,"Immutable")||!!(0,a.isIdentifier)(e)&&"undefined"===e.name};var r=n(36351),a=n(39369)},32563:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e)&&("var"!==e.kind||e[a.BLOCK_SCOPED_SYMBOL])};var r=n(39369),a=n(95520)},21879:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||!r.VISITOR_KEYS[e.type])};var r=n(1969)},40257:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){if("object"!=typeof t||"object"!=typeof n||null==t||null==n)return t===n;if(t.type!==n.type)return!1;const a=Object.keys(r.NODE_FIELDS[t.type]||t.type),i=r.VISITOR_KEYS[t.type];for(const r of a){const a=t[r],s=n[r];if(typeof a!=typeof s)return!1;if(null!=a||null!=s){if(null==a||null==s)return!1;if(Array.isArray(a)){if(!Array.isArray(s))return!1;if(a.length!==s.length)return!1;for(let t=0;t<a.length;t++)if(!e(a[t],s[t]))return!1}else if("object"!=typeof a||null!=i&&i.includes(r)){if(!e(a,s))return!1}else for(const e of Object.keys(a))if(a[e]!==s[e])return!1}}return!0};var r=n(1969)},1938:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;const n=r.PLACEHOLDERS_ALIAS[e];if(n)for(const e of n)if(t===e)return!0;return!1};var r=n(1969)},99265:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:!n||"ObjectPattern"!==n.type;case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==n||!n.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}},48439:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(!(0,r.isBlockStatement)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))&&(!(!(0,r.isPattern)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))||(0,r.isScopable)(e))};var r=n(39369)},93039:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isImportDefaultSpecifier)(e)||(0,r.isIdentifier)(e.imported||e.exported,{name:"default"})};var r=n(39369)},36351:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;if(null==e)return!1;if(r.ALIAS_KEYS[t])return!1;const n=r.FLIPPED_ALIAS_KEYS[t];if(n){if(n[0]===e)return!0;for(const t of n)if(e===t)return!0}return!1};var r=n(1969)},76465:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)&&!a.has(e)};var r=n(43226);const a=new Set(["abstract","boolean","byte","char","double","enum","final","float","goto","implements","int","interface","long","native","package","private","protected","public","short","static","synchronized","throws","transient","volatile"])},43226:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0){return"string"==typeof e&&((!t||!(0,r.isKeyword)(e)&&!(0,r.isStrictReservedWord)(e,!0))&&(0,r.isIdentifierName)(e))};var r=n(29649)},76319:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e,{kind:"var"})&&!e[a.BLOCK_SCOPED_SYMBOL]};var r=n(39369),a=n(95520)},30913:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!(0,r.isMemberExpression)(e))return!1;const a=Array.isArray(t)?t:t.split("."),i=[];let s;for(s=e;(0,r.isMemberExpression)(s);s=s.object)i.push(s.property);if(i.push(s),i.length<a.length)return!1;if(!n&&i.length>a.length)return!1;for(let e=0,t=i.length-1;e<a.length;e++,t--){const n=i[t];let s;if((0,r.isIdentifier)(n))s=n.name;else if((0,r.isStringLiteral)(n))s=n.value;else{if(!(0,r.isThisExpression)(n))return!1;s="this"}if(a[e]!==s)return!1}return!0};var r=n(39369)},82546:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!e&&/^[a-z]/.test(e)}},66388:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=(0,n(75446).default)("React.Component");t.default=r},8894:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!e)return;const s=r.NODE_FIELDS[e.type];if(!s)return;a(e,t,n,s[t]),i(e,t,n)},t.validateChild=i,t.validateField=a;var r=n(1969);function a(e,t,n,r){null!=r&&r.validate&&(r.optional&&null==n||r.validate(e,t,n))}function i(e,t,n){if(null==n)return;const a=r.NODE_PARENT_VALIDATIONS[n.type];a&&a(e,t,n)}},53472:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!e.isExportDeclaration()||e.isExportAllDeclaration())throw new Error("Only default and named export declarations can be split.");if(e.isExportDefaultDeclaration()){const t=e.get("declaration"),n=t.isFunctionDeclaration()||t.isClassDeclaration(),r=t.isFunctionExpression()||t.isClassExpression(),c=t.isScope()?t.scope.parent:t.scope;let u=t.node.id,d=!1;u?r&&c.hasBinding(u.name)&&(d=!0,u=c.generateUidIdentifier(u.name)):(d=!0,u=c.generateUidIdentifier("default"),(n||r)&&(t.node.id=a(u)));const f=n?t.node:l("var",[p(a(u),t.node)]),y=i(null,[s(a(u),o("default"))]);return e.insertAfter(y),e.replaceWith(f),d&&c.registerDeclaration(e),e}if(e.get("specifiers").length>0)throw new Error("It doesn't make sense to split exported specifiers.");const t=e.get("declaration"),n=t.getOuterBindingIdentifiers(),r=Object.keys(n).map((e=>s(o(e),o(e)))),c=i(null,r);return e.insertAfter(c),e.replaceWith(t.node),e};var r=n(25024);const{cloneNode:a,exportNamedDeclaration:i,exportSpecifier:s,identifier:o,variableDeclaration:l,variableDeclarator:p}=r},40429:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!(0,r.default)(e)){var t;const n=null!=(t=null==e?void 0:e.type)?t:JSON.stringify(e);throw new TypeError(`Not a valid node of type "${n}"`)}};var r=n(78551)},59949:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assertAccessor=function(e,t){i("Accessor",e,t)},t.assertAnyTypeAnnotation=function(e,t){i("AnyTypeAnnotation",e,t)},t.assertArgumentPlaceholder=function(e,t){i("ArgumentPlaceholder",e,t)},t.assertArrayExpression=function(e,t){i("ArrayExpression",e,t)},t.assertArrayPattern=function(e,t){i("ArrayPattern",e,t)},t.assertArrayTypeAnnotation=function(e,t){i("ArrayTypeAnnotation",e,t)},t.assertArrowFunctionExpression=function(e,t){i("ArrowFunctionExpression",e,t)},t.assertAssignmentExpression=function(e,t){i("AssignmentExpression",e,t)},t.assertAssignmentPattern=function(e,t){i("AssignmentPattern",e,t)},t.assertAwaitExpression=function(e,t){i("AwaitExpression",e,t)},t.assertBigIntLiteral=function(e,t){i("BigIntLiteral",e,t)},t.assertBinary=function(e,t){i("Binary",e,t)},t.assertBinaryExpression=function(e,t){i("BinaryExpression",e,t)},t.assertBindExpression=function(e,t){i("BindExpression",e,t)},t.assertBlock=function(e,t){i("Block",e,t)},t.assertBlockParent=function(e,t){i("BlockParent",e,t)},t.assertBlockStatement=function(e,t){i("BlockStatement",e,t)},t.assertBooleanLiteral=function(e,t){i("BooleanLiteral",e,t)},t.assertBooleanLiteralTypeAnnotation=function(e,t){i("BooleanLiteralTypeAnnotation",e,t)},t.assertBooleanTypeAnnotation=function(e,t){i("BooleanTypeAnnotation",e,t)},t.assertBreakStatement=function(e,t){i("BreakStatement",e,t)},t.assertCallExpression=function(e,t){i("CallExpression",e,t)},t.assertCatchClause=function(e,t){i("CatchClause",e,t)},t.assertClass=function(e,t){i("Class",e,t)},t.assertClassAccessorProperty=function(e,t){i("ClassAccessorProperty",e,t)},t.assertClassBody=function(e,t){i("ClassBody",e,t)},t.assertClassDeclaration=function(e,t){i("ClassDeclaration",e,t)},t.assertClassExpression=function(e,t){i("ClassExpression",e,t)},t.assertClassImplements=function(e,t){i("ClassImplements",e,t)},t.assertClassMethod=function(e,t){i("ClassMethod",e,t)},t.assertClassPrivateMethod=function(e,t){i("ClassPrivateMethod",e,t)},t.assertClassPrivateProperty=function(e,t){i("ClassPrivateProperty",e,t)},t.assertClassProperty=function(e,t){i("ClassProperty",e,t)},t.assertCompletionStatement=function(e,t){i("CompletionStatement",e,t)},t.assertConditional=function(e,t){i("Conditional",e,t)},t.assertConditionalExpression=function(e,t){i("ConditionalExpression",e,t)},t.assertContinueStatement=function(e,t){i("ContinueStatement",e,t)},t.assertDebuggerStatement=function(e,t){i("DebuggerStatement",e,t)},t.assertDecimalLiteral=function(e,t){i("DecimalLiteral",e,t)},t.assertDeclaration=function(e,t){i("Declaration",e,t)},t.assertDeclareClass=function(e,t){i("DeclareClass",e,t)},t.assertDeclareExportAllDeclaration=function(e,t){i("DeclareExportAllDeclaration",e,t)},t.assertDeclareExportDeclaration=function(e,t){i("DeclareExportDeclaration",e,t)},t.assertDeclareFunction=function(e,t){i("DeclareFunction",e,t)},t.assertDeclareInterface=function(e,t){i("DeclareInterface",e,t)},t.assertDeclareModule=function(e,t){i("DeclareModule",e,t)},t.assertDeclareModuleExports=function(e,t){i("DeclareModuleExports",e,t)},t.assertDeclareOpaqueType=function(e,t){i("DeclareOpaqueType",e,t)},t.assertDeclareTypeAlias=function(e,t){i("DeclareTypeAlias",e,t)},t.assertDeclareVariable=function(e,t){i("DeclareVariable",e,t)},t.assertDeclaredPredicate=function(e,t){i("DeclaredPredicate",e,t)},t.assertDecorator=function(e,t){i("Decorator",e,t)},t.assertDirective=function(e,t){i("Directive",e,t)},t.assertDirectiveLiteral=function(e,t){i("DirectiveLiteral",e,t)},t.assertDoExpression=function(e,t){i("DoExpression",e,t)},t.assertDoWhileStatement=function(e,t){i("DoWhileStatement",e,t)},t.assertEmptyStatement=function(e,t){i("EmptyStatement",e,t)},t.assertEmptyTypeAnnotation=function(e,t){i("EmptyTypeAnnotation",e,t)},t.assertEnumBody=function(e,t){i("EnumBody",e,t)},t.assertEnumBooleanBody=function(e,t){i("EnumBooleanBody",e,t)},t.assertEnumBooleanMember=function(e,t){i("EnumBooleanMember",e,t)},t.assertEnumDeclaration=function(e,t){i("EnumDeclaration",e,t)},t.assertEnumDefaultedMember=function(e,t){i("EnumDefaultedMember",e,t)},t.assertEnumMember=function(e,t){i("EnumMember",e,t)},t.assertEnumNumberBody=function(e,t){i("EnumNumberBody",e,t)},t.assertEnumNumberMember=function(e,t){i("EnumNumberMember",e,t)},t.assertEnumStringBody=function(e,t){i("EnumStringBody",e,t)},t.assertEnumStringMember=function(e,t){i("EnumStringMember",e,t)},t.assertEnumSymbolBody=function(e,t){i("EnumSymbolBody",e,t)},t.assertExistsTypeAnnotation=function(e,t){i("ExistsTypeAnnotation",e,t)},t.assertExportAllDeclaration=function(e,t){i("ExportAllDeclaration",e,t)},t.assertExportDeclaration=function(e,t){i("ExportDeclaration",e,t)},t.assertExportDefaultDeclaration=function(e,t){i("ExportDefaultDeclaration",e,t)},t.assertExportDefaultSpecifier=function(e,t){i("ExportDefaultSpecifier",e,t)},t.assertExportNamedDeclaration=function(e,t){i("ExportNamedDeclaration",e,t)},t.assertExportNamespaceSpecifier=function(e,t){i("ExportNamespaceSpecifier",e,t)},t.assertExportSpecifier=function(e,t){i("ExportSpecifier",e,t)},t.assertExpression=function(e,t){i("Expression",e,t)},t.assertExpressionStatement=function(e,t){i("ExpressionStatement",e,t)},t.assertExpressionWrapper=function(e,t){i("ExpressionWrapper",e,t)},t.assertFile=function(e,t){i("File",e,t)},t.assertFlow=function(e,t){i("Flow",e,t)},t.assertFlowBaseAnnotation=function(e,t){i("FlowBaseAnnotation",e,t)},t.assertFlowDeclaration=function(e,t){i("FlowDeclaration",e,t)},t.assertFlowPredicate=function(e,t){i("FlowPredicate",e,t)},t.assertFlowType=function(e,t){i("FlowType",e,t)},t.assertFor=function(e,t){i("For",e,t)},t.assertForInStatement=function(e,t){i("ForInStatement",e,t)},t.assertForOfStatement=function(e,t){i("ForOfStatement",e,t)},t.assertForStatement=function(e,t){i("ForStatement",e,t)},t.assertForXStatement=function(e,t){i("ForXStatement",e,t)},t.assertFunction=function(e,t){i("Function",e,t)},t.assertFunctionDeclaration=function(e,t){i("FunctionDeclaration",e,t)},t.assertFunctionExpression=function(e,t){i("FunctionExpression",e,t)},t.assertFunctionParent=function(e,t){i("FunctionParent",e,t)},t.assertFunctionTypeAnnotation=function(e,t){i("FunctionTypeAnnotation",e,t)},t.assertFunctionTypeParam=function(e,t){i("FunctionTypeParam",e,t)},t.assertGenericTypeAnnotation=function(e,t){i("GenericTypeAnnotation",e,t)},t.assertIdentifier=function(e,t){i("Identifier",e,t)},t.assertIfStatement=function(e,t){i("IfStatement",e,t)},t.assertImmutable=function(e,t){i("Immutable",e,t)},t.assertImport=function(e,t){i("Import",e,t)},t.assertImportAttribute=function(e,t){i("ImportAttribute",e,t)},t.assertImportDeclaration=function(e,t){i("ImportDeclaration",e,t)},t.assertImportDefaultSpecifier=function(e,t){i("ImportDefaultSpecifier",e,t)},t.assertImportNamespaceSpecifier=function(e,t){i("ImportNamespaceSpecifier",e,t)},t.assertImportOrExportDeclaration=function(e,t){i("ImportOrExportDeclaration",e,t)},t.assertImportSpecifier=function(e,t){i("ImportSpecifier",e,t)},t.assertIndexedAccessType=function(e,t){i("IndexedAccessType",e,t)},t.assertInferredPredicate=function(e,t){i("InferredPredicate",e,t)},t.assertInterfaceDeclaration=function(e,t){i("InterfaceDeclaration",e,t)},t.assertInterfaceExtends=function(e,t){i("InterfaceExtends",e,t)},t.assertInterfaceTypeAnnotation=function(e,t){i("InterfaceTypeAnnotation",e,t)},t.assertInterpreterDirective=function(e,t){i("InterpreterDirective",e,t)},t.assertIntersectionTypeAnnotation=function(e,t){i("IntersectionTypeAnnotation",e,t)},t.assertJSX=function(e,t){i("JSX",e,t)},t.assertJSXAttribute=function(e,t){i("JSXAttribute",e,t)},t.assertJSXClosingElement=function(e,t){i("JSXClosingElement",e,t)},t.assertJSXClosingFragment=function(e,t){i("JSXClosingFragment",e,t)},t.assertJSXElement=function(e,t){i("JSXElement",e,t)},t.assertJSXEmptyExpression=function(e,t){i("JSXEmptyExpression",e,t)},t.assertJSXExpressionContainer=function(e,t){i("JSXExpressionContainer",e,t)},t.assertJSXFragment=function(e,t){i("JSXFragment",e,t)},t.assertJSXIdentifier=function(e,t){i("JSXIdentifier",e,t)},t.assertJSXMemberExpression=function(e,t){i("JSXMemberExpression",e,t)},t.assertJSXNamespacedName=function(e,t){i("JSXNamespacedName",e,t)},t.assertJSXOpeningElement=function(e,t){i("JSXOpeningElement",e,t)},t.assertJSXOpeningFragment=function(e,t){i("JSXOpeningFragment",e,t)},t.assertJSXSpreadAttribute=function(e,t){i("JSXSpreadAttribute",e,t)},t.assertJSXSpreadChild=function(e,t){i("JSXSpreadChild",e,t)},t.assertJSXText=function(e,t){i("JSXText",e,t)},t.assertLVal=function(e,t){i("LVal",e,t)},t.assertLabeledStatement=function(e,t){i("LabeledStatement",e,t)},t.assertLiteral=function(e,t){i("Literal",e,t)},t.assertLogicalExpression=function(e,t){i("LogicalExpression",e,t)},t.assertLoop=function(e,t){i("Loop",e,t)},t.assertMemberExpression=function(e,t){i("MemberExpression",e,t)},t.assertMetaProperty=function(e,t){i("MetaProperty",e,t)},t.assertMethod=function(e,t){i("Method",e,t)},t.assertMiscellaneous=function(e,t){i("Miscellaneous",e,t)},t.assertMixedTypeAnnotation=function(e,t){i("MixedTypeAnnotation",e,t)},t.assertModuleDeclaration=function(e,t){(0,a.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),i("ModuleDeclaration",e,t)},t.assertModuleExpression=function(e,t){i("ModuleExpression",e,t)},t.assertModuleSpecifier=function(e,t){i("ModuleSpecifier",e,t)},t.assertNewExpression=function(e,t){i("NewExpression",e,t)},t.assertNoop=function(e,t){i("Noop",e,t)},t.assertNullLiteral=function(e,t){i("NullLiteral",e,t)},t.assertNullLiteralTypeAnnotation=function(e,t){i("NullLiteralTypeAnnotation",e,t)},t.assertNullableTypeAnnotation=function(e,t){i("NullableTypeAnnotation",e,t)},t.assertNumberLiteral=function(e,t){(0,a.default)("assertNumberLiteral","assertNumericLiteral"),i("NumberLiteral",e,t)},t.assertNumberLiteralTypeAnnotation=function(e,t){i("NumberLiteralTypeAnnotation",e,t)},t.assertNumberTypeAnnotation=function(e,t){i("NumberTypeAnnotation",e,t)},t.assertNumericLiteral=function(e,t){i("NumericLiteral",e,t)},t.assertObjectExpression=function(e,t){i("ObjectExpression",e,t)},t.assertObjectMember=function(e,t){i("ObjectMember",e,t)},t.assertObjectMethod=function(e,t){i("ObjectMethod",e,t)},t.assertObjectPattern=function(e,t){i("ObjectPattern",e,t)},t.assertObjectProperty=function(e,t){i("ObjectProperty",e,t)},t.assertObjectTypeAnnotation=function(e,t){i("ObjectTypeAnnotation",e,t)},t.assertObjectTypeCallProperty=function(e,t){i("ObjectTypeCallProperty",e,t)},t.assertObjectTypeIndexer=function(e,t){i("ObjectTypeIndexer",e,t)},t.assertObjectTypeInternalSlot=function(e,t){i("ObjectTypeInternalSlot",e,t)},t.assertObjectTypeProperty=function(e,t){i("ObjectTypeProperty",e,t)},t.assertObjectTypeSpreadProperty=function(e,t){i("ObjectTypeSpreadProperty",e,t)},t.assertOpaqueType=function(e,t){i("OpaqueType",e,t)},t.assertOptionalCallExpression=function(e,t){i("OptionalCallExpression",e,t)},t.assertOptionalIndexedAccessType=function(e,t){i("OptionalIndexedAccessType",e,t)},t.assertOptionalMemberExpression=function(e,t){i("OptionalMemberExpression",e,t)},t.assertParenthesizedExpression=function(e,t){i("ParenthesizedExpression",e,t)},t.assertPattern=function(e,t){i("Pattern",e,t)},t.assertPatternLike=function(e,t){i("PatternLike",e,t)},t.assertPipelineBareFunction=function(e,t){i("PipelineBareFunction",e,t)},t.assertPipelinePrimaryTopicReference=function(e,t){i("PipelinePrimaryTopicReference",e,t)},t.assertPipelineTopicExpression=function(e,t){i("PipelineTopicExpression",e,t)},t.assertPlaceholder=function(e,t){i("Placeholder",e,t)},t.assertPrivate=function(e,t){i("Private",e,t)},t.assertPrivateName=function(e,t){i("PrivateName",e,t)},t.assertProgram=function(e,t){i("Program",e,t)},t.assertProperty=function(e,t){i("Property",e,t)},t.assertPureish=function(e,t){i("Pureish",e,t)},t.assertQualifiedTypeIdentifier=function(e,t){i("QualifiedTypeIdentifier",e,t)},t.assertRecordExpression=function(e,t){i("RecordExpression",e,t)},t.assertRegExpLiteral=function(e,t){i("RegExpLiteral",e,t)},t.assertRegexLiteral=function(e,t){(0,a.default)("assertRegexLiteral","assertRegExpLiteral"),i("RegexLiteral",e,t)},t.assertRestElement=function(e,t){i("RestElement",e,t)},t.assertRestProperty=function(e,t){(0,a.default)("assertRestProperty","assertRestElement"),i("RestProperty",e,t)},t.assertReturnStatement=function(e,t){i("ReturnStatement",e,t)},t.assertScopable=function(e,t){i("Scopable",e,t)},t.assertSequenceExpression=function(e,t){i("SequenceExpression",e,t)},t.assertSpreadElement=function(e,t){i("SpreadElement",e,t)},t.assertSpreadProperty=function(e,t){(0,a.default)("assertSpreadProperty","assertSpreadElement"),i("SpreadProperty",e,t)},t.assertStandardized=function(e,t){i("Standardized",e,t)},t.assertStatement=function(e,t){i("Statement",e,t)},t.assertStaticBlock=function(e,t){i("StaticBlock",e,t)},t.assertStringLiteral=function(e,t){i("StringLiteral",e,t)},t.assertStringLiteralTypeAnnotation=function(e,t){i("StringLiteralTypeAnnotation",e,t)},t.assertStringTypeAnnotation=function(e,t){i("StringTypeAnnotation",e,t)},t.assertSuper=function(e,t){i("Super",e,t)},t.assertSwitchCase=function(e,t){i("SwitchCase",e,t)},t.assertSwitchStatement=function(e,t){i("SwitchStatement",e,t)},t.assertSymbolTypeAnnotation=function(e,t){i("SymbolTypeAnnotation",e,t)},t.assertTSAnyKeyword=function(e,t){i("TSAnyKeyword",e,t)},t.assertTSArrayType=function(e,t){i("TSArrayType",e,t)},t.assertTSAsExpression=function(e,t){i("TSAsExpression",e,t)},t.assertTSBaseType=function(e,t){i("TSBaseType",e,t)},t.assertTSBigIntKeyword=function(e,t){i("TSBigIntKeyword",e,t)},t.assertTSBooleanKeyword=function(e,t){i("TSBooleanKeyword",e,t)},t.assertTSCallSignatureDeclaration=function(e,t){i("TSCallSignatureDeclaration",e,t)},t.assertTSConditionalType=function(e,t){i("TSConditionalType",e,t)},t.assertTSConstructSignatureDeclaration=function(e,t){i("TSConstructSignatureDeclaration",e,t)},t.assertTSConstructorType=function(e,t){i("TSConstructorType",e,t)},t.assertTSDeclareFunction=function(e,t){i("TSDeclareFunction",e,t)},t.assertTSDeclareMethod=function(e,t){i("TSDeclareMethod",e,t)},t.assertTSEntityName=function(e,t){i("TSEntityName",e,t)},t.assertTSEnumDeclaration=function(e,t){i("TSEnumDeclaration",e,t)},t.assertTSEnumMember=function(e,t){i("TSEnumMember",e,t)},t.assertTSExportAssignment=function(e,t){i("TSExportAssignment",e,t)},t.assertTSExpressionWithTypeArguments=function(e,t){i("TSExpressionWithTypeArguments",e,t)},t.assertTSExternalModuleReference=function(e,t){i("TSExternalModuleReference",e,t)},t.assertTSFunctionType=function(e,t){i("TSFunctionType",e,t)},t.assertTSImportEqualsDeclaration=function(e,t){i("TSImportEqualsDeclaration",e,t)},t.assertTSImportType=function(e,t){i("TSImportType",e,t)},t.assertTSIndexSignature=function(e,t){i("TSIndexSignature",e,t)},t.assertTSIndexedAccessType=function(e,t){i("TSIndexedAccessType",e,t)},t.assertTSInferType=function(e,t){i("TSInferType",e,t)},t.assertTSInstantiationExpression=function(e,t){i("TSInstantiationExpression",e,t)},t.assertTSInterfaceBody=function(e,t){i("TSInterfaceBody",e,t)},t.assertTSInterfaceDeclaration=function(e,t){i("TSInterfaceDeclaration",e,t)},t.assertTSIntersectionType=function(e,t){i("TSIntersectionType",e,t)},t.assertTSIntrinsicKeyword=function(e,t){i("TSIntrinsicKeyword",e,t)},t.assertTSLiteralType=function(e,t){i("TSLiteralType",e,t)},t.assertTSMappedType=function(e,t){i("TSMappedType",e,t)},t.assertTSMethodSignature=function(e,t){i("TSMethodSignature",e,t)},t.assertTSModuleBlock=function(e,t){i("TSModuleBlock",e,t)},t.assertTSModuleDeclaration=function(e,t){i("TSModuleDeclaration",e,t)},t.assertTSNamedTupleMember=function(e,t){i("TSNamedTupleMember",e,t)},t.assertTSNamespaceExportDeclaration=function(e,t){i("TSNamespaceExportDeclaration",e,t)},t.assertTSNeverKeyword=function(e,t){i("TSNeverKeyword",e,t)},t.assertTSNonNullExpression=function(e,t){i("TSNonNullExpression",e,t)},t.assertTSNullKeyword=function(e,t){i("TSNullKeyword",e,t)},t.assertTSNumberKeyword=function(e,t){i("TSNumberKeyword",e,t)},t.assertTSObjectKeyword=function(e,t){i("TSObjectKeyword",e,t)},t.assertTSOptionalType=function(e,t){i("TSOptionalType",e,t)},t.assertTSParameterProperty=function(e,t){i("TSParameterProperty",e,t)},t.assertTSParenthesizedType=function(e,t){i("TSParenthesizedType",e,t)},t.assertTSPropertySignature=function(e,t){i("TSPropertySignature",e,t)},t.assertTSQualifiedName=function(e,t){i("TSQualifiedName",e,t)},t.assertTSRestType=function(e,t){i("TSRestType",e,t)},t.assertTSSatisfiesExpression=function(e,t){i("TSSatisfiesExpression",e,t)},t.assertTSStringKeyword=function(e,t){i("TSStringKeyword",e,t)},t.assertTSSymbolKeyword=function(e,t){i("TSSymbolKeyword",e,t)},t.assertTSThisType=function(e,t){i("TSThisType",e,t)},t.assertTSTupleType=function(e,t){i("TSTupleType",e,t)},t.assertTSType=function(e,t){i("TSType",e,t)},t.assertTSTypeAliasDeclaration=function(e,t){i("TSTypeAliasDeclaration",e,t)},t.assertTSTypeAnnotation=function(e,t){i("TSTypeAnnotation",e,t)},t.assertTSTypeAssertion=function(e,t){i("TSTypeAssertion",e,t)},t.assertTSTypeElement=function(e,t){i("TSTypeElement",e,t)},t.assertTSTypeLiteral=function(e,t){i("TSTypeLiteral",e,t)},t.assertTSTypeOperator=function(e,t){i("TSTypeOperator",e,t)},t.assertTSTypeParameter=function(e,t){i("TSTypeParameter",e,t)},t.assertTSTypeParameterDeclaration=function(e,t){i("TSTypeParameterDeclaration",e,t)},t.assertTSTypeParameterInstantiation=function(e,t){i("TSTypeParameterInstantiation",e,t)},t.assertTSTypePredicate=function(e,t){i("TSTypePredicate",e,t)},t.assertTSTypeQuery=function(e,t){i("TSTypeQuery",e,t)},t.assertTSTypeReference=function(e,t){i("TSTypeReference",e,t)},t.assertTSUndefinedKeyword=function(e,t){i("TSUndefinedKeyword",e,t)},t.assertTSUnionType=function(e,t){i("TSUnionType",e,t)},t.assertTSUnknownKeyword=function(e,t){i("TSUnknownKeyword",e,t)},t.assertTSVoidKeyword=function(e,t){i("TSVoidKeyword",e,t)},t.assertTaggedTemplateExpression=function(e,t){i("TaggedTemplateExpression",e,t)},t.assertTemplateElement=function(e,t){i("TemplateElement",e,t)},t.assertTemplateLiteral=function(e,t){i("TemplateLiteral",e,t)},t.assertTerminatorless=function(e,t){i("Terminatorless",e,t)},t.assertThisExpression=function(e,t){i("ThisExpression",e,t)},t.assertThisTypeAnnotation=function(e,t){i("ThisTypeAnnotation",e,t)},t.assertThrowStatement=function(e,t){i("ThrowStatement",e,t)},t.assertTopicReference=function(e,t){i("TopicReference",e,t)},t.assertTryStatement=function(e,t){i("TryStatement",e,t)},t.assertTupleExpression=function(e,t){i("TupleExpression",e,t)},t.assertTupleTypeAnnotation=function(e,t){i("TupleTypeAnnotation",e,t)},t.assertTypeAlias=function(e,t){i("TypeAlias",e,t)},t.assertTypeAnnotation=function(e,t){i("TypeAnnotation",e,t)},t.assertTypeCastExpression=function(e,t){i("TypeCastExpression",e,t)},t.assertTypeParameter=function(e,t){i("TypeParameter",e,t)},t.assertTypeParameterDeclaration=function(e,t){i("TypeParameterDeclaration",e,t)},t.assertTypeParameterInstantiation=function(e,t){i("TypeParameterInstantiation",e,t)},t.assertTypeScript=function(e,t){i("TypeScript",e,t)},t.assertTypeofTypeAnnotation=function(e,t){i("TypeofTypeAnnotation",e,t)},t.assertUnaryExpression=function(e,t){i("UnaryExpression",e,t)},t.assertUnaryLike=function(e,t){i("UnaryLike",e,t)},t.assertUnionTypeAnnotation=function(e,t){i("UnionTypeAnnotation",e,t)},t.assertUpdateExpression=function(e,t){i("UpdateExpression",e,t)},t.assertUserWhitespacable=function(e,t){i("UserWhitespacable",e,t)},t.assertV8IntrinsicIdentifier=function(e,t){i("V8IntrinsicIdentifier",e,t)},t.assertVariableDeclaration=function(e,t){i("VariableDeclaration",e,t)},t.assertVariableDeclarator=function(e,t){i("VariableDeclarator",e,t)},t.assertVariance=function(e,t){i("Variance",e,t)},t.assertVoidTypeAnnotation=function(e,t){i("VoidTypeAnnotation",e,t)},t.assertWhile=function(e,t){i("While",e,t)},t.assertWhileStatement=function(e,t){i("WhileStatement",e,t)},t.assertWithStatement=function(e,t){i("WithStatement",e,t)},t.assertYieldExpression=function(e,t){i("YieldExpression",e,t)};var r=n(11114),a=n(39298);function i(e,t,n){if(!(0,r.default)(e,t,n))throw new Error(`Expected type "${e}" with option ${JSON.stringify(n)}, but instead got "${t.type}".`)}},97023:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,a.default)(e);return 1===t.length?t[0]:(0,r.unionTypeAnnotation)(t)};var r=n(88270),a=n(51338)},88236:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(88270);t.default=function(e){switch(e){case"string":return(0,r.stringTypeAnnotation)();case"number":return(0,r.numberTypeAnnotation)();case"undefined":return(0,r.voidTypeAnnotation)();case"boolean":return(0,r.booleanTypeAnnotation)();case"function":return(0,r.genericTypeAnnotation)((0,r.identifier)("Function"));case"object":return(0,r.genericTypeAnnotation)((0,r.identifier)("Object"));case"symbol":return(0,r.genericTypeAnnotation)((0,r.identifier)("Symbol"));case"bigint":return(0,r.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+e)}},88270:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anyTypeAnnotation=function(){return{type:"AnyTypeAnnotation"}},t.argumentPlaceholder=function(){return{type:"ArgumentPlaceholder"}},t.arrayExpression=function(e=[]){return(0,r.default)({type:"ArrayExpression",elements:e})},t.arrayPattern=function(e){return(0,r.default)({type:"ArrayPattern",elements:e})},t.arrayTypeAnnotation=function(e){return(0,r.default)({type:"ArrayTypeAnnotation",elementType:e})},t.arrowFunctionExpression=function(e,t,n=!1){return(0,r.default)({type:"ArrowFunctionExpression",params:e,body:t,async:n,expression:null})},t.assignmentExpression=function(e,t,n){return(0,r.default)({type:"AssignmentExpression",operator:e,left:t,right:n})},t.assignmentPattern=function(e,t){return(0,r.default)({type:"AssignmentPattern",left:e,right:t})},t.awaitExpression=function(e){return(0,r.default)({type:"AwaitExpression",argument:e})},t.bigIntLiteral=function(e){return(0,r.default)({type:"BigIntLiteral",value:e})},t.binaryExpression=function(e,t,n){return(0,r.default)({type:"BinaryExpression",operator:e,left:t,right:n})},t.bindExpression=function(e,t){return(0,r.default)({type:"BindExpression",object:e,callee:t})},t.blockStatement=function(e,t=[]){return(0,r.default)({type:"BlockStatement",body:e,directives:t})},t.booleanLiteral=function(e){return(0,r.default)({type:"BooleanLiteral",value:e})},t.booleanLiteralTypeAnnotation=function(e){return(0,r.default)({type:"BooleanLiteralTypeAnnotation",value:e})},t.booleanTypeAnnotation=function(){return{type:"BooleanTypeAnnotation"}},t.breakStatement=function(e=null){return(0,r.default)({type:"BreakStatement",label:e})},t.callExpression=function(e,t){return(0,r.default)({type:"CallExpression",callee:e,arguments:t})},t.catchClause=function(e=null,t){return(0,r.default)({type:"CatchClause",param:e,body:t})},t.classAccessorProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.classBody=function(e){return(0,r.default)({type:"ClassBody",body:e})},t.classDeclaration=function(e,t=null,n,a=null){return(0,r.default)({type:"ClassDeclaration",id:e,superClass:t,body:n,decorators:a})},t.classExpression=function(e=null,t=null,n,a=null){return(0,r.default)({type:"ClassExpression",id:e,superClass:t,body:n,decorators:a})},t.classImplements=function(e,t=null){return(0,r.default)({type:"ClassImplements",id:e,typeParameters:t})},t.classMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1,l=!1){return(0,r.default)({type:"ClassMethod",kind:e,key:t,params:n,body:a,computed:i,static:s,generator:o,async:l})},t.classPrivateMethod=function(e="method",t,n,a,i=!1){return(0,r.default)({type:"ClassPrivateMethod",kind:e,key:t,params:n,body:a,static:i})},t.classPrivateProperty=function(e,t=null,n=null,a=!1){return(0,r.default)({type:"ClassPrivateProperty",key:e,value:t,decorators:n,static:a})},t.classProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.conditionalExpression=function(e,t,n){return(0,r.default)({type:"ConditionalExpression",test:e,consequent:t,alternate:n})},t.continueStatement=function(e=null){return(0,r.default)({type:"ContinueStatement",label:e})},t.debuggerStatement=function(){return{type:"DebuggerStatement"}},t.decimalLiteral=function(e){return(0,r.default)({type:"DecimalLiteral",value:e})},t.declareClass=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareClass",id:e,typeParameters:t,extends:n,body:a})},t.declareExportAllDeclaration=function(e){return(0,r.default)({type:"DeclareExportAllDeclaration",source:e})},t.declareExportDeclaration=function(e=null,t=null,n=null){return(0,r.default)({type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:n})},t.declareFunction=function(e){return(0,r.default)({type:"DeclareFunction",id:e})},t.declareInterface=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareInterface",id:e,typeParameters:t,extends:n,body:a})},t.declareModule=function(e,t,n=null){return(0,r.default)({type:"DeclareModule",id:e,body:t,kind:n})},t.declareModuleExports=function(e){return(0,r.default)({type:"DeclareModuleExports",typeAnnotation:e})},t.declareOpaqueType=function(e,t=null,n=null){return(0,r.default)({type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:n})},t.declareTypeAlias=function(e,t=null,n){return(0,r.default)({type:"DeclareTypeAlias",id:e,typeParameters:t,right:n})},t.declareVariable=function(e){return(0,r.default)({type:"DeclareVariable",id:e})},t.declaredPredicate=function(e){return(0,r.default)({type:"DeclaredPredicate",value:e})},t.decorator=function(e){return(0,r.default)({type:"Decorator",expression:e})},t.directive=function(e){return(0,r.default)({type:"Directive",value:e})},t.directiveLiteral=function(e){return(0,r.default)({type:"DirectiveLiteral",value:e})},t.doExpression=function(e,t=!1){return(0,r.default)({type:"DoExpression",body:e,async:t})},t.doWhileStatement=function(e,t){return(0,r.default)({type:"DoWhileStatement",test:e,body:t})},t.emptyStatement=function(){return{type:"EmptyStatement"}},t.emptyTypeAnnotation=function(){return{type:"EmptyTypeAnnotation"}},t.enumBooleanBody=function(e){return(0,r.default)({type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumBooleanMember=function(e){return(0,r.default)({type:"EnumBooleanMember",id:e,init:null})},t.enumDeclaration=function(e,t){return(0,r.default)({type:"EnumDeclaration",id:e,body:t})},t.enumDefaultedMember=function(e){return(0,r.default)({type:"EnumDefaultedMember",id:e})},t.enumNumberBody=function(e){return(0,r.default)({type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumNumberMember=function(e,t){return(0,r.default)({type:"EnumNumberMember",id:e,init:t})},t.enumStringBody=function(e){return(0,r.default)({type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumStringMember=function(e,t){return(0,r.default)({type:"EnumStringMember",id:e,init:t})},t.enumSymbolBody=function(e){return(0,r.default)({type:"EnumSymbolBody",members:e,hasUnknownMembers:null})},t.existsTypeAnnotation=function(){return{type:"ExistsTypeAnnotation"}},t.exportAllDeclaration=function(e){return(0,r.default)({type:"ExportAllDeclaration",source:e})},t.exportDefaultDeclaration=function(e){return(0,r.default)({type:"ExportDefaultDeclaration",declaration:e})},t.exportDefaultSpecifier=function(e){return(0,r.default)({type:"ExportDefaultSpecifier",exported:e})},t.exportNamedDeclaration=function(e=null,t=[],n=null){return(0,r.default)({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n})},t.exportNamespaceSpecifier=function(e){return(0,r.default)({type:"ExportNamespaceSpecifier",exported:e})},t.exportSpecifier=function(e,t){return(0,r.default)({type:"ExportSpecifier",local:e,exported:t})},t.expressionStatement=function(e){return(0,r.default)({type:"ExpressionStatement",expression:e})},t.file=function(e,t=null,n=null){return(0,r.default)({type:"File",program:e,comments:t,tokens:n})},t.forInStatement=function(e,t,n){return(0,r.default)({type:"ForInStatement",left:e,right:t,body:n})},t.forOfStatement=function(e,t,n,a=!1){return(0,r.default)({type:"ForOfStatement",left:e,right:t,body:n,await:a})},t.forStatement=function(e=null,t=null,n=null,a){return(0,r.default)({type:"ForStatement",init:e,test:t,update:n,body:a})},t.functionDeclaration=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionDeclaration",id:e,params:t,body:n,generator:a,async:i})},t.functionExpression=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionExpression",id:e,params:t,body:n,generator:a,async:i})},t.functionTypeAnnotation=function(e=null,t,n=null,a){return(0,r.default)({type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:n,returnType:a})},t.functionTypeParam=function(e=null,t){return(0,r.default)({type:"FunctionTypeParam",name:e,typeAnnotation:t})},t.genericTypeAnnotation=function(e,t=null){return(0,r.default)({type:"GenericTypeAnnotation",id:e,typeParameters:t})},t.identifier=function(e){return(0,r.default)({type:"Identifier",name:e})},t.ifStatement=function(e,t,n=null){return(0,r.default)({type:"IfStatement",test:e,consequent:t,alternate:n})},t.import=function(){return{type:"Import"}},t.importAttribute=function(e,t){return(0,r.default)({type:"ImportAttribute",key:e,value:t})},t.importDeclaration=function(e,t){return(0,r.default)({type:"ImportDeclaration",specifiers:e,source:t})},t.importDefaultSpecifier=function(e){return(0,r.default)({type:"ImportDefaultSpecifier",local:e})},t.importNamespaceSpecifier=function(e){return(0,r.default)({type:"ImportNamespaceSpecifier",local:e})},t.importSpecifier=function(e,t){return(0,r.default)({type:"ImportSpecifier",local:e,imported:t})},t.indexedAccessType=function(e,t){return(0,r.default)({type:"IndexedAccessType",objectType:e,indexType:t})},t.inferredPredicate=function(){return{type:"InferredPredicate"}},t.interfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"InterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.interfaceExtends=function(e,t=null){return(0,r.default)({type:"InterfaceExtends",id:e,typeParameters:t})},t.interfaceTypeAnnotation=function(e=null,t){return(0,r.default)({type:"InterfaceTypeAnnotation",extends:e,body:t})},t.interpreterDirective=function(e){return(0,r.default)({type:"InterpreterDirective",value:e})},t.intersectionTypeAnnotation=function(e){return(0,r.default)({type:"IntersectionTypeAnnotation",types:e})},t.jSXAttribute=t.jsxAttribute=function(e,t=null){return(0,r.default)({type:"JSXAttribute",name:e,value:t})},t.jSXClosingElement=t.jsxClosingElement=function(e){return(0,r.default)({type:"JSXClosingElement",name:e})},t.jSXClosingFragment=t.jsxClosingFragment=function(){return{type:"JSXClosingFragment"}},t.jSXElement=t.jsxElement=function(e,t=null,n,a=null){return(0,r.default)({type:"JSXElement",openingElement:e,closingElement:t,children:n,selfClosing:a})},t.jSXEmptyExpression=t.jsxEmptyExpression=function(){return{type:"JSXEmptyExpression"}},t.jSXExpressionContainer=t.jsxExpressionContainer=function(e){return(0,r.default)({type:"JSXExpressionContainer",expression:e})},t.jSXFragment=t.jsxFragment=function(e,t,n){return(0,r.default)({type:"JSXFragment",openingFragment:e,closingFragment:t,children:n})},t.jSXIdentifier=t.jsxIdentifier=function(e){return(0,r.default)({type:"JSXIdentifier",name:e})},t.jSXMemberExpression=t.jsxMemberExpression=function(e,t){return(0,r.default)({type:"JSXMemberExpression",object:e,property:t})},t.jSXNamespacedName=t.jsxNamespacedName=function(e,t){return(0,r.default)({type:"JSXNamespacedName",namespace:e,name:t})},t.jSXOpeningElement=t.jsxOpeningElement=function(e,t,n=!1){return(0,r.default)({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n})},t.jSXOpeningFragment=t.jsxOpeningFragment=function(){return{type:"JSXOpeningFragment"}},t.jSXSpreadAttribute=t.jsxSpreadAttribute=function(e){return(0,r.default)({type:"JSXSpreadAttribute",argument:e})},t.jSXSpreadChild=t.jsxSpreadChild=function(e){return(0,r.default)({type:"JSXSpreadChild",expression:e})},t.jSXText=t.jsxText=function(e){return(0,r.default)({type:"JSXText",value:e})},t.labeledStatement=function(e,t){return(0,r.default)({type:"LabeledStatement",label:e,body:t})},t.logicalExpression=function(e,t,n){return(0,r.default)({type:"LogicalExpression",operator:e,left:t,right:n})},t.memberExpression=function(e,t,n=!1,a=null){return(0,r.default)({type:"MemberExpression",object:e,property:t,computed:n,optional:a})},t.metaProperty=function(e,t){return(0,r.default)({type:"MetaProperty",meta:e,property:t})},t.mixedTypeAnnotation=function(){return{type:"MixedTypeAnnotation"}},t.moduleExpression=function(e){return(0,r.default)({type:"ModuleExpression",body:e})},t.newExpression=function(e,t){return(0,r.default)({type:"NewExpression",callee:e,arguments:t})},t.noop=function(){return{type:"Noop"}},t.nullLiteral=function(){return{type:"NullLiteral"}},t.nullLiteralTypeAnnotation=function(){return{type:"NullLiteralTypeAnnotation"}},t.nullableTypeAnnotation=function(e){return(0,r.default)({type:"NullableTypeAnnotation",typeAnnotation:e})},t.numberLiteral=function(e){return(0,a.default)("NumberLiteral","NumericLiteral","The node type "),i(e)},t.numberLiteralTypeAnnotation=function(e){return(0,r.default)({type:"NumberLiteralTypeAnnotation",value:e})},t.numberTypeAnnotation=function(){return{type:"NumberTypeAnnotation"}},t.numericLiteral=i,t.objectExpression=function(e){return(0,r.default)({type:"ObjectExpression",properties:e})},t.objectMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1){return(0,r.default)({type:"ObjectMethod",kind:e,key:t,params:n,body:a,computed:i,generator:s,async:o})},t.objectPattern=function(e){return(0,r.default)({type:"ObjectPattern",properties:e})},t.objectProperty=function(e,t,n=!1,a=!1,i=null){return(0,r.default)({type:"ObjectProperty",key:e,value:t,computed:n,shorthand:a,decorators:i})},t.objectTypeAnnotation=function(e,t=[],n=[],a=[],i=!1){return(0,r.default)({type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:n,internalSlots:a,exact:i})},t.objectTypeCallProperty=function(e){return(0,r.default)({type:"ObjectTypeCallProperty",value:e,static:null})},t.objectTypeIndexer=function(e=null,t,n,a=null){return(0,r.default)({type:"ObjectTypeIndexer",id:e,key:t,value:n,variance:a,static:null})},t.objectTypeInternalSlot=function(e,t,n,a,i){return(0,r.default)({type:"ObjectTypeInternalSlot",id:e,value:t,optional:n,static:a,method:i})},t.objectTypeProperty=function(e,t,n=null){return(0,r.default)({type:"ObjectTypeProperty",key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null})},t.objectTypeSpreadProperty=function(e){return(0,r.default)({type:"ObjectTypeSpreadProperty",argument:e})},t.opaqueType=function(e,t=null,n=null,a){return(0,r.default)({type:"OpaqueType",id:e,typeParameters:t,supertype:n,impltype:a})},t.optionalCallExpression=function(e,t,n){return(0,r.default)({type:"OptionalCallExpression",callee:e,arguments:t,optional:n})},t.optionalIndexedAccessType=function(e,t){return(0,r.default)({type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null})},t.optionalMemberExpression=function(e,t,n=!1,a){return(0,r.default)({type:"OptionalMemberExpression",object:e,property:t,computed:n,optional:a})},t.parenthesizedExpression=function(e){return(0,r.default)({type:"ParenthesizedExpression",expression:e})},t.pipelineBareFunction=function(e){return(0,r.default)({type:"PipelineBareFunction",callee:e})},t.pipelinePrimaryTopicReference=function(){return{type:"PipelinePrimaryTopicReference"}},t.pipelineTopicExpression=function(e){return(0,r.default)({type:"PipelineTopicExpression",expression:e})},t.placeholder=function(e,t){return(0,r.default)({type:"Placeholder",expectedNode:e,name:t})},t.privateName=function(e){return(0,r.default)({type:"PrivateName",id:e})},t.program=function(e,t=[],n="script",a=null){return(0,r.default)({type:"Program",body:e,directives:t,sourceType:n,interpreter:a,sourceFile:null})},t.qualifiedTypeIdentifier=function(e,t){return(0,r.default)({type:"QualifiedTypeIdentifier",id:e,qualification:t})},t.recordExpression=function(e){return(0,r.default)({type:"RecordExpression",properties:e})},t.regExpLiteral=s,t.regexLiteral=function(e,t=""){return(0,a.default)("RegexLiteral","RegExpLiteral","The node type "),s(e,t)},t.restElement=o,t.restProperty=function(e){return(0,a.default)("RestProperty","RestElement","The node type "),o(e)},t.returnStatement=function(e=null){return(0,r.default)({type:"ReturnStatement",argument:e})},t.sequenceExpression=function(e){return(0,r.default)({type:"SequenceExpression",expressions:e})},t.spreadElement=l,t.spreadProperty=function(e){return(0,a.default)("SpreadProperty","SpreadElement","The node type "),l(e)},t.staticBlock=function(e){return(0,r.default)({type:"StaticBlock",body:e})},t.stringLiteral=function(e){return(0,r.default)({type:"StringLiteral",value:e})},t.stringLiteralTypeAnnotation=function(e){return(0,r.default)({type:"StringLiteralTypeAnnotation",value:e})},t.stringTypeAnnotation=function(){return{type:"StringTypeAnnotation"}},t.super=function(){return{type:"Super"}},t.switchCase=function(e=null,t){return(0,r.default)({type:"SwitchCase",test:e,consequent:t})},t.switchStatement=function(e,t){return(0,r.default)({type:"SwitchStatement",discriminant:e,cases:t})},t.symbolTypeAnnotation=function(){return{type:"SymbolTypeAnnotation"}},t.taggedTemplateExpression=function(e,t){return(0,r.default)({type:"TaggedTemplateExpression",tag:e,quasi:t})},t.templateElement=function(e,t=!1){return(0,r.default)({type:"TemplateElement",value:e,tail:t})},t.templateLiteral=function(e,t){return(0,r.default)({type:"TemplateLiteral",quasis:e,expressions:t})},t.thisExpression=function(){return{type:"ThisExpression"}},t.thisTypeAnnotation=function(){return{type:"ThisTypeAnnotation"}},t.throwStatement=function(e){return(0,r.default)({type:"ThrowStatement",argument:e})},t.topicReference=function(){return{type:"TopicReference"}},t.tryStatement=function(e,t=null,n=null){return(0,r.default)({type:"TryStatement",block:e,handler:t,finalizer:n})},t.tSAnyKeyword=t.tsAnyKeyword=function(){return{type:"TSAnyKeyword"}},t.tSArrayType=t.tsArrayType=function(e){return(0,r.default)({type:"TSArrayType",elementType:e})},t.tSAsExpression=t.tsAsExpression=function(e,t){return(0,r.default)({type:"TSAsExpression",expression:e,typeAnnotation:t})},t.tSBigIntKeyword=t.tsBigIntKeyword=function(){return{type:"TSBigIntKeyword"}},t.tSBooleanKeyword=t.tsBooleanKeyword=function(){return{type:"TSBooleanKeyword"}},t.tSCallSignatureDeclaration=t.tsCallSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConditionalType=t.tsConditionalType=function(e,t,n,a){return(0,r.default)({type:"TSConditionalType",checkType:e,extendsType:t,trueType:n,falseType:a})},t.tSConstructSignatureDeclaration=t.tsConstructSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConstructorType=t.tsConstructorType=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSDeclareFunction=t.tsDeclareFunction=function(e=null,t=null,n,a=null){return(0,r.default)({type:"TSDeclareFunction",id:e,typeParameters:t,params:n,returnType:a})},t.tSDeclareMethod=t.tsDeclareMethod=function(e=null,t,n=null,a,i=null){return(0,r.default)({type:"TSDeclareMethod",decorators:e,key:t,typeParameters:n,params:a,returnType:i})},t.tSEnumDeclaration=t.tsEnumDeclaration=function(e,t){return(0,r.default)({type:"TSEnumDeclaration",id:e,members:t})},t.tSEnumMember=t.tsEnumMember=function(e,t=null){return(0,r.default)({type:"TSEnumMember",id:e,initializer:t})},t.tSExportAssignment=t.tsExportAssignment=function(e){return(0,r.default)({type:"TSExportAssignment",expression:e})},t.tSExpressionWithTypeArguments=t.tsExpressionWithTypeArguments=function(e,t=null){return(0,r.default)({type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t})},t.tSExternalModuleReference=t.tsExternalModuleReference=function(e){return(0,r.default)({type:"TSExternalModuleReference",expression:e})},t.tSFunctionType=t.tsFunctionType=function(e=null,t,n=null){return(0,r.default)({type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSImportEqualsDeclaration=t.tsImportEqualsDeclaration=function(e,t){return(0,r.default)({type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null})},t.tSImportType=t.tsImportType=function(e,t=null,n=null){return(0,r.default)({type:"TSImportType",argument:e,qualifier:t,typeParameters:n})},t.tSIndexSignature=t.tsIndexSignature=function(e,t=null){return(0,r.default)({type:"TSIndexSignature",parameters:e,typeAnnotation:t})},t.tSIndexedAccessType=t.tsIndexedAccessType=function(e,t){return(0,r.default)({type:"TSIndexedAccessType",objectType:e,indexType:t})},t.tSInferType=t.tsInferType=function(e){return(0,r.default)({type:"TSInferType",typeParameter:e})},t.tSInstantiationExpression=t.tsInstantiationExpression=function(e,t=null){return(0,r.default)({type:"TSInstantiationExpression",expression:e,typeParameters:t})},t.tSInterfaceBody=t.tsInterfaceBody=function(e){return(0,r.default)({type:"TSInterfaceBody",body:e})},t.tSInterfaceDeclaration=t.tsInterfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.tSIntersectionType=t.tsIntersectionType=function(e){return(0,r.default)({type:"TSIntersectionType",types:e})},t.tSIntrinsicKeyword=t.tsIntrinsicKeyword=function(){return{type:"TSIntrinsicKeyword"}},t.tSLiteralType=t.tsLiteralType=function(e){return(0,r.default)({type:"TSLiteralType",literal:e})},t.tSMappedType=t.tsMappedType=function(e,t=null,n=null){return(0,r.default)({type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:n})},t.tSMethodSignature=t.tsMethodSignature=function(e,t=null,n,a=null){return(0,r.default)({type:"TSMethodSignature",key:e,typeParameters:t,parameters:n,typeAnnotation:a,kind:null})},t.tSModuleBlock=t.tsModuleBlock=function(e){return(0,r.default)({type:"TSModuleBlock",body:e})},t.tSModuleDeclaration=t.tsModuleDeclaration=function(e,t){return(0,r.default)({type:"TSModuleDeclaration",id:e,body:t})},t.tSNamedTupleMember=t.tsNamedTupleMember=function(e,t,n=!1){return(0,r.default)({type:"TSNamedTupleMember",label:e,elementType:t,optional:n})},t.tSNamespaceExportDeclaration=t.tsNamespaceExportDeclaration=function(e){return(0,r.default)({type:"TSNamespaceExportDeclaration",id:e})},t.tSNeverKeyword=t.tsNeverKeyword=function(){return{type:"TSNeverKeyword"}},t.tSNonNullExpression=t.tsNonNullExpression=function(e){return(0,r.default)({type:"TSNonNullExpression",expression:e})},t.tSNullKeyword=t.tsNullKeyword=function(){return{type:"TSNullKeyword"}},t.tSNumberKeyword=t.tsNumberKeyword=function(){return{type:"TSNumberKeyword"}},t.tSObjectKeyword=t.tsObjectKeyword=function(){return{type:"TSObjectKeyword"}},t.tSOptionalType=t.tsOptionalType=function(e){return(0,r.default)({type:"TSOptionalType",typeAnnotation:e})},t.tSParameterProperty=t.tsParameterProperty=function(e){return(0,r.default)({type:"TSParameterProperty",parameter:e})},t.tSParenthesizedType=t.tsParenthesizedType=function(e){return(0,r.default)({type:"TSParenthesizedType",typeAnnotation:e})},t.tSPropertySignature=t.tsPropertySignature=function(e,t=null,n=null){return(0,r.default)({type:"TSPropertySignature",key:e,typeAnnotation:t,initializer:n,kind:null})},t.tSQualifiedName=t.tsQualifiedName=function(e,t){return(0,r.default)({type:"TSQualifiedName",left:e,right:t})},t.tSRestType=t.tsRestType=function(e){return(0,r.default)({type:"TSRestType",typeAnnotation:e})},t.tSSatisfiesExpression=t.tsSatisfiesExpression=function(e,t){return(0,r.default)({type:"TSSatisfiesExpression",expression:e,typeAnnotation:t})},t.tSStringKeyword=t.tsStringKeyword=function(){return{type:"TSStringKeyword"}},t.tSSymbolKeyword=t.tsSymbolKeyword=function(){return{type:"TSSymbolKeyword"}},t.tSThisType=t.tsThisType=function(){return{type:"TSThisType"}},t.tSTupleType=t.tsTupleType=function(e){return(0,r.default)({type:"TSTupleType",elementTypes:e})},t.tSTypeAliasDeclaration=t.tsTypeAliasDeclaration=function(e,t=null,n){return(0,r.default)({type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:n})},t.tSTypeAnnotation=t.tsTypeAnnotation=function(e){return(0,r.default)({type:"TSTypeAnnotation",typeAnnotation:e})},t.tSTypeAssertion=t.tsTypeAssertion=function(e,t){return(0,r.default)({type:"TSTypeAssertion",typeAnnotation:e,expression:t})},t.tSTypeLiteral=t.tsTypeLiteral=function(e){return(0,r.default)({type:"TSTypeLiteral",members:e})},t.tSTypeOperator=t.tsTypeOperator=function(e){return(0,r.default)({type:"TSTypeOperator",typeAnnotation:e,operator:null})},t.tSTypeParameter=t.tsTypeParameter=function(e=null,t=null,n){return(0,r.default)({type:"TSTypeParameter",constraint:e,default:t,name:n})},t.tSTypeParameterDeclaration=t.tsTypeParameterDeclaration=function(e){return(0,r.default)({type:"TSTypeParameterDeclaration",params:e})},t.tSTypeParameterInstantiation=t.tsTypeParameterInstantiation=function(e){return(0,r.default)({type:"TSTypeParameterInstantiation",params:e})},t.tSTypePredicate=t.tsTypePredicate=function(e,t=null,n=null){return(0,r.default)({type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:n})},t.tSTypeQuery=t.tsTypeQuery=function(e,t=null){return(0,r.default)({type:"TSTypeQuery",exprName:e,typeParameters:t})},t.tSTypeReference=t.tsTypeReference=function(e,t=null){return(0,r.default)({type:"TSTypeReference",typeName:e,typeParameters:t})},t.tSUndefinedKeyword=t.tsUndefinedKeyword=function(){return{type:"TSUndefinedKeyword"}},t.tSUnionType=t.tsUnionType=function(e){return(0,r.default)({type:"TSUnionType",types:e})},t.tSUnknownKeyword=t.tsUnknownKeyword=function(){return{type:"TSUnknownKeyword"}},t.tSVoidKeyword=t.tsVoidKeyword=function(){return{type:"TSVoidKeyword"}},t.tupleExpression=function(e=[]){return(0,r.default)({type:"TupleExpression",elements:e})},t.tupleTypeAnnotation=function(e){return(0,r.default)({type:"TupleTypeAnnotation",types:e})},t.typeAlias=function(e,t=null,n){return(0,r.default)({type:"TypeAlias",id:e,typeParameters:t,right:n})},t.typeAnnotation=function(e){return(0,r.default)({type:"TypeAnnotation",typeAnnotation:e})},t.typeCastExpression=function(e,t){return(0,r.default)({type:"TypeCastExpression",expression:e,typeAnnotation:t})},t.typeParameter=function(e=null,t=null,n=null){return(0,r.default)({type:"TypeParameter",bound:e,default:t,variance:n,name:null})},t.typeParameterDeclaration=function(e){return(0,r.default)({type:"TypeParameterDeclaration",params:e})},t.typeParameterInstantiation=function(e){return(0,r.default)({type:"TypeParameterInstantiation",params:e})},t.typeofTypeAnnotation=function(e){return(0,r.default)({type:"TypeofTypeAnnotation",argument:e})},t.unaryExpression=function(e,t,n=!0){return(0,r.default)({type:"UnaryExpression",operator:e,argument:t,prefix:n})},t.unionTypeAnnotation=function(e){return(0,r.default)({type:"UnionTypeAnnotation",types:e})},t.updateExpression=function(e,t,n=!1){return(0,r.default)({type:"UpdateExpression",operator:e,argument:t,prefix:n})},t.v8IntrinsicIdentifier=function(e){return(0,r.default)({type:"V8IntrinsicIdentifier",name:e})},t.variableDeclaration=function(e,t){return(0,r.default)({type:"VariableDeclaration",kind:e,declarations:t})},t.variableDeclarator=function(e,t=null){return(0,r.default)({type:"VariableDeclarator",id:e,init:t})},t.variance=function(e){return(0,r.default)({type:"Variance",kind:e})},t.voidTypeAnnotation=function(){return{type:"VoidTypeAnnotation"}},t.whileStatement=function(e,t){return(0,r.default)({type:"WhileStatement",test:e,body:t})},t.withStatement=function(e,t){return(0,r.default)({type:"WithStatement",object:e,body:t})},t.yieldExpression=function(e=null,t=!1){return(0,r.default)({type:"YieldExpression",argument:e,delegate:t})};var r=n(1105),a=n(39298);function i(e){return(0,r.default)({type:"NumericLiteral",value:e})}function s(e,t=""){return(0,r.default)({type:"RegExpLiteral",pattern:e,flags:t})}function o(e){return(0,r.default)({type:"RestElement",argument:e})}function l(e){return(0,r.default)({type:"SpreadElement",argument:e})}},45792:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AnyTypeAnnotation",{enumerable:!0,get:function(){return r.anyTypeAnnotation}}),Object.defineProperty(t,"ArgumentPlaceholder",{enumerable:!0,get:function(){return r.argumentPlaceholder}}),Object.defineProperty(t,"ArrayExpression",{enumerable:!0,get:function(){return r.arrayExpression}}),Object.defineProperty(t,"ArrayPattern",{enumerable:!0,get:function(){return r.arrayPattern}}),Object.defineProperty(t,"ArrayTypeAnnotation",{enumerable:!0,get:function(){return r.arrayTypeAnnotation}}),Object.defineProperty(t,"ArrowFunctionExpression",{enumerable:!0,get:function(){return r.arrowFunctionExpression}}),Object.defineProperty(t,"AssignmentExpression",{enumerable:!0,get:function(){return r.assignmentExpression}}),Object.defineProperty(t,"AssignmentPattern",{enumerable:!0,get:function(){return r.assignmentPattern}}),Object.defineProperty(t,"AwaitExpression",{enumerable:!0,get:function(){return r.awaitExpression}}),Object.defineProperty(t,"BigIntLiteral",{enumerable:!0,get:function(){return r.bigIntLiteral}}),Object.defineProperty(t,"BinaryExpression",{enumerable:!0,get:function(){return r.binaryExpression}}),Object.defineProperty(t,"BindExpression",{enumerable:!0,get:function(){return r.bindExpression}}),Object.defineProperty(t,"BlockStatement",{enumerable:!0,get:function(){return r.blockStatement}}),Object.defineProperty(t,"BooleanLiteral",{enumerable:!0,get:function(){return r.booleanLiteral}}),Object.defineProperty(t,"BooleanLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.booleanLiteralTypeAnnotation}}),Object.defineProperty(t,"BooleanTypeAnnotation",{enumerable:!0,get:function(){return r.booleanTypeAnnotation}}),Object.defineProperty(t,"BreakStatement",{enumerable:!0,get:function(){return r.breakStatement}}),Object.defineProperty(t,"CallExpression",{enumerable:!0,get:function(){return r.callExpression}}),Object.defineProperty(t,"CatchClause",{enumerable:!0,get:function(){return r.catchClause}}),Object.defineProperty(t,"ClassAccessorProperty",{enumerable:!0,get:function(){return r.classAccessorProperty}}),Object.defineProperty(t,"ClassBody",{enumerable:!0,get:function(){return r.classBody}}),Object.defineProperty(t,"ClassDeclaration",{enumerable:!0,get:function(){return r.classDeclaration}}),Object.defineProperty(t,"ClassExpression",{enumerable:!0,get:function(){return r.classExpression}}),Object.defineProperty(t,"ClassImplements",{enumerable:!0,get:function(){return r.classImplements}}),Object.defineProperty(t,"ClassMethod",{enumerable:!0,get:function(){return r.classMethod}}),Object.defineProperty(t,"ClassPrivateMethod",{enumerable:!0,get:function(){return r.classPrivateMethod}}),Object.defineProperty(t,"ClassPrivateProperty",{enumerable:!0,get:function(){return r.classPrivateProperty}}),Object.defineProperty(t,"ClassProperty",{enumerable:!0,get:function(){return r.classProperty}}),Object.defineProperty(t,"ConditionalExpression",{enumerable:!0,get:function(){return r.conditionalExpression}}),Object.defineProperty(t,"ContinueStatement",{enumerable:!0,get:function(){return r.continueStatement}}),Object.defineProperty(t,"DebuggerStatement",{enumerable:!0,get:function(){return r.debuggerStatement}}),Object.defineProperty(t,"DecimalLiteral",{enumerable:!0,get:function(){return r.decimalLiteral}}),Object.defineProperty(t,"DeclareClass",{enumerable:!0,get:function(){return r.declareClass}}),Object.defineProperty(t,"DeclareExportAllDeclaration",{enumerable:!0,get:function(){return r.declareExportAllDeclaration}}),Object.defineProperty(t,"DeclareExportDeclaration",{enumerable:!0,get:function(){return r.declareExportDeclaration}}),Object.defineProperty(t,"DeclareFunction",{enumerable:!0,get:function(){return r.declareFunction}}),Object.defineProperty(t,"DeclareInterface",{enumerable:!0,get:function(){return r.declareInterface}}),Object.defineProperty(t,"DeclareModule",{enumerable:!0,get:function(){return r.declareModule}}),Object.defineProperty(t,"DeclareModuleExports",{enumerable:!0,get:function(){return r.declareModuleExports}}),Object.defineProperty(t,"DeclareOpaqueType",{enumerable:!0,get:function(){return r.declareOpaqueType}}),Object.defineProperty(t,"DeclareTypeAlias",{enumerable:!0,get:function(){return r.declareTypeAlias}}),Object.defineProperty(t,"DeclareVariable",{enumerable:!0,get:function(){return r.declareVariable}}),Object.defineProperty(t,"DeclaredPredicate",{enumerable:!0,get:function(){return r.declaredPredicate}}),Object.defineProperty(t,"Decorator",{enumerable:!0,get:function(){return r.decorator}}),Object.defineProperty(t,"Directive",{enumerable:!0,get:function(){return r.directive}}),Object.defineProperty(t,"DirectiveLiteral",{enumerable:!0,get:function(){return r.directiveLiteral}}),Object.defineProperty(t,"DoExpression",{enumerable:!0,get:function(){return r.doExpression}}),Object.defineProperty(t,"DoWhileStatement",{enumerable:!0,get:function(){return r.doWhileStatement}}),Object.defineProperty(t,"EmptyStatement",{enumerable:!0,get:function(){return r.emptyStatement}}),Object.defineProperty(t,"EmptyTypeAnnotation",{enumerable:!0,get:function(){return r.emptyTypeAnnotation}}),Object.defineProperty(t,"EnumBooleanBody",{enumerable:!0,get:function(){return r.enumBooleanBody}}),Object.defineProperty(t,"EnumBooleanMember",{enumerable:!0,get:function(){return r.enumBooleanMember}}),Object.defineProperty(t,"EnumDeclaration",{enumerable:!0,get:function(){return r.enumDeclaration}}),Object.defineProperty(t,"EnumDefaultedMember",{enumerable:!0,get:function(){return r.enumDefaultedMember}}),Object.defineProperty(t,"EnumNumberBody",{enumerable:!0,get:function(){return r.enumNumberBody}}),Object.defineProperty(t,"EnumNumberMember",{enumerable:!0,get:function(){return r.enumNumberMember}}),Object.defineProperty(t,"EnumStringBody",{enumerable:!0,get:function(){return r.enumStringBody}}),Object.defineProperty(t,"EnumStringMember",{enumerable:!0,get:function(){return r.enumStringMember}}),Object.defineProperty(t,"EnumSymbolBody",{enumerable:!0,get:function(){return r.enumSymbolBody}}),Object.defineProperty(t,"ExistsTypeAnnotation",{enumerable:!0,get:function(){return r.existsTypeAnnotation}}),Object.defineProperty(t,"ExportAllDeclaration",{enumerable:!0,get:function(){return r.exportAllDeclaration}}),Object.defineProperty(t,"ExportDefaultDeclaration",{enumerable:!0,get:function(){return r.exportDefaultDeclaration}}),Object.defineProperty(t,"ExportDefaultSpecifier",{enumerable:!0,get:function(){return r.exportDefaultSpecifier}}),Object.defineProperty(t,"ExportNamedDeclaration",{enumerable:!0,get:function(){return r.exportNamedDeclaration}}),Object.defineProperty(t,"ExportNamespaceSpecifier",{enumerable:!0,get:function(){return r.exportNamespaceSpecifier}}),Object.defineProperty(t,"ExportSpecifier",{enumerable:!0,get:function(){return r.exportSpecifier}}),Object.defineProperty(t,"ExpressionStatement",{enumerable:!0,get:function(){return r.expressionStatement}}),Object.defineProperty(t,"File",{enumerable:!0,get:function(){return r.file}}),Object.defineProperty(t,"ForInStatement",{enumerable:!0,get:function(){return r.forInStatement}}),Object.defineProperty(t,"ForOfStatement",{enumerable:!0,get:function(){return r.forOfStatement}}),Object.defineProperty(t,"ForStatement",{enumerable:!0,get:function(){return r.forStatement}}),Object.defineProperty(t,"FunctionDeclaration",{enumerable:!0,get:function(){return r.functionDeclaration}}),Object.defineProperty(t,"FunctionExpression",{enumerable:!0,get:function(){return r.functionExpression}}),Object.defineProperty(t,"FunctionTypeAnnotation",{enumerable:!0,get:function(){return r.functionTypeAnnotation}}),Object.defineProperty(t,"FunctionTypeParam",{enumerable:!0,get:function(){return r.functionTypeParam}}),Object.defineProperty(t,"GenericTypeAnnotation",{enumerable:!0,get:function(){return r.genericTypeAnnotation}}),Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return r.identifier}}),Object.defineProperty(t,"IfStatement",{enumerable:!0,get:function(){return r.ifStatement}}),Object.defineProperty(t,"Import",{enumerable:!0,get:function(){return r.import}}),Object.defineProperty(t,"ImportAttribute",{enumerable:!0,get:function(){return r.importAttribute}}),Object.defineProperty(t,"ImportDeclaration",{enumerable:!0,get:function(){return r.importDeclaration}}),Object.defineProperty(t,"ImportDefaultSpecifier",{enumerable:!0,get:function(){return r.importDefaultSpecifier}}),Object.defineProperty(t,"ImportNamespaceSpecifier",{enumerable:!0,get:function(){return r.importNamespaceSpecifier}}),Object.defineProperty(t,"ImportSpecifier",{enumerable:!0,get:function(){return r.importSpecifier}}),Object.defineProperty(t,"IndexedAccessType",{enumerable:!0,get:function(){return r.indexedAccessType}}),Object.defineProperty(t,"InferredPredicate",{enumerable:!0,get:function(){return r.inferredPredicate}}),Object.defineProperty(t,"InterfaceDeclaration",{enumerable:!0,get:function(){return r.interfaceDeclaration}}),Object.defineProperty(t,"InterfaceExtends",{enumerable:!0,get:function(){return r.interfaceExtends}}),Object.defineProperty(t,"InterfaceTypeAnnotation",{enumerable:!0,get:function(){return r.interfaceTypeAnnotation}}),Object.defineProperty(t,"InterpreterDirective",{enumerable:!0,get:function(){return r.interpreterDirective}}),Object.defineProperty(t,"IntersectionTypeAnnotation",{enumerable:!0,get:function(){return r.intersectionTypeAnnotation}}),Object.defineProperty(t,"JSXAttribute",{enumerable:!0,get:function(){return r.jsxAttribute}}),Object.defineProperty(t,"JSXClosingElement",{enumerable:!0,get:function(){return r.jsxClosingElement}}),Object.defineProperty(t,"JSXClosingFragment",{enumerable:!0,get:function(){return r.jsxClosingFragment}}),Object.defineProperty(t,"JSXElement",{enumerable:!0,get:function(){return r.jsxElement}}),Object.defineProperty(t,"JSXEmptyExpression",{enumerable:!0,get:function(){return r.jsxEmptyExpression}}),Object.defineProperty(t,"JSXExpressionContainer",{enumerable:!0,get:function(){return r.jsxExpressionContainer}}),Object.defineProperty(t,"JSXFragment",{enumerable:!0,get:function(){return r.jsxFragment}}),Object.defineProperty(t,"JSXIdentifier",{enumerable:!0,get:function(){return r.jsxIdentifier}}),Object.defineProperty(t,"JSXMemberExpression",{enumerable:!0,get:function(){return r.jsxMemberExpression}}),Object.defineProperty(t,"JSXNamespacedName",{enumerable:!0,get:function(){return r.jsxNamespacedName}}),Object.defineProperty(t,"JSXOpeningElement",{enumerable:!0,get:function(){return r.jsxOpeningElement}}),Object.defineProperty(t,"JSXOpeningFragment",{enumerable:!0,get:function(){return r.jsxOpeningFragment}}),Object.defineProperty(t,"JSXSpreadAttribute",{enumerable:!0,get:function(){return r.jsxSpreadAttribute}}),Object.defineProperty(t,"JSXSpreadChild",{enumerable:!0,get:function(){return r.jsxSpreadChild}}),Object.defineProperty(t,"JSXText",{enumerable:!0,get:function(){return r.jsxText}}),Object.defineProperty(t,"LabeledStatement",{enumerable:!0,get:function(){return r.labeledStatement}}),Object.defineProperty(t,"LogicalExpression",{enumerable:!0,get:function(){return r.logicalExpression}}),Object.defineProperty(t,"MemberExpression",{enumerable:!0,get:function(){return r.memberExpression}}),Object.defineProperty(t,"MetaProperty",{enumerable:!0,get:function(){return r.metaProperty}}),Object.defineProperty(t,"MixedTypeAnnotation",{enumerable:!0,get:function(){return r.mixedTypeAnnotation}}),Object.defineProperty(t,"ModuleExpression",{enumerable:!0,get:function(){return r.moduleExpression}}),Object.defineProperty(t,"NewExpression",{enumerable:!0,get:function(){return r.newExpression}}),Object.defineProperty(t,"Noop",{enumerable:!0,get:function(){return r.noop}}),Object.defineProperty(t,"NullLiteral",{enumerable:!0,get:function(){return r.nullLiteral}}),Object.defineProperty(t,"NullLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.nullLiteralTypeAnnotation}}),Object.defineProperty(t,"NullableTypeAnnotation",{enumerable:!0,get:function(){return r.nullableTypeAnnotation}}),Object.defineProperty(t,"NumberLiteral",{enumerable:!0,get:function(){return r.numberLiteral}}),Object.defineProperty(t,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.numberLiteralTypeAnnotation}}),Object.defineProperty(t,"NumberTypeAnnotation",{enumerable:!0,get:function(){return r.numberTypeAnnotation}}),Object.defineProperty(t,"NumericLiteral",{enumerable:!0,get:function(){return r.numericLiteral}}),Object.defineProperty(t,"ObjectExpression",{enumerable:!0,get:function(){return r.objectExpression}}),Object.defineProperty(t,"ObjectMethod",{enumerable:!0,get:function(){return r.objectMethod}}),Object.defineProperty(t,"ObjectPattern",{enumerable:!0,get:function(){return r.objectPattern}}),Object.defineProperty(t,"ObjectProperty",{enumerable:!0,get:function(){return r.objectProperty}}),Object.defineProperty(t,"ObjectTypeAnnotation",{enumerable:!0,get:function(){return r.objectTypeAnnotation}}),Object.defineProperty(t,"ObjectTypeCallProperty",{enumerable:!0,get:function(){return r.objectTypeCallProperty}}),Object.defineProperty(t,"ObjectTypeIndexer",{enumerable:!0,get:function(){return r.objectTypeIndexer}}),Object.defineProperty(t,"ObjectTypeInternalSlot",{enumerable:!0,get:function(){return r.objectTypeInternalSlot}}),Object.defineProperty(t,"ObjectTypeProperty",{enumerable:!0,get:function(){return r.objectTypeProperty}}),Object.defineProperty(t,"ObjectTypeSpreadProperty",{enumerable:!0,get:function(){return r.objectTypeSpreadProperty}}),Object.defineProperty(t,"OpaqueType",{enumerable:!0,get:function(){return r.opaqueType}}),Object.defineProperty(t,"OptionalCallExpression",{enumerable:!0,get:function(){return r.optionalCallExpression}}),Object.defineProperty(t,"OptionalIndexedAccessType",{enumerable:!0,get:function(){return r.optionalIndexedAccessType}}),Object.defineProperty(t,"OptionalMemberExpression",{enumerable:!0,get:function(){return r.optionalMemberExpression}}),Object.defineProperty(t,"ParenthesizedExpression",{enumerable:!0,get:function(){return r.parenthesizedExpression}}),Object.defineProperty(t,"PipelineBareFunction",{enumerable:!0,get:function(){return r.pipelineBareFunction}}),Object.defineProperty(t,"PipelinePrimaryTopicReference",{enumerable:!0,get:function(){return r.pipelinePrimaryTopicReference}}),Object.defineProperty(t,"PipelineTopicExpression",{enumerable:!0,get:function(){return r.pipelineTopicExpression}}),Object.defineProperty(t,"Placeholder",{enumerable:!0,get:function(){return r.placeholder}}),Object.defineProperty(t,"PrivateName",{enumerable:!0,get:function(){return r.privateName}}),Object.defineProperty(t,"Program",{enumerable:!0,get:function(){return r.program}}),Object.defineProperty(t,"QualifiedTypeIdentifier",{enumerable:!0,get:function(){return r.qualifiedTypeIdentifier}}),Object.defineProperty(t,"RecordExpression",{enumerable:!0,get:function(){return r.recordExpression}}),Object.defineProperty(t,"RegExpLiteral",{enumerable:!0,get:function(){return r.regExpLiteral}}),Object.defineProperty(t,"RegexLiteral",{enumerable:!0,get:function(){return r.regexLiteral}}),Object.defineProperty(t,"RestElement",{enumerable:!0,get:function(){return r.restElement}}),Object.defineProperty(t,"RestProperty",{enumerable:!0,get:function(){return r.restProperty}}),Object.defineProperty(t,"ReturnStatement",{enumerable:!0,get:function(){return r.returnStatement}}),Object.defineProperty(t,"SequenceExpression",{enumerable:!0,get:function(){return r.sequenceExpression}}),Object.defineProperty(t,"SpreadElement",{enumerable:!0,get:function(){return r.spreadElement}}),Object.defineProperty(t,"SpreadProperty",{enumerable:!0,get:function(){return r.spreadProperty}}),Object.defineProperty(t,"StaticBlock",{enumerable:!0,get:function(){return r.staticBlock}}),Object.defineProperty(t,"StringLiteral",{enumerable:!0,get:function(){return r.stringLiteral}}),Object.defineProperty(t,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.stringLiteralTypeAnnotation}}),Object.defineProperty(t,"StringTypeAnnotation",{enumerable:!0,get:function(){return r.stringTypeAnnotation}}),Object.defineProperty(t,"Super",{enumerable:!0,get:function(){return r.super}}),Object.defineProperty(t,"SwitchCase",{enumerable:!0,get:function(){return r.switchCase}}),Object.defineProperty(t,"SwitchStatement",{enumerable:!0,get:function(){return r.switchStatement}}),Object.defineProperty(t,"SymbolTypeAnnotation",{enumerable:!0,get:function(){return r.symbolTypeAnnotation}}),Object.defineProperty(t,"TSAnyKeyword",{enumerable:!0,get:function(){return r.tsAnyKeyword}}),Object.defineProperty(t,"TSArrayType",{enumerable:!0,get:function(){return r.tsArrayType}}),Object.defineProperty(t,"TSAsExpression",{enumerable:!0,get:function(){return r.tsAsExpression}}),Object.defineProperty(t,"TSBigIntKeyword",{enumerable:!0,get:function(){return r.tsBigIntKeyword}}),Object.defineProperty(t,"TSBooleanKeyword",{enumerable:!0,get:function(){return r.tsBooleanKeyword}}),Object.defineProperty(t,"TSCallSignatureDeclaration",{enumerable:!0,get:function(){return r.tsCallSignatureDeclaration}}),Object.defineProperty(t,"TSConditionalType",{enumerable:!0,get:function(){return r.tsConditionalType}}),Object.defineProperty(t,"TSConstructSignatureDeclaration",{enumerable:!0,get:function(){return r.tsConstructSignatureDeclaration}}),Object.defineProperty(t,"TSConstructorType",{enumerable:!0,get:function(){return r.tsConstructorType}}),Object.defineProperty(t,"TSDeclareFunction",{enumerable:!0,get:function(){return r.tsDeclareFunction}}),Object.defineProperty(t,"TSDeclareMethod",{enumerable:!0,get:function(){return r.tsDeclareMethod}}),Object.defineProperty(t,"TSEnumDeclaration",{enumerable:!0,get:function(){return r.tsEnumDeclaration}}),Object.defineProperty(t,"TSEnumMember",{enumerable:!0,get:function(){return r.tsEnumMember}}),Object.defineProperty(t,"TSExportAssignment",{enumerable:!0,get:function(){return r.tsExportAssignment}}),Object.defineProperty(t,"TSExpressionWithTypeArguments",{enumerable:!0,get:function(){return r.tsExpressionWithTypeArguments}}),Object.defineProperty(t,"TSExternalModuleReference",{enumerable:!0,get:function(){return r.tsExternalModuleReference}}),Object.defineProperty(t,"TSFunctionType",{enumerable:!0,get:function(){return r.tsFunctionType}}),Object.defineProperty(t,"TSImportEqualsDeclaration",{enumerable:!0,get:function(){return r.tsImportEqualsDeclaration}}),Object.defineProperty(t,"TSImportType",{enumerable:!0,get:function(){return r.tsImportType}}),Object.defineProperty(t,"TSIndexSignature",{enumerable:!0,get:function(){return r.tsIndexSignature}}),Object.defineProperty(t,"TSIndexedAccessType",{enumerable:!0,get:function(){return r.tsIndexedAccessType}}),Object.defineProperty(t,"TSInferType",{enumerable:!0,get:function(){return r.tsInferType}}),Object.defineProperty(t,"TSInstantiationExpression",{enumerable:!0,get:function(){return r.tsInstantiationExpression}}),Object.defineProperty(t,"TSInterfaceBody",{enumerable:!0,get:function(){return r.tsInterfaceBody}}),Object.defineProperty(t,"TSInterfaceDeclaration",{enumerable:!0,get:function(){return r.tsInterfaceDeclaration}}),Object.defineProperty(t,"TSIntersectionType",{enumerable:!0,get:function(){return r.tsIntersectionType}}),Object.defineProperty(t,"TSIntrinsicKeyword",{enumerable:!0,get:function(){return r.tsIntrinsicKeyword}}),Object.defineProperty(t,"TSLiteralType",{enumerable:!0,get:function(){return r.tsLiteralType}}),Object.defineProperty(t,"TSMappedType",{enumerable:!0,get:function(){return r.tsMappedType}}),Object.defineProperty(t,"TSMethodSignature",{enumerable:!0,get:function(){return r.tsMethodSignature}}),Object.defineProperty(t,"TSModuleBlock",{enumerable:!0,get:function(){return r.tsModuleBlock}}),Object.defineProperty(t,"TSModuleDeclaration",{enumerable:!0,get:function(){return r.tsModuleDeclaration}}),Object.defineProperty(t,"TSNamedTupleMember",{enumerable:!0,get:function(){return r.tsNamedTupleMember}}),Object.defineProperty(t,"TSNamespaceExportDeclaration",{enumerable:!0,get:function(){return r.tsNamespaceExportDeclaration}}),Object.defineProperty(t,"TSNeverKeyword",{enumerable:!0,get:function(){return r.tsNeverKeyword}}),Object.defineProperty(t,"TSNonNullExpression",{enumerable:!0,get:function(){return r.tsNonNullExpression}}),Object.defineProperty(t,"TSNullKeyword",{enumerable:!0,get:function(){return r.tsNullKeyword}}),Object.defineProperty(t,"TSNumberKeyword",{enumerable:!0,get:function(){return r.tsNumberKeyword}}),Object.defineProperty(t,"TSObjectKeyword",{enumerable:!0,get:function(){return r.tsObjectKeyword}}),Object.defineProperty(t,"TSOptionalType",{enumerable:!0,get:function(){return r.tsOptionalType}}),Object.defineProperty(t,"TSParameterProperty",{enumerable:!0,get:function(){return r.tsParameterProperty}}),Object.defineProperty(t,"TSParenthesizedType",{enumerable:!0,get:function(){return r.tsParenthesizedType}}),Object.defineProperty(t,"TSPropertySignature",{enumerable:!0,get:function(){return r.tsPropertySignature}}),Object.defineProperty(t,"TSQualifiedName",{enumerable:!0,get:function(){return r.tsQualifiedName}}),Object.defineProperty(t,"TSRestType",{enumerable:!0,get:function(){return r.tsRestType}}),Object.defineProperty(t,"TSSatisfiesExpression",{enumerable:!0,get:function(){return r.tsSatisfiesExpression}}),Object.defineProperty(t,"TSStringKeyword",{enumerable:!0,get:function(){return r.tsStringKeyword}}),Object.defineProperty(t,"TSSymbolKeyword",{enumerable:!0,get:function(){return r.tsSymbolKeyword}}),Object.defineProperty(t,"TSThisType",{enumerable:!0,get:function(){return r.tsThisType}}),Object.defineProperty(t,"TSTupleType",{enumerable:!0,get:function(){return r.tsTupleType}}),Object.defineProperty(t,"TSTypeAliasDeclaration",{enumerable:!0,get:function(){return r.tsTypeAliasDeclaration}}),Object.defineProperty(t,"TSTypeAnnotation",{enumerable:!0,get:function(){return r.tsTypeAnnotation}}),Object.defineProperty(t,"TSTypeAssertion",{enumerable:!0,get:function(){return r.tsTypeAssertion}}),Object.defineProperty(t,"TSTypeLiteral",{enumerable:!0,get:function(){return r.tsTypeLiteral}}),Object.defineProperty(t,"TSTypeOperator",{enumerable:!0,get:function(){return r.tsTypeOperator}}),Object.defineProperty(t,"TSTypeParameter",{enumerable:!0,get:function(){return r.tsTypeParameter}}),Object.defineProperty(t,"TSTypeParameterDeclaration",{enumerable:!0,get:function(){return r.tsTypeParameterDeclaration}}),Object.defineProperty(t,"TSTypeParameterInstantiation",{enumerable:!0,get:function(){return r.tsTypeParameterInstantiation}}),Object.defineProperty(t,"TSTypePredicate",{enumerable:!0,get:function(){return r.tsTypePredicate}}),Object.defineProperty(t,"TSTypeQuery",{enumerable:!0,get:function(){return r.tsTypeQuery}}),Object.defineProperty(t,"TSTypeReference",{enumerable:!0,get:function(){return r.tsTypeReference}}),Object.defineProperty(t,"TSUndefinedKeyword",{enumerable:!0,get:function(){return r.tsUndefinedKeyword}}),Object.defineProperty(t,"TSUnionType",{enumerable:!0,get:function(){return r.tsUnionType}}),Object.defineProperty(t,"TSUnknownKeyword",{enumerable:!0,get:function(){return r.tsUnknownKeyword}}),Object.defineProperty(t,"TSVoidKeyword",{enumerable:!0,get:function(){return r.tsVoidKeyword}}),Object.defineProperty(t,"TaggedTemplateExpression",{enumerable:!0,get:function(){return r.taggedTemplateExpression}}),Object.defineProperty(t,"TemplateElement",{enumerable:!0,get:function(){return r.templateElement}}),Object.defineProperty(t,"TemplateLiteral",{enumerable:!0,get:function(){return r.templateLiteral}}),Object.defineProperty(t,"ThisExpression",{enumerable:!0,get:function(){return r.thisExpression}}),Object.defineProperty(t,"ThisTypeAnnotation",{enumerable:!0,get:function(){return r.thisTypeAnnotation}}),Object.defineProperty(t,"ThrowStatement",{enumerable:!0,get:function(){return r.throwStatement}}),Object.defineProperty(t,"TopicReference",{enumerable:!0,get:function(){return r.topicReference}}),Object.defineProperty(t,"TryStatement",{enumerable:!0,get:function(){return r.tryStatement}}),Object.defineProperty(t,"TupleExpression",{enumerable:!0,get:function(){return r.tupleExpression}}),Object.defineProperty(t,"TupleTypeAnnotation",{enumerable:!0,get:function(){return r.tupleTypeAnnotation}}),Object.defineProperty(t,"TypeAlias",{enumerable:!0,get:function(){return r.typeAlias}}),Object.defineProperty(t,"TypeAnnotation",{enumerable:!0,get:function(){return r.typeAnnotation}}),Object.defineProperty(t,"TypeCastExpression",{enumerable:!0,get:function(){return r.typeCastExpression}}),Object.defineProperty(t,"TypeParameter",{enumerable:!0,get:function(){return r.typeParameter}}),Object.defineProperty(t,"TypeParameterDeclaration",{enumerable:!0,get:function(){return r.typeParameterDeclaration}}),Object.defineProperty(t,"TypeParameterInstantiation",{enumerable:!0,get:function(){return r.typeParameterInstantiation}}),Object.defineProperty(t,"TypeofTypeAnnotation",{enumerable:!0,get:function(){return r.typeofTypeAnnotation}}),Object.defineProperty(t,"UnaryExpression",{enumerable:!0,get:function(){return r.unaryExpression}}),Object.defineProperty(t,"UnionTypeAnnotation",{enumerable:!0,get:function(){return r.unionTypeAnnotation}}),Object.defineProperty(t,"UpdateExpression",{enumerable:!0,get:function(){return r.updateExpression}}),Object.defineProperty(t,"V8IntrinsicIdentifier",{enumerable:!0,get:function(){return r.v8IntrinsicIdentifier}}),Object.defineProperty(t,"VariableDeclaration",{enumerable:!0,get:function(){return r.variableDeclaration}}),Object.defineProperty(t,"VariableDeclarator",{enumerable:!0,get:function(){return r.variableDeclarator}}),Object.defineProperty(t,"Variance",{enumerable:!0,get:function(){return r.variance}}),Object.defineProperty(t,"VoidTypeAnnotation",{enumerable:!0,get:function(){return r.voidTypeAnnotation}}),Object.defineProperty(t,"WhileStatement",{enumerable:!0,get:function(){return r.whileStatement}}),Object.defineProperty(t,"WithStatement",{enumerable:!0,get:function(){return r.withStatement}}),Object.defineProperty(t,"YieldExpression",{enumerable:!0,get:function(){return r.yieldExpression}});var r=n(88270)},38749:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];for(let n=0;n<e.children.length;n++){let i=e.children[n];(0,r.isJSXText)(i)?(0,a.default)(i,t):((0,r.isJSXExpressionContainer)(i)&&(i=i.expression),(0,r.isJSXEmptyExpression)(i)||t.push(i))}return t};var r=n(31922),a=n(93269)},71114:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=e.map((e=>(0,i.isTSTypeAnnotation)(e)?e.typeAnnotation:e)),n=(0,a.default)(t);return 1===n.length?n[0]:(0,r.tsUnionType)(n)};var r=n(88270),a=n(91752),i=n(31922)},1105:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=a.BUILDER_KEYS[e.type];for(const n of t)(0,r.default)(e,n,e[n]);return e};var r=n(5970),a=n(25024)},5024:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1)};var r=n(88635)},47184:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)};var r=n(88635)},70705:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!0,!0)};var r=n(88635)},88635:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0,n=!1){return l(e,t,n,new Map)};var r=n(64194),a=n(31922);const i=Function.call.bind(Object.prototype.hasOwnProperty);function s(e,t,n,r){return e&&"string"==typeof e.type?l(e,t,n,r):e}function o(e,t,n,r){return Array.isArray(e)?e.map((e=>s(e,t,n,r))):s(e,t,n,r)}function l(e,t=!0,n=!1,s){if(!e)return e;const{type:l}=e,c={type:e.type};if((0,a.isIdentifier)(e))c.name=e.name,i(e,"optional")&&"boolean"==typeof e.optional&&(c.optional=e.optional),i(e,"typeAnnotation")&&(c.typeAnnotation=t?o(e.typeAnnotation,!0,n,s):e.typeAnnotation);else{if(!i(r.NODE_FIELDS,l))throw new Error(`Unknown node type: "${l}"`);for(const u of Object.keys(r.NODE_FIELDS[l]))i(e,u)&&(c[u]=t?(0,a.isFile)(e)&&"comments"===u?p(e.comments,t,n,s):o(e[u],!0,n,s):e[u])}return i(e,"loc")&&(c.loc=n?null:e.loc),i(e,"leadingComments")&&(c.leadingComments=p(e.leadingComments,t,n,s)),i(e,"innerComments")&&(c.innerComments=p(e.innerComments,t,n,s)),i(e,"trailingComments")&&(c.trailingComments=p(e.trailingComments,t,n,s)),i(e,"extra")&&(c.extra=Object.assign({},e.extra)),c}function p(e,t,n,r){return e&&t?e.map((e=>{const t=r.get(e);if(t)return t;const{type:a,value:i,loc:s}=e,o={type:a,value:i,loc:s};return n&&(o.loc=null),r.set(e,o),o})):e}},4170:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1,!0)};var r=n(88635)},41803:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,a){return(0,r.default)(e,t,[{type:a?"CommentLine":"CommentBlock",value:n}])};var r=n(40474)},40474:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!n||!e)return e;const r=`${t}Comments`;return e[r]?"leading"===t?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n,e}},52350:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("innerComments",e,t)};var r=n(50589)},35187:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("leadingComments",e,t)};var r=n(50589)},5770:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("trailingComments",e,t)};var r=n(50589)},34919:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,t),(0,a.default)(e,t),(0,i.default)(e,t),e};var r=n(5770),a=n(35187),i=n(52350)},74050:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return r.COMMENT_KEYS.forEach((t=>{e[t]=null})),e};var r=n(38563)},7318:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WHILE_TYPES=t.USERWHITESPACABLE_TYPES=t.UNARYLIKE_TYPES=t.TYPESCRIPT_TYPES=t.TSTYPE_TYPES=t.TSTYPEELEMENT_TYPES=t.TSENTITYNAME_TYPES=t.TSBASETYPE_TYPES=t.TERMINATORLESS_TYPES=t.STATEMENT_TYPES=t.STANDARDIZED_TYPES=t.SCOPABLE_TYPES=t.PUREISH_TYPES=t.PROPERTY_TYPES=t.PRIVATE_TYPES=t.PATTERN_TYPES=t.PATTERNLIKE_TYPES=t.OBJECTMEMBER_TYPES=t.MODULESPECIFIER_TYPES=t.MODULEDECLARATION_TYPES=t.MISCELLANEOUS_TYPES=t.METHOD_TYPES=t.LVAL_TYPES=t.LOOP_TYPES=t.LITERAL_TYPES=t.JSX_TYPES=t.IMPORTOREXPORTDECLARATION_TYPES=t.IMMUTABLE_TYPES=t.FUNCTION_TYPES=t.FUNCTIONPARENT_TYPES=t.FOR_TYPES=t.FORXSTATEMENT_TYPES=t.FLOW_TYPES=t.FLOWTYPE_TYPES=t.FLOWPREDICATE_TYPES=t.FLOWDECLARATION_TYPES=t.FLOWBASEANNOTATION_TYPES=t.EXPRESSION_TYPES=t.EXPRESSIONWRAPPER_TYPES=t.EXPORTDECLARATION_TYPES=t.ENUMMEMBER_TYPES=t.ENUMBODY_TYPES=t.DECLARATION_TYPES=t.CONDITIONAL_TYPES=t.COMPLETIONSTATEMENT_TYPES=t.CLASS_TYPES=t.BLOCK_TYPES=t.BLOCKPARENT_TYPES=t.BINARY_TYPES=t.ACCESSOR_TYPES=void 0;var r=n(64194);const a=r.FLIPPED_ALIAS_KEYS.Standardized;t.STANDARDIZED_TYPES=a;const i=r.FLIPPED_ALIAS_KEYS.Expression;t.EXPRESSION_TYPES=i;const s=r.FLIPPED_ALIAS_KEYS.Binary;t.BINARY_TYPES=s;const o=r.FLIPPED_ALIAS_KEYS.Scopable;t.SCOPABLE_TYPES=o;const l=r.FLIPPED_ALIAS_KEYS.BlockParent;t.BLOCKPARENT_TYPES=l;const p=r.FLIPPED_ALIAS_KEYS.Block;t.BLOCK_TYPES=p;const c=r.FLIPPED_ALIAS_KEYS.Statement;t.STATEMENT_TYPES=c;const u=r.FLIPPED_ALIAS_KEYS.Terminatorless;t.TERMINATORLESS_TYPES=u;const d=r.FLIPPED_ALIAS_KEYS.CompletionStatement;t.COMPLETIONSTATEMENT_TYPES=d;const f=r.FLIPPED_ALIAS_KEYS.Conditional;t.CONDITIONAL_TYPES=f;const y=r.FLIPPED_ALIAS_KEYS.Loop;t.LOOP_TYPES=y;const m=r.FLIPPED_ALIAS_KEYS.While;t.WHILE_TYPES=m;const h=r.FLIPPED_ALIAS_KEYS.ExpressionWrapper;t.EXPRESSIONWRAPPER_TYPES=h;const T=r.FLIPPED_ALIAS_KEYS.For;t.FOR_TYPES=T;const S=r.FLIPPED_ALIAS_KEYS.ForXStatement;t.FORXSTATEMENT_TYPES=S;const b=r.FLIPPED_ALIAS_KEYS.Function;t.FUNCTION_TYPES=b;const E=r.FLIPPED_ALIAS_KEYS.FunctionParent;t.FUNCTIONPARENT_TYPES=E;const P=r.FLIPPED_ALIAS_KEYS.Pureish;t.PUREISH_TYPES=P;const x=r.FLIPPED_ALIAS_KEYS.Declaration;t.DECLARATION_TYPES=x;const g=r.FLIPPED_ALIAS_KEYS.PatternLike;t.PATTERNLIKE_TYPES=g;const A=r.FLIPPED_ALIAS_KEYS.LVal;t.LVAL_TYPES=A;const v=r.FLIPPED_ALIAS_KEYS.TSEntityName;t.TSENTITYNAME_TYPES=v;const O=r.FLIPPED_ALIAS_KEYS.Literal;t.LITERAL_TYPES=O;const I=r.FLIPPED_ALIAS_KEYS.Immutable;t.IMMUTABLE_TYPES=I;const N=r.FLIPPED_ALIAS_KEYS.UserWhitespacable;t.USERWHITESPACABLE_TYPES=N;const D=r.FLIPPED_ALIAS_KEYS.Method;t.METHOD_TYPES=D;const C=r.FLIPPED_ALIAS_KEYS.ObjectMember;t.OBJECTMEMBER_TYPES=C;const w=r.FLIPPED_ALIAS_KEYS.Property;t.PROPERTY_TYPES=w;const L=r.FLIPPED_ALIAS_KEYS.UnaryLike;t.UNARYLIKE_TYPES=L;const j=r.FLIPPED_ALIAS_KEYS.Pattern;t.PATTERN_TYPES=j;const _=r.FLIPPED_ALIAS_KEYS.Class;t.CLASS_TYPES=_;const M=r.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration;t.IMPORTOREXPORTDECLARATION_TYPES=M;const k=r.FLIPPED_ALIAS_KEYS.ExportDeclaration;t.EXPORTDECLARATION_TYPES=k;const B=r.FLIPPED_ALIAS_KEYS.ModuleSpecifier;t.MODULESPECIFIER_TYPES=B;const F=r.FLIPPED_ALIAS_KEYS.Accessor;t.ACCESSOR_TYPES=F;const R=r.FLIPPED_ALIAS_KEYS.Private;t.PRIVATE_TYPES=R;const K=r.FLIPPED_ALIAS_KEYS.Flow;t.FLOW_TYPES=K;const V=r.FLIPPED_ALIAS_KEYS.FlowType;t.FLOWTYPE_TYPES=V;const Y=r.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation;t.FLOWBASEANNOTATION_TYPES=Y;const U=r.FLIPPED_ALIAS_KEYS.FlowDeclaration;t.FLOWDECLARATION_TYPES=U;const X=r.FLIPPED_ALIAS_KEYS.FlowPredicate;t.FLOWPREDICATE_TYPES=X;const J=r.FLIPPED_ALIAS_KEYS.EnumBody;t.ENUMBODY_TYPES=J;const W=r.FLIPPED_ALIAS_KEYS.EnumMember;t.ENUMMEMBER_TYPES=W;const q=r.FLIPPED_ALIAS_KEYS.JSX;t.JSX_TYPES=q;const $=r.FLIPPED_ALIAS_KEYS.Miscellaneous;t.MISCELLANEOUS_TYPES=$;const G=r.FLIPPED_ALIAS_KEYS.TypeScript;t.TYPESCRIPT_TYPES=G;const z=r.FLIPPED_ALIAS_KEYS.TSTypeElement;t.TSTYPEELEMENT_TYPES=z;const H=r.FLIPPED_ALIAS_KEYS.TSType;t.TSTYPE_TYPES=H;const Q=r.FLIPPED_ALIAS_KEYS.TSBaseType;t.TSBASETYPE_TYPES=Q;const Z=M;t.MODULEDECLARATION_TYPES=Z},38563:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UPDATE_OPERATORS=t.UNARY_OPERATORS=t.STRING_UNARY_OPERATORS=t.STATEMENT_OR_BLOCK_KEYS=t.NUMBER_UNARY_OPERATORS=t.NUMBER_BINARY_OPERATORS=t.NOT_LOCAL_BINDING=t.LOGICAL_OPERATORS=t.INHERIT_KEYS=t.FOR_INIT_KEYS=t.FLATTENABLE_KEYS=t.EQUALITY_BINARY_OPERATORS=t.COMPARISON_BINARY_OPERATORS=t.COMMENT_KEYS=t.BOOLEAN_UNARY_OPERATORS=t.BOOLEAN_NUMBER_BINARY_OPERATORS=t.BOOLEAN_BINARY_OPERATORS=t.BLOCK_SCOPED_SYMBOL=t.BINARY_OPERATORS=t.ASSIGNMENT_OPERATORS=void 0,t.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],t.FLATTENABLE_KEYS=["body","expressions"],t.FOR_INIT_KEYS=["left","init"],t.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const n=["||","&&","??"];t.LOGICAL_OPERATORS=n,t.UPDATE_OPERATORS=["++","--"];const r=[">","<",">=","<="];t.BOOLEAN_NUMBER_BINARY_OPERATORS=r;const a=["==","===","!=","!=="];t.EQUALITY_BINARY_OPERATORS=a;const i=[...a,"in","instanceof"];t.COMPARISON_BINARY_OPERATORS=i;const s=[...i,...r];t.BOOLEAN_BINARY_OPERATORS=s;const o=["-","/","%","*","**","&","|",">>",">>>","<<","^"];t.NUMBER_BINARY_OPERATORS=o;const l=["+",...o,...s,"|>"];t.BINARY_OPERATORS=l;const p=["=","+=",...o.map((e=>e+"=")),...n.map((e=>e+"="))];t.ASSIGNMENT_OPERATORS=p;const c=["delete","!"];t.BOOLEAN_UNARY_OPERATORS=c;const u=["+","-","~"];t.NUMBER_UNARY_OPERATORS=u;const d=["typeof"];t.STRING_UNARY_OPERATORS=d;const f=["void","throw",...c,...u,...d];t.UNARY_OPERATORS=f,t.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};const y=Symbol.for("var used to be block scoped");t.BLOCK_SCOPED_SYMBOL=y;const m=Symbol.for("should not be considered a local binding");t.NOT_LOCAL_BINDING=m},39270:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t="body"){const n=(0,r.default)(e[t],e);return e[t]=n,n};var r=n(3933)},6437:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,o){const l=[];let p=!0;for(const c of t)if((0,a.isEmptyStatement)(c)||(p=!1),(0,a.isExpression)(c))l.push(c);else if((0,a.isExpressionStatement)(c))l.push(c.expression);else if((0,a.isVariableDeclaration)(c)){if("var"!==c.kind)return;for(const e of c.declarations){const t=(0,r.default)(e);for(const e of Object.keys(t))o.push({kind:c.kind,id:(0,s.default)(t[e])});e.init&&l.push((0,i.assignmentExpression)("=",e.id,e.init))}p=!0}else if((0,a.isIfStatement)(c)){const t=c.consequent?e([c.consequent],n,o):n.buildUndefinedNode(),r=c.alternate?e([c.alternate],n,o):n.buildUndefinedNode();if(!t||!r)return;l.push((0,i.conditionalExpression)(c.test,t,r))}else if((0,a.isBlockStatement)(c)){const t=e(c.body,n,o);if(!t)return;l.push(t)}else{if(!(0,a.isEmptyStatement)(c))return;0===t.indexOf(c)&&(p=!0)}return p&&l.push(n.buildUndefinedNode()),1===l.length?l[0]:(0,i.sequenceExpression)(l)};var r=n(79856),a=n(31922),i=n(88270),s=n(88635)},92540:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"eval"!==(e=(0,r.default)(e))&&"arguments"!==e||(e="_"+e),e};var r=n(96396)},3933:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.isBlockStatement)(e))return e;let n=[];return(0,r.isEmptyStatement)(e)?n=[]:((0,r.isStatement)(e)||(e=(0,r.isFunction)(t)?(0,a.returnStatement)(e):(0,a.expressionStatement)(e)),n=[e]),(0,a.blockStatement)(n)};var r=n(31922),a=n(88270)},23786:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=e.key||e.property){return!e.computed&&(0,r.isIdentifier)(t)&&(t=(0,a.stringLiteral)(t.name)),t};var r=n(31922),a=n(88270)},84558:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(31922);t.default=function(e){if((0,r.isExpressionStatement)(e)&&(e=e.expression),(0,r.isExpression)(e))return e;if((0,r.isClass)(e)?e.type="ClassExpression":(0,r.isFunction)(e)&&(e.type="FunctionExpression"),!(0,r.isExpression)(e))throw new Error(`cannot turn ${e.type} to an expression`);return e}},96396:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e+="";let t="";for(const n of e)t+=(0,a.isIdentifierChar)(n.codePointAt(0))?n:"-";return t=t.replace(/^[-0-9]+/,""),t=t.replace(/[-\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""})),(0,r.default)(t)||(t=`_${t}`),t||"_"};var r=n(59876),a=n(29649)},39668:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;var r=n(31922),a=n(88635),i=n(60372);function s(e,t=e.key){let n;return"method"===e.kind?s.increment()+"":(n=(0,r.isIdentifier)(t)?t.name:(0,r.isStringLiteral)(t)?JSON.stringify(t.value):JSON.stringify((0,i.default)((0,a.default)(t))),e.computed&&(n=`[${n}]`),e.static&&(n=`static:${n}`),n)}s.uid=0,s.increment=function(){return s.uid>=Number.MAX_SAFE_INTEGER?s.uid=0:s.uid++}},88442:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(null==e||!e.length)return;const n=[],a=(0,r.default)(e,t,n);if(a){for(const e of n)t.push(e);return a}};var r=n(6437)},90767:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(31922),a=n(88270);t.default=function(e,t){if((0,r.isStatement)(e))return e;let n,i=!1;if((0,r.isClass)(e))i=!0,n="ClassDeclaration";else if((0,r.isFunction)(e))i=!0,n="FunctionDeclaration";else if((0,r.isAssignmentExpression)(e))return(0,a.expressionStatement)(e);if(i&&!e.id&&(n=!1),!n){if(t)return!1;throw new Error(`cannot turn ${e.type} to a statement`)}return e.type=n,e}},21395:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(59876),a=n(88270);t.default=function e(t){if(void 0===t)return(0,a.identifier)("undefined");if(!0===t||!1===t)return(0,a.booleanLiteral)(t);if(null===t)return(0,a.nullLiteral)();if("string"==typeof t)return(0,a.stringLiteral)(t);if("number"==typeof t){let e;if(Number.isFinite(t))e=(0,a.numericLiteral)(Math.abs(t));else{let n;n=Number.isNaN(t)?(0,a.numericLiteral)(0):(0,a.numericLiteral)(1),e=(0,a.binaryExpression)("/",n,(0,a.numericLiteral)(0))}return(t<0||Object.is(t,-0))&&(e=(0,a.unaryExpression)("-",e)),e}if(function(e){return"[object RegExp]"===i(e)}(t)){const e=t.source,n=t.toString().match(/\/([a-z]+|)$/)[1];return(0,a.regExpLiteral)(e,n)}if(Array.isArray(t))return(0,a.arrayExpression)(t.map(e));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(t)){const n=[];for(const i of Object.keys(t)){let s;s=(0,r.default)(i)?(0,a.identifier)(i):(0,a.stringLiteral)(i),n.push((0,a.objectProperty)(s,e(t[i])))}return(0,a.objectExpression)(n)}throw new Error("don't know how to turn this value into a node")};const i=Function.call.bind(Object.prototype.toString)},88321:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.patternLikeCommon=t.functionTypeAnnotationCommon=t.functionDeclarationCommon=t.functionCommon=t.classMethodOrPropertyCommon=t.classMethodOrDeclareMethodCommon=void 0;var r=n(11114),a=n(59876),i=n(29649),s=n(37648),o=n(38563),l=n(62546);const p=(0,l.defineAliasedType)("Standardized");p("ArrayExpression",{fields:{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","Expression","SpreadElement"))),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),p("AssignmentExpression",{fields:{operator:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertValueType)("string");const e=(0,l.assertOneOf)(...o.ASSIGNMENT_OPERATORS),t=(0,l.assertOneOf)("=");return function(n,a,i){((0,r.default)("Pattern",n.left)?t:e)(n,a,i)}}()},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")},right:{validate:(0,l.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),p("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,l.assertOneOf)(...o.BINARY_OPERATORS)},left:{validate:function(){const e=(0,l.assertNodeType)("Expression"),t=(0,l.assertNodeType)("Expression","PrivateName");return Object.assign((function(n,r,a){("in"===n.operator?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","PrivateName"]})}()},right:{validate:(0,l.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),p("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("Directive",{visitor:["value"],fields:{value:{validate:(0,l.assertNodeType)("DirectiveLiteral")}}}),p("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block","Statement"]}),p("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("CallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,l.assertNodeType)("Expression","Super","V8IntrinsicIdentifier")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}},{typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),p("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),p("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Expression")},alternate:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),p("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("DebuggerStatement",{aliases:["Statement"]}),p("DoWhileStatement",{visitor:["test","body"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),p("EmptyStatement",{aliases:["Statement"]}),p("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),p("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,l.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertEach)((0,l.assertNodeType)("CommentBlock","CommentLine")):Object.assign((()=>{}),{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,l.assertEach)(Object.assign((()=>{}),{type:"any"})),optional:!0}}}),p("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,l.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},update:{validate:(0,l.assertNodeType)("Expression"),optional:!0},body:{validate:(0,l.assertNodeType)("Statement")}}});const c=()=>({params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement")))},generator:{default:!1},async:{default:!1}});t.functionCommon=c;const u=()=>({returnType:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}});t.functionTypeAnnotationCommon=u;const d=()=>Object.assign({},c(),{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}});t.functionDeclarationCommon=d,p("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","params","body","returnType","typeParameters"],fields:Object.assign({},d(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return()=>{};const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){(0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}()}),p("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const f=()=>({typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.patternLikeCommon=f,p("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","PatternLike","LVal","TSEntityName"],fields:Object.assign({},f(),{name:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&!(0,a.default)(n,!1))throw new TypeError(`"${n}" is not a valid identifier name`)}),{type:"string"}))}}),validate(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const a=/\.(\w+)$/.exec(t);if(!a)return;const[,s]=a,o={computed:!1};if("property"===s){if((0,r.default)("MemberExpression",e,o))return;if((0,r.default)("OptionalMemberExpression",e,o))return}else if("key"===s){if((0,r.default)("Property",e,o))return;if((0,r.default)("Method",e,o))return}else if("exported"===s){if((0,r.default)("ExportSpecifier",e))return}else if("imported"===s){if((0,r.default)("ImportSpecifier",e,{imported:n}))return}else if("meta"===s&&(0,r.default)("MetaProperty",e,{meta:n}))return;if(((0,i.isKeyword)(n.name)||(0,i.isReservedWord)(n.name,!1))&&"this"!==n.name)throw new TypeError(`"${n.name}" is not a valid identifier`)}}),p("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,l.assertNodeType)("Statement")}}}),p("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,l.assertNodeType)("Identifier")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("StringLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,l.chain)((0,l.assertValueType)("number"),Object.assign((function(e,t,n){(1/n<0||!Number.isFinite(n))&&new Error(`NumericLiterals must be non-negative finite numbers. You can use t.valueToNode(${n}) instead.`)}),{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),p("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,l.assertValueType)("string")},flags:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const r=/[^gimsuy]/.exec(n);if(r)throw new TypeError(`"${r[0]}" is not a valid RegExp flag`)}),{type:"string"})),default:""}}}),p("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,l.assertOneOf)(...o.LOGICAL_OPERATORS)},left:{validate:(0,l.assertNodeType)("Expression")},right:{validate:(0,l.assertNodeType)("Expression")}}}),p("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal"],fields:Object.assign({object:{validate:(0,l.assertNodeType)("Expression","Super")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier","PrivateName"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","PrivateName"],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}})}),p("NewExpression",{inherits:"CallExpression"}),p("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceFile:{validate:(0,l.assertValueType)("string")},sourceType:{validate:(0,l.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,l.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block"]}),p("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ObjectMethod","ObjectProperty","SpreadElement")))}}}),p("ObjectMethod",{builder:["kind","key","params","body","computed","generator","async"],fields:Object.assign({},c(),u(),{kind:Object.assign({validate:(0,l.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],n}()},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}}),visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]}),p("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],fields:{computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]})}()},value:{validate:(0,l.assertNodeType)("Expression","PatternLike")},shorthand:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true")}),{type:"boolean"}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!(0,r.default)("Identifier",e.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")})),default:!1},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}},visitor:["key","value","decorators"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:function(){const e=(0,l.assertNodeType)("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),t=(0,l.assertNodeType)("Expression");return function(n,a,i){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ObjectPattern",n)?e:t)(i,"value",i.value)}}()}),p("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["LVal","PatternLike"],deprecatedAlias:"RestProperty",fields:Object.assign({},f(),{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")}}),validate(e,t){if(!process.env.BABEL_TYPES_8_BREAKING)return;const n=/(\w+)\[(\d+)\]/.exec(t);if(!n)throw new Error("Internal Babel error: malformed key.");const[,r,a]=n;if(e[r].length>+a+1)throw new TypeError(`RestElement must be last element of ${r}`)}}),p("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression"),optional:!0}}}),p("SequenceExpression",{visitor:["expressions"],fields:{expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression")))}},aliases:["Expression"]}),p("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}}}),p("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},consequent:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}}}),p("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,l.assertNodeType)("Expression")},cases:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("SwitchCase")))}}}),p("ThisExpression",{aliases:["Expression"]}),p("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:(0,l.chain)((0,l.assertNodeType)("BlockStatement"),Object.assign((function(e){if(process.env.BABEL_TYPES_8_BREAKING&&!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")}),{oneOfNodeTypes:["BlockStatement"]}))},handler:{optional:!0,validate:(0,l.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,l.assertNodeType)("BlockStatement")}}}),p("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),p("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression"):(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),p("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},kind:{validate:(0,l.assertOneOf)("var","let","const","using","await using")},declarations:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("VariableDeclarator")))}},validate(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&(0,r.default)("ForXStatement",e,{left:n})&&1!==n.declarations.length)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${e.type}`)}}),p("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("LVal");const e=(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),t=(0,l.assertNodeType)("Identifier");return function(n,r,a){(n.init?e:t)(n,r,a)}}()},definite:{optional:!0,validate:(0,l.assertValueType)("boolean")},init:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{left:{validate:(0,l.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,l.assertNodeType)("Expression")},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}})}),p("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","PatternLike","LVal")))}})}),p("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["params","body","returnType","typeParameters"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{expression:{validate:(0,l.assertValueType)("boolean")},body:{validate:(0,l.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),p("ClassBody",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")))}}}),p("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0}}}),p("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0}},validate:function(){const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id))}}()}),p("ExportAllDeclaration",{builder:["source"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{source:{validate:(0,l.assertNodeType)("StringLiteral")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value")),attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))}}}),p("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{validate:(0,l.assertNodeType)("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("value"))}}),p("ExportNamedDeclaration",{builder:["declaration","specifiers","source"],visitor:["declaration","specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{optional:!0,validate:(0,l.chain)((0,l.assertNodeType)("Declaration"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration")}),{oneOfNodeTypes:["Declaration"]}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.source)throw new TypeError("Cannot export a declaration from a source")}))},attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},specifiers:{default:[],validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)(function(){const e=(0,l.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),t=(0,l.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?function(n,r,a){(n.source?e:t)(n,r,a)}:e}()))},source:{validate:(0,l.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value"))}}),p("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},exported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,l.assertOneOf)("type","value"),optional:!0}}}),p("ForOfStatement",{visitor:["left","right","body"],builder:["left","right","body","await"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("VariableDeclaration","LVal");const e=(0,l.assertNodeType)("VariableDeclaration"),t=(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return function(n,a,i){(0,r.default)("VariableDeclaration",i)?e(n,a,i):t(n,a,i)}}()},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")},await:{default:!1}}}),p("ImportDeclaration",{builder:["specifiers","source"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:{attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},module:{optional:!0,validate:(0,l.assertValueType)("boolean")},specifiers:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier")))},source:{validate:(0,l.assertNodeType)("StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportSpecifier",{visitor:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},imported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:(0,l.chain)((0,l.assertNodeType)("Identifier"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;let a;switch(n.name){case"function":a="sent";break;case"new":a="target";break;case"import":a="meta"}if(!(0,r.default)("Identifier",e.property,{name:a}))throw new TypeError("Unrecognised MetaProperty")}),{oneOfNodeTypes:["Identifier"]}))},property:{validate:(0,l.assertNodeType)("Identifier")}}});const y=()=>({abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,l.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}});t.classMethodOrPropertyCommon=y;const m=()=>Object.assign({},c(),y(),{params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement","TSParameterProperty")))},kind:{validate:(0,l.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,l.chain)((0,l.assertValueType)("string"),(0,l.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.classMethodOrDeclareMethodCommon=m,p("ClassMethod",{aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["key","params","body","decorators","returnType","typeParameters"],fields:Object.assign({},m(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("ObjectPattern",{visitor:["properties","typeAnnotation","decorators"],builder:["properties"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("RestElement","ObjectProperty")))}})}),p("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Super",{aliases:["Expression"]}),p("TaggedTemplateExpression",{visitor:["tag","quasi","typeParameters"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,l.assertNodeType)("Expression")},quasi:{validate:(0,l.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),p("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,l.chain)((0,l.assertShape)({raw:{validate:(0,l.assertValueType)("string")},cooked:{validate:(0,l.assertValueType)("string"),optional:!0}}),(function(e){const t=e.value.raw;let n=!1;const r=()=>{throw new Error("Internal @babel/types error.")},{str:a,firstInvalidLoc:i}=(0,s.readStringContents)("template",t,0,0,0,{unterminated(){n=!0},strictNumericEscape:r,invalidEscapeSequence:r,numericSeparatorInEscapeSequence:r,unexpectedNumericSeparator:r,invalidDigit:r,invalidCodePoint:r});if(!n)throw new Error("Invalid raw");e.value.cooked=i?null:a}))},tail:{default:!1}}}),p("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TemplateElement")))},expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","TSType")),(function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)}))}}}),p("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")}),{type:"boolean"})),default:!1},argument:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Import",{aliases:["Expression"]}),p("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,l.assertNodeType)("Identifier")}}}),p("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier"]})}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")}}}),p("OptionalCallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:{callee:{validate:(0,l.assertNodeType)("Expression")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")},typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}}}),p("ClassProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"],fields:Object.assign({},y(),{value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassAccessorProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"],fields:Object.assign({},y(),{key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassPrivateProperty",{visitor:["key","value","decorators","typeAnnotation"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,l.assertNodeType)("PrivateName")},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},static:{validate:(0,l.assertValueType)("boolean"),default:!1},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}}}),p("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},m(),u(),{kind:{validate:(0,l.assertOneOf)("get","set","method"),default:"method"},key:{validate:(0,l.assertNodeType)("PrivateName")},body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")}}}),p("StaticBlock",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","FunctionParent"]})},29609:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEPRECATED_ALIASES=void 0,t.DEPRECATED_ALIASES={ModuleDeclaration:"ImportOrExportDeclaration"}},63606:(e,t,n)=>{"use strict";var r=n(62546);(0,r.default)("ArgumentPlaceholder",{}),(0,r.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,r.assertNodeType)("Expression")},callee:{validate:(0,r.assertNodeType)("Expression")}}:{object:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})}}}),(0,r.default)("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,r.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,r.assertNodeType)("StringLiteral")}}}),(0,r.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),(0,r.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,r.assertNodeType)("BlockStatement")},async:{validate:(0,r.assertValueType)("boolean"),default:!1}}}),(0,r.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,r.assertNodeType)("Identifier")}}}),(0,r.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("ObjectProperty","SpreadElement")))}}}),(0,r.default)("TupleExpression",{fields:{elements:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Expression","SpreadElement"))),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,r.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,r.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,r.assertNodeType)("Program")}},aliases:["Expression"]}),(0,r.default)("TopicReference",{aliases:["Expression"]}),(0,r.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]})},25419:(e,t,n)=>{"use strict";var r=n(62546);const a=(0,r.defineAliasedType)("Flow"),i=e=>{const t="DeclareClass"===e;a(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends",...t?["mixins","implements"]:[],"body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends"))},t?{mixins:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),implements:(0,r.validateOptional)((0,r.arrayOfType)("ClassImplements"))}:{},{body:(0,r.validateType)("ObjectTypeAnnotation")})})};a("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,r.validateType)("FlowType")}}),a("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("DeclareClass"),a("DeclareFunction",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),predicate:(0,r.validateOptionalType)("DeclaredPredicate")}}),i("DeclareInterface"),a("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)("BlockStatement"),kind:(0,r.validateOptional)((0,r.assertOneOf)("CommonJS","ES"))}}),a("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateOptionalType)("FlowType")}}),a("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier")}}),a("DeclareExportDeclaration",{visitor:["declaration","specifiers","source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{declaration:(0,r.validateOptionalType)("Flow"),specifiers:(0,r.validateOptional)((0,r.arrayOfType)(["ExportSpecifier","ExportNamespaceSpecifier"])),source:(0,r.validateOptionalType)("StringLiteral"),default:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("DeclareExportAllDeclaration",{visitor:["source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{source:(0,r.validateType)("StringLiteral"),exportKind:(0,r.validateOptional)((0,r.assertOneOf)("type","value"))}}),a("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,r.validateType)("Flow")}}),a("ExistsTypeAnnotation",{aliases:["FlowType"]}),a("FunctionTypeAnnotation",{visitor:["typeParameters","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),params:(0,r.validate)((0,r.arrayOfType)("FunctionTypeParam")),rest:(0,r.validateOptionalType)("FunctionTypeParam"),this:(0,r.validateOptionalType)("FunctionTypeParam"),returnType:(0,r.validateType)("FlowType")}}),a("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,r.validateOptionalType)("Identifier"),typeAnnotation:(0,r.validateType)("FlowType"),optional:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),a("InferredPredicate",{aliases:["FlowPredicate"]}),a("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("InterfaceDeclaration"),a("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),body:(0,r.validateType)("ObjectTypeAnnotation")}}),a("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("number"))}}),a("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,r.validate)((0,r.arrayOfType)(["ObjectTypeProperty","ObjectTypeSpreadProperty"])),indexers:{validate:(0,r.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,r.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,r.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,r.assertValueType)("boolean"),default:!1},inexact:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeInternalSlot",{visitor:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateType)("Identifier"),value:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean")),static:(0,r.validate)((0,r.assertValueType)("boolean")),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeIndexer",{visitor:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateOptionalType)("Identifier"),key:(0,r.validateType)("FlowType"),value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance")}}),a("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,r.validateType)(["Identifier","StringLiteral"]),value:(0,r.validateType)("FlowType"),kind:(0,r.validate)((0,r.assertOneOf)("init","get","set")),static:(0,r.validate)((0,r.assertValueType)("boolean")),proto:(0,r.validate)((0,r.assertValueType)("boolean")),optional:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance"),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,r.validateType)("FlowType")}}),a("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateType)("FlowType")}}),a("QualifiedTypeIdentifier",{visitor:["id","qualification"],fields:{id:(0,r.validateType)("Identifier"),qualification:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"])}}),a("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("string"))}}),a("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,r.validateType)("FlowType")}}),a("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,r.validate)((0,r.assertValueType)("string")),bound:(0,r.validateOptionalType)("TypeAnnotation"),default:(0,r.validateOptionalType)("FlowType"),variance:(0,r.validateOptionalType)("Variance")}}),a("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("TypeParameter"))}}),a("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("Variance",{builder:["kind"],fields:{kind:(0,r.validate)((0,r.assertOneOf)("minus","plus"))}}),a("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,r.validateType)("Identifier"),body:(0,r.validateType)(["EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody"])}}),a("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)(["EnumStringMember","EnumDefaultedMember"]),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumBooleanMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("BooleanLiteral")}}),a("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("NumericLiteral")}}),a("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("StringLiteral")}}),a("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),a("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType")}}),a("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean"))}})},64194:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ALIAS_KEYS",{enumerable:!0,get:function(){return a.ALIAS_KEYS}}),Object.defineProperty(t,"BUILDER_KEYS",{enumerable:!0,get:function(){return a.BUILDER_KEYS}}),Object.defineProperty(t,"DEPRECATED_ALIASES",{enumerable:!0,get:function(){return s.DEPRECATED_ALIASES}}),Object.defineProperty(t,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return a.DEPRECATED_KEYS}}),Object.defineProperty(t,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return a.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(t,"NODE_FIELDS",{enumerable:!0,get:function(){return a.NODE_FIELDS}}),Object.defineProperty(t,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return a.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(t,"PLACEHOLDERS",{enumerable:!0,get:function(){return i.PLACEHOLDERS}}),Object.defineProperty(t,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_ALIAS}}),Object.defineProperty(t,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_FLIPPED_ALIAS}}),t.TYPES=void 0,Object.defineProperty(t,"VISITOR_KEYS",{enumerable:!0,get:function(){return a.VISITOR_KEYS}});var r=n(53164);n(88321),n(25419),n(6866),n(81018),n(63606),n(42628);var a=n(62546),i=n(86354),s=n(29609);Object.keys(s.DEPRECATED_ALIASES).forEach((e=>{a.FLIPPED_ALIAS_KEYS[e]=a.FLIPPED_ALIAS_KEYS[s.DEPRECATED_ALIASES[e]]})),r(a.VISITOR_KEYS),r(a.ALIAS_KEYS),r(a.FLIPPED_ALIAS_KEYS),r(a.NODE_FIELDS),r(a.BUILDER_KEYS),r(a.DEPRECATED_KEYS),r(i.PLACEHOLDERS_ALIAS),r(i.PLACEHOLDERS_FLIPPED_ALIAS);const o=[].concat(Object.keys(a.VISITOR_KEYS),Object.keys(a.FLIPPED_ALIAS_KEYS),Object.keys(a.DEPRECATED_KEYS));t.TYPES=o},6866:(e,t,n)=>{"use strict";var r=n(62546);const a=(0,r.defineAliasedType)("JSX");a("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,r.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),a("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),a("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,r.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,r.assertNodeType)("JSXClosingElement")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}},{selfClosing:{validate:(0,r.assertValueType)("boolean"),optional:!0}})}),a("JSXEmptyExpression",{}),a("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression","JSXEmptyExpression")}}}),a("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}}),a("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,r.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,r.assertNodeType)("JSXIdentifier")},name:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","attributes"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXAttribute","JSXSpreadAttribute")))},typeParameters:{validate:(0,r.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),a("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}}}),a("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,r.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,r.assertNodeType)("JSXClosingFragment")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}}}),a("JSXOpeningFragment",{aliases:["Immutable"]}),a("JSXClosingFragment",{aliases:["Immutable"]})},81018:(e,t,n)=>{"use strict";var r=n(62546),a=n(86354);const i=(0,r.defineAliasedType)("Miscellaneous");i("Noop",{visitor:[]}),i("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:{name:{validate:(0,r.assertNodeType)("Identifier")},expectedNode:{validate:(0,r.assertOneOf)(...a.PLACEHOLDERS)}}}),i("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}})},86354:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PLACEHOLDERS_FLIPPED_ALIAS=t.PLACEHOLDERS_ALIAS=t.PLACEHOLDERS=void 0;var r=n(62546);const a=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"];t.PLACEHOLDERS=a;const i={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};t.PLACEHOLDERS_ALIAS=i;for(const e of a){const t=r.ALIAS_KEYS[e];null!=t&&t.length&&(i[e]=t)}const s={};t.PLACEHOLDERS_FLIPPED_ALIAS=s,Object.keys(i).forEach((e=>{i[e].forEach((t=>{Object.hasOwnProperty.call(s,t)||(s[t]=[]),s[t].push(e)}))}))},42628:(e,t,n)=>{"use strict";var r=n(62546),a=n(88321),i=n(11114);const s=(0,r.defineAliasedType)("TypeScript"),o=(0,r.assertValueType)("boolean"),l=()=>({returnType:{validate:(0,r.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,r.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}});s("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,r.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,r.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,r.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,r.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Decorator"))),optional:!0}}}),s("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},(0,a.functionDeclarationCommon)(),l())}),s("TSDeclareMethod",{visitor:["decorators","key","typeParameters","params","returnType"],fields:Object.assign({},(0,a.classMethodOrDeclareMethodCommon)(),l())}),s("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,r.validateType)("TSEntityName"),right:(0,r.validateType)("Identifier")}});const p=()=>({typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,r.validateArrayOfType)(["ArrayPattern","Identifier","ObjectPattern","RestElement"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}),c={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:p()};s("TSCallSignatureDeclaration",c),s("TSConstructSignatureDeclaration",c);const u=()=>({key:(0,r.validateType)("Expression"),computed:{default:!1},optional:(0,r.validateOptional)(o)});s("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation","initializer"],fields:Object.assign({},u(),{readonly:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),initializer:(0,r.validateOptionalType)("Expression"),kind:{validate:(0,r.assertOneOf)("get","set")}})}),s("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},p(),u(),{kind:{validate:(0,r.assertOneOf)("method","get","set")}})}),s("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,r.validateOptional)(o),static:(0,r.validateOptional)(o),parameters:(0,r.validateArrayOfType)("Identifier"),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}});const d=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const e of d)s(e,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});s("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const f={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};s("TSFunctionType",Object.assign({},f,{fields:p()})),s("TSConstructorType",Object.assign({},f,{fields:Object.assign({},p(),{abstract:(0,r.validateOptional)(o)})})),s("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,r.validateType)(["Identifier","TSThisType"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),asserts:(0,r.validateOptional)(o)}}),s("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:{exprName:(0,r.validateType)(["TSEntityName","TSImportType"]),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,r.validateType)("TSType")}}),s("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,r.validateArrayOfType)(["TSType","TSNamedTupleMember"])}}),s("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,r.validateType)("Identifier"),optional:{validate:o,default:!1},elementType:(0,r.validateType)("TSType")}});const y={aliases:["TSType"],visitor:["types"],fields:{types:(0,r.validateArrayOfType)("TSType")}};s("TSUnionType",y),s("TSIntersectionType",y),s("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,r.validateType)("TSType"),extendsType:(0,r.validateType)("TSType"),trueType:(0,r.validateType)("TSType"),falseType:(0,r.validateType)("TSType")}}),s("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,r.validateType)("TSTypeParameter")}}),s("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{operator:(0,r.validate)((0,r.assertValueType)("string")),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,r.validateType)("TSType"),indexType:(0,r.validateType)("TSType")}}),s("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","typeAnnotation","nameType"],fields:{readonly:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeParameter:(0,r.validateType)("TSTypeParameter"),optional:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeAnnotation:(0,r.validateOptionalType)("TSType"),nameType:(0,r.validateOptionalType)("TSType")}}),s("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const e=(0,r.assertNodeType)("NumericLiteral","BigIntLiteral"),t=(0,r.assertOneOf)("-"),n=(0,r.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral");function a(r,a,s){(0,i.default)("UnaryExpression",s)?(t(s,"operator",s.operator),e(s,"argument",s.argument)):n(r,a,s)}return a.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],a}()}}}),s("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,r.validateType)("TSInterfaceBody")}}),s("TSInterfaceBody",{visitor:["body"],fields:{body:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("Expression"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}});const m={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TSType")}};s("TSAsExpression",m),s("TSSatisfiesExpression",m),s("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,r.validateType)("TSType"),expression:(0,r.validateType)("Expression")}}),s("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,r.validateOptional)(o),const:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),members:(0,r.validateArrayOfType)("TSEnumMember"),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{declare:(0,r.validateOptional)(o),global:(0,r.validateOptional)(o),id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)(["TSModuleBlock","TSModuleDeclaration"])}}),s("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:(0,r.validateArrayOfType)("Statement")}}),s("TSImportType",{aliases:["TSType"],visitor:["argument","qualifier","typeParameters"],fields:{argument:(0,r.validateType)("StringLiteral"),qualifier:(0,r.validateOptionalType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSImportEqualsDeclaration",{aliases:["Statement"],visitor:["id","moduleReference"],fields:{isExport:(0,r.validate)(o),id:(0,r.validateType)("Identifier"),moduleReference:(0,r.validateType)(["TSEntityName","TSExternalModuleReference"]),importKind:{validate:(0,r.assertOneOf)("type","value"),optional:!0}}}),s("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,r.validateType)("StringLiteral")}}),s("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),s("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,r.assertNodeType)("TSType")}}}),s("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSType")))}}}),s("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSTypeParameter")))}}}),s("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,r.assertValueType)("string")},in:{validate:(0,r.assertValueType)("boolean"),optional:!0},out:{validate:(0,r.assertValueType)("boolean"),optional:!0},const:{validate:(0,r.assertValueType)("boolean"),optional:!0},constraint:{validate:(0,r.assertNodeType)("TSType"),optional:!0},default:{validate:(0,r.assertNodeType)("TSType"),optional:!0}}})},62546:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VISITOR_KEYS=t.NODE_PARENT_VALIDATIONS=t.NODE_FIELDS=t.FLIPPED_ALIAS_KEYS=t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.ALIAS_KEYS=void 0,t.arrayOf=m,t.arrayOfType=h,t.assertEach=T,t.assertNodeOrValueType=function(...e){function t(t,n,i){for(const s of e)if(d(i)===s||(0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeOrValueTypes=e,t},t.assertNodeType=S,t.assertOneOf=function(...e){function t(t,n,r){if(e.indexOf(r)<0)throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t},t.assertOptionalChainStart=function(){return function(e){var t;let n=e;for(;e;){const{type:e}=n;if("OptionalCallExpression"!==e){if("OptionalMemberExpression"!==e)break;if(n.optional)return;n=n.object}else{if(n.optional)return;n=n.callee}}throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null==(t=n)?void 0:t.type}`)}},t.assertShape=function(e){function t(t,n,r){const i=[];for(const n of Object.keys(e))try{(0,a.validateField)(t,n,r[n],e[n])}catch(e){if(e instanceof TypeError){i.push(e.message);continue}throw e}if(i.length)throw new TypeError(`Property ${n} of ${t.type} expected to have the following:\n${i.join("\n")}`)}return t.shapeOf=e,t},t.assertValueType=b,t.chain=E,t.default=A,t.defineAliasedType=function(...e){return(t,n={})=>{let r=n.aliases;var a;r||(n.inherits&&(r=null==(a=g[n.inherits].aliases)?void 0:a.slice()),null!=r||(r=[]),n.aliases=r);const i=e.filter((e=>!r.includes(e)));r.unshift(...i),A(t,n)}},t.typeIs=y,t.validate=f,t.validateArrayOfType=function(e){return f(h(e))},t.validateOptional=function(e){return{validate:e,optional:!0}},t.validateOptionalType=function(e){return{validate:y(e),optional:!0}},t.validateType=function(e){return f(y(e))};var r=n(11114),a=n(5970);const i={};t.VISITOR_KEYS=i;const s={};t.ALIAS_KEYS=s;const o={};t.FLIPPED_ALIAS_KEYS=o;const l={};t.NODE_FIELDS=l;const p={};t.BUILDER_KEYS=p;const c={};t.DEPRECATED_KEYS=c;const u={};function d(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function f(e){return{validate:e}}function y(e){return"string"==typeof e?S(e):S(...e)}function m(e){return E(b("array"),T(e))}function h(e){return m(y(e))}function T(e){function t(t,n,r){if(Array.isArray(r))for(let i=0;i<r.length;i++){const s=`${n}[${i}]`,o=r[i];e(t,s,o),process.env.BABEL_TYPES_8_BREAKING&&(0,a.validateChild)(t,s,o)}}return t.each=e,t}function S(...e){function t(t,n,i){for(const s of e)if((0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeTypes=e,t}function b(e){function t(t,n,r){if(d(r)!==e)throw new TypeError(`Property ${n} expected type of ${e} but got ${d(r)}`)}return t.type=e,t}function E(...e){function t(...t){for(const n of e)n(...t)}if(t.chainOf=e,e.length>=2&&"type"in e[0]&&"array"===e[0].type&&!("each"in e[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return t}t.NODE_PARENT_VALIDATIONS=u;const P=["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate"],x=["default","optional","deprecated","validate"],g={};function A(e,t={}){const n=t.inherits&&g[t.inherits]||{};let r=t.fields;if(!r&&(r={},n.fields)){const e=Object.getOwnPropertyNames(n.fields);for(const t of e){const e=n.fields[t],a=e.default;if(Array.isArray(a)?a.length>0:a&&"object"==typeof a)throw new Error("field defaults can only be primitives or empty arrays currently");r[t]={default:Array.isArray(a)?[]:a,optional:e.optional,deprecated:e.deprecated,validate:e.validate}}}const a=t.visitor||n.visitor||[],f=t.aliases||n.aliases||[],y=t.builder||n.builder||t.visitor||[];for(const n of Object.keys(t))if(-1===P.indexOf(n))throw new Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(c[t.deprecatedAlias]=e);for(const e of a.concat(y))r[e]=r[e]||{};for(const t of Object.keys(r)){const n=r[t];void 0!==n.default&&-1===y.indexOf(t)&&(n.optional=!0),void 0===n.default?n.default=null:n.validate||null==n.default||(n.validate=b(d(n.default)));for(const r of Object.keys(n))if(-1===x.indexOf(r))throw new Error(`Unknown field key "${r}" on ${e}.${t}`)}i[e]=t.visitor=a,p[e]=t.builder=y,l[e]=t.fields=r,s[e]=t.aliases=f,f.forEach((t=>{o[t]=o[t]||[],o[t].push(e)})),t.validate&&(u[e]=t.validate),g[e]=t}},25024:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={react:!0,assertNode:!0,createTypeAnnotationBasedOnTypeof:!0,createUnionTypeAnnotation:!0,createFlowUnionType:!0,createTSUnionType:!0,cloneNode:!0,clone:!0,cloneDeep:!0,cloneDeepWithoutLoc:!0,cloneWithoutLoc:!0,addComment:!0,addComments:!0,inheritInnerComments:!0,inheritLeadingComments:!0,inheritsComments:!0,inheritTrailingComments:!0,removeComments:!0,ensureBlock:!0,toBindingIdentifierName:!0,toBlock:!0,toComputedKey:!0,toExpression:!0,toIdentifier:!0,toKeyAlias:!0,toSequenceExpression:!0,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,traverse:!0,traverseFast:!0,shallowEqual:!0,is:!0,isBinding:!0,isBlockScoped:!0,isImmutable:!0,isLet:!0,isNode:!0,isNodesEquivalent:!0,isPlaceholderType:!0,isReferenced:!0,isScope:!0,isSpecifierDefault:!0,isType:!0,isValidES3Identifier:!0,isValidIdentifier:!0,isVar:!0,matchesPattern:!0,validate:!0,buildMatchMemberExpression:!0,__internal__deprecationWarning:!0};Object.defineProperty(t,"__internal__deprecationWarning",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"addComment",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"addComments",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"appendToMemberExpression",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"assertNode",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"buildMatchMemberExpression",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"clone",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"cloneDeep",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"cloneNode",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"cloneWithoutLoc",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"createFlowUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"createTSUnionType",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"ensureBlock",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"inheritInnerComments",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"inheritLeadingComments",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"inheritTrailingComments",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"inherits",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"inheritsComments",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"is",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"isPlaceholderType",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"isType",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"isValidES3Identifier",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"matchesPattern",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"prependToMemberExpression",{enumerable:!0,get:function(){return V.default}}),t.react=void 0,Object.defineProperty(t,"removeComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"removeProperties",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"removePropertiesDeep",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"shallowEqual",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"toSequenceExpression",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"traverseFast",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return B.default}});var a=n(59036),i=n(72926),s=n(38749),o=n(40429),l=n(59949);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var p=n(88236),c=n(97023),u=n(71114),d=n(88270);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=n(45792);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}));var y=n(88635),m=n(5024),h=n(47184),T=n(70705),S=n(4170),b=n(41803),E=n(40474),P=n(52350),x=n(35187),g=n(34919),A=n(5770),v=n(74050),O=n(7318);Object.keys(O).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===O[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return O[e]}}))}));var I=n(38563);Object.keys(I).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===I[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return I[e]}}))}));var N=n(39270),D=n(92540),C=n(3933),w=n(23786),L=n(84558),j=n(96396),_=n(39668),M=n(88442),k=n(90767),B=n(21395),F=n(64194);Object.keys(F).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===F[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return F[e]}}))}));var R=n(52613),K=n(94211),V=n(19014),Y=n(18001),U=n(60372),X=n(51338),J=n(79856),W=n(10156),q=n(21141);Object.keys(q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return q[e]}}))}));var $=n(29535),G=n(26397),z=n(11114),H=n(86197),Q=n(64687),Z=n(88855),ee=n(46947),te=n(78551),ne=n(51932),re=n(17986),ae=n(83989),ie=n(42074),se=n(59400),oe=n(59060),le=n(81909),pe=n(59876),ce=n(74077),ue=n(92984),de=n(5970),fe=n(38616),ye=n(31922);Object.keys(ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ye[e]}}))}));var me=n(39298);const he={isReactComponent:a.default,isCompatTag:i.default,buildChildren:s.default};t.react=he},52613:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n=!1){return e.object=(0,r.memberExpression)(e.object,e.property,e.computed),e.property=t,e.computed=!!n,e};var r=n(88270)},51338:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isAnyTypeAnnotation)(p))return[p];if((0,r.isFlowBaseAnnotation)(p))s.set(p.type,p);else if((0,r.isUnionTypeAnnotation)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isGenericTypeAnnotation)(p)){const t=a(p.id);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(31922);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.id.name}.${a(e.qualification)}`}},94211:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!e||!t)return e;for(const n of r.INHERIT_KEYS.optional)null==e[n]&&(e[n]=t[n]);for(const n of Object.keys(t))"_"===n[0]&&"__clone"!==n&&(e[n]=t[n]);for(const n of r.INHERIT_KEYS.force)e[n]=t[n];return(0,a.default)(e,t),e};var r=n(38563),a=n(34919)},19014:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,a.isSuper)(e.object))throw new Error("Cannot prepend node to super property access (`super.foo`).");return e.object=(0,r.memberExpression)(t,e.object),e};var r=n(88270),a=n(25024)},18001:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t={}){const n=t.preserveComments?a:i;for(const t of n)null!=e[t]&&(e[t]=void 0);for(const t of Object.keys(e))"_"===t[0]&&null!=e[t]&&(e[t]=void 0);const r=Object.getOwnPropertySymbols(e);for(const t of r)e[t]=null};var r=n(38563);const a=["tokens","start","end","loc","raw","rawValue"],i=[...r.COMMENT_KEYS,"comments",...a]},60372:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,a.default,t),e};var r=n(29535),a=n(18001)},91752:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isTSAnyKeyword)(p))return[p];if((0,r.isTSBaseType)(p))s.set(p.type,p);else if((0,r.isTSUnionType)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isTSTypeReference)(p)&&p.typeParameters){const t=a(p.typeName);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(31922);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.right.name}.${a(e.left)}`}},79856:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var r=n(31922);function a(e,t,n){const i=[].concat(e),s=Object.create(null);for(;i.length;){const e=i.shift();if(!e)continue;const o=a.keys[e.type];if((0,r.isIdentifier)(e))t?(s[e.name]=s[e.name]||[]).push(e):s[e.name]=e;else if(!(0,r.isExportDeclaration)(e)||(0,r.isExportAllDeclaration)(e)){if(n){if((0,r.isFunctionDeclaration)(e)){i.push(e.id);continue}if((0,r.isFunctionExpression)(e))continue}if(o)for(let t=0;t<o.length;t++){const n=e[o[t]];n&&(Array.isArray(n)?i.push(...n):i.push(n))}}else(0,r.isDeclaration)(e.declaration)&&i.push(e.declaration)}return s}a.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]}},10156:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(79856);t.default=function(e,t){return(0,r.default)(e,t,!0)}},21141:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){"function"==typeof t&&(t={enter:t});const{enter:r,exit:i}=t;a(e,r,i,n,[])};var r=n(64194);function a(e,t,n,i,s){const o=r.VISITOR_KEYS[e.type];if(o){t&&t(e,s,i);for(const r of o){const o=e[r];if(Array.isArray(o))for(let l=0;l<o.length;l++){const p=o[l];p&&(s.push({node:e,key:r,index:l}),a(p,t,n,i,s),s.pop())}else o&&(s.push({node:e,key:r}),a(o,t,n,i,s),s.pop())}n&&n(e,s,i)}}},29535:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,a){if(!t)return;const i=r.VISITOR_KEYS[t.type];if(i){n(t,a=a||{});for(const r of i){const i=t[r];if(Array.isArray(i))for(const t of i)e(t,n,a);else e(i,n,a)}}};var r=n(64194)},39298:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r=""){if(n.has(e))return;n.add(e);const{internal:a,trace:i}=function(e,t){const{stackTraceLimit:n,prepareStackTrace:r}=Error;let a;if(Error.stackTraceLimit=4,Error.prepareStackTrace=function(e,t){a=t},(new Error).stack,Error.stackTraceLimit=n,Error.prepareStackTrace=r,!a)return{internal:!1,trace:""};const i=a.slice(2,4);return{internal:/[\\/]@babel[\\/]/.test(i[1].getFileName()),trace:i.map((e=>` at ${e}`)).join("\n")}}();a||console.warn(`${r}\`${e}\` has been deprecated, please migrate to \`${t}\`\n${i}`)};const n=new Set},50589:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))}},93269:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.value.split(/\r\n|\n|\r/);let i=0;for(let e=0;e<n.length;e++)n[e].match(/[^ \t]/)&&(i=e);let s="";for(let e=0;e<n.length;e++){const t=n[e],r=0===e,a=e===n.length-1,o=e===i;let l=t.replace(/\t/g," ");r||(l=l.replace(/^[ ]+/,"")),a||(l=l.replace(/[ ]+$/,"")),l&&(o||(l+=" "),s+=l)}s&&t.push((0,a.inherits)((0,r.stringLiteral)(s),e))};var r=n(88270),a=n(25024)},26397:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=Object.keys(t);for(const r of n)if(e[r]!==t[r])return!1;return!0}},38616:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.split(".");return e=>(0,r.default)(e,n,t)};var r=n(92984)},31922:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAccessor=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t)))},t.isAnyTypeAnnotation=function(e,t){return!!e&&"AnyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArgumentPlaceholder=function(e,t){return!!e&&"ArgumentPlaceholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayExpression=function(e,t){return!!e&&"ArrayExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayPattern=function(e,t){return!!e&&"ArrayPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayTypeAnnotation=function(e,t){return!!e&&"ArrayTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrowFunctionExpression=function(e,t){return!!e&&"ArrowFunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentExpression=function(e,t){return!!e&&"AssignmentExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentPattern=function(e,t){return!!e&&"AssignmentPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isAwaitExpression=function(e,t){return!!e&&"AwaitExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBigIntLiteral=function(e,t){return!!e&&"BigIntLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBinary=function(e,t){if(!e)return!1;switch(e.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBinaryExpression=function(e,t){return!!e&&"BinaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBindExpression=function(e,t){return!!e&&"BindExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBlock=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockParent=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockStatement=function(e,t){return!!e&&"BlockStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteral=function(e,t){return!!e&&"BooleanLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteralTypeAnnotation=function(e,t){return!!e&&"BooleanLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanTypeAnnotation=function(e,t){return!!e&&"BooleanTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBreakStatement=function(e,t){return!!e&&"BreakStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isCallExpression=function(e,t){return!!e&&"CallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isCatchClause=function(e,t){return!!e&&"CatchClause"===e.type&&(null==t||(0,r.default)(e,t))},t.isClass=function(e,t){if(!e)return!1;switch(e.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isClassAccessorProperty=function(e,t){return!!e&&"ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassBody=function(e,t){return!!e&&"ClassBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassDeclaration=function(e,t){return!!e&&"ClassDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassExpression=function(e,t){return!!e&&"ClassExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassImplements=function(e,t){return!!e&&"ClassImplements"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassMethod=function(e,t){return!!e&&"ClassMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateMethod=function(e,t){return!!e&&"ClassPrivateMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateProperty=function(e,t){return!!e&&"ClassPrivateProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassProperty=function(e,t){return!!e&&"ClassProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isCompletionStatement=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditional=function(e,t){if(!e)return!1;switch(e.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditionalExpression=function(e,t){return!!e&&"ConditionalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isContinueStatement=function(e,t){return!!e&&"ContinueStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDebuggerStatement=function(e,t){return!!e&&"DebuggerStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecimalLiteral=function(e,t){return!!e&&"DecimalLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"VariableDeclaration":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":break;case"Placeholder":if("Declaration"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isDeclareClass=function(e,t){return!!e&&"DeclareClass"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportAllDeclaration=function(e,t){return!!e&&"DeclareExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportDeclaration=function(e,t){return!!e&&"DeclareExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareFunction=function(e,t){return!!e&&"DeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareInterface=function(e,t){return!!e&&"DeclareInterface"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModule=function(e,t){return!!e&&"DeclareModule"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModuleExports=function(e,t){return!!e&&"DeclareModuleExports"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareOpaqueType=function(e,t){return!!e&&"DeclareOpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareTypeAlias=function(e,t){return!!e&&"DeclareTypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareVariable=function(e,t){return!!e&&"DeclareVariable"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaredPredicate=function(e,t){return!!e&&"DeclaredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecorator=function(e,t){return!!e&&"Decorator"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirective=function(e,t){return!!e&&"Directive"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirectiveLiteral=function(e,t){return!!e&&"DirectiveLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoExpression=function(e,t){return!!e&&"DoExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoWhileStatement=function(e,t){return!!e&&"DoWhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyStatement=function(e,t){return!!e&&"EmptyStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyTypeAnnotation=function(e,t){return!!e&&"EmptyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBody=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumBooleanBody=function(e,t){return!!e&&"EnumBooleanBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBooleanMember=function(e,t){return!!e&&"EnumBooleanMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDeclaration=function(e,t){return!!e&&"EnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDefaultedMember=function(e,t){return!!e&&"EnumDefaultedMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumMember=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumNumberBody=function(e,t){return!!e&&"EnumNumberBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumNumberMember=function(e,t){return!!e&&"EnumNumberMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringBody=function(e,t){return!!e&&"EnumStringBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringMember=function(e,t){return!!e&&"EnumStringMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumSymbolBody=function(e,t){return!!e&&"EnumSymbolBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isExistsTypeAnnotation=function(e,t){return!!e&&"ExistsTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportAllDeclaration=function(e,t){return!!e&&"ExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExportDefaultDeclaration=function(e,t){return!!e&&"ExportDefaultDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDefaultSpecifier=function(e,t){return!!e&&"ExportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamedDeclaration=function(e,t){return!!e&&"ExportNamedDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamespaceSpecifier=function(e,t){return!!e&&"ExportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportSpecifier=function(e,t){return!!e&&"ExportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpression=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ParenthesizedExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":case"ArrowFunctionExpression":case"ClassExpression":case"MetaProperty":case"Super":case"TaggedTemplateExpression":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"OptionalMemberExpression":case"OptionalCallExpression":case"TypeCastExpression":case"JSXElement":case"JSXFragment":case"BindExpression":case"DoExpression":case"RecordExpression":case"TupleExpression":case"DecimalLiteral":case"ModuleExpression":case"TopicReference":case"PipelineTopicExpression":case"PipelineBareFunction":case"PipelinePrimaryTopicReference":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExpressionStatement=function(e,t){return!!e&&"ExpressionStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpressionWrapper=function(e,t){if(!e)return!1;switch(e.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFile=function(e,t){return!!e&&"File"===e.type&&(null==t||(0,r.default)(e,t))},t.isFlow=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ClassImplements":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"DeclaredPredicate":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"FunctionTypeParam":case"GenericTypeAnnotation":case"InferredPredicate":case"InterfaceExtends":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":case"OpaqueType":case"QualifiedTypeIdentifier":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"TypeAlias":case"TypeAnnotation":case"TypeCastExpression":case"TypeParameter":case"TypeParameterDeclaration":case"TypeParameterInstantiation":case"UnionTypeAnnotation":case"Variance":case"VoidTypeAnnotation":case"EnumDeclaration":case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowBaseAnnotation=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"BooleanTypeAnnotation":case"NullLiteralTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NumberTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"VoidTypeAnnotation":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowPredicate=function(e,t){if(!e)return!1;switch(e.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowType=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"UnionTypeAnnotation":case"VoidTypeAnnotation":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFor=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isForInStatement=function(e,t){return!!e&&"ForInStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForOfStatement=function(e,t){return!!e&&"ForOfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForStatement=function(e,t){return!!e&&"ForStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForXStatement=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunction=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionDeclaration=function(e,t){return!!e&&"FunctionDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionExpression=function(e,t){return!!e&&"FunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionParent=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionTypeAnnotation=function(e,t){return!!e&&"FunctionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionTypeParam=function(e,t){return!!e&&"FunctionTypeParam"===e.type&&(null==t||(0,r.default)(e,t))},t.isGenericTypeAnnotation=function(e,t){return!!e&&"GenericTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isIdentifier=function(e,t){return!!e&&"Identifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIfStatement=function(e,t){return!!e&&"IfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isImmutable=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"BigIntLiteral":case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXOpeningElement":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isImport=function(e,t){return!!e&&"Import"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportAttribute=function(e,t){return!!e&&"ImportAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDeclaration=function(e,t){return!!e&&"ImportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDefaultSpecifier=function(e,t){return!!e&&"ImportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportNamespaceSpecifier=function(e,t){return!!e&&"ImportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportOrExportDeclaration=i,t.isImportSpecifier=function(e,t){return!!e&&"ImportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIndexedAccessType=function(e,t){return!!e&&"IndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isInferredPredicate=function(e,t){return!!e&&"InferredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceDeclaration=function(e,t){return!!e&&"InterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceExtends=function(e,t){return!!e&&"InterfaceExtends"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceTypeAnnotation=function(e,t){return!!e&&"InterfaceTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterpreterDirective=function(e,t){return!!e&&"InterpreterDirective"===e.type&&(null==t||(0,r.default)(e,t))},t.isIntersectionTypeAnnotation=function(e,t){return!!e&&"IntersectionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSX=function(e,t){if(!e)return!1;switch(e.type){case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXEmptyExpression":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXIdentifier":case"JSXMemberExpression":case"JSXNamespacedName":case"JSXOpeningElement":case"JSXSpreadAttribute":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isJSXAttribute=function(e,t){return!!e&&"JSXAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingElement=function(e,t){return!!e&&"JSXClosingElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingFragment=function(e,t){return!!e&&"JSXClosingFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXElement=function(e,t){return!!e&&"JSXElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXEmptyExpression=function(e,t){return!!e&&"JSXEmptyExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXExpressionContainer=function(e,t){return!!e&&"JSXExpressionContainer"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXFragment=function(e,t){return!!e&&"JSXFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXIdentifier=function(e,t){return!!e&&"JSXIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXMemberExpression=function(e,t){return!!e&&"JSXMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXNamespacedName=function(e,t){return!!e&&"JSXNamespacedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningElement=function(e,t){return!!e&&"JSXOpeningElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningFragment=function(e,t){return!!e&&"JSXOpeningFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadAttribute=function(e,t){return!!e&&"JSXSpreadAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadChild=function(e,t){return!!e&&"JSXSpreadChild"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXText=function(e,t){return!!e&&"JSXText"===e.type&&(null==t||(0,r.default)(e,t))},t.isLVal=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSParameterProperty":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLabeledStatement=function(e,t){return!!e&&"LabeledStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isLiteral=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLogicalExpression=function(e,t){return!!e&&"LogicalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isLoop=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMemberExpression=function(e,t){return!!e&&"MemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isMetaProperty=function(e,t){return!!e&&"MetaProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isMethod=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMiscellaneous=function(e,t){if(!e)return!1;switch(e.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMixedTypeAnnotation=function(e,t){return!!e&&"MixedTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleDeclaration=function(e,t){return(0,a.default)("isModuleDeclaration","isImportOrExportDeclaration"),i(e,t)},t.isModuleExpression=function(e,t){return!!e&&"ModuleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleSpecifier=function(e,t){if(!e)return!1;switch(e.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isNewExpression=function(e,t){return!!e&&"NewExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isNoop=function(e,t){return!!e&&"Noop"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteral=function(e,t){return!!e&&"NullLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteralTypeAnnotation=function(e,t){return!!e&&"NullLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullableTypeAnnotation=function(e,t){return!!e&&"NullableTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteral=function(e,t){return(0,a.default)("isNumberLiteral","isNumericLiteral"),!!e&&"NumberLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteralTypeAnnotation=function(e,t){return!!e&&"NumberLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberTypeAnnotation=function(e,t){return!!e&&"NumberTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumericLiteral=function(e,t){return!!e&&"NumericLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectExpression=function(e,t){return!!e&&"ObjectExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectMember=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isObjectMethod=function(e,t){return!!e&&"ObjectMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectPattern=function(e,t){return!!e&&"ObjectPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectProperty=function(e,t){return!!e&&"ObjectProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeAnnotation=function(e,t){return!!e&&"ObjectTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeCallProperty=function(e,t){return!!e&&"ObjectTypeCallProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeIndexer=function(e,t){return!!e&&"ObjectTypeIndexer"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeInternalSlot=function(e,t){return!!e&&"ObjectTypeInternalSlot"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeProperty=function(e,t){return!!e&&"ObjectTypeProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeSpreadProperty=function(e,t){return!!e&&"ObjectTypeSpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isOpaqueType=function(e,t){return!!e&&"OpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalCallExpression=function(e,t){return!!e&&"OptionalCallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalIndexedAccessType=function(e,t){return!!e&&"OptionalIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalMemberExpression=function(e,t){return!!e&&"OptionalMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isParenthesizedExpression=function(e,t){return!!e&&"ParenthesizedExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPattern=function(e,t){if(!e)return!1;switch(e.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":break;case"Placeholder":if("Pattern"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPatternLike=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPipelineBareFunction=function(e,t){return!!e&&"PipelineBareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelinePrimaryTopicReference=function(e,t){return!!e&&"PipelinePrimaryTopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelineTopicExpression=function(e,t){return!!e&&"PipelineTopicExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPlaceholder=function(e,t){return!!e&&"Placeholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isPrivate=function(e,t){if(!e)return!1;switch(e.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPrivateName=function(e,t){return!!e&&"PrivateName"===e.type&&(null==t||(0,r.default)(e,t))},t.isProgram=function(e,t){return!!e&&"Program"===e.type&&(null==t||(0,r.default)(e,t))},t.isProperty=function(e,t){if(!e)return!1;switch(e.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPureish=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"ArrowFunctionExpression":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isQualifiedTypeIdentifier=function(e,t){return!!e&&"QualifiedTypeIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isRecordExpression=function(e,t){return!!e&&"RecordExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegExpLiteral=function(e,t){return!!e&&"RegExpLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegexLiteral=function(e,t){return(0,a.default)("isRegexLiteral","isRegExpLiteral"),!!e&&"RegexLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestElement=function(e,t){return!!e&&"RestElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestProperty=function(e,t){return(0,a.default)("isRestProperty","isRestElement"),!!e&&"RestProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isReturnStatement=function(e,t){return!!e&&"ReturnStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isScopable=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ClassExpression":case"ClassDeclaration":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isSequenceExpression=function(e,t){return!!e&&"SequenceExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadElement=function(e,t){return!!e&&"SpreadElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadProperty=function(e,t){return(0,a.default)("isSpreadProperty","isSpreadElement"),!!e&&"SpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isStandardized=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"InterpreterDirective":case"Directive":case"DirectiveLiteral":case"BlockStatement":case"BreakStatement":case"CallExpression":case"CatchClause":case"ConditionalExpression":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"File":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Identifier":case"IfStatement":case"LabeledStatement":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"Program":case"ObjectExpression":case"ObjectMethod":case"ObjectProperty":case"RestElement":case"ReturnStatement":case"SequenceExpression":case"ParenthesizedExpression":case"SwitchCase":case"SwitchStatement":case"ThisExpression":case"ThrowStatement":case"TryStatement":case"UnaryExpression":case"UpdateExpression":case"VariableDeclaration":case"VariableDeclarator":case"WhileStatement":case"WithStatement":case"AssignmentPattern":case"ArrayPattern":case"ArrowFunctionExpression":case"ClassBody":case"ClassExpression":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportSpecifier":case"ForOfStatement":case"ImportDeclaration":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"MetaProperty":case"ClassMethod":case"ObjectPattern":case"SpreadElement":case"Super":case"TaggedTemplateExpression":case"TemplateElement":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"ExportNamespaceSpecifier":case"OptionalMemberExpression":case"OptionalCallExpression":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":case"StaticBlock":break;case"Placeholder":switch(e.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStatement=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ForOfStatement":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":case"TSExportAssignment":case"TSNamespaceExportDeclaration":break;case"Placeholder":switch(e.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStaticBlock=function(e,t){return!!e&&"StaticBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteral=function(e,t){return!!e&&"StringLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteralTypeAnnotation=function(e,t){return!!e&&"StringLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringTypeAnnotation=function(e,t){return!!e&&"StringTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isSuper=function(e,t){return!!e&&"Super"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchCase=function(e,t){return!!e&&"SwitchCase"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchStatement=function(e,t){return!!e&&"SwitchStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSymbolTypeAnnotation=function(e,t){return!!e&&"SymbolTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAnyKeyword=function(e,t){return!!e&&"TSAnyKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSArrayType=function(e,t){return!!e&&"TSArrayType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAsExpression=function(e,t){return!!e&&"TSAsExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBaseType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSLiteralType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSBigIntKeyword=function(e,t){return!!e&&"TSBigIntKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBooleanKeyword=function(e,t){return!!e&&"TSBooleanKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSCallSignatureDeclaration=function(e,t){return!!e&&"TSCallSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConditionalType=function(e,t){return!!e&&"TSConditionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructSignatureDeclaration=function(e,t){return!!e&&"TSConstructSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructorType=function(e,t){return!!e&&"TSConstructorType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareFunction=function(e,t){return!!e&&"TSDeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareMethod=function(e,t){return!!e&&"TSDeclareMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEntityName=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if("Identifier"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSEnumDeclaration=function(e,t){return!!e&&"TSEnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEnumMember=function(e,t){return!!e&&"TSEnumMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExportAssignment=function(e,t){return!!e&&"TSExportAssignment"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExpressionWithTypeArguments=function(e,t){return!!e&&"TSExpressionWithTypeArguments"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExternalModuleReference=function(e,t){return!!e&&"TSExternalModuleReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSFunctionType=function(e,t){return!!e&&"TSFunctionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportEqualsDeclaration=function(e,t){return!!e&&"TSImportEqualsDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportType=function(e,t){return!!e&&"TSImportType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexSignature=function(e,t){return!!e&&"TSIndexSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexedAccessType=function(e,t){return!!e&&"TSIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInferType=function(e,t){return!!e&&"TSInferType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInstantiationExpression=function(e,t){return!!e&&"TSInstantiationExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceBody=function(e,t){return!!e&&"TSInterfaceBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceDeclaration=function(e,t){return!!e&&"TSInterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntersectionType=function(e,t){return!!e&&"TSIntersectionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntrinsicKeyword=function(e,t){return!!e&&"TSIntrinsicKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSLiteralType=function(e,t){return!!e&&"TSLiteralType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMappedType=function(e,t){return!!e&&"TSMappedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMethodSignature=function(e,t){return!!e&&"TSMethodSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleBlock=function(e,t){return!!e&&"TSModuleBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleDeclaration=function(e,t){return!!e&&"TSModuleDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamedTupleMember=function(e,t){return!!e&&"TSNamedTupleMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamespaceExportDeclaration=function(e,t){return!!e&&"TSNamespaceExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNeverKeyword=function(e,t){return!!e&&"TSNeverKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNonNullExpression=function(e,t){return!!e&&"TSNonNullExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNullKeyword=function(e,t){return!!e&&"TSNullKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNumberKeyword=function(e,t){return!!e&&"TSNumberKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSObjectKeyword=function(e,t){return!!e&&"TSObjectKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSOptionalType=function(e,t){return!!e&&"TSOptionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParameterProperty=function(e,t){return!!e&&"TSParameterProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParenthesizedType=function(e,t){return!!e&&"TSParenthesizedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSPropertySignature=function(e,t){return!!e&&"TSPropertySignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSQualifiedName=function(e,t){return!!e&&"TSQualifiedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSRestType=function(e,t){return!!e&&"TSRestType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSatisfiesExpression=function(e,t){return!!e&&"TSSatisfiesExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSStringKeyword=function(e,t){return!!e&&"TSStringKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSymbolKeyword=function(e,t){return!!e&&"TSSymbolKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSThisType=function(e,t){return!!e&&"TSThisType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTupleType=function(e,t){return!!e&&"TSTupleType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSImportType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeAliasDeclaration=function(e,t){return!!e&&"TSTypeAliasDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAnnotation=function(e,t){return!!e&&"TSTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAssertion=function(e,t){return!!e&&"TSTypeAssertion"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeElement=function(e,t){if(!e)return!1;switch(e.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeLiteral=function(e,t){return!!e&&"TSTypeLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeOperator=function(e,t){return!!e&&"TSTypeOperator"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameter=function(e,t){return!!e&&"TSTypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterDeclaration=function(e,t){return!!e&&"TSTypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterInstantiation=function(e,t){return!!e&&"TSTypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypePredicate=function(e,t){return!!e&&"TSTypePredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeQuery=function(e,t){return!!e&&"TSTypeQuery"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeReference=function(e,t){return!!e&&"TSTypeReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUndefinedKeyword=function(e,t){return!!e&&"TSUndefinedKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnionType=function(e,t){return!!e&&"TSUnionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnknownKeyword=function(e,t){return!!e&&"TSUnknownKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSVoidKeyword=function(e,t){return!!e&&"TSVoidKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTaggedTemplateExpression=function(e,t){return!!e&&"TaggedTemplateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateElement=function(e,t){return!!e&&"TemplateElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateLiteral=function(e,t){return!!e&&"TemplateLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTerminatorless=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isThisExpression=function(e,t){return!!e&&"ThisExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isThisTypeAnnotation=function(e,t){return!!e&&"ThisTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isThrowStatement=function(e,t){return!!e&&"ThrowStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTopicReference=function(e,t){return!!e&&"TopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTryStatement=function(e,t){return!!e&&"TryStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleExpression=function(e,t){return!!e&&"TupleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleTypeAnnotation=function(e,t){return!!e&&"TupleTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAlias=function(e,t){return!!e&&"TypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAnnotation=function(e,t){return!!e&&"TypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeCastExpression=function(e,t){return!!e&&"TypeCastExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameter=function(e,t){return!!e&&"TypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterDeclaration=function(e,t){return!!e&&"TypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterInstantiation=function(e,t){return!!e&&"TypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeScript=function(e,t){if(!e)return!1;switch(e.type){case"TSParameterProperty":case"TSDeclareFunction":case"TSDeclareMethod":case"TSQualifiedName":case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSNamedTupleMember":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSInterfaceDeclaration":case"TSInterfaceBody":case"TSTypeAliasDeclaration":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSEnumDeclaration":case"TSEnumMember":case"TSModuleDeclaration":case"TSModuleBlock":case"TSImportType":case"TSImportEqualsDeclaration":case"TSExternalModuleReference":case"TSNonNullExpression":case"TSExportAssignment":case"TSNamespaceExportDeclaration":case"TSTypeAnnotation":case"TSTypeParameterInstantiation":case"TSTypeParameterDeclaration":case"TSTypeParameter":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTypeofTypeAnnotation=function(e,t){return!!e&&"TypeofTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryExpression=function(e,t){return!!e&&"UnaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryLike=function(e,t){if(!e)return!1;switch(e.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isUnionTypeAnnotation=function(e,t){return!!e&&"UnionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUpdateExpression=function(e,t){return!!e&&"UpdateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUserWhitespacable=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isV8IntrinsicIdentifier=function(e,t){return!!e&&"V8IntrinsicIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclaration=function(e,t){return!!e&&"VariableDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclarator=function(e,t){return!!e&&"VariableDeclarator"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariance=function(e,t){return!!e&&"Variance"===e.type&&(null==t||(0,r.default)(e,t))},t.isVoidTypeAnnotation=function(e,t){return!!e&&"VoidTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isWhile=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isWhileStatement=function(e,t){return!!e&&"WhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isWithStatement=function(e,t){return!!e&&"WithStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isYieldExpression=function(e,t){return!!e&&"YieldExpression"===e.type&&(null==t||(0,r.default)(e,t))};var r=n(26397),a=n(39298);function i(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)}},11114:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){return!!t&&((0,a.default)(t.type,e)?void 0===n||(0,r.default)(t,n):!n&&"Placeholder"===t.type&&e in s.FLIPPED_ALIAS_KEYS&&(0,i.default)(t.expectedNode,e))};var r=n(26397),a=n(59060),i=n(17986),s=n(64194)},86197:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(n&&"Identifier"===e.type&&"ObjectProperty"===t.type&&"ObjectExpression"===n.type)return!1;const a=r.default.keys[t.type];if(a)for(let n=0;n<a.length;n++){const r=t[a[n]];if(Array.isArray(r)){if(r.indexOf(e)>=0)return!0}else if(r===e)return!0}return!1};var r=n(79856)},64687:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isFunctionDeclaration)(e)||(0,r.isClassDeclaration)(e)||(0,a.default)(e)};var r=n(31922),a=n(46947)},88855:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!(0,r.default)(e.type,"Immutable")||!!(0,a.isIdentifier)(e)&&"undefined"===e.name};var r=n(59060),a=n(31922)},46947:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e)&&("var"!==e.kind||e[a.BLOCK_SCOPED_SYMBOL])};var r=n(31922),a=n(38563)},78551:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||!r.VISITOR_KEYS[e.type])};var r=n(64194)},51932:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){if("object"!=typeof t||"object"!=typeof n||null==t||null==n)return t===n;if(t.type!==n.type)return!1;const a=Object.keys(r.NODE_FIELDS[t.type]||t.type),i=r.VISITOR_KEYS[t.type];for(const r of a){const a=t[r],s=n[r];if(typeof a!=typeof s)return!1;if(null!=a||null!=s){if(null==a||null==s)return!1;if(Array.isArray(a)){if(!Array.isArray(s))return!1;if(a.length!==s.length)return!1;for(let t=0;t<a.length;t++)if(!e(a[t],s[t]))return!1}else if("object"!=typeof a||null!=i&&i.includes(r)){if(!e(a,s))return!1}else for(const e of Object.keys(a))if(a[e]!==s[e])return!1}}return!0};var r=n(64194)},17986:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;const n=r.PLACEHOLDERS_ALIAS[e];if(n)for(const e of n)if(t===e)return!0;return!1};var r=n(64194)},83989:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:!n||"ObjectPattern"!==n.type;case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==n||!n.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}},42074:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(!(0,r.isBlockStatement)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))&&(!(!(0,r.isPattern)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))||(0,r.isScopable)(e))};var r=n(31922)},59400:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isImportDefaultSpecifier)(e)||(0,r.isIdentifier)(e.imported||e.exported,{name:"default"})};var r=n(31922)},59060:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;if(null==e)return!1;if(r.ALIAS_KEYS[t])return!1;const n=r.FLIPPED_ALIAS_KEYS[t];if(n){if(n[0]===e)return!0;for(const t of n)if(e===t)return!0}return!1};var r=n(64194)},81909:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)&&!a.has(e)};var r=n(59876);const a=new Set(["abstract","boolean","byte","char","double","enum","final","float","goto","implements","int","interface","long","native","package","private","protected","public","short","static","synchronized","throws","transient","volatile"])},59876:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0){return"string"==typeof e&&((!t||!(0,r.isKeyword)(e)&&!(0,r.isStrictReservedWord)(e,!0))&&(0,r.isIdentifierName)(e))};var r=n(29649)},74077:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e,{kind:"var"})&&!e[a.BLOCK_SCOPED_SYMBOL]};var r=n(31922),a=n(38563)},92984:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!(0,r.isMemberExpression)(e))return!1;const a=Array.isArray(t)?t:t.split("."),i=[];let s;for(s=e;(0,r.isMemberExpression)(s);s=s.object)i.push(s.property);if(i.push(s),i.length<a.length)return!1;if(!n&&i.length>a.length)return!1;for(let e=0,t=i.length-1;e<a.length;e++,t--){const n=i[t];let s;if((0,r.isIdentifier)(n))s=n.name;else if((0,r.isStringLiteral)(n))s=n.value;else{if(!(0,r.isThisExpression)(n))return!1;s="this"}if(a[e]!==s)return!1}return!0};var r=n(31922)},72926:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!e&&/^[a-z]/.test(e)}},59036:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=(0,n(38616).default)("React.Component");t.default=r},5970:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!e)return;const s=r.NODE_FIELDS[e.type];if(!s)return;a(e,t,n,s[t]),i(e,t,n)},t.validateChild=i,t.validateField=a;var r=n(64194);function a(e,t,n,r){null!=r&&r.validate&&(r.optional&&null==n||r.validate(e,t,n))}function i(e,t,n){if(null==n)return;const a=r.NODE_PARENT_VALIDATIONS[n.type];a&&a(e,t,n)}},37648:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.readCodePoint=p,t.readInt=l,t.readStringContents=function(e,t,n,r,a,o){const l=n,p=r,c=a;let u="",d=null,f=n;const{length:y}=t;for(;;){if(n>=y){o.unterminated(l,p,c),u+=t.slice(f,n);break}const m=t.charCodeAt(n);if(i(e,m,t,n)){u+=t.slice(f,n);break}if(92===m){u+=t.slice(f,n);const i=s(t,n,r,a,"template"===e,o);null!==i.ch||d?u+=i.ch:d={pos:n,lineStart:r,curLine:a},({pos:n,lineStart:r,curLine:a}=i),f=n}else 8232===m||8233===m?(++a,r=++n):10===m||13===m?"template"===e?(u+=t.slice(f,n)+"\n",++n,13===m&&10===t.charCodeAt(n)&&++n,++a,f=r=n):o.unterminated(l,p,c):++n}return{pos:n,str:u,firstInvalidLoc:d,lineStart:r,curLine:a,containsInvalid:!!d}};var n=function(e){return e>=48&&e<=57};const r={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},a={bin:e=>48===e||49===e,oct:e=>e>=48&&e<=55,dec:e=>e>=48&&e<=57,hex:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102};function i(e,t,n,r){return"template"===e?96===t||36===t&&123===n.charCodeAt(r+1):t===("double"===e?34:39)}function s(e,t,n,r,a,i){const s=!a;t++;const l=e=>({pos:t,ch:e,lineStart:n,curLine:r}),c=e.charCodeAt(t++);switch(c){case 110:return l("\n");case 114:return l("\r");case 120:{let a;return({code:a,pos:t}=o(e,t,n,r,2,!1,s,i)),l(null===a?null:String.fromCharCode(a))}case 117:{let a;return({code:a,pos:t}=p(e,t,n,r,s,i)),l(null===a?null:String.fromCodePoint(a))}case 116:return l("\t");case 98:return l("\b");case 118:return l("\v");case 102:return l("\f");case 13:10===e.charCodeAt(t)&&++t;case 10:n=t,++r;case 8232:case 8233:return l("");case 56:case 57:if(a)return l(null);i.strictNumericEscape(t-1,n,r);default:if(c>=48&&c<=55){const s=t-1;let o=e.slice(s,t+2).match(/^[0-7]+/)[0],p=parseInt(o,8);p>255&&(o=o.slice(0,-1),p=parseInt(o,8)),t+=o.length-1;const c=e.charCodeAt(t);if("0"!==o||56===c||57===c){if(a)return l(null);i.strictNumericEscape(s,n,r)}return l(String.fromCharCode(p))}return l(String.fromCharCode(c))}}function o(e,t,n,r,a,i,s,o){const p=t;let c;return({n:c,pos:t}=l(e,t,n,r,16,a,i,!1,o,!s)),null===c&&(s?o.invalidEscapeSequence(p,n,r):t=p-1),{code:c,pos:t}}function l(e,t,i,s,o,l,p,c,u,d){const f=t,y=16===o?r.hex:r.decBinOct,m=16===o?a.hex:10===o?a.dec:8===o?a.oct:a.bin;let h=!1,T=0;for(let r=0,a=null==l?1/0:l;r<a;++r){const r=e.charCodeAt(t);let a;if(95!==r||"bail"===c){if(a=r>=97?r-97+10:r>=65?r-65+10:n(r)?r-48:1/0,a>=o){if(a<=9&&d)return{n:null,pos:t};if(a<=9&&u.invalidDigit(t,i,s,o))a=0;else{if(!p)break;a=0,h=!0}}++t,T=T*o+a}else{const n=e.charCodeAt(t-1),r=e.charCodeAt(t+1);if(c){if(Number.isNaN(r)||!m(r)||y.has(n)||y.has(r)){if(d)return{n:null,pos:t};u.unexpectedNumericSeparator(t,i,s)}}else{if(d)return{n:null,pos:t};u.numericSeparatorInEscapeSequence(t,i,s)}++t}}return t===f||null!=l&&t-f!==l||h?{n:null,pos:t}:{n:T,pos:t}}function p(e,t,n,r,a,i){let s;if(123===e.charCodeAt(t)){if(++t,({code:s,pos:t}=o(e,t,n,r,e.indexOf("}",t)-t,!0,a,i)),++t,null!==s&&s>1114111){if(!a)return{code:null,pos:t};i.invalidCodePoint(t,n,r)}}else({code:s,pos:t}=o(e,t,n,r,4,!1,a,i));return{code:s,pos:t}}},27749:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isIdentifierChar=c,t.isIdentifierName=function(e){let t=!0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(55296==(64512&r)&&n+1<e.length){const t=e.charCodeAt(++n);56320==(64512&t)&&(r=65536+((1023&r)<<10)+(1023&t))}if(t){if(t=!1,!p(r))return!1}else if(!c(r))return!1}return!t},t.isIdentifierStart=p;let n="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",r="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_";const a=new RegExp("["+n+"]"),i=new RegExp("["+n+r+"]");n=r=null;const s=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,3104,541,1507,4938,6,4191],o=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239];function l(e,t){let n=65536;for(let r=0,a=t.length;r<a;r+=2){if(n+=t[r],n>e)return!1;if(n+=t[r+1],n>=e)return!0}return!1}function p(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&a.test(String.fromCharCode(e)):l(e,s)))}function c(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&i.test(String.fromCharCode(e)):l(e,s)||l(e,o))))}},29649:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isIdentifierChar",{enumerable:!0,get:function(){return r.isIdentifierChar}}),Object.defineProperty(t,"isIdentifierName",{enumerable:!0,get:function(){return r.isIdentifierName}}),Object.defineProperty(t,"isIdentifierStart",{enumerable:!0,get:function(){return r.isIdentifierStart}}),Object.defineProperty(t,"isKeyword",{enumerable:!0,get:function(){return a.isKeyword}}),Object.defineProperty(t,"isReservedWord",{enumerable:!0,get:function(){return a.isReservedWord}}),Object.defineProperty(t,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return a.isStrictBindOnlyReservedWord}}),Object.defineProperty(t,"isStrictBindReservedWord",{enumerable:!0,get:function(){return a.isStrictBindReservedWord}}),Object.defineProperty(t,"isStrictReservedWord",{enumerable:!0,get:function(){return a.isStrictReservedWord}});var r=n(27749),a=n(25562)},25562:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isKeyword=function(e){return n.has(e)},t.isReservedWord=i,t.isStrictBindOnlyReservedWord=o,t.isStrictBindReservedWord=function(e,t){return s(e,t)||o(e)},t.isStrictReservedWord=s;const n=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"]),r=new Set(["implements","interface","let","package","private","protected","public","static","yield"]),a=new Set(["eval","arguments"]);function i(e,t){return t&&"await"===e||"enum"===e}function s(e,t){return i(e,t)||r.has(e)}function o(e){return a.has(e)}},8530:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t={}){return""!==e&&d(t)?function(e,t){let n="";for(const{type:r,value:a}of c(t)){const t=e[r];n+=t?a.split(l).map((e=>t(e))).join("\n"):a}return n}({keyword:(n=f(t.forceColor)).cyan,capitalized:n.yellow,jsxIdentifier:n.yellow,punctuator:n.yellow,number:n.magenta,string:n.green,regex:n.magenta,comment:n.grey,invalid:n.white.bgRed.bold},e):e;var n},t.shouldHighlight=d;var r=n(66188),a=n(29649),i=function(e,t){if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=s(true);if(n&&n.has(e))return n.get(e);var r={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var o=a?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}return r.default=e,n&&n.set(e,r),r}(n(32589));function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(s=function(e){return e?n:t})(e)}const o=new Set(["as","async","from","get","of","set"]),l=/\r\n|[\n\r\u2028\u2029]/,p=/^[()[\]{}]$/;let c,u;{const e=/^[a-z][\w-]*$/i,t=function(t,n,r){if("name"===t.type){if((0,a.isKeyword)(t.value)||(0,a.isStrictReservedWord)(t.value,!0)||o.has(t.value))return"keyword";if(e.test(t.value)&&("<"===r[n-1]||"</"==r.slice(n-2,n)))return"jsxIdentifier";if(t.value[0]!==t.value[0].toLowerCase())return"capitalized"}return"punctuator"===t.type&&p.test(t.value)?"bracket":"invalid"!==t.type||"@"!==t.value&&"#"!==t.value?t.type:"punctuator"};c=function*(e){let n;for(;n=r.default.exec(e);){const a=r.matchToToken(n);yield{type:t(a,n.index,e),value:a.value}}}}function d(e){return i.default.level>0||e.forceColor}function f(e){return e?(null!=u||(u=new i.default.constructor({enabled:!0,level:1})),u):i.default}t.getChalk=e=>f(e.forceColor)},40097:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){const l=new WeakMap,p=new WeakMap,c=n||(0,r.validate)(null);return Object.assign(((n,...s)=>{if("string"==typeof n){if(s.length>1)throw new Error("Unexpected extra params.");return o((0,a.default)(t,n,(0,r.merge)(c,(0,r.validate)(s[0]))))}if(Array.isArray(n)){let e=l.get(n);return e||(e=(0,i.default)(t,n,c),l.set(n,e)),o(e(s))}if("object"==typeof n&&n){if(s.length>0)throw new Error("Unexpected extra params.");return e(t,(0,r.merge)(c,(0,r.validate)(n)))}throw new Error("Unexpected template param "+typeof n)}),{ast:(e,...n)=>{if("string"==typeof e){if(n.length>1)throw new Error("Unexpected extra params.");return(0,a.default)(t,e,(0,r.merge)((0,r.merge)(c,(0,r.validate)(n[0])),s))()}if(Array.isArray(e)){let a=p.get(e);return a||(a=(0,i.default)(t,e,(0,r.merge)(c,s)),p.set(e,a)),a(n)()}throw new Error("Unexpected template param "+typeof e)}})};var r=n(32655),a=n(25650),i=n(82579);const s=(0,r.validate)({placeholderPattern:!1});function o(e){let t="";try{throw new Error}catch(e){e.stack&&(t=e.stack.split("\n").slice(3).join("\n"))}return n=>{try{return e(n)}catch(e){throw e.stack+=`\n =============\n${t}`,e}}}},6586:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.statements=t.statement=t.smart=t.program=t.expression=void 0;var r=n(11183);const{assertExpressionStatement:a}=r;function i(e){return{code:e=>`/* @babel/template */;\n${e}`,validate:()=>{},unwrap:t=>e(t.program.body.slice(1))}}const s=i((e=>e.length>1?e:e[0]));t.smart=s;const o=i((e=>e));t.statements=o;const l=i((e=>{if(0===e.length)throw new Error("Found nothing to return.");if(e.length>1)throw new Error("Found multiple statements but wanted one");return e[0]}));t.statement=l;const p={code:e=>`(\n${e}\n)`,validate:e=>{if(e.program.body.length>1)throw new Error("Found multiple statements but wanted one");if(0===p.unwrap(e).start)throw new Error("Parse result included parens.")},unwrap:({program:e})=>{const[t]=e.body;return a(t),t.expression}};t.expression=p,t.program={code:e=>e,validate:()=>{},unwrap:e=>e.program}},76849:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.statements=t.statement=t.smart=t.program=t.expression=t.default=void 0;var r=n(6586),a=n(40097);const i=(0,a.default)(r.smart);t.smart=i;const s=(0,a.default)(r.statement);t.statement=s;const o=(0,a.default)(r.statements);t.statements=o;const l=(0,a.default)(r.expression);t.expression=l;const p=(0,a.default)(r.program);t.program=p;var c=Object.assign(i.bind(void 0),{smart:i,statement:s,statements:o,expression:l,program:p,ast:i.ast});t.default=c},82579:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){const{metadata:s,names:o}=function(e,t,n){let r="BABEL_TPL$";const i=t.join("");do{r="$$"+r}while(i.includes(r));const{names:s,code:o}=function(e,t){const n=[];let r=e[0];for(let a=1;a<e.length;a++){const i=`${t}${a-1}`;n.push(i),r+=i+e[a]}return{names:n,code:r}}(t,r);return{metadata:(0,a.default)(e,e.code(o),{parser:n.parser,placeholderWhitelist:new Set(s.concat(n.placeholderWhitelist?Array.from(n.placeholderWhitelist):[])),placeholderPattern:n.placeholderPattern,preserveComments:n.preserveComments,syntacticPlaceholders:n.syntacticPlaceholders}),names:s}}(e,t,n);return t=>{const n={};return t.forEach(((e,t)=>{n[o[t]]=e})),t=>{const a=(0,r.normalizeReplacements)(t);return a&&Object.keys(a).forEach((e=>{if(Object.prototype.hasOwnProperty.call(n,e))throw new Error("Unexpected replacement overlap.")})),e.unwrap((0,i.default)(s,a?Object.assign(a,n):n))}}};var r=n(32655),a=n(56382),i=n(58112)},32655:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.merge=function(e,t){const{placeholderWhitelist:n=e.placeholderWhitelist,placeholderPattern:r=e.placeholderPattern,preserveComments:a=e.preserveComments,syntacticPlaceholders:i=e.syntacticPlaceholders}=t;return{parser:Object.assign({},e.parser,t.parser),placeholderWhitelist:n,placeholderPattern:r,preserveComments:a,syntacticPlaceholders:i}},t.normalizeReplacements=function(e){if(Array.isArray(e))return e.reduce(((e,t,n)=>(e["$"+n]=t,e)),{});if("object"==typeof e||null==e)return e||void 0;throw new Error("Template replacements must be an array, object, null, or undefined")},t.validate=function(e){if(null!=e&&"object"!=typeof e)throw new Error("Unknown template options.");const t=e||{},{placeholderWhitelist:r,placeholderPattern:a,preserveComments:i,syntacticPlaceholders:s}=t,o=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(t,n);if(null!=r&&!(r instanceof Set))throw new Error("'.placeholderWhitelist' must be a Set, null, or undefined");if(null!=a&&!(a instanceof RegExp)&&!1!==a)throw new Error("'.placeholderPattern' must be a RegExp, false, null, or undefined");if(null!=i&&"boolean"!=typeof i)throw new Error("'.preserveComments' must be a boolean, null, or undefined");if(null!=s&&"boolean"!=typeof s)throw new Error("'.syntacticPlaceholders' must be a boolean, null, or undefined");if(!0===s&&(null!=r||null!=a))throw new Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'");return{parser:o,placeholderWhitelist:r||void 0,placeholderPattern:null==a?void 0:a,preserveComments:null==i?void 0:i,syntacticPlaceholders:null==s?void 0:s}};const n=["placeholderWhitelist","placeholderPattern","preserveComments","syntacticPlaceholders"]},56382:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){const{placeholderWhitelist:r,placeholderPattern:s,preserveComments:o,syntacticPlaceholders:l}=n,p=function(e,t,n){const r=(t.plugins||[]).slice();!1!==n&&r.push("placeholders"),t=Object.assign({allowReturnOutsideFunction:!0,allowSuperOutsideMethod:!0,sourceType:"module"},t,{plugins:r});try{return(0,a.parse)(e,t)}catch(t){const n=t.loc;throw n&&(t.message+="\n"+(0,i.codeFrameColumns)(e,{start:n}),t.code="BABEL_TEMPLATE_PARSE_ERROR"),t}}(t,n.parser,l);m(p,{preserveComments:o}),e.validate(p);const c={syntactic:{placeholders:[],placeholderNames:new Set},legacy:{placeholders:[],placeholderNames:new Set},placeholderWhitelist:r,placeholderPattern:s,syntacticPlaceholders:l};return h(p,S,c),Object.assign({ast:p},c.syntactic.placeholders.length?c.syntactic:c.legacy)};var r=n(11183),a=n(74002),i=n(4704);const{isCallExpression:s,isExpressionStatement:o,isFunction:l,isIdentifier:p,isJSXIdentifier:c,isNewExpression:u,isPlaceholder:d,isStatement:f,isStringLiteral:y,removePropertiesDeep:m,traverse:h}=r,T=/^[_$A-Z0-9]+$/;function S(e,t,n){var r;let a,i=n.syntactic.placeholders.length>0;if(d(e)){if(!1===n.syntacticPlaceholders)throw new Error("%%foo%%-style placeholders can't be used when '.syntacticPlaceholders' is false.");a=e.name.name,i=!0}else{if(i||n.syntacticPlaceholders)return;if(p(e)||c(e))a=e.name;else{if(!y(e))return;a=e.value}}if(i&&(null!=n.placeholderPattern||null!=n.placeholderWhitelist))throw new Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'");if(!(i||!1!==n.placeholderPattern&&(n.placeholderPattern||T).test(a)||null!=(r=n.placeholderWhitelist)&&r.has(a)))return;t=t.slice();const{node:m,key:h}=t[t.length-1];let S;y(e)||d(e,{expectedNode:"StringLiteral"})?S="string":u(m)&&"arguments"===h||s(m)&&"arguments"===h||l(m)&&"params"===h?S="param":o(m)&&!d(e)?(S="statement",t=t.slice(0,-1)):S=f(e)&&d(e)?"statement":"other";const{placeholders:b,placeholderNames:E}=i?n.syntactic:n.legacy;b.push({name:a,type:S,resolve:e=>function(e,t){let n=e;for(let e=0;e<t.length-1;e++){const{key:r,index:a}=t[e];n=void 0===a?n[r]:n[r][a]}const{key:r,index:a}=t[t.length-1];return{parent:n,key:r,index:a}}(e,t),isDuplicate:E.has(a)}),E.add(a)}},58112:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=i(e.ast);return t&&(e.placeholders.forEach((e=>{if(!Object.prototype.hasOwnProperty.call(t,e.name)){const t=e.name;throw new Error(`Error: No substitution given for "${t}". If this is not meant to be a\n placeholder you may want to consider passing one of the following options to @babel/template:\n - { placeholderPattern: false, placeholderWhitelist: new Set(['${t}'])}\n - { placeholderPattern: /^${t}$/ }`)}})),Object.keys(t).forEach((t=>{if(!e.placeholderNames.has(t))throw new Error(`Unknown substitution "${t}" given`)}))),e.placeholders.slice().reverse().forEach((e=>{try{!function(e,t,n){e.isDuplicate&&(Array.isArray(n)?n=n.map((e=>i(e))):"object"==typeof n&&(n=i(n)));const{parent:r,key:f,index:y}=e.resolve(t);if("string"===e.type){if("string"==typeof n&&(n=u(n)),!n||!c(n))throw new Error("Expected string substitution")}else if("statement"===e.type)void 0===y?n?Array.isArray(n)?n=a(n):"string"==typeof n?n=o(l(n)):p(n)||(n=o(n)):n=s():n&&!Array.isArray(n)&&("string"==typeof n&&(n=l(n)),p(n)||(n=o(n)));else if("param"===e.type){if("string"==typeof n&&(n=l(n)),void 0===y)throw new Error("Assertion failure.")}else if("string"==typeof n&&(n=l(n)),Array.isArray(n))throw new Error("Cannot replace single expression with an array.");if(void 0===y)d(r,f,n),r[f]=n;else{const t=r[f].slice();"statement"===e.type||"param"===e.type?null==n?t.splice(y,1):Array.isArray(n)?t.splice(y,1,...n):t[y]=n:t[y]=n,d(r,f,t),r[f]=t}}(e,n,t&&t[e.name]||null)}catch(t){throw t.message=`@babel/template placeholder "${e.name}": ${t.message}`,t}})),n};var r=n(11183);const{blockStatement:a,cloneNode:i,emptyStatement:s,expressionStatement:o,identifier:l,isStatement:p,isStringLiteral:c,stringLiteral:u,validate:d}=r},25650:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){let s;return t=e.code(t),o=>{const l=(0,r.normalizeReplacements)(o);return s||(s=(0,a.default)(e,t,n)),e.unwrap((0,i.default)(s,l))}};var r=n(32655),a=n(56382),i=n(58112)},74002:(e,t)=>{"use strict";function n(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}class r{constructor(e,t,n){this.line=void 0,this.column=void 0,this.index=void 0,this.line=e,this.column=t,this.index=n}}class a{constructor(e,t){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=e,this.end=t}}function i(e,t){const{line:n,column:a,index:i}=e;return new r(n,a+t,i+t)}const s="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED";var o={ImportMetaOutsideModule:{message:"import.meta may appear only with 'sourceType: \"module\"'",code:s},ImportOutsideModule:{message:"'import' and 'export' may appear only with 'sourceType: \"module\"'",code:s}};const l={ArrayPattern:"array destructuring pattern",AssignmentExpression:"assignment expression",AssignmentPattern:"assignment expression",ArrowFunctionExpression:"arrow function expression",ConditionalExpression:"conditional expression",CatchClause:"catch clause",ForOfStatement:"for-of statement",ForInStatement:"for-in statement",ForStatement:"for-loop",FormalParameters:"function parameter list",Identifier:"identifier",ImportSpecifier:"import specifier",ImportDefaultSpecifier:"import default specifier",ImportNamespaceSpecifier:"import namespace specifier",ObjectPattern:"object destructuring pattern",ParenthesizedExpression:"parenthesized expression",RestElement:"rest element",UpdateExpression:{true:"prefix operation",false:"postfix operation"},VariableDeclarator:"variable declaration",YieldExpression:"yield expression"},p=({type:e,prefix:t})=>"UpdateExpression"===e?l.UpdateExpression[String(t)]:l[e];var c={AccessorIsGenerator:({kind:e})=>`A ${e}ter cannot be a generator.`,ArgumentsInClass:"'arguments' is only allowed in functions and class methods.",AsyncFunctionInSingleStatementContext:"Async functions can only be declared at the top level or inside a block.",AwaitBindingIdentifier:"Can not use 'await' as identifier inside an async function.",AwaitBindingIdentifierInStaticBlock:"Can not use 'await' as identifier inside a static block.",AwaitExpressionFormalParameter:"'await' is not allowed in async function parameters.",AwaitUsingNotInAsyncContext:"'await using' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncContext:"'await' is only allowed within async functions and at the top levels of modules.",AwaitNotInAsyncFunction:"'await' is only allowed within async functions.",BadGetterArity:"A 'get' accessor must not have any formal parameters.",BadSetterArity:"A 'set' accessor must have exactly one formal parameter.",BadSetterRestParameter:"A 'set' accessor function argument must not be a rest parameter.",ConstructorClassField:"Classes may not have a field named 'constructor'.",ConstructorClassPrivateField:"Classes may not have a private field named '#constructor'.",ConstructorIsAccessor:"Class constructor may not be an accessor.",ConstructorIsAsync:"Constructor can't be an async function.",ConstructorIsGenerator:"Constructor can't be a generator.",DeclarationMissingInitializer:({kind:e})=>`Missing initializer in ${e} declaration.`,DecoratorArgumentsOutsideParentheses:"Decorator arguments must be moved inside parentheses: use '@(decorator(args))' instead of '@(decorator)(args)'.",DecoratorBeforeExport:"Decorators must be placed *before* the 'export' keyword. Remove the 'decoratorsBeforeExport: true' option to use the 'export @decorator class {}' syntax.",DecoratorsBeforeAfterExport:"Decorators can be placed *either* before or after the 'export' keyword, but not in both locations at the same time.",DecoratorConstructor:"Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?",DecoratorExportClass:"Decorators must be placed *after* the 'export' keyword. Remove the 'decoratorsBeforeExport: false' option to use the '@decorator export class {}' syntax.",DecoratorSemicolon:"Decorators must not be followed by a semicolon.",DecoratorStaticBlock:"Decorators can't be used with a static block.",DeletePrivateField:"Deleting a private field is not allowed.",DestructureNamedImport:"ES2015 named imports do not destructure. Use another statement for destructuring after the import.",DuplicateConstructor:"Duplicate constructor in the same class.",DuplicateDefaultExport:"Only one default export allowed per module.",DuplicateExport:({exportName:e})=>`\`${e}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:e,exportName:t})=>`A string literal cannot be used as an exported binding without \`from\`.\n- Did you mean \`export { '${e}' as '${t}' } from 'some-module'\`?`,ExportDefaultFromAsIdentifier:"'from' is not allowed as an identifier after 'export default'.",ForInOfLoopInitializer:({type:e})=>`'${"ForInStatement"===e?"for-in":"for-of"}' loop variable declaration may not have an initializer.`,ForInUsing:"For-in loop may not start with 'using' declaration.",ForOfAsync:"The left-hand side of a for-of loop may not be 'async'.",ForOfLet:"The left-hand side of a for-of loop may not start with 'let'.",GeneratorInSingleStatementContext:"Generators can only be declared at the top level or inside a block.",IllegalBreakContinue:({type:e})=>`Unsyntactic ${"BreakStatement"===e?"break":"continue"}.`,IllegalLanguageModeDirective:"Illegal 'use strict' directive in function with non-simple parameter list.",IllegalReturn:"'return' outside of function.",ImportAttributesUseAssert:"The `assert` keyword in import attributes is deprecated and it has been replaced by the `with` keyword. You can enable the `deprecatedAssertSyntax: true` option in the import attributes plugin to suppress this error.",ImportBindingIsString:({importName:e})=>`A string literal cannot be used as an imported binding.\n- Did you mean \`import { "${e}" as foo }\`?`,ImportCallArgumentTrailingComma:"Trailing comma is disallowed inside import(...) arguments.",ImportCallArity:({maxArgumentCount:e})=>`\`import()\` requires exactly ${1===e?"one argument":"one or two arguments"}.`,ImportCallNotNewExpression:"Cannot use new with import(...).",ImportCallSpreadArgument:"`...` is not allowed in `import()`.",ImportJSONBindingNotDefault:"A JSON module can only be imported with `default`.",ImportReflectionHasAssertion:"`import module x` cannot have assertions.",ImportReflectionNotBinding:'Only `import module x from "./module"` is valid.',IncompatibleRegExpUVFlags:"The 'u' and 'v' regular expression flags cannot be enabled at the same time.",InvalidBigIntLiteral:"Invalid BigIntLiteral.",InvalidCodePoint:"Code point out of bounds.",InvalidCoverInitializedName:"Invalid shorthand property initializer.",InvalidDecimal:"Invalid decimal.",InvalidDigit:({radix:e})=>`Expected number in radix ${e}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:e})=>`Escape sequence in keyword ${e}.`,InvalidIdentifier:({identifierName:e})=>`Invalid identifier ${e}.`,InvalidLhs:({ancestor:e})=>`Invalid left-hand side in ${p(e)}.`,InvalidLhsBinding:({ancestor:e})=>`Binding invalid left-hand side in ${p(e)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:e})=>`Unexpected character '${e}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:e})=>`Private name #${e} is not defined.`,InvalidPropertyBindingPattern:"Binding member expression.",InvalidRecordProperty:"Only properties and spread elements are allowed in record definitions.",InvalidRestAssignmentPattern:"Invalid rest operator's argument.",LabelRedeclaration:({labelName:e})=>`Label '${e}' is already declared.`,LetInLexicalBinding:"'let' is disallowed as a lexically bound name.",LineTerminatorBeforeArrow:"No line break is allowed before '=>'.",MalformedRegExpFlags:"Invalid regular expression flag.",MissingClassName:"A class name is required.",MissingEqInAssignment:"Only '=' operator can be used for specifying default value.",MissingSemicolon:"Missing semicolon.",MissingPlugin:({missingPlugin:e})=>`This experimental syntax requires enabling the parser plugin: ${e.map((e=>JSON.stringify(e))).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:e})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${e.map((e=>JSON.stringify(e))).join(", ")}.`,MissingUnicodeEscape:"Expecting Unicode escape sequence \\uXXXX.",MixingCoalesceWithLogical:"Nullish coalescing operator(??) requires parens when mixing with logical operators.",ModuleAttributeDifferentFromType:"The only accepted module attribute is `type`.",ModuleAttributeInvalidValue:"Only string literals are allowed as module attribute values.",ModuleAttributesWithDuplicateKeys:({key:e})=>`Duplicate key "${e}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:e})=>`An export name cannot include a lone surrogate, found '\\u${e.toString(16)}'.`,ModuleExportUndefined:({localName:e})=>`Export '${e}' is not defined.`,MultipleDefaultsInSwitch:"Multiple default clauses.",NewlineAfterThrow:"Illegal newline after throw.",NoCatchOrFinally:"Missing catch or finally clause.",NumberIdentifier:"Identifier directly after number.",NumericSeparatorInEscapeSequence:"Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.",ObsoleteAwaitStar:"'await*' has been removed from the async functions proposal. Use Promise.all() instead.",OptionalChainingNoNew:"Constructors in/after an Optional Chain are not allowed.",OptionalChainingNoTemplate:"Tagged Template Literals are not allowed in optionalChain.",OverrideOnConstructor:"'override' modifier cannot appear on a constructor declaration.",ParamDupe:"Argument name clash.",PatternHasAccessor:"Object pattern can't contain getter or setter.",PatternHasMethod:"Object pattern can't contain methods.",PrivateInExpectedIn:({identifierName:e})=>`Private names are only allowed in property accesses (\`obj.#${e}\`) or in \`in\` expressions (\`#${e} in obj\`).`,PrivateNameRedeclaration:({identifierName:e})=>`Duplicate private name #${e}.`,RecordExpressionBarIncorrectEndSyntaxType:"Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionBarIncorrectStartSyntaxType:"Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",RecordExpressionHashIncorrectStartSyntaxType:"Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",RecordNoProto:"'__proto__' is not allowed in Record expressions.",RestTrailingComma:"Unexpected trailing comma after rest element.",SloppyFunction:"In non-strict mode code, functions can only be declared at top level or inside a block.",SloppyFunctionAnnexB:"In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.",StaticPrototype:"Classes may not have static property named prototype.",SuperNotAllowed:"`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?",SuperPrivateField:"Private fields can't be accessed on super.",TrailingDecorator:"Decorators must be attached to a class element.",TupleExpressionBarIncorrectEndSyntaxType:"Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionBarIncorrectStartSyntaxType:"Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.",TupleExpressionHashIncorrectStartSyntaxType:"Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.",UnexpectedArgumentPlaceholder:"Unexpected argument placeholder.",UnexpectedAwaitAfterPipelineBody:'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.',UnexpectedDigitAfterHash:"Unexpected digit after hash token.",UnexpectedImportExport:"'import' and 'export' may only appear at the top level.",UnexpectedKeyword:({keyword:e})=>`Unexpected keyword '${e}'.`,UnexpectedLeadingDecorator:"Leading decorators must be attached to a class declaration.",UnexpectedLexicalDeclaration:"Lexical declaration cannot appear in a single-statement context.",UnexpectedNewTarget:"`new.target` can only be used in functions or class properties.",UnexpectedNumericSeparator:"A numeric separator is only allowed between two digits.",UnexpectedPrivateField:"Unexpected private name.",UnexpectedReservedWord:({reservedWord:e})=>`Unexpected reserved word '${e}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:e,unexpected:t})=>`Unexpected token${t?` '${t}'.`:""}${e?`, expected "${e}"`:""}`,UnexpectedTokenUnaryExponentiation:"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.",UnexpectedUsingDeclaration:"Using declaration cannot appear in the top level when source type is `script`.",UnsupportedBind:"Binding should be performed on object property.",UnsupportedDecoratorExport:"A decorated export must export a class declaration.",UnsupportedDefaultExport:"Only expressions, functions or classes are allowed as the `default` export.",UnsupportedImport:"`import` can only be used in `import()` or `import.meta`.",UnsupportedMetaProperty:({target:e,onlyValidPropertyName:t})=>`The only valid meta property for ${e} is ${e}.${t}.`,UnsupportedParameterDecorator:"Decorators cannot be used to decorate parameters.",UnsupportedPropertyDecorator:"Decorators cannot be used to decorate object literal properties.",UnsupportedSuper:"'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).",UnterminatedComment:"Unterminated comment.",UnterminatedRegExp:"Unterminated regular expression.",UnterminatedString:"Unterminated string constant.",UnterminatedTemplate:"Unterminated template.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:e})=>`Identifier '${e}' has already been declared.`,YieldBindingIdentifier:"Can not use 'yield' as identifier inside a generator.",YieldInParameter:"Yield expression is not allowed in formal parameters.",ZeroDigitNumericSeparator:"Numeric separator can not be used after leading 0."};const u=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]);var d={PipeBodyIsTighter:"Unexpected yield after pipeline body; any yield expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.",PipeTopicRequiresHackPipes:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.',PipeTopicUnbound:"Topic reference is unbound; it must be inside a pipe body.",PipeTopicUnconfiguredToken:({token:e})=>`Invalid topic token ${e}. In order to use ${e} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${e}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:e})=>`Hack-style pipe body cannot be an unparenthesized ${p({type:e})}; please wrap it in parentheses.`,PipelineBodyNoArrow:'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.',PipelineBodySequenceExpression:"Pipeline body may not be a comma-separated sequence expression.",PipelineHeadSequenceExpression:"Pipeline head should not be a comma-separated sequence expression.",PipelineTopicUnused:"Pipeline is in topic style but does not use topic reference.",PrimaryTopicNotAllowed:"Topic reference was used in a lexical context without topic binding.",PrimaryTopicRequiresSmartPipeline:'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.'};const f=["toMessage"],y=["message"];function m(e,t,n){Object.defineProperty(e,t,{enumerable:!1,configurable:!0,value:n})}function h(e){let{toMessage:t}=e,a=n(e,f);return function e({loc:n,details:i}){const s=new SyntaxError;return Object.assign(s,a,{loc:n,pos:n.index}),"missingPlugin"in i&&Object.assign(s,{missingPlugin:i.missingPlugin}),m(s,"clone",(function(t={}){var a;const{line:s,column:o,index:l}=null!=(a=t.loc)?a:n;return e({loc:new r(s,o,l),details:Object.assign({},i,t.details)})})),m(s,"details",i),Object.defineProperty(s,"message",{configurable:!0,get(){const e=`${t(i)} (${n.line}:${n.column})`;return this.message=e,e},set(e){Object.defineProperty(this,"message",{value:e,writable:!0})}}),s}}function T(e,t){if(Array.isArray(e))return t=>T(t,e[0]);const r={};for(const a of Object.keys(e)){const i=e[a],s="string"==typeof i?{message:()=>i}:"function"==typeof i?{message:i}:i,{message:o}=s,l=n(s,y),p="string"==typeof o?()=>o:o;r[a]=h(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:a,toMessage:p},t?{syntaxPlugin:t}:{},l))}return r}const S=Object.assign({},T(o),T(c),T({StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:e})=>`Assigning to '${e}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:e})=>`Binding '${e}' in strict mode.`,StrictFunction:"In strict mode code, functions can only be declared at top level or inside a block.",StrictNumericEscape:"The only valid numeric escape in strict mode is '\\0'.",StrictOctalLiteral:"Legacy octal literals are not allowed in strict mode.",StrictWith:"'with' in strict mode."}),T`pipelineOperator`(d)),{defineProperty:b}=Object,E=(e,t)=>b(e,t,{enumerable:!1,value:e[t]});function P(e){return e.loc.start&&E(e.loc.start,"index"),e.loc.end&&E(e.loc.end,"index"),e}class x{constructor(e,t){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!t}}const g={brace:new x("{"),j_oTag:new x("<tag"),j_cTag:new x("</tag"),j_expr:new x("<tag>...</tag>",!0)};g.template=new x("`",!0);const A=!0,v=!0,O=!0,I=!0,N=!0;class D{constructor(e,t={}){this.label=void 0,this.keyword=void 0,this.beforeExpr=void 0,this.startsExpr=void 0,this.rightAssociative=void 0,this.isLoop=void 0,this.isAssign=void 0,this.prefix=void 0,this.postfix=void 0,this.binop=void 0,this.label=e,this.keyword=t.keyword,this.beforeExpr=!!t.beforeExpr,this.startsExpr=!!t.startsExpr,this.rightAssociative=!!t.rightAssociative,this.isLoop=!!t.isLoop,this.isAssign=!!t.isAssign,this.prefix=!!t.prefix,this.postfix=!!t.postfix,this.binop=null!=t.binop?t.binop:null,this.updateContext=null}}const C=new Map;function w(e,t={}){t.keyword=e;const n=K(e,t);return C.set(e,n),n}function L(e,t){return K(e,{beforeExpr:A,binop:t})}let j=-1;const _=[],M=[],k=[],B=[],F=[],R=[];function K(e,t={}){var n,r,a,i;return++j,M.push(e),k.push(null!=(n=t.binop)?n:-1),B.push(null!=(r=t.beforeExpr)&&r),F.push(null!=(a=t.startsExpr)&&a),R.push(null!=(i=t.prefix)&&i),_.push(new D(e,t)),j}function V(e,t={}){var n,r,a,i;return++j,C.set(e,j),M.push(e),k.push(null!=(n=t.binop)?n:-1),B.push(null!=(r=t.beforeExpr)&&r),F.push(null!=(a=t.startsExpr)&&a),R.push(null!=(i=t.prefix)&&i),_.push(new D("name",t)),j}const Y={bracketL:K("[",{beforeExpr:A,startsExpr:v}),bracketHashL:K("#[",{beforeExpr:A,startsExpr:v}),bracketBarL:K("[|",{beforeExpr:A,startsExpr:v}),bracketR:K("]"),bracketBarR:K("|]"),braceL:K("{",{beforeExpr:A,startsExpr:v}),braceBarL:K("{|",{beforeExpr:A,startsExpr:v}),braceHashL:K("#{",{beforeExpr:A,startsExpr:v}),braceR:K("}"),braceBarR:K("|}"),parenL:K("(",{beforeExpr:A,startsExpr:v}),parenR:K(")"),comma:K(",",{beforeExpr:A}),semi:K(";",{beforeExpr:A}),colon:K(":",{beforeExpr:A}),doubleColon:K("::",{beforeExpr:A}),dot:K("."),question:K("?",{beforeExpr:A}),questionDot:K("?."),arrow:K("=>",{beforeExpr:A}),template:K("template"),ellipsis:K("...",{beforeExpr:A}),backQuote:K("`",{startsExpr:v}),dollarBraceL:K("${",{beforeExpr:A,startsExpr:v}),templateTail:K("...`",{startsExpr:v}),templateNonTail:K("...${",{beforeExpr:A,startsExpr:v}),at:K("@"),hash:K("#",{startsExpr:v}),interpreterDirective:K("#!..."),eq:K("=",{beforeExpr:A,isAssign:I}),assign:K("_=",{beforeExpr:A,isAssign:I}),slashAssign:K("_=",{beforeExpr:A,isAssign:I}),xorAssign:K("_=",{beforeExpr:A,isAssign:I}),moduloAssign:K("_=",{beforeExpr:A,isAssign:I}),incDec:K("++/--",{prefix:N,postfix:!0,startsExpr:v}),bang:K("!",{beforeExpr:A,prefix:N,startsExpr:v}),tilde:K("~",{beforeExpr:A,prefix:N,startsExpr:v}),doubleCaret:K("^^",{startsExpr:v}),doubleAt:K("@@",{startsExpr:v}),pipeline:L("|>",0),nullishCoalescing:L("??",1),logicalOR:L("||",1),logicalAND:L("&&",2),bitwiseOR:L("|",3),bitwiseXOR:L("^",4),bitwiseAND:L("&",5),equality:L("==/!=/===/!==",6),lt:L("</>/<=/>=",7),gt:L("</>/<=/>=",7),relational:L("</>/<=/>=",7),bitShift:L("<</>>/>>>",8),bitShiftL:L("<</>>/>>>",8),bitShiftR:L("<</>>/>>>",8),plusMin:K("+/-",{beforeExpr:A,binop:9,prefix:N,startsExpr:v}),modulo:K("%",{binop:10,startsExpr:v}),star:K("*",{binop:10}),slash:L("/",10),exponent:K("**",{beforeExpr:A,binop:11,rightAssociative:!0}),_in:w("in",{beforeExpr:A,binop:7}),_instanceof:w("instanceof",{beforeExpr:A,binop:7}),_break:w("break"),_case:w("case",{beforeExpr:A}),_catch:w("catch"),_continue:w("continue"),_debugger:w("debugger"),_default:w("default",{beforeExpr:A}),_else:w("else",{beforeExpr:A}),_finally:w("finally"),_function:w("function",{startsExpr:v}),_if:w("if"),_return:w("return",{beforeExpr:A}),_switch:w("switch"),_throw:w("throw",{beforeExpr:A,prefix:N,startsExpr:v}),_try:w("try"),_var:w("var"),_const:w("const"),_with:w("with"),_new:w("new",{beforeExpr:A,startsExpr:v}),_this:w("this",{startsExpr:v}),_super:w("super",{startsExpr:v}),_class:w("class",{startsExpr:v}),_extends:w("extends",{beforeExpr:A}),_export:w("export"),_import:w("import",{startsExpr:v}),_null:w("null",{startsExpr:v}),_true:w("true",{startsExpr:v}),_false:w("false",{startsExpr:v}),_typeof:w("typeof",{beforeExpr:A,prefix:N,startsExpr:v}),_void:w("void",{beforeExpr:A,prefix:N,startsExpr:v}),_delete:w("delete",{beforeExpr:A,prefix:N,startsExpr:v}),_do:w("do",{isLoop:O,beforeExpr:A}),_for:w("for",{isLoop:O}),_while:w("while",{isLoop:O}),_as:V("as",{startsExpr:v}),_assert:V("assert",{startsExpr:v}),_async:V("async",{startsExpr:v}),_await:V("await",{startsExpr:v}),_from:V("from",{startsExpr:v}),_get:V("get",{startsExpr:v}),_let:V("let",{startsExpr:v}),_meta:V("meta",{startsExpr:v}),_of:V("of",{startsExpr:v}),_sent:V("sent",{startsExpr:v}),_set:V("set",{startsExpr:v}),_static:V("static",{startsExpr:v}),_using:V("using",{startsExpr:v}),_yield:V("yield",{startsExpr:v}),_asserts:V("asserts",{startsExpr:v}),_checks:V("checks",{startsExpr:v}),_exports:V("exports",{startsExpr:v}),_global:V("global",{startsExpr:v}),_implements:V("implements",{startsExpr:v}),_intrinsic:V("intrinsic",{startsExpr:v}),_infer:V("infer",{startsExpr:v}),_is:V("is",{startsExpr:v}),_mixins:V("mixins",{startsExpr:v}),_proto:V("proto",{startsExpr:v}),_require:V("require",{startsExpr:v}),_satisfies:V("satisfies",{startsExpr:v}),_keyof:V("keyof",{startsExpr:v}),_readonly:V("readonly",{startsExpr:v}),_unique:V("unique",{startsExpr:v}),_abstract:V("abstract",{startsExpr:v}),_declare:V("declare",{startsExpr:v}),_enum:V("enum",{startsExpr:v}),_module:V("module",{startsExpr:v}),_namespace:V("namespace",{startsExpr:v}),_interface:V("interface",{startsExpr:v}),_type:V("type",{startsExpr:v}),_opaque:V("opaque",{startsExpr:v}),name:K("name",{startsExpr:v}),string:K("string",{startsExpr:v}),num:K("num",{startsExpr:v}),bigint:K("bigint",{startsExpr:v}),decimal:K("decimal",{startsExpr:v}),regexp:K("regexp",{startsExpr:v}),privateName:K("#name",{startsExpr:v}),eof:K("eof"),jsxName:K("jsxName"),jsxText:K("jsxText",{beforeExpr:!0}),jsxTagStart:K("jsxTagStart",{startsExpr:!0}),jsxTagEnd:K("jsxTagEnd"),placeholder:K("%%",{startsExpr:!0})};function U(e){return e>=93&&e<=130}function X(e){return e>=58&&e<=130}function J(e){return e>=58&&e<=134}function W(e){return F[e]}function q(e){return e>=127&&e<=129}function $(e){return e>=58&&e<=92}function G(e){return M[e]}function z(e){return k[e]}function H(e){return e>=24&&e<=25}function Q(e){return _[e]}_[8].updateContext=e=>{e.pop()},_[5].updateContext=_[7].updateContext=_[23].updateContext=e=>{e.push(g.brace)},_[22].updateContext=e=>{e[e.length-1]===g.template?e.pop():e.push(g.template)},_[140].updateContext=e=>{e.push(g.j_expr,g.j_oTag)};let Z="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",ee="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_";const te=new RegExp("["+Z+"]"),ne=new RegExp("["+Z+ee+"]");Z=ee=null;const re=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,68,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,349,41,7,1,79,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,264,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,328,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,4026,582,8634,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,689,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,43,8,8936,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,757,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4153,7,221,3,5761,15,7472,3104,541,1507,4938,6,4191],ae=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,370,1,81,2,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,406,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,330,3,10,1,2,0,49,6,4,4,14,9,5351,0,7,14,13835,9,87,9,39,4,60,6,26,9,1014,0,2,54,8,3,82,0,12,1,19628,1,4706,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,983,6,110,6,6,9,4759,9,787719,239];function ie(e,t){let n=65536;for(let r=0,a=t.length;r<a;r+=2){if(n+=t[r],n>e)return!1;if(n+=t[r+1],n>=e)return!0}return!1}function se(e){return e<65?36===e:e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&te.test(String.fromCharCode(e)):ie(e,re)))}function oe(e){return e<48?36===e:e<58||!(e<65)&&(e<=90||(e<97?95===e:e<=122||(e<=65535?e>=170&&ne.test(String.fromCharCode(e)):ie(e,re)||ie(e,ae))))}const le=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"]),pe=new Set(["implements","interface","let","package","private","protected","public","static","yield"]),ce=new Set(["eval","arguments"]);function ue(e,t){return t&&"await"===e||"enum"===e}function de(e,t){return ue(e,t)||pe.has(e)}function fe(e){return ce.has(e)}function ye(e,t){return de(e,t)||fe(e)}const me=new Set(["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete","implements","interface","let","package","private","protected","public","static","yield","eval","arguments","enum","await"]);class he{constructor(e){this.var=new Set,this.lexical=new Set,this.functions=new Set,this.flags=e}}class Te{constructor(e,t){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=e,this.inModule=t}get inTopLevel(){return(1&this.currentScope().flags)>0}get inFunction(){return(2&this.currentVarScopeFlags())>0}get allowSuper(){return(16&this.currentThisScopeFlags())>0}get allowDirectSuper(){return(32&this.currentThisScopeFlags())>0}get inClass(){return(64&this.currentThisScopeFlags())>0}get inClassAndNotInNonArrowFunction(){const e=this.currentThisScopeFlags();return(64&e)>0&&0==(2&e)}get inStaticBlock(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(128&t)return!0;if(451&t)return!1}}get inNonArrowFunction(){return(2&this.currentThisScopeFlags())>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(e){return new he(e)}enter(e){this.scopeStack.push(this.createScope(e))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(e){return!!(130&e.flags||!this.parser.inModule&&1&e.flags)}declareName(e,t,n){let r=this.currentScope();if(8&t||16&t)this.checkRedeclarationInScope(r,e,t,n),16&t?r.functions.add(e):r.lexical.add(e),8&t&&this.maybeExportDefined(r,e);else if(4&t)for(let a=this.scopeStack.length-1;a>=0&&(r=this.scopeStack[a],this.checkRedeclarationInScope(r,e,t,n),r.var.add(e),this.maybeExportDefined(r,e),!(387&r.flags));--a);this.parser.inModule&&1&r.flags&&this.undefinedExports.delete(e)}maybeExportDefined(e,t){this.parser.inModule&&1&e.flags&&this.undefinedExports.delete(t)}checkRedeclarationInScope(e,t,n,r){this.isRedeclaredInScope(e,t,n)&&this.parser.raise(S.VarRedeclaration,{at:r,identifierName:t})}isRedeclaredInScope(e,t,n){return!!(1&n)&&(8&n?e.lexical.has(t)||e.functions.has(t)||e.var.has(t):16&n?e.lexical.has(t)||!this.treatFunctionsAsVarInScope(e)&&e.var.has(t):e.lexical.has(t)&&!(8&e.flags&&e.lexical.values().next().value===t)||!this.treatFunctionsAsVarInScope(e)&&e.functions.has(t))}checkLocalExport(e){const{name:t}=e,n=this.scopeStack[0];n.lexical.has(t)||n.var.has(t)||n.functions.has(t)||this.undefinedExports.set(t,e.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(387&t)return t}}currentThisScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:t}=this.scopeStack[e];if(451&t&&!(4&t))return t}}}class Se extends he{constructor(...e){super(...e),this.declareFunctions=new Set}}class be extends Te{createScope(e){return new Se(e)}declareName(e,t,n){const r=this.currentScope();if(2048&t)return this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e),void r.declareFunctions.add(e);super.declareName(e,t,n)}isRedeclaredInScope(e,t,n){return!!super.isRedeclaredInScope(e,t,n)||!!(2048&n)&&!e.declareFunctions.has(t)&&(e.lexical.has(t)||e.functions.has(t))}checkLocalExport(e){this.scopeStack[0].declareFunctions.has(e.name)||super.checkLocalExport(e)}}class Ee{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}hasPlugin(e){if("string"==typeof e)return this.plugins.has(e);{const[t,n]=e;if(!this.hasPlugin(t))return!1;const r=this.plugins.get(t);for(const e of Object.keys(n))if((null==r?void 0:r[e])!==n[e])return!1;return!0}}getPluginOption(e,t){var n;return null==(n=this.plugins.get(e))?void 0:n[t]}}function Pe(e,t){void 0===e.trailingComments?e.trailingComments=t:e.trailingComments.unshift(...t)}function xe(e,t){void 0===e.innerComments?e.innerComments=t:e.innerComments.unshift(...t)}function ge(e,t,n){let r=null,a=t.length;for(;null===r&&a>0;)r=t[--a];null===r||r.start>n.start?xe(e,n.comments):Pe(r,n.comments)}class Ae extends Ee{addComment(e){this.filename&&(e.loc.filename=this.filename),this.state.comments.push(e)}processComment(e){const{commentStack:t}=this.state,n=t.length;if(0===n)return;let r=n-1;const a=t[r];a.start===e.end&&(a.leadingNode=e,r--);const{start:i}=e;for(;r>=0;r--){const n=t[r],a=n.end;if(!(a>i)){a===i&&(n.trailingNode=e);break}n.containingNode=e,this.finalizeComment(n),t.splice(r,1)}}finalizeComment(e){const{comments:t}=e;if(null!==e.leadingNode||null!==e.trailingNode)null!==e.leadingNode&&Pe(e.leadingNode,t),null!==e.trailingNode&&function(e,t){void 0===e.leadingComments?e.leadingComments=t:e.leadingComments.unshift(...t)}(e.trailingNode,t);else{const{containingNode:n,start:r}=e;if(44===this.input.charCodeAt(r-1))switch(n.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":ge(n,n.properties,e);break;case"CallExpression":case"OptionalCallExpression":ge(n,n.arguments,e);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":ge(n,n.params,e);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":ge(n,n.elements,e);break;case"ExportNamedDeclaration":case"ImportDeclaration":ge(n,n.specifiers,e);break;default:xe(n,t)}else xe(n,t)}}finalizeRemainingComments(){const{commentStack:e}=this.state;for(let t=e.length-1;t>=0;t--)this.finalizeComment(e[t]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(e){const{commentStack:t}=this.state,{length:n}=t;if(0===n)return;const r=t[n-1];r.leadingNode===e&&(r.leadingNode=null)}resetPreviousIdentifierLeadingComments(e){const{commentStack:t}=this.state,{length:n}=t;0!==n&&(t[n-1].trailingNode===e?t[n-1].trailingNode=null:n>=2&&t[n-2].trailingNode===e&&(t[n-2].trailingNode=null))}takeSurroundingComments(e,t,n){const{commentStack:r}=this.state,a=r.length;if(0===a)return;let i=a-1;for(;i>=0;i--){const a=r[i],s=a.end;if(a.start===n)a.leadingNode=e;else if(s===t)a.trailingNode=e;else if(s<t)break}}}const ve=/\r\n?|[\n\u2028\u2029]/,Oe=new RegExp(ve.source,"g");function Ie(e){switch(e){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}const Ne=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,De=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g,Ce=new RegExp("(?=("+De.source+"))\\1"+/(?=[\n\r\u2028\u2029]|\/\*(?!.*?\*\/)|$)/.source,"y");function we(e){switch(e){case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:case 65279:return!0;default:return!1}}class Le{constructor(){this.strict=void 0,this.curLine=void 0,this.lineStart=void 0,this.startLoc=void 0,this.endLoc=void 0,this.errors=[],this.potentialArrowAt=-1,this.noArrowAt=[],this.noArrowParamsConversionAt=[],this.maybeInArrowParameters=!1,this.inType=!1,this.noAnonFunctionType=!1,this.hasFlowComment=!1,this.isAmbientContext=!1,this.inAbstractClass=!1,this.inDisallowConditionalTypesContext=!1,this.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.soloAwait=!1,this.inFSharpPipelineDirectBody=!1,this.labels=[],this.comments=[],this.commentStack=[],this.pos=0,this.type=137,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.lastTokStart=0,this.context=[g.brace],this.canStartJSXElement=!0,this.containsEsc=!1,this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}init({strictMode:e,sourceType:t,startLine:n,startColumn:a}){this.strict=!1!==e&&(!0===e||"module"===t),this.curLine=n,this.lineStart=-a,this.startLoc=this.endLoc=new r(n,a,0)}curPosition(){return new r(this.curLine,this.pos-this.lineStart,this.pos)}clone(e){const t=new Le,n=Object.keys(this);for(let r=0,a=n.length;r<a;r++){const a=n[r];let i=this[a];!e&&Array.isArray(i)&&(i=i.slice()),t[a]=i}return t}}var je=function(e){return e>=48&&e<=57};const _e={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},Me={bin:e=>48===e||49===e,oct:e=>e>=48&&e<=55,dec:e=>e>=48&&e<=57,hex:e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102};function ke(e,t,n,r,a,i){const s=n,o=r,l=a;let p="",c=null,u=n;const{length:d}=t;for(;;){if(n>=d){i.unterminated(s,o,l),p+=t.slice(u,n);break}const f=t.charCodeAt(n);if(Be(e,f,t,n)){p+=t.slice(u,n);break}if(92===f){p+=t.slice(u,n);const s=Fe(t,n,r,a,"template"===e,i);null!==s.ch||c?p+=s.ch:c={pos:n,lineStart:r,curLine:a},({pos:n,lineStart:r,curLine:a}=s),u=n}else 8232===f||8233===f?(++a,r=++n):10===f||13===f?"template"===e?(p+=t.slice(u,n)+"\n",++n,13===f&&10===t.charCodeAt(n)&&++n,++a,u=r=n):i.unterminated(s,o,l):++n}return{pos:n,str:p,firstInvalidLoc:c,lineStart:r,curLine:a,containsInvalid:!!c}}function Be(e,t,n,r){return"template"===e?96===t||36===t&&123===n.charCodeAt(r+1):t===("double"===e?34:39)}function Fe(e,t,n,r,a,i){const s=!a;t++;const o=e=>({pos:t,ch:e,lineStart:n,curLine:r}),l=e.charCodeAt(t++);switch(l){case 110:return o("\n");case 114:return o("\r");case 120:{let a;return({code:a,pos:t}=Re(e,t,n,r,2,!1,s,i)),o(null===a?null:String.fromCharCode(a))}case 117:{let a;return({code:a,pos:t}=Ve(e,t,n,r,s,i)),o(null===a?null:String.fromCodePoint(a))}case 116:return o("\t");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:10===e.charCodeAt(t)&&++t;case 10:n=t,++r;case 8232:case 8233:return o("");case 56:case 57:if(a)return o(null);i.strictNumericEscape(t-1,n,r);default:if(l>=48&&l<=55){const s=t-1;let l=e.slice(s,t+2).match(/^[0-7]+/)[0],p=parseInt(l,8);p>255&&(l=l.slice(0,-1),p=parseInt(l,8)),t+=l.length-1;const c=e.charCodeAt(t);if("0"!==l||56===c||57===c){if(a)return o(null);i.strictNumericEscape(s,n,r)}return o(String.fromCharCode(p))}return o(String.fromCharCode(l))}}function Re(e,t,n,r,a,i,s,o){const l=t;let p;return({n:p,pos:t}=Ke(e,t,n,r,16,a,i,!1,o,!s)),null===p&&(s?o.invalidEscapeSequence(l,n,r):t=l-1),{code:p,pos:t}}function Ke(e,t,n,r,a,i,s,o,l,p){const c=t,u=16===a?_e.hex:_e.decBinOct,d=16===a?Me.hex:10===a?Me.dec:8===a?Me.oct:Me.bin;let f=!1,y=0;for(let c=0,m=null==i?1/0:i;c<m;++c){const i=e.charCodeAt(t);let c;if(95!==i||"bail"===o){if(c=i>=97?i-97+10:i>=65?i-65+10:je(i)?i-48:1/0,c>=a){if(c<=9&&p)return{n:null,pos:t};if(c<=9&&l.invalidDigit(t,n,r,a))c=0;else{if(!s)break;c=0,f=!0}}++t,y=y*a+c}else{const a=e.charCodeAt(t-1),i=e.charCodeAt(t+1);if(o){if(Number.isNaN(i)||!d(i)||u.has(a)||u.has(i)){if(p)return{n:null,pos:t};l.unexpectedNumericSeparator(t,n,r)}}else{if(p)return{n:null,pos:t};l.numericSeparatorInEscapeSequence(t,n,r)}++t}}return t===c||null!=i&&t-c!==i||f?{n:null,pos:t}:{n:y,pos:t}}function Ve(e,t,n,r,a,i){let s;if(123===e.charCodeAt(t)){if(++t,({code:s,pos:t}=Re(e,t,n,r,e.indexOf("}",t)-t,!0,a,i)),++t,null!==s&&s>1114111){if(!a)return{code:null,pos:t};i.invalidCodePoint(t,n,r)}}else({code:s,pos:t}=Re(e,t,n,r,4,!1,a,i));return{code:s,pos:t}}const Ye=["at"],Ue=["at"];function Xe(e,t,n){return new r(n,e-t,e)}const Je=new Set([103,109,115,105,121,117,100,118]);class We{constructor(e){this.type=e.type,this.value=e.value,this.start=e.start,this.end=e.end,this.loc=new a(e.startLoc,e.endLoc)}}class qe extends Ae{constructor(e,t){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(e,t,n,r)=>!!this.options.errorRecovery&&(this.raise(S.InvalidDigit,{at:Xe(e,t,n),radix:r}),!0),numericSeparatorInEscapeSequence:this.errorBuilder(S.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(S.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(S.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(S.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(e,t,n)=>{this.recordStrictModeErrors(S.StrictNumericEscape,{at:Xe(e,t,n)})},unterminated:(e,t,n)=>{throw this.raise(S.UnterminatedString,{at:Xe(e-1,t,n)})}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(S.StrictNumericEscape),unterminated:(e,t,n)=>{throw this.raise(S.UnterminatedTemplate,{at:Xe(e,t,n)})}}),this.state=new Le,this.state.init(e),this.input=t,this.length=t.length,this.isLookahead=!1}pushToken(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.options.tokens&&this.pushToken(new We(this.state)),this.state.lastTokStart=this.state.start,this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(e){return!!this.match(e)&&(this.next(),!0)}match(e){return this.state.type===e}createLookaheadState(e){return{pos:e.pos,value:null,type:e.type,start:e.start,end:e.end,context:[this.curContext()],inType:e.inType,startLoc:e.startLoc,lastTokEndLoc:e.lastTokEndLoc,curLine:e.curLine,lineStart:e.lineStart,curPosition:e.curPosition}}lookahead(){const e=this.state;this.state=this.createLookaheadState(e),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;const t=this.state;return this.state=e,t}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(e){return Ne.lastIndex=e,Ne.test(this.input)?Ne.lastIndex:e}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(e){return De.lastIndex=e,De.test(this.input)?De.lastIndex:e}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(e){let t=this.input.charCodeAt(e);if(55296==(64512&t)&&++e<this.input.length){const n=this.input.charCodeAt(e);56320==(64512&n)&&(t=65536+((1023&t)<<10)+(1023&n))}return t}setStrict(e){this.state.strict=e,e&&(this.state.strictErrors.forEach((([e,t])=>this.raise(e,{at:t}))),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length?this.finishToken(137):this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(e){let t;this.isLookahead||(t=this.state.curPosition());const n=this.state.pos,r=this.input.indexOf(e,n+2);if(-1===r)throw this.raise(S.UnterminatedComment,{at:this.state.curPosition()});for(this.state.pos=r+e.length,Oe.lastIndex=n+2;Oe.test(this.input)&&Oe.lastIndex<=r;)++this.state.curLine,this.state.lineStart=Oe.lastIndex;if(this.isLookahead)return;const i={type:"CommentBlock",value:this.input.slice(n+2,r),start:n,end:r+e.length,loc:new a(t,this.state.curPosition())};return this.options.tokens&&this.pushToken(i),i}skipLineComment(e){const t=this.state.pos;let n;this.isLookahead||(n=this.state.curPosition());let r=this.input.charCodeAt(this.state.pos+=e);if(this.state.pos<this.length)for(;!Ie(r)&&++this.state.pos<this.length;)r=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;const i=this.state.pos,s={type:"CommentLine",value:this.input.slice(t+e,i),start:t,end:i,loc:new a(n,this.state.curPosition())};return this.options.tokens&&this.pushToken(s),s}skipSpace(){const e=this.state.pos,t=[];e:for(;this.state.pos<this.length;){const n=this.input.charCodeAt(this.state.pos);switch(n){case 32:case 160:case 9:++this.state.pos;break;case 13:10===this.input.charCodeAt(this.state.pos+1)&&++this.state.pos;case 10:case 8232:case 8233:++this.state.pos,++this.state.curLine,this.state.lineStart=this.state.pos;break;case 47:switch(this.input.charCodeAt(this.state.pos+1)){case 42:{const e=this.skipBlockComment("*/");void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e));break}case 47:{const e=this.skipLineComment(2);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e));break}default:break e}break;default:if(we(n))++this.state.pos;else if(45===n&&!this.inModule&&this.options.annexB){const n=this.state.pos;if(45!==this.input.charCodeAt(n+1)||62!==this.input.charCodeAt(n+2)||!(0===e||this.state.lineStart>e))break e;{const e=this.skipLineComment(3);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e))}}else{if(60!==n||this.inModule||!this.options.annexB)break e;{const e=this.state.pos;if(33!==this.input.charCodeAt(e+1)||45!==this.input.charCodeAt(e+2)||45!==this.input.charCodeAt(e+3))break e;{const e=this.skipLineComment(4);void 0!==e&&(this.addComment(e),this.options.attachComment&&t.push(e))}}}}}if(t.length>0){const n={start:e,end:this.state.pos,comments:t,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(n)}}finishToken(e,t){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();const n=this.state.type;this.state.type=e,this.state.value=t,this.isLookahead||this.updateContext(n)}replaceToken(e){this.state.type=e,this.updateContext()}readToken_numberSign(){if(0===this.state.pos&&this.readToken_interpreter())return;const e=this.state.pos+1,t=this.codePointAtPos(e);if(t>=48&&t<=57)throw this.raise(S.UnexpectedDigitAfterHash,{at:this.state.curPosition()});if(123===t||91===t&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),"bar"===this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(123===t?S.RecordExpressionHashIncorrectStartSyntaxType:S.TupleExpressionHashIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,123===t?this.finishToken(7):this.finishToken(1)}else se(t)?(++this.state.pos,this.finishToken(136,this.readWord1(t))):92===t?(++this.state.pos,this.finishToken(136,this.readWord1())):this.finishOp(27,1)}readToken_dot(){const e=this.input.charCodeAt(this.state.pos+1);e>=48&&e<=57?this.readNumber(!0):46===e&&46===this.input.charCodeAt(this.state.pos+2)?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){61===this.input.charCodeAt(this.state.pos+1)?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(0!==this.state.pos||this.length<2)return!1;let e=this.input.charCodeAt(this.state.pos+1);if(33!==e)return!1;const t=this.state.pos;for(this.state.pos+=1;!Ie(e)&&++this.state.pos<this.length;)e=this.input.charCodeAt(this.state.pos);const n=this.input.slice(t+2,this.state.pos);return this.finishToken(28,n),!0}readToken_mult_modulo(e){let t=42===e?55:54,n=1,r=this.input.charCodeAt(this.state.pos+1);42===e&&42===r&&(n++,r=this.input.charCodeAt(this.state.pos+2),t=57),61!==r||this.state.inType||(n++,t=37===e?33:30),this.finishOp(t,n)}readToken_pipe_amp(e){const t=this.input.charCodeAt(this.state.pos+1);if(t!==e){if(124===e){if(62===t)return void this.finishOp(39,2);if(this.hasPlugin("recordAndTuple")&&125===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(S.RecordExpressionBarIncorrectEndSyntaxType,{at:this.state.curPosition()});return this.state.pos+=2,void this.finishToken(9)}if(this.hasPlugin("recordAndTuple")&&93===t){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(S.TupleExpressionBarIncorrectEndSyntaxType,{at:this.state.curPosition()});return this.state.pos+=2,void this.finishToken(4)}}61!==t?this.finishOp(124===e?43:45,1):this.finishOp(30,2)}else 61===this.input.charCodeAt(this.state.pos+2)?this.finishOp(30,3):this.finishOp(124===e?41:42,2)}readToken_caret(){const e=this.input.charCodeAt(this.state.pos+1);61!==e||this.state.inType?94===e&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])?(this.finishOp(37,2),94===this.input.codePointAt(this.state.pos)&&this.unexpected()):this.finishOp(44,1):this.finishOp(32,2)}readToken_atSign(){64===this.input.charCodeAt(this.state.pos+1)&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(e){const t=this.input.charCodeAt(this.state.pos+1);t!==e?61===t?this.finishOp(30,2):this.finishOp(53,1):this.finishOp(34,2)}readToken_lt(){const{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(60===t)return 61===this.input.charCodeAt(e+2)?void this.finishOp(30,3):void this.finishOp(51,2);61!==t?this.finishOp(47,1):this.finishOp(49,2)}readToken_gt(){const{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(62===t){const t=62===this.input.charCodeAt(e+2)?3:2;return 61===this.input.charCodeAt(e+t)?void this.finishOp(30,t+1):void this.finishOp(52,t)}61!==t?this.finishOp(48,1):this.finishOp(49,2)}readToken_eq_excl(e){const t=this.input.charCodeAt(this.state.pos+1);if(61!==t)return 61===e&&62===t?(this.state.pos+=2,void this.finishToken(19)):void this.finishOp(61===e?29:35,1);this.finishOp(46,61===this.input.charCodeAt(this.state.pos+2)?3:2)}readToken_question(){const e=this.input.charCodeAt(this.state.pos+1),t=this.input.charCodeAt(this.state.pos+2);63===e?61===t?this.finishOp(30,3):this.finishOp(40,2):46!==e||t>=48&&t<=57?(++this.state.pos,this.finishToken(17)):(this.state.pos+=2,this.finishToken(18))}getTokenFromCode(e){switch(e){case 46:return void this.readToken_dot();case 40:return++this.state.pos,void this.finishToken(10);case 41:return++this.state.pos,void this.finishToken(11);case 59:return++this.state.pos,void this.finishToken(13);case 44:return++this.state.pos,void this.finishToken(12);case 91:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(S.TupleExpressionBarIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:return++this.state.pos,void this.finishToken(3);case 123:if(this.hasPlugin("recordAndTuple")&&124===this.input.charCodeAt(this.state.pos+1)){if("bar"!==this.getPluginOption("recordAndTuple","syntaxType"))throw this.raise(S.RecordExpressionBarIncorrectStartSyntaxType,{at:this.state.curPosition()});this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:return++this.state.pos,void this.finishToken(8);case 58:return void(this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(15,2):(++this.state.pos,this.finishToken(14)));case 63:return void this.readToken_question();case 96:return void this.readTemplateToken();case 48:{const e=this.input.charCodeAt(this.state.pos+1);if(120===e||88===e)return void this.readRadixNumber(16);if(111===e||79===e)return void this.readRadixNumber(8);if(98===e||66===e)return void this.readRadixNumber(2)}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return void this.readNumber(!1);case 34:case 39:return void this.readString(e);case 47:return void this.readToken_slash();case 37:case 42:return void this.readToken_mult_modulo(e);case 124:case 38:return void this.readToken_pipe_amp(e);case 94:return void this.readToken_caret();case 43:case 45:return void this.readToken_plus_min(e);case 60:return void this.readToken_lt();case 62:return void this.readToken_gt();case 61:case 33:return void this.readToken_eq_excl(e);case 126:return void this.finishOp(36,1);case 64:return void this.readToken_atSign();case 35:return void this.readToken_numberSign();case 92:return void this.readWord();default:if(se(e))return void this.readWord(e)}throw this.raise(S.InvalidOrUnexpectedToken,{at:this.state.curPosition(),unexpected:String.fromCodePoint(e)})}finishOp(e,t){const n=this.input.slice(this.state.pos,this.state.pos+t);this.state.pos+=t,this.finishToken(e,n)}readRegexp(){const e=this.state.startLoc,t=this.state.start+1;let n,r,{pos:a}=this.state;for(;;++a){if(a>=this.length)throw this.raise(S.UnterminatedRegExp,{at:i(e,1)});const t=this.input.charCodeAt(a);if(Ie(t))throw this.raise(S.UnterminatedRegExp,{at:i(e,1)});if(n)n=!1;else{if(91===t)r=!0;else if(93===t&&r)r=!1;else if(47===t&&!r)break;n=92===t}}const s=this.input.slice(t,a);++a;let o="";const l=()=>i(e,a+2-t);for(;a<this.length;){const e=this.codePointAtPos(a),t=String.fromCharCode(e);if(Je.has(e))118===e?o.includes("u")&&this.raise(S.IncompatibleRegExpUVFlags,{at:l()}):117===e&&o.includes("v")&&this.raise(S.IncompatibleRegExpUVFlags,{at:l()}),o.includes(t)&&this.raise(S.DuplicateRegExpFlags,{at:l()});else{if(!oe(e)&&92!==e)break;this.raise(S.MalformedRegExpFlags,{at:l()})}++a,o+=t}this.state.pos=a,this.finishToken(135,{pattern:s,flags:o})}readInt(e,t,n=!1,r=!0){const{n:a,pos:i}=Ke(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,t,n,r,this.errorHandlers_readInt,!1);return this.state.pos=i,a}readRadixNumber(e){const t=this.state.curPosition();let n=!1;this.state.pos+=2;const r=this.readInt(e);null==r&&this.raise(S.InvalidDigit,{at:i(t,2),radix:e});const a=this.input.charCodeAt(this.state.pos);if(110===a)++this.state.pos,n=!0;else if(109===a)throw this.raise(S.InvalidDecimal,{at:t});if(se(this.codePointAtPos(this.state.pos)))throw this.raise(S.NumberIdentifier,{at:this.state.curPosition()});if(n){const e=this.input.slice(t.index,this.state.pos).replace(/[_n]/g,"");this.finishToken(133,e)}else this.finishToken(132,r)}readNumber(e){const t=this.state.pos,n=this.state.curPosition();let r=!1,a=!1,s=!1,o=!1,l=!1;e||null!==this.readInt(10)||this.raise(S.InvalidNumber,{at:this.state.curPosition()});const p=this.state.pos-t>=2&&48===this.input.charCodeAt(t);if(p){const e=this.input.slice(t,this.state.pos);if(this.recordStrictModeErrors(S.StrictOctalLiteral,{at:n}),!this.state.strict){const t=e.indexOf("_");t>0&&this.raise(S.ZeroDigitNumericSeparator,{at:i(n,t)})}l=p&&!/[89]/.test(e)}let c=this.input.charCodeAt(this.state.pos);if(46!==c||l||(++this.state.pos,this.readInt(10),r=!0,c=this.input.charCodeAt(this.state.pos)),69!==c&&101!==c||l||(c=this.input.charCodeAt(++this.state.pos),43!==c&&45!==c||++this.state.pos,null===this.readInt(10)&&this.raise(S.InvalidOrMissingExponent,{at:n}),r=!0,o=!0,c=this.input.charCodeAt(this.state.pos)),110===c&&((r||p)&&this.raise(S.InvalidBigIntLiteral,{at:n}),++this.state.pos,a=!0),109===c&&(this.expectPlugin("decimal",this.state.curPosition()),(o||p)&&this.raise(S.InvalidDecimal,{at:n}),++this.state.pos,s=!0),se(this.codePointAtPos(this.state.pos)))throw this.raise(S.NumberIdentifier,{at:this.state.curPosition()});const u=this.input.slice(t,this.state.pos).replace(/[_mn]/g,"");if(a)return void this.finishToken(133,u);if(s)return void this.finishToken(134,u);const d=l?parseInt(u,8):parseFloat(u);this.finishToken(132,d)}readCodePoint(e){const{code:t,pos:n}=Ve(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,this.errorHandlers_readCodePoint);return this.state.pos=n,t}readString(e){const{str:t,pos:n,curLine:r,lineStart:a}=ke(34===e?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=n+1,this.state.lineStart=a,this.state.curLine=r,this.finishToken(131,t)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){const e=this.input[this.state.pos],{str:t,firstInvalidLoc:n,pos:a,curLine:i,lineStart:s}=ke("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=a+1,this.state.lineStart=s,this.state.curLine=i,n&&(this.state.firstInvalidTemplateEscapePos=new r(n.curLine,n.pos-n.lineStart,n.pos)),96===this.input.codePointAt(a)?this.finishToken(24,n?null:e+t+"`"):(this.state.pos++,this.finishToken(25,n?null:e+t+"${"))}recordStrictModeErrors(e,{at:t}){const n=t.index;this.state.strict&&!this.state.strictErrors.has(n)?this.raise(e,{at:t}):this.state.strictErrors.set(n,[e,t])}readWord1(e){this.state.containsEsc=!1;let t="";const n=this.state.pos;let r=this.state.pos;for(void 0!==e&&(this.state.pos+=e<=65535?1:2);this.state.pos<this.length;){const e=this.codePointAtPos(this.state.pos);if(oe(e))this.state.pos+=e<=65535?1:2;else{if(92!==e)break;{this.state.containsEsc=!0,t+=this.input.slice(r,this.state.pos);const e=this.state.curPosition(),a=this.state.pos===n?se:oe;if(117!==this.input.charCodeAt(++this.state.pos)){this.raise(S.MissingUnicodeEscape,{at:this.state.curPosition()}),r=this.state.pos-1;continue}++this.state.pos;const i=this.readCodePoint(!0);null!==i&&(a(i)||this.raise(S.EscapedCharNotAnIdentifier,{at:e}),t+=String.fromCodePoint(i)),r=this.state.pos}}}return t+this.input.slice(r,this.state.pos)}readWord(e){const t=this.readWord1(e),n=C.get(t);void 0!==n?this.finishToken(n,G(n)):this.finishToken(130,t)}checkKeywordEscapes(){const{type:e}=this.state;$(e)&&this.state.containsEsc&&this.raise(S.InvalidEscapedReservedWord,{at:this.state.startLoc,reservedWord:G(e)})}raise(e,t){const{at:a}=t,i=n(t,Ye),s=e({loc:a instanceof r?a:a.loc.start,details:i});if(!this.options.errorRecovery)throw s;return this.isLookahead||this.state.errors.push(s),s}raiseOverwrite(e,t){const{at:a}=t,i=n(t,Ue),s=a instanceof r?a:a.loc.start,o=s.index,l=this.state.errors;for(let t=l.length-1;t>=0;t--){const n=l[t];if(n.loc.index===o)return l[t]=e({loc:s,details:i});if(n.loc.index<o)break}return this.raise(e,t)}updateContext(e){}unexpected(e,t){throw this.raise(S.UnexpectedToken,{expected:t?G(t):null,at:null!=e?e:this.state.startLoc})}expectPlugin(e,t){if(this.hasPlugin(e))return!0;throw this.raise(S.MissingPlugin,{at:null!=t?t:this.state.startLoc,missingPlugin:[e]})}expectOnePlugin(e){if(!e.some((e=>this.hasPlugin(e))))throw this.raise(S.MissingOneOfPlugins,{at:this.state.startLoc,missingPlugin:e})}errorBuilder(e){return(t,n,r)=>{this.raise(e,{at:Xe(t,n,r)})}}}class $e{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}}class Ge{constructor(e){this.parser=void 0,this.stack=[],this.undefinedPrivateNames=new Map,this.parser=e}current(){return this.stack[this.stack.length-1]}enter(){this.stack.push(new $e)}exit(){const e=this.stack.pop(),t=this.current();for(const[n,r]of Array.from(e.undefinedPrivateNames))t?t.undefinedPrivateNames.has(n)||t.undefinedPrivateNames.set(n,r):this.parser.raise(S.InvalidPrivateFieldResolution,{at:r,identifierName:n})}declarePrivateName(e,t,n){const{privateNames:r,loneAccessors:a,undefinedPrivateNames:i}=this.current();let s=r.has(e);if(3&t){const n=s&&a.get(e);n?(s=(3&n)==(3&t)||(4&n)!=(4&t),s||a.delete(e)):s||a.set(e,t)}s&&this.parser.raise(S.PrivateNameRedeclaration,{at:n,identifierName:e}),r.add(e),i.delete(e)}usePrivateName(e,t){let n;for(n of this.stack)if(n.privateNames.has(e))return;n?n.undefinedPrivateNames.set(e,t):this.parser.raise(S.InvalidPrivateFieldResolution,{at:t,identifierName:e})}}class ze{constructor(e=0){this.type=e}canBeArrowParameterDeclaration(){return 2===this.type||1===this.type}isCertainlyParameterDeclaration(){return 3===this.type}}class He extends ze{constructor(e){super(e),this.declarationErrors=new Map}recordDeclarationError(e,{at:t}){const n=t.index;this.declarationErrors.set(n,[e,t])}clearDeclarationError(e){this.declarationErrors.delete(e)}iterateErrors(e){this.declarationErrors.forEach(e)}}class Qe{constructor(e){this.parser=void 0,this.stack=[new ze],this.parser=e}enter(e){this.stack.push(e)}exit(){this.stack.pop()}recordParameterInitializerError(e,{at:t}){const n={at:t.loc.start},{stack:r}=this;let a=r.length-1,i=r[a];for(;!i.isCertainlyParameterDeclaration();){if(!i.canBeArrowParameterDeclaration())return;i.recordDeclarationError(e,n),i=r[--a]}this.parser.raise(e,n)}recordArrowParameterBindingError(e,{at:t}){const{stack:n}=this,r=n[n.length-1],a={at:t.loc.start};if(r.isCertainlyParameterDeclaration())this.parser.raise(e,a);else{if(!r.canBeArrowParameterDeclaration())return;r.recordDeclarationError(e,a)}}recordAsyncArrowParametersError({at:e}){const{stack:t}=this;let n=t.length-1,r=t[n];for(;r.canBeArrowParameterDeclaration();)2===r.type&&r.recordDeclarationError(S.AwaitBindingIdentifier,{at:e}),r=t[--n]}validateAsPattern(){const{stack:e}=this,t=e[e.length-1];t.canBeArrowParameterDeclaration()&&t.iterateErrors((([t,n])=>{this.parser.raise(t,{at:n});let r=e.length-2,a=e[r];for(;a.canBeArrowParameterDeclaration();)a.clearDeclarationError(n.index),a=e[--r]}))}}function Ze(){return new ze}class et{constructor(){this.stacks=[]}enter(e){this.stacks.push(e)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(2&this.currentFlags())>0}get hasYield(){return(1&this.currentFlags())>0}get hasReturn(){return(4&this.currentFlags())>0}get hasIn(){return(8&this.currentFlags())>0}}function tt(e,t){return(e?2:0)|(t?1:0)}class nt extends qe{addExtra(e,t,n,r=!0){if(!e)return;const a=e.extra=e.extra||{};r?a[t]=n:Object.defineProperty(a,t,{enumerable:r,value:n})}isContextual(e){return this.state.type===e&&!this.state.containsEsc}isUnparsedContextual(e,t){const n=e+t.length;if(this.input.slice(e,n)===t){const e=this.input.charCodeAt(n);return!(oe(e)||55296==(64512&e))}return!1}isLookaheadContextual(e){const t=this.nextTokenStart();return this.isUnparsedContextual(t,e)}eatContextual(e){return!!this.isContextual(e)&&(this.next(),!0)}expectContextual(e,t){if(!this.eatContextual(e)){if(null!=t)throw this.raise(t,{at:this.state.startLoc});this.unexpected(null,e)}}canInsertSemicolon(){return this.match(137)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return ve.test(this.input.slice(this.state.lastTokEndLoc.index,this.state.start))}hasFollowingLineBreak(){return Ce.lastIndex=this.state.end,Ce.test(this.input)}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(e=!0){(e?this.isLineTerminator():this.eat(13))||this.raise(S.MissingSemicolon,{at:this.state.lastTokEndLoc})}expect(e,t){this.eat(e)||this.unexpected(t,e)}tryParse(e,t=this.state.clone()){const n={node:null};try{const r=e(((e=null)=>{throw n.node=e,n}));if(this.state.errors.length>t.errors.length){const e=this.state;return this.state=t,this.state.tokensLength=e.tokensLength,{node:r,error:e.errors[t.errors.length],thrown:!1,aborted:!1,failState:e}}return{node:r,error:null,thrown:!1,aborted:!1,failState:null}}catch(e){const r=this.state;if(this.state=t,e instanceof SyntaxError)return{node:null,error:e,thrown:!0,aborted:!1,failState:r};if(e===n)return{node:n.node,error:null,thrown:!1,aborted:!0,failState:r};throw e}}checkExpressionErrors(e,t){if(!e)return!1;const{shorthandAssignLoc:n,doubleProtoLoc:r,privateKeyLoc:a,optionalParametersLoc:i}=e;if(!t)return!!(n||r||i||a);null!=n&&this.raise(S.InvalidCoverInitializedName,{at:n}),null!=r&&this.raise(S.DuplicateProto,{at:r}),null!=a&&this.raise(S.UnexpectedPrivateField,{at:a}),null!=i&&this.unexpected(i)}isLiteralPropertyName(){return J(this.state.type)}isPrivateName(e){return"PrivateName"===e.type}getPrivateNameSV(e){return e.id.name}hasPropertyAsPrivateName(e){return("MemberExpression"===e.type||"OptionalMemberExpression"===e.type)&&this.isPrivateName(e.property)}isObjectProperty(e){return"ObjectProperty"===e.type}isObjectMethod(e){return"ObjectMethod"===e.type}initializeScopes(e="module"===this.options.sourceType){const t=this.state.labels;this.state.labels=[];const n=this.exportedIdentifiers;this.exportedIdentifiers=new Set;const r=this.inModule;this.inModule=e;const a=this.scope,i=this.getScopeHandler();this.scope=new i(this,e);const s=this.prodParam;this.prodParam=new et;const o=this.classScope;this.classScope=new Ge(this);const l=this.expressionScope;return this.expressionScope=new Qe(this),()=>{this.state.labels=t,this.exportedIdentifiers=n,this.inModule=r,this.scope=a,this.prodParam=s,this.classScope=o,this.expressionScope=l}}enterInitialScopes(){let e=0;this.inModule&&(e|=2),this.scope.enter(1),this.prodParam.enter(e)}checkDestructuringPrivate(e){const{privateKeyLoc:t}=e;null!==t&&this.expectPlugin("destructuringPrivate",t)}}class rt{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}}class at{constructor(e,t,n){this.type="",this.start=t,this.end=0,this.loc=new a(n),null!=e&&e.options.ranges&&(this.range=[t,0]),null!=e&&e.filename&&(this.loc.filename=e.filename)}}const it=at.prototype;function st(e){const{type:t,start:n,end:r,loc:a,range:i,extra:s,name:o}=e,l=Object.create(it);return l.type=t,l.start=n,l.end=r,l.loc=a,l.range=i,l.extra=s,l.name=o,"Placeholder"===t&&(l.expectedNode=e.expectedNode),l}it.__clone=function(){const e=new at(void 0,this.start,this.loc.start),t=Object.keys(this);for(let n=0,r=t.length;n<r;n++){const r=t[n];"leadingComments"!==r&&"trailingComments"!==r&&"innerComments"!==r&&(e[r]=this[r])}return e};class ot extends nt{startNode(){return new at(this,this.state.start,this.state.startLoc)}startNodeAt(e){return new at(this,e.index,e)}startNodeAtNode(e){return this.startNodeAt(e.loc.start)}finishNode(e,t){return this.finishNodeAt(e,t,this.state.lastTokEndLoc)}finishNodeAt(e,t,n){return e.type=t,e.end=n.index,e.loc.end=n,this.options.ranges&&(e.range[1]=n.index),this.options.attachComment&&this.processComment(e),e}resetStartLocation(e,t){e.start=t.index,e.loc.start=t,this.options.ranges&&(e.range[0]=t.index)}resetEndLocation(e,t=this.state.lastTokEndLoc){e.end=t.index,e.loc.end=t,this.options.ranges&&(e.range[1]=t.index)}resetStartLocationFromNode(e,t){this.resetStartLocation(e,t.loc.start)}}const lt=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),pt=T`flow`({AmbiguousConditionalArrow:"Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.",AmbiguousDeclareModuleKind:"Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.",AssignReservedType:({reservedType:e})=>`Cannot overwrite reserved type ${e}.`,DeclareClassElement:"The `declare` modifier can only appear on class fields.",DeclareClassFieldInitializer:"Initializers are not allowed in fields with the `declare` modifier.",DuplicateDeclareModuleExports:"Duplicate `declare module.exports` statement.",EnumBooleanMemberNotInitialized:({memberName:e,enumName:t})=>`Boolean enum members need to be initialized. Use either \`${e} = true,\` or \`${e} = false,\` in enum \`${t}\`.`,EnumDuplicateMemberName:({memberName:e,enumName:t})=>`Enum member names need to be unique, but the name \`${e}\` has already been used before in enum \`${t}\`.`,EnumInconsistentMemberValues:({enumName:e})=>`Enum \`${e}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:e,enumName:t})=>`Enum type \`${e}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${t}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:e})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${e}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:e,memberName:t,explicitType:n})=>`Enum \`${e}\` has type \`${n}\`, so the initializer of \`${t}\` needs to be a ${n} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:e,memberName:t})=>`Symbol enum members cannot be initialized. Use \`${t},\` in enum \`${e}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:e,memberName:t})=>`The enum member initializer for \`${t}\` needs to be a literal (either a boolean, number, or string) in enum \`${e}\`.`,EnumInvalidMemberName:({enumName:e,memberName:t,suggestion:n})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${t}\`, consider using \`${n}\`, in enum \`${e}\`.`,EnumNumberMemberNotInitialized:({enumName:e,memberName:t})=>`Number enum members need to be initialized, e.g. \`${t} = 1\` in enum \`${e}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:e})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${e}\`.`,GetterMayNotHaveThisParam:"A getter cannot have a `this` parameter.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` or `typeof` keyword.",ImportTypeShorthandOnlyInPureImport:"The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.",InexactInsideExact:"Explicit inexact syntax cannot appear inside an explicit exact object type.",InexactInsideNonObject:"Explicit inexact syntax cannot appear in class or interface definitions.",InexactVariance:"Explicit inexact syntax cannot have variance.",InvalidNonTypeImportInDeclareModule:"Imports within a `declare module` body must always be `import type` or `import typeof`.",MissingTypeParamDefault:"Type parameter declaration needs a default, since a preceding type parameter declaration has a default.",NestedDeclareModule:"`declare module` cannot be used inside another `declare module`.",NestedFlowComment:"Cannot have a flow comment inside another flow comment.",PatternIsOptional:Object.assign({message:"A binding pattern parameter cannot be optional in an implementation signature."},{reasonCode:"OptionalBindingPattern"}),SetterMayNotHaveThisParam:"A setter cannot have a `this` parameter.",SpreadVariance:"Spread properties cannot have variance.",ThisParamAnnotationRequired:"A type annotation is required for the `this` parameter.",ThisParamBannedInConstructor:"Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.",ThisParamMayNotBeOptional:"The `this` parameter cannot be optional.",ThisParamMustBeFirst:"The `this` parameter must be the first function parameter.",ThisParamNoDefault:"The `this` parameter may not have a default value.",TypeBeforeInitializer:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeCastInPattern:"The type cast expression is expected to be wrapped with parenthesis.",UnexpectedExplicitInexactInObject:"Explicit inexact syntax must appear at the end of an inexact object.",UnexpectedReservedType:({reservedType:e})=>`Unexpected reserved type ${e}.`,UnexpectedReservedUnderscore:"`_` is only allowed as a type argument to call or new.",UnexpectedSpaceBetweenModuloChecks:"Spaces between `%` and `checks` are not allowed here.",UnexpectedSpreadType:"Spread operator cannot appear in class or interface definitions.",UnexpectedSubtractionOperand:'Unexpected token, expected "number" or "bigint".',UnexpectedTokenAfterTypeParameter:"Expected an arrow function after this type parameter declaration.",UnexpectedTypeParameterBeforeAsyncArrowFunction:"Type parameters must come after the async keyword, e.g. instead of `<T> async () => {}`, use `async <T>() => {}`.",UnsupportedDeclareExportKind:({unsupportedExportKind:e,suggestion:t})=>`\`declare export ${e}\` is not supported. Use \`${t}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function ct(e){return"type"===e.importKind||"typeof"===e.importKind}const ut={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"},dt=/\*?\s*@((?:no)?flow)\b/,ft={__proto__:null,quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"",zwj:"",lrm:"",rlm:"",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"},yt=T`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:e})=>`Expected corresponding JSX closing tag for <${e}>.`,MissingClosingTagFragment:"Expected corresponding JSX closing tag for <>.",UnexpectedSequenceExpression:"Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?",UnexpectedToken:({unexpected:e,HTMLEntity:t})=>`Unexpected token \`${e}\`. Did you mean \`${t}\` or \`{'${e}'}\`?`,UnsupportedJsxValue:"JSX value should be either an expression or a quoted JSX text.",UnterminatedJsxContent:"Unterminated JSX contents.",UnwrappedAdjacentJSXElements:"Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>?"});function mt(e){return!!e&&("JSXOpeningFragment"===e.type||"JSXClosingFragment"===e.type)}function ht(e){if("JSXIdentifier"===e.type)return e.name;if("JSXNamespacedName"===e.type)return e.namespace.name+":"+e.name.name;if("JSXMemberExpression"===e.type)return ht(e.object)+"."+ht(e.property);throw new Error("Node had unexpected type: "+e.type)}class Tt extends he{constructor(...e){super(...e),this.types=new Set,this.enums=new Set,this.constEnums=new Set,this.classes=new Set,this.exportOnlyBindings=new Set}}class St extends Te{constructor(...e){super(...e),this.importsStack=[]}createScope(e){return this.importsStack.push(new Set),new Tt(e)}enter(e){256==e&&this.importsStack.push(new Set),super.enter(e)}exit(){const e=super.exit();return 256==e&&this.importsStack.pop(),e}hasImport(e,t){const n=this.importsStack.length;if(this.importsStack[n-1].has(e))return!0;if(!t&&n>1)for(let t=0;t<n-1;t++)if(this.importsStack[t].has(e))return!0;return!1}declareName(e,t,n){if(4096&t)return this.hasImport(e,!0)&&this.parser.raise(S.VarRedeclaration,{at:n,identifierName:e}),void this.importsStack[this.importsStack.length-1].add(e);const r=this.currentScope();if(1024&t)return this.maybeExportDefined(r,e),void r.exportOnlyBindings.add(e);super.declareName(e,t,n),2&t&&(1&t||(this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e)),r.types.add(e)),256&t&&r.enums.add(e),512&t&&r.constEnums.add(e),128&t&&r.classes.add(e)}isRedeclaredInScope(e,t,n){return e.enums.has(t)?!(256&n)||!!(512&n)!==e.constEnums.has(t):128&n&&e.classes.has(t)?!!e.lexical.has(t)&&!!(1&n):!!(2&n&&e.types.has(t))||super.isRedeclaredInScope(e,t,n)}checkLocalExport(e){const{name:t}=e;if(!this.hasImport(t)){for(let e=this.scopeStack.length-1;e>=0;e--){const n=this.scopeStack[e];if(n.types.has(t)||n.exportOnlyBindings.has(t))return}super.checkLocalExport(e)}}}const bt=e=>"ParenthesizedExpression"===e.type?bt(e.expression):e;class Et extends ot{toAssignable(e,t=!1){var n,r;let a;switch(("ParenthesizedExpression"===e.type||null!=(n=e.extra)&&n.parenthesized)&&(a=bt(e),t?"Identifier"===a.type?this.expressionScope.recordArrowParameterBindingError(S.InvalidParenthesizedAssignment,{at:e}):"MemberExpression"!==a.type&&this.raise(S.InvalidParenthesizedAssignment,{at:e}):this.raise(S.InvalidParenthesizedAssignment,{at:e})),e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern";for(let n=0,r=e.properties.length,a=r-1;n<r;n++){var i;const r=e.properties[n],s=n===a;this.toAssignableObjectExpressionProp(r,s,t),s&&"RestElement"===r.type&&null!=(i=e.extra)&&i.trailingCommaLoc&&this.raise(S.RestTrailingComma,{at:e.extra.trailingCommaLoc})}break;case"ObjectProperty":{const{key:n,value:r}=e;this.isPrivateName(n)&&this.classScope.usePrivateName(this.getPrivateNameSV(n),n.loc.start),this.toAssignable(r,t);break}case"SpreadElement":throw new Error("Internal @babel/parser error (this is a bug, please report it). SpreadElement should be converted by .toAssignable's caller.");case"ArrayExpression":e.type="ArrayPattern",this.toAssignableList(e.elements,null==(r=e.extra)?void 0:r.trailingCommaLoc,t);break;case"AssignmentExpression":"="!==e.operator&&this.raise(S.MissingEqInAssignment,{at:e.left.loc.end}),e.type="AssignmentPattern",delete e.operator,this.toAssignable(e.left,t);break;case"ParenthesizedExpression":this.toAssignable(a,t)}}toAssignableObjectExpressionProp(e,t,n){if("ObjectMethod"===e.type)this.raise("get"===e.kind||"set"===e.kind?S.PatternHasAccessor:S.PatternHasMethod,{at:e.key});else if("SpreadElement"===e.type){e.type="RestElement";const r=e.argument;this.checkToRestConversion(r,!1),this.toAssignable(r,n),t||this.raise(S.RestTrailingComma,{at:e})}else this.toAssignable(e,n)}toAssignableList(e,t,n){const r=e.length-1;for(let a=0;a<=r;a++){const i=e[a];if(i){if("SpreadElement"===i.type){i.type="RestElement";const e=i.argument;this.checkToRestConversion(e,!0),this.toAssignable(e,n)}else this.toAssignable(i,n);"RestElement"===i.type&&(a<r?this.raise(S.RestTrailingComma,{at:i}):t&&this.raise(S.RestTrailingComma,{at:t}))}}}isAssignable(e,t){switch(e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{const t=e.properties.length-1;return e.properties.every(((e,n)=>"ObjectMethod"!==e.type&&(n===t||"SpreadElement"!==e.type)&&this.isAssignable(e)))}case"ObjectProperty":return this.isAssignable(e.value);case"SpreadElement":return this.isAssignable(e.argument);case"ArrayExpression":return e.elements.every((e=>null===e||this.isAssignable(e)));case"AssignmentExpression":return"="===e.operator;case"ParenthesizedExpression":return this.isAssignable(e.expression);case"MemberExpression":case"OptionalMemberExpression":return!t;default:return!1}}toReferencedList(e,t){return e}toReferencedListDeep(e,t){this.toReferencedList(e,t);for(const t of e)"ArrayExpression"===(null==t?void 0:t.type)&&this.toReferencedListDeep(t.elements)}parseSpread(e){const t=this.startNode();return this.next(),t.argument=this.parseMaybeAssignAllowIn(e,void 0),this.finishNode(t,"SpreadElement")}parseRestBinding(){const e=this.startNode();return this.next(),e.argument=this.parseBindingAtom(),this.finishNode(e,"RestElement")}parseBindingAtom(){switch(this.state.type){case 0:{const e=this.startNode();return this.next(),e.elements=this.parseBindingList(3,93,1),this.finishNode(e,"ArrayPattern")}case 5:return this.parseObjectLike(8,!0)}return this.parseIdentifier()}parseBindingList(e,t,n){const r=1&n,a=[];let i=!0;for(;!this.eat(e);)if(i?i=!1:this.expect(12),r&&this.match(12))a.push(null);else{if(this.eat(e))break;if(this.match(21)){if(a.push(this.parseAssignableListItemTypes(this.parseRestBinding(),n)),!this.checkCommaAfterRest(t)){this.expect(e);break}}else{const e=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(S.UnsupportedParameterDecorator,{at:this.state.startLoc});this.match(26);)e.push(this.parseDecorator());a.push(this.parseAssignableListItem(n,e))}}return a}parseBindingRestProperty(e){return this.next(),e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,"RestElement")}parseBindingProperty(){const e=this.startNode(),{type:t,startLoc:n}=this.state;return 21===t?this.parseBindingRestProperty(e):(136===t?(this.expectPlugin("destructuringPrivate",n),this.classScope.usePrivateName(this.state.value,n),e.key=this.parsePrivateName()):this.parsePropertyName(e),e.method=!1,this.parseObjPropValue(e,n,!1,!1,!0,!1))}parseAssignableListItem(e,t){const n=this.parseMaybeDefault();this.parseAssignableListItemTypes(n,e);const r=this.parseMaybeDefault(n.loc.start,n);return t.length&&(n.decorators=t),r}parseAssignableListItemTypes(e,t){return e}parseMaybeDefault(e,t){var n;if(null!=e||(e=this.state.startLoc),t=null!=(n=t)?n:this.parseBindingAtom(),!this.eat(29))return t;const r=this.startNodeAt(e);return r.left=t,r.right=this.parseMaybeAssignAllowIn(),this.finishNode(r,"AssignmentPattern")}isValidLVal(e,t,n){return r={AssignmentPattern:"left",RestElement:"argument",ObjectProperty:"value",ParenthesizedExpression:"expression",ArrayPattern:"elements",ObjectPattern:"properties"},a=e,Object.hasOwnProperty.call(r,a)&&r[a];var r,a}checkLVal(e,{in:t,binding:n=64,checkClashes:r=!1,strictModeChanged:a=!1,hasParenthesizedAncestor:i=!1}){var s;const o=e.type;if(this.isObjectMethod(e))return;if("MemberExpression"===o)return void(64!==n&&this.raise(S.InvalidPropertyBindingPattern,{at:e}));if("Identifier"===o){this.checkIdentifier(e,n,a);const{name:t}=e;return void(r&&(r.has(t)?this.raise(S.ParamDupe,{at:e}):r.add(t)))}const l=this.isValidLVal(o,!(i||null!=(s=e.extra)&&s.parenthesized)&&"AssignmentExpression"===t.type,n);if(!0===l)return;if(!1===l){const r=64===n?S.InvalidLhs:S.InvalidLhsBinding;return void this.raise(r,{at:e,ancestor:t})}const[p,c]=Array.isArray(l)?l:[l,"ParenthesizedExpression"===o],u="ArrayPattern"===o||"ObjectPattern"===o||"ParenthesizedExpression"===o?{type:o}:t;for(const t of[].concat(e[p]))t&&this.checkLVal(t,{in:u,binding:n,checkClashes:r,strictModeChanged:a,hasParenthesizedAncestor:c})}checkIdentifier(e,t,n=!1){this.state.strict&&(n?ye(e.name,this.inModule):fe(e.name))&&(64===t?this.raise(S.StrictEvalArguments,{at:e,referenceName:e.name}):this.raise(S.StrictEvalArgumentsBinding,{at:e,bindingName:e.name})),8192&t&&"let"===e.name&&this.raise(S.LetInLexicalBinding,{at:e}),64&t||this.declareNameFromIdentifier(e,t)}declareNameFromIdentifier(e,t){this.scope.declareName(e.name,t,e.loc.start)}checkToRestConversion(e,t){switch(e.type){case"ParenthesizedExpression":this.checkToRestConversion(e.expression,t);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(t)break;default:this.raise(S.InvalidRestAssignmentPattern,{at:e})}}checkCommaAfterRest(e){return!!this.match(12)&&(this.raise(this.lookaheadCharCode()===e?S.RestTrailingComma:S.ElementAfterRest,{at:this.state.startLoc}),!0)}}function Pt(e){if(!e)throw new Error("Assert fail")}const xt=T`typescript`({AbstractMethodHasImplementation:({methodName:e})=>`Method '${e}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:e})=>`Property '${e}' cannot have an initializer because it is marked abstract.`,AccesorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccesorCannotHaveTypeParameters:"An accessor cannot have type parameters.",AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference:"A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference.",ConstructorHasTypeParameters:"Type parameters cannot appear on a constructor declaration.",DeclareAccessor:({kind:e})=>`'declare' is not allowed in ${e}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:e})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:e})=>`Duplicate modifier: '${e}'.`,EmptyHeritageClauseType:({token:e})=>`'${e}' list cannot be empty.`,EmptyTypeArguments:"Type argument list cannot be empty.",EmptyTypeParameters:"Type parameter list cannot be empty.",ExpectedAmbientAfterExportDeclare:"'export declare' must be followed by an ambient declaration.",ImportAliasHasImportType:"An import alias can not use 'import type'.",ImportReflectionHasImportType:"An `import module` declaration can not use `type` modifier",IncompatibleModifiers:({modifiers:e})=>`'${e[0]}' modifier cannot be used with '${e[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:e})=>`Index signatures cannot have an accessibility modifier ('${e}').`,IndexSignatureHasDeclare:"Index signatures cannot have the 'declare' modifier.",IndexSignatureHasOverride:"'override' modifier cannot appear on an index signature.",IndexSignatureHasStatic:"Index signatures cannot have the 'static' modifier.",InitializerNotAllowedInAmbientContext:"Initializers are not allowed in ambient contexts.",InvalidModifierOnTypeMember:({modifier:e})=>`'${e}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:e})=>`'${e}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:e})=>`'${e}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:e})=>`'${e[0]}' modifier must precede '${e[1]}' modifier.`,InvalidPropertyAccessAfterInstantiationExpression:"Invalid property access after an instantiation expression. You can either wrap the instantiation expression in parentheses, or delete the type arguments.",InvalidTupleMemberLabel:"Tuple members must be labeled with a simple identifier.",MissingInterfaceName:"'interface' declarations must be followed by an identifier.",MixedLabeledAndUnlabeledElements:"Tuple members must all have names or all not have names.",NonAbstractClassHasAbstractMethod:"Abstract methods can only appear within an abstract class.",NonClassMethodPropertyHasAbstractModifer:"'abstract' modifier can only appear on a class, method, or property declaration.",OptionalTypeBeforeRequired:"A required element cannot follow an optional element.",OverrideNotInSubClass:"This member cannot have an 'override' modifier because its containing class does not extend another class.",PatternIsOptional:"A binding pattern parameter cannot be optional in an implementation signature.",PrivateElementHasAbstract:"Private elements cannot have the 'abstract' modifier.",PrivateElementHasAccessibility:({modifier:e})=>`Private elements cannot have an accessibility modifier ('${e}').`,ReadonlyForMethodSignature:"'readonly' modifier can only appear on a property declaration or index signature.",ReservedArrowTypeParam:"This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma, as in `<T,>() => ...`.",ReservedTypeAssertion:"This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead.",SetAccesorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccesorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccesorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:e})=>`Single type parameter ${e} should have a trailing comma. Example usage: <${e},>.`,StaticBlockCannotHaveModifier:"Static class blocks cannot have any modifier.",TupleOptionalAfterType:"A labeled tuple optional element must be declared using a question mark after the name and before the colon (`name?: type`), rather than after the type (`name: type?`).",TypeAnnotationAfterAssign:"Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.",TypeImportCannotSpecifyDefaultAndNamed:"A type-only import can specify a default import or named bindings, but not both.",TypeModifierIsUsedInTypeExports:"The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement.",TypeModifierIsUsedInTypeImports:"The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement.",UnexpectedParameterModifier:"A parameter property is only allowed in a constructor implementation.",UnexpectedReadonly:"'readonly' type modifier is only permitted on array and tuple literal types.",UnexpectedTypeAnnotation:"Did not expect a type annotation here.",UnexpectedTypeCastInParameter:"Unexpected type cast in parameter position.",UnsupportedImportTypeArgument:"Argument in a type import must be a string literal.",UnsupportedParameterPropertyKind:"A parameter property may not be declared using a binding pattern.",UnsupportedSignatureParameterKind:({type:e})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${e}.`});function gt(e){return"private"===e||"public"===e||"protected"===e}function At(e){return"in"===e||"out"===e}function vt(e){if("MemberExpression"!==e.type)return!1;const{computed:t,property:n}=e;return(!t||"StringLiteral"===n.type||!("TemplateLiteral"!==n.type||n.expressions.length>0))&&Nt(e.object)}function Ot(e,t){var n;const{type:r}=e;if(null!=(n=e.extra)&&n.parenthesized)return!1;if(t){if("Literal"===r){const{value:t}=e;if("string"==typeof t||"boolean"==typeof t)return!0}}else if("StringLiteral"===r||"BooleanLiteral"===r)return!0;return!(!It(e,t)&&!function(e,t){if("UnaryExpression"===e.type){const{operator:n,argument:r}=e;if("-"===n&&It(r,t))return!0}return!1}(e,t))||"TemplateLiteral"===r&&0===e.expressions.length||!!vt(e)}function It(e,t){return t?"Literal"===e.type&&("number"==typeof e.value||"bigint"in e):"NumericLiteral"===e.type||"BigIntLiteral"===e.type}function Nt(e){return"Identifier"===e.type||"MemberExpression"===e.type&&!e.computed&&Nt(e.object)}const Dt=T`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."});function Ct(e,t){const[n,r]="string"==typeof t?[t,{}]:t,a=Object.keys(r),i=0===a.length;return e.some((e=>{if("string"==typeof e)return i&&e===n;{const[t,i]=e;if(t!==n)return!1;for(const e of a)if(i[e]!==r[e])return!1;return!0}}))}function wt(e,t,n){const r=e.find((e=>Array.isArray(e)?e[0]===t:e===t));return r&&Array.isArray(r)&&r.length>1?r[1][n]:null}const Lt=["minimal","fsharp","hack","smart"],jt=["^^","@@","^","%","#"],_t=["hash","bar"],Mt={estree:e=>class extends e{parse(){const e=P(super.parse());return this.options.tokens&&(e.tokens=e.tokens.map(P)),e}parseRegExpLiteral({pattern:e,flags:t}){let n=null;try{n=new RegExp(e,t)}catch(e){}const r=this.estreeParseLiteral(n);return r.regex={pattern:e,flags:t},r}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch(e){t=null}const n=this.estreeParseLiteral(t);return n.bigint=String(n.value||e),n}parseDecimalLiteral(e){const t=this.estreeParseLiteral(null);return t.decimal=String(t.value||e),t}estreeParseLiteral(e){return this.parseLiteral(e,"Literal")}parseStringLiteral(e){return this.estreeParseLiteral(e)}parseNumericLiteral(e){return this.estreeParseLiteral(e)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(e){return this.estreeParseLiteral(e)}directiveToStmt(e){const t=e.value;delete e.value,t.type="Literal",t.raw=t.extra.raw,t.value=t.extra.expressionValue;const n=e;return n.type="ExpressionStatement",n.expression=t,n.directive=t.extra.rawValue,delete t.extra,n}initFunction(e,t){super.initFunction(e,t),e.expression=!1}checkDeclaration(e){null!=e&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return"ExpressionStatement"===e.type&&"Literal"===e.expression.type&&"string"==typeof e.expression.value&&!(null!=(t=e.expression.extra)&&t.parenthesized)}parseBlockBody(e,t,n,r,a){super.parseBlockBody(e,t,n,r,a);const i=e.directives.map((e=>this.directiveToStmt(e)));e.body=i.concat(e.body),delete e.directives}pushClassMethod(e,t,n,r,a,i){this.parseMethod(t,n,r,a,i,"ClassMethod",!0),t.typeParameters&&(t.value.typeParameters=t.typeParameters,delete t.typeParameters),e.body.push(t)}parsePrivateName(){const e=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){const t=super.getPrivateNameSV(e);return delete e.id,e.name=t,e.type="PrivateIdentifier",e}isPrivateName(e){return this.getPluginOption("estree","classFeatures")?"PrivateIdentifier"===e.type:super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption("estree","classFeatures")?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){const n=super.parseLiteral(e,t);return n.raw=n.extra.raw,delete n.extra,n}parseFunctionBody(e,t,n=!1){super.parseFunctionBody(e,t,n),e.expression="BlockStatement"!==e.body.type}parseMethod(e,t,n,r,a,i,s=!1){let o=this.startNode();return o.kind=e.kind,o=super.parseMethod(o,t,n,r,a,i,s),o.type="FunctionExpression",delete o.kind,e.value=o,"ClassPrivateMethod"===i&&(e.computed=!1),this.finishNode(e,"MethodDefinition")}parseClassProperty(...e){const t=super.parseClassProperty(...e);return this.getPluginOption("estree","classFeatures")?(t.type="PropertyDefinition",t):t}parseClassPrivateProperty(...e){const t=super.parseClassPrivateProperty(...e);return this.getPluginOption("estree","classFeatures")?(t.type="PropertyDefinition",t.computed=!1,t):t}parseObjectMethod(e,t,n,r,a){const i=super.parseObjectMethod(e,t,n,r,a);return i&&(i.type="Property","method"===i.kind&&(i.kind="init"),i.shorthand=!1),i}parseObjectProperty(e,t,n,r){const a=super.parseObjectProperty(e,t,n,r);return a&&(a.kind="init",a.type="Property"),a}isValidLVal(e,t,n){return"Property"===e?"value":super.isValidLVal(e,t,n)}isAssignable(e,t){return null!=e&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(null!=e&&this.isObjectProperty(e)){const{key:n,value:r}=e;this.isPrivateName(n)&&this.classScope.usePrivateName(this.getPrivateNameSV(n),n.loc.start),this.toAssignable(r,t)}else super.toAssignable(e,t)}toAssignableObjectExpressionProp(e,t,n){"get"===e.kind||"set"===e.kind?this.raise(S.PatternHasAccessor,{at:e.key}):e.method?this.raise(S.PatternHasMethod,{at:e.key}):super.toAssignableObjectExpressionProp(e,t,n)}finishCallExpression(e,t){const n=super.finishCallExpression(e,t);var r;"Import"===n.callee.type&&(n.type="ImportExpression",n.source=n.arguments[0],(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))&&(n.attributes=null!=(r=n.arguments[1])?r:null),delete n.arguments,delete n.callee);return n}toReferencedArguments(e){"ImportExpression"!==e.type&&super.toReferencedArguments(e)}parseExport(e,t){const n=this.state.lastTokStartLoc,r=super.parseExport(e,t);switch(r.type){case"ExportAllDeclaration":r.exported=null;break;case"ExportNamedDeclaration":1===r.specifiers.length&&"ExportNamespaceSpecifier"===r.specifiers[0].type&&(r.type="ExportAllDeclaration",r.exported=r.specifiers[0].exported,delete r.specifiers);case"ExportDefaultDeclaration":{var a;const{declaration:e}=r;"ClassDeclaration"===(null==e?void 0:e.type)&&(null==(a=e.decorators)?void 0:a.length)>0&&e.start===r.start&&this.resetStartLocation(r,n)}}return r}parseSubscript(e,t,n,r){const a=super.parseSubscript(e,t,n,r);if(r.optionalChainMember){if("OptionalMemberExpression"!==a.type&&"OptionalCallExpression"!==a.type||(a.type=a.type.substring(8)),r.stop){const e=this.startNodeAtNode(a);return e.expression=a,this.finishNode(e,"ChainExpression")}}else"MemberExpression"!==a.type&&"CallExpression"!==a.type||(a.optional=!1);return a}hasPropertyAsPrivateName(e){return"ChainExpression"===e.type&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return"Property"===e.type&&"init"===e.kind&&!e.method}isObjectMethod(e){return e.method||"get"===e.kind||"set"===e.kind}finishNodeAt(e,t,n){return P(super.finishNodeAt(e,t,n))}resetStartLocation(e,t){super.resetStartLocation(e,t),P(e)}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),P(e)}},jsx:e=>class extends e{jsxReadToken(){let e="",t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(yt.UnterminatedJsxContent,{at:this.state.startLoc});const n=this.input.charCodeAt(this.state.pos);switch(n){case 60:case 123:return this.state.pos===this.state.start?void(60===n&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(140)):super.getTokenFromCode(n)):(e+=this.input.slice(t,this.state.pos),void this.finishToken(139,e));case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;default:Ie(n)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){const t=this.input.charCodeAt(this.state.pos);let n;return++this.state.pos,13===t&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,n=e?"\n":"\r\n"):n=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,n}jsxReadString(e){let t="",n=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(S.UnterminatedString,{at:this.state.startLoc});const r=this.input.charCodeAt(this.state.pos);if(r===e)break;38===r?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadEntity(),n=this.state.pos):Ie(r)?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadNewLine(!1),n=this.state.pos):++this.state.pos}t+=this.input.slice(n,this.state.pos++),this.finishToken(131,t)}jsxReadEntity(){const e=++this.state.pos;if(35===this.codePointAtPos(this.state.pos)){++this.state.pos;let e=10;120===this.codePointAtPos(this.state.pos)&&(e=16,++this.state.pos);const t=this.readInt(e,void 0,!1,"bail");if(null!==t&&59===this.codePointAtPos(this.state.pos))return++this.state.pos,String.fromCodePoint(t)}else{let t=0,n=!1;for(;t++<10&&this.state.pos<this.length&&!(n=59==this.codePointAtPos(this.state.pos));)++this.state.pos;if(n){const t=this.input.slice(e,this.state.pos),n=ft[t];if(++this.state.pos,n)return n}}return this.state.pos=e,"&"}jsxReadWord(){let e;const t=this.state.pos;do{e=this.input.charCodeAt(++this.state.pos)}while(oe(e)||45===e);this.finishToken(138,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){const e=this.startNode();return this.match(138)?e.name=this.state.value:$(this.state.type)?e.name=G(this.state.type):this.unexpected(),this.next(),this.finishNode(e,"JSXIdentifier")}jsxParseNamespacedName(){const e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;const n=this.startNodeAt(e);return n.namespace=t,n.name=this.jsxParseIdentifier(),this.finishNode(n,"JSXNamespacedName")}jsxParseElementName(){const e=this.state.startLoc;let t=this.jsxParseNamespacedName();if("JSXNamespacedName"===t.type)return t;for(;this.eat(16);){const n=this.startNodeAt(e);n.object=t,n.property=this.jsxParseIdentifier(),t=this.finishNode(n,"JSXMemberExpression")}return t}jsxParseAttributeValue(){let e;switch(this.state.type){case 5:return e=this.startNode(),this.setContext(g.brace),this.next(),e=this.jsxParseExpressionContainer(e,g.j_oTag),"JSXEmptyExpression"===e.expression.type&&this.raise(yt.AttributeIsEmpty,{at:e}),e;case 140:case 131:return this.parseExprAtom();default:throw this.raise(yt.UnsupportedJsxValue,{at:this.state.startLoc})}}jsxParseEmptyExpression(){const e=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(e,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(e){return this.next(),e.expression=this.parseExpression(),this.setContext(g.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadChild")}jsxParseExpressionContainer(e,t){if(this.match(8))e.expression=this.jsxParseEmptyExpression();else{const t=this.parseExpression();e.expression=t}return this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXExpressionContainer")}jsxParseAttribute(){const e=this.startNode();return this.match(5)?(this.setContext(g.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(g.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,"JSXSpreadAttribute")):(e.name=this.jsxParseNamespacedName(),e.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(e,"JSXAttribute"))}jsxParseOpeningElementAt(e){const t=this.startNodeAt(e);return this.eat(141)?this.finishNode(t,"JSXOpeningFragment"):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))}jsxParseOpeningElementAfterName(e){const t=[];for(;!this.match(56)&&!this.match(141);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(141),this.finishNode(e,"JSXOpeningElement")}jsxParseClosingElementAt(e){const t=this.startNodeAt(e);return this.eat(141)?this.finishNode(t,"JSXClosingFragment"):(t.name=this.jsxParseElementName(),this.expect(141),this.finishNode(t,"JSXClosingElement"))}jsxParseElementAt(e){const t=this.startNodeAt(e),n=[],r=this.jsxParseOpeningElementAt(e);let a=null;if(!r.selfClosing){e:for(;;)switch(this.state.type){case 140:if(e=this.state.startLoc,this.next(),this.eat(56)){a=this.jsxParseClosingElementAt(e);break e}n.push(this.jsxParseElementAt(e));break;case 139:n.push(this.parseExprAtom());break;case 5:{const e=this.startNode();this.setContext(g.brace),this.next(),this.match(21)?n.push(this.jsxParseSpreadChild(e)):n.push(this.jsxParseExpressionContainer(e,g.j_expr));break}default:this.unexpected()}mt(r)&&!mt(a)&&null!==a?this.raise(yt.MissingClosingTagFragment,{at:a}):!mt(r)&&mt(a)?this.raise(yt.MissingClosingTagElement,{at:a,openingTagName:ht(r.name)}):mt(r)||mt(a)||ht(a.name)!==ht(r.name)&&this.raise(yt.MissingClosingTagElement,{at:a,openingTagName:ht(r.name)})}if(mt(r)?(t.openingFragment=r,t.closingFragment=a):(t.openingElement=r,t.closingElement=a),t.children=n,this.match(47))throw this.raise(yt.UnwrappedAdjacentJSXElements,{at:this.state.startLoc});return mt(r)?this.finishNode(t,"JSXFragment"):this.finishNode(t,"JSXElement")}jsxParseElement(){const e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){const{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(139)?this.parseLiteral(this.state.value,"JSXText"):this.match(140)?this.jsxParseElement():this.match(47)&&33!==this.input.charCodeAt(this.state.pos)?(this.replaceToken(140),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){const t=this.curContext();if(t!==g.j_expr){if(t===g.j_oTag||t===g.j_cTag){if(se(e))return void this.jsxReadWord();if(62===e)return++this.state.pos,void this.finishToken(141);if((34===e||39===e)&&t===g.j_oTag)return void this.jsxReadString(e)}if(60===e&&this.state.canStartJSXElement&&33!==this.input.charCodeAt(this.state.pos+1))return++this.state.pos,void this.finishToken(140);super.getTokenFromCode(e)}else this.jsxReadToken()}updateContext(e){const{context:t,type:n}=this.state;if(56===n&&140===e)t.splice(-2,2,g.j_cTag),this.state.canStartJSXElement=!1;else if(140===n)t.push(g.j_oTag);else if(141===n){const n=t[t.length-1];n===g.j_oTag&&56===e||n===g.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===g.j_expr):(this.setContext(g.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=B[n]}},flow:e=>class extends e{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return be}shouldParseTypes(){return this.getPluginOption("flow","all")||"flow"===this.flowPragma}shouldParseEnums(){return!!this.getPluginOption("flow","enums")}finishToken(e,t){131!==e&&13!==e&&28!==e&&void 0===this.flowPragma&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(void 0===this.flowPragma){const t=dt.exec(e.value);if(t)if("flow"===t[1])this.flowPragma="flow";else{if("noflow"!==t[1])throw new Error("Unexpected flow pragma");this.flowPragma="noflow"}}super.addComment(e)}flowParseTypeInitialiser(e){const t=this.state.inType;this.state.inType=!0,this.expect(e||14);const n=this.flowParseType();return this.state.inType=t,n}flowParsePredicate(){const e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(108),this.state.lastTokStart>t.index+1&&this.raise(pt.UnexpectedSpaceBetweenModuloChecks,{at:t}),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){const e=this.state.inType;this.state.inType=!0,this.expect(14);let t=null,n=null;return this.match(54)?(this.state.inType=e,n=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(54)&&(n=this.flowParsePredicate())),[t,n]}flowParseDeclareClass(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")}flowParseDeclareFunction(e){this.next();const t=e.id=this.parseIdentifier(),n=this.startNode(),r=this.startNode();this.match(47)?n.typeParameters=this.flowParseTypeParameterDeclaration():n.typeParameters=null,this.expect(10);const a=this.flowParseFunctionTypeParams();return n.params=a.params,n.rest=a.rest,n.this=a._this,this.expect(11),[n.returnType,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),r.typeAnnotation=this.finishNode(n,"FunctionTypeAnnotation"),t.typeAnnotation=this.finishNode(r,"TypeAnnotation"),this.resetEndLocation(t),this.semicolon(),this.scope.declareName(e.id.name,2048,e.id.loc.start),this.finishNode(e,"DeclareFunction")}flowParseDeclare(e,t){return this.match(80)?this.flowParseDeclareClass(e):this.match(68)?this.flowParseDeclareFunction(e):this.match(74)?this.flowParseDeclareVariable(e):this.eatContextual(125)?this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(pt.NestedDeclareModule,{at:this.state.lastTokStartLoc}),this.flowParseDeclareModule(e)):this.isContextual(128)?this.flowParseDeclareTypeAlias(e):this.isContextual(129)?this.flowParseDeclareOpaqueType(e):this.isContextual(127)?this.flowParseDeclareInterface(e):this.match(82)?this.flowParseDeclareExportDeclaration(e,t):void this.unexpected()}flowParseDeclareVariable(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(e.id.name,5,e.id.loc.start),this.semicolon(),this.finishNode(e,"DeclareVariable")}flowParseDeclareModule(e){this.scope.enter(0),this.match(131)?e.id=super.parseExprAtom():e.id=this.parseIdentifier();const t=e.body=this.startNode(),n=t.body=[];for(this.expect(5);!this.match(8);){let e=this.startNode();this.match(83)?(this.next(),this.isContextual(128)||this.match(87)||this.raise(pt.InvalidNonTypeImportInDeclareModule,{at:this.state.lastTokStartLoc}),super.parseImport(e)):(this.expectContextual(123,pt.UnsupportedStatementInDeclareModule),e=this.flowParseDeclare(e,!0)),n.push(e)}this.scope.exit(),this.expect(8),this.finishNode(t,"BlockStatement");let r=null,a=!1;return n.forEach((e=>{!function(e){return"DeclareExportAllDeclaration"===e.type||"DeclareExportDeclaration"===e.type&&(!e.declaration||"TypeAlias"!==e.declaration.type&&"InterfaceDeclaration"!==e.declaration.type)}(e)?"DeclareModuleExports"===e.type&&(a&&this.raise(pt.DuplicateDeclareModuleExports,{at:e}),"ES"===r&&this.raise(pt.AmbiguousDeclareModuleKind,{at:e}),r="CommonJS",a=!0):("CommonJS"===r&&this.raise(pt.AmbiguousDeclareModuleKind,{at:e}),r="ES")})),e.kind=r||"CommonJS",this.finishNode(e,"DeclareModule")}flowParseDeclareExportDeclaration(e,t){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?e.declaration=this.flowParseDeclare(this.startNode()):(e.declaration=this.flowParseType(),this.semicolon()),e.default=!0,this.finishNode(e,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(128)||this.isContextual(127))&&!t){const e=this.state.value;throw this.raise(pt.UnsupportedDeclareExportKind,{at:this.state.startLoc,unsupportedExportKind:e,suggestion:ut[e]})}return this.match(74)||this.match(68)||this.match(80)||this.isContextual(129)?(e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration")):this.match(55)||this.match(5)||this.isContextual(127)||this.isContextual(128)||this.isContextual(129)?("ExportNamedDeclaration"===(e=this.parseExport(e,null)).type&&(e.type="ExportDeclaration",e.default=!1,delete e.exportKind),e.type="Declare"+e.type,e):void this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(109),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")}flowParseDeclareTypeAlias(e){this.next();const t=this.flowParseTypeAlias(e);return t.type="DeclareTypeAlias",t}flowParseDeclareOpaqueType(e){this.next();const t=this.flowParseOpaqueType(e,!0);return t.type="DeclareOpaqueType",t}flowParseDeclareInterface(e){return this.next(),this.flowParseInterfaceish(e,!1),this.finishNode(e,"DeclareInterface")}flowParseInterfaceish(e,t){if(e.id=this.flowParseRestrictedIdentifier(!t,!0),this.scope.declareName(e.id.name,t?17:8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(!t&&this.eat(12));if(t){if(e.implements=[],e.mixins=[],this.eatContextual(115))do{e.mixins.push(this.flowParseInterfaceExtends())}while(this.eat(12));if(this.eatContextual(111))do{e.implements.push(this.flowParseInterfaceExtends())}while(this.eat(12))}e.body=this.flowParseObjectType({allowStatic:t,allowExact:!1,allowSpread:!1,allowProto:t,allowInexact:!1})}flowParseInterfaceExtends(){const e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")}checkNotUnderscore(e){"_"===e&&this.raise(pt.UnexpectedReservedUnderscore,{at:this.state.startLoc})}checkReservedType(e,t,n){lt.has(e)&&this.raise(n?pt.AssignReservedType:pt.UnexpectedReservedType,{at:t,reservedType:e})}flowParseRestrictedIdentifier(e,t){return this.checkReservedType(this.state.value,this.state.startLoc,t),this.parseIdentifier(e)}flowParseTypeAlias(e){return e.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,"TypeAlias")}flowParseOpaqueType(e,t){return this.expectContextual(128),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),this.match(47)?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(14)&&(e.supertype=this.flowParseTypeInitialiser(14)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(e,"OpaqueType")}flowParseTypeParameter(e=!1){const t=this.state.startLoc,n=this.startNode(),r=this.flowParseVariance(),a=this.flowParseTypeAnnotatableIdentifier();return n.name=a.name,n.variance=r,n.bound=a.typeAnnotation,this.match(29)?(this.eat(29),n.default=this.flowParseType()):e&&this.raise(pt.MissingTypeParamDefault,{at:t}),this.finishNode(n,"TypeParameter")}flowParseTypeParameterDeclaration(){const e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(140)?this.next():this.unexpected();let n=!1;do{const e=this.flowParseTypeParameter(n);t.params.push(e),e.default&&(n=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")}flowParseTypeParameterInstantiation(){const e=this.startNode(),t=this.state.inType;e.params=[],this.state.inType=!0,this.expect(47);const n=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);return this.state.noAnonFunctionType=n,this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){const e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)e.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")}flowParseInterfaceType(){const e=this.startNode();if(this.expectContextual(127),e.extends=[],this.eat(81))do{e.extends.push(this.flowParseInterfaceExtends())}while(this.eat(12));return e.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(e,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(132)||this.match(131)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,n){return e.static=t,14===this.lookahead().type?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(3),e.value=this.flowParseTypeInitialiser(),e.variance=n,this.finishNode(e,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(e,t){return e.static=t,e.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(e.method=!0,e.optional=!1,e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start))):(e.method=!1,this.eat(17)&&(e.optional=!0),e.value=this.flowParseTypeInitialiser()),this.finishNode(e,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(e){for(e.params=[],e.rest=null,e.typeParameters=null,e.this=null,this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(e.this=this.flowParseFunctionTypeParam(!0),e.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(e.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(e,t){const n=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(n),this.finishNode(e,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:e,allowExact:t,allowSpread:n,allowProto:r,allowInexact:a}){const i=this.state.inType;this.state.inType=!0;const s=this.startNode();let o,l;s.callProperties=[],s.properties=[],s.indexers=[],s.internalSlots=[];let p=!1;for(t&&this.match(6)?(this.expect(6),o=9,l=!0):(this.expect(5),o=8,l=!1),s.exact=l;!this.match(o);){let t=!1,i=null,o=null;const c=this.startNode();if(r&&this.isContextual(116)){const t=this.lookahead();14!==t.type&&17!==t.type&&(this.next(),i=this.state.startLoc,e=!1)}if(e&&this.isContextual(104)){const e=this.lookahead();14!==e.type&&17!==e.type&&(this.next(),t=!0)}const u=this.flowParseVariance();if(this.eat(0))null!=i&&this.unexpected(i),this.eat(0)?(u&&this.unexpected(u.loc.start),s.internalSlots.push(this.flowParseObjectTypeInternalSlot(c,t))):s.indexers.push(this.flowParseObjectTypeIndexer(c,t,u));else if(this.match(10)||this.match(47))null!=i&&this.unexpected(i),u&&this.unexpected(u.loc.start),s.callProperties.push(this.flowParseObjectTypeCallProperty(c,t));else{let e="init";(this.isContextual(98)||this.isContextual(103))&&J(this.lookahead().type)&&(e=this.state.value,this.next());const r=this.flowParseObjectTypeProperty(c,t,i,u,e,n,null!=a?a:!l);null===r?(p=!0,o=this.state.lastTokStartLoc):s.properties.push(r)}this.flowObjectTypeSemicolon(),!o||this.match(8)||this.match(9)||this.raise(pt.UnexpectedExplicitInexactInObject,{at:o})}this.expect(o),n&&(s.inexact=p);const c=this.finishNode(s,"ObjectTypeAnnotation");return this.state.inType=i,c}flowParseObjectTypeProperty(e,t,n,r,a,i,s){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(i?s||this.raise(pt.InexactInsideExact,{at:this.state.lastTokStartLoc}):this.raise(pt.InexactInsideNonObject,{at:this.state.lastTokStartLoc}),r&&this.raise(pt.InexactVariance,{at:r}),null):(i||this.raise(pt.UnexpectedSpreadType,{at:this.state.lastTokStartLoc}),null!=n&&this.unexpected(n),r&&this.raise(pt.SpreadVariance,{at:r}),e.argument=this.flowParseType(),this.finishNode(e,"ObjectTypeSpreadProperty"));{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=null!=n,e.kind=a;let s=!1;return this.match(47)||this.match(10)?(e.method=!0,null!=n&&this.unexpected(n),r&&this.unexpected(r.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),"get"!==a&&"set"!==a||this.flowCheckGetterSetterParams(e),!i&&"constructor"===e.key.name&&e.value.this&&this.raise(pt.ThisParamBannedInConstructor,{at:e.value.this})):("init"!==a&&this.unexpected(),e.method=!1,this.eat(17)&&(s=!0),e.value=this.flowParseTypeInitialiser(),e.variance=r),e.optional=s,this.finishNode(e,"ObjectTypeProperty")}}flowCheckGetterSetterParams(e){const t="get"===e.kind?0:1,n=e.value.params.length+(e.value.rest?1:0);e.value.this&&this.raise("get"===e.kind?pt.GetterMayNotHaveThisParam:pt.SetterMayNotHaveThisParam,{at:e.value.this}),n!==t&&this.raise("get"===e.kind?S.BadGetterArity:S.BadSetterArity,{at:e}),"set"===e.kind&&e.value.rest&&this.raise(S.BadSetterRestParameter,{at:e})}flowObjectTypeSemicolon(){this.eat(13)||this.eat(12)||this.match(8)||this.match(9)||this.unexpected()}flowParseQualifiedTypeIdentifier(e,t){null!=e||(e=this.state.startLoc);let n=t||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){const t=this.startNodeAt(e);t.qualification=n,t.id=this.flowParseRestrictedIdentifier(!0),n=this.finishNode(t,"QualifiedTypeIdentifier")}return n}flowParseGenericType(e,t){const n=this.startNodeAt(e);return n.typeParameters=null,n.id=this.flowParseQualifiedTypeIdentifier(e,t),this.match(47)&&(n.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(n,"GenericTypeAnnotation")}flowParseTypeofType(){const e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")}flowParseTupleType(){const e=this.startNode();for(e.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(e.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(e,"TupleTypeAnnotation")}flowParseFunctionTypeParam(e){let t=null,n=!1,r=null;const a=this.startNode(),i=this.lookahead(),s=78===this.state.type;return 14===i.type||17===i.type?(s&&!e&&this.raise(pt.ThisParamMustBeFirst,{at:a}),t=this.parseIdentifier(s),this.eat(17)&&(n=!0,s&&this.raise(pt.ThisParamMayNotBeOptional,{at:a})),r=this.flowParseTypeInitialiser()):r=this.flowParseType(),a.name=t,a.optional=n,a.typeAnnotation=r,this.finishNode(a,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(e){const t=this.startNodeAt(e.loc.start);return t.name=null,t.optional=!1,t.typeAnnotation=e,this.finishNode(t,"FunctionTypeParam")}flowParseFunctionTypeParams(e=[]){let t=null,n=null;for(this.match(78)&&(n=this.flowParseFunctionTypeParam(!0),n.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)e.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(t=this.flowParseFunctionTypeParam(!1)),{params:e,rest:t,_this:n}}flowIdentToTypeAnnotation(e,t,n){switch(n.name){case"any":return this.finishNode(t,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(t,"BooleanTypeAnnotation");case"mixed":return this.finishNode(t,"MixedTypeAnnotation");case"empty":return this.finishNode(t,"EmptyTypeAnnotation");case"number":return this.finishNode(t,"NumberTypeAnnotation");case"string":return this.finishNode(t,"StringTypeAnnotation");case"symbol":return this.finishNode(t,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(n.name),this.flowParseGenericType(e,n)}}flowParsePrimaryType(){const e=this.state.startLoc,t=this.startNode();let n,r,a=!1;const i=this.state.noAnonFunctionType;switch(this.state.type){case 5:return this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!0,allowProto:!1,allowInexact:!0});case 6:return this.flowParseObjectType({allowStatic:!1,allowExact:!0,allowSpread:!0,allowProto:!1,allowInexact:!1});case 0:return this.state.noAnonFunctionType=!1,r=this.flowParseTupleType(),this.state.noAnonFunctionType=i,r;case 47:return t.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),n=this.flowParseFunctionTypeParams(),t.params=n.params,t.rest=n.rest,t.this=n._this,this.expect(11),this.expect(19),t.returnType=this.flowParseType(),this.finishNode(t,"FunctionTypeAnnotation");case 10:if(this.next(),!this.match(11)&&!this.match(21))if(U(this.state.type)||this.match(78)){const e=this.lookahead().type;a=17!==e&&14!==e}else a=!0;if(a){if(this.state.noAnonFunctionType=!1,r=this.flowParseType(),this.state.noAnonFunctionType=i,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&19===this.lookahead().type))return this.expect(11),r;this.eat(12)}return n=r?this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(r)]):this.flowParseFunctionTypeParams(),t.params=n.params,t.rest=n.rest,t.this=n._this,this.expect(11),this.expect(19),t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation");case 131:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return t.value=this.match(85),this.next(),this.finishNode(t,"BooleanLiteralTypeAnnotation");case 53:if("-"===this.state.value){if(this.next(),this.match(132))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",t);if(this.match(133))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",t);throw this.raise(pt.UnexpectedSubtractionOperand,{at:this.state.startLoc})}return void this.unexpected();case 132:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 133:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(t,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(t,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(t,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(t,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if($(this.state.type)){const e=G(this.state.type);return this.next(),super.createIdentifier(t,e)}if(U(this.state.type))return this.isContextual(127)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,t,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){const e=this.state.startLoc;let t=this.flowParsePrimaryType(),n=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){const r=this.startNodeAt(e),a=this.eat(18);n=n||a,this.expect(0),!a&&this.match(3)?(r.elementType=t,this.next(),t=this.finishNode(r,"ArrayTypeAnnotation")):(r.objectType=t,r.indexType=this.flowParseType(),this.expect(3),n?(r.optional=a,t=this.finishNode(r,"OptionalIndexedAccessType")):t=this.finishNode(r,"IndexedAccessType"))}return t}flowParsePrefixType(){const e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){const e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){const t=this.startNodeAt(e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.this=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e}flowParseIntersectionType(){const e=this.startNode();this.eat(45);const t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return 1===e.types.length?t:this.finishNode(e,"IntersectionTypeAnnotation")}flowParseUnionType(){const e=this.startNode();this.eat(43);const t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return 1===e.types.length?t:this.finishNode(e,"UnionTypeAnnotation")}flowParseType(){const e=this.state.inType;this.state.inType=!0;const t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(130===this.state.type&&"_"===this.state.value){const e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}return this.flowParseType()}flowParseTypeAnnotation(){const e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(e){const t=e?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(t.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(t)),t}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}flowParseVariance(){let e=null;return this.match(53)?(e=this.startNode(),"+"===this.state.value?e.kind="plus":e.kind="minus",this.next(),this.finishNode(e,"Variance")):e}parseFunctionBody(e,t,n=!1){t?this.forwardNoArrowParamsConversionAt(e,(()=>super.parseFunctionBody(e,!0,n))):super.parseFunctionBody(e,!1,n)}parseFunctionBodyAndFinish(e,t,n=!1){if(this.match(14)){const t=this.startNode();[t.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),e.returnType=t.typeAnnotation?this.finishNode(t,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(e,t,n)}parseStatementLike(e){if(this.state.strict&&this.isContextual(127)){if(X(this.lookahead().type)){const e=this.startNode();return this.next(),this.flowParseInterface(e)}}else if(this.shouldParseEnums()&&this.isContextual(124)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}const t=super.parseStatementLike(e);return void 0!==this.flowPragma||this.isValidDirective(t)||(this.flowPragma=null),t}parseExpressionStatement(e,t,n){if("Identifier"===t.type)if("declare"===t.name){if(this.match(80)||U(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(U(this.state.type)){if("interface"===t.name)return this.flowParseInterface(e);if("type"===t.name)return this.flowParseTypeAlias(e);if("opaque"===t.name)return this.flowParseOpaqueType(e,!1)}return super.parseExpressionStatement(e,t,n)}shouldParseExportDeclaration(){const{type:e}=this.state;return q(e)||this.shouldParseEnums()&&124===e?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){const{type:e}=this.state;return q(e)||this.shouldParseEnums()&&124===e?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.shouldParseEnums()&&this.isContextual(124)){const e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}return super.parseExportDefaultExpression()}parseConditional(e,t,n){if(!this.match(17))return e;if(this.state.maybeInArrowParameters){const t=this.lookaheadCharCode();if(44===t||61===t||58===t||41===t)return this.setOptionalParametersError(n),e}this.expect(17);const r=this.state.clone(),a=this.state.noArrowAt,i=this.startNodeAt(t);let{consequent:s,failed:o}=this.tryParseConditionalConsequent(),[l,p]=this.getArrowLikeExpressions(s);if(o||p.length>0){const e=[...a];if(p.length>0){this.state=r,this.state.noArrowAt=e;for(let t=0;t<p.length;t++)e.push(p[t].start);({consequent:s,failed:o}=this.tryParseConditionalConsequent()),[l,p]=this.getArrowLikeExpressions(s)}o&&l.length>1&&this.raise(pt.AmbiguousConditionalArrow,{at:r.startLoc}),o&&1===l.length&&(this.state=r,e.push(l[0].start),this.state.noArrowAt=e,({consequent:s,failed:o}=this.tryParseConditionalConsequent()))}return this.getArrowLikeExpressions(s,!0),this.state.noArrowAt=a,this.expect(14),i.test=e,i.consequent=s,i.alternate=this.forwardNoArrowParamsConversionAt(i,(()=>this.parseMaybeAssign(void 0,void 0))),this.finishNode(i,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);const e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){const n=[e],r=[];for(;0!==n.length;){const e=n.pop();"ArrowFunctionExpression"===e.type?(e.typeParameters||!e.returnType?this.finishArrowValidation(e):r.push(e),n.push(e.body)):"ConditionalExpression"===e.type&&(n.push(e.consequent),n.push(e.alternate))}return t?(r.forEach((e=>this.finishArrowValidation(e))),[r,[]]):function(e,t){const n=[],r=[];for(let a=0;a<e.length;a++)(t(e[a])?n:r).push(e[a]);return[n,r]}(r,(e=>e.params.every((e=>this.isAssignable(e,!0)))))}finishArrowValidation(e){var t;this.toAssignableList(e.params,null==(t=e.extra)?void 0:t.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let n;return-1!==this.state.noArrowParamsConversionAt.indexOf(e.start)?(this.state.noArrowParamsConversionAt.push(this.state.start),n=t(),this.state.noArrowParamsConversionAt.pop()):n=t(),n}parseParenItem(e,t){if(e=super.parseParenItem(e,t),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){const n=this.startNodeAt(t);return n.expression=e,n.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(n,"TypeCastExpression")}return e}assertModuleNodeAllowed(e){"ImportDeclaration"===e.type&&("type"===e.importKind||"typeof"===e.importKind)||"ExportNamedDeclaration"===e.type&&"type"===e.exportKind||"ExportAllDeclaration"===e.type&&"type"===e.exportKind||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(128)){e.exportKind="type";const t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(t)}if(this.isContextual(129)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}if(this.isContextual(127)){e.exportKind="type";const t=this.startNode();return this.next(),this.flowParseInterface(t)}if(this.shouldParseEnums()&&this.isContextual(124)){e.exportKind="value";const t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}return super.parseExportDeclaration(e)}eatExportStar(e){return!!super.eatExportStar(e)||!(!this.isContextual(128)||55!==this.lookahead().type)&&(e.exportKind="type",this.next(),this.next(),!0)}maybeParseExportNamespaceSpecifier(e){const{startLoc:t}=this.state,n=super.maybeParseExportNamespaceSpecifier(e);return n&&"type"===e.exportKind&&this.unexpected(t),n}parseClassId(e,t,n){super.parseClassId(e,t,n),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,n){const{startLoc:r}=this.state;if(this.isContextual(123)){if(super.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,n),t.declare&&("ClassProperty"!==t.type&&"ClassPrivateProperty"!==t.type&&"PropertyDefinition"!==t.type?this.raise(pt.DeclareClassElement,{at:r}):t.value&&this.raise(pt.DeclareClassFieldInitializer,{at:t.value}))}isIterator(e){return"iterator"===e||"asyncIterator"===e}readIterator(){const e=super.readWord1(),t="@@"+e;this.isIterator(e)&&this.state.inType||this.raise(S.InvalidIdentifier,{at:this.state.curPosition(),identifierName:t}),this.finishToken(130,t)}getTokenFromCode(e){const t=this.input.charCodeAt(this.state.pos+1);123===e&&124===t?this.finishOp(6,2):!this.state.inType||62!==e&&60!==e?this.state.inType&&63===e?46===t?this.finishOp(18,2):this.finishOp(17,1):function(e,t,n){return 64===e&&64===t&&se(n)}(e,t,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e):this.finishOp(62===e?48:47,1)}isAssignable(e,t){return"TypeCastExpression"===e.type?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){t||"AssignmentExpression"!==e.type||"TypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,t)}toAssignableList(e,t,n){for(let t=0;t<e.length;t++){const n=e[t];"TypeCastExpression"===(null==n?void 0:n.type)&&(e[t]=this.typeCastToParameter(n))}super.toAssignableList(e,t,n)}toReferencedList(e,t){for(let r=0;r<e.length;r++){var n;const a=e[r];!a||"TypeCastExpression"!==a.type||null!=(n=a.extra)&&n.parenthesized||!(e.length>1)&&t||this.raise(pt.TypeCastInPattern,{at:a.typeAnnotation})}return e}parseArrayLike(e,t,n,r){const a=super.parseArrayLike(e,t,n,r);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(a.elements),a}isValidLVal(e,t,n){return"TypeCastExpression"===e||super.isValidLVal(e,t,n)}parseClassProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(e)}parseClassPrivateProperty(e){return this.match(14)&&(e.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(e){return!this.match(14)&&super.isNonstaticConstructor(e)}pushClassMethod(e,t,n,r,a,i){if(t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(e,t,n,r,a,i),t.params&&a){const e=t.params;e.length>0&&this.isThisParam(e[0])&&this.raise(pt.ThisParamBannedInConstructor,{at:t})}else if("MethodDefinition"===t.type&&a&&t.value.params){const e=t.value.params;e.length>0&&this.isThisParam(e[0])&&this.raise(pt.ThisParamBannedInConstructor,{at:t})}}pushClassPrivateMethod(e,t,n,r){t.variance&&this.unexpected(t.variance.loc.start),delete t.variance,this.match(47)&&(t.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(e,t,n,r)}parseClassSuper(e){if(super.parseClassSuper(e),e.superClass&&this.match(47)&&(e.superTypeParameters=this.flowParseTypeParameterInstantiation()),this.isContextual(111)){this.next();const t=e.implements=[];do{const e=this.startNode();e.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,t.push(this.finishNode(e,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);const t=this.getObjectOrClassMethodParams(e);if(t.length>0){const n=t[0];this.isThisParam(n)&&"get"===e.kind?this.raise(pt.GetterMayNotHaveThisParam,{at:n}):this.isThisParam(n)&&this.raise(pt.SetterMayNotHaveThisParam,{at:n})}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,n,r,a,i,s){let o;e.variance&&this.unexpected(e.variance.loc.start),delete e.variance,this.match(47)&&!i&&(o=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());const l=super.parseObjPropValue(e,t,n,r,a,i,s);return o&&((l.value||l).typeParameters=o),l}parseAssignableListItemTypes(e){return this.eat(17)&&("Identifier"!==e.type&&this.raise(pt.PatternIsOptional,{at:e}),this.isThisParam(e)&&this.raise(pt.ThisParamMayNotBeOptional,{at:e}),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(pt.ThisParamAnnotationRequired,{at:e}),this.match(29)&&this.isThisParam(e)&&this.raise(pt.ThisParamNoDefault,{at:e}),this.resetEndLocation(e),e}parseMaybeDefault(e,t){const n=super.parseMaybeDefault(e,t);return"AssignmentPattern"===n.type&&n.typeAnnotation&&n.right.start<n.typeAnnotation.start&&this.raise(pt.TypeBeforeInitializer,{at:n.typeAnnotation}),n}checkImportReflection(e){super.checkImportReflection(e),e.module&&"value"!==e.importKind&&this.raise(pt.ImportReflectionHasImportType,{at:e.specifiers[0].loc.start})}parseImportSpecifierLocal(e,t,n){t.local=ct(e)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,n))}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(128)){if(!e)return!0;const t=this.lookaheadCharCode();return 123===t||42===t}return!e&&this.isContextual(87)}applyImportPhase(e,t,n,r){if(super.applyImportPhase(e,t,n,r),t){if(!n&&this.match(65))return;e.exportKind="type"===n?n:"value"}else"type"===n&&this.match(55)&&this.unexpected(),e.importKind="type"===n||"typeof"===n?n:"value"}parseImportSpecifier(e,t,n,r,a){const i=e.imported;let s=null;"Identifier"===i.type&&("type"===i.name?s="type":"typeof"===i.name&&(s="typeof"));let o=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){const t=this.parseIdentifier(!0);null===s||X(this.state.type)?(e.imported=i,e.importKind=null,e.local=this.parseIdentifier()):(e.imported=t,e.importKind=s,e.local=st(t))}else{if(null!==s&&X(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=s;else{if(t)throw this.raise(S.ImportBindingIsString,{at:e,importName:i.value});e.imported=i,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(o=!0,e.local=st(e.imported))}const l=ct(e);return n&&l&&this.raise(pt.ImportTypeShorthandOnlyInPureImport,{at:e}),(n||l)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),!o||n||l||this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,"ImportSpecifier")}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseFunctionParams(e,t){const n=e.kind;"get"!==n&&"set"!==n&&this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),this.match(14)&&(e.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){if(this.match(14)){const t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,e.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=t}return super.parseAsyncArrowFromCallExpression(e,t)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(e,t){var n;let r,a=null;if(this.hasPlugin("jsx")&&(this.match(140)||this.match(47))){if(a=this.state.clone(),r=this.tryParse((()=>super.parseMaybeAssign(e,t)),a),!r.error)return r.node;const{context:n}=this.state,i=n[n.length-1];i!==g.j_oTag&&i!==g.j_expr||n.pop()}if(null!=(n=r)&&n.error||this.match(47)){var i,s;let n;a=a||this.state.clone();const o=this.tryParse((r=>{var a;n=this.flowParseTypeParameterDeclaration();const i=this.forwardNoArrowParamsConversionAt(n,(()=>{const r=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(r,n),r}));null!=(a=i.extra)&&a.parenthesized&&r();const s=this.maybeUnwrapTypeCastExpression(i);return"ArrowFunctionExpression"!==s.type&&r(),s.typeParameters=n,this.resetStartLocationFromNode(s,n),i}),a);let l=null;if(o.node&&"ArrowFunctionExpression"===this.maybeUnwrapTypeCastExpression(o.node).type){if(!o.error&&!o.aborted)return o.node.async&&this.raise(pt.UnexpectedTypeParameterBeforeAsyncArrowFunction,{at:n}),o.node;l=o.node}if(null!=(i=r)&&i.node)return this.state=r.failState,r.node;if(l)return this.state=o.failState,l;if(null!=(s=r)&&s.thrown)throw r.error;if(o.thrown)throw o.error;throw this.raise(pt.UnexpectedTokenAfterTypeParameter,{at:n})}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){const t=this.tryParse((()=>{const t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;const n=this.startNode();return[n.typeAnnotation,e.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=t,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),n}));if(t.thrown)return null;t.error&&(this.state=t.failState),e.returnType=t.node.typeAnnotation?this.finishNode(t.node,"TypeAnnotation"):null}return super.parseArrow(e)}shouldParseArrow(e){return this.match(14)||super.shouldParseArrow(e)}setArrowFunctionParameters(e,t){-1!==this.state.noArrowParamsConversionAt.indexOf(e.start)?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,n,r=!0){if(!n||-1===this.state.noArrowParamsConversionAt.indexOf(e.start)){for(let t=0;t<e.params.length;t++)this.isThisParam(e.params[t])&&t>0&&this.raise(pt.ThisParamMustBeFirst,{at:e.params[t]});super.checkParams(e,t,n,r)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&-1===this.state.noArrowAt.indexOf(this.state.start))}parseSubscripts(e,t,n){if("Identifier"===e.type&&"async"===e.name&&-1!==this.state.noArrowAt.indexOf(t.index)){this.next();const n=this.startNodeAt(t);n.callee=e,n.arguments=super.parseCallExpressionArguments(11,!1),e=this.finishNode(n,"CallExpression")}else if("Identifier"===e.type&&"async"===e.name&&this.match(47)){const r=this.state.clone(),a=this.tryParse((e=>this.parseAsyncArrowWithTypeParameters(t)||e()),r);if(!a.error&&!a.aborted)return a.node;const i=this.tryParse((()=>super.parseSubscripts(e,t,n)),r);if(i.node&&!i.error)return i.node;if(a.node)return this.state=a.failState,a.node;if(i.node)return this.state=i.failState,i.node;throw a.error||i.error}return super.parseSubscripts(e,t,n)}parseSubscript(e,t,n,r){if(this.match(18)&&this.isLookaheadToken_lt()){if(r.optionalChainMember=!0,n)return r.stop=!0,e;this.next();const a=this.startNodeAt(t);return a.callee=e,a.typeArguments=this.flowParseTypeParameterInstantiation(),this.expect(10),a.arguments=this.parseCallExpressionArguments(11,!1),a.optional=!0,this.finishCallExpression(a,!0)}if(!n&&this.shouldParseTypes()&&this.match(47)){const n=this.startNodeAt(t);n.callee=e;const a=this.tryParse((()=>(n.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),n.arguments=super.parseCallExpressionArguments(11,!1),r.optionalChainMember&&(n.optional=!1),this.finishCallExpression(n,r.optionalChainMember))));if(a.node)return a.error&&(this.state=a.failState),a.node}return super.parseSubscript(e,t,n,r)}parseNewCallee(e){super.parseNewCallee(e);let t=null;this.shouldParseTypes()&&this.match(47)&&(t=this.tryParse((()=>this.flowParseTypeParameterInstantiationCallOrNew())).node),e.typeArguments=t}parseAsyncArrowWithTypeParameters(e){const t=this.startNodeAt(e);if(this.parseFunctionParams(t,!1),this.parseArrow(t))return super.parseArrowExpression(t,void 0,!0)}readToken_mult_modulo(e){const t=this.input.charCodeAt(this.state.pos+1);if(42===e&&47===t&&this.state.hasFlowComment)return this.state.hasFlowComment=!1,this.state.pos+=2,void this.nextToken();super.readToken_mult_modulo(e)}readToken_pipe_amp(e){const t=this.input.charCodeAt(this.state.pos+1);124!==e||125!==t?super.readToken_pipe_amp(e):this.finishOp(9,2)}parseTopLevel(e,t){const n=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(pt.UnterminatedFlowComment,{at:this.state.curPosition()}),n}skipBlockComment(){if(!this.hasPlugin("flowComments")||!this.skipFlowComment())return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/");{if(this.state.hasFlowComment)throw this.raise(pt.NestedFlowComment,{at:this.state.startLoc});this.hasFlowCommentCompletion();const e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0)}}skipFlowComment(){const{pos:e}=this.state;let t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;const n=this.input.charCodeAt(t+e),r=this.input.charCodeAt(t+e+1);return 58===n&&58===r?t+2:"flow-include"===this.input.slice(t+e,t+e+12)?t+12:58===n&&58!==r&&t}hasFlowCommentCompletion(){if(-1===this.input.indexOf("*/",this.state.pos))throw this.raise(S.UnterminatedComment,{at:this.state.curPosition()})}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:n}){this.raise(pt.EnumBooleanMemberNotInitialized,{at:e,memberName:n,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?"symbol"===t.explicitType?pt.EnumInvalidMemberInitializerSymbolType:pt.EnumInvalidMemberInitializerPrimaryType:pt.EnumInvalidMemberInitializerUnknownType,Object.assign({at:e},t))}flowEnumErrorNumberMemberNotInitialized(e,{enumName:t,memberName:n}){this.raise(pt.EnumNumberMemberNotInitialized,{at:e,enumName:t,memberName:n})}flowEnumErrorStringMemberInconsistentlyInitialized(e,{enumName:t}){this.raise(pt.EnumStringMemberInconsistentlyInitialized,{at:e,enumName:t})}flowEnumMemberInit(){const e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 132:{const n=this.parseNumericLiteral(this.state.value);return t()?{type:"number",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}case 131:{const n=this.parseStringLiteral(this.state.value);return t()?{type:"string",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}case 85:case 86:{const n=this.parseBooleanLiteral(this.match(85));return t()?{type:"boolean",loc:n.loc.start,value:n}:{type:"invalid",loc:e}}default:return{type:"invalid",loc:e}}}flowEnumMemberRaw(){const e=this.state.startLoc;return{id:this.parseIdentifier(!0),init:this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:e}}}flowEnumCheckExplicitTypeMismatch(e,t,n){const{explicitType:r}=t;null!==r&&r!==n&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){const n=new Set,r={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]};let a=!1;for(;!this.match(8);){if(this.eat(21)){a=!0;break}const i=this.startNode(),{id:s,init:o}=this.flowEnumMemberRaw(),l=s.name;if(""===l)continue;/^[a-z]/.test(l)&&this.raise(pt.EnumInvalidMemberName,{at:s,memberName:l,suggestion:l[0].toUpperCase()+l.slice(1),enumName:e}),n.has(l)&&this.raise(pt.EnumDuplicateMemberName,{at:s,memberName:l,enumName:e}),n.add(l);const p={enumName:e,explicitType:t,memberName:l};switch(i.id=s,o.type){case"boolean":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"boolean"),i.init=o.value,r.booleanMembers.push(this.finishNode(i,"EnumBooleanMember"));break;case"number":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"number"),i.init=o.value,r.numberMembers.push(this.finishNode(i,"EnumNumberMember"));break;case"string":this.flowEnumCheckExplicitTypeMismatch(o.loc,p,"string"),i.init=o.value,r.stringMembers.push(this.finishNode(i,"EnumStringMember"));break;case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(o.loc,p);case"none":switch(t){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(o.loc,p);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(o.loc,p);break;default:r.defaultedMembers.push(this.finishNode(i,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:r,hasUnknownMembers:a}}flowEnumStringMembers(e,t,{enumName:n}){if(0===e.length)return t;if(0===t.length)return e;if(t.length>e.length){for(const t of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(t,{enumName:n});return t}for(const e of t)this.flowEnumErrorStringMemberInconsistentlyInitialized(e,{enumName:n});return e}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(101))return null;if(!U(this.state.type))throw this.raise(pt.EnumInvalidExplicitTypeUnknownSupplied,{at:this.state.startLoc,enumName:e});const{value:t}=this.state;return this.next(),"boolean"!==t&&"number"!==t&&"string"!==t&&"symbol"!==t&&this.raise(pt.EnumInvalidExplicitType,{at:this.state.startLoc,enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){const n=t.name,r=t.loc.start,a=this.flowEnumParseExplicitType({enumName:n});this.expect(5);const{members:i,hasUnknownMembers:s}=this.flowEnumMembers({enumName:n,explicitType:a});switch(e.hasUnknownMembers=s,a){case"boolean":return e.explicitType=!0,e.members=i.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody");case"number":return e.explicitType=!0,e.members=i.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody");case"string":return e.explicitType=!0,e.members=this.flowEnumStringMembers(i.stringMembers,i.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,"EnumStringBody");case"symbol":return e.members=i.defaultedMembers,this.expect(8),this.finishNode(e,"EnumSymbolBody");default:{const t=()=>(e.members=[],this.expect(8),this.finishNode(e,"EnumStringBody"));e.explicitType=!1;const a=i.booleanMembers.length,s=i.numberMembers.length,o=i.stringMembers.length,l=i.defaultedMembers.length;if(a||s||o||l){if(a||s){if(!s&&!o&&a>=l){for(const e of i.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=i.booleanMembers,this.expect(8),this.finishNode(e,"EnumBooleanBody")}if(!a&&!o&&s>=l){for(const e of i.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=i.numberMembers,this.expect(8),this.finishNode(e,"EnumNumberBody")}return this.raise(pt.EnumInconsistentMemberValues,{at:r,enumName:n}),t()}return e.members=this.flowEnumStringMembers(i.stringMembers,i.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,"EnumStringBody")}return t()}}}flowParseEnumDeclaration(e){const t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,"EnumDeclaration")}isLookaheadToken_lt(){const e=this.nextTokenStart();if(60===this.input.charCodeAt(e)){const t=this.input.charCodeAt(e+1);return 60!==t&&61!==t}return!1}maybeUnwrapTypeCastExpression(e){return"TypeCastExpression"===e.type?e.expression:e}},typescript:e=>class extends e{constructor(...e){super(...e),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:xt.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:xt.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:xt.InvalidModifierOnTypeParameter})}getScopeHandler(){return St}tsIsIdentifier(){return U(this.state.type)}tsTokenCanFollowModifier(){return(this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(136)||this.isLiteralPropertyName())&&!this.hasPrecedingLineBreak()}tsNextTokenCanFollowModifier(){return this.next(),this.tsTokenCanFollowModifier()}tsParseModifier(e,t){if(!U(this.state.type)&&58!==this.state.type&&75!==this.state.type)return;const n=this.state.value;if(-1!==e.indexOf(n)){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return n}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:t,stopOnStartOfClassStaticBlock:n,errorTemplate:r=xt.InvalidModifierOnTypeMember},a){const i=(e,t,n,r)=>{t===n&&a[r]&&this.raise(xt.InvalidModifiersOrder,{at:e,orderedModifiers:[n,r]})},s=(e,t,n,r)=>{(a[n]&&t===r||a[r]&&t===n)&&this.raise(xt.IncompatibleModifiers,{at:e,modifiers:[n,r]})};for(;;){const{startLoc:o}=this.state,l=this.tsParseModifier(e.concat(null!=t?t:[]),n);if(!l)break;gt(l)?a.accessibility?this.raise(xt.DuplicateAccessibilityModifier,{at:o,modifier:l}):(i(o,l,l,"override"),i(o,l,l,"static"),i(o,l,l,"readonly"),a.accessibility=l):At(l)?(a[l]&&this.raise(xt.DuplicateModifier,{at:o,modifier:l}),a[l]=!0,i(o,l,"in","out")):(Object.hasOwnProperty.call(a,l)?this.raise(xt.DuplicateModifier,{at:o,modifier:l}):(i(o,l,"static","readonly"),i(o,l,"static","override"),i(o,l,"override","readonly"),i(o,l,"abstract","override"),s(o,l,"declare","override"),s(o,l,"static","abstract")),a[l]=!0),null!=t&&t.includes(l)&&this.raise(r,{at:o,modifier:l})}}tsIsListTerminator(e){switch(e){case"EnumMembers":case"TypeMembers":return this.match(8);case"HeritageClauseElement":return this.match(5);case"TupleElementTypes":return this.match(3);case"TypeParametersOrArguments":return this.match(48)}}tsParseList(e,t){const n=[];for(;!this.tsIsListTerminator(e);)n.push(t());return n}tsParseDelimitedList(e,t,n){return function(e){if(null==e)throw new Error(`Unexpected ${e} value.`);return e}(this.tsParseDelimitedListWorker(e,t,!0,n))}tsParseDelimitedListWorker(e,t,n,r){const a=[];let i=-1;for(;!this.tsIsListTerminator(e);){i=-1;const r=t();if(null==r)return;if(a.push(r),!this.eat(12)){if(this.tsIsListTerminator(e))break;return void(n&&this.expect(12))}i=this.state.lastTokStart}return r&&(r.value=i),a}tsParseBracketedList(e,t,n,r,a){r||(n?this.expect(0):this.expect(47));const i=this.tsParseDelimitedList(e,t,a);return n?this.expect(3):this.expect(48),i}tsParseImportType(){const e=this.startNode();return this.expect(83),this.expect(10),this.match(131)||this.raise(xt.UnsupportedImportTypeArgument,{at:this.state.startLoc}),e.argument=super.parseExprAtom(),this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName()),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSImportType")}tsParseEntityName(e=!0){let t=this.parseIdentifier(e);for(;this.eat(16);){const n=this.startNodeAtNode(t);n.left=t,n.right=this.parseIdentifier(e),t=this.finishNode(n,"TSQualifiedName")}return t}tsParseTypeReference(){const e=this.startNode();return e.typeName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeReference")}tsParseThisTypePredicate(e){this.next();const t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,"TSTypePredicate")}tsParseThisTypeNode(){const e=this.startNode();return this.next(),this.finishNode(e,"TSThisType")}tsParseTypeQuery(){const e=this.startNode();return this.expect(87),this.match(83)?e.exprName=this.tsParseImportType():e.exprName=this.tsParseEntityName(),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSTypeQuery")}tsParseTypeParameter(e){const t=this.startNode();return e(t),t.name=this.tsParseTypeParameterName(),t.constraint=this.tsEatThenParseType(81),t.default=this.tsEatThenParseType(29),this.finishNode(t,"TSTypeParameter")}tsTryParseTypeParameters(e){if(this.match(47))return this.tsParseTypeParameters(e)}tsParseTypeParameters(e){const t=this.startNode();this.match(47)||this.match(140)?this.next():this.unexpected();const n={value:-1};return t.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,e),!1,!0,n),0===t.params.length&&this.raise(xt.EmptyTypeParameters,{at:t}),-1!==n.value&&this.addExtra(t,"trailingComma",n.value),this.finishNode(t,"TSTypeParameterDeclaration")}tsFillSignature(e,t){const n=19===e;t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t.parameters=this.tsParseBindingListForSignature(),(n||this.match(e))&&(t.typeAnnotation=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){const e=super.parseBindingList(11,41,2);for(const t of e){const{type:e}=t;"AssignmentPattern"!==e&&"TSParameterProperty"!==e||this.raise(xt.UnsupportedSignatureParameterKind,{at:t,type:e})}return e}tsParseTypeMemberSemicolon(){this.eat(12)||this.isLineTerminator()||this.expect(13)}tsParseSignatureMember(e,t){return this.tsFillSignature(14,t),this.tsParseTypeMemberSemicolon(),this.finishNode(t,e)}tsIsUnambiguouslyIndexSignature(){return this.next(),!!U(this.state.type)&&(this.next(),this.match(14))}tsTryParseIndexSignature(e){if(!this.match(0)||!this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this)))return;this.expect(0);const t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];const n=this.tsTryParseTypeAnnotation();return n&&(e.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSIndexSignature")}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);const n=e;if(this.match(10)||this.match(47)){t&&this.raise(xt.ReadonlyForMethodSignature,{at:e});const r=n;r.kind&&this.match(47)&&this.raise(xt.AccesorCannotHaveTypeParameters,{at:this.state.curPosition()}),this.tsFillSignature(14,r),this.tsParseTypeMemberSemicolon();const a="parameters",i="typeAnnotation";if("get"===r.kind)r[a].length>0&&(this.raise(S.BadGetterArity,{at:this.state.curPosition()}),this.isThisParam(r[a][0])&&this.raise(xt.AccesorCannotDeclareThisParameter,{at:this.state.curPosition()}));else if("set"===r.kind){if(1!==r[a].length)this.raise(S.BadSetterArity,{at:this.state.curPosition()});else{const e=r[a][0];this.isThisParam(e)&&this.raise(xt.AccesorCannotDeclareThisParameter,{at:this.state.curPosition()}),"Identifier"===e.type&&e.optional&&this.raise(xt.SetAccesorCannotHaveOptionalParameter,{at:this.state.curPosition()}),"RestElement"===e.type&&this.raise(xt.SetAccesorCannotHaveRestParameter,{at:this.state.curPosition()})}r[i]&&this.raise(xt.SetAccesorCannotHaveReturnType,{at:r[i]})}else r.kind="method";return this.finishNode(r,"TSMethodSignature")}{const e=n;t&&(e.readonly=!0);const r=this.tsTryParseTypeAnnotation();return r&&(e.typeAnnotation=r),this.tsParseTypeMemberSemicolon(),this.finishNode(e,"TSPropertySignature")}}tsParseTypeMember(){const e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",e);if(this.match(77)){const t=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",e):(e.key=this.createIdentifier(t,"new"),this.tsParsePropertyOrMethodSignature(e,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},e);return this.tsTryParseIndexSignature(e)||(super.parsePropertyName(e),e.computed||"Identifier"!==e.key.type||"get"!==e.key.name&&"set"!==e.key.name||!this.tsTokenCanFollowModifier()||(e.kind=e.key.name,super.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){const e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);const e=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(120):(this.isContextual(120)&&this.next(),!!this.match(0)&&(this.next(),!!this.tsIsIdentifier()&&(this.next(),this.match(58))))}tsParseMappedTypeParameter(){const e=this.startNode();return e.name=this.tsParseTypeParameterName(),e.constraint=this.tsExpectThenParseType(58),this.finishNode(e,"TSTypeParameter")}tsParseMappedType(){const e=this.startNode();return this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(120)):this.eatContextual(120)&&(e.readonly=!0),this.expect(0),e.typeParameter=this.tsParseMappedTypeParameter(),e.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(e.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(e.optional=!0),e.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(e,"TSMappedType")}tsParseTupleType(){const e=this.startNode();e.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let t=!1,n=null;return e.elementTypes.forEach((e=>{const{type:r}=e;!t||"TSRestType"===r||"TSOptionalType"===r||"TSNamedTupleMember"===r&&e.optional||this.raise(xt.OptionalTypeBeforeRequired,{at:e}),t||(t="TSNamedTupleMember"===r&&e.optional||"TSOptionalType"===r);let a=r;"TSRestType"===r&&(a=(e=e.typeAnnotation).type);const i="TSNamedTupleMember"===a;null!=n||(n=i),n!==i&&this.raise(xt.MixedLabeledAndUnlabeledElements,{at:e})})),this.finishNode(e,"TSTupleType")}tsParseTupleElementType(){const{startLoc:e}=this.state,t=this.eat(21);let n,r,a,i;const s=X(this.state.type)?this.lookaheadCharCode():null;if(58===s)n=!0,a=!1,r=this.parseIdentifier(!0),this.expect(14),i=this.tsParseType();else if(63===s){a=!0;const e=this.state.startLoc,t=this.state.value,s=this.tsParseNonArrayType();58===this.lookaheadCharCode()?(n=!0,r=this.createIdentifier(this.startNodeAt(e),t),this.expect(17),this.expect(14),i=this.tsParseType()):(n=!1,i=s,this.expect(17))}else i=this.tsParseType(),a=this.eat(17),n=this.eat(14);if(n){let e;r?(e=this.startNodeAtNode(r),e.optional=a,e.label=r,e.elementType=i,this.eat(17)&&(e.optional=!0,this.raise(xt.TupleOptionalAfterType,{at:this.state.lastTokStartLoc}))):(e=this.startNodeAtNode(i),e.optional=a,this.raise(xt.InvalidTupleMemberLabel,{at:i}),e.label=i,e.elementType=this.tsParseType()),i=this.finishNode(e,"TSNamedTupleMember")}else if(a){const e=this.startNodeAtNode(i);e.typeAnnotation=i,i=this.finishNode(e,"TSOptionalType")}if(t){const t=this.startNodeAt(e);t.typeAnnotation=i,i=this.finishNode(t,"TSRestType")}return i}tsParseParenthesizedType(){const e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,"TSParenthesizedType")}tsParseFunctionOrConstructorType(e,t){const n=this.startNode();return"TSConstructorType"===e&&(n.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext((()=>this.tsFillSignature(19,n))),this.finishNode(n,e)}tsParseLiteralTypeNode(){const e=this.startNode();switch(this.state.type){case 132:case 133:case 131:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,"TSLiteralType")}tsParseTemplateLiteralType(){const e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,"TSLiteralType")}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){const e=this.tsParseThisTypeNode();return this.isContextual(114)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 131:case 132:case 133:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if("-"===this.state.value){const e=this.startNode(),t=this.lookahead();return 132!==t.type&&133!==t.type&&this.unexpected(),e.literal=this.parseMaybeUnary(),this.finishNode(e,"TSLiteralType")}break;case 78:return this.tsParseThisTypeOrThisTypePredicate();case 87:return this.tsParseTypeQuery();case 83:return this.tsParseImportType();case 5:return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this))?this.tsParseMappedType():this.tsParseTypeLiteral();case 0:return this.tsParseTupleType();case 10:return this.tsParseParenthesizedType();case 25:case 24:return this.tsParseTemplateLiteralType();default:{const{type:e}=this.state;if(U(e)||88===e||84===e){const t=88===e?"TSVoidKeyword":84===e?"TSNullKeyword":function(e){switch(e){case"any":return"TSAnyKeyword";case"boolean":return"TSBooleanKeyword";case"bigint":return"TSBigIntKeyword";case"never":return"TSNeverKeyword";case"number":return"TSNumberKeyword";case"object":return"TSObjectKeyword";case"string":return"TSStringKeyword";case"symbol":return"TSSymbolKeyword";case"undefined":return"TSUndefinedKeyword";case"unknown":return"TSUnknownKeyword";default:return}}(this.state.value);if(void 0!==t&&46!==this.lookaheadCharCode()){const e=this.startNode();return this.next(),this.finishNode(e,t)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let e=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){const t=this.startNodeAtNode(e);t.elementType=e,this.expect(3),e=this.finishNode(t,"TSArrayType")}else{const t=this.startNodeAtNode(e);t.objectType=e,t.indexType=this.tsParseType(),this.expect(3),e=this.finishNode(t,"TSIndexedAccessType")}return e}tsParseTypeOperator(){const e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),"readonly"===t&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(xt.UnexpectedReadonly,{at:e})}}tsParseInferType(){const e=this.startNode();this.expectContextual(113);const t=this.startNode();return t.name=this.tsParseTypeParameterName(),t.constraint=this.tsTryParse((()=>this.tsParseConstraintForInferType())),e.typeParameter=this.finishNode(t,"TSTypeParameter"),this.finishNode(e,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){const e=this.tsInDisallowConditionalTypesContext((()=>this.tsParseType()));if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){var e;return(e=this.state.type)>=119&&e<=121&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(113)?this.tsParseInferType():this.tsInAllowConditionalTypesContext((()=>this.tsParseArrayTypeOrHigher()))}tsParseUnionOrIntersectionType(e,t,n){const r=this.startNode(),a=this.eat(n),i=[];do{i.push(t())}while(this.eat(n));return 1!==i.length||a?(r.types=i,this.finishNode(r,e)):i[0]}tsParseIntersectionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSIntersectionType",this.tsParseTypeOperatorOrHigher.bind(this),45)}tsParseUnionTypeOrHigher(){return this.tsParseUnionOrIntersectionType("TSUnionType",this.tsParseIntersectionTypeOrHigher.bind(this),43)}tsIsStartOfFunctionType(){return!!this.match(47)||this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(U(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){const{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch(e){return!1}}if(this.match(0)){this.next();const{errors:e}=this.state,t=e.length;try{return super.parseBindingList(3,93,1),e.length===t}catch(e){return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){if(this.next(),this.match(11)||this.match(21))return!0;if(this.tsSkipParameterStart()){if(this.match(14)||this.match(12)||this.match(17)||this.match(29))return!0;if(this.match(11)&&(this.next(),this.match(19)))return!0}return!1}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType((()=>{const t=this.startNode();this.expect(e);const n=this.startNode(),r=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(r&&this.match(78)){let e=this.tsParseThisTypeOrThisTypePredicate();return"TSThisType"===e.type?(n.parameterName=e,n.asserts=!0,n.typeAnnotation=null,e=this.finishNode(n,"TSTypePredicate")):(this.resetStartLocationFromNode(e,n),e.asserts=!0),t.typeAnnotation=e,this.finishNode(t,"TSTypeAnnotation")}const a=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!a)return r?(n.parameterName=this.parseIdentifier(),n.asserts=r,n.typeAnnotation=null,t.typeAnnotation=this.finishNode(n,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,t);const i=this.tsParseTypeAnnotation(!1);return n.parameterName=a,n.typeAnnotation=i,n.asserts=r,t.typeAnnotation=this.finishNode(n,"TSTypePredicate"),this.finishNode(t,"TSTypeAnnotation")}))}tsTryParseTypeOrTypePredicateAnnotation(){if(this.match(14))return this.tsParseTypeOrTypePredicateAnnotation(14)}tsTryParseTypeAnnotation(){if(this.match(14))return this.tsParseTypeAnnotation()}tsTryParseType(){return this.tsEatThenParseType(14)}tsParseTypePredicatePrefix(){const e=this.parseIdentifier();if(this.isContextual(114)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(107!==this.state.type)return!1;const e=this.state.containsEsc;return this.next(),!(!U(this.state.type)&&!this.match(78)||(e&&this.raise(S.InvalidEscapedReservedWord,{at:this.state.lastTokStartLoc,reservedWord:"asserts"}),0))}tsParseTypeAnnotation(e=!0,t=this.startNode()){return this.tsInType((()=>{e&&this.expect(14),t.typeAnnotation=this.tsParseType()})),this.finishNode(t,"TSTypeAnnotation")}tsParseType(){Pt(this.state.inType);const e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;const t=this.startNodeAtNode(e);return t.checkType=e,t.extendsType=this.tsInDisallowConditionalTypesContext((()=>this.tsParseNonConditionalType())),this.expect(17),t.trueType=this.tsInAllowConditionalTypesContext((()=>this.tsParseType())),this.expect(14),t.falseType=this.tsInAllowConditionalTypesContext((()=>this.tsParseType())),this.finishNode(t,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(122)&&77===this.lookahead().type}tsParseNonConditionalType(){return this.tsIsStartOfFunctionType()?this.tsParseFunctionOrConstructorType("TSFunctionType"):this.match(77)?this.tsParseFunctionOrConstructorType("TSConstructorType"):this.isAbstractConstructorSignature()?this.tsParseFunctionOrConstructorType("TSConstructorType",!0):this.tsParseUnionTypeOrHigher()}tsParseTypeAssertion(){this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(xt.ReservedTypeAssertion,{at:this.state.startLoc});const e=this.startNode();return e.typeAnnotation=this.tsInType((()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType()))),this.expect(48),e.expression=this.parseMaybeUnary(),this.finishNode(e,"TSTypeAssertion")}tsParseHeritageClause(e){const t=this.state.startLoc,n=this.tsParseDelimitedList("HeritageClauseElement",(()=>{const e=this.startNode();return e.expression=this.tsParseEntityName(),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,"TSExpressionWithTypeArguments")}));return n.length||this.raise(xt.EmptyHeritageClauseType,{at:t,token:e}),n}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(127),t.declare&&(e.declare=!0),U(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise(xt.MissingInterfaceName,{at:this.state.startLoc})),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause("extends"));const n=this.startNode();return n.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),e.body=this.finishNode(n,"TSInterfaceBody"),this.finishNode(e,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(e){return e.id=this.parseIdentifier(),this.checkIdentifier(e.id,2),e.typeAnnotation=this.tsInType((()=>{if(e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(112)&&16!==this.lookahead().type){const e=this.startNode();return this.next(),this.finishNode(e,"TSIntrinsicKeyword")}return this.tsParseType()})),this.semicolon(),this.finishNode(e,"TSTypeAliasDeclaration")}tsInNoContext(e){const t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}tsInType(e){const t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsInDisallowConditionalTypesContext(e){const t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsInAllowConditionalTypesContext(e){const t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsEatThenParseType(e){if(this.match(e))return this.tsNextThenParseType()}tsExpectThenParseType(e){return this.tsInType((()=>(this.expect(e),this.tsParseType())))}tsNextThenParseType(){return this.tsInType((()=>(this.next(),this.tsParseType())))}tsParseEnumMember(){const e=this.startNode();return e.id=this.match(131)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(e.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(e,"TSEnumMember")}tsParseEnumDeclaration(e,t={}){return t.const&&(e.const=!0),t.declare&&(e.declare=!0),this.expectContextual(124),e.id=this.parseIdentifier(),this.checkIdentifier(e.id,e.const?8971:8459),this.expect(5),e.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,"TSEnumDeclaration")}tsParseModuleBlock(){const e=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(e.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(e,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(e,t=!1){if(e.id=this.parseIdentifier(),t||this.checkIdentifier(e.id,1024),this.eat(16)){const t=this.startNode();this.tsParseModuleOrNamespaceDeclaration(t,!0),e.body=t}else this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(e,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(e){return this.isContextual(110)?(e.global=!0,e.id=this.parseIdentifier()):this.match(131)?e.id=super.parseStringLiteral(this.state.value):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),e.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(e,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(e,t,n){e.isExport=n||!1,e.id=t||this.parseIdentifier(),this.checkIdentifier(e.id,4096),this.expect(29);const r=this.tsParseModuleReference();return"type"===e.importKind&&"TSExternalModuleReference"!==r.type&&this.raise(xt.ImportAliasHasImportType,{at:r}),e.moduleReference=r,this.semicolon(),this.finishNode(e,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(117)&&40===this.lookaheadCharCode()}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(!1)}tsParseExternalModuleReference(){const e=this.startNode();return this.expectContextual(117),this.expect(10),this.match(131)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,"TSExternalModuleReference")}tsLookAhead(e){const t=this.state.clone(),n=e();return this.state=t,n}tsTryParseAndCatch(e){const t=this.tryParse((t=>e()||t()));if(!t.aborted&&t.node)return t.error&&(this.state=t.failState),t.node}tsTryParse(e){const t=this.state.clone(),n=e();if(void 0!==n&&!1!==n)return n;this.state=t}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t,n=this.state.type;return this.isContextual(99)&&(n=74,t="let"),this.tsInAmbientContext((()=>{switch(n){case 68:return e.declare=!0,super.parseFunctionStatement(e,!1,!1);case 80:return e.declare=!0,this.parseClass(e,!0,!1);case 124:return this.tsParseEnumDeclaration(e,{declare:!0});case 110:return this.tsParseAmbientExternalModuleDeclaration(e);case 75:case 74:return this.match(75)&&this.isLookaheadContextual("enum")?(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0})):(e.declare=!0,this.parseVarStatement(e,t||this.state.value,!0));case 127:{const t=this.tsParseInterfaceDeclaration(e,{declare:!0});if(t)return t}default:if(U(n))return this.tsParseDeclaration(e,this.state.value,!0,null)}}))}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(e,t,n){switch(t.name){case"declare":{const t=this.tsTryParseDeclare(e);return t&&(t.declare=!0),t}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);const n=e;return n.global=!0,n.id=t,n.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(n,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(e,t.name,!1,n)}}tsParseDeclaration(e,t,n,r){switch(t){case"abstract":if(this.tsCheckLineTerminator(n)&&(this.match(80)||U(this.state.type)))return this.tsParseAbstractDeclaration(e,r);break;case"module":if(this.tsCheckLineTerminator(n)){if(this.match(131))return this.tsParseAmbientExternalModuleDeclaration(e);if(U(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e)}break;case"namespace":if(this.tsCheckLineTerminator(n)&&U(this.state.type))return this.tsParseModuleOrNamespaceDeclaration(e);break;case"type":if(this.tsCheckLineTerminator(n)&&U(this.state.type))return this.tsParseTypeAliasDeclaration(e)}}tsCheckLineTerminator(e){return e?!this.hasFollowingLineBreak()&&(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(e){if(!this.match(47))return;const t=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;const n=this.tsTryParseAndCatch((()=>{const t=this.startNodeAt(e);return t.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(t),t.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),t}));return this.state.maybeInArrowParameters=t,n?super.parseArrowExpression(n,null,!0):void 0}tsParseTypeArgumentsInExpression(){if(47===this.reScan_lt())return this.tsParseTypeArguments()}tsParseTypeArguments(){const e=this.startNode();return e.params=this.tsInType((()=>this.tsInNoContext((()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))))),0===e.params.length?this.raise(xt.EmptyTypeArguments,{at:e}):this.state.inType||this.curContext()!==g.brace||this.reScan_lt_gt(),this.expect(48),this.finishNode(e,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return(e=this.state.type)>=122&&e<=128;var e}isExportDefaultSpecifier(){return!this.tsIsDeclarationStart()&&super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){const n=this.state.startLoc,r={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},r);const a=r.accessibility,i=r.override,s=r.readonly;4&e||!(a||s||i)||this.raise(xt.UnexpectedParameterModifier,{at:n});const o=this.parseMaybeDefault();this.parseAssignableListItemTypes(o,e);const l=this.parseMaybeDefault(o.loc.start,o);if(a||s||i){const e=this.startNodeAt(n);return t.length&&(e.decorators=t),a&&(e.accessibility=a),s&&(e.readonly=s),i&&(e.override=i),"Identifier"!==l.type&&"AssignmentPattern"!==l.type&&this.raise(xt.UnsupportedParameterPropertyKind,{at:e}),e.parameter=l,this.finishNode(e,"TSParameterProperty")}return t.length&&(o.decorators=t),l}isSimpleParameter(e){return"TSParameterProperty"===e.type&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(const t of e.params)"Identifier"!==t.type&&t.optional&&!this.state.isAmbientContext&&this.raise(xt.PatternIsOptional,{at:t})}setArrowFunctionParameters(e,t,n){super.setArrowFunctionParameters(e,t,n),this.tsDisallowOptionalPattern(e)}parseFunctionBodyAndFinish(e,t,n=!1){this.match(14)&&(e.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));const r="FunctionDeclaration"===t?"TSDeclareFunction":"ClassMethod"===t||"ClassPrivateMethod"===t?"TSDeclareMethod":void 0;return r&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,r):"TSDeclareFunction"===r&&this.state.isAmbientContext&&(this.raise(xt.DeclareFunctionHasImplementation,{at:e}),e.declare)?super.parseFunctionBodyAndFinish(e,r,n):(this.tsDisallowOptionalPattern(e),super.parseFunctionBodyAndFinish(e,t,n))}registerFunctionStatementId(e){!e.body&&e.id?this.checkIdentifier(e.id,1024):super.registerFunctionStatementId(e)}tsCheckForInvalidTypeCasts(e){e.forEach((e=>{"TSTypeCastExpression"===(null==e?void 0:e.type)&&this.raise(xt.UnexpectedTypeAnnotation,{at:e.typeAnnotation})}))}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,t,n,r){const a=super.parseArrayLike(e,t,n,r);return"ArrayExpression"===a.type&&this.tsCheckForInvalidTypeCasts(a.elements),a}parseSubscript(e,t,n,r){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();const n=this.startNodeAt(t);return n.expression=e,this.finishNode(n,"TSNonNullExpression")}let a=!1;if(this.match(18)&&60===this.lookaheadCharCode()){if(n)return r.stop=!0,e;r.optionalChainMember=a=!0,this.next()}if(this.match(47)||this.match(51)){let i;const s=this.tsTryParseAndCatch((()=>{if(!n&&this.atPossibleAsyncArrow(e)){const e=this.tsTryParseGenericAsyncArrowFunction(t);if(e)return e}const s=this.tsParseTypeArgumentsInExpression();if(!s)return;if(a&&!this.match(10))return void(i=this.state.curPosition());if(H(this.state.type)){const n=super.parseTaggedTemplateExpression(e,t,r);return n.typeParameters=s,n}if(!n&&this.eat(10)){const n=this.startNodeAt(t);return n.callee=e,n.arguments=this.parseCallExpressionArguments(11,!1),this.tsCheckForInvalidTypeCasts(n.arguments),n.typeParameters=s,r.optionalChainMember&&(n.optional=a),this.finishCallExpression(n,r.optionalChainMember)}const o=this.state.type;if(48===o||52===o||10!==o&&W(o)&&!this.hasPrecedingLineBreak())return;const l=this.startNodeAt(t);return l.expression=e,l.typeParameters=s,this.finishNode(l,"TSInstantiationExpression")}));if(i&&this.unexpected(i,10),s)return"TSInstantiationExpression"===s.type&&(this.match(16)||this.match(18)&&40!==this.lookaheadCharCode())&&this.raise(xt.InvalidPropertyAccessAfterInstantiationExpression,{at:this.state.startLoc}),s}return super.parseSubscript(e,t,n,r)}parseNewCallee(e){var t;super.parseNewCallee(e);const{callee:n}=e;"TSInstantiationExpression"!==n.type||null!=(t=n.extra)&&t.parenthesized||(e.typeParameters=n.typeParameters,e.callee=n.expression)}parseExprOp(e,t,n){let r;if(z(58)>n&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(r=this.isContextual(118)))){const a=this.startNodeAt(t);return a.expression=e,a.typeAnnotation=this.tsInType((()=>(this.next(),this.match(75)?(r&&this.raise(S.UnexpectedKeyword,{at:this.state.startLoc,keyword:"const"}),this.tsParseTypeReference()):this.tsParseType()))),this.finishNode(a,r?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(a,t,n)}return super.parseExprOp(e,t,n)}checkReservedWord(e,t,n,r){this.state.isAmbientContext||super.checkReservedWord(e,t,n,r)}checkImportReflection(e){super.checkImportReflection(e),e.module&&"value"!==e.importKind&&this.raise(xt.ImportReflectionHasImportType,{at:e.specifiers[0].loc.start})}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(128)){const t=this.lookaheadCharCode();return e?123===t||42===t:61!==t}return!e&&this.isContextual(87)}applyImportPhase(e,t,n,r){super.applyImportPhase(e,t,n,r),t?e.exportKind="type"===n?"type":"value":e.importKind="type"===n||"typeof"===n?n:"value"}parseImport(e){if(this.match(131))return e.importKind="value",super.parseImport(e);let t;if(U(this.state.type)&&61===this.lookaheadCharCode())return e.importKind="value",this.tsParseImportEqualsDeclaration(e);if(this.isContextual(128)){const n=this.parseMaybeImportPhase(e,!1);if(61===this.lookaheadCharCode())return this.tsParseImportEqualsDeclaration(e,n);t=super.parseImportSpecifiersAndAfter(e,n)}else t=super.parseImport(e);return"type"===t.importKind&&t.specifiers.length>1&&"ImportDefaultSpecifier"===t.specifiers[0].type&&this.raise(xt.TypeImportCannotSpecifyDefaultAndNamed,{at:t}),t}parseExport(e,t){if(this.match(83)){this.next();let t=null;return this.isContextual(128)&&this.isPotentialImportPhase(!1)?t=this.parseMaybeImportPhase(e,!1):e.importKind="value",this.tsParseImportEqualsDeclaration(e,t,!0)}if(this.eat(29)){const t=e;return t.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(t,"TSExportAssignment")}if(this.eatContextual(93)){const t=e;return this.expectContextual(126),t.id=this.parseIdentifier(),this.semicolon(),this.finishNode(t,"TSNamespaceExportDeclaration")}return super.parseExport(e,t)}isAbstractClass(){return this.isContextual(122)&&80===this.lookahead().type}parseExportDefaultExpression(){if(this.isAbstractClass()){const e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(127)){const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,n=!1){const{isAmbientContext:r}=this.state,a=super.parseVarStatement(e,t,n||r);if(!r)return a;for(const{id:e,init:n}of a.declarations)n&&("const"!==t||e.typeAnnotation?this.raise(xt.InitializerNotAllowedInAmbientContext,{at:n}):Ot(n,this.hasPlugin("estree"))||this.raise(xt.ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference,{at:n}));return a}parseStatementContent(e,t){if(this.match(75)&&this.isLookaheadContextual("enum")){const e=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(e,{const:!0})}if(this.isContextual(124))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(127)){const e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseStatementContent(e,t)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(e,t){return t.some((t=>gt(t)?e.accessibility===t:!!e[t]))}tsIsStartOfStaticBlocks(){return this.isContextual(104)&&123===this.lookaheadCharCode()}parseClassMember(e,t,n){const r=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:r,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:xt.InvalidModifierOnTypeParameterPositions},t);const a=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,r)&&this.raise(xt.StaticBlockCannotHaveModifier,{at:this.state.curPosition()}),super.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,n,!!t.static)};t.declare?this.tsInAmbientContext(a):a()}parseClassMemberWithIsStatic(e,t,n,r){const a=this.tsTryParseIndexSignature(t);if(a)return e.body.push(a),t.abstract&&this.raise(xt.IndexSignatureHasAbstract,{at:t}),t.accessibility&&this.raise(xt.IndexSignatureHasAccessibility,{at:t,modifier:t.accessibility}),t.declare&&this.raise(xt.IndexSignatureHasDeclare,{at:t}),void(t.override&&this.raise(xt.IndexSignatureHasOverride,{at:t}));!this.state.inAbstractClass&&t.abstract&&this.raise(xt.NonAbstractClassHasAbstractMethod,{at:t}),t.override&&(n.hadSuperClass||this.raise(xt.OverrideNotInSubClass,{at:t})),super.parseClassMemberWithIsStatic(e,t,n,r)}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise(xt.ClassMethodHasReadonly,{at:e}),e.declare&&this.match(10)&&this.raise(xt.ClassMethodHasDeclare,{at:e})}parseExpressionStatement(e,t,n){return("Identifier"===t.type?this.tsParseExpressionStatement(e,t,n):void 0)||super.parseExpressionStatement(e,t,n)}shouldParseExportDeclaration(){return!!this.tsIsDeclarationStart()||super.shouldParseExportDeclaration()}parseConditional(e,t,n){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,n);const r=this.tryParse((()=>super.parseConditional(e,t)));return r.node?(r.error&&(this.state=r.failState),r.node):(r.error&&super.setOptionalParametersError(n,r.error),e)}parseParenItem(e,t){if(e=super.parseParenItem(e,t),this.eat(17)&&(e.optional=!0,this.resetEndLocation(e)),this.match(14)){const n=this.startNodeAt(t);return n.expression=e,n.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(n,"TSTypeCastExpression")}return e}parseExportDeclaration(e){if(!this.state.isAmbientContext&&this.isContextual(123))return this.tsInAmbientContext((()=>this.parseExportDeclaration(e)));const t=this.state.startLoc,n=this.eatContextual(123);if(n&&(this.isContextual(123)||!this.shouldParseExportDeclaration()))throw this.raise(xt.ExpectedAmbientAfterExportDeclare,{at:this.state.startLoc});const r=U(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return r?(("TSInterfaceDeclaration"===r.type||"TSTypeAliasDeclaration"===r.type||n)&&(e.exportKind="type"),n&&(this.resetStartLocation(r,t),r.declare=!0),r):null}parseClassId(e,t,n,r){if((!t||n)&&this.isContextual(111))return;super.parseClassId(e,t,n,e.declare?1024:8331);const a=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);a&&(e.typeParameters=a)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));const t=this.tsTryParseTypeAnnotation();t&&(e.typeAnnotation=t)}parseClassProperty(e){if(this.parseClassPropertyAnnotation(e),this.state.isAmbientContext&&(!e.readonly||e.typeAnnotation)&&this.match(29)&&this.raise(xt.DeclareClassFieldHasInitializer,{at:this.state.startLoc}),e.abstract&&this.match(29)){const{key:t}=e;this.raise(xt.AbstractPropertyHasInitializer,{at:this.state.startLoc,propertyName:"Identifier"!==t.type||e.computed?`[${this.input.slice(t.start,t.end)}]`:t.name})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise(xt.PrivateElementHasAbstract,{at:e}),e.accessibility&&this.raise(xt.PrivateElementHasAccessibility,{at:e,modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise(xt.AccessorCannotBeOptional,{at:e}),super.parseClassAccessorProperty(e)}pushClassMethod(e,t,n,r,a,i){const s=this.tsTryParseTypeParameters(this.tsParseConstModifier);s&&a&&this.raise(xt.ConstructorHasTypeParameters,{at:s});const{declare:o=!1,kind:l}=t;!o||"get"!==l&&"set"!==l||this.raise(xt.DeclareAccessor,{at:t,kind:l}),s&&(t.typeParameters=s),super.pushClassMethod(e,t,n,r,a,i)}pushClassPrivateMethod(e,t,n,r){const a=this.tsTryParseTypeParameters(this.tsParseConstModifier);a&&(t.typeParameters=a),super.pushClassPrivateMethod(e,t,n,r)}declareClassPrivateMethodInScope(e,t){"TSDeclareMethod"!==e.type&&("MethodDefinition"!==e.type||e.value.body)&&super.declareClassPrivateMethodInScope(e,t)}parseClassSuper(e){super.parseClassSuper(e),e.superClass&&(this.match(47)||this.match(51))&&(e.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(111)&&(e.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(e,t,n,r,a,i,s){const o=this.tsTryParseTypeParameters(this.tsParseConstModifier);return o&&(e.typeParameters=o),super.parseObjPropValue(e,t,n,r,a,i,s)}parseFunctionParams(e,t){const n=this.tsTryParseTypeParameters(this.tsParseConstModifier);n&&(e.typeParameters=n),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),"Identifier"===e.id.type&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);const n=this.tsTryParseTypeAnnotation();n&&(e.id.typeAnnotation=n,this.resetEndLocation(e.id))}parseAsyncArrowFromCallExpression(e,t){return this.match(14)&&(e.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(e,t)}parseMaybeAssign(e,t){var n,r,a,i,s;let o,l,p,c;if(this.hasPlugin("jsx")&&(this.match(140)||this.match(47))){if(o=this.state.clone(),l=this.tryParse((()=>super.parseMaybeAssign(e,t)),o),!l.error)return l.node;const{context:n}=this.state,r=n[n.length-1];r!==g.j_oTag&&r!==g.j_expr||n.pop()}if(!(null!=(n=l)&&n.error||this.match(47)))return super.parseMaybeAssign(e,t);o&&o!==this.state||(o=this.state.clone());const u=this.tryParse((n=>{var r,a;c=this.tsParseTypeParameters(this.tsParseConstModifier);const i=super.parseMaybeAssign(e,t);return("ArrowFunctionExpression"!==i.type||null!=(r=i.extra)&&r.parenthesized)&&n(),0!==(null==(a=c)?void 0:a.params.length)&&this.resetStartLocationFromNode(i,c),i.typeParameters=c,i}),o);if(!u.error&&!u.aborted)return c&&this.reportReservedArrowTypeParam(c),u.node;if(!l&&(Pt(!this.hasPlugin("jsx")),p=this.tryParse((()=>super.parseMaybeAssign(e,t)),o),!p.error))return p.node;if(null!=(r=l)&&r.node)return this.state=l.failState,l.node;if(u.node)return this.state=u.failState,c&&this.reportReservedArrowTypeParam(c),u.node;if(null!=(a=p)&&a.node)return this.state=p.failState,p.node;throw(null==(i=l)?void 0:i.error)||u.error||(null==(s=p)?void 0:s.error)}reportReservedArrowTypeParam(e){var t;1!==e.params.length||e.params[0].constraint||null!=(t=e.extra)&&t.trailingComma||!this.getPluginOption("typescript","disallowAmbiguousJSXLike")||this.raise(xt.ReservedArrowTypeParam,{at:e})}parseMaybeUnary(e,t){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,t)}parseArrow(e){if(this.match(14)){const t=this.tryParse((e=>{const t=this.tsParseTypeOrTypePredicateAnnotation(14);return!this.canInsertSemicolon()&&this.match(19)||e(),t}));if(t.aborted)return;t.thrown||(t.error&&(this.state=t.failState),e.returnType=t.node)}return super.parseArrow(e)}parseAssignableListItemTypes(e,t){if(!(2&t))return e;this.eat(17)&&(e.optional=!0);const n=this.tsTryParseTypeAnnotation();return n&&(e.typeAnnotation=n),this.resetEndLocation(e),e}isAssignable(e,t){switch(e.type){case"TSTypeCastExpression":return this.isAssignable(e.expression,t);case"TSParameterProperty":return!0;default:return super.isAssignable(e,t)}}toAssignable(e,t=!1){switch(e.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(e,t);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":t?this.expressionScope.recordArrowParameterBindingError(xt.UnexpectedTypeCastInParameter,{at:e}):this.raise(xt.UnexpectedTypeCastInParameter,{at:e}),this.toAssignable(e.expression,t);break;case"AssignmentExpression":t||"TSTypeCastExpression"!==e.left.type||(e.left=this.typeCastToParameter(e.left));default:super.toAssignable(e,t)}}toAssignableParenthesizedExpression(e,t){switch(e.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(e.expression,t);break;default:super.toAssignable(e,t)}}checkToRestConversion(e,t){switch(e.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(e.expression,!1);break;default:super.checkToRestConversion(e,t)}}isValidLVal(e,t,n){return r={TSTypeCastExpression:!0,TSParameterProperty:"parameter",TSNonNullExpression:"expression",TSAsExpression:(64!==n||!t)&&["expression",!0],TSSatisfiesExpression:(64!==n||!t)&&["expression",!0],TSTypeAssertion:(64!==n||!t)&&["expression",!0]},a=e,Object.hasOwnProperty.call(r,a)&&r[a]||super.isValidLVal(e,t,n);var r,a}parseBindingAtom(){return 78===this.state.type?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e){if(this.match(47)||this.match(51)){const t=this.tsParseTypeArgumentsInExpression();if(this.match(10)){const n=super.parseMaybeDecoratorArguments(e);return n.typeParameters=t,n}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e)}checkCommaAfterRest(e){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===e?(this.next(),!1):super.checkCommaAfterRest(e)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(e,t){const n=super.parseMaybeDefault(e,t);return"AssignmentPattern"===n.type&&n.typeAnnotation&&n.right.start<n.typeAnnotation.start&&this.raise(xt.TypeAnnotationAfterAssign,{at:n.typeAnnotation}),n}getTokenFromCode(e){if(this.state.inType){if(62===e)return void this.finishOp(48,1);if(60===e)return void this.finishOp(47,1)}super.getTokenFromCode(e)}reScan_lt_gt(){const{type:e}=this.state;47===e?(this.state.pos-=1,this.readToken_lt()):48===e&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){const{type:e}=this.state;return 51===e?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableList(e,t,n){for(let t=0;t<e.length;t++){const n=e[t];"TSTypeCastExpression"===(null==n?void 0:n.type)&&(e[t]=this.typeCastToParameter(n))}super.toAssignableList(e,t,n)}typeCastToParameter(e){return e.expression.typeAnnotation=e.typeAnnotation,this.resetEndLocation(e.expression,e.typeAnnotation.loc.end),e.expression}shouldParseArrow(e){return this.match(14)?e.every((e=>this.isAssignable(e,!0))):super.shouldParseArrow(e)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(e){if(this.match(47)||this.match(51)){const t=this.tsTryParseAndCatch((()=>this.tsParseTypeArgumentsInExpression()));t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){const t=super.getGetterSetterExpectedParamCount(e),n=this.getObjectOrClassMethodParams(e)[0];return n&&this.isThisParam(n)?t+1:t}parseCatchClauseParam(){const e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){const t=this.state.isAmbientContext;this.state.isAmbientContext=!0;try{return e()}finally{this.state.isAmbientContext=t}}parseClass(e,t,n){const r=this.state.inAbstractClass;this.state.inAbstractClass=!!e.abstract;try{return super.parseClass(e,t,n)}finally{this.state.inAbstractClass=r}}tsParseAbstractDeclaration(e,t){if(this.match(80))return e.abstract=!0,this.maybeTakeDecorators(t,this.parseClass(e,!0,!1));if(this.isContextual(127)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise(xt.NonClassMethodPropertyHasAbstractModifer,{at:e}),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(e,t,n,r,a,i,s){const o=super.parseMethod(e,t,n,r,a,i,s);if(o.abstract&&(this.hasPlugin("estree")?o.value.body:o.body)){const{key:e}=o;this.raise(xt.AbstractMethodHasImplementation,{at:o,methodName:"Identifier"!==e.type||o.computed?`[${this.input.slice(e.start,e.end)}]`:e.name})}return o}tsParseTypeParameterName(){return this.parseIdentifier().name}shouldParseAsAmbientContext(){return!!this.getPluginOption("typescript","dts")}parse(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.parse()}getExpression(){return this.shouldParseAsAmbientContext()&&(this.state.isAmbientContext=!0),super.getExpression()}parseExportSpecifier(e,t,n,r){return!t&&r?(this.parseTypeOnlyImportExportSpecifier(e,!1,n),this.finishNode(e,"ExportSpecifier")):(e.exportKind="value",super.parseExportSpecifier(e,t,n,r))}parseImportSpecifier(e,t,n,r,a){return!t&&r?(this.parseTypeOnlyImportExportSpecifier(e,!0,n),this.finishNode(e,"ImportSpecifier")):(e.importKind="value",super.parseImportSpecifier(e,t,n,r,n?4098:4096))}parseTypeOnlyImportExportSpecifier(e,t,n){const r=t?"imported":"local",a=t?"local":"exported";let i,s=e[r],o=!1,l=!0;const p=s.loc.start;if(this.isContextual(93)){const e=this.parseIdentifier();if(this.isContextual(93)){const n=this.parseIdentifier();X(this.state.type)?(o=!0,s=e,i=t?this.parseIdentifier():this.parseModuleExportName(),l=!1):(i=n,l=!1)}else X(this.state.type)?(l=!1,i=t?this.parseIdentifier():this.parseModuleExportName()):(o=!0,s=e)}else X(this.state.type)&&(o=!0,t?(s=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(s.name,s.loc.start,!0,!0)):s=this.parseModuleExportName());o&&n&&this.raise(t?xt.TypeModifierIsUsedInTypeImports:xt.TypeModifierIsUsedInTypeExports,{at:p}),e[r]=s,e[a]=i,e[t?"importKind":"exportKind"]=o?"type":"value",l&&this.eatContextual(93)&&(e[a]=t?this.parseIdentifier():this.parseModuleExportName()),e[a]||(e[a]=st(e[r])),t&&this.checkIdentifier(e[a],o?4098:4096)}},v8intrinsic:e=>class extends e{parseV8Intrinsic(){if(this.match(54)){const e=this.state.startLoc,t=this.startNode();if(this.next(),U(this.state.type)){const e=this.parseIdentifierName(),n=this.createIdentifier(t,e);if(n.type="V8IntrinsicIdentifier",this.match(10))return n}this.unexpected(e)}}parseExprAtom(e){return this.parseV8Intrinsic()||super.parseExprAtom(e)}},placeholders:e=>class extends e{parsePlaceholder(e){if(this.match(142)){const t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(142),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){const n=!(!e.expectedNode||"Placeholder"!==e.type);return e.expectedNode=t,n?e:this.finishNode(e,"Placeholder")}getTokenFromCode(e){37===e&&37===this.input.charCodeAt(this.state.pos+1)?this.finishOp(142,2):super.getTokenFromCode(e)}parseExprAtom(e){return this.parsePlaceholder("Expression")||super.parseExprAtom(e)}parseIdentifier(e){return this.parsePlaceholder("Identifier")||super.parseIdentifier(e)}checkReservedWord(e,t,n,r){void 0!==e&&super.checkReservedWord(e,t,n,r)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(e,t,n){return"Placeholder"===e||super.isValidLVal(e,t,n)}toAssignable(e,t){e&&"Placeholder"===e.type&&"Expression"===e.expectedNode?e.expectedNode="Pattern":super.toAssignable(e,t)}chStartsBindingIdentifier(e,t){return!!super.chStartsBindingIdentifier(e,t)||142===this.lookahead().type}verifyBreakContinue(e,t){e.label&&"Placeholder"===e.label.type||super.verifyBreakContinue(e,t)}parseExpressionStatement(e,t){var n;if("Placeholder"!==t.type||null!=(n=t.extra)&&n.parenthesized)return super.parseExpressionStatement(e,t);if(this.match(14)){const n=e;return n.label=this.finishPlaceholder(t,"Identifier"),this.next(),n.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(n,"LabeledStatement")}return this.semicolon(),e.name=t.name,this.finishPlaceholder(e,"Statement")}parseBlock(e,t,n){return this.parsePlaceholder("BlockStatement")||super.parseBlock(e,t,n)}parseFunctionId(e){return this.parsePlaceholder("Identifier")||super.parseFunctionId(e)}parseClass(e,t,n){const r=t?"ClassDeclaration":"ClassExpression";this.next();const a=this.state.strict,i=this.parsePlaceholder("Identifier");if(i){if(!(this.match(81)||this.match(142)||this.match(5))){if(n||!t)return e.id=null,e.body=this.finishPlaceholder(i,"ClassBody"),this.finishNode(e,r);throw this.raise(Dt.ClassNameIsRequired,{at:this.state.startLoc})}e.id=i}else this.parseClassId(e,t,n);return super.parseClassSuper(e),e.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!e.superClass,a),this.finishNode(e,r)}parseExport(e,t){const n=this.parsePlaceholder("Identifier");if(!n)return super.parseExport(e,t);if(!this.isContextual(97)&&!this.match(12))return e.specifiers=[],e.source=null,e.declaration=this.finishPlaceholder(n,"Declaration"),this.finishNode(e,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");const r=this.startNode();return r.exported=n,e.specifiers=[this.finishNode(r,"ExportDefaultSpecifier")],super.parseExport(e,t)}isExportDefaultSpecifier(){if(this.match(65)){const e=this.nextTokenStart();if(this.isUnparsedContextual(e,"from")&&this.input.startsWith(G(142),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,t){var n;return!(null==(n=e.specifiers)||!n.length)||super.maybeParseExportDefaultSpecifier(e,t)}checkExport(e){const{specifiers:t}=e;null!=t&&t.length&&(e.specifiers=t.filter((e=>"Placeholder"===e.exported.type))),super.checkExport(e),e.specifiers=t}parseImport(e){const t=this.parsePlaceholder("Identifier");if(!t)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(97)&&!this.match(12))return e.source=this.finishPlaceholder(t,"StringLiteral"),this.semicolon(),this.finishNode(e,"ImportDeclaration");const n=this.startNodeAtNode(t);return n.local=t,e.specifiers.push(this.finishNode(n,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(e)||this.parseNamedImportSpecifiers(e)),this.expectContextual(97),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.state.lastTokEndLoc.index&&this.raise(Dt.UnexpectedSpace,{at:this.state.lastTokEndLoc})}}},kt=Object.keys(Mt),Bt={sourceType:"script",sourceFilename:void 0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0};class Ft extends Et{checkProto(e,t,n,r){if("SpreadElement"===e.type||this.isObjectMethod(e)||e.computed||e.shorthand)return;const a=e.key;if("__proto__"===("Identifier"===a.type?a.name:a.value)){if(t)return void this.raise(S.RecordNoProto,{at:a});n.used&&(r?null===r.doubleProtoLoc&&(r.doubleProtoLoc=a.loc.start):this.raise(S.DuplicateProto,{at:a})),n.used=!0}}shouldExitDescending(e,t){return"ArrowFunctionExpression"===e.type&&e.start===t}getExpression(){this.enterInitialScopes(),this.nextToken();const e=this.parseExpression();return this.match(137)||this.unexpected(),this.finalizeRemainingComments(),e.comments=this.state.comments,e.errors=this.state.errors,this.options.tokens&&(e.tokens=this.tokens),e}parseExpression(e,t){return e?this.disallowInAnd((()=>this.parseExpressionBase(t))):this.allowInAnd((()=>this.parseExpressionBase(t)))}parseExpressionBase(e){const t=this.state.startLoc,n=this.parseMaybeAssign(e);if(this.match(12)){const r=this.startNodeAt(t);for(r.expressions=[n];this.eat(12);)r.expressions.push(this.parseMaybeAssign(e));return this.toReferencedList(r.expressions),this.finishNode(r,"SequenceExpression")}return n}parseMaybeAssignDisallowIn(e,t){return this.disallowInAnd((()=>this.parseMaybeAssign(e,t)))}parseMaybeAssignAllowIn(e,t){return this.allowInAnd((()=>this.parseMaybeAssign(e,t)))}setOptionalParametersError(e,t){var n;e.optionalParametersLoc=null!=(n=null==t?void 0:t.loc)?n:this.state.startLoc}parseMaybeAssign(e,t){const n=this.state.startLoc;if(this.isContextual(106)&&this.prodParam.hasYield){let e=this.parseYield();return t&&(e=t.call(this,e,n)),e}let r;e?r=!1:(e=new rt,r=!0);const{type:a}=this.state;(10===a||U(a))&&(this.state.potentialArrowAt=this.state.start);let i=this.parseMaybeConditional(e);if(t&&(i=t.call(this,i,n)),(s=this.state.type)>=29&&s<=33){const t=this.startNodeAt(n),r=this.state.value;if(t.operator=r,this.match(29)){this.toAssignable(i,!0),t.left=i;const r=n.index;null!=e.doubleProtoLoc&&e.doubleProtoLoc.index>=r&&(e.doubleProtoLoc=null),null!=e.shorthandAssignLoc&&e.shorthandAssignLoc.index>=r&&(e.shorthandAssignLoc=null),null!=e.privateKeyLoc&&e.privateKeyLoc.index>=r&&(this.checkDestructuringPrivate(e),e.privateKeyLoc=null)}else t.left=i;return this.next(),t.right=this.parseMaybeAssign(),this.checkLVal(i,{in:this.finishNode(t,"AssignmentExpression")}),t}var s;return r&&this.checkExpressionErrors(e,!0),i}parseMaybeConditional(e){const t=this.state.startLoc,n=this.state.potentialArrowAt,r=this.parseExprOps(e);return this.shouldExitDescending(r,n)?r:this.parseConditional(r,t,e)}parseConditional(e,t,n){if(this.eat(17)){const n=this.startNodeAt(t);return n.test=e,n.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),n.alternate=this.parseMaybeAssign(),this.finishNode(n,"ConditionalExpression")}return e}parseMaybeUnaryOrPrivate(e){return this.match(136)?this.parsePrivateName():this.parseMaybeUnary(e)}parseExprOps(e){const t=this.state.startLoc,n=this.state.potentialArrowAt,r=this.parseMaybeUnaryOrPrivate(e);return this.shouldExitDescending(r,n)?r:this.parseExprOp(r,t,-1)}parseExprOp(e,t,n){if(this.isPrivateName(e)){const t=this.getPrivateNameSV(e);(n>=z(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(S.PrivateInExpectedIn,{at:e,identifierName:t}),this.classScope.usePrivateName(t,e.loc.start)}const r=this.state.type;if((a=r)>=39&&a<=59&&(this.prodParam.hasIn||!this.match(58))){let a=z(r);if(a>n){if(39===r){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,t)}const i=this.startNodeAt(t);i.left=e,i.operator=this.state.value;const s=41===r||42===r,o=40===r;if(o&&(a=z(42)),this.next(),39===r&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&96===this.state.type&&this.prodParam.hasAwait)throw this.raise(S.UnexpectedAwaitAfterPipelineBody,{at:this.state.startLoc});i.right=this.parseExprOpRightExpr(r,a);const l=this.finishNode(i,s||o?"LogicalExpression":"BinaryExpression"),p=this.state.type;if(o&&(41===p||42===p)||s&&40===p)throw this.raise(S.MixingCoalesceWithLogical,{at:this.state.startLoc});return this.parseExprOp(l,t,n)}}var a;return e}parseExprOpRightExpr(e,t){const n=this.state.startLoc;if(39===e)switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext((()=>this.parseHackPipeBody()));case"smart":return this.withTopicBindingContext((()=>{if(this.prodParam.hasYield&&this.isContextual(106))throw this.raise(S.PipeBodyIsTighter,{at:this.state.startLoc});return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e,t),n)}));case"fsharp":return this.withSoloAwaitPermittingContext((()=>this.parseFSharpPipelineBody(t)))}return this.parseExprOpBaseRightExpr(e,t)}parseExprOpBaseRightExpr(e,t){const n=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),n,57===e?t-1:t)}parseHackPipeBody(){var e;const{startLoc:t}=this.state,n=this.parseMaybeAssign();return!u.has(n.type)||null!=(e=n.extra)&&e.parenthesized||this.raise(S.PipeUnparenthesizedBody,{at:t,type:n.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(S.PipeTopicUnused,{at:t}),n}checkExponentialAfterUnary(e){this.match(57)&&this.raise(S.UnexpectedTokenUnaryExponentiation,{at:e.argument})}parseMaybeUnary(e,t){const n=this.state.startLoc,r=this.isContextual(96);if(r&&this.isAwaitAllowed()){this.next();const e=this.parseAwait(n);return t||this.checkExponentialAfterUnary(e),e}const a=this.match(34),i=this.startNode();if(s=this.state.type,R[s]){i.operator=this.state.value,i.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");const n=this.match(89);if(this.next(),i.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&n){const e=i.argument;"Identifier"===e.type?this.raise(S.StrictDelete,{at:i}):this.hasPropertyAsPrivateName(e)&&this.raise(S.DeletePrivateField,{at:i})}if(!a)return t||this.checkExponentialAfterUnary(i),this.finishNode(i,"UnaryExpression")}var s;const o=this.parseUpdate(i,a,e);if(r){const{type:e}=this.state;if((this.hasPlugin("v8intrinsic")?W(e):W(e)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(S.AwaitNotInAsyncContext,{at:n}),this.parseAwait(n)}return o}parseUpdate(e,t,n){if(t){const t=e;return this.checkLVal(t.argument,{in:this.finishNode(t,"UpdateExpression")}),e}const r=this.state.startLoc;let a=this.parseExprSubscripts(n);if(this.checkExpressionErrors(n,!1))return a;for(;34===this.state.type&&!this.canInsertSemicolon();){const e=this.startNodeAt(r);e.operator=this.state.value,e.prefix=!1,e.argument=a,this.next(),this.checkLVal(a,{in:a=this.finishNode(e,"UpdateExpression")})}return a}parseExprSubscripts(e){const t=this.state.startLoc,n=this.state.potentialArrowAt,r=this.parseExprAtom(e);return this.shouldExitDescending(r,n)?r:this.parseSubscripts(r,t)}parseSubscripts(e,t,n){const r={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(e),stop:!1};do{e=this.parseSubscript(e,t,n,r),r.maybeAsyncArrow=!1}while(!r.stop);return e}parseSubscript(e,t,n,r){const{type:a}=this.state;if(!n&&15===a)return this.parseBind(e,t,n,r);if(H(a))return this.parseTaggedTemplateExpression(e,t,r);let i=!1;if(18===a){if(n&&(this.raise(S.OptionalChainingNoNew,{at:this.state.startLoc}),40===this.lookaheadCharCode()))return r.stop=!0,e;r.optionalChainMember=i=!0,this.next()}if(!n&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,t,r,i);{const n=this.eat(0);return n||i||this.eat(16)?this.parseMember(e,t,r,n,i):(r.stop=!0,e)}}parseMember(e,t,n,r,a){const i=this.startNodeAt(t);return i.object=e,i.computed=r,r?(i.property=this.parseExpression(),this.expect(3)):this.match(136)?("Super"===e.type&&this.raise(S.SuperPrivateField,{at:t}),this.classScope.usePrivateName(this.state.value,this.state.startLoc),i.property=this.parsePrivateName()):i.property=this.parseIdentifier(!0),n.optionalChainMember?(i.optional=a,this.finishNode(i,"OptionalMemberExpression")):this.finishNode(i,"MemberExpression")}parseBind(e,t,n,r){const a=this.startNodeAt(t);return a.object=e,this.next(),a.callee=this.parseNoCallExpr(),r.stop=!0,this.parseSubscripts(this.finishNode(a,"BindExpression"),t,n)}parseCoverCallAndAsyncArrowHead(e,t,n,r){const a=this.state.maybeInArrowParameters;let i=null;this.state.maybeInArrowParameters=!0,this.next();const s=this.startNodeAt(t);s.callee=e;const{maybeAsyncArrow:o,optionalChainMember:l}=n;o&&(this.expressionScope.enter(new He(2)),i=new rt),l&&(s.optional=r),s.arguments=r?this.parseCallExpressionArguments(11):this.parseCallExpressionArguments(11,"Import"===e.type,"Super"!==e.type,s,i);let p=this.finishCallExpression(s,l);return o&&this.shouldParseAsyncArrow()&&!r?(n.stop=!0,this.checkDestructuringPrivate(i),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),p=this.parseAsyncArrowFromCallExpression(this.startNodeAt(t),p)):(o&&(this.checkExpressionErrors(i,!0),this.expressionScope.exit()),this.toReferencedArguments(p)),this.state.maybeInArrowParameters=a,p}toReferencedArguments(e,t){this.toReferencedListDeep(e.arguments,t)}parseTaggedTemplateExpression(e,t,n){const r=this.startNodeAt(t);return r.tag=e,r.quasi=this.parseTemplate(!0),n.optionalChainMember&&this.raise(S.OptionalChainingNoTemplate,{at:t}),this.finishNode(r,"TaggedTemplateExpression")}atPossibleAsyncArrow(e){return"Identifier"===e.type&&"async"===e.name&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start==5&&e.start===this.state.potentialArrowAt}expectImportAttributesPlugin(){this.hasPlugin("importAssertions")||this.expectPlugin("importAttributes")}finishCallExpression(e,t){if("Import"===e.callee.type)if(2===e.arguments.length&&(this.hasPlugin("moduleAttributes")||this.expectImportAttributesPlugin()),0===e.arguments.length||e.arguments.length>2)this.raise(S.ImportCallArity,{at:e,maxArgumentCount:this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")?2:1});else for(const t of e.arguments)"SpreadElement"===t.type&&this.raise(S.ImportCallSpreadArgument,{at:t});return this.finishNode(e,t?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(e,t,n,r,a){const i=[];let s=!0;const o=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){!t||this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions")||this.hasPlugin("moduleAttributes")||this.raise(S.ImportCallArgumentTrailingComma,{at:this.state.lastTokStartLoc}),r&&this.addTrailingCommaExtraToNode(r),this.next();break}i.push(this.parseExprListItem(!1,a,n))}return this.state.inFSharpPipelineDirectBody=o,i}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(e,t){var n;return this.resetPreviousNodeTrailingComments(t),this.expect(19),this.parseArrowExpression(e,t.arguments,!0,null==(n=t.extra)?void 0:n.trailingCommaLoc),t.innerComments&&xe(e,t.innerComments),t.callee.trailingComments&&xe(e,t.callee.trailingComments),e}parseNoCallExpr(){const e=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,!0)}parseExprAtom(e){let t,n=null;const{type:r}=this.state;switch(r){case 79:return this.parseSuper();case 83:return t=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(t):(this.match(10)||this.raise(S.UnsupportedImport,{at:this.state.lastTokStartLoc}),this.finishNode(t,"Import"));case 78:return t=this.startNode(),this.next(),this.finishNode(t,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 132:return this.parseNumericLiteral(this.state.value);case 133:return this.parseBigIntLiteral(this.state.value);case 134:return this.parseDecimalLiteral(this.state.value);case 131:return this.parseStringLiteral(this.state.value);case 84:return this.parseNullLiteral();case 85:return this.parseBooleanLiteral(!0);case 86:return this.parseBooleanLiteral(!1);case 10:{const e=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(e)}case 2:case 1:return this.parseArrayLike(2===this.state.type?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,e);case 6:case 7:return this.parseObjectLike(6===this.state.type?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,e);case 68:return this.parseFunctionOrFunctionSent();case 26:n=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(n,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{t=this.startNode(),this.next(),t.object=null;const e=t.callee=this.parseNoCallExpr();if("MemberExpression"===e.type)return this.finishNode(t,"BindExpression");throw this.raise(S.UnsupportedBind,{at:e})}case 136:return this.raise(S.PrivateInExpectedIn,{at:this.state.startLoc,identifierName:this.state.value}),this.parsePrivateName();case 33:return this.parseTopicReferenceThenEqualsSign(54,"%");case 32:return this.parseTopicReferenceThenEqualsSign(44,"^");case 37:case 38:return this.parseTopicReference("hack");case 44:case 54:case 27:{const e=this.getPluginOption("pipelineOperator","proposal");if(e)return this.parseTopicReference(e);this.unexpected();break}case 47:{const e=this.input.codePointAt(this.nextTokenStart());se(e)||62===e?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(U(r)){if(this.isContextual(125)&&123===this.lookaheadInLineCharCode())return this.parseModuleExpression();const e=this.state.potentialArrowAt===this.state.start,t=this.state.containsEsc,n=this.parseIdentifier();if(!t&&"async"===n.name&&!this.canInsertSemicolon()){const{type:e}=this.state;if(68===e)return this.resetPreviousNodeTrailingComments(n),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(n));if(U(e))return 61===this.lookaheadCharCode()?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(n)):n;if(90===e)return this.resetPreviousNodeTrailingComments(n),this.parseDo(this.startNodeAtNode(n),!0)}return e&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(n),[n],!1)):n}this.unexpected()}}parseTopicReferenceThenEqualsSign(e,t){const n=this.getPluginOption("pipelineOperator","proposal");if(n)return this.state.type=e,this.state.value=t,this.state.pos--,this.state.end--,this.state.endLoc=i(this.state.endLoc,-1),this.parseTopicReference(n);this.unexpected()}parseTopicReference(e){const t=this.startNode(),n=this.state.startLoc,r=this.state.type;return this.next(),this.finishTopicReference(t,n,e,r)}finishTopicReference(e,t,n,r){if(this.testTopicReferenceConfiguration(n,t,r)){const r="smart"===n?"PipelinePrimaryTopicReference":"TopicReference";return this.topicReferenceIsAllowedInCurrentContext()||this.raise("smart"===n?S.PrimaryTopicNotAllowed:S.PipeTopicUnbound,{at:t}),this.registerTopicReference(),this.finishNode(e,r)}throw this.raise(S.PipeTopicUnconfiguredToken,{at:t,token:G(r)})}testTopicReferenceConfiguration(e,t,n){switch(e){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:G(n)}]);case"smart":return 27===n;default:throw this.raise(S.PipeTopicRequiresHackPipes,{at:t})}}parseAsyncArrowUnaryFunction(e){this.prodParam.enter(tt(!0,this.prodParam.hasYield));const t=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(S.LineTerminatorBeforeArrow,{at:this.state.curPosition()}),this.expect(19),this.parseArrowExpression(e,t,!0)}parseDo(e,t){this.expectPlugin("doExpressions"),t&&this.expectPlugin("asyncDoExpressions"),e.async=t,this.next();const n=this.state.labels;return this.state.labels=[],t?(this.prodParam.enter(2),e.body=this.parseBlock(),this.prodParam.exit()):e.body=this.parseBlock(),this.state.labels=n,this.finishNode(e,"DoExpression")}parseSuper(){const e=this.startNode();return this.next(),!this.match(10)||this.scope.allowDirectSuper||this.options.allowSuperOutsideMethod?this.scope.allowSuper||this.options.allowSuperOutsideMethod||this.raise(S.UnexpectedSuper,{at:e}):this.raise(S.SuperNotAllowed,{at:e}),this.match(10)||this.match(0)||this.match(16)||this.raise(S.UnsupportedSuper,{at:e}),this.finishNode(e,"Super")}parsePrivateName(){const e=this.startNode(),t=this.startNodeAt(i(this.state.startLoc,1)),n=this.state.value;return this.next(),e.id=this.createIdentifier(t,n),this.finishNode(e,"PrivateName")}parseFunctionOrFunctionSent(){const e=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"function");return this.next(),this.match(102)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(e,t,"sent")}return this.parseFunction(e)}parseMetaProperty(e,t,n){e.meta=t;const r=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==n||r)&&this.raise(S.UnsupportedMetaProperty,{at:e.property,target:t.name,onlyValidPropertyName:n}),this.finishNode(e,"MetaProperty")}parseImportMetaProperty(e){const t=this.createIdentifier(this.startNodeAtNode(e),"import");return this.next(),this.isContextual(100)&&(this.inModule||this.raise(S.ImportMetaOutsideModule,{at:t}),this.sawUnambiguousESM=!0),this.parseMetaProperty(e,t,"meta")}parseLiteralAtNode(e,t,n){return this.addExtra(n,"rawValue",e),this.addExtra(n,"raw",this.input.slice(n.start,this.state.end)),n.value=e,this.next(),this.finishNode(n,t)}parseLiteral(e,t){const n=this.startNode();return this.parseLiteralAtNode(e,t,n)}parseStringLiteral(e){return this.parseLiteral(e,"StringLiteral")}parseNumericLiteral(e){return this.parseLiteral(e,"NumericLiteral")}parseBigIntLiteral(e){return this.parseLiteral(e,"BigIntLiteral")}parseDecimalLiteral(e){return this.parseLiteral(e,"DecimalLiteral")}parseRegExpLiteral(e){const t=this.parseLiteral(e.value,"RegExpLiteral");return t.pattern=e.pattern,t.flags=e.flags,t}parseBooleanLiteral(e){const t=this.startNode();return t.value=e,this.next(),this.finishNode(t,"BooleanLiteral")}parseNullLiteral(){const e=this.startNode();return this.next(),this.finishNode(e,"NullLiteral")}parseParenAndDistinguishExpression(e){const t=this.state.startLoc;let n;this.next(),this.expressionScope.enter(new He(1));const r=this.state.maybeInArrowParameters,a=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;const i=this.state.startLoc,s=[],o=new rt;let l,p,c=!0;for(;!this.match(11);){if(c)c=!1;else if(this.expect(12,null===o.optionalParametersLoc?null:o.optionalParametersLoc),this.match(11)){p=this.state.startLoc;break}if(this.match(21)){const e=this.state.startLoc;if(l=this.state.startLoc,s.push(this.parseParenItem(this.parseRestBinding(),e)),!this.checkCommaAfterRest(41))break}else s.push(this.parseMaybeAssignAllowIn(o,this.parseParenItem))}const u=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=r,this.state.inFSharpPipelineDirectBody=a;let d=this.startNodeAt(t);return e&&this.shouldParseArrow(s)&&(d=this.parseArrow(d))?(this.checkDestructuringPrivate(o),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(d,s,!1),d):(this.expressionScope.exit(),s.length||this.unexpected(this.state.lastTokStartLoc),p&&this.unexpected(p),l&&this.unexpected(l),this.checkExpressionErrors(o,!0),this.toReferencedListDeep(s,!0),s.length>1?(n=this.startNodeAt(i),n.expressions=s,this.finishNode(n,"SequenceExpression"),this.resetEndLocation(n,u)):n=s[0],this.wrapParenthesis(t,n))}wrapParenthesis(e,t){if(!this.options.createParenthesizedExpressions)return this.addExtra(t,"parenthesized",!0),this.addExtra(t,"parenStart",e.index),this.takeSurroundingComments(t,e.index,this.state.lastTokEndLoc.index),t;const n=this.startNodeAt(e);return n.expression=t,this.finishNode(n,"ParenthesizedExpression")}shouldParseArrow(e){return!this.canInsertSemicolon()}parseArrow(e){if(this.eat(19))return e}parseParenItem(e,t){return e}parseNewOrNewTarget(){const e=this.startNode();if(this.next(),this.match(16)){const t=this.createIdentifier(this.startNodeAtNode(e),"new");this.next();const n=this.parseMetaProperty(e,t,"target");return this.scope.inNonArrowFunction||this.scope.inClass||this.options.allowNewTargetOutsideFunction||this.raise(S.UnexpectedNewTarget,{at:n}),n}return this.parseNew(e)}parseNew(e){if(this.parseNewCallee(e),this.eat(10)){const t=this.parseExprList(11);this.toReferencedList(t),e.arguments=t}else e.arguments=[];return this.finishNode(e,"NewExpression")}parseNewCallee(e){e.callee=this.parseNoCallExpr(),"Import"===e.callee.type&&this.raise(S.ImportCallNotNewExpression,{at:e.callee})}parseTemplateElement(e){const{start:t,startLoc:n,end:r,value:a}=this.state,s=t+1,o=this.startNodeAt(i(n,1));null===a&&(e||this.raise(S.InvalidEscapeSequenceTemplate,{at:i(this.state.firstInvalidTemplateEscapePos,1)}));const l=this.match(24),p=l?-1:-2,c=r+p;o.value={raw:this.input.slice(s,c).replace(/\r\n?/g,"\n"),cooked:null===a?null:a.slice(1,p)},o.tail=l,this.next();const u=this.finishNode(o,"TemplateElement");return this.resetEndLocation(u,i(this.state.lastTokEndLoc,p)),u}parseTemplate(e){const t=this.startNode();t.expressions=[];let n=this.parseTemplateElement(e);for(t.quasis=[n];!n.tail;)t.expressions.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),t.quasis.push(n=this.parseTemplateElement(e));return this.finishNode(t,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(e,t,n,r){n&&this.expectPlugin("recordAndTuple");const a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const i=Object.create(null);let s=!0;const o=this.startNode();for(o.properties=[],this.next();!this.match(e);){if(s)s=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(o);break}let a;t?a=this.parseBindingProperty():(a=this.parsePropertyDefinition(r),this.checkProto(a,n,i,r)),n&&!this.isObjectProperty(a)&&"SpreadElement"!==a.type&&this.raise(S.InvalidRecordProperty,{at:a}),a.shorthand&&this.addExtra(a,"shorthand",!0),o.properties.push(a)}this.next(),this.state.inFSharpPipelineDirectBody=a;let l="ObjectExpression";return t?l="ObjectPattern":n&&(l="RecordExpression"),this.finishNode(o,l)}addTrailingCommaExtraToNode(e){this.addExtra(e,"trailingComma",this.state.lastTokStart),this.addExtra(e,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(e){return!e.computed&&"Identifier"===e.key.type&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(e){let t=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(S.UnsupportedPropertyDecorator,{at:this.state.startLoc});this.match(26);)t.push(this.parseDecorator());const n=this.startNode();let r,a=!1,i=!1;if(this.match(21))return t.length&&this.unexpected(),this.parseSpread();t.length&&(n.decorators=t,t=[]),n.method=!1,e&&(r=this.state.startLoc);let s=this.eat(55);this.parsePropertyNamePrefixOperator(n);const o=this.state.containsEsc,l=this.parsePropertyName(n,e);if(!s&&!o&&this.maybeAsyncOrAccessorProp(n)){const e=l.name;"async"!==e||this.hasPrecedingLineBreak()||(a=!0,this.resetPreviousNodeTrailingComments(l),s=this.eat(55),this.parsePropertyName(n)),"get"!==e&&"set"!==e||(i=!0,this.resetPreviousNodeTrailingComments(l),n.kind=e,this.match(55)&&(s=!0,this.raise(S.AccessorIsGenerator,{at:this.state.curPosition(),kind:e}),this.next()),this.parsePropertyName(n))}return this.parseObjPropValue(n,r,s,a,!1,i,e)}getGetterSetterExpectedParamCount(e){return"get"===e.kind?0:1}getObjectOrClassMethodParams(e){return e.params}checkGetterSetterParams(e){var t;const n=this.getGetterSetterExpectedParamCount(e),r=this.getObjectOrClassMethodParams(e);r.length!==n&&this.raise("get"===e.kind?S.BadGetterArity:S.BadSetterArity,{at:e}),"set"===e.kind&&"RestElement"===(null==(t=r[r.length-1])?void 0:t.type)&&this.raise(S.BadSetterRestParameter,{at:e})}parseObjectMethod(e,t,n,r,a){if(a){const n=this.parseMethod(e,t,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(n),n}if(n||t||this.match(10))return r&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,t,n,!1,!1,"ObjectMethod")}parseObjectProperty(e,t,n,r){if(e.shorthand=!1,this.eat(14))return e.value=n?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(r),this.finishNode(e,"ObjectProperty");if(!e.computed&&"Identifier"===e.key.type){if(this.checkReservedWord(e.key.name,e.key.loc.start,!0,!1),n)e.value=this.parseMaybeDefault(t,st(e.key));else if(this.match(29)){const n=this.state.startLoc;null!=r?null===r.shorthandAssignLoc&&(r.shorthandAssignLoc=n):this.raise(S.InvalidCoverInitializedName,{at:n}),e.value=this.parseMaybeDefault(t,st(e.key))}else e.value=st(e.key);return e.shorthand=!0,this.finishNode(e,"ObjectProperty")}}parseObjPropValue(e,t,n,r,a,i,s){const o=this.parseObjectMethod(e,n,r,a,i)||this.parseObjectProperty(e,t,a,s);return o||this.unexpected(),o}parsePropertyName(e,t){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{const{type:n,value:r}=this.state;let a;if(X(n))a=this.parseIdentifier(!0);else switch(n){case 132:a=this.parseNumericLiteral(r);break;case 131:a=this.parseStringLiteral(r);break;case 133:a=this.parseBigIntLiteral(r);break;case 134:a=this.parseDecimalLiteral(r);break;case 136:{const e=this.state.startLoc;null!=t?null===t.privateKeyLoc&&(t.privateKeyLoc=e):this.raise(S.UnexpectedPrivateField,{at:e}),a=this.parsePrivateName();break}default:this.unexpected()}e.key=a,136!==n&&(e.computed=!1)}return e.key}initFunction(e,t){e.id=null,e.generator=!1,e.async=t}parseMethod(e,t,n,r,a,i,s=!1){this.initFunction(e,n),e.generator=t,this.scope.enter(18|(s?64:0)|(a?32:0)),this.prodParam.enter(tt(n,e.generator)),this.parseFunctionParams(e,r);const o=this.parseFunctionBodyAndFinish(e,i,!0);return this.prodParam.exit(),this.scope.exit(),o}parseArrayLike(e,t,n,r){n&&this.expectPlugin("recordAndTuple");const a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const i=this.startNode();return this.next(),i.elements=this.parseExprList(e,!n,r,i),this.state.inFSharpPipelineDirectBody=a,this.finishNode(i,n?"TupleExpression":"ArrayExpression")}parseArrowExpression(e,t,n,r){this.scope.enter(6);let a=tt(n,!1);!this.match(5)&&this.prodParam.hasIn&&(a|=8),this.prodParam.enter(a),this.initFunction(e,n);const i=this.state.maybeInArrowParameters;return t&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(e,t,r)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(e,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=i,this.finishNode(e,"ArrowFunctionExpression")}setArrowFunctionParameters(e,t,n){this.toAssignableList(t,n,!1),e.params=t}parseFunctionBodyAndFinish(e,t,n=!1){return this.parseFunctionBody(e,!1,n),this.finishNode(e,t)}parseFunctionBody(e,t,n=!1){const r=t&&!this.match(5);if(this.expressionScope.enter(Ze()),r)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,t,!1);else{const r=this.state.strict,a=this.state.labels;this.state.labels=[],this.prodParam.enter(4|this.prodParam.currentFlags()),e.body=this.parseBlock(!0,!1,(a=>{const i=!this.isSimpleParamList(e.params);a&&i&&this.raise(S.IllegalLanguageModeDirective,{at:"method"!==e.kind&&"constructor"!==e.kind||!e.key?e:e.key.loc.end});const s=!r&&this.state.strict;this.checkParams(e,!(this.state.strict||t||n||i),t,s),this.state.strict&&e.id&&this.checkIdentifier(e.id,65,s)})),this.prodParam.exit(),this.state.labels=a}this.expressionScope.exit()}isSimpleParameter(e){return"Identifier"===e.type}isSimpleParamList(e){for(let t=0,n=e.length;t<n;t++)if(!this.isSimpleParameter(e[t]))return!1;return!0}checkParams(e,t,n,r=!0){const a=!t&&new Set,i={type:"FormalParameters"};for(const t of e.params)this.checkLVal(t,{in:i,binding:5,checkClashes:a,strictModeChanged:r})}parseExprList(e,t,n,r){const a=[];let i=!0;for(;!this.eat(e);){if(i)i=!1;else if(this.expect(12),this.match(e)){r&&this.addTrailingCommaExtraToNode(r),this.next();break}a.push(this.parseExprListItem(t,n))}return a}parseExprListItem(e,t,n){let r;if(this.match(12))e||this.raise(S.UnexpectedToken,{at:this.state.curPosition(),unexpected:","}),r=null;else if(this.match(21)){const e=this.state.startLoc;r=this.parseParenItem(this.parseSpread(t),e)}else if(this.match(17)){this.expectPlugin("partialApplication"),n||this.raise(S.UnexpectedArgumentPlaceholder,{at:this.state.startLoc});const e=this.startNode();this.next(),r=this.finishNode(e,"ArgumentPlaceholder")}else r=this.parseMaybeAssignAllowIn(t,this.parseParenItem);return r}parseIdentifier(e){const t=this.startNode(),n=this.parseIdentifierName(e);return this.createIdentifier(t,n)}createIdentifier(e,t){return e.name=t,e.loc.identifierName=t,this.finishNode(e,"Identifier")}parseIdentifierName(e){let t;const{startLoc:n,type:r}=this.state;X(r)?t=this.state.value:this.unexpected();const a=r<=92;return e?a&&this.replaceToken(130):this.checkReservedWord(t,n,a,!1),this.next(),t}checkReservedWord(e,t,n,r){if(!(e.length>10)&&function(e){return me.has(e)}(e))if(n&&function(e){return le.has(e)}(e))this.raise(S.UnexpectedKeyword,{at:t,keyword:e});else if((this.state.strict?r?ye:de:ue)(e,this.inModule))this.raise(S.UnexpectedReservedWord,{at:t,reservedWord:e});else if("yield"===e){if(this.prodParam.hasYield)return void this.raise(S.YieldBindingIdentifier,{at:t})}else if("await"===e){if(this.prodParam.hasAwait)return void this.raise(S.AwaitBindingIdentifier,{at:t});if(this.scope.inStaticBlock)return void this.raise(S.AwaitBindingIdentifierInStaticBlock,{at:t});this.expressionScope.recordAsyncArrowParametersError({at:t})}else if("arguments"===e&&this.scope.inClassAndNotInNonArrowFunction)return void this.raise(S.ArgumentsInClass,{at:t})}isAwaitAllowed(){return!!this.prodParam.hasAwait||!(!this.options.allowAwaitOutsideFunction||this.scope.inFunction)}parseAwait(e){const t=this.startNodeAt(e);return this.expressionScope.recordParameterInitializerError(S.AwaitExpressionFormalParameter,{at:t}),this.eat(55)&&this.raise(S.ObsoleteAwaitStar,{at:t}),this.scope.inFunction||this.options.allowAwaitOutsideFunction||(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(t.argument=this.parseMaybeUnary(null,!0)),this.finishNode(t,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;const{type:e}=this.state;return 53===e||10===e||0===e||H(e)||101===e&&!this.state.containsEsc||135===e||56===e||this.hasPlugin("v8intrinsic")&&54===e}parseYield(){const e=this.startNode();this.expressionScope.recordParameterInitializerError(S.YieldInParameter,{at:e}),this.next();let t=!1,n=null;if(!this.hasPrecedingLineBreak())switch(t=this.eat(55),this.state.type){case 13:case 137:case 8:case 11:case 3:case 9:case 14:case 12:if(!t)break;default:n=this.parseMaybeAssign()}return e.delegate=t,e.argument=n,this.finishNode(e,"YieldExpression")}checkPipelineAtInfixOperator(e,t){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&"SequenceExpression"===e.type&&this.raise(S.PipelineHeadSequenceExpression,{at:t})}parseSmartPipelineBodyInStyle(e,t){if(this.isSimpleReference(e)){const n=this.startNodeAt(t);return n.callee=e,this.finishNode(n,"PipelineBareFunction")}{const n=this.startNodeAt(t);return this.checkSmartPipeTopicBodyEarlyErrors(t),n.expression=e,this.finishNode(n,"PipelineTopicExpression")}}isSimpleReference(e){switch(e.type){case"MemberExpression":return!e.computed&&this.isSimpleReference(e.object);case"Identifier":return!0;default:return!1}}checkSmartPipeTopicBodyEarlyErrors(e){if(this.match(19))throw this.raise(S.PipelineBodyNoArrow,{at:this.state.startLoc});this.topicReferenceWasUsedInCurrentContext()||this.raise(S.PipelineTopicUnused,{at:e})}withTopicBindingContext(e){const t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}withSmartMixTopicForbiddingContext(e){if(!this.hasPlugin(["pipelineOperator",{proposal:"smart"}]))return e();{const t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}}withSoloAwaitPermittingContext(e){const t=this.state.soloAwait;this.state.soloAwait=!0;try{return e()}finally{this.state.soloAwait=t}}allowInAnd(e){const t=this.prodParam.currentFlags();if(8&~t){this.prodParam.enter(8|t);try{return e()}finally{this.prodParam.exit()}}return e()}disallowInAnd(e){const t=this.prodParam.currentFlags();if(8&t){this.prodParam.enter(-9&t);try{return e()}finally{this.prodParam.exit()}}return e()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return null!=this.state.topicContext.maxTopicIndex&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(e){const t=this.state.startLoc;this.state.potentialArrowAt=this.state.start;const n=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;const r=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,e);return this.state.inFSharpPipelineDirectBody=n,r}parseModuleExpression(){this.expectPlugin("moduleBlocks");const e=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);const t=this.startNodeAt(this.state.endLoc);this.next();const n=this.initializeScopes(!0);this.enterInitialScopes();try{e.body=this.parseProgram(t,8,"module")}finally{n()}return this.finishNode(e,"ModuleExpression")}parsePropertyNamePrefixOperator(e){}}const Rt={kind:"loop"},Kt={kind:"switch"},Vt=/[\uD800-\uDFFF]/u,Yt=/in(?:stanceof)?/y;class Ut extends Ft{parseTopLevel(e,t){return e.program=this.parseProgram(t),e.comments=this.state.comments,this.options.tokens&&(e.tokens=function(e,t){for(let n=0;n<e.length;n++){const r=e[n],{type:a}=r;if("number"==typeof a){if(136===a){const{loc:t,start:a,value:s,end:o}=r,l=a+1,p=i(t.start,1);e.splice(n,1,new We({type:Q(27),value:"#",start:a,end:l,startLoc:t.start,endLoc:p}),new We({type:Q(130),value:s,start:l,end:o,startLoc:p,endLoc:t.end})),n++;continue}if(H(a)){const{loc:s,start:o,value:l,end:p}=r,c=o+1,u=i(s.start,1);let d,f,y,m,h;d=96===t.charCodeAt(o)?new We({type:Q(22),value:"`",start:o,end:c,startLoc:s.start,endLoc:u}):new We({type:Q(8),value:"}",start:o,end:c,startLoc:s.start,endLoc:u}),24===a?(y=p-1,m=i(s.end,-1),f=null===l?null:l.slice(1,-1),h=new We({type:Q(22),value:"`",start:y,end:p,startLoc:m,endLoc:s.end})):(y=p-2,m=i(s.end,-2),f=null===l?null:l.slice(1,-2),h=new We({type:Q(23),value:"${",start:y,end:p,startLoc:m,endLoc:s.end})),e.splice(n,1,d,new We({type:Q(20),value:f,start:c,end:y,startLoc:u,endLoc:m}),h),n+=2;continue}r.type=Q(a)}}return e}(this.tokens,this.input)),this.finishNode(e,"File")}parseProgram(e,t=137,n=this.options.sourceType){if(e.sourceType=n,e.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(e,!0,!0,t),this.inModule&&!this.options.allowUndeclaredExports&&this.scope.undefinedExports.size>0)for(const[e,t]of Array.from(this.scope.undefinedExports))this.raise(S.ModuleExportUndefined,{at:t,localName:e});let r;return r=137===t?this.finishNode(e,"Program"):this.finishNodeAt(e,"Program",i(this.state.startLoc,-1)),r}stmtToDirective(e){const t=e;t.type="Directive",t.value=t.expression,delete t.expression;const n=t.value,r=n.value,a=this.input.slice(n.start,n.end),i=n.value=a.slice(1,-1);return this.addExtra(n,"raw",a),this.addExtra(n,"rawValue",i),this.addExtra(n,"expressionValue",r),n.type="DirectiveLiteral",t}parseInterpreterDirective(){if(!this.match(28))return null;const e=this.startNode();return e.value=this.state.value,this.next(),this.finishNode(e,"InterpreterDirective")}isLet(){return!!this.isContextual(99)&&this.hasFollowingBindingAtom()}chStartsBindingIdentifier(e,t){if(se(e)){if(Yt.lastIndex=t,Yt.test(this.input)){const e=this.codePointAtPos(Yt.lastIndex);if(!oe(e)&&92!==e)return!1}return!0}return 92===e}chStartsBindingPattern(e){return 91===e||123===e}hasFollowingBindingAtom(){const e=this.nextTokenStart(),t=this.codePointAtPos(e);return this.chStartsBindingPattern(t)||this.chStartsBindingIdentifier(t,e)}hasInLineFollowingBindingIdentifier(){const e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return this.chStartsBindingIdentifier(t,e)}startsUsingForOf(){const{type:e,containsEsc:t}=this.lookahead();return!(101===e&&!t)&&(U(e)&&!this.hasFollowingLineBreak()?(this.expectPlugin("explicitResourceManagement"),!0):void 0)}startsAwaitUsing(){let e=this.nextTokenInLineStart();if(this.isUnparsedContextual(e,"using")){e=this.nextTokenInLineStartSince(e+5);const t=this.codePointAtPos(e);if(this.chStartsBindingIdentifier(t,e))return this.expectPlugin("explicitResourceManagement"),!0}return!1}parseModuleItem(){return this.parseStatementLike(15)}parseStatementListItem(){return this.parseStatementLike(6|(!this.options.annexB||this.state.strict?0:8))}parseStatementOrSloppyAnnexBFunctionDeclaration(e=!1){let t=0;return this.options.annexB&&!this.state.strict&&(t|=4,e&&(t|=8)),this.parseStatementLike(t)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(e){let t=null;return this.match(26)&&(t=this.parseDecorators(!0)),this.parseStatementContent(e,t)}parseStatementContent(e,t){const n=this.state.type,r=this.startNode(),a=!!(2&e),i=!!(4&e),s=1&e;switch(n){case 60:return this.parseBreakContinueStatement(r,!0);case 63:return this.parseBreakContinueStatement(r,!1);case 64:return this.parseDebuggerStatement(r);case 90:return this.parseDoWhileStatement(r);case 91:return this.parseForStatement(r);case 68:if(46===this.lookaheadCharCode())break;return i||this.raise(this.state.strict?S.StrictFunction:this.options.annexB?S.SloppyFunctionAnnexB:S.SloppyFunction,{at:this.state.startLoc}),this.parseFunctionStatement(r,!1,!a&&i);case 80:return a||this.unexpected(),this.parseClass(this.maybeTakeDecorators(t,r),!0);case 69:return this.parseIfStatement(r);case 70:return this.parseReturnStatement(r);case 71:return this.parseSwitchStatement(r);case 72:return this.parseThrowStatement(r);case 73:return this.parseTryStatement(r);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.isAwaitAllowed()?a||this.raise(S.UnexpectedLexicalDeclaration,{at:r}):this.raise(S.AwaitUsingNotInAsyncContext,{at:r}),this.next(),this.parseVarStatement(r,"await using");break;case 105:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifier())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(S.UnexpectedUsingDeclaration,{at:this.state.startLoc}):a||this.raise(S.UnexpectedLexicalDeclaration,{at:this.state.startLoc}),this.parseVarStatement(r,"using");case 99:{if(this.state.containsEsc)break;const e=this.nextTokenStart(),t=this.codePointAtPos(e);if(91!==t){if(!a&&this.hasFollowingLineBreak())break;if(!this.chStartsBindingIdentifier(t,e)&&123!==t)break}}case 75:a||this.raise(S.UnexpectedLexicalDeclaration,{at:this.state.startLoc});case 74:{const e=this.state.value;return this.parseVarStatement(r,e)}case 92:return this.parseWhileStatement(r);case 76:return this.parseWithStatement(r);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(r);case 83:{const e=this.lookaheadCharCode();if(40===e||46===e)break}case 82:{let e;return this.options.allowImportExportEverywhere||s||this.raise(S.UnexpectedImportExport,{at:this.state.startLoc}),this.next(),83===n?(e=this.parseImport(r),"ImportDeclaration"!==e.type||e.importKind&&"value"!==e.importKind||(this.sawUnambiguousESM=!0)):(e=this.parseExport(r,t),("ExportNamedDeclaration"!==e.type||e.exportKind&&"value"!==e.exportKind)&&("ExportAllDeclaration"!==e.type||e.exportKind&&"value"!==e.exportKind)&&"ExportDefaultDeclaration"!==e.type||(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(e),e}default:if(this.isAsyncFunction())return a||this.raise(S.AsyncFunctionInSingleStatementContext,{at:this.state.startLoc}),this.next(),this.parseFunctionStatement(r,!0,!a&&i)}const o=this.state.value,l=this.parseExpression();return U(n)&&"Identifier"===l.type&&this.eat(14)?this.parseLabeledStatement(r,o,l,e):this.parseExpressionStatement(r,l,t)}assertModuleNodeAllowed(e){this.options.allowImportExportEverywhere||this.inModule||this.raise(S.ImportOutsideModule,{at:e})}decoratorsEnabledBeforeExport(){return!!this.hasPlugin("decorators-legacy")||this.hasPlugin("decorators")&&!1!==this.getPluginOption("decorators","decoratorsBeforeExport")}maybeTakeDecorators(e,t,n){return e&&(t.decorators&&t.decorators.length>0?("boolean"!=typeof this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(S.DecoratorsBeforeAfterExport,{at:t.decorators[0]}),t.decorators.unshift(...e)):t.decorators=e,this.resetStartLocationFromNode(t,e[0]),n&&this.resetStartLocationFromNode(n,t)),t}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(e){const t=[];do{t.push(this.parseDecorator())}while(this.match(26));if(this.match(82))e||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(S.DecoratorExportClass,{at:this.state.startLoc});else if(!this.canHaveLeadingDecorator())throw this.raise(S.UnexpectedLeadingDecorator,{at:this.state.startLoc});return t}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);const e=this.startNode();if(this.next(),this.hasPlugin("decorators")){const t=this.state.startLoc;let n;if(this.match(10)){const t=this.state.startLoc;this.next(),n=this.parseExpression(),this.expect(11),n=this.wrapParenthesis(t,n);const r=this.state.startLoc;e.expression=this.parseMaybeDecoratorArguments(n),!1===this.getPluginOption("decorators","allowCallParenthesized")&&e.expression!==n&&this.raise(S.DecoratorArgumentsOutsideParentheses,{at:r})}else{for(n=this.parseIdentifier(!1);this.eat(16);){const e=this.startNodeAt(t);e.object=n,this.match(136)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),e.property=this.parsePrivateName()):e.property=this.parseIdentifier(!0),e.computed=!1,n=this.finishNode(e,"MemberExpression")}e.expression=this.parseMaybeDecoratorArguments(n)}}else e.expression=this.parseExprSubscripts();return this.finishNode(e,"Decorator")}parseMaybeDecoratorArguments(e){if(this.eat(10)){const t=this.startNodeAtNode(e);return t.callee=e,t.arguments=this.parseCallExpressionArguments(11,!1),this.toReferencedList(t.arguments),this.finishNode(t,"CallExpression")}return e}parseBreakContinueStatement(e,t){return this.next(),this.isLineTerminator()?e.label=null:(e.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(e,t),this.finishNode(e,t?"BreakStatement":"ContinueStatement")}verifyBreakContinue(e,t){let n;for(n=0;n<this.state.labels.length;++n){const r=this.state.labels[n];if(null==e.label||r.name===e.label.name){if(null!=r.kind&&(t||"loop"===r.kind))break;if(e.label&&t)break}}if(n===this.state.labels.length){const n=t?"BreakStatement":"ContinueStatement";this.raise(S.IllegalBreakContinue,{at:e,type:n})}}parseDebuggerStatement(e){return this.next(),this.semicolon(),this.finishNode(e,"DebuggerStatement")}parseHeaderExpression(){this.expect(10);const e=this.parseExpression();return this.expect(11),e}parseDoWhileStatement(e){return this.next(),this.state.labels.push(Rt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.state.labels.pop(),this.expect(92),e.test=this.parseHeaderExpression(),this.eat(13),this.finishNode(e,"DoWhileStatement")}parseForStatement(e){this.next(),this.state.labels.push(Rt);let t=null;if(this.isAwaitAllowed()&&this.eatContextual(96)&&(t=this.state.lastTokStartLoc),this.scope.enter(0),this.expect(10),this.match(13))return null!==t&&this.unexpected(t),this.parseFor(e,null);const n=this.isContextual(99);{const r=this.isContextual(96)&&this.startsAwaitUsing(),a=r||this.isContextual(105)&&this.startsUsingForOf(),i=n&&this.hasFollowingBindingAtom()||a;if(this.match(74)||this.match(75)||i){const n=this.startNode();let i;r?(i="await using",this.isAwaitAllowed()||this.raise(S.AwaitUsingNotInAsyncContext,{at:this.state.startLoc}),this.next()):i=this.state.value,this.next(),this.parseVar(n,!0,i);const s=this.finishNode(n,"VariableDeclaration"),o=this.match(58);return o&&a&&this.raise(S.ForInUsing,{at:s}),(o||this.isContextual(101))&&1===s.declarations.length?this.parseForIn(e,s,t):(null!==t&&this.unexpected(t),this.parseFor(e,s))}}const r=this.isContextual(95),a=new rt,i=this.parseExpression(!0,a),s=this.isContextual(101);if(s&&(n&&this.raise(S.ForOfLet,{at:i}),null===t&&r&&"Identifier"===i.type&&this.raise(S.ForOfAsync,{at:i})),s||this.match(58)){this.checkDestructuringPrivate(a),this.toAssignable(i,!0);const n=s?"ForOfStatement":"ForInStatement";return this.checkLVal(i,{in:{type:n}}),this.parseForIn(e,i,t)}return this.checkExpressionErrors(a,!0),null!==t&&this.unexpected(t),this.parseFor(e,i)}parseFunctionStatement(e,t,n){return this.next(),this.parseFunction(e,1|(n?2:0)|(t?8:0))}parseIfStatement(e){return this.next(),e.test=this.parseHeaderExpression(),e.consequent=this.parseStatementOrSloppyAnnexBFunctionDeclaration(),e.alternate=this.eat(66)?this.parseStatementOrSloppyAnnexBFunctionDeclaration():null,this.finishNode(e,"IfStatement")}parseReturnStatement(e){return this.prodParam.hasReturn||this.options.allowReturnOutsideFunction||this.raise(S.IllegalReturn,{at:this.state.startLoc}),this.next(),this.isLineTerminator()?e.argument=null:(e.argument=this.parseExpression(),this.semicolon()),this.finishNode(e,"ReturnStatement")}parseSwitchStatement(e){this.next(),e.discriminant=this.parseHeaderExpression();const t=e.cases=[];let n;this.expect(5),this.state.labels.push(Kt),this.scope.enter(0);for(let e;!this.match(8);)if(this.match(61)||this.match(65)){const r=this.match(61);n&&this.finishNode(n,"SwitchCase"),t.push(n=this.startNode()),n.consequent=[],this.next(),r?n.test=this.parseExpression():(e&&this.raise(S.MultipleDefaultsInSwitch,{at:this.state.lastTokStartLoc}),e=!0,n.test=null),this.expect(14)}else n?n.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),n&&this.finishNode(n,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(e,"SwitchStatement")}parseThrowStatement(e){return this.next(),this.hasPrecedingLineBreak()&&this.raise(S.NewlineAfterThrow,{at:this.state.lastTokEndLoc}),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,"ThrowStatement")}parseCatchClauseParam(){const e=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&"Identifier"===e.type?8:0),this.checkLVal(e,{in:{type:"CatchClause"},binding:9}),e}parseTryStatement(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.match(62)){const t=this.startNode();this.next(),this.match(10)?(this.expect(10),t.param=this.parseCatchClauseParam(),this.expect(11)):(t.param=null,this.scope.enter(0)),t.body=this.withSmartMixTopicForbiddingContext((()=>this.parseBlock(!1,!1))),this.scope.exit(),e.handler=this.finishNode(t,"CatchClause")}return e.finalizer=this.eat(67)?this.parseBlock():null,e.handler||e.finalizer||this.raise(S.NoCatchOrFinally,{at:e}),this.finishNode(e,"TryStatement")}parseVarStatement(e,t,n=!1){return this.next(),this.parseVar(e,!1,t,n),this.semicolon(),this.finishNode(e,"VariableDeclaration")}parseWhileStatement(e){return this.next(),e.test=this.parseHeaderExpression(),this.state.labels.push(Rt),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.state.labels.pop(),this.finishNode(e,"WhileStatement")}parseWithStatement(e){return this.state.strict&&this.raise(S.StrictWith,{at:this.state.startLoc}),this.next(),e.object=this.parseHeaderExpression(),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.finishNode(e,"WithStatement")}parseEmptyStatement(e){return this.next(),this.finishNode(e,"EmptyStatement")}parseLabeledStatement(e,t,n,r){for(const e of this.state.labels)e.name===t&&this.raise(S.LabelRedeclaration,{at:n,labelName:t});const a=(i=this.state.type)>=90&&i<=92?"loop":this.match(71)?"switch":null;var i;for(let t=this.state.labels.length-1;t>=0;t--){const n=this.state.labels[t];if(n.statementStart!==e.start)break;n.statementStart=this.state.start,n.kind=a}return this.state.labels.push({name:t,kind:a,statementStart:this.state.start}),e.body=8&r?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),e.label=n,this.finishNode(e,"LabeledStatement")}parseExpressionStatement(e,t,n){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")}parseBlock(e=!1,t=!0,n){const r=this.startNode();return e&&this.state.strictErrors.clear(),this.expect(5),t&&this.scope.enter(0),this.parseBlockBody(r,e,!1,8,n),t&&this.scope.exit(),this.finishNode(r,"BlockStatement")}isValidDirective(e){return"ExpressionStatement"===e.type&&"StringLiteral"===e.expression.type&&!e.expression.extra.parenthesized}parseBlockBody(e,t,n,r,a){const i=e.body=[],s=e.directives=[];this.parseBlockOrModuleBlockBody(i,t?s:void 0,n,r,a)}parseBlockOrModuleBlockBody(e,t,n,r,a){const i=this.state.strict;let s=!1,o=!1;for(;!this.match(r);){const r=n?this.parseModuleItem():this.parseStatementListItem();if(t&&!o){if(this.isValidDirective(r)){const e=this.stmtToDirective(r);t.push(e),s||"use strict"!==e.value.value||(s=!0,this.setStrict(!0));continue}o=!0,this.state.strictErrors.clear()}e.push(r)}null==a||a.call(this,s),i||this.setStrict(!1),this.next()}parseFor(e,t){return e.init=t,this.semicolon(!1),e.test=this.match(13)?null:this.parseExpression(),this.semicolon(!1),e.update=this.match(11)?null:this.parseExpression(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,"ForStatement")}parseForIn(e,t,n){const r=this.match(58);return this.next(),r?null!==n&&this.unexpected(n):e.await=null!==n,"VariableDeclaration"!==t.type||null==t.declarations[0].init||r&&this.options.annexB&&!this.state.strict&&"var"===t.kind&&"Identifier"===t.declarations[0].id.type||this.raise(S.ForInOfLoopInitializer,{at:t,type:r?"ForInStatement":"ForOfStatement"}),"AssignmentPattern"===t.type&&this.raise(S.InvalidLhs,{at:t,ancestor:{type:"ForStatement"}}),e.left=t,e.right=r?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext((()=>this.parseStatement())),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,r?"ForInStatement":"ForOfStatement")}parseVar(e,t,n,r=!1){const a=e.declarations=[];for(e.kind=n;;){const e=this.startNode();if(this.parseVarId(e,n),e.init=this.eat(29)?t?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,null!==e.init||r||("Identifier"===e.id.type||t&&(this.match(58)||this.isContextual(101))?"const"!==n||this.match(58)||this.isContextual(101)||this.raise(S.DeclarationMissingInitializer,{at:this.state.lastTokEndLoc,kind:"const"}):this.raise(S.DeclarationMissingInitializer,{at:this.state.lastTokEndLoc,kind:"destructuring"})),a.push(this.finishNode(e,"VariableDeclarator")),!this.eat(12))break}return e}parseVarId(e,t){const n=this.parseBindingAtom();this.checkLVal(n,{in:{type:"VariableDeclarator"},binding:"var"===t?5:8201}),e.id=n}parseAsyncFunctionExpression(e){return this.parseFunction(e,8)}parseFunction(e,t=0){const n=2&t,r=!!(1&t),a=r&&!(4&t),i=!!(8&t);this.initFunction(e,i),this.match(55)&&(n&&this.raise(S.GeneratorInSingleStatementContext,{at:this.state.startLoc}),this.next(),e.generator=!0),r&&(e.id=this.parseFunctionId(a));const s=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(tt(i,e.generator)),r||(e.id=this.parseFunctionId()),this.parseFunctionParams(e,!1),this.withSmartMixTopicForbiddingContext((()=>{this.parseFunctionBodyAndFinish(e,r?"FunctionDeclaration":"FunctionExpression")})),this.prodParam.exit(),this.scope.exit(),r&&!n&&this.registerFunctionStatementId(e),this.state.maybeInArrowParameters=s,e}parseFunctionId(e){return e||U(this.state.type)?this.parseIdentifier():null}parseFunctionParams(e,t){this.expect(10),this.expressionScope.enter(new ze(3)),e.params=this.parseBindingList(11,41,2|(t?4:0)),this.expressionScope.exit()}registerFunctionStatementId(e){e.id&&this.scope.declareName(e.id.name,!this.options.annexB||this.state.strict||e.generator||e.async?this.scope.treatFunctionsAsVar?5:8201:17,e.id.loc.start)}parseClass(e,t,n){this.next();const r=this.state.strict;return this.state.strict=!0,this.parseClassId(e,t,n),this.parseClassSuper(e),e.body=this.parseClassBody(!!e.superClass,r),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}isNonstaticConstructor(e){return!(e.computed||e.static||"constructor"!==e.key.name&&"constructor"!==e.key.value)}parseClassBody(e,t){this.classScope.enter();const n={hadConstructor:!1,hadSuperClass:e};let r=[];const a=this.startNode();if(a.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext((()=>{for(;!this.match(8);){if(this.eat(13)){if(r.length>0)throw this.raise(S.DecoratorSemicolon,{at:this.state.lastTokEndLoc});continue}if(this.match(26)){r.push(this.parseDecorator());continue}const e=this.startNode();r.length&&(e.decorators=r,this.resetStartLocationFromNode(e,r[0]),r=[]),this.parseClassMember(a,e,n),"constructor"===e.kind&&e.decorators&&e.decorators.length>0&&this.raise(S.DecoratorConstructor,{at:e})}})),this.state.strict=t,this.next(),r.length)throw this.raise(S.TrailingDecorator,{at:this.state.startLoc});return this.classScope.exit(),this.finishNode(a,"ClassBody")}parseClassMemberFromModifier(e,t){const n=this.parseIdentifier(!0);if(this.isClassMethod()){const r=t;return r.kind="method",r.computed=!1,r.key=n,r.static=!1,this.pushClassMethod(e,r,!1,!1,!1,!1),!0}if(this.isClassProperty()){const r=t;return r.computed=!1,r.key=n,r.static=!1,e.body.push(this.parseClassProperty(r)),!0}return this.resetPreviousNodeTrailingComments(n),!1}parseClassMember(e,t,n){const r=this.isContextual(104);if(r){if(this.parseClassMemberFromModifier(e,t))return;if(this.eat(5))return void this.parseClassStaticBlock(e,t)}this.parseClassMemberWithIsStatic(e,t,n,r)}parseClassMemberWithIsStatic(e,t,n,r){const a=t,i=t,s=t,o=t,l=t,p=a,c=a;if(t.static=r,this.parsePropertyNamePrefixOperator(t),this.eat(55)){p.kind="method";const t=this.match(136);return this.parseClassElementName(p),t?void this.pushClassPrivateMethod(e,i,!0,!1):(this.isNonstaticConstructor(a)&&this.raise(S.ConstructorIsGenerator,{at:a.key}),void this.pushClassMethod(e,a,!0,!1,!1,!1))}const u=U(this.state.type)&&!this.state.containsEsc,d=this.match(136),f=this.parseClassElementName(t),y=this.state.startLoc;if(this.parsePostMemberNameModifiers(c),this.isClassMethod()){if(p.kind="method",d)return void this.pushClassPrivateMethod(e,i,!1,!1);const r=this.isNonstaticConstructor(a);let s=!1;r&&(a.kind="constructor",n.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(S.DuplicateConstructor,{at:f}),r&&this.hasPlugin("typescript")&&t.override&&this.raise(S.OverrideOnConstructor,{at:f}),n.hadConstructor=!0,s=n.hadSuperClass),this.pushClassMethod(e,a,!1,!1,r,s)}else if(this.isClassProperty())d?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,s);else if(u&&"async"===f.name&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(f);const t=this.eat(55);c.optional&&this.unexpected(y),p.kind="method";const n=this.match(136);this.parseClassElementName(p),this.parsePostMemberNameModifiers(c),n?this.pushClassPrivateMethod(e,i,t,!0):(this.isNonstaticConstructor(a)&&this.raise(S.ConstructorIsAsync,{at:a.key}),this.pushClassMethod(e,a,t,!0,!1,!1))}else if(!u||"get"!==f.name&&"set"!==f.name||this.match(55)&&this.isLineTerminator())if(u&&"accessor"===f.name&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(f);const t=this.match(136);this.parseClassElementName(s),this.pushClassAccessorProperty(e,l,t)}else this.isLineTerminator()?d?this.pushClassPrivateProperty(e,o):this.pushClassProperty(e,s):this.unexpected();else{this.resetPreviousNodeTrailingComments(f),p.kind=f.name;const t=this.match(136);this.parseClassElementName(a),t?this.pushClassPrivateMethod(e,i,!1,!1):(this.isNonstaticConstructor(a)&&this.raise(S.ConstructorIsAccessor,{at:a.key}),this.pushClassMethod(e,a,!1,!1,!1,!1)),this.checkGetterSetterParams(a)}}parseClassElementName(e){const{type:t,value:n}=this.state;if(130!==t&&131!==t||!e.static||"prototype"!==n||this.raise(S.StaticPrototype,{at:this.state.startLoc}),136===t){"constructor"===n&&this.raise(S.ConstructorClassPrivateField,{at:this.state.startLoc});const t=this.parsePrivateName();return e.key=t,t}return this.parsePropertyName(e)}parseClassStaticBlock(e,t){var n;this.scope.enter(208);const r=this.state.labels;this.state.labels=[],this.prodParam.enter(0);const a=t.body=[];this.parseBlockOrModuleBlockBody(a,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=r,e.body.push(this.finishNode(t,"StaticBlock")),null!=(n=t.decorators)&&n.length&&this.raise(S.DecoratorStaticBlock,{at:t})}pushClassProperty(e,t){t.computed||"constructor"!==t.key.name&&"constructor"!==t.key.value||this.raise(S.ConstructorClassField,{at:t.key}),e.body.push(this.parseClassProperty(t))}pushClassPrivateProperty(e,t){const n=this.parseClassPrivateProperty(t);e.body.push(n),this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),0,n.key.loc.start)}pushClassAccessorProperty(e,t,n){if(!n&&!t.computed){const e=t.key;"constructor"!==e.name&&"constructor"!==e.value||this.raise(S.ConstructorClassField,{at:e})}const r=this.parseClassAccessorProperty(t);e.body.push(r),n&&this.classScope.declarePrivateName(this.getPrivateNameSV(r.key),0,r.key.loc.start)}pushClassMethod(e,t,n,r,a,i){e.body.push(this.parseMethod(t,n,r,a,i,"ClassMethod",!0))}pushClassPrivateMethod(e,t,n,r){const a=this.parseMethod(t,n,r,!1,!1,"ClassPrivateMethod",!0);e.body.push(a);const i="get"===a.kind?a.static?6:2:"set"===a.kind?a.static?5:1:0;this.declareClassPrivateMethodInScope(a,i)}declareClassPrivateMethodInScope(e,t){this.classScope.declarePrivateName(this.getPrivateNameSV(e.key),t,e.key.loc.start)}parsePostMemberNameModifiers(e){}parseClassPrivateProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassPrivateProperty")}parseClassProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassProperty")}parseClassAccessorProperty(e){return this.parseInitializer(e),this.semicolon(),this.finishNode(e,"ClassAccessorProperty")}parseInitializer(e){this.scope.enter(80),this.expressionScope.enter(Ze()),this.prodParam.enter(0),e.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(e,t,n,r=8331){if(U(this.state.type))e.id=this.parseIdentifier(),t&&this.declareNameFromIdentifier(e.id,r);else{if(!n&&t)throw this.raise(S.MissingClassName,{at:this.state.startLoc});e.id=null}}parseClassSuper(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(e,t){const n=this.parseMaybeImportPhase(e,!0),r=this.maybeParseExportDefaultSpecifier(e,n),a=!r||this.eat(12),i=a&&this.eatExportStar(e),s=i&&this.maybeParseExportNamespaceSpecifier(e),o=a&&(!s||this.eat(12)),l=r||i;if(i&&!s){if(r&&this.unexpected(),t)throw this.raise(S.UnsupportedDecoratorExport,{at:e});return this.parseExportFrom(e,!0),this.finishNode(e,"ExportAllDeclaration")}const p=this.maybeParseExportNamedSpecifiers(e);let c;if(r&&a&&!i&&!p&&this.unexpected(null,5),s&&o&&this.unexpected(null,97),l||p){if(c=!1,t)throw this.raise(S.UnsupportedDecoratorExport,{at:e});this.parseExportFrom(e,l)}else c=this.maybeParseExportDeclaration(e);if(l||p||c){var u;const n=e;if(this.checkExport(n,!0,!1,!!n.source),"ClassDeclaration"===(null==(u=n.declaration)?void 0:u.type))this.maybeTakeDecorators(t,n.declaration,n);else if(t)throw this.raise(S.UnsupportedDecoratorExport,{at:e});return this.finishNode(n,"ExportNamedDeclaration")}if(this.eat(65)){const n=e,r=this.parseExportDefaultExpression();if(n.declaration=r,"ClassDeclaration"===r.type)this.maybeTakeDecorators(t,r,n);else if(t)throw this.raise(S.UnsupportedDecoratorExport,{at:e});return this.checkExport(n,!0,!0),this.finishNode(n,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(e){return this.eat(55)}maybeParseExportDefaultSpecifier(e,t){if(t||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",null==t?void 0:t.loc.start);const n=t||this.parseIdentifier(!0),r=this.startNodeAtNode(n);return r.exported=n,e.specifiers=[this.finishNode(r,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(e){if(this.isContextual(93)){e.specifiers||(e.specifiers=[]);const t=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),t.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(t,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(e){if(this.match(5)){e.specifiers||(e.specifiers=[]);const t="type"===e.exportKind;return e.specifiers.push(...this.parseExportSpecifiers(t)),e.source=null,e.declaration=null,this.hasPlugin("importAssertions")&&(e.assertions=[]),!0}return!1}maybeParseExportDeclaration(e){return!!this.shouldParseExportDeclaration()&&(e.specifiers=[],e.source=null,this.hasPlugin("importAssertions")&&(e.assertions=[]),e.declaration=this.parseExportDeclaration(e),!0)}isAsyncFunction(){if(!this.isContextual(95))return!1;const e=this.nextTokenInLineStart();return this.isUnparsedContextual(e,"function")}parseExportDefaultExpression(){const e=this.startNode();if(this.match(68))return this.next(),this.parseFunction(e,5);if(this.isAsyncFunction())return this.next(),this.next(),this.parseFunction(e,13);if(this.match(80))return this.parseClass(e,!0,!0);if(this.match(26))return this.hasPlugin("decorators")&&!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(S.DecoratorBeforeExport,{at:this.state.startLoc}),this.parseClass(this.maybeTakeDecorators(this.parseDecorators(!1),this.startNode()),!0,!0);if(this.match(75)||this.match(74)||this.isLet())throw this.raise(S.UnsupportedDefaultExport,{at:this.state.startLoc});const t=this.parseMaybeAssignAllowIn();return this.semicolon(),t}parseExportDeclaration(e){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){const{type:e}=this.state;if(U(e)){if(95===e&&!this.state.containsEsc||99===e)return!1;if((128===e||127===e)&&!this.state.containsEsc){const{type:e}=this.lookahead();if(U(e)&&97!==e||5===e)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;const t=this.nextTokenStart(),n=this.isUnparsedContextual(t,"from");if(44===this.input.charCodeAt(t)||U(this.state.type)&&n)return!0;if(this.match(65)&&n){const e=this.input.charCodeAt(this.nextTokenStartSince(t+4));return 34===e||39===e}return!1}parseExportFrom(e,t){this.eatContextual(97)?(e.source=this.parseImportSource(),this.checkExport(e),this.maybeParseImportAttributes(e),this.checkJSONModuleImport(e)):t&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){const{type:e}=this.state;return 26===e&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(!0===this.getPluginOption("decorators","decoratorsBeforeExport")&&this.raise(S.DecoratorBeforeExport,{at:this.state.startLoc}),!0):74===e||75===e||68===e||80===e||this.isLet()||this.isAsyncFunction()}checkExport(e,t,n,r){var a;if(t)if(n){if(this.checkDuplicateExports(e,"default"),this.hasPlugin("exportDefaultFrom")){var i;const t=e.declaration;"Identifier"!==t.type||"from"!==t.name||t.end-t.start!=4||null!=(i=t.extra)&&i.parenthesized||this.raise(S.ExportDefaultFromAsIdentifier,{at:t})}}else if(null!=(a=e.specifiers)&&a.length)for(const t of e.specifiers){const{exported:e}=t,n="Identifier"===e.type?e.name:e.value;if(this.checkDuplicateExports(t,n),!r&&t.local){const{local:e}=t;"Identifier"!==e.type?this.raise(S.ExportBindingIsString,{at:t,localName:e.value,exportName:n}):(this.checkReservedWord(e.name,e.loc.start,!0,!1),this.scope.checkLocalExport(e))}}else if(e.declaration)if("FunctionDeclaration"===e.declaration.type||"ClassDeclaration"===e.declaration.type){const t=e.declaration.id;if(!t)throw new Error("Assertion failure");this.checkDuplicateExports(e,t.name)}else if("VariableDeclaration"===e.declaration.type)for(const t of e.declaration.declarations)this.checkDeclaration(t.id)}checkDeclaration(e){if("Identifier"===e.type)this.checkDuplicateExports(e,e.name);else if("ObjectPattern"===e.type)for(const t of e.properties)this.checkDeclaration(t);else if("ArrayPattern"===e.type)for(const t of e.elements)t&&this.checkDeclaration(t);else"ObjectProperty"===e.type?this.checkDeclaration(e.value):"RestElement"===e.type?this.checkDeclaration(e.argument):"AssignmentPattern"===e.type&&this.checkDeclaration(e.left)}checkDuplicateExports(e,t){this.exportedIdentifiers.has(t)&&("default"===t?this.raise(S.DuplicateDefaultExport,{at:e}):this.raise(S.DuplicateExport,{at:e,exportName:t})),this.exportedIdentifiers.add(t)}parseExportSpecifiers(e){const t=[];let n=!0;for(this.expect(5);!this.eat(8);){if(n)n=!1;else if(this.expect(12),this.eat(8))break;const r=this.isContextual(128),a=this.match(131),i=this.startNode();i.local=this.parseModuleExportName(),t.push(this.parseExportSpecifier(i,a,e,r))}return t}parseExportSpecifier(e,t,n,r){return this.eatContextual(93)?e.exported=this.parseModuleExportName():t?e.exported=function(e){const{type:t,start:n,end:r,loc:a,range:i,extra:s}=e;if("Placeholder"===t)return function(e){return st(e)}(e);const o=Object.create(it);return o.type=t,o.start=n,o.end=r,o.loc=a,o.range=i,void 0!==e.raw?o.raw=e.raw:o.extra=s,o.value=e.value,o}(e.local):e.exported||(e.exported=st(e.local)),this.finishNode(e,"ExportSpecifier")}parseModuleExportName(){if(this.match(131)){const e=this.parseStringLiteral(this.state.value),t=e.value.match(Vt);return t&&this.raise(S.ModuleExportNameHasLoneSurrogate,{at:e,surrogateCharCode:t[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)}isJSONModuleImport(e){return null!=e.assertions&&e.assertions.some((({key:e,value:t})=>"json"===t.value&&("Identifier"===e.type?"type"===e.name:"type"===e.value)))}checkImportReflection(e){var t;e.module&&(1===e.specifiers.length&&"ImportDefaultSpecifier"===e.specifiers[0].type||this.raise(S.ImportReflectionNotBinding,{at:e.specifiers[0].loc.start}),(null==(t=e.assertions)?void 0:t.length)>0&&this.raise(S.ImportReflectionHasAssertion,{at:e.specifiers[0].loc.start}))}checkJSONModuleImport(e){if(this.isJSONModuleImport(e)&&"ExportAllDeclaration"!==e.type){const{specifiers:t}=e;if(null!=t){const e=t.find((e=>{let t;if("ExportSpecifier"===e.type?t=e.local:"ImportSpecifier"===e.type&&(t=e.imported),void 0!==t)return"Identifier"===t.type?"default"!==t.name:"default"!==t.value}));void 0!==e&&this.raise(S.ImportJSONBindingNotDefault,{at:e.loc.start})}}}isPotentialImportPhase(e){return!e&&this.isContextual(125)}applyImportPhase(e,t,n,r){t||("module"===n?(this.expectPlugin("importReflection",r),e.module=!0):this.hasPlugin("importReflection")&&(e.module=!1))}parseMaybeImportPhase(e,t){if(!this.isPotentialImportPhase(t))return this.applyImportPhase(e,t,null),null;const n=this.parseIdentifier(!0),{type:r}=this.state;return(X(r)?97!==r||102===this.lookaheadCharCode():12!==r)?(this.resetPreviousIdentifierLeadingComments(n),this.applyImportPhase(e,t,n.name,n.loc.start),null):(this.applyImportPhase(e,t,null),n)}isPrecedingIdImportPhase(e){const{type:t}=this.state;return U(t)?97!==t||102===this.lookaheadCharCode():12!==t}parseImport(e){return this.match(131)?this.parseImportSourceAndAttributes(e):this.parseImportSpecifiersAndAfter(e,this.parseMaybeImportPhase(e,!1))}parseImportSpecifiersAndAfter(e,t){e.specifiers=[];const n=!this.maybeParseDefaultImportSpecifier(e,t)||this.eat(12),r=n&&this.maybeParseStarImportSpecifier(e);return n&&!r&&this.parseNamedImportSpecifiers(e),this.expectContextual(97),this.parseImportSourceAndAttributes(e)}parseImportSourceAndAttributes(e){return null!=e.specifiers||(e.specifiers=[]),e.source=this.parseImportSource(),this.maybeParseImportAttributes(e),this.checkImportReflection(e),this.checkJSONModuleImport(e),this.semicolon(),this.finishNode(e,"ImportDeclaration")}parseImportSource(){return this.match(131)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(e,t,n){t.local=this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(t,n))}finishImportSpecifier(e,t,n=8201){return this.checkLVal(e.local,{in:{type:t},binding:n}),this.finishNode(e,t)}parseImportAttributes(){this.expect(5);const e=[],t=new Set;do{if(this.match(8))break;const n=this.startNode(),r=this.state.value;if(t.has(r)&&this.raise(S.ModuleAttributesWithDuplicateKeys,{at:this.state.startLoc,key:r}),t.add(r),this.match(131)?n.key=this.parseStringLiteral(r):n.key=this.parseIdentifier(!0),this.expect(14),!this.match(131))throw this.raise(S.ModuleAttributeInvalidValue,{at:this.state.startLoc});n.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(n,"ImportAttribute"))}while(this.eat(12));return this.expect(8),e}parseModuleAttributes(){const e=[],t=new Set;do{const n=this.startNode();if(n.key=this.parseIdentifier(!0),"type"!==n.key.name&&this.raise(S.ModuleAttributeDifferentFromType,{at:n.key}),t.has(n.key.name)&&this.raise(S.ModuleAttributesWithDuplicateKeys,{at:n.key,key:n.key.name}),t.add(n.key.name),this.expect(14),!this.match(131))throw this.raise(S.ModuleAttributeInvalidValue,{at:this.state.startLoc});n.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(n,"ImportAttribute"))}while(this.eat(12));return e}maybeParseImportAttributes(e){let t,n=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&40===this.lookaheadCharCode())return;this.next(),this.hasPlugin("moduleAttributes")?t=this.parseModuleAttributes():(this.expectImportAttributesPlugin(),t=this.parseImportAttributes()),n=!0}else if(this.isContextual(94)&&!this.hasPrecedingLineBreak())this.hasPlugin("importAttributes")?(!0!==this.getPluginOption("importAttributes","deprecatedAssertSyntax")&&this.raise(S.ImportAttributesUseAssert,{at:this.state.startLoc}),this.addExtra(e,"deprecatedAssertSyntax",!0)):this.expectOnePlugin(["importAttributes","importAssertions"]),this.next(),t=this.parseImportAttributes();else if(this.hasPlugin("importAttributes")||this.hasPlugin("importAssertions"))t=[];else{if(!this.hasPlugin("moduleAttributes"))return;t=[]}!n&&this.hasPlugin("importAssertions")?e.assertions=t:e.attributes=t}maybeParseDefaultImportSpecifier(e,t){if(t){const n=this.startNodeAtNode(t);return n.local=t,e.specifiers.push(this.finishImportSpecifier(n,"ImportDefaultSpecifier")),!0}return!!X(this.state.type)&&(this.parseImportSpecifierLocal(e,this.startNode(),"ImportDefaultSpecifier"),!0)}maybeParseStarImportSpecifier(e){if(this.match(55)){const t=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(e,t,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(e){let t=!0;for(this.expect(5);!this.eat(8);){if(t)t=!1;else{if(this.eat(14))throw this.raise(S.DestructureNamedImport,{at:this.state.startLoc});if(this.expect(12),this.eat(8))break}const n=this.startNode(),r=this.match(131),a=this.isContextual(128);n.imported=this.parseModuleExportName();const i=this.parseImportSpecifier(n,r,"type"===e.importKind||"typeof"===e.importKind,a,void 0);e.specifiers.push(i)}}parseImportSpecifier(e,t,n,r,a){if(this.eatContextual(93))e.local=this.parseIdentifier();else{const{imported:n}=e;if(t)throw this.raise(S.ImportBindingIsString,{at:e,importName:n.value});this.checkReservedWord(n.name,e.loc.start,!0,!0),e.local||(e.local=st(n))}return this.finishImportSpecifier(e,"ImportSpecifier",a)}isThisParam(e){return"Identifier"===e.type&&"this"===e.name}}class Xt extends Ut{constructor(e,t){super(e=function(e){if(null==e)return Object.assign({},Bt);if(null!=e.annexB&&!1!==e.annexB)throw new Error("The `annexB` option can only be set to `false`.");const t={};for(const r of Object.keys(Bt)){var n;t[r]=null!=(n=e[r])?n:Bt[r]}return t}(e),t),this.options=e,this.initializeScopes(),this.plugins=function(e){const t=new Map;for(const n of e){const[e,r]=Array.isArray(n)?n:[n,{}];t.has(e)||t.set(e,r||{})}return t}(this.options.plugins),this.filename=e.sourceFilename}getScopeHandler(){return Te}parse(){this.enterInitialScopes();const e=this.startNode(),t=this.startNode();return this.nextToken(),e.errors=null,this.parseTopLevel(e,t),e.errors=this.state.errors,e}}const Jt=function(e){const t={};for(const n of Object.keys(e))t[n]=Q(e[n]);return t}(Y);function Wt(e,t){let n=Xt;return null!=e&&e.plugins&&(function(e){if(Ct(e,"decorators")){if(Ct(e,"decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");const t=wt(e,"decorators","decoratorsBeforeExport");if(null!=t&&"boolean"!=typeof t)throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");const n=wt(e,"decorators","allowCallParenthesized");if(null!=n&&"boolean"!=typeof n)throw new Error("'allowCallParenthesized' must be a boolean.")}if(Ct(e,"flow")&&Ct(e,"typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(Ct(e,"placeholders")&&Ct(e,"v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(Ct(e,"pipelineOperator")){const t=wt(e,"pipelineOperator","proposal");if(!Lt.includes(t)){const e=Lt.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${e}.`)}const n=Ct(e,["recordAndTuple",{syntaxType:"hash"}]);if("hack"===t){if(Ct(e,"placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(Ct(e,"v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");const t=wt(e,"pipelineOperator","topicToken");if(!jt.includes(t)){const e=jt.map((e=>`"${e}"`)).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${e}.`)}if("#"===t&&n)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "hack", topicToken: "#" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}else if("smart"===t&&n)throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "smart" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.')}if(Ct(e,"moduleAttributes")){if(Ct(e,"importAssertions")||Ct(e,"importAttributes"))throw new Error("Cannot combine importAssertions, importAttributes and moduleAttributes plugins.");if("may-2020"!==wt(e,"moduleAttributes","version"))throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(Ct(e,"importAssertions")&&Ct(e,"importAttributes"))throw new Error("Cannot combine importAssertions and importAttributes plugins.");if(Ct(e,"recordAndTuple")&&null!=wt(e,"recordAndTuple","syntaxType")&&!_t.includes(wt(e,"recordAndTuple","syntaxType")))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+_t.map((e=>`'${e}'`)).join(", "));if(Ct(e,"asyncDoExpressions")&&!Ct(e,"doExpressions")){const e=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw e.missingPlugins="doExpressions",e}}(e.plugins),n=function(e){const t=kt.filter((t=>Ct(e,t))),n=t.join("/");let r=qt[n];if(!r){r=Xt;for(const e of t)r=Mt[e](r);qt[n]=r}return r}(e.plugins)),new n(e,t)}const qt={};t.parse=function(e,t){var n;if("unambiguous"!==(null==(n=t)?void 0:n.sourceType))return Wt(t,e).parse();t=Object.assign({},t);try{t.sourceType="module";const n=Wt(t,e),r=n.parse();if(n.sawUnambiguousESM)return r;if(n.ambiguousScriptDifferentAst)try{return t.sourceType="script",Wt(t,e).parse()}catch(e){}else r.program.sourceType="script";return r}catch(n){try{return t.sourceType="script",Wt(t,e).parse()}catch(e){}throw n}},t.parseExpression=function(e,t){const n=Wt(t,e);return n.options.strictMode&&(n.state.strict=!0),n.getExpression()},t.tokTypes=Jt},60369:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if(!(0,r.default)(e)){var t;const n=null!=(t=null==e?void 0:e.type)?t:JSON.stringify(e);throw new TypeError(`Not a valid node of type "${n}"`)}};var r=n(67509)},14805:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assertAccessor=function(e,t){i("Accessor",e,t)},t.assertAnyTypeAnnotation=function(e,t){i("AnyTypeAnnotation",e,t)},t.assertArgumentPlaceholder=function(e,t){i("ArgumentPlaceholder",e,t)},t.assertArrayExpression=function(e,t){i("ArrayExpression",e,t)},t.assertArrayPattern=function(e,t){i("ArrayPattern",e,t)},t.assertArrayTypeAnnotation=function(e,t){i("ArrayTypeAnnotation",e,t)},t.assertArrowFunctionExpression=function(e,t){i("ArrowFunctionExpression",e,t)},t.assertAssignmentExpression=function(e,t){i("AssignmentExpression",e,t)},t.assertAssignmentPattern=function(e,t){i("AssignmentPattern",e,t)},t.assertAwaitExpression=function(e,t){i("AwaitExpression",e,t)},t.assertBigIntLiteral=function(e,t){i("BigIntLiteral",e,t)},t.assertBinary=function(e,t){i("Binary",e,t)},t.assertBinaryExpression=function(e,t){i("BinaryExpression",e,t)},t.assertBindExpression=function(e,t){i("BindExpression",e,t)},t.assertBlock=function(e,t){i("Block",e,t)},t.assertBlockParent=function(e,t){i("BlockParent",e,t)},t.assertBlockStatement=function(e,t){i("BlockStatement",e,t)},t.assertBooleanLiteral=function(e,t){i("BooleanLiteral",e,t)},t.assertBooleanLiteralTypeAnnotation=function(e,t){i("BooleanLiteralTypeAnnotation",e,t)},t.assertBooleanTypeAnnotation=function(e,t){i("BooleanTypeAnnotation",e,t)},t.assertBreakStatement=function(e,t){i("BreakStatement",e,t)},t.assertCallExpression=function(e,t){i("CallExpression",e,t)},t.assertCatchClause=function(e,t){i("CatchClause",e,t)},t.assertClass=function(e,t){i("Class",e,t)},t.assertClassAccessorProperty=function(e,t){i("ClassAccessorProperty",e,t)},t.assertClassBody=function(e,t){i("ClassBody",e,t)},t.assertClassDeclaration=function(e,t){i("ClassDeclaration",e,t)},t.assertClassExpression=function(e,t){i("ClassExpression",e,t)},t.assertClassImplements=function(e,t){i("ClassImplements",e,t)},t.assertClassMethod=function(e,t){i("ClassMethod",e,t)},t.assertClassPrivateMethod=function(e,t){i("ClassPrivateMethod",e,t)},t.assertClassPrivateProperty=function(e,t){i("ClassPrivateProperty",e,t)},t.assertClassProperty=function(e,t){i("ClassProperty",e,t)},t.assertCompletionStatement=function(e,t){i("CompletionStatement",e,t)},t.assertConditional=function(e,t){i("Conditional",e,t)},t.assertConditionalExpression=function(e,t){i("ConditionalExpression",e,t)},t.assertContinueStatement=function(e,t){i("ContinueStatement",e,t)},t.assertDebuggerStatement=function(e,t){i("DebuggerStatement",e,t)},t.assertDecimalLiteral=function(e,t){i("DecimalLiteral",e,t)},t.assertDeclaration=function(e,t){i("Declaration",e,t)},t.assertDeclareClass=function(e,t){i("DeclareClass",e,t)},t.assertDeclareExportAllDeclaration=function(e,t){i("DeclareExportAllDeclaration",e,t)},t.assertDeclareExportDeclaration=function(e,t){i("DeclareExportDeclaration",e,t)},t.assertDeclareFunction=function(e,t){i("DeclareFunction",e,t)},t.assertDeclareInterface=function(e,t){i("DeclareInterface",e,t)},t.assertDeclareModule=function(e,t){i("DeclareModule",e,t)},t.assertDeclareModuleExports=function(e,t){i("DeclareModuleExports",e,t)},t.assertDeclareOpaqueType=function(e,t){i("DeclareOpaqueType",e,t)},t.assertDeclareTypeAlias=function(e,t){i("DeclareTypeAlias",e,t)},t.assertDeclareVariable=function(e,t){i("DeclareVariable",e,t)},t.assertDeclaredPredicate=function(e,t){i("DeclaredPredicate",e,t)},t.assertDecorator=function(e,t){i("Decorator",e,t)},t.assertDirective=function(e,t){i("Directive",e,t)},t.assertDirectiveLiteral=function(e,t){i("DirectiveLiteral",e,t)},t.assertDoExpression=function(e,t){i("DoExpression",e,t)},t.assertDoWhileStatement=function(e,t){i("DoWhileStatement",e,t)},t.assertEmptyStatement=function(e,t){i("EmptyStatement",e,t)},t.assertEmptyTypeAnnotation=function(e,t){i("EmptyTypeAnnotation",e,t)},t.assertEnumBody=function(e,t){i("EnumBody",e,t)},t.assertEnumBooleanBody=function(e,t){i("EnumBooleanBody",e,t)},t.assertEnumBooleanMember=function(e,t){i("EnumBooleanMember",e,t)},t.assertEnumDeclaration=function(e,t){i("EnumDeclaration",e,t)},t.assertEnumDefaultedMember=function(e,t){i("EnumDefaultedMember",e,t)},t.assertEnumMember=function(e,t){i("EnumMember",e,t)},t.assertEnumNumberBody=function(e,t){i("EnumNumberBody",e,t)},t.assertEnumNumberMember=function(e,t){i("EnumNumberMember",e,t)},t.assertEnumStringBody=function(e,t){i("EnumStringBody",e,t)},t.assertEnumStringMember=function(e,t){i("EnumStringMember",e,t)},t.assertEnumSymbolBody=function(e,t){i("EnumSymbolBody",e,t)},t.assertExistsTypeAnnotation=function(e,t){i("ExistsTypeAnnotation",e,t)},t.assertExportAllDeclaration=function(e,t){i("ExportAllDeclaration",e,t)},t.assertExportDeclaration=function(e,t){i("ExportDeclaration",e,t)},t.assertExportDefaultDeclaration=function(e,t){i("ExportDefaultDeclaration",e,t)},t.assertExportDefaultSpecifier=function(e,t){i("ExportDefaultSpecifier",e,t)},t.assertExportNamedDeclaration=function(e,t){i("ExportNamedDeclaration",e,t)},t.assertExportNamespaceSpecifier=function(e,t){i("ExportNamespaceSpecifier",e,t)},t.assertExportSpecifier=function(e,t){i("ExportSpecifier",e,t)},t.assertExpression=function(e,t){i("Expression",e,t)},t.assertExpressionStatement=function(e,t){i("ExpressionStatement",e,t)},t.assertExpressionWrapper=function(e,t){i("ExpressionWrapper",e,t)},t.assertFile=function(e,t){i("File",e,t)},t.assertFlow=function(e,t){i("Flow",e,t)},t.assertFlowBaseAnnotation=function(e,t){i("FlowBaseAnnotation",e,t)},t.assertFlowDeclaration=function(e,t){i("FlowDeclaration",e,t)},t.assertFlowPredicate=function(e,t){i("FlowPredicate",e,t)},t.assertFlowType=function(e,t){i("FlowType",e,t)},t.assertFor=function(e,t){i("For",e,t)},t.assertForInStatement=function(e,t){i("ForInStatement",e,t)},t.assertForOfStatement=function(e,t){i("ForOfStatement",e,t)},t.assertForStatement=function(e,t){i("ForStatement",e,t)},t.assertForXStatement=function(e,t){i("ForXStatement",e,t)},t.assertFunction=function(e,t){i("Function",e,t)},t.assertFunctionDeclaration=function(e,t){i("FunctionDeclaration",e,t)},t.assertFunctionExpression=function(e,t){i("FunctionExpression",e,t)},t.assertFunctionParent=function(e,t){i("FunctionParent",e,t)},t.assertFunctionTypeAnnotation=function(e,t){i("FunctionTypeAnnotation",e,t)},t.assertFunctionTypeParam=function(e,t){i("FunctionTypeParam",e,t)},t.assertGenericTypeAnnotation=function(e,t){i("GenericTypeAnnotation",e,t)},t.assertIdentifier=function(e,t){i("Identifier",e,t)},t.assertIfStatement=function(e,t){i("IfStatement",e,t)},t.assertImmutable=function(e,t){i("Immutable",e,t)},t.assertImport=function(e,t){i("Import",e,t)},t.assertImportAttribute=function(e,t){i("ImportAttribute",e,t)},t.assertImportDeclaration=function(e,t){i("ImportDeclaration",e,t)},t.assertImportDefaultSpecifier=function(e,t){i("ImportDefaultSpecifier",e,t)},t.assertImportNamespaceSpecifier=function(e,t){i("ImportNamespaceSpecifier",e,t)},t.assertImportOrExportDeclaration=function(e,t){i("ImportOrExportDeclaration",e,t)},t.assertImportSpecifier=function(e,t){i("ImportSpecifier",e,t)},t.assertIndexedAccessType=function(e,t){i("IndexedAccessType",e,t)},t.assertInferredPredicate=function(e,t){i("InferredPredicate",e,t)},t.assertInterfaceDeclaration=function(e,t){i("InterfaceDeclaration",e,t)},t.assertInterfaceExtends=function(e,t){i("InterfaceExtends",e,t)},t.assertInterfaceTypeAnnotation=function(e,t){i("InterfaceTypeAnnotation",e,t)},t.assertInterpreterDirective=function(e,t){i("InterpreterDirective",e,t)},t.assertIntersectionTypeAnnotation=function(e,t){i("IntersectionTypeAnnotation",e,t)},t.assertJSX=function(e,t){i("JSX",e,t)},t.assertJSXAttribute=function(e,t){i("JSXAttribute",e,t)},t.assertJSXClosingElement=function(e,t){i("JSXClosingElement",e,t)},t.assertJSXClosingFragment=function(e,t){i("JSXClosingFragment",e,t)},t.assertJSXElement=function(e,t){i("JSXElement",e,t)},t.assertJSXEmptyExpression=function(e,t){i("JSXEmptyExpression",e,t)},t.assertJSXExpressionContainer=function(e,t){i("JSXExpressionContainer",e,t)},t.assertJSXFragment=function(e,t){i("JSXFragment",e,t)},t.assertJSXIdentifier=function(e,t){i("JSXIdentifier",e,t)},t.assertJSXMemberExpression=function(e,t){i("JSXMemberExpression",e,t)},t.assertJSXNamespacedName=function(e,t){i("JSXNamespacedName",e,t)},t.assertJSXOpeningElement=function(e,t){i("JSXOpeningElement",e,t)},t.assertJSXOpeningFragment=function(e,t){i("JSXOpeningFragment",e,t)},t.assertJSXSpreadAttribute=function(e,t){i("JSXSpreadAttribute",e,t)},t.assertJSXSpreadChild=function(e,t){i("JSXSpreadChild",e,t)},t.assertJSXText=function(e,t){i("JSXText",e,t)},t.assertLVal=function(e,t){i("LVal",e,t)},t.assertLabeledStatement=function(e,t){i("LabeledStatement",e,t)},t.assertLiteral=function(e,t){i("Literal",e,t)},t.assertLogicalExpression=function(e,t){i("LogicalExpression",e,t)},t.assertLoop=function(e,t){i("Loop",e,t)},t.assertMemberExpression=function(e,t){i("MemberExpression",e,t)},t.assertMetaProperty=function(e,t){i("MetaProperty",e,t)},t.assertMethod=function(e,t){i("Method",e,t)},t.assertMiscellaneous=function(e,t){i("Miscellaneous",e,t)},t.assertMixedTypeAnnotation=function(e,t){i("MixedTypeAnnotation",e,t)},t.assertModuleDeclaration=function(e,t){(0,a.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),i("ModuleDeclaration",e,t)},t.assertModuleExpression=function(e,t){i("ModuleExpression",e,t)},t.assertModuleSpecifier=function(e,t){i("ModuleSpecifier",e,t)},t.assertNewExpression=function(e,t){i("NewExpression",e,t)},t.assertNoop=function(e,t){i("Noop",e,t)},t.assertNullLiteral=function(e,t){i("NullLiteral",e,t)},t.assertNullLiteralTypeAnnotation=function(e,t){i("NullLiteralTypeAnnotation",e,t)},t.assertNullableTypeAnnotation=function(e,t){i("NullableTypeAnnotation",e,t)},t.assertNumberLiteral=function(e,t){(0,a.default)("assertNumberLiteral","assertNumericLiteral"),i("NumberLiteral",e,t)},t.assertNumberLiteralTypeAnnotation=function(e,t){i("NumberLiteralTypeAnnotation",e,t)},t.assertNumberTypeAnnotation=function(e,t){i("NumberTypeAnnotation",e,t)},t.assertNumericLiteral=function(e,t){i("NumericLiteral",e,t)},t.assertObjectExpression=function(e,t){i("ObjectExpression",e,t)},t.assertObjectMember=function(e,t){i("ObjectMember",e,t)},t.assertObjectMethod=function(e,t){i("ObjectMethod",e,t)},t.assertObjectPattern=function(e,t){i("ObjectPattern",e,t)},t.assertObjectProperty=function(e,t){i("ObjectProperty",e,t)},t.assertObjectTypeAnnotation=function(e,t){i("ObjectTypeAnnotation",e,t)},t.assertObjectTypeCallProperty=function(e,t){i("ObjectTypeCallProperty",e,t)},t.assertObjectTypeIndexer=function(e,t){i("ObjectTypeIndexer",e,t)},t.assertObjectTypeInternalSlot=function(e,t){i("ObjectTypeInternalSlot",e,t)},t.assertObjectTypeProperty=function(e,t){i("ObjectTypeProperty",e,t)},t.assertObjectTypeSpreadProperty=function(e,t){i("ObjectTypeSpreadProperty",e,t)},t.assertOpaqueType=function(e,t){i("OpaqueType",e,t)},t.assertOptionalCallExpression=function(e,t){i("OptionalCallExpression",e,t)},t.assertOptionalIndexedAccessType=function(e,t){i("OptionalIndexedAccessType",e,t)},t.assertOptionalMemberExpression=function(e,t){i("OptionalMemberExpression",e,t)},t.assertParenthesizedExpression=function(e,t){i("ParenthesizedExpression",e,t)},t.assertPattern=function(e,t){i("Pattern",e,t)},t.assertPatternLike=function(e,t){i("PatternLike",e,t)},t.assertPipelineBareFunction=function(e,t){i("PipelineBareFunction",e,t)},t.assertPipelinePrimaryTopicReference=function(e,t){i("PipelinePrimaryTopicReference",e,t)},t.assertPipelineTopicExpression=function(e,t){i("PipelineTopicExpression",e,t)},t.assertPlaceholder=function(e,t){i("Placeholder",e,t)},t.assertPrivate=function(e,t){i("Private",e,t)},t.assertPrivateName=function(e,t){i("PrivateName",e,t)},t.assertProgram=function(e,t){i("Program",e,t)},t.assertProperty=function(e,t){i("Property",e,t)},t.assertPureish=function(e,t){i("Pureish",e,t)},t.assertQualifiedTypeIdentifier=function(e,t){i("QualifiedTypeIdentifier",e,t)},t.assertRecordExpression=function(e,t){i("RecordExpression",e,t)},t.assertRegExpLiteral=function(e,t){i("RegExpLiteral",e,t)},t.assertRegexLiteral=function(e,t){(0,a.default)("assertRegexLiteral","assertRegExpLiteral"),i("RegexLiteral",e,t)},t.assertRestElement=function(e,t){i("RestElement",e,t)},t.assertRestProperty=function(e,t){(0,a.default)("assertRestProperty","assertRestElement"),i("RestProperty",e,t)},t.assertReturnStatement=function(e,t){i("ReturnStatement",e,t)},t.assertScopable=function(e,t){i("Scopable",e,t)},t.assertSequenceExpression=function(e,t){i("SequenceExpression",e,t)},t.assertSpreadElement=function(e,t){i("SpreadElement",e,t)},t.assertSpreadProperty=function(e,t){(0,a.default)("assertSpreadProperty","assertSpreadElement"),i("SpreadProperty",e,t)},t.assertStandardized=function(e,t){i("Standardized",e,t)},t.assertStatement=function(e,t){i("Statement",e,t)},t.assertStaticBlock=function(e,t){i("StaticBlock",e,t)},t.assertStringLiteral=function(e,t){i("StringLiteral",e,t)},t.assertStringLiteralTypeAnnotation=function(e,t){i("StringLiteralTypeAnnotation",e,t)},t.assertStringTypeAnnotation=function(e,t){i("StringTypeAnnotation",e,t)},t.assertSuper=function(e,t){i("Super",e,t)},t.assertSwitchCase=function(e,t){i("SwitchCase",e,t)},t.assertSwitchStatement=function(e,t){i("SwitchStatement",e,t)},t.assertSymbolTypeAnnotation=function(e,t){i("SymbolTypeAnnotation",e,t)},t.assertTSAnyKeyword=function(e,t){i("TSAnyKeyword",e,t)},t.assertTSArrayType=function(e,t){i("TSArrayType",e,t)},t.assertTSAsExpression=function(e,t){i("TSAsExpression",e,t)},t.assertTSBaseType=function(e,t){i("TSBaseType",e,t)},t.assertTSBigIntKeyword=function(e,t){i("TSBigIntKeyword",e,t)},t.assertTSBooleanKeyword=function(e,t){i("TSBooleanKeyword",e,t)},t.assertTSCallSignatureDeclaration=function(e,t){i("TSCallSignatureDeclaration",e,t)},t.assertTSConditionalType=function(e,t){i("TSConditionalType",e,t)},t.assertTSConstructSignatureDeclaration=function(e,t){i("TSConstructSignatureDeclaration",e,t)},t.assertTSConstructorType=function(e,t){i("TSConstructorType",e,t)},t.assertTSDeclareFunction=function(e,t){i("TSDeclareFunction",e,t)},t.assertTSDeclareMethod=function(e,t){i("TSDeclareMethod",e,t)},t.assertTSEntityName=function(e,t){i("TSEntityName",e,t)},t.assertTSEnumDeclaration=function(e,t){i("TSEnumDeclaration",e,t)},t.assertTSEnumMember=function(e,t){i("TSEnumMember",e,t)},t.assertTSExportAssignment=function(e,t){i("TSExportAssignment",e,t)},t.assertTSExpressionWithTypeArguments=function(e,t){i("TSExpressionWithTypeArguments",e,t)},t.assertTSExternalModuleReference=function(e,t){i("TSExternalModuleReference",e,t)},t.assertTSFunctionType=function(e,t){i("TSFunctionType",e,t)},t.assertTSImportEqualsDeclaration=function(e,t){i("TSImportEqualsDeclaration",e,t)},t.assertTSImportType=function(e,t){i("TSImportType",e,t)},t.assertTSIndexSignature=function(e,t){i("TSIndexSignature",e,t)},t.assertTSIndexedAccessType=function(e,t){i("TSIndexedAccessType",e,t)},t.assertTSInferType=function(e,t){i("TSInferType",e,t)},t.assertTSInstantiationExpression=function(e,t){i("TSInstantiationExpression",e,t)},t.assertTSInterfaceBody=function(e,t){i("TSInterfaceBody",e,t)},t.assertTSInterfaceDeclaration=function(e,t){i("TSInterfaceDeclaration",e,t)},t.assertTSIntersectionType=function(e,t){i("TSIntersectionType",e,t)},t.assertTSIntrinsicKeyword=function(e,t){i("TSIntrinsicKeyword",e,t)},t.assertTSLiteralType=function(e,t){i("TSLiteralType",e,t)},t.assertTSMappedType=function(e,t){i("TSMappedType",e,t)},t.assertTSMethodSignature=function(e,t){i("TSMethodSignature",e,t)},t.assertTSModuleBlock=function(e,t){i("TSModuleBlock",e,t)},t.assertTSModuleDeclaration=function(e,t){i("TSModuleDeclaration",e,t)},t.assertTSNamedTupleMember=function(e,t){i("TSNamedTupleMember",e,t)},t.assertTSNamespaceExportDeclaration=function(e,t){i("TSNamespaceExportDeclaration",e,t)},t.assertTSNeverKeyword=function(e,t){i("TSNeverKeyword",e,t)},t.assertTSNonNullExpression=function(e,t){i("TSNonNullExpression",e,t)},t.assertTSNullKeyword=function(e,t){i("TSNullKeyword",e,t)},t.assertTSNumberKeyword=function(e,t){i("TSNumberKeyword",e,t)},t.assertTSObjectKeyword=function(e,t){i("TSObjectKeyword",e,t)},t.assertTSOptionalType=function(e,t){i("TSOptionalType",e,t)},t.assertTSParameterProperty=function(e,t){i("TSParameterProperty",e,t)},t.assertTSParenthesizedType=function(e,t){i("TSParenthesizedType",e,t)},t.assertTSPropertySignature=function(e,t){i("TSPropertySignature",e,t)},t.assertTSQualifiedName=function(e,t){i("TSQualifiedName",e,t)},t.assertTSRestType=function(e,t){i("TSRestType",e,t)},t.assertTSSatisfiesExpression=function(e,t){i("TSSatisfiesExpression",e,t)},t.assertTSStringKeyword=function(e,t){i("TSStringKeyword",e,t)},t.assertTSSymbolKeyword=function(e,t){i("TSSymbolKeyword",e,t)},t.assertTSThisType=function(e,t){i("TSThisType",e,t)},t.assertTSTupleType=function(e,t){i("TSTupleType",e,t)},t.assertTSType=function(e,t){i("TSType",e,t)},t.assertTSTypeAliasDeclaration=function(e,t){i("TSTypeAliasDeclaration",e,t)},t.assertTSTypeAnnotation=function(e,t){i("TSTypeAnnotation",e,t)},t.assertTSTypeAssertion=function(e,t){i("TSTypeAssertion",e,t)},t.assertTSTypeElement=function(e,t){i("TSTypeElement",e,t)},t.assertTSTypeLiteral=function(e,t){i("TSTypeLiteral",e,t)},t.assertTSTypeOperator=function(e,t){i("TSTypeOperator",e,t)},t.assertTSTypeParameter=function(e,t){i("TSTypeParameter",e,t)},t.assertTSTypeParameterDeclaration=function(e,t){i("TSTypeParameterDeclaration",e,t)},t.assertTSTypeParameterInstantiation=function(e,t){i("TSTypeParameterInstantiation",e,t)},t.assertTSTypePredicate=function(e,t){i("TSTypePredicate",e,t)},t.assertTSTypeQuery=function(e,t){i("TSTypeQuery",e,t)},t.assertTSTypeReference=function(e,t){i("TSTypeReference",e,t)},t.assertTSUndefinedKeyword=function(e,t){i("TSUndefinedKeyword",e,t)},t.assertTSUnionType=function(e,t){i("TSUnionType",e,t)},t.assertTSUnknownKeyword=function(e,t){i("TSUnknownKeyword",e,t)},t.assertTSVoidKeyword=function(e,t){i("TSVoidKeyword",e,t)},t.assertTaggedTemplateExpression=function(e,t){i("TaggedTemplateExpression",e,t)},t.assertTemplateElement=function(e,t){i("TemplateElement",e,t)},t.assertTemplateLiteral=function(e,t){i("TemplateLiteral",e,t)},t.assertTerminatorless=function(e,t){i("Terminatorless",e,t)},t.assertThisExpression=function(e,t){i("ThisExpression",e,t)},t.assertThisTypeAnnotation=function(e,t){i("ThisTypeAnnotation",e,t)},t.assertThrowStatement=function(e,t){i("ThrowStatement",e,t)},t.assertTopicReference=function(e,t){i("TopicReference",e,t)},t.assertTryStatement=function(e,t){i("TryStatement",e,t)},t.assertTupleExpression=function(e,t){i("TupleExpression",e,t)},t.assertTupleTypeAnnotation=function(e,t){i("TupleTypeAnnotation",e,t)},t.assertTypeAlias=function(e,t){i("TypeAlias",e,t)},t.assertTypeAnnotation=function(e,t){i("TypeAnnotation",e,t)},t.assertTypeCastExpression=function(e,t){i("TypeCastExpression",e,t)},t.assertTypeParameter=function(e,t){i("TypeParameter",e,t)},t.assertTypeParameterDeclaration=function(e,t){i("TypeParameterDeclaration",e,t)},t.assertTypeParameterInstantiation=function(e,t){i("TypeParameterInstantiation",e,t)},t.assertTypeScript=function(e,t){i("TypeScript",e,t)},t.assertTypeofTypeAnnotation=function(e,t){i("TypeofTypeAnnotation",e,t)},t.assertUnaryExpression=function(e,t){i("UnaryExpression",e,t)},t.assertUnaryLike=function(e,t){i("UnaryLike",e,t)},t.assertUnionTypeAnnotation=function(e,t){i("UnionTypeAnnotation",e,t)},t.assertUpdateExpression=function(e,t){i("UpdateExpression",e,t)},t.assertUserWhitespacable=function(e,t){i("UserWhitespacable",e,t)},t.assertV8IntrinsicIdentifier=function(e,t){i("V8IntrinsicIdentifier",e,t)},t.assertVariableDeclaration=function(e,t){i("VariableDeclaration",e,t)},t.assertVariableDeclarator=function(e,t){i("VariableDeclarator",e,t)},t.assertVariance=function(e,t){i("Variance",e,t)},t.assertVoidTypeAnnotation=function(e,t){i("VoidTypeAnnotation",e,t)},t.assertWhile=function(e,t){i("While",e,t)},t.assertWhileStatement=function(e,t){i("WhileStatement",e,t)},t.assertWithStatement=function(e,t){i("WithStatement",e,t)},t.assertYieldExpression=function(e,t){i("YieldExpression",e,t)};var r=n(92378),a=n(92821);function i(e,t,n){if(!(0,r.default)(e,t,n))throw new Error(`Expected type "${e}" with option ${JSON.stringify(n)}, but instead got "${t.type}".`)}},86634:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=(0,a.default)(e);return 1===t.length?t[0]:(0,r.unionTypeAnnotation)(t)};var r=n(94522),a=n(11851)},8341:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(94522);t.default=function(e){switch(e){case"string":return(0,r.stringTypeAnnotation)();case"number":return(0,r.numberTypeAnnotation)();case"undefined":return(0,r.voidTypeAnnotation)();case"boolean":return(0,r.booleanTypeAnnotation)();case"function":return(0,r.genericTypeAnnotation)((0,r.identifier)("Function"));case"object":return(0,r.genericTypeAnnotation)((0,r.identifier)("Object"));case"symbol":return(0,r.genericTypeAnnotation)((0,r.identifier)("Symbol"));case"bigint":return(0,r.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+e)}},94522:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.anyTypeAnnotation=function(){return{type:"AnyTypeAnnotation"}},t.argumentPlaceholder=function(){return{type:"ArgumentPlaceholder"}},t.arrayExpression=function(e=[]){return(0,r.default)({type:"ArrayExpression",elements:e})},t.arrayPattern=function(e){return(0,r.default)({type:"ArrayPattern",elements:e})},t.arrayTypeAnnotation=function(e){return(0,r.default)({type:"ArrayTypeAnnotation",elementType:e})},t.arrowFunctionExpression=function(e,t,n=!1){return(0,r.default)({type:"ArrowFunctionExpression",params:e,body:t,async:n,expression:null})},t.assignmentExpression=function(e,t,n){return(0,r.default)({type:"AssignmentExpression",operator:e,left:t,right:n})},t.assignmentPattern=function(e,t){return(0,r.default)({type:"AssignmentPattern",left:e,right:t})},t.awaitExpression=function(e){return(0,r.default)({type:"AwaitExpression",argument:e})},t.bigIntLiteral=function(e){return(0,r.default)({type:"BigIntLiteral",value:e})},t.binaryExpression=function(e,t,n){return(0,r.default)({type:"BinaryExpression",operator:e,left:t,right:n})},t.bindExpression=function(e,t){return(0,r.default)({type:"BindExpression",object:e,callee:t})},t.blockStatement=function(e,t=[]){return(0,r.default)({type:"BlockStatement",body:e,directives:t})},t.booleanLiteral=function(e){return(0,r.default)({type:"BooleanLiteral",value:e})},t.booleanLiteralTypeAnnotation=function(e){return(0,r.default)({type:"BooleanLiteralTypeAnnotation",value:e})},t.booleanTypeAnnotation=function(){return{type:"BooleanTypeAnnotation"}},t.breakStatement=function(e=null){return(0,r.default)({type:"BreakStatement",label:e})},t.callExpression=function(e,t){return(0,r.default)({type:"CallExpression",callee:e,arguments:t})},t.catchClause=function(e=null,t){return(0,r.default)({type:"CatchClause",param:e,body:t})},t.classAccessorProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassAccessorProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.classBody=function(e){return(0,r.default)({type:"ClassBody",body:e})},t.classDeclaration=function(e,t=null,n,a=null){return(0,r.default)({type:"ClassDeclaration",id:e,superClass:t,body:n,decorators:a})},t.classExpression=function(e=null,t=null,n,a=null){return(0,r.default)({type:"ClassExpression",id:e,superClass:t,body:n,decorators:a})},t.classImplements=function(e,t=null){return(0,r.default)({type:"ClassImplements",id:e,typeParameters:t})},t.classMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1,l=!1){return(0,r.default)({type:"ClassMethod",kind:e,key:t,params:n,body:a,computed:i,static:s,generator:o,async:l})},t.classPrivateMethod=function(e="method",t,n,a,i=!1){return(0,r.default)({type:"ClassPrivateMethod",kind:e,key:t,params:n,body:a,static:i})},t.classPrivateProperty=function(e,t=null,n=null,a=!1){return(0,r.default)({type:"ClassPrivateProperty",key:e,value:t,decorators:n,static:a})},t.classProperty=function(e,t=null,n=null,a=null,i=!1,s=!1){return(0,r.default)({type:"ClassProperty",key:e,value:t,typeAnnotation:n,decorators:a,computed:i,static:s})},t.conditionalExpression=function(e,t,n){return(0,r.default)({type:"ConditionalExpression",test:e,consequent:t,alternate:n})},t.continueStatement=function(e=null){return(0,r.default)({type:"ContinueStatement",label:e})},t.debuggerStatement=function(){return{type:"DebuggerStatement"}},t.decimalLiteral=function(e){return(0,r.default)({type:"DecimalLiteral",value:e})},t.declareClass=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareClass",id:e,typeParameters:t,extends:n,body:a})},t.declareExportAllDeclaration=function(e){return(0,r.default)({type:"DeclareExportAllDeclaration",source:e})},t.declareExportDeclaration=function(e=null,t=null,n=null){return(0,r.default)({type:"DeclareExportDeclaration",declaration:e,specifiers:t,source:n})},t.declareFunction=function(e){return(0,r.default)({type:"DeclareFunction",id:e})},t.declareInterface=function(e,t=null,n=null,a){return(0,r.default)({type:"DeclareInterface",id:e,typeParameters:t,extends:n,body:a})},t.declareModule=function(e,t,n=null){return(0,r.default)({type:"DeclareModule",id:e,body:t,kind:n})},t.declareModuleExports=function(e){return(0,r.default)({type:"DeclareModuleExports",typeAnnotation:e})},t.declareOpaqueType=function(e,t=null,n=null){return(0,r.default)({type:"DeclareOpaqueType",id:e,typeParameters:t,supertype:n})},t.declareTypeAlias=function(e,t=null,n){return(0,r.default)({type:"DeclareTypeAlias",id:e,typeParameters:t,right:n})},t.declareVariable=function(e){return(0,r.default)({type:"DeclareVariable",id:e})},t.declaredPredicate=function(e){return(0,r.default)({type:"DeclaredPredicate",value:e})},t.decorator=function(e){return(0,r.default)({type:"Decorator",expression:e})},t.directive=function(e){return(0,r.default)({type:"Directive",value:e})},t.directiveLiteral=function(e){return(0,r.default)({type:"DirectiveLiteral",value:e})},t.doExpression=function(e,t=!1){return(0,r.default)({type:"DoExpression",body:e,async:t})},t.doWhileStatement=function(e,t){return(0,r.default)({type:"DoWhileStatement",test:e,body:t})},t.emptyStatement=function(){return{type:"EmptyStatement"}},t.emptyTypeAnnotation=function(){return{type:"EmptyTypeAnnotation"}},t.enumBooleanBody=function(e){return(0,r.default)({type:"EnumBooleanBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumBooleanMember=function(e){return(0,r.default)({type:"EnumBooleanMember",id:e,init:null})},t.enumDeclaration=function(e,t){return(0,r.default)({type:"EnumDeclaration",id:e,body:t})},t.enumDefaultedMember=function(e){return(0,r.default)({type:"EnumDefaultedMember",id:e})},t.enumNumberBody=function(e){return(0,r.default)({type:"EnumNumberBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumNumberMember=function(e,t){return(0,r.default)({type:"EnumNumberMember",id:e,init:t})},t.enumStringBody=function(e){return(0,r.default)({type:"EnumStringBody",members:e,explicitType:null,hasUnknownMembers:null})},t.enumStringMember=function(e,t){return(0,r.default)({type:"EnumStringMember",id:e,init:t})},t.enumSymbolBody=function(e){return(0,r.default)({type:"EnumSymbolBody",members:e,hasUnknownMembers:null})},t.existsTypeAnnotation=function(){return{type:"ExistsTypeAnnotation"}},t.exportAllDeclaration=function(e){return(0,r.default)({type:"ExportAllDeclaration",source:e})},t.exportDefaultDeclaration=function(e){return(0,r.default)({type:"ExportDefaultDeclaration",declaration:e})},t.exportDefaultSpecifier=function(e){return(0,r.default)({type:"ExportDefaultSpecifier",exported:e})},t.exportNamedDeclaration=function(e=null,t=[],n=null){return(0,r.default)({type:"ExportNamedDeclaration",declaration:e,specifiers:t,source:n})},t.exportNamespaceSpecifier=function(e){return(0,r.default)({type:"ExportNamespaceSpecifier",exported:e})},t.exportSpecifier=function(e,t){return(0,r.default)({type:"ExportSpecifier",local:e,exported:t})},t.expressionStatement=function(e){return(0,r.default)({type:"ExpressionStatement",expression:e})},t.file=function(e,t=null,n=null){return(0,r.default)({type:"File",program:e,comments:t,tokens:n})},t.forInStatement=function(e,t,n){return(0,r.default)({type:"ForInStatement",left:e,right:t,body:n})},t.forOfStatement=function(e,t,n,a=!1){return(0,r.default)({type:"ForOfStatement",left:e,right:t,body:n,await:a})},t.forStatement=function(e=null,t=null,n=null,a){return(0,r.default)({type:"ForStatement",init:e,test:t,update:n,body:a})},t.functionDeclaration=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionDeclaration",id:e,params:t,body:n,generator:a,async:i})},t.functionExpression=function(e=null,t,n,a=!1,i=!1){return(0,r.default)({type:"FunctionExpression",id:e,params:t,body:n,generator:a,async:i})},t.functionTypeAnnotation=function(e=null,t,n=null,a){return(0,r.default)({type:"FunctionTypeAnnotation",typeParameters:e,params:t,rest:n,returnType:a})},t.functionTypeParam=function(e=null,t){return(0,r.default)({type:"FunctionTypeParam",name:e,typeAnnotation:t})},t.genericTypeAnnotation=function(e,t=null){return(0,r.default)({type:"GenericTypeAnnotation",id:e,typeParameters:t})},t.identifier=function(e){return(0,r.default)({type:"Identifier",name:e})},t.ifStatement=function(e,t,n=null){return(0,r.default)({type:"IfStatement",test:e,consequent:t,alternate:n})},t.import=function(){return{type:"Import"}},t.importAttribute=function(e,t){return(0,r.default)({type:"ImportAttribute",key:e,value:t})},t.importDeclaration=function(e,t){return(0,r.default)({type:"ImportDeclaration",specifiers:e,source:t})},t.importDefaultSpecifier=function(e){return(0,r.default)({type:"ImportDefaultSpecifier",local:e})},t.importNamespaceSpecifier=function(e){return(0,r.default)({type:"ImportNamespaceSpecifier",local:e})},t.importSpecifier=function(e,t){return(0,r.default)({type:"ImportSpecifier",local:e,imported:t})},t.indexedAccessType=function(e,t){return(0,r.default)({type:"IndexedAccessType",objectType:e,indexType:t})},t.inferredPredicate=function(){return{type:"InferredPredicate"}},t.interfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"InterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.interfaceExtends=function(e,t=null){return(0,r.default)({type:"InterfaceExtends",id:e,typeParameters:t})},t.interfaceTypeAnnotation=function(e=null,t){return(0,r.default)({type:"InterfaceTypeAnnotation",extends:e,body:t})},t.interpreterDirective=function(e){return(0,r.default)({type:"InterpreterDirective",value:e})},t.intersectionTypeAnnotation=function(e){return(0,r.default)({type:"IntersectionTypeAnnotation",types:e})},t.jSXAttribute=t.jsxAttribute=function(e,t=null){return(0,r.default)({type:"JSXAttribute",name:e,value:t})},t.jSXClosingElement=t.jsxClosingElement=function(e){return(0,r.default)({type:"JSXClosingElement",name:e})},t.jSXClosingFragment=t.jsxClosingFragment=function(){return{type:"JSXClosingFragment"}},t.jSXElement=t.jsxElement=function(e,t=null,n,a=null){return(0,r.default)({type:"JSXElement",openingElement:e,closingElement:t,children:n,selfClosing:a})},t.jSXEmptyExpression=t.jsxEmptyExpression=function(){return{type:"JSXEmptyExpression"}},t.jSXExpressionContainer=t.jsxExpressionContainer=function(e){return(0,r.default)({type:"JSXExpressionContainer",expression:e})},t.jSXFragment=t.jsxFragment=function(e,t,n){return(0,r.default)({type:"JSXFragment",openingFragment:e,closingFragment:t,children:n})},t.jSXIdentifier=t.jsxIdentifier=function(e){return(0,r.default)({type:"JSXIdentifier",name:e})},t.jSXMemberExpression=t.jsxMemberExpression=function(e,t){return(0,r.default)({type:"JSXMemberExpression",object:e,property:t})},t.jSXNamespacedName=t.jsxNamespacedName=function(e,t){return(0,r.default)({type:"JSXNamespacedName",namespace:e,name:t})},t.jSXOpeningElement=t.jsxOpeningElement=function(e,t,n=!1){return(0,r.default)({type:"JSXOpeningElement",name:e,attributes:t,selfClosing:n})},t.jSXOpeningFragment=t.jsxOpeningFragment=function(){return{type:"JSXOpeningFragment"}},t.jSXSpreadAttribute=t.jsxSpreadAttribute=function(e){return(0,r.default)({type:"JSXSpreadAttribute",argument:e})},t.jSXSpreadChild=t.jsxSpreadChild=function(e){return(0,r.default)({type:"JSXSpreadChild",expression:e})},t.jSXText=t.jsxText=function(e){return(0,r.default)({type:"JSXText",value:e})},t.labeledStatement=function(e,t){return(0,r.default)({type:"LabeledStatement",label:e,body:t})},t.logicalExpression=function(e,t,n){return(0,r.default)({type:"LogicalExpression",operator:e,left:t,right:n})},t.memberExpression=function(e,t,n=!1,a=null){return(0,r.default)({type:"MemberExpression",object:e,property:t,computed:n,optional:a})},t.metaProperty=function(e,t){return(0,r.default)({type:"MetaProperty",meta:e,property:t})},t.mixedTypeAnnotation=function(){return{type:"MixedTypeAnnotation"}},t.moduleExpression=function(e){return(0,r.default)({type:"ModuleExpression",body:e})},t.newExpression=function(e,t){return(0,r.default)({type:"NewExpression",callee:e,arguments:t})},t.noop=function(){return{type:"Noop"}},t.nullLiteral=function(){return{type:"NullLiteral"}},t.nullLiteralTypeAnnotation=function(){return{type:"NullLiteralTypeAnnotation"}},t.nullableTypeAnnotation=function(e){return(0,r.default)({type:"NullableTypeAnnotation",typeAnnotation:e})},t.numberLiteral=function(e){return(0,a.default)("NumberLiteral","NumericLiteral","The node type "),i(e)},t.numberLiteralTypeAnnotation=function(e){return(0,r.default)({type:"NumberLiteralTypeAnnotation",value:e})},t.numberTypeAnnotation=function(){return{type:"NumberTypeAnnotation"}},t.numericLiteral=i,t.objectExpression=function(e){return(0,r.default)({type:"ObjectExpression",properties:e})},t.objectMethod=function(e="method",t,n,a,i=!1,s=!1,o=!1){return(0,r.default)({type:"ObjectMethod",kind:e,key:t,params:n,body:a,computed:i,generator:s,async:o})},t.objectPattern=function(e){return(0,r.default)({type:"ObjectPattern",properties:e})},t.objectProperty=function(e,t,n=!1,a=!1,i=null){return(0,r.default)({type:"ObjectProperty",key:e,value:t,computed:n,shorthand:a,decorators:i})},t.objectTypeAnnotation=function(e,t=[],n=[],a=[],i=!1){return(0,r.default)({type:"ObjectTypeAnnotation",properties:e,indexers:t,callProperties:n,internalSlots:a,exact:i})},t.objectTypeCallProperty=function(e){return(0,r.default)({type:"ObjectTypeCallProperty",value:e,static:null})},t.objectTypeIndexer=function(e=null,t,n,a=null){return(0,r.default)({type:"ObjectTypeIndexer",id:e,key:t,value:n,variance:a,static:null})},t.objectTypeInternalSlot=function(e,t,n,a,i){return(0,r.default)({type:"ObjectTypeInternalSlot",id:e,value:t,optional:n,static:a,method:i})},t.objectTypeProperty=function(e,t,n=null){return(0,r.default)({type:"ObjectTypeProperty",key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null})},t.objectTypeSpreadProperty=function(e){return(0,r.default)({type:"ObjectTypeSpreadProperty",argument:e})},t.opaqueType=function(e,t=null,n=null,a){return(0,r.default)({type:"OpaqueType",id:e,typeParameters:t,supertype:n,impltype:a})},t.optionalCallExpression=function(e,t,n){return(0,r.default)({type:"OptionalCallExpression",callee:e,arguments:t,optional:n})},t.optionalIndexedAccessType=function(e,t){return(0,r.default)({type:"OptionalIndexedAccessType",objectType:e,indexType:t,optional:null})},t.optionalMemberExpression=function(e,t,n=!1,a){return(0,r.default)({type:"OptionalMemberExpression",object:e,property:t,computed:n,optional:a})},t.parenthesizedExpression=function(e){return(0,r.default)({type:"ParenthesizedExpression",expression:e})},t.pipelineBareFunction=function(e){return(0,r.default)({type:"PipelineBareFunction",callee:e})},t.pipelinePrimaryTopicReference=function(){return{type:"PipelinePrimaryTopicReference"}},t.pipelineTopicExpression=function(e){return(0,r.default)({type:"PipelineTopicExpression",expression:e})},t.placeholder=function(e,t){return(0,r.default)({type:"Placeholder",expectedNode:e,name:t})},t.privateName=function(e){return(0,r.default)({type:"PrivateName",id:e})},t.program=function(e,t=[],n="script",a=null){return(0,r.default)({type:"Program",body:e,directives:t,sourceType:n,interpreter:a,sourceFile:null})},t.qualifiedTypeIdentifier=function(e,t){return(0,r.default)({type:"QualifiedTypeIdentifier",id:e,qualification:t})},t.recordExpression=function(e){return(0,r.default)({type:"RecordExpression",properties:e})},t.regExpLiteral=s,t.regexLiteral=function(e,t=""){return(0,a.default)("RegexLiteral","RegExpLiteral","The node type "),s(e,t)},t.restElement=o,t.restProperty=function(e){return(0,a.default)("RestProperty","RestElement","The node type "),o(e)},t.returnStatement=function(e=null){return(0,r.default)({type:"ReturnStatement",argument:e})},t.sequenceExpression=function(e){return(0,r.default)({type:"SequenceExpression",expressions:e})},t.spreadElement=l,t.spreadProperty=function(e){return(0,a.default)("SpreadProperty","SpreadElement","The node type "),l(e)},t.staticBlock=function(e){return(0,r.default)({type:"StaticBlock",body:e})},t.stringLiteral=function(e){return(0,r.default)({type:"StringLiteral",value:e})},t.stringLiteralTypeAnnotation=function(e){return(0,r.default)({type:"StringLiteralTypeAnnotation",value:e})},t.stringTypeAnnotation=function(){return{type:"StringTypeAnnotation"}},t.super=function(){return{type:"Super"}},t.switchCase=function(e=null,t){return(0,r.default)({type:"SwitchCase",test:e,consequent:t})},t.switchStatement=function(e,t){return(0,r.default)({type:"SwitchStatement",discriminant:e,cases:t})},t.symbolTypeAnnotation=function(){return{type:"SymbolTypeAnnotation"}},t.taggedTemplateExpression=function(e,t){return(0,r.default)({type:"TaggedTemplateExpression",tag:e,quasi:t})},t.templateElement=function(e,t=!1){return(0,r.default)({type:"TemplateElement",value:e,tail:t})},t.templateLiteral=function(e,t){return(0,r.default)({type:"TemplateLiteral",quasis:e,expressions:t})},t.thisExpression=function(){return{type:"ThisExpression"}},t.thisTypeAnnotation=function(){return{type:"ThisTypeAnnotation"}},t.throwStatement=function(e){return(0,r.default)({type:"ThrowStatement",argument:e})},t.topicReference=function(){return{type:"TopicReference"}},t.tryStatement=function(e,t=null,n=null){return(0,r.default)({type:"TryStatement",block:e,handler:t,finalizer:n})},t.tSAnyKeyword=t.tsAnyKeyword=function(){return{type:"TSAnyKeyword"}},t.tSArrayType=t.tsArrayType=function(e){return(0,r.default)({type:"TSArrayType",elementType:e})},t.tSAsExpression=t.tsAsExpression=function(e,t){return(0,r.default)({type:"TSAsExpression",expression:e,typeAnnotation:t})},t.tSBigIntKeyword=t.tsBigIntKeyword=function(){return{type:"TSBigIntKeyword"}},t.tSBooleanKeyword=t.tsBooleanKeyword=function(){return{type:"TSBooleanKeyword"}},t.tSCallSignatureDeclaration=t.tsCallSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSCallSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConditionalType=t.tsConditionalType=function(e,t,n,a){return(0,r.default)({type:"TSConditionalType",checkType:e,extendsType:t,trueType:n,falseType:a})},t.tSConstructSignatureDeclaration=t.tsConstructSignatureDeclaration=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructSignatureDeclaration",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSConstructorType=t.tsConstructorType=function(e=null,t,n=null){return(0,r.default)({type:"TSConstructorType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSDeclareFunction=t.tsDeclareFunction=function(e=null,t=null,n,a=null){return(0,r.default)({type:"TSDeclareFunction",id:e,typeParameters:t,params:n,returnType:a})},t.tSDeclareMethod=t.tsDeclareMethod=function(e=null,t,n=null,a,i=null){return(0,r.default)({type:"TSDeclareMethod",decorators:e,key:t,typeParameters:n,params:a,returnType:i})},t.tSEnumDeclaration=t.tsEnumDeclaration=function(e,t){return(0,r.default)({type:"TSEnumDeclaration",id:e,members:t})},t.tSEnumMember=t.tsEnumMember=function(e,t=null){return(0,r.default)({type:"TSEnumMember",id:e,initializer:t})},t.tSExportAssignment=t.tsExportAssignment=function(e){return(0,r.default)({type:"TSExportAssignment",expression:e})},t.tSExpressionWithTypeArguments=t.tsExpressionWithTypeArguments=function(e,t=null){return(0,r.default)({type:"TSExpressionWithTypeArguments",expression:e,typeParameters:t})},t.tSExternalModuleReference=t.tsExternalModuleReference=function(e){return(0,r.default)({type:"TSExternalModuleReference",expression:e})},t.tSFunctionType=t.tsFunctionType=function(e=null,t,n=null){return(0,r.default)({type:"TSFunctionType",typeParameters:e,parameters:t,typeAnnotation:n})},t.tSImportEqualsDeclaration=t.tsImportEqualsDeclaration=function(e,t){return(0,r.default)({type:"TSImportEqualsDeclaration",id:e,moduleReference:t,isExport:null})},t.tSImportType=t.tsImportType=function(e,t=null,n=null){return(0,r.default)({type:"TSImportType",argument:e,qualifier:t,typeParameters:n})},t.tSIndexSignature=t.tsIndexSignature=function(e,t=null){return(0,r.default)({type:"TSIndexSignature",parameters:e,typeAnnotation:t})},t.tSIndexedAccessType=t.tsIndexedAccessType=function(e,t){return(0,r.default)({type:"TSIndexedAccessType",objectType:e,indexType:t})},t.tSInferType=t.tsInferType=function(e){return(0,r.default)({type:"TSInferType",typeParameter:e})},t.tSInstantiationExpression=t.tsInstantiationExpression=function(e,t=null){return(0,r.default)({type:"TSInstantiationExpression",expression:e,typeParameters:t})},t.tSInterfaceBody=t.tsInterfaceBody=function(e){return(0,r.default)({type:"TSInterfaceBody",body:e})},t.tSInterfaceDeclaration=t.tsInterfaceDeclaration=function(e,t=null,n=null,a){return(0,r.default)({type:"TSInterfaceDeclaration",id:e,typeParameters:t,extends:n,body:a})},t.tSIntersectionType=t.tsIntersectionType=function(e){return(0,r.default)({type:"TSIntersectionType",types:e})},t.tSIntrinsicKeyword=t.tsIntrinsicKeyword=function(){return{type:"TSIntrinsicKeyword"}},t.tSLiteralType=t.tsLiteralType=function(e){return(0,r.default)({type:"TSLiteralType",literal:e})},t.tSMappedType=t.tsMappedType=function(e,t=null,n=null){return(0,r.default)({type:"TSMappedType",typeParameter:e,typeAnnotation:t,nameType:n})},t.tSMethodSignature=t.tsMethodSignature=function(e,t=null,n,a=null){return(0,r.default)({type:"TSMethodSignature",key:e,typeParameters:t,parameters:n,typeAnnotation:a,kind:null})},t.tSModuleBlock=t.tsModuleBlock=function(e){return(0,r.default)({type:"TSModuleBlock",body:e})},t.tSModuleDeclaration=t.tsModuleDeclaration=function(e,t){return(0,r.default)({type:"TSModuleDeclaration",id:e,body:t})},t.tSNamedTupleMember=t.tsNamedTupleMember=function(e,t,n=!1){return(0,r.default)({type:"TSNamedTupleMember",label:e,elementType:t,optional:n})},t.tSNamespaceExportDeclaration=t.tsNamespaceExportDeclaration=function(e){return(0,r.default)({type:"TSNamespaceExportDeclaration",id:e})},t.tSNeverKeyword=t.tsNeverKeyword=function(){return{type:"TSNeverKeyword"}},t.tSNonNullExpression=t.tsNonNullExpression=function(e){return(0,r.default)({type:"TSNonNullExpression",expression:e})},t.tSNullKeyword=t.tsNullKeyword=function(){return{type:"TSNullKeyword"}},t.tSNumberKeyword=t.tsNumberKeyword=function(){return{type:"TSNumberKeyword"}},t.tSObjectKeyword=t.tsObjectKeyword=function(){return{type:"TSObjectKeyword"}},t.tSOptionalType=t.tsOptionalType=function(e){return(0,r.default)({type:"TSOptionalType",typeAnnotation:e})},t.tSParameterProperty=t.tsParameterProperty=function(e){return(0,r.default)({type:"TSParameterProperty",parameter:e})},t.tSParenthesizedType=t.tsParenthesizedType=function(e){return(0,r.default)({type:"TSParenthesizedType",typeAnnotation:e})},t.tSPropertySignature=t.tsPropertySignature=function(e,t=null,n=null){return(0,r.default)({type:"TSPropertySignature",key:e,typeAnnotation:t,initializer:n,kind:null})},t.tSQualifiedName=t.tsQualifiedName=function(e,t){return(0,r.default)({type:"TSQualifiedName",left:e,right:t})},t.tSRestType=t.tsRestType=function(e){return(0,r.default)({type:"TSRestType",typeAnnotation:e})},t.tSSatisfiesExpression=t.tsSatisfiesExpression=function(e,t){return(0,r.default)({type:"TSSatisfiesExpression",expression:e,typeAnnotation:t})},t.tSStringKeyword=t.tsStringKeyword=function(){return{type:"TSStringKeyword"}},t.tSSymbolKeyword=t.tsSymbolKeyword=function(){return{type:"TSSymbolKeyword"}},t.tSThisType=t.tsThisType=function(){return{type:"TSThisType"}},t.tSTupleType=t.tsTupleType=function(e){return(0,r.default)({type:"TSTupleType",elementTypes:e})},t.tSTypeAliasDeclaration=t.tsTypeAliasDeclaration=function(e,t=null,n){return(0,r.default)({type:"TSTypeAliasDeclaration",id:e,typeParameters:t,typeAnnotation:n})},t.tSTypeAnnotation=t.tsTypeAnnotation=function(e){return(0,r.default)({type:"TSTypeAnnotation",typeAnnotation:e})},t.tSTypeAssertion=t.tsTypeAssertion=function(e,t){return(0,r.default)({type:"TSTypeAssertion",typeAnnotation:e,expression:t})},t.tSTypeLiteral=t.tsTypeLiteral=function(e){return(0,r.default)({type:"TSTypeLiteral",members:e})},t.tSTypeOperator=t.tsTypeOperator=function(e){return(0,r.default)({type:"TSTypeOperator",typeAnnotation:e,operator:null})},t.tSTypeParameter=t.tsTypeParameter=function(e=null,t=null,n){return(0,r.default)({type:"TSTypeParameter",constraint:e,default:t,name:n})},t.tSTypeParameterDeclaration=t.tsTypeParameterDeclaration=function(e){return(0,r.default)({type:"TSTypeParameterDeclaration",params:e})},t.tSTypeParameterInstantiation=t.tsTypeParameterInstantiation=function(e){return(0,r.default)({type:"TSTypeParameterInstantiation",params:e})},t.tSTypePredicate=t.tsTypePredicate=function(e,t=null,n=null){return(0,r.default)({type:"TSTypePredicate",parameterName:e,typeAnnotation:t,asserts:n})},t.tSTypeQuery=t.tsTypeQuery=function(e,t=null){return(0,r.default)({type:"TSTypeQuery",exprName:e,typeParameters:t})},t.tSTypeReference=t.tsTypeReference=function(e,t=null){return(0,r.default)({type:"TSTypeReference",typeName:e,typeParameters:t})},t.tSUndefinedKeyword=t.tsUndefinedKeyword=function(){return{type:"TSUndefinedKeyword"}},t.tSUnionType=t.tsUnionType=function(e){return(0,r.default)({type:"TSUnionType",types:e})},t.tSUnknownKeyword=t.tsUnknownKeyword=function(){return{type:"TSUnknownKeyword"}},t.tSVoidKeyword=t.tsVoidKeyword=function(){return{type:"TSVoidKeyword"}},t.tupleExpression=function(e=[]){return(0,r.default)({type:"TupleExpression",elements:e})},t.tupleTypeAnnotation=function(e){return(0,r.default)({type:"TupleTypeAnnotation",types:e})},t.typeAlias=function(e,t=null,n){return(0,r.default)({type:"TypeAlias",id:e,typeParameters:t,right:n})},t.typeAnnotation=function(e){return(0,r.default)({type:"TypeAnnotation",typeAnnotation:e})},t.typeCastExpression=function(e,t){return(0,r.default)({type:"TypeCastExpression",expression:e,typeAnnotation:t})},t.typeParameter=function(e=null,t=null,n=null){return(0,r.default)({type:"TypeParameter",bound:e,default:t,variance:n,name:null})},t.typeParameterDeclaration=function(e){return(0,r.default)({type:"TypeParameterDeclaration",params:e})},t.typeParameterInstantiation=function(e){return(0,r.default)({type:"TypeParameterInstantiation",params:e})},t.typeofTypeAnnotation=function(e){return(0,r.default)({type:"TypeofTypeAnnotation",argument:e})},t.unaryExpression=function(e,t,n=!0){return(0,r.default)({type:"UnaryExpression",operator:e,argument:t,prefix:n})},t.unionTypeAnnotation=function(e){return(0,r.default)({type:"UnionTypeAnnotation",types:e})},t.updateExpression=function(e,t,n=!1){return(0,r.default)({type:"UpdateExpression",operator:e,argument:t,prefix:n})},t.v8IntrinsicIdentifier=function(e){return(0,r.default)({type:"V8IntrinsicIdentifier",name:e})},t.variableDeclaration=function(e,t){return(0,r.default)({type:"VariableDeclaration",kind:e,declarations:t})},t.variableDeclarator=function(e,t=null){return(0,r.default)({type:"VariableDeclarator",id:e,init:t})},t.variance=function(e){return(0,r.default)({type:"Variance",kind:e})},t.voidTypeAnnotation=function(){return{type:"VoidTypeAnnotation"}},t.whileStatement=function(e,t){return(0,r.default)({type:"WhileStatement",test:e,body:t})},t.withStatement=function(e,t){return(0,r.default)({type:"WithStatement",object:e,body:t})},t.yieldExpression=function(e=null,t=!1){return(0,r.default)({type:"YieldExpression",argument:e,delegate:t})};var r=n(59579),a=n(92821);function i(e){return(0,r.default)({type:"NumericLiteral",value:e})}function s(e,t=""){return(0,r.default)({type:"RegExpLiteral",pattern:e,flags:t})}function o(e){return(0,r.default)({type:"RestElement",argument:e})}function l(e){return(0,r.default)({type:"SpreadElement",argument:e})}},53810:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"AnyTypeAnnotation",{enumerable:!0,get:function(){return r.anyTypeAnnotation}}),Object.defineProperty(t,"ArgumentPlaceholder",{enumerable:!0,get:function(){return r.argumentPlaceholder}}),Object.defineProperty(t,"ArrayExpression",{enumerable:!0,get:function(){return r.arrayExpression}}),Object.defineProperty(t,"ArrayPattern",{enumerable:!0,get:function(){return r.arrayPattern}}),Object.defineProperty(t,"ArrayTypeAnnotation",{enumerable:!0,get:function(){return r.arrayTypeAnnotation}}),Object.defineProperty(t,"ArrowFunctionExpression",{enumerable:!0,get:function(){return r.arrowFunctionExpression}}),Object.defineProperty(t,"AssignmentExpression",{enumerable:!0,get:function(){return r.assignmentExpression}}),Object.defineProperty(t,"AssignmentPattern",{enumerable:!0,get:function(){return r.assignmentPattern}}),Object.defineProperty(t,"AwaitExpression",{enumerable:!0,get:function(){return r.awaitExpression}}),Object.defineProperty(t,"BigIntLiteral",{enumerable:!0,get:function(){return r.bigIntLiteral}}),Object.defineProperty(t,"BinaryExpression",{enumerable:!0,get:function(){return r.binaryExpression}}),Object.defineProperty(t,"BindExpression",{enumerable:!0,get:function(){return r.bindExpression}}),Object.defineProperty(t,"BlockStatement",{enumerable:!0,get:function(){return r.blockStatement}}),Object.defineProperty(t,"BooleanLiteral",{enumerable:!0,get:function(){return r.booleanLiteral}}),Object.defineProperty(t,"BooleanLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.booleanLiteralTypeAnnotation}}),Object.defineProperty(t,"BooleanTypeAnnotation",{enumerable:!0,get:function(){return r.booleanTypeAnnotation}}),Object.defineProperty(t,"BreakStatement",{enumerable:!0,get:function(){return r.breakStatement}}),Object.defineProperty(t,"CallExpression",{enumerable:!0,get:function(){return r.callExpression}}),Object.defineProperty(t,"CatchClause",{enumerable:!0,get:function(){return r.catchClause}}),Object.defineProperty(t,"ClassAccessorProperty",{enumerable:!0,get:function(){return r.classAccessorProperty}}),Object.defineProperty(t,"ClassBody",{enumerable:!0,get:function(){return r.classBody}}),Object.defineProperty(t,"ClassDeclaration",{enumerable:!0,get:function(){return r.classDeclaration}}),Object.defineProperty(t,"ClassExpression",{enumerable:!0,get:function(){return r.classExpression}}),Object.defineProperty(t,"ClassImplements",{enumerable:!0,get:function(){return r.classImplements}}),Object.defineProperty(t,"ClassMethod",{enumerable:!0,get:function(){return r.classMethod}}),Object.defineProperty(t,"ClassPrivateMethod",{enumerable:!0,get:function(){return r.classPrivateMethod}}),Object.defineProperty(t,"ClassPrivateProperty",{enumerable:!0,get:function(){return r.classPrivateProperty}}),Object.defineProperty(t,"ClassProperty",{enumerable:!0,get:function(){return r.classProperty}}),Object.defineProperty(t,"ConditionalExpression",{enumerable:!0,get:function(){return r.conditionalExpression}}),Object.defineProperty(t,"ContinueStatement",{enumerable:!0,get:function(){return r.continueStatement}}),Object.defineProperty(t,"DebuggerStatement",{enumerable:!0,get:function(){return r.debuggerStatement}}),Object.defineProperty(t,"DecimalLiteral",{enumerable:!0,get:function(){return r.decimalLiteral}}),Object.defineProperty(t,"DeclareClass",{enumerable:!0,get:function(){return r.declareClass}}),Object.defineProperty(t,"DeclareExportAllDeclaration",{enumerable:!0,get:function(){return r.declareExportAllDeclaration}}),Object.defineProperty(t,"DeclareExportDeclaration",{enumerable:!0,get:function(){return r.declareExportDeclaration}}),Object.defineProperty(t,"DeclareFunction",{enumerable:!0,get:function(){return r.declareFunction}}),Object.defineProperty(t,"DeclareInterface",{enumerable:!0,get:function(){return r.declareInterface}}),Object.defineProperty(t,"DeclareModule",{enumerable:!0,get:function(){return r.declareModule}}),Object.defineProperty(t,"DeclareModuleExports",{enumerable:!0,get:function(){return r.declareModuleExports}}),Object.defineProperty(t,"DeclareOpaqueType",{enumerable:!0,get:function(){return r.declareOpaqueType}}),Object.defineProperty(t,"DeclareTypeAlias",{enumerable:!0,get:function(){return r.declareTypeAlias}}),Object.defineProperty(t,"DeclareVariable",{enumerable:!0,get:function(){return r.declareVariable}}),Object.defineProperty(t,"DeclaredPredicate",{enumerable:!0,get:function(){return r.declaredPredicate}}),Object.defineProperty(t,"Decorator",{enumerable:!0,get:function(){return r.decorator}}),Object.defineProperty(t,"Directive",{enumerable:!0,get:function(){return r.directive}}),Object.defineProperty(t,"DirectiveLiteral",{enumerable:!0,get:function(){return r.directiveLiteral}}),Object.defineProperty(t,"DoExpression",{enumerable:!0,get:function(){return r.doExpression}}),Object.defineProperty(t,"DoWhileStatement",{enumerable:!0,get:function(){return r.doWhileStatement}}),Object.defineProperty(t,"EmptyStatement",{enumerable:!0,get:function(){return r.emptyStatement}}),Object.defineProperty(t,"EmptyTypeAnnotation",{enumerable:!0,get:function(){return r.emptyTypeAnnotation}}),Object.defineProperty(t,"EnumBooleanBody",{enumerable:!0,get:function(){return r.enumBooleanBody}}),Object.defineProperty(t,"EnumBooleanMember",{enumerable:!0,get:function(){return r.enumBooleanMember}}),Object.defineProperty(t,"EnumDeclaration",{enumerable:!0,get:function(){return r.enumDeclaration}}),Object.defineProperty(t,"EnumDefaultedMember",{enumerable:!0,get:function(){return r.enumDefaultedMember}}),Object.defineProperty(t,"EnumNumberBody",{enumerable:!0,get:function(){return r.enumNumberBody}}),Object.defineProperty(t,"EnumNumberMember",{enumerable:!0,get:function(){return r.enumNumberMember}}),Object.defineProperty(t,"EnumStringBody",{enumerable:!0,get:function(){return r.enumStringBody}}),Object.defineProperty(t,"EnumStringMember",{enumerable:!0,get:function(){return r.enumStringMember}}),Object.defineProperty(t,"EnumSymbolBody",{enumerable:!0,get:function(){return r.enumSymbolBody}}),Object.defineProperty(t,"ExistsTypeAnnotation",{enumerable:!0,get:function(){return r.existsTypeAnnotation}}),Object.defineProperty(t,"ExportAllDeclaration",{enumerable:!0,get:function(){return r.exportAllDeclaration}}),Object.defineProperty(t,"ExportDefaultDeclaration",{enumerable:!0,get:function(){return r.exportDefaultDeclaration}}),Object.defineProperty(t,"ExportDefaultSpecifier",{enumerable:!0,get:function(){return r.exportDefaultSpecifier}}),Object.defineProperty(t,"ExportNamedDeclaration",{enumerable:!0,get:function(){return r.exportNamedDeclaration}}),Object.defineProperty(t,"ExportNamespaceSpecifier",{enumerable:!0,get:function(){return r.exportNamespaceSpecifier}}),Object.defineProperty(t,"ExportSpecifier",{enumerable:!0,get:function(){return r.exportSpecifier}}),Object.defineProperty(t,"ExpressionStatement",{enumerable:!0,get:function(){return r.expressionStatement}}),Object.defineProperty(t,"File",{enumerable:!0,get:function(){return r.file}}),Object.defineProperty(t,"ForInStatement",{enumerable:!0,get:function(){return r.forInStatement}}),Object.defineProperty(t,"ForOfStatement",{enumerable:!0,get:function(){return r.forOfStatement}}),Object.defineProperty(t,"ForStatement",{enumerable:!0,get:function(){return r.forStatement}}),Object.defineProperty(t,"FunctionDeclaration",{enumerable:!0,get:function(){return r.functionDeclaration}}),Object.defineProperty(t,"FunctionExpression",{enumerable:!0,get:function(){return r.functionExpression}}),Object.defineProperty(t,"FunctionTypeAnnotation",{enumerable:!0,get:function(){return r.functionTypeAnnotation}}),Object.defineProperty(t,"FunctionTypeParam",{enumerable:!0,get:function(){return r.functionTypeParam}}),Object.defineProperty(t,"GenericTypeAnnotation",{enumerable:!0,get:function(){return r.genericTypeAnnotation}}),Object.defineProperty(t,"Identifier",{enumerable:!0,get:function(){return r.identifier}}),Object.defineProperty(t,"IfStatement",{enumerable:!0,get:function(){return r.ifStatement}}),Object.defineProperty(t,"Import",{enumerable:!0,get:function(){return r.import}}),Object.defineProperty(t,"ImportAttribute",{enumerable:!0,get:function(){return r.importAttribute}}),Object.defineProperty(t,"ImportDeclaration",{enumerable:!0,get:function(){return r.importDeclaration}}),Object.defineProperty(t,"ImportDefaultSpecifier",{enumerable:!0,get:function(){return r.importDefaultSpecifier}}),Object.defineProperty(t,"ImportNamespaceSpecifier",{enumerable:!0,get:function(){return r.importNamespaceSpecifier}}),Object.defineProperty(t,"ImportSpecifier",{enumerable:!0,get:function(){return r.importSpecifier}}),Object.defineProperty(t,"IndexedAccessType",{enumerable:!0,get:function(){return r.indexedAccessType}}),Object.defineProperty(t,"InferredPredicate",{enumerable:!0,get:function(){return r.inferredPredicate}}),Object.defineProperty(t,"InterfaceDeclaration",{enumerable:!0,get:function(){return r.interfaceDeclaration}}),Object.defineProperty(t,"InterfaceExtends",{enumerable:!0,get:function(){return r.interfaceExtends}}),Object.defineProperty(t,"InterfaceTypeAnnotation",{enumerable:!0,get:function(){return r.interfaceTypeAnnotation}}),Object.defineProperty(t,"InterpreterDirective",{enumerable:!0,get:function(){return r.interpreterDirective}}),Object.defineProperty(t,"IntersectionTypeAnnotation",{enumerable:!0,get:function(){return r.intersectionTypeAnnotation}}),Object.defineProperty(t,"JSXAttribute",{enumerable:!0,get:function(){return r.jsxAttribute}}),Object.defineProperty(t,"JSXClosingElement",{enumerable:!0,get:function(){return r.jsxClosingElement}}),Object.defineProperty(t,"JSXClosingFragment",{enumerable:!0,get:function(){return r.jsxClosingFragment}}),Object.defineProperty(t,"JSXElement",{enumerable:!0,get:function(){return r.jsxElement}}),Object.defineProperty(t,"JSXEmptyExpression",{enumerable:!0,get:function(){return r.jsxEmptyExpression}}),Object.defineProperty(t,"JSXExpressionContainer",{enumerable:!0,get:function(){return r.jsxExpressionContainer}}),Object.defineProperty(t,"JSXFragment",{enumerable:!0,get:function(){return r.jsxFragment}}),Object.defineProperty(t,"JSXIdentifier",{enumerable:!0,get:function(){return r.jsxIdentifier}}),Object.defineProperty(t,"JSXMemberExpression",{enumerable:!0,get:function(){return r.jsxMemberExpression}}),Object.defineProperty(t,"JSXNamespacedName",{enumerable:!0,get:function(){return r.jsxNamespacedName}}),Object.defineProperty(t,"JSXOpeningElement",{enumerable:!0,get:function(){return r.jsxOpeningElement}}),Object.defineProperty(t,"JSXOpeningFragment",{enumerable:!0,get:function(){return r.jsxOpeningFragment}}),Object.defineProperty(t,"JSXSpreadAttribute",{enumerable:!0,get:function(){return r.jsxSpreadAttribute}}),Object.defineProperty(t,"JSXSpreadChild",{enumerable:!0,get:function(){return r.jsxSpreadChild}}),Object.defineProperty(t,"JSXText",{enumerable:!0,get:function(){return r.jsxText}}),Object.defineProperty(t,"LabeledStatement",{enumerable:!0,get:function(){return r.labeledStatement}}),Object.defineProperty(t,"LogicalExpression",{enumerable:!0,get:function(){return r.logicalExpression}}),Object.defineProperty(t,"MemberExpression",{enumerable:!0,get:function(){return r.memberExpression}}),Object.defineProperty(t,"MetaProperty",{enumerable:!0,get:function(){return r.metaProperty}}),Object.defineProperty(t,"MixedTypeAnnotation",{enumerable:!0,get:function(){return r.mixedTypeAnnotation}}),Object.defineProperty(t,"ModuleExpression",{enumerable:!0,get:function(){return r.moduleExpression}}),Object.defineProperty(t,"NewExpression",{enumerable:!0,get:function(){return r.newExpression}}),Object.defineProperty(t,"Noop",{enumerable:!0,get:function(){return r.noop}}),Object.defineProperty(t,"NullLiteral",{enumerable:!0,get:function(){return r.nullLiteral}}),Object.defineProperty(t,"NullLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.nullLiteralTypeAnnotation}}),Object.defineProperty(t,"NullableTypeAnnotation",{enumerable:!0,get:function(){return r.nullableTypeAnnotation}}),Object.defineProperty(t,"NumberLiteral",{enumerable:!0,get:function(){return r.numberLiteral}}),Object.defineProperty(t,"NumberLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.numberLiteralTypeAnnotation}}),Object.defineProperty(t,"NumberTypeAnnotation",{enumerable:!0,get:function(){return r.numberTypeAnnotation}}),Object.defineProperty(t,"NumericLiteral",{enumerable:!0,get:function(){return r.numericLiteral}}),Object.defineProperty(t,"ObjectExpression",{enumerable:!0,get:function(){return r.objectExpression}}),Object.defineProperty(t,"ObjectMethod",{enumerable:!0,get:function(){return r.objectMethod}}),Object.defineProperty(t,"ObjectPattern",{enumerable:!0,get:function(){return r.objectPattern}}),Object.defineProperty(t,"ObjectProperty",{enumerable:!0,get:function(){return r.objectProperty}}),Object.defineProperty(t,"ObjectTypeAnnotation",{enumerable:!0,get:function(){return r.objectTypeAnnotation}}),Object.defineProperty(t,"ObjectTypeCallProperty",{enumerable:!0,get:function(){return r.objectTypeCallProperty}}),Object.defineProperty(t,"ObjectTypeIndexer",{enumerable:!0,get:function(){return r.objectTypeIndexer}}),Object.defineProperty(t,"ObjectTypeInternalSlot",{enumerable:!0,get:function(){return r.objectTypeInternalSlot}}),Object.defineProperty(t,"ObjectTypeProperty",{enumerable:!0,get:function(){return r.objectTypeProperty}}),Object.defineProperty(t,"ObjectTypeSpreadProperty",{enumerable:!0,get:function(){return r.objectTypeSpreadProperty}}),Object.defineProperty(t,"OpaqueType",{enumerable:!0,get:function(){return r.opaqueType}}),Object.defineProperty(t,"OptionalCallExpression",{enumerable:!0,get:function(){return r.optionalCallExpression}}),Object.defineProperty(t,"OptionalIndexedAccessType",{enumerable:!0,get:function(){return r.optionalIndexedAccessType}}),Object.defineProperty(t,"OptionalMemberExpression",{enumerable:!0,get:function(){return r.optionalMemberExpression}}),Object.defineProperty(t,"ParenthesizedExpression",{enumerable:!0,get:function(){return r.parenthesizedExpression}}),Object.defineProperty(t,"PipelineBareFunction",{enumerable:!0,get:function(){return r.pipelineBareFunction}}),Object.defineProperty(t,"PipelinePrimaryTopicReference",{enumerable:!0,get:function(){return r.pipelinePrimaryTopicReference}}),Object.defineProperty(t,"PipelineTopicExpression",{enumerable:!0,get:function(){return r.pipelineTopicExpression}}),Object.defineProperty(t,"Placeholder",{enumerable:!0,get:function(){return r.placeholder}}),Object.defineProperty(t,"PrivateName",{enumerable:!0,get:function(){return r.privateName}}),Object.defineProperty(t,"Program",{enumerable:!0,get:function(){return r.program}}),Object.defineProperty(t,"QualifiedTypeIdentifier",{enumerable:!0,get:function(){return r.qualifiedTypeIdentifier}}),Object.defineProperty(t,"RecordExpression",{enumerable:!0,get:function(){return r.recordExpression}}),Object.defineProperty(t,"RegExpLiteral",{enumerable:!0,get:function(){return r.regExpLiteral}}),Object.defineProperty(t,"RegexLiteral",{enumerable:!0,get:function(){return r.regexLiteral}}),Object.defineProperty(t,"RestElement",{enumerable:!0,get:function(){return r.restElement}}),Object.defineProperty(t,"RestProperty",{enumerable:!0,get:function(){return r.restProperty}}),Object.defineProperty(t,"ReturnStatement",{enumerable:!0,get:function(){return r.returnStatement}}),Object.defineProperty(t,"SequenceExpression",{enumerable:!0,get:function(){return r.sequenceExpression}}),Object.defineProperty(t,"SpreadElement",{enumerable:!0,get:function(){return r.spreadElement}}),Object.defineProperty(t,"SpreadProperty",{enumerable:!0,get:function(){return r.spreadProperty}}),Object.defineProperty(t,"StaticBlock",{enumerable:!0,get:function(){return r.staticBlock}}),Object.defineProperty(t,"StringLiteral",{enumerable:!0,get:function(){return r.stringLiteral}}),Object.defineProperty(t,"StringLiteralTypeAnnotation",{enumerable:!0,get:function(){return r.stringLiteralTypeAnnotation}}),Object.defineProperty(t,"StringTypeAnnotation",{enumerable:!0,get:function(){return r.stringTypeAnnotation}}),Object.defineProperty(t,"Super",{enumerable:!0,get:function(){return r.super}}),Object.defineProperty(t,"SwitchCase",{enumerable:!0,get:function(){return r.switchCase}}),Object.defineProperty(t,"SwitchStatement",{enumerable:!0,get:function(){return r.switchStatement}}),Object.defineProperty(t,"SymbolTypeAnnotation",{enumerable:!0,get:function(){return r.symbolTypeAnnotation}}),Object.defineProperty(t,"TSAnyKeyword",{enumerable:!0,get:function(){return r.tsAnyKeyword}}),Object.defineProperty(t,"TSArrayType",{enumerable:!0,get:function(){return r.tsArrayType}}),Object.defineProperty(t,"TSAsExpression",{enumerable:!0,get:function(){return r.tsAsExpression}}),Object.defineProperty(t,"TSBigIntKeyword",{enumerable:!0,get:function(){return r.tsBigIntKeyword}}),Object.defineProperty(t,"TSBooleanKeyword",{enumerable:!0,get:function(){return r.tsBooleanKeyword}}),Object.defineProperty(t,"TSCallSignatureDeclaration",{enumerable:!0,get:function(){return r.tsCallSignatureDeclaration}}),Object.defineProperty(t,"TSConditionalType",{enumerable:!0,get:function(){return r.tsConditionalType}}),Object.defineProperty(t,"TSConstructSignatureDeclaration",{enumerable:!0,get:function(){return r.tsConstructSignatureDeclaration}}),Object.defineProperty(t,"TSConstructorType",{enumerable:!0,get:function(){return r.tsConstructorType}}),Object.defineProperty(t,"TSDeclareFunction",{enumerable:!0,get:function(){return r.tsDeclareFunction}}),Object.defineProperty(t,"TSDeclareMethod",{enumerable:!0,get:function(){return r.tsDeclareMethod}}),Object.defineProperty(t,"TSEnumDeclaration",{enumerable:!0,get:function(){return r.tsEnumDeclaration}}),Object.defineProperty(t,"TSEnumMember",{enumerable:!0,get:function(){return r.tsEnumMember}}),Object.defineProperty(t,"TSExportAssignment",{enumerable:!0,get:function(){return r.tsExportAssignment}}),Object.defineProperty(t,"TSExpressionWithTypeArguments",{enumerable:!0,get:function(){return r.tsExpressionWithTypeArguments}}),Object.defineProperty(t,"TSExternalModuleReference",{enumerable:!0,get:function(){return r.tsExternalModuleReference}}),Object.defineProperty(t,"TSFunctionType",{enumerable:!0,get:function(){return r.tsFunctionType}}),Object.defineProperty(t,"TSImportEqualsDeclaration",{enumerable:!0,get:function(){return r.tsImportEqualsDeclaration}}),Object.defineProperty(t,"TSImportType",{enumerable:!0,get:function(){return r.tsImportType}}),Object.defineProperty(t,"TSIndexSignature",{enumerable:!0,get:function(){return r.tsIndexSignature}}),Object.defineProperty(t,"TSIndexedAccessType",{enumerable:!0,get:function(){return r.tsIndexedAccessType}}),Object.defineProperty(t,"TSInferType",{enumerable:!0,get:function(){return r.tsInferType}}),Object.defineProperty(t,"TSInstantiationExpression",{enumerable:!0,get:function(){return r.tsInstantiationExpression}}),Object.defineProperty(t,"TSInterfaceBody",{enumerable:!0,get:function(){return r.tsInterfaceBody}}),Object.defineProperty(t,"TSInterfaceDeclaration",{enumerable:!0,get:function(){return r.tsInterfaceDeclaration}}),Object.defineProperty(t,"TSIntersectionType",{enumerable:!0,get:function(){return r.tsIntersectionType}}),Object.defineProperty(t,"TSIntrinsicKeyword",{enumerable:!0,get:function(){return r.tsIntrinsicKeyword}}),Object.defineProperty(t,"TSLiteralType",{enumerable:!0,get:function(){return r.tsLiteralType}}),Object.defineProperty(t,"TSMappedType",{enumerable:!0,get:function(){return r.tsMappedType}}),Object.defineProperty(t,"TSMethodSignature",{enumerable:!0,get:function(){return r.tsMethodSignature}}),Object.defineProperty(t,"TSModuleBlock",{enumerable:!0,get:function(){return r.tsModuleBlock}}),Object.defineProperty(t,"TSModuleDeclaration",{enumerable:!0,get:function(){return r.tsModuleDeclaration}}),Object.defineProperty(t,"TSNamedTupleMember",{enumerable:!0,get:function(){return r.tsNamedTupleMember}}),Object.defineProperty(t,"TSNamespaceExportDeclaration",{enumerable:!0,get:function(){return r.tsNamespaceExportDeclaration}}),Object.defineProperty(t,"TSNeverKeyword",{enumerable:!0,get:function(){return r.tsNeverKeyword}}),Object.defineProperty(t,"TSNonNullExpression",{enumerable:!0,get:function(){return r.tsNonNullExpression}}),Object.defineProperty(t,"TSNullKeyword",{enumerable:!0,get:function(){return r.tsNullKeyword}}),Object.defineProperty(t,"TSNumberKeyword",{enumerable:!0,get:function(){return r.tsNumberKeyword}}),Object.defineProperty(t,"TSObjectKeyword",{enumerable:!0,get:function(){return r.tsObjectKeyword}}),Object.defineProperty(t,"TSOptionalType",{enumerable:!0,get:function(){return r.tsOptionalType}}),Object.defineProperty(t,"TSParameterProperty",{enumerable:!0,get:function(){return r.tsParameterProperty}}),Object.defineProperty(t,"TSParenthesizedType",{enumerable:!0,get:function(){return r.tsParenthesizedType}}),Object.defineProperty(t,"TSPropertySignature",{enumerable:!0,get:function(){return r.tsPropertySignature}}),Object.defineProperty(t,"TSQualifiedName",{enumerable:!0,get:function(){return r.tsQualifiedName}}),Object.defineProperty(t,"TSRestType",{enumerable:!0,get:function(){return r.tsRestType}}),Object.defineProperty(t,"TSSatisfiesExpression",{enumerable:!0,get:function(){return r.tsSatisfiesExpression}}),Object.defineProperty(t,"TSStringKeyword",{enumerable:!0,get:function(){return r.tsStringKeyword}}),Object.defineProperty(t,"TSSymbolKeyword",{enumerable:!0,get:function(){return r.tsSymbolKeyword}}),Object.defineProperty(t,"TSThisType",{enumerable:!0,get:function(){return r.tsThisType}}),Object.defineProperty(t,"TSTupleType",{enumerable:!0,get:function(){return r.tsTupleType}}),Object.defineProperty(t,"TSTypeAliasDeclaration",{enumerable:!0,get:function(){return r.tsTypeAliasDeclaration}}),Object.defineProperty(t,"TSTypeAnnotation",{enumerable:!0,get:function(){return r.tsTypeAnnotation}}),Object.defineProperty(t,"TSTypeAssertion",{enumerable:!0,get:function(){return r.tsTypeAssertion}}),Object.defineProperty(t,"TSTypeLiteral",{enumerable:!0,get:function(){return r.tsTypeLiteral}}),Object.defineProperty(t,"TSTypeOperator",{enumerable:!0,get:function(){return r.tsTypeOperator}}),Object.defineProperty(t,"TSTypeParameter",{enumerable:!0,get:function(){return r.tsTypeParameter}}),Object.defineProperty(t,"TSTypeParameterDeclaration",{enumerable:!0,get:function(){return r.tsTypeParameterDeclaration}}),Object.defineProperty(t,"TSTypeParameterInstantiation",{enumerable:!0,get:function(){return r.tsTypeParameterInstantiation}}),Object.defineProperty(t,"TSTypePredicate",{enumerable:!0,get:function(){return r.tsTypePredicate}}),Object.defineProperty(t,"TSTypeQuery",{enumerable:!0,get:function(){return r.tsTypeQuery}}),Object.defineProperty(t,"TSTypeReference",{enumerable:!0,get:function(){return r.tsTypeReference}}),Object.defineProperty(t,"TSUndefinedKeyword",{enumerable:!0,get:function(){return r.tsUndefinedKeyword}}),Object.defineProperty(t,"TSUnionType",{enumerable:!0,get:function(){return r.tsUnionType}}),Object.defineProperty(t,"TSUnknownKeyword",{enumerable:!0,get:function(){return r.tsUnknownKeyword}}),Object.defineProperty(t,"TSVoidKeyword",{enumerable:!0,get:function(){return r.tsVoidKeyword}}),Object.defineProperty(t,"TaggedTemplateExpression",{enumerable:!0,get:function(){return r.taggedTemplateExpression}}),Object.defineProperty(t,"TemplateElement",{enumerable:!0,get:function(){return r.templateElement}}),Object.defineProperty(t,"TemplateLiteral",{enumerable:!0,get:function(){return r.templateLiteral}}),Object.defineProperty(t,"ThisExpression",{enumerable:!0,get:function(){return r.thisExpression}}),Object.defineProperty(t,"ThisTypeAnnotation",{enumerable:!0,get:function(){return r.thisTypeAnnotation}}),Object.defineProperty(t,"ThrowStatement",{enumerable:!0,get:function(){return r.throwStatement}}),Object.defineProperty(t,"TopicReference",{enumerable:!0,get:function(){return r.topicReference}}),Object.defineProperty(t,"TryStatement",{enumerable:!0,get:function(){return r.tryStatement}}),Object.defineProperty(t,"TupleExpression",{enumerable:!0,get:function(){return r.tupleExpression}}),Object.defineProperty(t,"TupleTypeAnnotation",{enumerable:!0,get:function(){return r.tupleTypeAnnotation}}),Object.defineProperty(t,"TypeAlias",{enumerable:!0,get:function(){return r.typeAlias}}),Object.defineProperty(t,"TypeAnnotation",{enumerable:!0,get:function(){return r.typeAnnotation}}),Object.defineProperty(t,"TypeCastExpression",{enumerable:!0,get:function(){return r.typeCastExpression}}),Object.defineProperty(t,"TypeParameter",{enumerable:!0,get:function(){return r.typeParameter}}),Object.defineProperty(t,"TypeParameterDeclaration",{enumerable:!0,get:function(){return r.typeParameterDeclaration}}),Object.defineProperty(t,"TypeParameterInstantiation",{enumerable:!0,get:function(){return r.typeParameterInstantiation}}),Object.defineProperty(t,"TypeofTypeAnnotation",{enumerable:!0,get:function(){return r.typeofTypeAnnotation}}),Object.defineProperty(t,"UnaryExpression",{enumerable:!0,get:function(){return r.unaryExpression}}),Object.defineProperty(t,"UnionTypeAnnotation",{enumerable:!0,get:function(){return r.unionTypeAnnotation}}),Object.defineProperty(t,"UpdateExpression",{enumerable:!0,get:function(){return r.updateExpression}}),Object.defineProperty(t,"V8IntrinsicIdentifier",{enumerable:!0,get:function(){return r.v8IntrinsicIdentifier}}),Object.defineProperty(t,"VariableDeclaration",{enumerable:!0,get:function(){return r.variableDeclaration}}),Object.defineProperty(t,"VariableDeclarator",{enumerable:!0,get:function(){return r.variableDeclarator}}),Object.defineProperty(t,"Variance",{enumerable:!0,get:function(){return r.variance}}),Object.defineProperty(t,"VoidTypeAnnotation",{enumerable:!0,get:function(){return r.voidTypeAnnotation}}),Object.defineProperty(t,"WhileStatement",{enumerable:!0,get:function(){return r.whileStatement}}),Object.defineProperty(t,"WithStatement",{enumerable:!0,get:function(){return r.withStatement}}),Object.defineProperty(t,"YieldExpression",{enumerable:!0,get:function(){return r.yieldExpression}});var r=n(94522)},21847:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=[];for(let n=0;n<e.children.length;n++){let i=e.children[n];(0,r.isJSXText)(i)?(0,a.default)(i,t):((0,r.isJSXExpressionContainer)(i)&&(i=i.expression),(0,r.isJSXEmptyExpression)(i)||t.push(i))}return t};var r=n(16500),a=n(53802)},32039:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=e.map((e=>(0,i.isTSTypeAnnotation)(e)?e.typeAnnotation:e)),n=(0,a.default)(t);return 1===n.length?n[0]:(0,r.tsUnionType)(n)};var r=n(94522),a=n(36044),i=n(16500)},59579:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){const t=a.BUILDER_KEYS[e.type];for(const n of t)(0,r.default)(e,n,e[n]);return e};var r=n(49164),a=n(11183)},92038:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1)};var r=n(55475)},26172:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)};var r=n(55475)},90726:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!0,!0)};var r=n(55475)},55475:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0,n=!1){return l(e,t,n,new Map)};var r=n(43341),a=n(16500);const i=Function.call.bind(Object.prototype.hasOwnProperty);function s(e,t,n,r){return e&&"string"==typeof e.type?l(e,t,n,r):e}function o(e,t,n,r){return Array.isArray(e)?e.map((e=>s(e,t,n,r))):s(e,t,n,r)}function l(e,t=!0,n=!1,s){if(!e)return e;const{type:l}=e,c={type:e.type};if((0,a.isIdentifier)(e))c.name=e.name,i(e,"optional")&&"boolean"==typeof e.optional&&(c.optional=e.optional),i(e,"typeAnnotation")&&(c.typeAnnotation=t?o(e.typeAnnotation,!0,n,s):e.typeAnnotation);else{if(!i(r.NODE_FIELDS,l))throw new Error(`Unknown node type: "${l}"`);for(const u of Object.keys(r.NODE_FIELDS[l]))i(e,u)&&(c[u]=t?(0,a.isFile)(e)&&"comments"===u?p(e.comments,t,n,s):o(e[u],!0,n,s):e[u])}return i(e,"loc")&&(c.loc=n?null:e.loc),i(e,"leadingComments")&&(c.leadingComments=p(e.leadingComments,t,n,s)),i(e,"innerComments")&&(c.innerComments=p(e.innerComments,t,n,s)),i(e,"trailingComments")&&(c.trailingComments=p(e.trailingComments,t,n,s)),i(e,"extra")&&(c.extra=Object.assign({},e.extra)),c}function p(e,t,n,r){return e&&t?e.map((e=>{const t=r.get(e);if(t)return t;const{type:a,value:i,loc:s}=e,o={type:a,value:i,loc:s};return n&&(o.loc=null),r.set(e,o),o})):e}},14841:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e,!1,!0)};var r=n(55475)},75287:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n,a){return(0,r.default)(e,t,[{type:a?"CommentLine":"CommentBlock",value:n}])};var r=n(78837)},78837:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!n||!e)return e;const r=`${t}Comments`;return e[r]?"leading"===t?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n,e}},2361:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("innerComments",e,t)};var r=n(27587)},74212:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("leadingComments",e,t)};var r=n(27587)},4763:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){(0,r.default)("trailingComments",e,t)};var r=n(27587)},1962:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,t),(0,a.default)(e,t),(0,i.default)(e,t),e};var r=n(4763),a=n(74212),i=n(2361)},96278:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return r.COMMENT_KEYS.forEach((t=>{e[t]=null})),e};var r=n(18718)},25816:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WHILE_TYPES=t.USERWHITESPACABLE_TYPES=t.UNARYLIKE_TYPES=t.TYPESCRIPT_TYPES=t.TSTYPE_TYPES=t.TSTYPEELEMENT_TYPES=t.TSENTITYNAME_TYPES=t.TSBASETYPE_TYPES=t.TERMINATORLESS_TYPES=t.STATEMENT_TYPES=t.STANDARDIZED_TYPES=t.SCOPABLE_TYPES=t.PUREISH_TYPES=t.PROPERTY_TYPES=t.PRIVATE_TYPES=t.PATTERN_TYPES=t.PATTERNLIKE_TYPES=t.OBJECTMEMBER_TYPES=t.MODULESPECIFIER_TYPES=t.MODULEDECLARATION_TYPES=t.MISCELLANEOUS_TYPES=t.METHOD_TYPES=t.LVAL_TYPES=t.LOOP_TYPES=t.LITERAL_TYPES=t.JSX_TYPES=t.IMPORTOREXPORTDECLARATION_TYPES=t.IMMUTABLE_TYPES=t.FUNCTION_TYPES=t.FUNCTIONPARENT_TYPES=t.FOR_TYPES=t.FORXSTATEMENT_TYPES=t.FLOW_TYPES=t.FLOWTYPE_TYPES=t.FLOWPREDICATE_TYPES=t.FLOWDECLARATION_TYPES=t.FLOWBASEANNOTATION_TYPES=t.EXPRESSION_TYPES=t.EXPRESSIONWRAPPER_TYPES=t.EXPORTDECLARATION_TYPES=t.ENUMMEMBER_TYPES=t.ENUMBODY_TYPES=t.DECLARATION_TYPES=t.CONDITIONAL_TYPES=t.COMPLETIONSTATEMENT_TYPES=t.CLASS_TYPES=t.BLOCK_TYPES=t.BLOCKPARENT_TYPES=t.BINARY_TYPES=t.ACCESSOR_TYPES=void 0;var r=n(43341);const a=r.FLIPPED_ALIAS_KEYS.Standardized;t.STANDARDIZED_TYPES=a;const i=r.FLIPPED_ALIAS_KEYS.Expression;t.EXPRESSION_TYPES=i;const s=r.FLIPPED_ALIAS_KEYS.Binary;t.BINARY_TYPES=s;const o=r.FLIPPED_ALIAS_KEYS.Scopable;t.SCOPABLE_TYPES=o;const l=r.FLIPPED_ALIAS_KEYS.BlockParent;t.BLOCKPARENT_TYPES=l;const p=r.FLIPPED_ALIAS_KEYS.Block;t.BLOCK_TYPES=p;const c=r.FLIPPED_ALIAS_KEYS.Statement;t.STATEMENT_TYPES=c;const u=r.FLIPPED_ALIAS_KEYS.Terminatorless;t.TERMINATORLESS_TYPES=u;const d=r.FLIPPED_ALIAS_KEYS.CompletionStatement;t.COMPLETIONSTATEMENT_TYPES=d;const f=r.FLIPPED_ALIAS_KEYS.Conditional;t.CONDITIONAL_TYPES=f;const y=r.FLIPPED_ALIAS_KEYS.Loop;t.LOOP_TYPES=y;const m=r.FLIPPED_ALIAS_KEYS.While;t.WHILE_TYPES=m;const h=r.FLIPPED_ALIAS_KEYS.ExpressionWrapper;t.EXPRESSIONWRAPPER_TYPES=h;const T=r.FLIPPED_ALIAS_KEYS.For;t.FOR_TYPES=T;const S=r.FLIPPED_ALIAS_KEYS.ForXStatement;t.FORXSTATEMENT_TYPES=S;const b=r.FLIPPED_ALIAS_KEYS.Function;t.FUNCTION_TYPES=b;const E=r.FLIPPED_ALIAS_KEYS.FunctionParent;t.FUNCTIONPARENT_TYPES=E;const P=r.FLIPPED_ALIAS_KEYS.Pureish;t.PUREISH_TYPES=P;const x=r.FLIPPED_ALIAS_KEYS.Declaration;t.DECLARATION_TYPES=x;const g=r.FLIPPED_ALIAS_KEYS.PatternLike;t.PATTERNLIKE_TYPES=g;const A=r.FLIPPED_ALIAS_KEYS.LVal;t.LVAL_TYPES=A;const v=r.FLIPPED_ALIAS_KEYS.TSEntityName;t.TSENTITYNAME_TYPES=v;const O=r.FLIPPED_ALIAS_KEYS.Literal;t.LITERAL_TYPES=O;const I=r.FLIPPED_ALIAS_KEYS.Immutable;t.IMMUTABLE_TYPES=I;const N=r.FLIPPED_ALIAS_KEYS.UserWhitespacable;t.USERWHITESPACABLE_TYPES=N;const D=r.FLIPPED_ALIAS_KEYS.Method;t.METHOD_TYPES=D;const C=r.FLIPPED_ALIAS_KEYS.ObjectMember;t.OBJECTMEMBER_TYPES=C;const w=r.FLIPPED_ALIAS_KEYS.Property;t.PROPERTY_TYPES=w;const L=r.FLIPPED_ALIAS_KEYS.UnaryLike;t.UNARYLIKE_TYPES=L;const j=r.FLIPPED_ALIAS_KEYS.Pattern;t.PATTERN_TYPES=j;const _=r.FLIPPED_ALIAS_KEYS.Class;t.CLASS_TYPES=_;const M=r.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration;t.IMPORTOREXPORTDECLARATION_TYPES=M;const k=r.FLIPPED_ALIAS_KEYS.ExportDeclaration;t.EXPORTDECLARATION_TYPES=k;const B=r.FLIPPED_ALIAS_KEYS.ModuleSpecifier;t.MODULESPECIFIER_TYPES=B;const F=r.FLIPPED_ALIAS_KEYS.Accessor;t.ACCESSOR_TYPES=F;const R=r.FLIPPED_ALIAS_KEYS.Private;t.PRIVATE_TYPES=R;const K=r.FLIPPED_ALIAS_KEYS.Flow;t.FLOW_TYPES=K;const V=r.FLIPPED_ALIAS_KEYS.FlowType;t.FLOWTYPE_TYPES=V;const Y=r.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation;t.FLOWBASEANNOTATION_TYPES=Y;const U=r.FLIPPED_ALIAS_KEYS.FlowDeclaration;t.FLOWDECLARATION_TYPES=U;const X=r.FLIPPED_ALIAS_KEYS.FlowPredicate;t.FLOWPREDICATE_TYPES=X;const J=r.FLIPPED_ALIAS_KEYS.EnumBody;t.ENUMBODY_TYPES=J;const W=r.FLIPPED_ALIAS_KEYS.EnumMember;t.ENUMMEMBER_TYPES=W;const q=r.FLIPPED_ALIAS_KEYS.JSX;t.JSX_TYPES=q;const $=r.FLIPPED_ALIAS_KEYS.Miscellaneous;t.MISCELLANEOUS_TYPES=$;const G=r.FLIPPED_ALIAS_KEYS.TypeScript;t.TYPESCRIPT_TYPES=G;const z=r.FLIPPED_ALIAS_KEYS.TSTypeElement;t.TSTYPEELEMENT_TYPES=z;const H=r.FLIPPED_ALIAS_KEYS.TSType;t.TSTYPE_TYPES=H;const Q=r.FLIPPED_ALIAS_KEYS.TSBaseType;t.TSBASETYPE_TYPES=Q;const Z=M;t.MODULEDECLARATION_TYPES=Z},18718:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UPDATE_OPERATORS=t.UNARY_OPERATORS=t.STRING_UNARY_OPERATORS=t.STATEMENT_OR_BLOCK_KEYS=t.NUMBER_UNARY_OPERATORS=t.NUMBER_BINARY_OPERATORS=t.NOT_LOCAL_BINDING=t.LOGICAL_OPERATORS=t.INHERIT_KEYS=t.FOR_INIT_KEYS=t.FLATTENABLE_KEYS=t.EQUALITY_BINARY_OPERATORS=t.COMPARISON_BINARY_OPERATORS=t.COMMENT_KEYS=t.BOOLEAN_UNARY_OPERATORS=t.BOOLEAN_NUMBER_BINARY_OPERATORS=t.BOOLEAN_BINARY_OPERATORS=t.BLOCK_SCOPED_SYMBOL=t.BINARY_OPERATORS=t.ASSIGNMENT_OPERATORS=void 0,t.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"],t.FLATTENABLE_KEYS=["body","expressions"],t.FOR_INIT_KEYS=["left","init"],t.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const n=["||","&&","??"];t.LOGICAL_OPERATORS=n,t.UPDATE_OPERATORS=["++","--"];const r=[">","<",">=","<="];t.BOOLEAN_NUMBER_BINARY_OPERATORS=r;const a=["==","===","!=","!=="];t.EQUALITY_BINARY_OPERATORS=a;const i=[...a,"in","instanceof"];t.COMPARISON_BINARY_OPERATORS=i;const s=[...i,...r];t.BOOLEAN_BINARY_OPERATORS=s;const o=["-","/","%","*","**","&","|",">>",">>>","<<","^"];t.NUMBER_BINARY_OPERATORS=o;const l=["+",...o,...s,"|>"];t.BINARY_OPERATORS=l;const p=["=","+=",...o.map((e=>e+"=")),...n.map((e=>e+"="))];t.ASSIGNMENT_OPERATORS=p;const c=["delete","!"];t.BOOLEAN_UNARY_OPERATORS=c;const u=["+","-","~"];t.NUMBER_UNARY_OPERATORS=u;const d=["typeof"];t.STRING_UNARY_OPERATORS=d;const f=["void","throw",...c,...u,...d];t.UNARY_OPERATORS=f,t.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};const y=Symbol.for("var used to be block scoped");t.BLOCK_SCOPED_SYMBOL=y;const m=Symbol.for("should not be considered a local binding");t.NOT_LOCAL_BINDING=m},79872:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t="body"){const n=(0,r.default)(e[t],e);return e[t]=n,n};var r=n(13884)},6369:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,o){const l=[];let p=!0;for(const c of t)if((0,a.isEmptyStatement)(c)||(p=!1),(0,a.isExpression)(c))l.push(c);else if((0,a.isExpressionStatement)(c))l.push(c.expression);else if((0,a.isVariableDeclaration)(c)){if("var"!==c.kind)return;for(const e of c.declarations){const t=(0,r.default)(e);for(const e of Object.keys(t))o.push({kind:c.kind,id:(0,s.default)(t[e])});e.init&&l.push((0,i.assignmentExpression)("=",e.id,e.init))}p=!0}else if((0,a.isIfStatement)(c)){const t=c.consequent?e([c.consequent],n,o):n.buildUndefinedNode(),r=c.alternate?e([c.alternate],n,o):n.buildUndefinedNode();if(!t||!r)return;l.push((0,i.conditionalExpression)(c.test,t,r))}else if((0,a.isBlockStatement)(c)){const t=e(c.body,n,o);if(!t)return;l.push(t)}else{if(!(0,a.isEmptyStatement)(c))return;0===t.indexOf(c)&&(p=!0)}return p&&l.push(n.buildUndefinedNode()),1===l.length?l[0]:(0,i.sequenceExpression)(l)};var r=n(61311),a=n(16500),i=n(94522),s=n(55475)},62617:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"eval"!==(e=(0,r.default)(e))&&"arguments"!==e||(e="_"+e),e};var r=n(1800)},13884:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,r.isBlockStatement)(e))return e;let n=[];return(0,r.isEmptyStatement)(e)?n=[]:((0,r.isStatement)(e)||(e=(0,r.isFunction)(t)?(0,a.returnStatement)(e):(0,a.expressionStatement)(e)),n=[e]),(0,a.blockStatement)(n)};var r=n(16500),a=n(94522)},73332:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=e.key||e.property){return!e.computed&&(0,r.isIdentifier)(t)&&(t=(0,a.stringLiteral)(t.name)),t};var r=n(16500),a=n(94522)},81560:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(16500);t.default=function(e){if((0,r.isExpressionStatement)(e)&&(e=e.expression),(0,r.isExpression)(e))return e;if((0,r.isClass)(e)?e.type="ClassExpression":(0,r.isFunction)(e)&&(e.type="FunctionExpression"),!(0,r.isExpression)(e))throw new Error(`cannot turn ${e.type} to an expression`);return e}},1800:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e+="";let t="";for(const n of e)t+=(0,a.isIdentifierChar)(n.codePointAt(0))?n:"-";return t=t.replace(/^[-0-9]+/,""),t=t.replace(/[-\s]+(.)?/g,(function(e,t){return t?t.toUpperCase():""})),(0,r.default)(t)||(t=`_${t}`),t||"_"};var r=n(6530),a=n(29649)},66579:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=s;var r=n(16500),a=n(55475),i=n(62253);function s(e,t=e.key){let n;return"method"===e.kind?s.increment()+"":(n=(0,r.isIdentifier)(t)?t.name:(0,r.isStringLiteral)(t)?JSON.stringify(t.value):JSON.stringify((0,i.default)((0,a.default)(t))),e.computed&&(n=`[${n}]`),e.static&&(n=`static:${n}`),n)}s.uid=0,s.increment=function(){return s.uid>=Number.MAX_SAFE_INTEGER?s.uid=0:s.uid++}},44521:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(null==e||!e.length)return;const n=[],a=(0,r.default)(e,t,n);if(a){for(const e of n)t.push(e);return a}};var r=n(6369)},97629:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(16500),a=n(94522);t.default=function(e,t){if((0,r.isStatement)(e))return e;let n,i=!1;if((0,r.isClass)(e))i=!0,n="ClassDeclaration";else if((0,r.isFunction)(e))i=!0,n="FunctionDeclaration";else if((0,r.isAssignmentExpression)(e))return(0,a.expressionStatement)(e);if(i&&!e.id&&(n=!1),!n){if(t)return!1;throw new Error(`cannot turn ${e.type} to a statement`)}return e.type=n,e}},12447:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(6530),a=n(94522);t.default=function e(t){if(void 0===t)return(0,a.identifier)("undefined");if(!0===t||!1===t)return(0,a.booleanLiteral)(t);if(null===t)return(0,a.nullLiteral)();if("string"==typeof t)return(0,a.stringLiteral)(t);if("number"==typeof t){let e;if(Number.isFinite(t))e=(0,a.numericLiteral)(Math.abs(t));else{let n;n=Number.isNaN(t)?(0,a.numericLiteral)(0):(0,a.numericLiteral)(1),e=(0,a.binaryExpression)("/",n,(0,a.numericLiteral)(0))}return(t<0||Object.is(t,-0))&&(e=(0,a.unaryExpression)("-",e)),e}if(function(e){return"[object RegExp]"===i(e)}(t)){const e=t.source,n=t.toString().match(/\/([a-z]+|)$/)[1];return(0,a.regExpLiteral)(e,n)}if(Array.isArray(t))return(0,a.arrayExpression)(t.map(e));if(function(e){if("object"!=typeof e||null===e||"[object Object]"!==Object.prototype.toString.call(e))return!1;const t=Object.getPrototypeOf(e);return null===t||null===Object.getPrototypeOf(t)}(t)){const n=[];for(const i of Object.keys(t)){let s;s=(0,r.default)(i)?(0,a.identifier)(i):(0,a.stringLiteral)(i),n.push((0,a.objectProperty)(s,e(t[i])))}return(0,a.objectExpression)(n)}throw new Error("don't know how to turn this value into a node")};const i=Function.call.bind(Object.prototype.toString)},90631:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.patternLikeCommon=t.functionTypeAnnotationCommon=t.functionDeclarationCommon=t.functionCommon=t.classMethodOrPropertyCommon=t.classMethodOrDeclareMethodCommon=void 0;var r=n(92378),a=n(6530),i=n(29649),s=n(37648),o=n(18718),l=n(58313);const p=(0,l.defineAliasedType)("Standardized");p("ArrayExpression",{fields:{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","Expression","SpreadElement"))),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),p("AssignmentExpression",{fields:{operator:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertValueType)("string");const e=(0,l.assertOneOf)(...o.ASSIGNMENT_OPERATORS),t=(0,l.assertOneOf)("=");return function(n,a,i){((0,r.default)("Pattern",n.left)?t:e)(n,a,i)}}()},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")},right:{validate:(0,l.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),p("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,l.assertOneOf)(...o.BINARY_OPERATORS)},left:{validate:function(){const e=(0,l.assertNodeType)("Expression"),t=(0,l.assertNodeType)("Expression","PrivateName");return Object.assign((function(n,r,a){("in"===n.operator?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","PrivateName"]})}()},right:{validate:(0,l.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),p("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("Directive",{visitor:["value"],fields:{value:{validate:(0,l.assertNodeType)("DirectiveLiteral")}}}),p("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}}}),p("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block","Statement"]}),p("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("CallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,l.assertNodeType)("Expression","Super","V8IntrinsicIdentifier")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}},{typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),p("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),p("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Expression")},alternate:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),p("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),p("DebuggerStatement",{aliases:["Statement"]}),p("DoWhileStatement",{visitor:["test","body"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),p("EmptyStatement",{aliases:["Statement"]}),p("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),p("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,l.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertEach)((0,l.assertNodeType)("CommentBlock","CommentLine")):Object.assign((()=>{}),{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,l.assertEach)(Object.assign((()=>{}),{type:"any"})),optional:!0}}}),p("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,l.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},update:{validate:(0,l.assertNodeType)("Expression"),optional:!0},body:{validate:(0,l.assertNodeType)("Statement")}}});const c=()=>({params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement")))},generator:{default:!1},async:{default:!1}});t.functionCommon=c;const u=()=>({returnType:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}});t.functionTypeAnnotationCommon=u;const d=()=>Object.assign({},c(),{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0}});t.functionDeclarationCommon=d,p("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","params","body","returnType","typeParameters"],fields:Object.assign({},d(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return()=>{};const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){(0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id)}}()}),p("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const f=()=>({typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.patternLikeCommon=f,p("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","PatternLike","LVal","TSEntityName"],fields:Object.assign({},f(),{name:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&!(0,a.default)(n,!1))throw new TypeError(`"${n}" is not a valid identifier name`)}),{type:"string"}))}}),validate(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const a=/\.(\w+)$/.exec(t);if(!a)return;const[,s]=a,o={computed:!1};if("property"===s){if((0,r.default)("MemberExpression",e,o))return;if((0,r.default)("OptionalMemberExpression",e,o))return}else if("key"===s){if((0,r.default)("Property",e,o))return;if((0,r.default)("Method",e,o))return}else if("exported"===s){if((0,r.default)("ExportSpecifier",e))return}else if("imported"===s){if((0,r.default)("ImportSpecifier",e,{imported:n}))return}else if("meta"===s&&(0,r.default)("MetaProperty",e,{meta:n}))return;if(((0,i.isKeyword)(n.name)||(0,i.isReservedWord)(n.name,!1))&&"this"!==n.name)throw new TypeError(`"${n.name}" is not a valid identifier`)}}),p("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},consequent:{validate:(0,l.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,l.assertNodeType)("Statement")}}}),p("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,l.assertNodeType)("Identifier")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("StringLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,l.chain)((0,l.assertValueType)("number"),Object.assign((function(e,t,n){(1/n<0||!Number.isFinite(n))&&new Error(`NumericLiterals must be non-negative finite numbers. You can use t.valueToNode(${n}) instead.`)}),{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),p("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,l.assertValueType)("string")},flags:{validate:(0,l.chain)((0,l.assertValueType)("string"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;const r=/[^gimsuy]/.exec(n);if(r)throw new TypeError(`"${r[0]}" is not a valid RegExp flag`)}),{type:"string"})),default:""}}}),p("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,l.assertOneOf)(...o.LOGICAL_OPERATORS)},left:{validate:(0,l.assertNodeType)("Expression")},right:{validate:(0,l.assertNodeType)("Expression")}}}),p("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal"],fields:Object.assign({object:{validate:(0,l.assertNodeType)("Expression","Super")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier","PrivateName"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","PrivateName"],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,l.assertOneOf)(!0,!1),optional:!0}})}),p("NewExpression",{inherits:"CallExpression"}),p("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceFile:{validate:(0,l.assertValueType)("string")},sourceType:{validate:(0,l.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,l.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Directive"))),default:[]},body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","Block"]}),p("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ObjectMethod","ObjectProperty","SpreadElement")))}}}),p("ObjectMethod",{builder:["kind","key","params","body","computed","generator","async"],fields:Object.assign({},c(),u(),{kind:Object.assign({validate:(0,l.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),t=(0,l.assertNodeType)("Expression"),n=function(n,r,a){(n.computed?t:e)(n,r,a)};return n.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],n}()},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},body:{validate:(0,l.assertNodeType)("BlockStatement")}}),visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]}),p("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],fields:{computed:{default:!1},key:{validate:function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]})}()},value:{validate:(0,l.assertNodeType)("Expression","PatternLike")},shorthand:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true")}),{type:"boolean"}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!(0,r.default)("Identifier",e.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")})),default:!1},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}},visitor:["key","value","decorators"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:function(){const e=(0,l.assertNodeType)("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),t=(0,l.assertNodeType)("Expression");return function(n,a,i){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ObjectPattern",n)?e:t)(i,"value",i.value)}}()}),p("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["LVal","PatternLike"],deprecatedAlias:"RestProperty",fields:Object.assign({},f(),{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,l.assertNodeType)("LVal")}}),validate(e,t){if(!process.env.BABEL_TYPES_8_BREAKING)return;const n=/(\w+)\[(\d+)\]/.exec(t);if(!n)throw new Error("Internal Babel error: malformed key.");const[,r,a]=n;if(e[r].length>+a+1)throw new TypeError(`RestElement must be last element of ${r}`)}}),p("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression"),optional:!0}}}),p("SequenceExpression",{visitor:["expressions"],fields:{expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression")))}},aliases:["Expression"]}),p("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,l.assertNodeType)("Expression")}}}),p("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,l.assertNodeType)("Expression"),optional:!0},consequent:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}}}),p("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,l.assertNodeType)("Expression")},cases:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("SwitchCase")))}}}),p("ThisExpression",{aliases:["Expression"]}),p("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:(0,l.chain)((0,l.assertNodeType)("BlockStatement"),Object.assign((function(e){if(process.env.BABEL_TYPES_8_BREAKING&&!e.handler&&!e.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")}),{oneOfNodeTypes:["BlockStatement"]}))},handler:{optional:!0,validate:(0,l.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,l.assertNodeType)("BlockStatement")}}}),p("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),p("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.assertNodeType)("Identifier","MemberExpression"):(0,l.assertNodeType)("Expression")},operator:{validate:(0,l.assertOneOf)(...o.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),p("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},kind:{validate:(0,l.assertOneOf)("var","let","const","using","await using")},declarations:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("VariableDeclarator")))}},validate(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&(0,r.default)("ForXStatement",e,{left:n})&&1!==n.declarations.length)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${e.type}`)}}),p("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("LVal");const e=(0,l.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),t=(0,l.assertNodeType)("Identifier");return function(n,r,a){(n.init?e:t)(n,r,a)}}()},definite:{optional:!0,validate:(0,l.assertValueType)("boolean")},init:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")}}}),p("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{left:{validate:(0,l.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,l.assertNodeType)("Expression")},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}})}),p("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{elements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeOrValueType)("null","PatternLike","LVal")))}})}),p("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["params","body","returnType","typeParameters"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},c(),u(),{expression:{validate:(0,l.assertValueType)("boolean")},body:{validate:(0,l.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,l.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),p("ClassBody",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")))}}}),p("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["id","body","superClass","mixins","typeParameters","superTypeParameters","implements","decorators"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,l.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0}}}),p("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,l.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,l.assertNodeType)("Expression")},superTypeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TSExpressionWithTypeArguments","ClassImplements"))),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},mixins:{validate:(0,l.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0}},validate:function(){const e=(0,l.assertNodeType)("Identifier");return function(t,n,a){process.env.BABEL_TYPES_8_BREAKING&&((0,r.default)("ExportDefaultDeclaration",t)||e(a,"id",a.id))}}()}),p("ExportAllDeclaration",{builder:["source"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{source:{validate:(0,l.assertNodeType)("StringLiteral")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value")),attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))}}}),p("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{validate:(0,l.assertNodeType)("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression")},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("value"))}}),p("ExportNamedDeclaration",{builder:["declaration","specifiers","source"],visitor:["declaration","specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:{optional:!0,validate:(0,l.chain)((0,l.assertNodeType)("Declaration"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration")}),{oneOfNodeTypes:["Declaration"]}),(function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&e.source)throw new TypeError("Cannot export a declaration from a source")}))},attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},specifiers:{default:[],validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)(function(){const e=(0,l.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),t=(0,l.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?function(n,r,a){(n.source?e:t)(n,r,a)}:e}()))},source:{validate:(0,l.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,l.validateOptional)((0,l.assertOneOf)("type","value"))}}),p("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},exported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,l.assertOneOf)("type","value"),optional:!0}}}),p("ForOfStatement",{visitor:["left","right","body"],builder:["left","right","body","await"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:function(){if(!process.env.BABEL_TYPES_8_BREAKING)return(0,l.assertNodeType)("VariableDeclaration","LVal");const e=(0,l.assertNodeType)("VariableDeclaration"),t=(0,l.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return function(n,a,i){(0,r.default)("VariableDeclaration",i)?e(n,a,i):t(n,a,i)}}()},right:{validate:(0,l.assertNodeType)("Expression")},body:{validate:(0,l.assertNodeType)("Statement")},await:{default:!1}}}),p("ImportDeclaration",{builder:["specifiers","source"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:{attributes:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},assertions:{optional:!0,validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportAttribute")))},module:{optional:!0,validate:(0,l.assertValueType)("boolean")},specifiers:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier")))},source:{validate:(0,l.assertNodeType)("StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")}}}),p("ImportSpecifier",{visitor:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,l.assertNodeType)("Identifier")},imported:{validate:(0,l.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,l.assertOneOf)("type","typeof","value"),optional:!0}}}),p("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:(0,l.chain)((0,l.assertNodeType)("Identifier"),Object.assign((function(e,t,n){if(!process.env.BABEL_TYPES_8_BREAKING)return;let a;switch(n.name){case"function":a="sent";break;case"new":a="target";break;case"import":a="meta"}if(!(0,r.default)("Identifier",e.property,{name:a}))throw new TypeError("Unrecognised MetaProperty")}),{oneOfNodeTypes:["Identifier"]}))},property:{validate:(0,l.assertNodeType)("Identifier")}}});const y=()=>({abstract:{validate:(0,l.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,l.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,l.assertValueType)("boolean"),optional:!0},key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}});t.classMethodOrPropertyCommon=y;const m=()=>Object.assign({},c(),y(),{params:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Identifier","Pattern","RestElement","TSParameterProperty")))},kind:{validate:(0,l.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,l.chain)((0,l.assertValueType)("string"),(0,l.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0}});t.classMethodOrDeclareMethodCommon=m,p("ClassMethod",{aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["key","params","body","decorators","returnType","typeParameters"],fields:Object.assign({},m(),u(),{body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("ObjectPattern",{visitor:["properties","typeAnnotation","decorators"],builder:["properties"],aliases:["Pattern","PatternLike","LVal"],fields:Object.assign({},f(),{properties:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("RestElement","ObjectProperty")))}})}),p("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Super",{aliases:["Expression"]}),p("TaggedTemplateExpression",{visitor:["tag","quasi","typeParameters"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,l.assertNodeType)("Expression")},quasi:{validate:(0,l.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,l.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),p("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,l.chain)((0,l.assertShape)({raw:{validate:(0,l.assertValueType)("string")},cooked:{validate:(0,l.assertValueType)("string"),optional:!0}}),(function(e){const t=e.value.raw;let n=!1;const r=()=>{throw new Error("Internal @babel/types error.")},{str:a,firstInvalidLoc:i}=(0,s.readStringContents)("template",t,0,0,0,{unterminated(){n=!0},strictNumericEscape:r,invalidEscapeSequence:r,numericSeparatorInEscapeSequence:r,unexpectedNumericSeparator:r,invalidDigit:r,invalidCodePoint:r});if(!n)throw new Error("Invalid raw");e.value.cooked=i?null:a}))},tail:{default:!1}}}),p("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("TemplateElement")))},expressions:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","TSType")),(function(e,t,n){if(e.quasis.length!==n.length+1)throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)}))}}}),p("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:(0,l.chain)((0,l.assertValueType)("boolean"),Object.assign((function(e,t,n){if(process.env.BABEL_TYPES_8_BREAKING&&n&&!e.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")}),{type:"boolean"})),default:!1},argument:{optional:!0,validate:(0,l.assertNodeType)("Expression")}}}),p("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,l.assertNodeType)("Expression")}}}),p("Import",{aliases:["Expression"]}),p("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,l.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),p("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,l.assertNodeType)("Identifier")}}}),p("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,l.assertNodeType)("Expression")},property:{validate:function(){const e=(0,l.assertNodeType)("Identifier"),t=(0,l.assertNodeType)("Expression");return Object.assign((function(n,r,a){(n.computed?t:e)(n,r,a)}),{oneOfNodeTypes:["Expression","Identifier"]})}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")}}}),p("OptionalCallExpression",{visitor:["callee","arguments","typeParameters","typeArguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:{callee:{validate:(0,l.assertNodeType)("Expression")},arguments:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Expression","SpreadElement","JSXNamespacedName","ArgumentPlaceholder")))},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,l.chain)((0,l.assertValueType)("boolean"),(0,l.assertOptionalChainStart)()):(0,l.assertValueType)("boolean")},typeArguments:{validate:(0,l.assertNodeType)("TypeParameterInstantiation"),optional:!0},typeParameters:{validate:(0,l.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}}}),p("ClassProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"],fields:Object.assign({},y(),{value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassAccessorProperty",{visitor:["key","value","typeAnnotation","decorators"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"],fields:Object.assign({},y(),{key:{validate:(0,l.chain)(function(){const e=(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),t=(0,l.assertNodeType)("Expression");return function(n,r,a){(n.computed?t:e)(n,r,a)}}(),(0,l.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},declare:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}})}),p("ClassPrivateProperty",{visitor:["key","value","decorators","typeAnnotation"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,l.assertNodeType)("PrivateName")},value:{validate:(0,l.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,l.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Decorator"))),optional:!0},static:{validate:(0,l.assertValueType)("boolean"),default:!1},readonly:{validate:(0,l.assertValueType)("boolean"),optional:!0},definite:{validate:(0,l.assertValueType)("boolean"),optional:!0},variance:{validate:(0,l.assertNodeType)("Variance"),optional:!0}}}),p("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["key","params","body","decorators","returnType","typeParameters"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},m(),u(),{kind:{validate:(0,l.assertOneOf)("get","set","method"),default:"method"},key:{validate:(0,l.assertNodeType)("PrivateName")},body:{validate:(0,l.assertNodeType)("BlockStatement")}})}),p("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,l.assertNodeType)("Identifier")}}}),p("StaticBlock",{visitor:["body"],fields:{body:{validate:(0,l.chain)((0,l.assertValueType)("array"),(0,l.assertEach)((0,l.assertNodeType)("Statement")))}},aliases:["Scopable","BlockParent","FunctionParent"]})},33883:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DEPRECATED_ALIASES=void 0,t.DEPRECATED_ALIASES={ModuleDeclaration:"ImportOrExportDeclaration"}},68675:(e,t,n)=>{"use strict";var r=n(58313);(0,r.default)("ArgumentPlaceholder",{}),(0,r.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,r.assertNodeType)("Expression")},callee:{validate:(0,r.assertNodeType)("Expression")}}:{object:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign((()=>{}),{oneOfNodeTypes:["Expression"]})}}}),(0,r.default)("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,r.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,r.assertNodeType)("StringLiteral")}}}),(0,r.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),(0,r.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,r.assertNodeType)("BlockStatement")},async:{validate:(0,r.assertValueType)("boolean"),default:!1}}}),(0,r.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,r.assertNodeType)("Identifier")}}}),(0,r.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("ObjectProperty","SpreadElement")))}}}),(0,r.default)("TupleExpression",{fields:{elements:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Expression","SpreadElement"))),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,r.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,r.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,r.assertNodeType)("Program")}},aliases:["Expression"]}),(0,r.default)("TopicReference",{aliases:["Expression"]}),(0,r.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,r.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,r.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]})},96754:(e,t,n)=>{"use strict";var r=n(58313);const a=(0,r.defineAliasedType)("Flow"),i=e=>{const t="DeclareClass"===e;a(e,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends",...t?["mixins","implements"]:[],"body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends"))},t?{mixins:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),implements:(0,r.validateOptional)((0,r.arrayOfType)("ClassImplements"))}:{},{body:(0,r.validateType)("ObjectTypeAnnotation")})})};a("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,r.validateType)("FlowType")}}),a("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("DeclareClass"),a("DeclareFunction",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),predicate:(0,r.validateOptionalType)("DeclaredPredicate")}}),i("DeclareInterface"),a("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)("BlockStatement"),kind:(0,r.validateOptional)((0,r.assertOneOf)("CommonJS","ES"))}}),a("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateOptionalType)("FlowType")}}),a("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier")}}),a("DeclareExportDeclaration",{visitor:["declaration","specifiers","source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{declaration:(0,r.validateOptionalType)("Flow"),specifiers:(0,r.validateOptional)((0,r.arrayOfType)(["ExportSpecifier","ExportNamespaceSpecifier"])),source:(0,r.validateOptionalType)("StringLiteral"),default:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("DeclareExportAllDeclaration",{visitor:["source"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{source:(0,r.validateType)("StringLiteral"),exportKind:(0,r.validateOptional)((0,r.assertOneOf)("type","value"))}}),a("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,r.validateType)("Flow")}}),a("ExistsTypeAnnotation",{aliases:["FlowType"]}),a("FunctionTypeAnnotation",{visitor:["typeParameters","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),params:(0,r.validate)((0,r.arrayOfType)("FunctionTypeParam")),rest:(0,r.validateOptionalType)("FunctionTypeParam"),this:(0,r.validateOptionalType)("FunctionTypeParam"),returnType:(0,r.validateType)("FlowType")}}),a("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,r.validateOptionalType)("Identifier"),typeAnnotation:(0,r.validateType)("FlowType"),optional:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),a("InferredPredicate",{aliases:["FlowPredicate"]}),a("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"]),typeParameters:(0,r.validateOptionalType)("TypeParameterInstantiation")}}),i("InterfaceDeclaration"),a("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,r.validateOptional)((0,r.arrayOfType)("InterfaceExtends")),body:(0,r.validateType)("ObjectTypeAnnotation")}}),a("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("number"))}}),a("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,r.validate)((0,r.arrayOfType)(["ObjectTypeProperty","ObjectTypeSpreadProperty"])),indexers:{validate:(0,r.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,r.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,r.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,r.assertValueType)("boolean"),default:!1},inexact:(0,r.validateOptional)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeInternalSlot",{visitor:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateType)("Identifier"),value:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean")),static:(0,r.validate)((0,r.assertValueType)("boolean")),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeIndexer",{visitor:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,r.validateOptionalType)("Identifier"),key:(0,r.validateType)("FlowType"),value:(0,r.validateType)("FlowType"),static:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance")}}),a("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,r.validateType)(["Identifier","StringLiteral"]),value:(0,r.validateType)("FlowType"),kind:(0,r.validate)((0,r.assertOneOf)("init","get","set")),static:(0,r.validate)((0,r.assertValueType)("boolean")),proto:(0,r.validate)((0,r.assertValueType)("boolean")),optional:(0,r.validate)((0,r.assertValueType)("boolean")),variance:(0,r.validateOptionalType)("Variance"),method:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,r.validateType)("FlowType")}}),a("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,r.validateOptionalType)("FlowType"),impltype:(0,r.validateType)("FlowType")}}),a("QualifiedTypeIdentifier",{visitor:["id","qualification"],fields:{id:(0,r.validateType)("Identifier"),qualification:(0,r.validateType)(["Identifier","QualifiedTypeIdentifier"])}}),a("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,r.validate)((0,r.assertValueType)("string"))}}),a("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,r.validateType)("FlowType")}}),a("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TypeParameterDeclaration"),right:(0,r.validateType)("FlowType")}}),a("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("FlowType")}}),a("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TypeAnnotation")}}),a("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,r.validate)((0,r.assertValueType)("string")),bound:(0,r.validateOptionalType)("TypeAnnotation"),default:(0,r.validateOptionalType)("FlowType"),variance:(0,r.validateOptionalType)("Variance")}}),a("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("TypeParameter"))}}),a("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,r.validate)((0,r.arrayOfType)("FlowType"))}}),a("Variance",{builder:["kind"],fields:{kind:(0,r.validate)((0,r.assertOneOf)("minus","plus"))}}),a("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),a("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,r.validateType)("Identifier"),body:(0,r.validateType)(["EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody"])}}),a("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,r.validate)((0,r.assertValueType)("boolean")),members:(0,r.validateArrayOfType)(["EnumStringMember","EnumDefaultedMember"]),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,r.validate)((0,r.assertValueType)("boolean"))}}),a("EnumBooleanMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("BooleanLiteral")}}),a("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("NumericLiteral")}}),a("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,r.validateType)("Identifier"),init:(0,r.validateType)("StringLiteral")}}),a("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),a("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType")}}),a("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,r.validateType)("FlowType"),indexType:(0,r.validateType)("FlowType"),optional:(0,r.validate)((0,r.assertValueType)("boolean"))}})},43341:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ALIAS_KEYS",{enumerable:!0,get:function(){return a.ALIAS_KEYS}}),Object.defineProperty(t,"BUILDER_KEYS",{enumerable:!0,get:function(){return a.BUILDER_KEYS}}),Object.defineProperty(t,"DEPRECATED_ALIASES",{enumerable:!0,get:function(){return s.DEPRECATED_ALIASES}}),Object.defineProperty(t,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return a.DEPRECATED_KEYS}}),Object.defineProperty(t,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return a.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(t,"NODE_FIELDS",{enumerable:!0,get:function(){return a.NODE_FIELDS}}),Object.defineProperty(t,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return a.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(t,"PLACEHOLDERS",{enumerable:!0,get:function(){return i.PLACEHOLDERS}}),Object.defineProperty(t,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_ALIAS}}),Object.defineProperty(t,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return i.PLACEHOLDERS_FLIPPED_ALIAS}}),t.TYPES=void 0,Object.defineProperty(t,"VISITOR_KEYS",{enumerable:!0,get:function(){return a.VISITOR_KEYS}});var r=n(53164);n(90631),n(96754),n(91890),n(38343),n(68675),n(93483);var a=n(58313),i=n(50310),s=n(33883);Object.keys(s.DEPRECATED_ALIASES).forEach((e=>{a.FLIPPED_ALIAS_KEYS[e]=a.FLIPPED_ALIAS_KEYS[s.DEPRECATED_ALIASES[e]]})),r(a.VISITOR_KEYS),r(a.ALIAS_KEYS),r(a.FLIPPED_ALIAS_KEYS),r(a.NODE_FIELDS),r(a.BUILDER_KEYS),r(a.DEPRECATED_KEYS),r(i.PLACEHOLDERS_ALIAS),r(i.PLACEHOLDERS_FLIPPED_ALIAS);const o=[].concat(Object.keys(a.VISITOR_KEYS),Object.keys(a.FLIPPED_ALIAS_KEYS),Object.keys(a.DEPRECATED_KEYS));t.TYPES=o},91890:(e,t,n)=>{"use strict";var r=n(58313);const a=(0,r.defineAliasedType)("JSX");a("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,r.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),a("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),a("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,r.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,r.assertNodeType)("JSXClosingElement")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}},{selfClosing:{validate:(0,r.assertValueType)("boolean"),optional:!0}})}),a("JSXEmptyExpression",{}),a("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression","JSXEmptyExpression")}}}),a("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}}),a("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,r.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,r.assertNodeType)("JSXIdentifier")},name:{validate:(0,r.assertNodeType)("JSXIdentifier")}}}),a("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","attributes"],aliases:["Immutable"],fields:{name:{validate:(0,r.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXAttribute","JSXSpreadAttribute")))},typeParameters:{validate:(0,r.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),a("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,r.assertNodeType)("Expression")}}}),a("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,r.assertValueType)("string")}}}),a("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,r.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,r.assertNodeType)("JSXClosingFragment")},children:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")))}}}),a("JSXOpeningFragment",{aliases:["Immutable"]}),a("JSXClosingFragment",{aliases:["Immutable"]})},38343:(e,t,n)=>{"use strict";var r=n(58313),a=n(50310);const i=(0,r.defineAliasedType)("Miscellaneous");i("Noop",{visitor:[]}),i("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:{name:{validate:(0,r.assertNodeType)("Identifier")},expectedNode:{validate:(0,r.assertOneOf)(...a.PLACEHOLDERS)}}}),i("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,r.assertValueType)("string")}}})},50310:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PLACEHOLDERS_FLIPPED_ALIAS=t.PLACEHOLDERS_ALIAS=t.PLACEHOLDERS=void 0;var r=n(58313);const a=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"];t.PLACEHOLDERS=a;const i={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};t.PLACEHOLDERS_ALIAS=i;for(const e of a){const t=r.ALIAS_KEYS[e];null!=t&&t.length&&(i[e]=t)}const s={};t.PLACEHOLDERS_FLIPPED_ALIAS=s,Object.keys(i).forEach((e=>{i[e].forEach((t=>{Object.hasOwnProperty.call(s,t)||(s[t]=[]),s[t].push(e)}))}))},93483:(e,t,n)=>{"use strict";var r=n(58313),a=n(90631),i=n(92378);const s=(0,r.defineAliasedType)("TypeScript"),o=(0,r.assertValueType)("boolean"),l=()=>({returnType:{validate:(0,r.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,r.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}});s("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,r.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,r.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,r.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,r.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("Decorator"))),optional:!0}}}),s("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},(0,a.functionDeclarationCommon)(),l())}),s("TSDeclareMethod",{visitor:["decorators","key","typeParameters","params","returnType"],fields:Object.assign({},(0,a.classMethodOrDeclareMethodCommon)(),l())}),s("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,r.validateType)("TSEntityName"),right:(0,r.validateType)("Identifier")}});const p=()=>({typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,r.validateArrayOfType)(["ArrayPattern","Identifier","ObjectPattern","RestElement"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}),c={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:p()};s("TSCallSignatureDeclaration",c),s("TSConstructSignatureDeclaration",c);const u=()=>({key:(0,r.validateType)("Expression"),computed:{default:!1},optional:(0,r.validateOptional)(o)});s("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation","initializer"],fields:Object.assign({},u(),{readonly:(0,r.validateOptional)(o),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),initializer:(0,r.validateOptionalType)("Expression"),kind:{validate:(0,r.assertOneOf)("get","set")}})}),s("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},p(),u(),{kind:{validate:(0,r.assertOneOf)("method","get","set")}})}),s("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,r.validateOptional)(o),static:(0,r.validateOptional)(o),parameters:(0,r.validateArrayOfType)("Identifier"),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation")}});const d=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const e of d)s(e,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});s("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const f={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};s("TSFunctionType",Object.assign({},f,{fields:p()})),s("TSConstructorType",Object.assign({},f,{fields:Object.assign({},p(),{abstract:(0,r.validateOptional)(o)})})),s("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,r.validateType)(["Identifier","TSThisType"]),typeAnnotation:(0,r.validateOptionalType)("TSTypeAnnotation"),asserts:(0,r.validateOptional)(o)}}),s("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:{exprName:(0,r.validateType)(["TSEntityName","TSImportType"]),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,r.validateType)("TSType")}}),s("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,r.validateArrayOfType)(["TSType","TSNamedTupleMember"])}}),s("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,r.validateType)("Identifier"),optional:{validate:o,default:!1},elementType:(0,r.validateType)("TSType")}});const y={aliases:["TSType"],visitor:["types"],fields:{types:(0,r.validateArrayOfType)("TSType")}};s("TSUnionType",y),s("TSIntersectionType",y),s("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,r.validateType)("TSType"),extendsType:(0,r.validateType)("TSType"),trueType:(0,r.validateType)("TSType"),falseType:(0,r.validateType)("TSType")}}),s("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,r.validateType)("TSTypeParameter")}}),s("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,r.validateType)("TSType")}}),s("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{operator:(0,r.validate)((0,r.assertValueType)("string")),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,r.validateType)("TSType"),indexType:(0,r.validateType)("TSType")}}),s("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","typeAnnotation","nameType"],fields:{readonly:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeParameter:(0,r.validateType)("TSTypeParameter"),optional:(0,r.validateOptional)((0,r.assertOneOf)(!0,!1,"+","-")),typeAnnotation:(0,r.validateOptionalType)("TSType"),nameType:(0,r.validateOptionalType)("TSType")}}),s("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const e=(0,r.assertNodeType)("NumericLiteral","BigIntLiteral"),t=(0,r.assertOneOf)("-"),n=(0,r.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral");function a(r,a,s){(0,i.default)("UnaryExpression",s)?(t(s,"operator",s.operator),e(s,"argument",s.argument)):n(r,a,s)}return a.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],a}()}}}),s("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,r.validateOptional)((0,r.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,r.validateType)("TSInterfaceBody")}}),s("TSInterfaceBody",{visitor:["body"],fields:{body:(0,r.validateArrayOfType)("TSTypeElement")}}),s("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,r.validateType)("TSType")}}),s("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:{expression:(0,r.validateType)("Expression"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}});const m={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,r.validateType)("Expression"),typeAnnotation:(0,r.validateType)("TSType")}};s("TSAsExpression",m),s("TSSatisfiesExpression",m),s("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,r.validateType)("TSType"),expression:(0,r.validateType)("Expression")}}),s("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,r.validateOptional)(o),const:(0,r.validateOptional)(o),id:(0,r.validateType)("Identifier"),members:(0,r.validateArrayOfType)("TSEnumMember"),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,r.validateType)(["Identifier","StringLiteral"]),initializer:(0,r.validateOptionalType)("Expression")}}),s("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{declare:(0,r.validateOptional)(o),global:(0,r.validateOptional)(o),id:(0,r.validateType)(["Identifier","StringLiteral"]),body:(0,r.validateType)(["TSModuleBlock","TSModuleDeclaration"])}}),s("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:(0,r.validateArrayOfType)("Statement")}}),s("TSImportType",{aliases:["TSType"],visitor:["argument","qualifier","typeParameters"],fields:{argument:(0,r.validateType)("StringLiteral"),qualifier:(0,r.validateOptionalType)("TSEntityName"),typeParameters:(0,r.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSImportEqualsDeclaration",{aliases:["Statement"],visitor:["id","moduleReference"],fields:{isExport:(0,r.validate)(o),id:(0,r.validateType)("Identifier"),moduleReference:(0,r.validateType)(["TSEntityName","TSExternalModuleReference"]),importKind:{validate:(0,r.assertOneOf)("type","value"),optional:!0}}}),s("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,r.validateType)("StringLiteral")}}),s("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,r.validateType)("Expression")}}),s("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,r.validateType)("Identifier")}}),s("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,r.assertNodeType)("TSType")}}}),s("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSType")))}}}),s("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:{validate:(0,r.chain)((0,r.assertValueType)("array"),(0,r.assertEach)((0,r.assertNodeType)("TSTypeParameter")))}}}),s("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,r.assertValueType)("string")},in:{validate:(0,r.assertValueType)("boolean"),optional:!0},out:{validate:(0,r.assertValueType)("boolean"),optional:!0},const:{validate:(0,r.assertValueType)("boolean"),optional:!0},constraint:{validate:(0,r.assertNodeType)("TSType"),optional:!0},default:{validate:(0,r.assertNodeType)("TSType"),optional:!0}}})},58313:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VISITOR_KEYS=t.NODE_PARENT_VALIDATIONS=t.NODE_FIELDS=t.FLIPPED_ALIAS_KEYS=t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.ALIAS_KEYS=void 0,t.arrayOf=m,t.arrayOfType=h,t.assertEach=T,t.assertNodeOrValueType=function(...e){function t(t,n,i){for(const s of e)if(d(i)===s||(0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeOrValueTypes=e,t},t.assertNodeType=S,t.assertOneOf=function(...e){function t(t,n,r){if(e.indexOf(r)<0)throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t},t.assertOptionalChainStart=function(){return function(e){var t;let n=e;for(;e;){const{type:e}=n;if("OptionalCallExpression"!==e){if("OptionalMemberExpression"!==e)break;if(n.optional)return;n=n.object}else{if(n.optional)return;n=n.callee}}throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null==(t=n)?void 0:t.type}`)}},t.assertShape=function(e){function t(t,n,r){const i=[];for(const n of Object.keys(e))try{(0,a.validateField)(t,n,r[n],e[n])}catch(e){if(e instanceof TypeError){i.push(e.message);continue}throw e}if(i.length)throw new TypeError(`Property ${n} of ${t.type} expected to have the following:\n${i.join("\n")}`)}return t.shapeOf=e,t},t.assertValueType=b,t.chain=E,t.default=A,t.defineAliasedType=function(...e){return(t,n={})=>{let r=n.aliases;var a;r||(n.inherits&&(r=null==(a=g[n.inherits].aliases)?void 0:a.slice()),null!=r||(r=[]),n.aliases=r);const i=e.filter((e=>!r.includes(e)));r.unshift(...i),A(t,n)}},t.typeIs=y,t.validate=f,t.validateArrayOfType=function(e){return f(h(e))},t.validateOptional=function(e){return{validate:e,optional:!0}},t.validateOptionalType=function(e){return{validate:y(e),optional:!0}},t.validateType=function(e){return f(y(e))};var r=n(92378),a=n(49164);const i={};t.VISITOR_KEYS=i;const s={};t.ALIAS_KEYS=s;const o={};t.FLIPPED_ALIAS_KEYS=o;const l={};t.NODE_FIELDS=l;const p={};t.BUILDER_KEYS=p;const c={};t.DEPRECATED_KEYS=c;const u={};function d(e){return Array.isArray(e)?"array":null===e?"null":typeof e}function f(e){return{validate:e}}function y(e){return"string"==typeof e?S(e):S(...e)}function m(e){return E(b("array"),T(e))}function h(e){return m(y(e))}function T(e){function t(t,n,r){if(Array.isArray(r))for(let i=0;i<r.length;i++){const s=`${n}[${i}]`,o=r[i];e(t,s,o),process.env.BABEL_TYPES_8_BREAKING&&(0,a.validateChild)(t,s,o)}}return t.each=e,t}function S(...e){function t(t,n,i){for(const s of e)if((0,r.default)(s,i))return void(0,a.validateChild)(t,n,i);throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null==i?void 0:i.type)}`)}return t.oneOfNodeTypes=e,t}function b(e){function t(t,n,r){if(d(r)!==e)throw new TypeError(`Property ${n} expected type of ${e} but got ${d(r)}`)}return t.type=e,t}function E(...e){function t(...t){for(const n of e)n(...t)}if(t.chainOf=e,e.length>=2&&"type"in e[0]&&"array"===e[0].type&&!("each"in e[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return t}t.NODE_PARENT_VALIDATIONS=u;const P=["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate"],x=["default","optional","deprecated","validate"],g={};function A(e,t={}){const n=t.inherits&&g[t.inherits]||{};let r=t.fields;if(!r&&(r={},n.fields)){const e=Object.getOwnPropertyNames(n.fields);for(const t of e){const e=n.fields[t],a=e.default;if(Array.isArray(a)?a.length>0:a&&"object"==typeof a)throw new Error("field defaults can only be primitives or empty arrays currently");r[t]={default:Array.isArray(a)?[]:a,optional:e.optional,deprecated:e.deprecated,validate:e.validate}}}const a=t.visitor||n.visitor||[],f=t.aliases||n.aliases||[],y=t.builder||n.builder||t.visitor||[];for(const n of Object.keys(t))if(-1===P.indexOf(n))throw new Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(c[t.deprecatedAlias]=e);for(const e of a.concat(y))r[e]=r[e]||{};for(const t of Object.keys(r)){const n=r[t];void 0!==n.default&&-1===y.indexOf(t)&&(n.optional=!0),void 0===n.default?n.default=null:n.validate||null==n.default||(n.validate=b(d(n.default)));for(const r of Object.keys(n))if(-1===x.indexOf(r))throw new Error(`Unknown field key "${r}" on ${e}.${t}`)}i[e]=t.visitor=a,p[e]=t.builder=y,l[e]=t.fields=r,s[e]=t.aliases=f,f.forEach((t=>{o[t]=o[t]||[],o[t].push(e)})),t.validate&&(u[e]=t.validate),g[e]=t}},11183:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r={react:!0,assertNode:!0,createTypeAnnotationBasedOnTypeof:!0,createUnionTypeAnnotation:!0,createFlowUnionType:!0,createTSUnionType:!0,cloneNode:!0,clone:!0,cloneDeep:!0,cloneDeepWithoutLoc:!0,cloneWithoutLoc:!0,addComment:!0,addComments:!0,inheritInnerComments:!0,inheritLeadingComments:!0,inheritsComments:!0,inheritTrailingComments:!0,removeComments:!0,ensureBlock:!0,toBindingIdentifierName:!0,toBlock:!0,toComputedKey:!0,toExpression:!0,toIdentifier:!0,toKeyAlias:!0,toSequenceExpression:!0,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,traverse:!0,traverseFast:!0,shallowEqual:!0,is:!0,isBinding:!0,isBlockScoped:!0,isImmutable:!0,isLet:!0,isNode:!0,isNodesEquivalent:!0,isPlaceholderType:!0,isReferenced:!0,isScope:!0,isSpecifierDefault:!0,isType:!0,isValidES3Identifier:!0,isValidIdentifier:!0,isVar:!0,matchesPattern:!0,validate:!0,buildMatchMemberExpression:!0,__internal__deprecationWarning:!0};Object.defineProperty(t,"__internal__deprecationWarning",{enumerable:!0,get:function(){return me.default}}),Object.defineProperty(t,"addComment",{enumerable:!0,get:function(){return b.default}}),Object.defineProperty(t,"addComments",{enumerable:!0,get:function(){return E.default}}),Object.defineProperty(t,"appendToMemberExpression",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"assertNode",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"buildMatchMemberExpression",{enumerable:!0,get:function(){return fe.default}}),Object.defineProperty(t,"clone",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(t,"cloneDeep",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(t,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return T.default}}),Object.defineProperty(t,"cloneNode",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(t,"cloneWithoutLoc",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(t,"createFlowUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"createTSUnionType",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(t,"ensureBlock",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return W.default}}),Object.defineProperty(t,"inheritInnerComments",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"inheritLeadingComments",{enumerable:!0,get:function(){return x.default}}),Object.defineProperty(t,"inheritTrailingComments",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"inherits",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"inheritsComments",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"is",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return H.default}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return Z.default}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(t,"isPlaceholderType",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return ae.default}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return ie.default}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"isType",{enumerable:!0,get:function(){return oe.default}}),Object.defineProperty(t,"isValidES3Identifier",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(t,"matchesPattern",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(t,"prependToMemberExpression",{enumerable:!0,get:function(){return V.default}}),t.react=void 0,Object.defineProperty(t,"removeComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"removeProperties",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(t,"removePropertiesDeep",{enumerable:!0,get:function(){return U.default}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(t,"shallowEqual",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return D.default}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return j.default}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(t,"toSequenceExpression",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(t,"traverseFast",{enumerable:!0,get:function(){return $.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return B.default}});var a=n(48141),i=n(92519),s=n(21847),o=n(60369),l=n(14805);Object.keys(l).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===l[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return l[e]}}))}));var p=n(8341),c=n(86634),u=n(32039),d=n(94522);Object.keys(d).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===d[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return d[e]}}))}));var f=n(53810);Object.keys(f).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===f[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return f[e]}}))}));var y=n(55475),m=n(92038),h=n(26172),T=n(90726),S=n(14841),b=n(75287),E=n(78837),P=n(2361),x=n(74212),g=n(1962),A=n(4763),v=n(96278),O=n(25816);Object.keys(O).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===O[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return O[e]}}))}));var I=n(18718);Object.keys(I).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===I[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return I[e]}}))}));var N=n(79872),D=n(62617),C=n(13884),w=n(73332),L=n(81560),j=n(1800),_=n(66579),M=n(44521),k=n(97629),B=n(12447),F=n(43341);Object.keys(F).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===F[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return F[e]}}))}));var R=n(26500),K=n(21592),V=n(7844),Y=n(1926),U=n(62253),X=n(11851),J=n(61311),W=n(85174),q=n(21629);Object.keys(q).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===q[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return q[e]}}))}));var $=n(87362),G=n(49639),z=n(92378),H=n(53461),Q=n(46509),Z=n(84254),ee=n(10839),te=n(67509),ne=n(94338),re=n(29746),ae=n(91108),ie=n(23207),se=n(63430),oe=n(78172),le=n(8688),pe=n(6530),ce=n(85819),ue=n(28328),de=n(49164),fe=n(39519),ye=n(16500);Object.keys(ye).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===ye[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return ye[e]}}))}));var me=n(92821);const he={isReactComponent:a.default,isCompatTag:i.default,buildChildren:s.default};t.react=he},26500:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n=!1){return e.object=(0,r.memberExpression)(e.object,e.property,e.computed),e.property=t,e.computed=!!n,e};var r=n(94522)},11851:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isAnyTypeAnnotation)(p))return[p];if((0,r.isFlowBaseAnnotation)(p))s.set(p.type,p);else if((0,r.isUnionTypeAnnotation)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isGenericTypeAnnotation)(p)){const t=a(p.id);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(16500);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.id.name}.${a(e.qualification)}`}},21592:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(!e||!t)return e;for(const n of r.INHERIT_KEYS.optional)null==e[n]&&(e[n]=t[n]);for(const n of Object.keys(t))"_"===n[0]&&"__clone"!==n&&(e[n]=t[n]);for(const n of r.INHERIT_KEYS.force)e[n]=t[n];return(0,a.default)(e,t),e};var r=n(18718),a=n(1962)},7844:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if((0,a.isSuper)(e.object))throw new Error("Cannot prepend node to super property access (`super.foo`).");return e.object=(0,r.memberExpression)(t,e.object),e};var r=n(94522),a=n(11183)},1926:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t={}){const n=t.preserveComments?a:i;for(const t of n)null!=e[t]&&(e[t]=void 0);for(const t of Object.keys(e))"_"===t[0]&&null!=e[t]&&(e[t]=void 0);const r=Object.getOwnPropertySymbols(e);for(const t of r)e[t]=null};var r=n(18718);const a=["tokens","start","end","loc","raw","rawValue"],i=[...r.COMMENT_KEYS,"comments",...a]},62253:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(0,r.default)(e,a.default,t),e};var r=n(87362),a=n(1926)},36044:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t){const n=Array.from(t),i=new Map,s=new Map,o=new Set,l=[];for(let t=0;t<n.length;t++){const p=n[t];if(p&&!(l.indexOf(p)>=0)){if((0,r.isTSAnyKeyword)(p))return[p];if((0,r.isTSBaseType)(p))s.set(p.type,p);else if((0,r.isTSUnionType)(p))o.has(p.types)||(n.push(...p.types),o.add(p.types));else if((0,r.isTSTypeReference)(p)&&p.typeParameters){const t=a(p.typeName);if(i.has(t)){let n=i.get(t);n.typeParameters?p.typeParameters&&(n.typeParameters.params.push(...p.typeParameters.params),n.typeParameters.params=e(n.typeParameters.params)):n=p.typeParameters}else i.set(t,p)}else l.push(p)}}for(const[,e]of s)l.push(e);for(const[,e]of i)l.push(e);return l};var r=n(16500);function a(e){return(0,r.isIdentifier)(e)?e.name:`${e.right.name}.${a(e.left)}`}},61311:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var r=n(16500);function a(e,t,n){const i=[].concat(e),s=Object.create(null);for(;i.length;){const e=i.shift();if(!e)continue;const o=a.keys[e.type];if((0,r.isIdentifier)(e))t?(s[e.name]=s[e.name]||[]).push(e):s[e.name]=e;else if(!(0,r.isExportDeclaration)(e)||(0,r.isExportAllDeclaration)(e)){if(n){if((0,r.isFunctionDeclaration)(e)){i.push(e.id);continue}if((0,r.isFunctionExpression)(e))continue}if(o)for(let t=0;t<o.length;t++){const n=e[o[t]];n&&(Array.isArray(n)?i.push(...n):i.push(n))}}else(0,r.isDeclaration)(e.declaration)&&i.push(e.declaration)}return s}a.keys={DeclareClass:["id"],DeclareFunction:["id"],DeclareModule:["id"],DeclareVariable:["id"],DeclareInterface:["id"],DeclareTypeAlias:["id"],DeclareOpaqueType:["id"],InterfaceDeclaration:["id"],TypeAlias:["id"],OpaqueType:["id"],CatchClause:["param"],LabeledStatement:["label"],UnaryExpression:["argument"],AssignmentExpression:["left"],ImportSpecifier:["local"],ImportNamespaceSpecifier:["local"],ImportDefaultSpecifier:["local"],ImportDeclaration:["specifiers"],ExportSpecifier:["exported"],ExportNamespaceSpecifier:["exported"],ExportDefaultSpecifier:["exported"],FunctionDeclaration:["id","params"],FunctionExpression:["id","params"],ArrowFunctionExpression:["params"],ObjectMethod:["params"],ClassMethod:["params"],ClassPrivateMethod:["params"],ForInStatement:["left"],ForOfStatement:["left"],ClassDeclaration:["id"],ClassExpression:["id"],RestElement:["argument"],UpdateExpression:["argument"],ObjectProperty:["value"],AssignmentPattern:["left"],ArrayPattern:["elements"],ObjectPattern:["properties"],VariableDeclaration:["declarations"],VariableDeclarator:["id"]}},85174:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=n(61311);t.default=function(e,t){return(0,r.default)(e,t,!0)}},21629:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){"function"==typeof t&&(t={enter:t});const{enter:r,exit:i}=t;a(e,r,i,n,[])};var r=n(43341);function a(e,t,n,i,s){const o=r.VISITOR_KEYS[e.type];if(o){t&&t(e,s,i);for(const r of o){const o=e[r];if(Array.isArray(o))for(let l=0;l<o.length;l++){const p=o[l];p&&(s.push({node:e,key:r,index:l}),a(p,t,n,i,s),s.pop())}else o&&(s.push({node:e,key:r}),a(o,t,n,i,s),s.pop())}n&&n(e,s,i)}}},87362:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n,a){if(!t)return;const i=r.VISITOR_KEYS[t.type];if(i){n(t,a=a||{});for(const r of i){const i=t[r];if(Array.isArray(i))for(const t of i)e(t,n,a);else e(i,n,a)}}};var r=n(43341)},92821:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r=""){if(n.has(e))return;n.add(e);const{internal:a,trace:i}=function(e,t){const{stackTraceLimit:n,prepareStackTrace:r}=Error;let a;if(Error.stackTraceLimit=4,Error.prepareStackTrace=function(e,t){a=t},(new Error).stack,Error.stackTraceLimit=n,Error.prepareStackTrace=r,!a)return{internal:!1,trace:""};const i=a.slice(2,4);return{internal:/[\\/]@babel[\\/]/.test(i[1].getFileName()),trace:i.map((e=>` at ${e}`)).join("\n")}}();a||console.warn(`${r}\`${e}\` has been deprecated, please migrate to \`${t}\`\n${i}`)};const n=new Set},27587:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))}},53802:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.value.split(/\r\n|\n|\r/);let i=0;for(let e=0;e<n.length;e++)n[e].match(/[^ \t]/)&&(i=e);let s="";for(let e=0;e<n.length;e++){const t=n[e],r=0===e,a=e===n.length-1,o=e===i;let l=t.replace(/\t/g," ");r||(l=l.replace(/^[ ]+/,"")),a||(l=l.replace(/[ ]+$/,"")),l&&(o||(l+=" "),s+=l)}s&&t.push((0,a.inherits)((0,r.stringLiteral)(s),e))};var r=n(94522),a=n(11183)},49639:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=Object.keys(t);for(const r of n)if(e[r]!==t[r])return!1;return!0}},39519:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const n=e.split(".");return e=>(0,r.default)(e,n,t)};var r=n(28328)},16500:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAccessor=function(e,t){return!!e&&("ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t)))},t.isAnyTypeAnnotation=function(e,t){return!!e&&"AnyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArgumentPlaceholder=function(e,t){return!!e&&"ArgumentPlaceholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayExpression=function(e,t){return!!e&&"ArrayExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayPattern=function(e,t){return!!e&&"ArrayPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrayTypeAnnotation=function(e,t){return!!e&&"ArrayTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isArrowFunctionExpression=function(e,t){return!!e&&"ArrowFunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentExpression=function(e,t){return!!e&&"AssignmentExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isAssignmentPattern=function(e,t){return!!e&&"AssignmentPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isAwaitExpression=function(e,t){return!!e&&"AwaitExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBigIntLiteral=function(e,t){return!!e&&"BigIntLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBinary=function(e,t){if(!e)return!1;switch(e.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBinaryExpression=function(e,t){return!!e&&"BinaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBindExpression=function(e,t){return!!e&&"BindExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isBlock=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockParent=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isBlockStatement=function(e,t){return!!e&&"BlockStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteral=function(e,t){return!!e&&"BooleanLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanLiteralTypeAnnotation=function(e,t){return!!e&&"BooleanLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBooleanTypeAnnotation=function(e,t){return!!e&&"BooleanTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isBreakStatement=function(e,t){return!!e&&"BreakStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isCallExpression=function(e,t){return!!e&&"CallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isCatchClause=function(e,t){return!!e&&"CatchClause"===e.type&&(null==t||(0,r.default)(e,t))},t.isClass=function(e,t){if(!e)return!1;switch(e.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isClassAccessorProperty=function(e,t){return!!e&&"ClassAccessorProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassBody=function(e,t){return!!e&&"ClassBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassDeclaration=function(e,t){return!!e&&"ClassDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassExpression=function(e,t){return!!e&&"ClassExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassImplements=function(e,t){return!!e&&"ClassImplements"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassMethod=function(e,t){return!!e&&"ClassMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateMethod=function(e,t){return!!e&&"ClassPrivateMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassPrivateProperty=function(e,t){return!!e&&"ClassPrivateProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isClassProperty=function(e,t){return!!e&&"ClassProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isCompletionStatement=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditional=function(e,t){if(!e)return!1;switch(e.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isConditionalExpression=function(e,t){return!!e&&"ConditionalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isContinueStatement=function(e,t){return!!e&&"ContinueStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDebuggerStatement=function(e,t){return!!e&&"DebuggerStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecimalLiteral=function(e,t){return!!e&&"DecimalLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"VariableDeclaration":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":break;case"Placeholder":if("Declaration"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isDeclareClass=function(e,t){return!!e&&"DeclareClass"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportAllDeclaration=function(e,t){return!!e&&"DeclareExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareExportDeclaration=function(e,t){return!!e&&"DeclareExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareFunction=function(e,t){return!!e&&"DeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareInterface=function(e,t){return!!e&&"DeclareInterface"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModule=function(e,t){return!!e&&"DeclareModule"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareModuleExports=function(e,t){return!!e&&"DeclareModuleExports"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareOpaqueType=function(e,t){return!!e&&"DeclareOpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareTypeAlias=function(e,t){return!!e&&"DeclareTypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclareVariable=function(e,t){return!!e&&"DeclareVariable"===e.type&&(null==t||(0,r.default)(e,t))},t.isDeclaredPredicate=function(e,t){return!!e&&"DeclaredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isDecorator=function(e,t){return!!e&&"Decorator"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirective=function(e,t){return!!e&&"Directive"===e.type&&(null==t||(0,r.default)(e,t))},t.isDirectiveLiteral=function(e,t){return!!e&&"DirectiveLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoExpression=function(e,t){return!!e&&"DoExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isDoWhileStatement=function(e,t){return!!e&&"DoWhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyStatement=function(e,t){return!!e&&"EmptyStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isEmptyTypeAnnotation=function(e,t){return!!e&&"EmptyTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBody=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumBooleanBody=function(e,t){return!!e&&"EnumBooleanBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumBooleanMember=function(e,t){return!!e&&"EnumBooleanMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDeclaration=function(e,t){return!!e&&"EnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumDefaultedMember=function(e,t){return!!e&&"EnumDefaultedMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumMember=function(e,t){if(!e)return!1;switch(e.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isEnumNumberBody=function(e,t){return!!e&&"EnumNumberBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumNumberMember=function(e,t){return!!e&&"EnumNumberMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringBody=function(e,t){return!!e&&"EnumStringBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumStringMember=function(e,t){return!!e&&"EnumStringMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isEnumSymbolBody=function(e,t){return!!e&&"EnumSymbolBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isExistsTypeAnnotation=function(e,t){return!!e&&"ExistsTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportAllDeclaration=function(e,t){return!!e&&"ExportAllDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExportDefaultDeclaration=function(e,t){return!!e&&"ExportDefaultDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportDefaultSpecifier=function(e,t){return!!e&&"ExportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamedDeclaration=function(e,t){return!!e&&"ExportNamedDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportNamespaceSpecifier=function(e,t){return!!e&&"ExportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExportSpecifier=function(e,t){return!!e&&"ExportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpression=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"CallExpression":case"ConditionalExpression":case"FunctionExpression":case"Identifier":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"ObjectExpression":case"SequenceExpression":case"ParenthesizedExpression":case"ThisExpression":case"UnaryExpression":case"UpdateExpression":case"ArrowFunctionExpression":case"ClassExpression":case"MetaProperty":case"Super":case"TaggedTemplateExpression":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"OptionalMemberExpression":case"OptionalCallExpression":case"TypeCastExpression":case"JSXElement":case"JSXFragment":case"BindExpression":case"DoExpression":case"RecordExpression":case"TupleExpression":case"DecimalLiteral":case"ModuleExpression":case"TopicReference":case"PipelineTopicExpression":case"PipelineBareFunction":case"PipelinePrimaryTopicReference":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isExpressionStatement=function(e,t){return!!e&&"ExpressionStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isExpressionWrapper=function(e,t){if(!e)return!1;switch(e.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFile=function(e,t){return!!e&&"File"===e.type&&(null==t||(0,r.default)(e,t))},t.isFlow=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ClassImplements":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"DeclaredPredicate":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"FunctionTypeParam":case"GenericTypeAnnotation":case"InferredPredicate":case"InterfaceExtends":case"InterfaceDeclaration":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":case"OpaqueType":case"QualifiedTypeIdentifier":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"TypeAlias":case"TypeAnnotation":case"TypeCastExpression":case"TypeParameter":case"TypeParameterDeclaration":case"TypeParameterInstantiation":case"UnionTypeAnnotation":case"Variance":case"VoidTypeAnnotation":case"EnumDeclaration":case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowBaseAnnotation=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"BooleanTypeAnnotation":case"NullLiteralTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NumberTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"VoidTypeAnnotation":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowDeclaration=function(e,t){if(!e)return!1;switch(e.type){case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowPredicate=function(e,t){if(!e)return!1;switch(e.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFlowType=function(e,t){if(!e)return!1;switch(e.type){case"AnyTypeAnnotation":case"ArrayTypeAnnotation":case"BooleanTypeAnnotation":case"BooleanLiteralTypeAnnotation":case"NullLiteralTypeAnnotation":case"ExistsTypeAnnotation":case"FunctionTypeAnnotation":case"GenericTypeAnnotation":case"InterfaceTypeAnnotation":case"IntersectionTypeAnnotation":case"MixedTypeAnnotation":case"EmptyTypeAnnotation":case"NullableTypeAnnotation":case"NumberLiteralTypeAnnotation":case"NumberTypeAnnotation":case"ObjectTypeAnnotation":case"StringLiteralTypeAnnotation":case"StringTypeAnnotation":case"SymbolTypeAnnotation":case"ThisTypeAnnotation":case"TupleTypeAnnotation":case"TypeofTypeAnnotation":case"UnionTypeAnnotation":case"VoidTypeAnnotation":case"IndexedAccessType":case"OptionalIndexedAccessType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFor=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isForInStatement=function(e,t){return!!e&&"ForInStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForOfStatement=function(e,t){return!!e&&"ForOfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForStatement=function(e,t){return!!e&&"ForStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isForXStatement=function(e,t){if(!e)return!1;switch(e.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunction=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionDeclaration=function(e,t){return!!e&&"FunctionDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionExpression=function(e,t){return!!e&&"FunctionExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionParent=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isFunctionTypeAnnotation=function(e,t){return!!e&&"FunctionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isFunctionTypeParam=function(e,t){return!!e&&"FunctionTypeParam"===e.type&&(null==t||(0,r.default)(e,t))},t.isGenericTypeAnnotation=function(e,t){return!!e&&"GenericTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isIdentifier=function(e,t){return!!e&&"Identifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIfStatement=function(e,t){return!!e&&"IfStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isImmutable=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"BigIntLiteral":case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXOpeningElement":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isImport=function(e,t){return!!e&&"Import"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportAttribute=function(e,t){return!!e&&"ImportAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDeclaration=function(e,t){return!!e&&"ImportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportDefaultSpecifier=function(e,t){return!!e&&"ImportDefaultSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportNamespaceSpecifier=function(e,t){return!!e&&"ImportNamespaceSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isImportOrExportDeclaration=i,t.isImportSpecifier=function(e,t){return!!e&&"ImportSpecifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isIndexedAccessType=function(e,t){return!!e&&"IndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isInferredPredicate=function(e,t){return!!e&&"InferredPredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceDeclaration=function(e,t){return!!e&&"InterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceExtends=function(e,t){return!!e&&"InterfaceExtends"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterfaceTypeAnnotation=function(e,t){return!!e&&"InterfaceTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isInterpreterDirective=function(e,t){return!!e&&"InterpreterDirective"===e.type&&(null==t||(0,r.default)(e,t))},t.isIntersectionTypeAnnotation=function(e,t){return!!e&&"IntersectionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSX=function(e,t){if(!e)return!1;switch(e.type){case"JSXAttribute":case"JSXClosingElement":case"JSXElement":case"JSXEmptyExpression":case"JSXExpressionContainer":case"JSXSpreadChild":case"JSXIdentifier":case"JSXMemberExpression":case"JSXNamespacedName":case"JSXOpeningElement":case"JSXSpreadAttribute":case"JSXText":case"JSXFragment":case"JSXOpeningFragment":case"JSXClosingFragment":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isJSXAttribute=function(e,t){return!!e&&"JSXAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingElement=function(e,t){return!!e&&"JSXClosingElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXClosingFragment=function(e,t){return!!e&&"JSXClosingFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXElement=function(e,t){return!!e&&"JSXElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXEmptyExpression=function(e,t){return!!e&&"JSXEmptyExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXExpressionContainer=function(e,t){return!!e&&"JSXExpressionContainer"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXFragment=function(e,t){return!!e&&"JSXFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXIdentifier=function(e,t){return!!e&&"JSXIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXMemberExpression=function(e,t){return!!e&&"JSXMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXNamespacedName=function(e,t){return!!e&&"JSXNamespacedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningElement=function(e,t){return!!e&&"JSXOpeningElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXOpeningFragment=function(e,t){return!!e&&"JSXOpeningFragment"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadAttribute=function(e,t){return!!e&&"JSXSpreadAttribute"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXSpreadChild=function(e,t){return!!e&&"JSXSpreadChild"===e.type&&(null==t||(0,r.default)(e,t))},t.isJSXText=function(e,t){return!!e&&"JSXText"===e.type&&(null==t||(0,r.default)(e,t))},t.isLVal=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSParameterProperty":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLabeledStatement=function(e,t){return!!e&&"LabeledStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isLiteral=function(e,t){if(!e)return!1;switch(e.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isLogicalExpression=function(e,t){return!!e&&"LogicalExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isLoop=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMemberExpression=function(e,t){return!!e&&"MemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isMetaProperty=function(e,t){return!!e&&"MetaProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isMethod=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMiscellaneous=function(e,t){if(!e)return!1;switch(e.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isMixedTypeAnnotation=function(e,t){return!!e&&"MixedTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleDeclaration=function(e,t){return(0,a.default)("isModuleDeclaration","isImportOrExportDeclaration"),i(e,t)},t.isModuleExpression=function(e,t){return!!e&&"ModuleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isModuleSpecifier=function(e,t){if(!e)return!1;switch(e.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isNewExpression=function(e,t){return!!e&&"NewExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isNoop=function(e,t){return!!e&&"Noop"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteral=function(e,t){return!!e&&"NullLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullLiteralTypeAnnotation=function(e,t){return!!e&&"NullLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNullableTypeAnnotation=function(e,t){return!!e&&"NullableTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteral=function(e,t){return(0,a.default)("isNumberLiteral","isNumericLiteral"),!!e&&"NumberLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberLiteralTypeAnnotation=function(e,t){return!!e&&"NumberLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumberTypeAnnotation=function(e,t){return!!e&&"NumberTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isNumericLiteral=function(e,t){return!!e&&"NumericLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectExpression=function(e,t){return!!e&&"ObjectExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectMember=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isObjectMethod=function(e,t){return!!e&&"ObjectMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectPattern=function(e,t){return!!e&&"ObjectPattern"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectProperty=function(e,t){return!!e&&"ObjectProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeAnnotation=function(e,t){return!!e&&"ObjectTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeCallProperty=function(e,t){return!!e&&"ObjectTypeCallProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeIndexer=function(e,t){return!!e&&"ObjectTypeIndexer"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeInternalSlot=function(e,t){return!!e&&"ObjectTypeInternalSlot"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeProperty=function(e,t){return!!e&&"ObjectTypeProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isObjectTypeSpreadProperty=function(e,t){return!!e&&"ObjectTypeSpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isOpaqueType=function(e,t){return!!e&&"OpaqueType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalCallExpression=function(e,t){return!!e&&"OptionalCallExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalIndexedAccessType=function(e,t){return!!e&&"OptionalIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isOptionalMemberExpression=function(e,t){return!!e&&"OptionalMemberExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isParenthesizedExpression=function(e,t){return!!e&&"ParenthesizedExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPattern=function(e,t){if(!e)return!1;switch(e.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":break;case"Placeholder":if("Pattern"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPatternLike=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(e.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPipelineBareFunction=function(e,t){return!!e&&"PipelineBareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelinePrimaryTopicReference=function(e,t){return!!e&&"PipelinePrimaryTopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isPipelineTopicExpression=function(e,t){return!!e&&"PipelineTopicExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isPlaceholder=function(e,t){return!!e&&"Placeholder"===e.type&&(null==t||(0,r.default)(e,t))},t.isPrivate=function(e,t){if(!e)return!1;switch(e.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPrivateName=function(e,t){return!!e&&"PrivateName"===e.type&&(null==t||(0,r.default)(e,t))},t.isProgram=function(e,t){return!!e&&"Program"===e.type&&(null==t||(0,r.default)(e,t))},t.isProperty=function(e,t){if(!e)return!1;switch(e.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isPureish=function(e,t){if(!e)return!1;switch(e.type){case"FunctionDeclaration":case"FunctionExpression":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"ArrowFunctionExpression":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if("StringLiteral"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isQualifiedTypeIdentifier=function(e,t){return!!e&&"QualifiedTypeIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isRecordExpression=function(e,t){return!!e&&"RecordExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegExpLiteral=function(e,t){return!!e&&"RegExpLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRegexLiteral=function(e,t){return(0,a.default)("isRegexLiteral","isRegExpLiteral"),!!e&&"RegexLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestElement=function(e,t){return!!e&&"RestElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isRestProperty=function(e,t){return(0,a.default)("isRestProperty","isRestElement"),!!e&&"RestProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isReturnStatement=function(e,t){return!!e&&"ReturnStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isScopable=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"CatchClause":case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Program":case"ObjectMethod":case"SwitchStatement":case"WhileStatement":case"ArrowFunctionExpression":case"ClassExpression":case"ClassDeclaration":case"ForOfStatement":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;case"Placeholder":if("BlockStatement"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isSequenceExpression=function(e,t){return!!e&&"SequenceExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadElement=function(e,t){return!!e&&"SpreadElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSpreadProperty=function(e,t){return(0,a.default)("isSpreadProperty","isSpreadElement"),!!e&&"SpreadProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isStandardized=function(e,t){if(!e)return!1;switch(e.type){case"ArrayExpression":case"AssignmentExpression":case"BinaryExpression":case"InterpreterDirective":case"Directive":case"DirectiveLiteral":case"BlockStatement":case"BreakStatement":case"CallExpression":case"CatchClause":case"ConditionalExpression":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"File":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"FunctionExpression":case"Identifier":case"IfStatement":case"LabeledStatement":case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"LogicalExpression":case"MemberExpression":case"NewExpression":case"Program":case"ObjectExpression":case"ObjectMethod":case"ObjectProperty":case"RestElement":case"ReturnStatement":case"SequenceExpression":case"ParenthesizedExpression":case"SwitchCase":case"SwitchStatement":case"ThisExpression":case"ThrowStatement":case"TryStatement":case"UnaryExpression":case"UpdateExpression":case"VariableDeclaration":case"VariableDeclarator":case"WhileStatement":case"WithStatement":case"AssignmentPattern":case"ArrayPattern":case"ArrowFunctionExpression":case"ClassBody":case"ClassExpression":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ExportSpecifier":case"ForOfStatement":case"ImportDeclaration":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"MetaProperty":case"ClassMethod":case"ObjectPattern":case"SpreadElement":case"Super":case"TaggedTemplateExpression":case"TemplateElement":case"TemplateLiteral":case"YieldExpression":case"AwaitExpression":case"Import":case"BigIntLiteral":case"ExportNamespaceSpecifier":case"OptionalMemberExpression":case"OptionalCallExpression":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":case"StaticBlock":break;case"Placeholder":switch(e.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStatement=function(e,t){if(!e)return!1;switch(e.type){case"BlockStatement":case"BreakStatement":case"ContinueStatement":case"DebuggerStatement":case"DoWhileStatement":case"EmptyStatement":case"ExpressionStatement":case"ForInStatement":case"ForStatement":case"FunctionDeclaration":case"IfStatement":case"LabeledStatement":case"ReturnStatement":case"SwitchStatement":case"ThrowStatement":case"TryStatement":case"VariableDeclaration":case"WhileStatement":case"WithStatement":case"ClassDeclaration":case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ForOfStatement":case"ImportDeclaration":case"DeclareClass":case"DeclareFunction":case"DeclareInterface":case"DeclareModule":case"DeclareModuleExports":case"DeclareTypeAlias":case"DeclareOpaqueType":case"DeclareVariable":case"DeclareExportDeclaration":case"DeclareExportAllDeclaration":case"InterfaceDeclaration":case"OpaqueType":case"TypeAlias":case"EnumDeclaration":case"TSDeclareFunction":case"TSInterfaceDeclaration":case"TSTypeAliasDeclaration":case"TSEnumDeclaration":case"TSModuleDeclaration":case"TSImportEqualsDeclaration":case"TSExportAssignment":case"TSNamespaceExportDeclaration":break;case"Placeholder":switch(e.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return null==t||(0,r.default)(e,t)},t.isStaticBlock=function(e,t){return!!e&&"StaticBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteral=function(e,t){return!!e&&"StringLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringLiteralTypeAnnotation=function(e,t){return!!e&&"StringLiteralTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isStringTypeAnnotation=function(e,t){return!!e&&"StringTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isSuper=function(e,t){return!!e&&"Super"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchCase=function(e,t){return!!e&&"SwitchCase"===e.type&&(null==t||(0,r.default)(e,t))},t.isSwitchStatement=function(e,t){return!!e&&"SwitchStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isSymbolTypeAnnotation=function(e,t){return!!e&&"SymbolTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAnyKeyword=function(e,t){return!!e&&"TSAnyKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSArrayType=function(e,t){return!!e&&"TSArrayType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSAsExpression=function(e,t){return!!e&&"TSAsExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBaseType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSLiteralType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSBigIntKeyword=function(e,t){return!!e&&"TSBigIntKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSBooleanKeyword=function(e,t){return!!e&&"TSBooleanKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSCallSignatureDeclaration=function(e,t){return!!e&&"TSCallSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConditionalType=function(e,t){return!!e&&"TSConditionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructSignatureDeclaration=function(e,t){return!!e&&"TSConstructSignatureDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSConstructorType=function(e,t){return!!e&&"TSConstructorType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareFunction=function(e,t){return!!e&&"TSDeclareFunction"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSDeclareMethod=function(e,t){return!!e&&"TSDeclareMethod"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEntityName=function(e,t){if(!e)return!1;switch(e.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if("Identifier"===e.expectedNode)break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSEnumDeclaration=function(e,t){return!!e&&"TSEnumDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSEnumMember=function(e,t){return!!e&&"TSEnumMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExportAssignment=function(e,t){return!!e&&"TSExportAssignment"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExpressionWithTypeArguments=function(e,t){return!!e&&"TSExpressionWithTypeArguments"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSExternalModuleReference=function(e,t){return!!e&&"TSExternalModuleReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSFunctionType=function(e,t){return!!e&&"TSFunctionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportEqualsDeclaration=function(e,t){return!!e&&"TSImportEqualsDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSImportType=function(e,t){return!!e&&"TSImportType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexSignature=function(e,t){return!!e&&"TSIndexSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIndexedAccessType=function(e,t){return!!e&&"TSIndexedAccessType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInferType=function(e,t){return!!e&&"TSInferType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInstantiationExpression=function(e,t){return!!e&&"TSInstantiationExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceBody=function(e,t){return!!e&&"TSInterfaceBody"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSInterfaceDeclaration=function(e,t){return!!e&&"TSInterfaceDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntersectionType=function(e,t){return!!e&&"TSIntersectionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSIntrinsicKeyword=function(e,t){return!!e&&"TSIntrinsicKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSLiteralType=function(e,t){return!!e&&"TSLiteralType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMappedType=function(e,t){return!!e&&"TSMappedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSMethodSignature=function(e,t){return!!e&&"TSMethodSignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleBlock=function(e,t){return!!e&&"TSModuleBlock"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSModuleDeclaration=function(e,t){return!!e&&"TSModuleDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamedTupleMember=function(e,t){return!!e&&"TSNamedTupleMember"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNamespaceExportDeclaration=function(e,t){return!!e&&"TSNamespaceExportDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNeverKeyword=function(e,t){return!!e&&"TSNeverKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNonNullExpression=function(e,t){return!!e&&"TSNonNullExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNullKeyword=function(e,t){return!!e&&"TSNullKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSNumberKeyword=function(e,t){return!!e&&"TSNumberKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSObjectKeyword=function(e,t){return!!e&&"TSObjectKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSOptionalType=function(e,t){return!!e&&"TSOptionalType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParameterProperty=function(e,t){return!!e&&"TSParameterProperty"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSParenthesizedType=function(e,t){return!!e&&"TSParenthesizedType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSPropertySignature=function(e,t){return!!e&&"TSPropertySignature"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSQualifiedName=function(e,t){return!!e&&"TSQualifiedName"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSRestType=function(e,t){return!!e&&"TSRestType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSatisfiesExpression=function(e,t){return!!e&&"TSSatisfiesExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSStringKeyword=function(e,t){return!!e&&"TSStringKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSSymbolKeyword=function(e,t){return!!e&&"TSSymbolKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSThisType=function(e,t){return!!e&&"TSThisType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTupleType=function(e,t){return!!e&&"TSTupleType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSType=function(e,t){if(!e)return!1;switch(e.type){case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSImportType":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeAliasDeclaration=function(e,t){return!!e&&"TSTypeAliasDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAnnotation=function(e,t){return!!e&&"TSTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeAssertion=function(e,t){return!!e&&"TSTypeAssertion"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeElement=function(e,t){if(!e)return!1;switch(e.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTSTypeLiteral=function(e,t){return!!e&&"TSTypeLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeOperator=function(e,t){return!!e&&"TSTypeOperator"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameter=function(e,t){return!!e&&"TSTypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterDeclaration=function(e,t){return!!e&&"TSTypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeParameterInstantiation=function(e,t){return!!e&&"TSTypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypePredicate=function(e,t){return!!e&&"TSTypePredicate"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeQuery=function(e,t){return!!e&&"TSTypeQuery"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSTypeReference=function(e,t){return!!e&&"TSTypeReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUndefinedKeyword=function(e,t){return!!e&&"TSUndefinedKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnionType=function(e,t){return!!e&&"TSUnionType"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSUnknownKeyword=function(e,t){return!!e&&"TSUnknownKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTSVoidKeyword=function(e,t){return!!e&&"TSVoidKeyword"===e.type&&(null==t||(0,r.default)(e,t))},t.isTaggedTemplateExpression=function(e,t){return!!e&&"TaggedTemplateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateElement=function(e,t){return!!e&&"TemplateElement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTemplateLiteral=function(e,t){return!!e&&"TemplateLiteral"===e.type&&(null==t||(0,r.default)(e,t))},t.isTerminatorless=function(e,t){if(!e)return!1;switch(e.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isThisExpression=function(e,t){return!!e&&"ThisExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isThisTypeAnnotation=function(e,t){return!!e&&"ThisTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isThrowStatement=function(e,t){return!!e&&"ThrowStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTopicReference=function(e,t){return!!e&&"TopicReference"===e.type&&(null==t||(0,r.default)(e,t))},t.isTryStatement=function(e,t){return!!e&&"TryStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleExpression=function(e,t){return!!e&&"TupleExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTupleTypeAnnotation=function(e,t){return!!e&&"TupleTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAlias=function(e,t){return!!e&&"TypeAlias"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeAnnotation=function(e,t){return!!e&&"TypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeCastExpression=function(e,t){return!!e&&"TypeCastExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameter=function(e,t){return!!e&&"TypeParameter"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterDeclaration=function(e,t){return!!e&&"TypeParameterDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeParameterInstantiation=function(e,t){return!!e&&"TypeParameterInstantiation"===e.type&&(null==t||(0,r.default)(e,t))},t.isTypeScript=function(e,t){if(!e)return!1;switch(e.type){case"TSParameterProperty":case"TSDeclareFunction":case"TSDeclareMethod":case"TSQualifiedName":case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":case"TSAnyKeyword":case"TSBooleanKeyword":case"TSBigIntKeyword":case"TSIntrinsicKeyword":case"TSNeverKeyword":case"TSNullKeyword":case"TSNumberKeyword":case"TSObjectKeyword":case"TSStringKeyword":case"TSSymbolKeyword":case"TSUndefinedKeyword":case"TSUnknownKeyword":case"TSVoidKeyword":case"TSThisType":case"TSFunctionType":case"TSConstructorType":case"TSTypeReference":case"TSTypePredicate":case"TSTypeQuery":case"TSTypeLiteral":case"TSArrayType":case"TSTupleType":case"TSOptionalType":case"TSRestType":case"TSNamedTupleMember":case"TSUnionType":case"TSIntersectionType":case"TSConditionalType":case"TSInferType":case"TSParenthesizedType":case"TSTypeOperator":case"TSIndexedAccessType":case"TSMappedType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSInterfaceDeclaration":case"TSInterfaceBody":case"TSTypeAliasDeclaration":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSEnumDeclaration":case"TSEnumMember":case"TSModuleDeclaration":case"TSModuleBlock":case"TSImportType":case"TSImportEqualsDeclaration":case"TSExternalModuleReference":case"TSNonNullExpression":case"TSExportAssignment":case"TSNamespaceExportDeclaration":case"TSTypeAnnotation":case"TSTypeParameterInstantiation":case"TSTypeParameterDeclaration":case"TSTypeParameter":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isTypeofTypeAnnotation=function(e,t){return!!e&&"TypeofTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryExpression=function(e,t){return!!e&&"UnaryExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUnaryLike=function(e,t){if(!e)return!1;switch(e.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isUnionTypeAnnotation=function(e,t){return!!e&&"UnionTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isUpdateExpression=function(e,t){return!!e&&"UpdateExpression"===e.type&&(null==t||(0,r.default)(e,t))},t.isUserWhitespacable=function(e,t){if(!e)return!1;switch(e.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isV8IntrinsicIdentifier=function(e,t){return!!e&&"V8IntrinsicIdentifier"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclaration=function(e,t){return!!e&&"VariableDeclaration"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariableDeclarator=function(e,t){return!!e&&"VariableDeclarator"===e.type&&(null==t||(0,r.default)(e,t))},t.isVariance=function(e,t){return!!e&&"Variance"===e.type&&(null==t||(0,r.default)(e,t))},t.isVoidTypeAnnotation=function(e,t){return!!e&&"VoidTypeAnnotation"===e.type&&(null==t||(0,r.default)(e,t))},t.isWhile=function(e,t){if(!e)return!1;switch(e.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return null==t||(0,r.default)(e,t)},t.isWhileStatement=function(e,t){return!!e&&"WhileStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isWithStatement=function(e,t){return!!e&&"WithStatement"===e.type&&(null==t||(0,r.default)(e,t))},t.isYieldExpression=function(e,t){return!!e&&"YieldExpression"===e.type&&(null==t||(0,r.default)(e,t))};var r=n(49639),a=n(92821);function i(e,t){if(!e)return!1;switch(e.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return null==t||(0,r.default)(e,t)}},92378:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){return!!t&&((0,a.default)(t.type,e)?void 0===n||(0,r.default)(t,n):!n&&"Placeholder"===t.type&&e in s.FLIPPED_ALIAS_KEYS&&(0,i.default)(t.expectedNode,e))};var r=n(49639),a=n(78172),i=n(29746),s=n(43341)},53461:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(n&&"Identifier"===e.type&&"ObjectProperty"===t.type&&"ObjectExpression"===n.type)return!1;const a=r.default.keys[t.type];if(a)for(let n=0;n<a.length;n++){const r=t[a[n]];if(Array.isArray(r)){if(r.indexOf(e)>=0)return!0}else if(r===e)return!0}return!1};var r=n(61311)},46509:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isFunctionDeclaration)(e)||(0,r.isClassDeclaration)(e)||(0,a.default)(e)};var r=n(16500),a=n(10839)},84254:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!(0,r.default)(e.type,"Immutable")||!!(0,a.isIdentifier)(e)&&"undefined"===e.name};var r=n(78172),a=n(16500)},10839:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e)&&("var"!==e.kind||e[a.BLOCK_SCOPED_SYMBOL])};var r=n(16500),a=n(18718)},67509:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!(!e||!r.VISITOR_KEYS[e.type])};var r=n(43341)},94338:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function e(t,n){if("object"!=typeof t||"object"!=typeof n||null==t||null==n)return t===n;if(t.type!==n.type)return!1;const a=Object.keys(r.NODE_FIELDS[t.type]||t.type),i=r.VISITOR_KEYS[t.type];for(const r of a){const a=t[r],s=n[r];if(typeof a!=typeof s)return!1;if(null!=a||null!=s){if(null==a||null==s)return!1;if(Array.isArray(a)){if(!Array.isArray(s))return!1;if(a.length!==s.length)return!1;for(let t=0;t<a.length;t++)if(!e(a[t],s[t]))return!1}else if("object"!=typeof a||null!=i&&i.includes(r)){if(!e(a,s))return!1}else for(const e of Object.keys(a))if(a[e]!==s[e])return!1}}return!0};var r=n(43341)},29746:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;const n=r.PLACEHOLDERS_ALIAS[e];if(n)for(const e of n)if(t===e)return!0;return!1};var r=n(43341)},91108:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){switch(t.type){case"MemberExpression":case"OptionalMemberExpression":return t.property===e?!!t.computed:t.object===e;case"JSXMemberExpression":return t.object===e;case"VariableDeclarator":return t.init===e;case"ArrowFunctionExpression":return t.body===e;case"PrivateName":case"LabeledStatement":case"CatchClause":case"RestElement":case"BreakStatement":case"ContinueStatement":case"FunctionDeclaration":case"FunctionExpression":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ImportAttribute":case"JSXAttribute":case"ObjectPattern":case"ArrayPattern":case"MetaProperty":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return t.key===e&&!!t.computed;case"ObjectProperty":return t.key===e?!!t.computed:!n||"ObjectPattern"!==n.type;case"ClassProperty":case"ClassAccessorProperty":case"TSPropertySignature":return t.key!==e||!!t.computed;case"ClassPrivateProperty":case"ObjectTypeProperty":return t.key!==e;case"ClassDeclaration":case"ClassExpression":return t.superClass===e;case"AssignmentExpression":case"AssignmentPattern":return t.right===e;case"ExportSpecifier":return(null==n||!n.source)&&t.local===e;case"TSEnumMember":return t.id!==e}return!0}},23207:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){return(!(0,r.isBlockStatement)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))&&(!(!(0,r.isPattern)(e)||!(0,r.isFunction)(t)&&!(0,r.isCatchClause)(t))||(0,r.isScopable)(e))};var r=n(16500)},63430:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isImportDefaultSpecifier)(e)||(0,r.isIdentifier)(e.imported||e.exported,{name:"default"})};var r=n(16500)},78172:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(e===t)return!0;if(null==e)return!1;if(r.ALIAS_KEYS[t])return!1;const n=r.FLIPPED_ALIAS_KEYS[t];if(n){if(n[0]===e)return!0;for(const t of n)if(e===t)return!0}return!1};var r=n(43341)},8688:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.default)(e)&&!a.has(e)};var r=n(6530);const a=new Set(["abstract","boolean","byte","char","double","enum","final","float","goto","implements","int","interface","long","native","package","private","protected","public","short","static","synchronized","throws","transient","volatile"])},6530:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t=!0){return"string"==typeof e&&((!t||!(0,r.isKeyword)(e)&&!(0,r.isStrictReservedWord)(e,!0))&&(0,r.isIdentifierName)(e))};var r=n(29649)},85819:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return(0,r.isVariableDeclaration)(e,{kind:"var"})&&!e[a.BLOCK_SCOPED_SYMBOL]};var r=n(16500),a=n(18718)},28328:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!(0,r.isMemberExpression)(e))return!1;const a=Array.isArray(t)?t:t.split("."),i=[];let s;for(s=e;(0,r.isMemberExpression)(s);s=s.object)i.push(s.property);if(i.push(s),i.length<a.length)return!1;if(!n&&i.length>a.length)return!1;for(let e=0,t=i.length-1;e<a.length;e++,t--){const n=i[t];let s;if((0,r.isIdentifier)(n))s=n.name;else if((0,r.isStringLiteral)(n))s=n.value;else{if(!(0,r.isThisExpression)(n))return!1;s="this"}if(a[e]!==s)return!1}return!0};var r=n(16500)},92519:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return!!e&&/^[a-z]/.test(e)}},48141:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=(0,n(39519).default)("React.Component");t.default=r},49164:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,n){if(!e)return;const s=r.NODE_FIELDS[e.type];if(!s)return;a(e,t,n,s[t]),i(e,t,n)},t.validateChild=i,t.validateField=a;var r=n(43341);function a(e,t,n,r){null!=r&&r.validate&&(r.optional&&null==n||r.validate(e,t,n))}function i(e,t,n){if(null==n)return;const a=r.NODE_PARENT_VALIDATIONS[n.type];a&&a(e,t,n)}},38487:e=>{"use strict";e.exports=JSON.parse('{"builtin":{"Array":false,"ArrayBuffer":false,"Atomics":false,"BigInt":false,"BigInt64Array":false,"BigUint64Array":false,"Boolean":false,"constructor":false,"DataView":false,"Date":false,"decodeURI":false,"decodeURIComponent":false,"encodeURI":false,"encodeURIComponent":false,"Error":false,"escape":false,"eval":false,"EvalError":false,"Float32Array":false,"Float64Array":false,"Function":false,"globalThis":false,"hasOwnProperty":false,"Infinity":false,"Int16Array":false,"Int32Array":false,"Int8Array":false,"isFinite":false,"isNaN":false,"isPrototypeOf":false,"JSON":false,"Map":false,"Math":false,"NaN":false,"Number":false,"Object":false,"parseFloat":false,"parseInt":false,"Promise":false,"propertyIsEnumerable":false,"Proxy":false,"RangeError":false,"ReferenceError":false,"Reflect":false,"RegExp":false,"Set":false,"SharedArrayBuffer":false,"String":false,"Symbol":false,"SyntaxError":false,"toLocaleString":false,"toString":false,"TypeError":false,"Uint16Array":false,"Uint32Array":false,"Uint8Array":false,"Uint8ClampedArray":false,"undefined":false,"unescape":false,"URIError":false,"valueOf":false,"WeakMap":false,"WeakSet":false},"es5":{"Array":false,"Boolean":false,"constructor":false,"Date":false,"decodeURI":false,"decodeURIComponent":false,"encodeURI":false,"encodeURIComponent":false,"Error":false,"escape":false,"eval":false,"EvalError":false,"Function":false,"hasOwnProperty":false,"Infinity":false,"isFinite":false,"isNaN":false,"isPrototypeOf":false,"JSON":false,"Math":false,"NaN":false,"Number":false,"Object":false,"parseFloat":false,"parseInt":false,"propertyIsEnumerable":false,"RangeError":false,"ReferenceError":false,"RegExp":false,"String":false,"SyntaxError":false,"toLocaleString":false,"toString":false,"TypeError":false,"undefined":false,"unescape":false,"URIError":false,"valueOf":false},"es2015":{"Array":false,"ArrayBuffer":false,"Boolean":false,"constructor":false,"DataView":false,"Date":false,"decodeURI":false,"decodeURIComponent":false,"encodeURI":false,"encodeURIComponent":false,"Error":false,"escape":false,"eval":false,"EvalError":false,"Float32Array":false,"Float64Array":false,"Function":false,"hasOwnProperty":false,"Infinity":false,"Int16Array":false,"Int32Array":false,"Int8Array":false,"isFinite":false,"isNaN":false,"isPrototypeOf":false,"JSON":false,"Map":false,"Math":false,"NaN":false,"Number":false,"Object":false,"parseFloat":false,"parseInt":false,"Promise":false,"propertyIsEnumerable":false,"Proxy":false,"RangeError":false,"ReferenceError":false,"Reflect":false,"RegExp":false,"Set":false,"String":false,"Symbol":false,"SyntaxError":false,"toLocaleString":false,"toString":false,"TypeError":false,"Uint16Array":false,"Uint32Array":false,"Uint8Array":false,"Uint8ClampedArray":false,"undefined":false,"unescape":false,"URIError":false,"valueOf":false,"WeakMap":false,"WeakSet":false},"es2017":{"Array":false,"ArrayBuffer":false,"Atomics":false,"Boolean":false,"constructor":false,"DataView":false,"Date":false,"decodeURI":false,"decodeURIComponent":false,"encodeURI":false,"encodeURIComponent":false,"Error":false,"escape":false,"eval":false,"EvalError":false,"Float32Array":false,"Float64Array":false,"Function":false,"hasOwnProperty":false,"Infinity":false,"Int16Array":false,"Int32Array":false,"Int8Array":false,"isFinite":false,"isNaN":false,"isPrototypeOf":false,"JSON":false,"Map":false,"Math":false,"NaN":false,"Number":false,"Object":false,"parseFloat":false,"parseInt":false,"Promise":false,"propertyIsEnumerable":false,"Proxy":false,"RangeError":false,"ReferenceError":false,"Reflect":false,"RegExp":false,"Set":false,"SharedArrayBuffer":false,"String":false,"Symbol":false,"SyntaxError":false,"toLocaleString":false,"toString":false,"TypeError":false,"Uint16Array":false,"Uint32Array":false,"Uint8Array":false,"Uint8ClampedArray":false,"undefined":false,"unescape":false,"URIError":false,"valueOf":false,"WeakMap":false,"WeakSet":false},"browser":{"AbortController":false,"AbortSignal":false,"addEventListener":false,"alert":false,"AnalyserNode":false,"Animation":false,"AnimationEffectReadOnly":false,"AnimationEffectTiming":false,"AnimationEffectTimingReadOnly":false,"AnimationEvent":false,"AnimationPlaybackEvent":false,"AnimationTimeline":false,"applicationCache":false,"ApplicationCache":false,"ApplicationCacheErrorEvent":false,"atob":false,"Attr":false,"Audio":false,"AudioBuffer":false,"AudioBufferSourceNode":false,"AudioContext":false,"AudioDestinationNode":false,"AudioListener":false,"AudioNode":false,"AudioParam":false,"AudioProcessingEvent":false,"AudioScheduledSourceNode":false,"AudioWorkletGlobalScope ":false,"AudioWorkletNode":false,"AudioWorkletProcessor":false,"BarProp":false,"BaseAudioContext":false,"BatteryManager":false,"BeforeUnloadEvent":false,"BiquadFilterNode":false,"Blob":false,"BlobEvent":false,"blur":false,"BroadcastChannel":false,"btoa":false,"BudgetService":false,"ByteLengthQueuingStrategy":false,"Cache":false,"caches":false,"CacheStorage":false,"cancelAnimationFrame":false,"cancelIdleCallback":false,"CanvasCaptureMediaStreamTrack":false,"CanvasGradient":false,"CanvasPattern":false,"CanvasRenderingContext2D":false,"ChannelMergerNode":false,"ChannelSplitterNode":false,"CharacterData":false,"clearInterval":false,"clearTimeout":false,"clientInformation":false,"ClipboardEvent":false,"close":false,"closed":false,"CloseEvent":false,"Comment":false,"CompositionEvent":false,"confirm":false,"console":false,"ConstantSourceNode":false,"ConvolverNode":false,"CountQueuingStrategy":false,"createImageBitmap":false,"Credential":false,"CredentialsContainer":false,"crypto":false,"Crypto":false,"CryptoKey":false,"CSS":false,"CSSConditionRule":false,"CSSFontFaceRule":false,"CSSGroupingRule":false,"CSSImportRule":false,"CSSKeyframeRule":false,"CSSKeyframesRule":false,"CSSMediaRule":false,"CSSNamespaceRule":false,"CSSPageRule":false,"CSSRule":false,"CSSRuleList":false,"CSSStyleDeclaration":false,"CSSStyleRule":false,"CSSStyleSheet":false,"CSSSupportsRule":false,"CustomElementRegistry":false,"customElements":false,"CustomEvent":false,"DataTransfer":false,"DataTransferItem":false,"DataTransferItemList":false,"defaultstatus":false,"defaultStatus":false,"DelayNode":false,"DeviceMotionEvent":false,"DeviceOrientationEvent":false,"devicePixelRatio":false,"dispatchEvent":false,"document":false,"Document":false,"DocumentFragment":false,"DocumentType":false,"DOMError":false,"DOMException":false,"DOMImplementation":false,"DOMMatrix":false,"DOMMatrixReadOnly":false,"DOMParser":false,"DOMPoint":false,"DOMPointReadOnly":false,"DOMQuad":false,"DOMRect":false,"DOMRectReadOnly":false,"DOMStringList":false,"DOMStringMap":false,"DOMTokenList":false,"DragEvent":false,"DynamicsCompressorNode":false,"Element":false,"ErrorEvent":false,"event":false,"Event":false,"EventSource":false,"EventTarget":false,"external":false,"fetch":false,"File":false,"FileList":false,"FileReader":false,"find":false,"focus":false,"FocusEvent":false,"FontFace":false,"FontFaceSetLoadEvent":false,"FormData":false,"frameElement":false,"frames":false,"GainNode":false,"Gamepad":false,"GamepadButton":false,"GamepadEvent":false,"getComputedStyle":false,"getSelection":false,"HashChangeEvent":false,"Headers":false,"history":false,"History":false,"HTMLAllCollection":false,"HTMLAnchorElement":false,"HTMLAreaElement":false,"HTMLAudioElement":false,"HTMLBaseElement":false,"HTMLBodyElement":false,"HTMLBRElement":false,"HTMLButtonElement":false,"HTMLCanvasElement":false,"HTMLCollection":false,"HTMLContentElement":false,"HTMLDataElement":false,"HTMLDataListElement":false,"HTMLDetailsElement":false,"HTMLDialogElement":false,"HTMLDirectoryElement":false,"HTMLDivElement":false,"HTMLDListElement":false,"HTMLDocument":false,"HTMLElement":false,"HTMLEmbedElement":false,"HTMLFieldSetElement":false,"HTMLFontElement":false,"HTMLFormControlsCollection":false,"HTMLFormElement":false,"HTMLFrameElement":false,"HTMLFrameSetElement":false,"HTMLHeadElement":false,"HTMLHeadingElement":false,"HTMLHRElement":false,"HTMLHtmlElement":false,"HTMLIFrameElement":false,"HTMLImageElement":false,"HTMLInputElement":false,"HTMLLabelElement":false,"HTMLLegendElement":false,"HTMLLIElement":false,"HTMLLinkElement":false,"HTMLMapElement":false,"HTMLMarqueeElement":false,"HTMLMediaElement":false,"HTMLMenuElement":false,"HTMLMetaElement":false,"HTMLMeterElement":false,"HTMLModElement":false,"HTMLObjectElement":false,"HTMLOListElement":false,"HTMLOptGroupElement":false,"HTMLOptionElement":false,"HTMLOptionsCollection":false,"HTMLOutputElement":false,"HTMLParagraphElement":false,"HTMLParamElement":false,"HTMLPictureElement":false,"HTMLPreElement":false,"HTMLProgressElement":false,"HTMLQuoteElement":false,"HTMLScriptElement":false,"HTMLSelectElement":false,"HTMLShadowElement":false,"HTMLSlotElement":false,"HTMLSourceElement":false,"HTMLSpanElement":false,"HTMLStyleElement":false,"HTMLTableCaptionElement":false,"HTMLTableCellElement":false,"HTMLTableColElement":false,"HTMLTableElement":false,"HTMLTableRowElement":false,"HTMLTableSectionElement":false,"HTMLTemplateElement":false,"HTMLTextAreaElement":false,"HTMLTimeElement":false,"HTMLTitleElement":false,"HTMLTrackElement":false,"HTMLUListElement":false,"HTMLUnknownElement":false,"HTMLVideoElement":false,"IDBCursor":false,"IDBCursorWithValue":false,"IDBDatabase":false,"IDBFactory":false,"IDBIndex":false,"IDBKeyRange":false,"IDBObjectStore":false,"IDBOpenDBRequest":false,"IDBRequest":false,"IDBTransaction":false,"IDBVersionChangeEvent":false,"IdleDeadline":false,"IIRFilterNode":false,"Image":false,"ImageBitmap":false,"ImageBitmapRenderingContext":false,"ImageCapture":false,"ImageData":false,"indexedDB":false,"innerHeight":false,"innerWidth":false,"InputEvent":false,"IntersectionObserver":false,"IntersectionObserverEntry":false,"Intl":false,"isSecureContext":false,"KeyboardEvent":false,"KeyframeEffect":false,"KeyframeEffectReadOnly":false,"length":false,"localStorage":false,"location":true,"Location":false,"locationbar":false,"matchMedia":false,"MediaDeviceInfo":false,"MediaDevices":false,"MediaElementAudioSourceNode":false,"MediaEncryptedEvent":false,"MediaError":false,"MediaKeyMessageEvent":false,"MediaKeySession":false,"MediaKeyStatusMap":false,"MediaKeySystemAccess":false,"MediaList":false,"MediaQueryList":false,"MediaQueryListEvent":false,"MediaRecorder":false,"MediaSettingsRange":false,"MediaSource":false,"MediaStream":false,"MediaStreamAudioDestinationNode":false,"MediaStreamAudioSourceNode":false,"MediaStreamEvent":false,"MediaStreamTrack":false,"MediaStreamTrackEvent":false,"menubar":false,"MessageChannel":false,"MessageEvent":false,"MessagePort":false,"MIDIAccess":false,"MIDIConnectionEvent":false,"MIDIInput":false,"MIDIInputMap":false,"MIDIMessageEvent":false,"MIDIOutput":false,"MIDIOutputMap":false,"MIDIPort":false,"MimeType":false,"MimeTypeArray":false,"MouseEvent":false,"moveBy":false,"moveTo":false,"MutationEvent":false,"MutationObserver":false,"MutationRecord":false,"name":false,"NamedNodeMap":false,"NavigationPreloadManager":false,"navigator":false,"Navigator":false,"NetworkInformation":false,"Node":false,"NodeFilter":false,"NodeIterator":false,"NodeList":false,"Notification":false,"OfflineAudioCompletionEvent":false,"OfflineAudioContext":false,"offscreenBuffering":false,"OffscreenCanvas":true,"onabort":true,"onafterprint":true,"onanimationend":true,"onanimationiteration":true,"onanimationstart":true,"onappinstalled":true,"onauxclick":true,"onbeforeinstallprompt":true,"onbeforeprint":true,"onbeforeunload":true,"onblur":true,"oncancel":true,"oncanplay":true,"oncanplaythrough":true,"onchange":true,"onclick":true,"onclose":true,"oncontextmenu":true,"oncuechange":true,"ondblclick":true,"ondevicemotion":true,"ondeviceorientation":true,"ondeviceorientationabsolute":true,"ondrag":true,"ondragend":true,"ondragenter":true,"ondragleave":true,"ondragover":true,"ondragstart":true,"ondrop":true,"ondurationchange":true,"onemptied":true,"onended":true,"onerror":true,"onfocus":true,"ongotpointercapture":true,"onhashchange":true,"oninput":true,"oninvalid":true,"onkeydown":true,"onkeypress":true,"onkeyup":true,"onlanguagechange":true,"onload":true,"onloadeddata":true,"onloadedmetadata":true,"onloadstart":true,"onlostpointercapture":true,"onmessage":true,"onmessageerror":true,"onmousedown":true,"onmouseenter":true,"onmouseleave":true,"onmousemove":true,"onmouseout":true,"onmouseover":true,"onmouseup":true,"onmousewheel":true,"onoffline":true,"ononline":true,"onpagehide":true,"onpageshow":true,"onpause":true,"onplay":true,"onplaying":true,"onpointercancel":true,"onpointerdown":true,"onpointerenter":true,"onpointerleave":true,"onpointermove":true,"onpointerout":true,"onpointerover":true,"onpointerup":true,"onpopstate":true,"onprogress":true,"onratechange":true,"onrejectionhandled":true,"onreset":true,"onresize":true,"onscroll":true,"onsearch":true,"onseeked":true,"onseeking":true,"onselect":true,"onstalled":true,"onstorage":true,"onsubmit":true,"onsuspend":true,"ontimeupdate":true,"ontoggle":true,"ontransitionend":true,"onunhandledrejection":true,"onunload":true,"onvolumechange":true,"onwaiting":true,"onwheel":true,"open":false,"openDatabase":false,"opener":false,"Option":false,"origin":false,"OscillatorNode":false,"outerHeight":false,"outerWidth":false,"PageTransitionEvent":false,"pageXOffset":false,"pageYOffset":false,"PannerNode":false,"parent":false,"Path2D":false,"PaymentAddress":false,"PaymentRequest":false,"PaymentRequestUpdateEvent":false,"PaymentResponse":false,"performance":false,"Performance":false,"PerformanceEntry":false,"PerformanceLongTaskTiming":false,"PerformanceMark":false,"PerformanceMeasure":false,"PerformanceNavigation":false,"PerformanceNavigationTiming":false,"PerformanceObserver":false,"PerformanceObserverEntryList":false,"PerformancePaintTiming":false,"PerformanceResourceTiming":false,"PerformanceTiming":false,"PeriodicWave":false,"Permissions":false,"PermissionStatus":false,"personalbar":false,"PhotoCapabilities":false,"Plugin":false,"PluginArray":false,"PointerEvent":false,"PopStateEvent":false,"postMessage":false,"Presentation":false,"PresentationAvailability":false,"PresentationConnection":false,"PresentationConnectionAvailableEvent":false,"PresentationConnectionCloseEvent":false,"PresentationConnectionList":false,"PresentationReceiver":false,"PresentationRequest":false,"print":false,"ProcessingInstruction":false,"ProgressEvent":false,"PromiseRejectionEvent":false,"prompt":false,"PushManager":false,"PushSubscription":false,"PushSubscriptionOptions":false,"queueMicrotask":false,"RadioNodeList":false,"Range":false,"ReadableStream":false,"registerProcessor":false,"RemotePlayback":false,"removeEventListener":false,"Request":false,"requestAnimationFrame":false,"requestIdleCallback":false,"resizeBy":false,"ResizeObserver":false,"ResizeObserverEntry":false,"resizeTo":false,"Response":false,"RTCCertificate":false,"RTCDataChannel":false,"RTCDataChannelEvent":false,"RTCDtlsTransport":false,"RTCIceCandidate":false,"RTCIceGatherer":false,"RTCIceTransport":false,"RTCPeerConnection":false,"RTCPeerConnectionIceEvent":false,"RTCRtpContributingSource":false,"RTCRtpReceiver":false,"RTCRtpSender":false,"RTCSctpTransport":false,"RTCSessionDescription":false,"RTCStatsReport":false,"RTCTrackEvent":false,"screen":false,"Screen":false,"screenLeft":false,"ScreenOrientation":false,"screenTop":false,"screenX":false,"screenY":false,"ScriptProcessorNode":false,"scroll":false,"scrollbars":false,"scrollBy":false,"scrollTo":false,"scrollX":false,"scrollY":false,"SecurityPolicyViolationEvent":false,"Selection":false,"self":false,"ServiceWorker":false,"ServiceWorkerContainer":false,"ServiceWorkerRegistration":false,"sessionStorage":false,"setInterval":false,"setTimeout":false,"ShadowRoot":false,"SharedWorker":false,"SourceBuffer":false,"SourceBufferList":false,"speechSynthesis":false,"SpeechSynthesisEvent":false,"SpeechSynthesisUtterance":false,"StaticRange":false,"status":false,"statusbar":false,"StereoPannerNode":false,"stop":false,"Storage":false,"StorageEvent":false,"StorageManager":false,"styleMedia":false,"StyleSheet":false,"StyleSheetList":false,"SubtleCrypto":false,"SVGAElement":false,"SVGAngle":false,"SVGAnimatedAngle":false,"SVGAnimatedBoolean":false,"SVGAnimatedEnumeration":false,"SVGAnimatedInteger":false,"SVGAnimatedLength":false,"SVGAnimatedLengthList":false,"SVGAnimatedNumber":false,"SVGAnimatedNumberList":false,"SVGAnimatedPreserveAspectRatio":false,"SVGAnimatedRect":false,"SVGAnimatedString":false,"SVGAnimatedTransformList":false,"SVGAnimateElement":false,"SVGAnimateMotionElement":false,"SVGAnimateTransformElement":false,"SVGAnimationElement":false,"SVGCircleElement":false,"SVGClipPathElement":false,"SVGComponentTransferFunctionElement":false,"SVGDefsElement":false,"SVGDescElement":false,"SVGDiscardElement":false,"SVGElement":false,"SVGEllipseElement":false,"SVGFEBlendElement":false,"SVGFEColorMatrixElement":false,"SVGFEComponentTransferElement":false,"SVGFECompositeElement":false,"SVGFEConvolveMatrixElement":false,"SVGFEDiffuseLightingElement":false,"SVGFEDisplacementMapElement":false,"SVGFEDistantLightElement":false,"SVGFEDropShadowElement":false,"SVGFEFloodElement":false,"SVGFEFuncAElement":false,"SVGFEFuncBElement":false,"SVGFEFuncGElement":false,"SVGFEFuncRElement":false,"SVGFEGaussianBlurElement":false,"SVGFEImageElement":false,"SVGFEMergeElement":false,"SVGFEMergeNodeElement":false,"SVGFEMorphologyElement":false,"SVGFEOffsetElement":false,"SVGFEPointLightElement":false,"SVGFESpecularLightingElement":false,"SVGFESpotLightElement":false,"SVGFETileElement":false,"SVGFETurbulenceElement":false,"SVGFilterElement":false,"SVGForeignObjectElement":false,"SVGGElement":false,"SVGGeometryElement":false,"SVGGradientElement":false,"SVGGraphicsElement":false,"SVGImageElement":false,"SVGLength":false,"SVGLengthList":false,"SVGLinearGradientElement":false,"SVGLineElement":false,"SVGMarkerElement":false,"SVGMaskElement":false,"SVGMatrix":false,"SVGMetadataElement":false,"SVGMPathElement":false,"SVGNumber":false,"SVGNumberList":false,"SVGPathElement":false,"SVGPatternElement":false,"SVGPoint":false,"SVGPointList":false,"SVGPolygonElement":false,"SVGPolylineElement":false,"SVGPreserveAspectRatio":false,"SVGRadialGradientElement":false,"SVGRect":false,"SVGRectElement":false,"SVGScriptElement":false,"SVGSetElement":false,"SVGStopElement":false,"SVGStringList":false,"SVGStyleElement":false,"SVGSVGElement":false,"SVGSwitchElement":false,"SVGSymbolElement":false,"SVGTextContentElement":false,"SVGTextElement":false,"SVGTextPathElement":false,"SVGTextPositioningElement":false,"SVGTitleElement":false,"SVGTransform":false,"SVGTransformList":false,"SVGTSpanElement":false,"SVGUnitTypes":false,"SVGUseElement":false,"SVGViewElement":false,"TaskAttributionTiming":false,"Text":false,"TextDecoder":false,"TextEncoder":false,"TextEvent":false,"TextMetrics":false,"TextTrack":false,"TextTrackCue":false,"TextTrackCueList":false,"TextTrackList":false,"TimeRanges":false,"toolbar":false,"top":false,"Touch":false,"TouchEvent":false,"TouchList":false,"TrackEvent":false,"TransitionEvent":false,"TreeWalker":false,"UIEvent":false,"URL":false,"URLSearchParams":false,"ValidityState":false,"visualViewport":false,"VisualViewport":false,"VTTCue":false,"WaveShaperNode":false,"WebAssembly":false,"WebGL2RenderingContext":false,"WebGLActiveInfo":false,"WebGLBuffer":false,"WebGLContextEvent":false,"WebGLFramebuffer":false,"WebGLProgram":false,"WebGLQuery":false,"WebGLRenderbuffer":false,"WebGLRenderingContext":false,"WebGLSampler":false,"WebGLShader":false,"WebGLShaderPrecisionFormat":false,"WebGLSync":false,"WebGLTexture":false,"WebGLTransformFeedback":false,"WebGLUniformLocation":false,"WebGLVertexArrayObject":false,"WebSocket":false,"WheelEvent":false,"window":false,"Window":false,"Worker":false,"WritableStream":false,"XMLDocument":false,"XMLHttpRequest":false,"XMLHttpRequestEventTarget":false,"XMLHttpRequestUpload":false,"XMLSerializer":false,"XPathEvaluator":false,"XPathExpression":false,"XPathResult":false,"XSLTProcessor":false},"worker":{"addEventListener":false,"applicationCache":false,"atob":false,"Blob":false,"BroadcastChannel":false,"btoa":false,"Cache":false,"caches":false,"clearInterval":false,"clearTimeout":false,"close":true,"console":false,"fetch":false,"FileReaderSync":false,"FormData":false,"Headers":false,"IDBCursor":false,"IDBCursorWithValue":false,"IDBDatabase":false,"IDBFactory":false,"IDBIndex":false,"IDBKeyRange":false,"IDBObjectStore":false,"IDBOpenDBRequest":false,"IDBRequest":false,"IDBTransaction":false,"IDBVersionChangeEvent":false,"ImageData":false,"importScripts":true,"indexedDB":false,"location":false,"MessageChannel":false,"MessagePort":false,"name":false,"navigator":false,"Notification":false,"onclose":true,"onconnect":true,"onerror":true,"onlanguagechange":true,"onmessage":true,"onoffline":true,"ononline":true,"onrejectionhandled":true,"onunhandledrejection":true,"performance":false,"Performance":false,"PerformanceEntry":false,"PerformanceMark":false,"PerformanceMeasure":false,"PerformanceNavigation":false,"PerformanceResourceTiming":false,"PerformanceTiming":false,"postMessage":true,"Promise":false,"queueMicrotask":false,"removeEventListener":false,"Request":false,"Response":false,"self":true,"ServiceWorkerRegistration":false,"setInterval":false,"setTimeout":false,"TextDecoder":false,"TextEncoder":false,"URL":false,"URLSearchParams":false,"WebSocket":false,"Worker":false,"WorkerGlobalScope":false,"XMLHttpRequest":false},"node":{"__dirname":false,"__filename":false,"Buffer":false,"clearImmediate":false,"clearInterval":false,"clearTimeout":false,"console":false,"exports":true,"global":false,"Intl":false,"module":false,"process":false,"queueMicrotask":false,"require":false,"setImmediate":false,"setInterval":false,"setTimeout":false,"TextDecoder":false,"TextEncoder":false,"URL":false,"URLSearchParams":false},"commonjs":{"exports":true,"global":false,"module":false,"require":false},"amd":{"define":false,"require":false},"mocha":{"after":false,"afterEach":false,"before":false,"beforeEach":false,"context":false,"describe":false,"it":false,"mocha":false,"run":false,"setup":false,"specify":false,"suite":false,"suiteSetup":false,"suiteTeardown":false,"teardown":false,"test":false,"xcontext":false,"xdescribe":false,"xit":false,"xspecify":false},"jasmine":{"afterAll":false,"afterEach":false,"beforeAll":false,"beforeEach":false,"describe":false,"expect":false,"fail":false,"fdescribe":false,"fit":false,"it":false,"jasmine":false,"pending":false,"runs":false,"spyOn":false,"spyOnProperty":false,"waits":false,"waitsFor":false,"xdescribe":false,"xit":false},"jest":{"afterAll":false,"afterEach":false,"beforeAll":false,"beforeEach":false,"describe":false,"expect":false,"fdescribe":false,"fit":false,"it":false,"jest":false,"pit":false,"require":false,"test":false,"xdescribe":false,"xit":false,"xtest":false},"qunit":{"asyncTest":false,"deepEqual":false,"equal":false,"expect":false,"module":false,"notDeepEqual":false,"notEqual":false,"notOk":false,"notPropEqual":false,"notStrictEqual":false,"ok":false,"propEqual":false,"QUnit":false,"raises":false,"start":false,"stop":false,"strictEqual":false,"test":false,"throws":false},"phantomjs":{"console":true,"exports":true,"phantom":true,"require":true,"WebPage":true},"couch":{"emit":false,"exports":false,"getRow":false,"log":false,"module":false,"provides":false,"require":false,"respond":false,"send":false,"start":false,"sum":false},"rhino":{"defineClass":false,"deserialize":false,"gc":false,"help":false,"importClass":false,"importPackage":false,"java":false,"load":false,"loadClass":false,"Packages":false,"print":false,"quit":false,"readFile":false,"readUrl":false,"runCommand":false,"seal":false,"serialize":false,"spawn":false,"sync":false,"toint32":false,"version":false},"nashorn":{"__DIR__":false,"__FILE__":false,"__LINE__":false,"com":false,"edu":false,"exit":false,"java":false,"Java":false,"javafx":false,"JavaImporter":false,"javax":false,"JSAdapter":false,"load":false,"loadWithNewGlobal":false,"org":false,"Packages":false,"print":false,"quit":false},"wsh":{"ActiveXObject":true,"Enumerator":true,"GetObject":true,"ScriptEngine":true,"ScriptEngineBuildVersion":true,"ScriptEngineMajorVersion":true,"ScriptEngineMinorVersion":true,"VBArray":true,"WScript":true,"WSH":true,"XDomainRequest":true},"jquery":{"$":false,"jQuery":false},"yui":{"YAHOO":false,"YAHOO_config":false,"YUI":false,"YUI_config":false},"shelljs":{"cat":false,"cd":false,"chmod":false,"config":false,"cp":false,"dirs":false,"echo":false,"env":false,"error":false,"exec":false,"exit":false,"find":false,"grep":false,"ln":false,"ls":false,"mkdir":false,"mv":false,"popd":false,"pushd":false,"pwd":false,"rm":false,"sed":false,"set":false,"target":false,"tempdir":false,"test":false,"touch":false,"which":false},"prototypejs":{"$":false,"$$":false,"$A":false,"$break":false,"$continue":false,"$F":false,"$H":false,"$R":false,"$w":false,"Abstract":false,"Ajax":false,"Autocompleter":false,"Builder":false,"Class":false,"Control":false,"Draggable":false,"Draggables":false,"Droppables":false,"Effect":false,"Element":false,"Enumerable":false,"Event":false,"Field":false,"Form":false,"Hash":false,"Insertion":false,"ObjectRange":false,"PeriodicalExecuter":false,"Position":false,"Prototype":false,"Scriptaculous":false,"Selector":false,"Sortable":false,"SortableObserver":false,"Sound":false,"Template":false,"Toggle":false,"Try":false},"meteor":{"_":false,"$":false,"Accounts":false,"AccountsClient":false,"AccountsCommon":false,"AccountsServer":false,"App":false,"Assets":false,"Blaze":false,"check":false,"Cordova":false,"DDP":false,"DDPRateLimiter":false,"DDPServer":false,"Deps":false,"EJSON":false,"Email":false,"HTTP":false,"Log":false,"Match":false,"Meteor":false,"Mongo":false,"MongoInternals":false,"Npm":false,"Package":false,"Plugin":false,"process":false,"Random":false,"ReactiveDict":false,"ReactiveVar":false,"Router":false,"ServiceConfiguration":false,"Session":false,"share":false,"Spacebars":false,"Template":false,"Tinytest":false,"Tracker":false,"UI":false,"Utils":false,"WebApp":false,"WebAppInternals":false},"mongo":{"_isWindows":false,"_rand":false,"BulkWriteResult":false,"cat":false,"cd":false,"connect":false,"db":false,"getHostName":false,"getMemInfo":false,"hostname":false,"ISODate":false,"listFiles":false,"load":false,"ls":false,"md5sumFile":false,"mkdir":false,"Mongo":false,"NumberInt":false,"NumberLong":false,"ObjectId":false,"PlanCache":false,"print":false,"printjson":false,"pwd":false,"quit":false,"removeFile":false,"rs":false,"sh":false,"UUID":false,"version":false,"WriteResult":false},"applescript":{"$":false,"Application":false,"Automation":false,"console":false,"delay":false,"Library":false,"ObjC":false,"ObjectSpecifier":false,"Path":false,"Progress":false,"Ref":false},"serviceworker":{"addEventListener":false,"applicationCache":false,"atob":false,"Blob":false,"BroadcastChannel":false,"btoa":false,"Cache":false,"caches":false,"CacheStorage":false,"clearInterval":false,"clearTimeout":false,"Client":false,"clients":false,"Clients":false,"close":true,"console":false,"ExtendableEvent":false,"ExtendableMessageEvent":false,"fetch":false,"FetchEvent":false,"FileReaderSync":false,"FormData":false,"Headers":false,"IDBCursor":false,"IDBCursorWithValue":false,"IDBDatabase":false,"IDBFactory":false,"IDBIndex":false,"IDBKeyRange":false,"IDBObjectStore":false,"IDBOpenDBRequest":false,"IDBRequest":false,"IDBTransaction":false,"IDBVersionChangeEvent":false,"ImageData":false,"importScripts":false,"indexedDB":false,"location":false,"MessageChannel":false,"MessagePort":false,"name":false,"navigator":false,"Notification":false,"onclose":true,"onconnect":true,"onerror":true,"onfetch":true,"oninstall":true,"onlanguagechange":true,"onmessage":true,"onmessageerror":true,"onnotificationclick":true,"onnotificationclose":true,"onoffline":true,"ononline":true,"onpush":true,"onpushsubscriptionchange":true,"onrejectionhandled":true,"onsync":true,"onunhandledrejection":true,"performance":false,"Performance":false,"PerformanceEntry":false,"PerformanceMark":false,"PerformanceMeasure":false,"PerformanceNavigation":false,"PerformanceResourceTiming":false,"PerformanceTiming":false,"postMessage":true,"Promise":false,"queueMicrotask":false,"registration":false,"removeEventListener":false,"Request":false,"Response":false,"self":false,"ServiceWorker":false,"ServiceWorkerContainer":false,"ServiceWorkerGlobalScope":false,"ServiceWorkerMessageEvent":false,"ServiceWorkerRegistration":false,"setInterval":false,"setTimeout":false,"skipWaiting":false,"TextDecoder":false,"TextEncoder":false,"URL":false,"URLSearchParams":false,"WebSocket":false,"WindowClient":false,"Worker":false,"WorkerGlobalScope":false,"XMLHttpRequest":false},"atomtest":{"advanceClock":false,"fakeClearInterval":false,"fakeClearTimeout":false,"fakeSetInterval":false,"fakeSetTimeout":false,"resetTimeouts":false,"waitsForPromise":false},"embertest":{"andThen":false,"click":false,"currentPath":false,"currentRouteName":false,"currentURL":false,"fillIn":false,"find":false,"findAll":false,"findWithAssert":false,"keyEvent":false,"pauseTest":false,"resumeTest":false,"triggerEvent":false,"visit":false,"wait":false},"protractor":{"$":false,"$$":false,"browser":false,"by":false,"By":false,"DartObject":false,"element":false,"protractor":false},"shared-node-browser":{"clearInterval":false,"clearTimeout":false,"console":false,"setInterval":false,"setTimeout":false,"URL":false,"URLSearchParams":false},"webextensions":{"browser":false,"chrome":false,"opr":false},"greasemonkey":{"cloneInto":false,"createObjectIn":false,"exportFunction":false,"GM":false,"GM_addStyle":false,"GM_deleteValue":false,"GM_getResourceText":false,"GM_getResourceURL":false,"GM_getValue":false,"GM_info":false,"GM_listValues":false,"GM_log":false,"GM_openInTab":false,"GM_registerMenuCommand":false,"GM_setClipboard":false,"GM_setValue":false,"GM_xmlhttpRequest":false,"unsafeWindow":false},"devtools":{"$":false,"$_":false,"$$":false,"$0":false,"$1":false,"$2":false,"$3":false,"$4":false,"$x":false,"chrome":false,"clear":false,"copy":false,"debug":false,"dir":false,"dirxml":false,"getEventListeners":false,"inspect":false,"keys":false,"monitor":false,"monitorEvents":false,"profile":false,"profileEnd":false,"queryObjects":false,"table":false,"undebug":false,"unmonitor":false,"unmonitorEvents":false,"values":false}}')}},t={};function n(r){var a=t[r];if(void 0!==a)return a.exports;var i=t[r]={id:r,loaded:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.loaded=!0,i.exports}n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{const e=process.env.JS_PARSER_ENABLE_LOGGING&&"true"===process.env.JS_PARSER_ENABLE_LOGGING.trim()||process.argv&&process.argv.includes("enableVerboseLogging"),t=process.env.JS_PARSER_ERROR_LOGGING&&"true"===process.env.JS_PARSER_ERROR_LOGGING.trim()||!e&&process.argv&&process.argv.includes("enableErrorLogging"),r={logPath:n(71017).join(__dirname,"logs","i.txt"),strategy:"console",APP_NAME:"js_parser",showErrorsAndWarnings:t,disable:!e},a=n(57147),i=n(73834),s=n(49838),o=n(24563),l=n(92758)(r),p=n(71017),c=n(90766),u=n(22037).EOL;let d=`${__dirname}/../`,f="out/out_parsed_typescript.txt",y="input_parsed_typescript",m="sbg-interface-names.txt",h=P(m),T="sbg-bindings.txt",S=[],b=[];process.env.JS_PARSER_OUT_FILE&&(f=process.env.JS_PARSER_OUT_FILE.trim()),process.env.JS_PARSER_INPUT_DIR&&(y=process.env.JS_PARSER_INPUT_DIR.trim()),process.env.JS_PARSER_INTERFACE_FILE_PATH&&(h=process.env.JS_PARSER_INTERFACE_FILE_PATH.trim()),y=a.readFileSync(P("sbg-input-file.txt"),"UTF-8").trim();try{a.unlinkSync(P(T))}catch(e){}f=P(T),h=P(m);let E=P("sbg-js-parsed-files.txt");function P(e){return p.resolve(`${d}/${e}`)}const x=p.join(y,"..","internal","ts_helpers.js"),g=function(e,t){t.errCode&&1===t.errCode?(l.error(`Error processing '${e}': ${t.message}`),l.error("PROCESS EXITING..."),process.stderr.write(t.message),process.exit(4)):l.error(`Error processing '${e}:' `+t)};var A,v,O;(A=E,v=b,O=x,new Promise((function(e,t){a.createReadStream(A).pipe(o()).on("data",(function(e){/\S/.test(e)&&v.push(e.toString().trim())})).on("error",(function(e){return t(e)})).on("close",(function(t){return e(O)}))}))).then((function(e){return new Promise((function(t,n){a.readFile(e,"utf8",(function(r,a){if(r)return l.warn("+DIDN'T parse ast from file "+e),n(r);l.info("+parsing ast from "+e);const s=i.parse(a,{minify:!1,plugins:[["@babel/plugin-proposal-decorators",{decoratorsBeforeExport:!0}]]});return t(s)}))}))})).then((function(e,t){return new Promise((function(e,t){a.createReadStream(h).pipe(o()).on("data",(function(e){/\S/.test(e)&&S.push(e.toString().trim())})).on("error",(function(e){return t(!1)})).on("close",(function(t){return y=p.normalize(y),e(y)}))}))})).then((function(e,t){if(!a.existsSync(e))throw"The input dir: "+e+" does not exist!";!function(e){for(let t=0;t<e.length;t+=1){const n=e[t];l.info("Visiting JavaScript file: "+n),I(n).then(N.bind(null,n)).then(C.bind(null,n)).then(w).catch(g.bind(null,n))}}(b)})).catch(g.bind(null,E));const I=function(e,t){return new Promise((function(t,n){a.readFile(e,(function(r,a){if(r)return l.warn(`+DIDN'T get content of file: ${e}!`),n(r);const i={filePath:e,data:a.toString()};return t(i)}))}))},N=function(e,t,n){return new Promise((function(r,a){if(n)return l.warn(`+DIDN'T parse ast from file: ${e}!`),a(n);const s=i.parse(t.data,{minify:!1,plugins:[["@babel/plugin-proposal-decorators",{decoratorsBeforeExport:!0}],"objectRestSpread"]});return t.ast=s,r(t)}))};function D(e,t,n){return n.indexOf(e)===t}const C=function(e,t,n){return new Promise((function(r,a){if(n)return l.warn(`+DIDN'T visit ast for file: ${e}!`),a(n);s.default(t.ast,{enter:function(e){const n={logger:l,extendDecoratorName:"JavaProxy",interfacesDecoratorName:"Interfaces",filePath:t.filePath.substring(y.length+1,t.filePath.length-3)||"",fullPathName:t.filePath.substring(y.length+1).replace(/[\\]/g,"/"),interfaceNames:S};c.es5Visitor(e,n)}});const i=c.es5Visitor.getProxyExtendInfo(),o=c.es5Visitor.getCommonExtendInfo(),p=c.es5Visitor.getInterfaceInfo();return r(i.concat(o).concat(p).filter(D).join(u))}))},w=function(e,t){return new Promise((function(n,r){""!=e.trim()?a.appendFile(f,e+u,(function(a){return t?(l.warn("Error from writeToFile: "+t),r(t)):a?(l.warn("Error writing file: "+a),r(a)):(l.info("+appended '"+e+"' to file: "+f),n(e))})):l.info("No need to generate anything. (UP-TO-DATE)")}))}})()})(); \ No newline at end of file diff --git a/test-app/build-tools/static-binding-generator/src/main/resources/livesync.js b/test-app/build-tools/static-binding-generator/src/main/resources/livesync.js new file mode 100644 index 000000000..5f10e08b7 --- /dev/null +++ b/test-app/build-tools/static-binding-generator/src/main/resources/livesync.js @@ -0,0 +1,3 @@ +if (global.__onLiveSync) { + global.__onLiveSync(); +} \ No newline at end of file diff --git a/test-app/build-tools/static-binding-generator/src/main/resources/ts_helpers.js b/test-app/build-tools/static-binding-generator/src/main/resources/ts_helpers.js new file mode 100644 index 000000000..1a0625f45 --- /dev/null +++ b/test-app/build-tools/static-binding-generator/src/main/resources/ts_helpers.js @@ -0,0 +1,175 @@ +(function () { + + var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length; + var r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + + if (typeof global.Reflect === "object" && typeof global.Reflect.decorate === "function") { + r = global.Reflect.decorate(decorators, target, key, desc); + } + else { + for (var i = decorators.length - 1; i >= 0; i--) { + if (d = decorators[i]) { + r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + } + } + } + return c > 3 && r && Object.defineProperty(target, key, r), r; + }; + + // For backward compatibility. + var __native = function (thiz) { + // we are setting the __container__ property to the base class when the super method is called + // if the constructor returns the __native(this) call we will use the old implementation + // copying all the properties to the result + // otherwise if we are using the result from the super() method call we won't need such logic + // as thiz already contains the parent properties + // this way we now support both implementations in typescript generated constructors: + // 1: super(); return __native(this); + // 2: return super() || this; + if (thiz.__container__) { + var result = thiz.__proto__; + + for (var prop in thiz) { + if (thiz.hasOwnProperty(prop)) { + thiz.__proto__[prop] = thiz[prop]; + delete thiz[prop]; + } + } + + thiz.constructor = undefined; + thiz.__proto__ = undefined; + Object.freeze(thiz); + Object.preventExtensions(thiz); + return result; + } else { + return thiz; + } + }; + + var __extends = function (Child, Parent) { + var extendNativeClass = !!Parent.extend && (Parent.extend.toString().indexOf("[native code]") > -1); + if (!extendNativeClass) { + __extends_ts(Child, Parent); + return; + } + if (Parent.__isPrototypeImplementationObject) { + throw new Error("Can not extend an already extended native object."); + } + + function extend(thiz) { + var child = thiz.__proto__.__child; + if (!child.__extended) { + var parent = thiz.__proto__.__parent; + child.__extended = parent.extend(child.name, child.prototype, true); + // This will deal with "i instanceof child" + child[Symbol.hasInstance] = function (instance) { + return instance instanceof this.__extended; + } + } + return child.__extended; + }; + + Parent.__activityExtend = function (parent, name, implementationObject) { + __log("__activityExtend called"); + return parent.extend(name, implementationObject); + }; + + Parent.call = function (thiz) { + var Extended = extend(thiz); + thiz.__container__ = true; + if (arguments.length > 1) { + thiz.__proto__ = new (Function.prototype.bind.apply(Extended, [null].concat(Array.prototype.slice.call(arguments, 1)))); + } + else { + thiz.__proto__ = new Extended() + } + return thiz.__proto__; + }; + + Parent.apply = function (thiz, args) { + var Extended = extend(thiz); + thiz.__container__ = true; + if (args && args.length > 0) { + thiz.__proto__ = new (Function.prototype.bind.apply(Extended, [null].concat(args))); + } + else { + thiz.__proto__ = new Extended(); + } + return thiz.__proto__; + }; + __extends_ns(Child, Parent); + Child.__isPrototypeImplementationObject = true; + Child.__proto__ = Parent; + Child.prototype.__parent = Parent; + Child.prototype.__child = Child; + } + + var __extends_ts = function (child, parent) { + extendStaticFunctions(child, parent); + assignPrototypeFromParentToChild(parent, child); + }; + + var __extends_ns = function (child, parent) { + if (!parent.extend) { + assignPropertiesFromParentToChild(parent, child); + } + + assignPrototypeFromParentToChild(parent, child); + }; + + var extendStaticFunctions = + Object.setPrototypeOf + || (hasInternalProtoProperty() && function (child, parent) { child.__proto__ = parent; }) + || assignPropertiesFromParentToChild; + + function hasInternalProtoProperty() { + return { __proto__: [] } instanceof Array; + } + + function assignPropertiesFromParentToChild(parent, child) { + for (var property in parent) { + if (parent.hasOwnProperty(property)) { + child[property] = parent[property]; + } + } + } + + function assignPrototypeFromParentToChild(parent, child) { + function __() { + this.constructor = child; + } + + if (parent === null) { + child.prototype = Object.create(null); + } else { + __.prototype = parent.prototype; + child.prototype = new __(); + } + } + + + function JavaProxy(className) { + return function (target) { + var extended = target.extend(className, target.prototype) + extended.name = className; + return extended; + }; + } + + function Interfaces(interfacesArr) { + return function (target) { + if (interfacesArr instanceof Array) { + // attach interfaces: [] to the object + target.prototype.interfaces = interfacesArr; + } + } + } + + Object.defineProperty(global, "__native", { value: __native }); + Object.defineProperty(global, "__extends", { value: __extends }); + Object.defineProperty(global, "__decorate", { value: __decorate }); + + global.JavaProxy = JavaProxy; + global.Interfaces = Interfaces; +})() \ No newline at end of file diff --git a/test-app/build-tools/static-binding-generator/src/test/java/org/nativescript/staticbindinggenerator/test/DataRowTest.java b/test-app/build-tools/static-binding-generator/src/test/java/org/nativescript/staticbindinggenerator/test/DataRowTest.java index 5935b95fd..67c7d1f37 100644 --- a/test-app/build-tools/static-binding-generator/src/test/java/org/nativescript/staticbindinggenerator/test/DataRowTest.java +++ b/test-app/build-tools/static-binding-generator/src/test/java/org/nativescript/staticbindinggenerator/test/DataRowTest.java @@ -37,7 +37,7 @@ public void testParseNamedExtend() throws IOException { Assert.assertEquals(row.getColumn(), ""); Assert.assertEquals(row.getNewClassName(), ""); Assert.assertEquals(row.getMethods()[0], "toString"); - Assert.assertEquals(row.getFilename(), "com.tns.NativeScriptActivity"); + Assert.assertEquals(row.getFilename(), "com.tns.TestNativeScriptActivity"); Assert.assertEquals(row.getJsFilename(), "MyActivity.js"); Assert.assertEquals(row.getInterfaces()[0], ""); } diff --git a/test-app/build-tools/static-binding-generator/src/test/resources/org/nativescript/staticbindinggenerator/test/datarow-named-extend.txt b/test-app/build-tools/static-binding-generator/src/test/resources/org/nativescript/staticbindinggenerator/test/datarow-named-extend.txt index c784b0c43..84c9b6526 100644 --- a/test-app/build-tools/static-binding-generator/src/test/resources/org/nativescript/staticbindinggenerator/test/datarow-named-extend.txt +++ b/test-app/build-tools/static-binding-generator/src/test/resources/org/nativescript/staticbindinggenerator/test/datarow-named-extend.txt @@ -1 +1 @@ -java.lang.Object*****toString*com.tns.NativeScriptActivity*MyActivity.js* \ No newline at end of file +java.lang.Object*****toString*com.tns.TestNativeScriptActivity*MyActivity.js* \ No newline at end of file diff --git a/test-app/runtests.gradle b/test-app/runtests.gradle index 6af55d065..254e58896 100644 --- a/test-app/runtests.gradle +++ b/test-app/runtests.gradle @@ -80,9 +80,9 @@ task startInstalledApk(type: Exec) { println "Starting test application" if (isWinOs) { - commandLine "cmd", "/c", "adb", runOnDeviceOrEmulator, "-e", "shell", "am", "start", "-n", "com.tns.testapplication/com.tns.NativeScriptActivity", "-a", "android.intent.action.MAIN", "-c", "android.intent.category.LAUNCHER" + commandLine "cmd", "/c", "adb", runOnDeviceOrEmulator, "-e", "shell", "am", "start", "-n", "com.tns.testapplication/com.tns.TestNativeScriptActivity", "-a", "android.intent.action.MAIN", "-c", "android.intent.category.LAUNCHER" } else { - commandLine "adb", runOnDeviceOrEmulator, "-e", "shell", "am", "start", "-n", "com.tns.testapplication/com.tns.NativeScriptActivity", "-a", "android.intent.action.MAIN", "-c", "android.intent.category.LAUNCHER" + commandLine "adb", runOnDeviceOrEmulator, "-e", "shell", "am", "start", "-n", "com.tns.testapplication/com.tns.TestNativeScriptActivity", "-a", "android.intent.action.MAIN", "-c", "android.intent.category.LAUNCHER" } } } diff --git a/test-app/runtime/build.gradle b/test-app/runtime/build.gradle index b1b974de9..7b02ad855 100644 --- a/test-app/runtime/build.gradle +++ b/test-app/runtime/build.gradle @@ -1,3 +1,7 @@ +plugins { + id 'maven-publish' +} + apply plugin: 'com.android.library' def optimized = project.hasProperty("optimized") @@ -73,8 +77,12 @@ base { android { namespace "com.tns.android_runtime" + namespace = 'org.nativescript.android.runtime' + + namespace = 'org.nativescript.android.runtime' + compileSdk NS_DEFAULT_COMPILE_SDK_VERSION as int - buildToolsVersion = NS_DEFAULT_BUILD_TOOLS_VERSION as String + buildToolsVersion NS_DEFAULT_BUILD_TOOLS_VERSION as String sourceSets { main { @@ -93,6 +101,10 @@ android { } defaultConfig { + aarMetadata { + minCompileSdk = NS_DEFAULT_MIN_SDK_VERSION as int + } + minSdkVersion NS_DEFAULT_MIN_SDK_VERSION as int targetSdkVersion NS_DEFAULT_COMPILE_SDK_VERSION as int @@ -141,24 +153,59 @@ android { } } + publishing { + singleVariant('release') { + withSourcesJar() + } + } } allprojects { gradle.projectsEvaluated { - tasks.withType(JavaCompile).tap { - configureEach { - options.compilerArgs << "-Xlint:all" << "-Werror" + tasks.withType(JavaCompile) { + options.compilerArgs << "-Xlint:all" << "-Werror" + } + } +} + +publishing { + publications { + release(MavenPublication) { + groupId = 'org.nativescript.android' + artifactId = 'runtime' + version = '1.0-SNAPSHOT' + + afterEvaluate { + from components.release } } } + repositories { + mavenLocal() + } } dependencies { - // println "\t ~ [DEBUG][runtime] build.gradle - ns_default_junit_version = ${ns_default_junit_version}..." + def androidXAppCompatVersion = "${ns_default_androidx_appcompat_version}" + if (project.hasProperty("androidXAppCompat")) { + androidXAppCompatVersion = androidXAppCompat + outLogger.withStyle(Style.SuccessHeader).println "\t + using android X library androidx.appcompat:appcompat:$androidXAppCompatVersion" + } + + def androidXMaterialVersion = "${ns_default_androidx_material_version}" + if (project.hasProperty("androidXMaterial")) { + androidXMaterialVersion = androidXMaterial + outLogger.withStyle(Style.SuccessHeader).println "\t + using android X library com.google.android.material:material:$androidXMaterialVersion" + } implementation fileTree(include: ['*.jar'], dir: 'libs') testImplementation "junit:junit:${ns_default_junit_version}" testImplementation "org.mockito:mockito-core:${ns_default_mockito_core_version}" + implementation "com.google.android.material:material:$androidXMaterialVersion" + implementation "androidx.appcompat:appcompat:$androidXAppCompatVersion" + implementation 'androidx.navigation:navigation-fragment-ktx:2.5.3' + implementation 'androidx.navigation:navigation-ui-ktx:2.5.3' + implementation 'androidx.preference:preference:1.2.1' } diff --git a/test-app/app/src/debug/java/com/tns/ErrorReport.java b/test-app/runtime/src/debug/java/com/tns/ErrorReport.java similarity index 91% rename from test-app/app/src/debug/java/com/tns/ErrorReport.java rename to test-app/runtime/src/debug/java/com/tns/ErrorReport.java index d2b5cf2d6..3ded03ef2 100644 --- a/test-app/app/src/debug/java/com/tns/ErrorReport.java +++ b/test-app/runtime/src/debug/java/com/tns/ErrorReport.java @@ -32,9 +32,10 @@ import androidx.annotation.NonNull; import androidx.core.app.ActivityCompat; import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentActivity; import androidx.fragment.app.FragmentManager; -import androidx.fragment.app.FragmentStatePagerAdapter; -import androidx.viewpager.widget.ViewPager; +import androidx.viewpager2.widget.ViewPager2; +import androidx.viewpager2.adapter.FragmentStateAdapter; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; @@ -59,7 +60,7 @@ class ErrorReport implements TabLayout.OnTabSelectedListener { private static AppCompatActivity activity; private TabLayout tabLayout; - private ViewPager viewPager; + private ViewPager2 viewPager; private Context context; private static String exceptionMsg; @@ -279,12 +280,12 @@ void buildUI() { tabLayout.setTabGravity(TabLayout.GRAVITY_FILL); int pagerId = this.context.getResources().getIdentifier("pager", "id", this.context.getPackageName()); - viewPager = (ViewPager) activity.findViewById(pagerId); + viewPager = (ViewPager2) activity.findViewById(pagerId); - Pager adapter = new Pager(activity.getSupportFragmentManager(), tabLayout.getTabCount()); + Pager adapter = new Pager(activity, tabLayout.getTabCount()); viewPager.setAdapter(adapter); - viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { + viewPager.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { @@ -332,18 +333,18 @@ public void onTabReselected(TabLayout.Tab tab) { viewPager.setCurrentItem(tab.getPosition()); } - private class Pager extends FragmentStatePagerAdapter { + private class Pager extends FragmentStateAdapter { int tabCount; @SuppressWarnings("deprecation") - public Pager(FragmentManager fm, int tabCount) { + public Pager(FragmentActivity fm, int tabCount) { super(fm); this.tabCount = tabCount; } @Override - public Fragment getItem(int position) { + public Fragment createFragment(int position) { switch (position) { case 0: return new ExceptionTab(); @@ -355,7 +356,7 @@ public Fragment getItem(int position) { } @Override - public int getCount() { + public int getItemCount() { return tabCount; } } @@ -410,14 +411,14 @@ public static void restartApp(Context context) { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - int exceptionTabId = container.getContext().getResources().getIdentifier("exception_tab", "layout", container.getContext().getPackageName()); + int exceptionTabId = getContext().getResources().getIdentifier("exception_tab", "layout", getContext().getPackageName()); View view = inflater.inflate(exceptionTabId, container, false); int errorExceptionViewId = activity.getResources().getIdentifier("errorException", "id", activity.getPackageName()); TextView errorExceptionView = (TextView) activity.findViewById(errorExceptionViewId); errorExceptionView.setMovementMethod(new ScrollingMovementMethod()); - int errorStackTraceViewId = container.getContext().getResources().getIdentifier("errorStacktrace", "id", container.getContext().getPackageName()); + int errorStackTraceViewId = getContext().getResources().getIdentifier("errorStacktrace", "id", getContext().getPackageName()); TextView errorStackTraceView = (TextView) view.findViewById(errorStackTraceViewId); String[] exceptionParts = exceptionMsg.split("StackTrace:"); @@ -438,10 +439,10 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle sa errorStackTraceView.setMovementMethod(LinkMovementMethod.getInstance()); errorStackTraceView.setEnabled(true); - int btnCopyExceptionId = container.getContext().getResources().getIdentifier("btnCopyException", "id", container.getContext().getPackageName()); + int btnCopyExceptionId = getContext().getResources().getIdentifier("btnCopyException", "id", getContext().getPackageName()); Button copyToClipboard = (Button) view.findViewById(btnCopyExceptionId); - int btnRestartAppId = container.getContext().getResources().getIdentifier("btnRestartApp", "id", container.getContext().getPackageName()); + int btnRestartAppId = getContext().getResources().getIdentifier("btnRestartApp", "id", getContext().getPackageName()); Button restartApp = (Button) view.findViewById(btnRestartAppId); restartApp.setOnClickListener(v -> { restartApp(getContext().getApplicationContext()); @@ -459,10 +460,10 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle sa public static class LogcatTab extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - int logcatTabId = container.getContext().getResources().getIdentifier("logcat_tab", "layout", container.getContext().getPackageName()); + int logcatTabId = getContext().getResources().getIdentifier("logcat_tab", "layout", getContext().getPackageName()); View view = inflater.inflate(logcatTabId, container, false); - int textViewId = container.getContext().getResources().getIdentifier("logcatMsg", "id", container.getContext().getPackageName()); + int textViewId = getContext().getResources().getIdentifier("logcatMsg", "id", getContext().getPackageName()); TextView txtlogcatMsg = (TextView) view.findViewById(textViewId); txtlogcatMsg.setText(logcatMsg); @@ -470,7 +471,7 @@ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle sa final String logName = "Log-" + new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss").format(new Date()); - int btnCopyLogcatId = container.getContext().getResources().getIdentifier("btnCopyLogcat", "id", container.getContext().getPackageName()); + int btnCopyLogcatId = getContext().getResources().getIdentifier("btnCopyLogcat", "id", getContext().getPackageName()); Button copyToClipboard = (Button) view.findViewById(btnCopyLogcatId); copyToClipboard.setOnClickListener(new View.OnClickListener() { @Override @@ -498,7 +499,7 @@ public void onClick(View v) { } catch (Exception e) { String err = "Could not write logcat report to sdcard. Make sure you have allowed access to external storage!"; Toast.makeText(activity, err, Toast.LENGTH_LONG).show(); - if (Util.isDebuggableApp(container.getContext())) { + if (Util.isDebuggableApp(getContext())) { e.printStackTrace(); } } diff --git a/test-app/app/src/debug/java/com/tns/ErrorReportActivity.java b/test-app/runtime/src/debug/java/com/tns/ErrorReportActivity.java similarity index 100% rename from test-app/app/src/debug/java/com/tns/ErrorReportActivity.java rename to test-app/runtime/src/debug/java/com/tns/ErrorReportActivity.java diff --git a/test-app/app/src/debug/java/com/tns/NativeScriptSyncService.java b/test-app/runtime/src/debug/java/com/tns/NativeScriptSyncService.java similarity index 99% rename from test-app/app/src/debug/java/com/tns/NativeScriptSyncService.java rename to test-app/runtime/src/debug/java/com/tns/NativeScriptSyncService.java index 5778025fa..ad7bfd459 100644 --- a/test-app/app/src/debug/java/com/tns/NativeScriptSyncService.java +++ b/test-app/runtime/src/debug/java/com/tns/NativeScriptSyncService.java @@ -8,7 +8,6 @@ import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; -import java.io.InputStream; import java.io.OutputStream; import android.content.Context; diff --git a/test-app/app/src/debug/java/com/tns/NativeScriptSyncServiceSocketImpl.java b/test-app/runtime/src/debug/java/com/tns/NativeScriptSyncServiceSocketImpl.java similarity index 100% rename from test-app/app/src/debug/java/com/tns/NativeScriptSyncServiceSocketImpl.java rename to test-app/runtime/src/debug/java/com/tns/NativeScriptSyncServiceSocketImpl.java diff --git a/test-app/runtime/src/debug/res/drawable/button.xml b/test-app/runtime/src/debug/res/drawable/button.xml new file mode 100644 index 000000000..1dd87bbf5 --- /dev/null +++ b/test-app/runtime/src/debug/res/drawable/button.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<shape xmlns:android="http://schemas.android.com/apk/res/android" + android:shape="rectangle"> + <solid android:color="#44403c" /> + <corners android:bottomRightRadius="8dp" + android:bottomLeftRadius="8dp" + android:topRightRadius="8dp" + android:topLeftRadius="8dp"/> +</shape> \ No newline at end of file diff --git a/test-app/runtime/src/debug/res/drawable/button_accented.xml b/test-app/runtime/src/debug/res/drawable/button_accented.xml new file mode 100644 index 000000000..d1de1fd89 --- /dev/null +++ b/test-app/runtime/src/debug/res/drawable/button_accented.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<shape xmlns:android="http://schemas.android.com/apk/res/android" + android:shape="rectangle"> + <solid android:color="@color/nativescript_blue" /> + <corners android:bottomRightRadius="8dp" + android:bottomLeftRadius="8dp" + android:topRightRadius="8dp" + android:topLeftRadius="8dp"/> +</shape> \ No newline at end of file diff --git a/test-app/app/src/debug/res/layout/error_activity.xml b/test-app/runtime/src/debug/res/layout/error_activity.xml similarity index 95% rename from test-app/app/src/debug/res/layout/error_activity.xml rename to test-app/runtime/src/debug/res/layout/error_activity.xml index 9e614f6f3..dedf9f8f0 100644 --- a/test-app/app/src/debug/res/layout/error_activity.xml +++ b/test-app/runtime/src/debug/res/layout/error_activity.xml @@ -35,14 +35,14 @@ android:layout_height="wrap_content" android:minHeight="?attr/actionBarSize" /> - <androidx.viewpager.widget.ViewPager + <androidx.viewpager2.widget.ViewPager2 android:id="@+id/pager" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_below="@+id/toolbar" android:scrollbarAlwaysDrawVerticalTrack="false"> - </androidx.viewpager.widget.ViewPager> + </androidx.viewpager2.widget.ViewPager2> <com.google.android.material.tabs.TabLayout android:id="@+id/tabLayout" diff --git a/test-app/app/src/debug/res/layout/exception_tab.xml b/test-app/runtime/src/debug/res/layout/exception_tab.xml similarity index 86% rename from test-app/app/src/debug/res/layout/exception_tab.xml rename to test-app/runtime/src/debug/res/layout/exception_tab.xml index 4d3a545f4..9d15157d9 100644 --- a/test-app/app/src/debug/res/layout/exception_tab.xml +++ b/test-app/runtime/src/debug/res/layout/exception_tab.xml @@ -45,24 +45,26 @@ <Button android:id="@+id/btnRestartApp" - android:text="Restart APP" - android:textAlignment="center" - android:textColor="@android:color/white" - android:background="@drawable/button_accented" android:layout_width="0dp" android:layout_height="wrap_content" + android:layout_marginRight="10dp" android:layout_weight="1" - android:layout_marginRight="10dp" /> + android:background="@drawable/button_accented" + android:foreground="?android:attr/selectableItemBackground" + android:text="Restart APP" + android:textAlignment="center" + android:textColor="@android:color/white" /> <Button android:id="@+id/btnCopyException" - android:textColor="@android:color/white" - android:text="Copy" - android:background="@drawable/button" - android:textAlignment="center" android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_weight="1" /> + android:layout_weight="1" + android:background="@drawable/button" + android:foreground="?android:attr/selectableItemBackground" + android:text="Copy" + android:textAlignment="center" + android:textColor="@android:color/white" /> </LinearLayout> diff --git a/test-app/app/src/debug/res/layout/logcat_tab.xml b/test-app/runtime/src/debug/res/layout/logcat_tab.xml similarity index 97% rename from test-app/app/src/debug/res/layout/logcat_tab.xml rename to test-app/runtime/src/debug/res/layout/logcat_tab.xml index 4012d9bab..c3b44b344 100644 --- a/test-app/app/src/debug/res/layout/logcat_tab.xml +++ b/test-app/runtime/src/debug/res/layout/logcat_tab.xml @@ -21,18 +21,19 @@ <Button android:id="@+id/btnCopyLogcat" - android:layout_height="wrap_content" - android:text="Copy to sdcard" android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_alignParentBottom="true" + android:layout_centerHorizontal="true" + android:layout_marginLeft="10dp" + android:layout_marginRight="10dp" android:background="@drawable/button" - android:textColor="@android:color/white" - android:textAlignment="center" + android:foreground="?android:attr/selectableItemBackground" android:paddingLeft="20dp" android:paddingRight="20dp" - android:layout_marginRight="10dp" - android:layout_marginLeft="10dp" - android:layout_alignParentBottom="true" - android:layout_centerHorizontal="true" + android:text="Copy to sdcard" + android:textAlignment="center" + android:textColor="@android:color/white" tools:layout_width="match_parent" /> </LinearLayout> diff --git a/test-app/runtime/src/debug/res/values/colors.xml b/test-app/runtime/src/debug/res/values/colors.xml new file mode 100644 index 000000000..ef9ce0194 --- /dev/null +++ b/test-app/runtime/src/debug/res/values/colors.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <color name="nativescript_blue">#65ADF1</color> + <color name="gray">#1c1917</color> + <color name="red">#dc2626</color> + <color name="white">#ffffff</color> +</resources> diff --git a/test-app/app/src/main/java/com/tns/AndroidJsV8Inspector.java b/test-app/runtime/src/main/java/com/tns/AndroidJsV8Inspector.java similarity index 100% rename from test-app/app/src/main/java/com/tns/AndroidJsV8Inspector.java rename to test-app/runtime/src/main/java/com/tns/AndroidJsV8Inspector.java diff --git a/test-app/app/src/main/java/com/tns/DefaultExtractPolicy.java b/test-app/runtime/src/main/java/com/tns/DefaultExtractPolicy.java similarity index 100% rename from test-app/app/src/main/java/com/tns/DefaultExtractPolicy.java rename to test-app/runtime/src/main/java/com/tns/DefaultExtractPolicy.java diff --git a/test-app/app/src/main/java/com/tns/EqualityComparator.java b/test-app/runtime/src/main/java/com/tns/EqualityComparator.java similarity index 100% rename from test-app/app/src/main/java/com/tns/EqualityComparator.java rename to test-app/runtime/src/main/java/com/tns/EqualityComparator.java diff --git a/test-app/app/src/main/java/com/tns/LogcatLogger.java b/test-app/runtime/src/main/java/com/tns/LogcatLogger.java similarity index 100% rename from test-app/app/src/main/java/com/tns/LogcatLogger.java rename to test-app/runtime/src/main/java/com/tns/LogcatLogger.java diff --git a/test-app/runtime/src/main/java/com/tns/NativeScriptActivity.java b/test-app/runtime/src/main/java/com/tns/NativeScriptActivity.java new file mode 100644 index 000000000..89b6485ae --- /dev/null +++ b/test-app/runtime/src/main/java/com/tns/NativeScriptActivity.java @@ -0,0 +1,5 @@ +package com.tns; + +public class NativeScriptActivity extends org.nativescript.NativeScriptActivity { + +} diff --git a/test-app/app/src/main/java/com/tns/NativeScriptUncaughtExceptionHandler.java b/test-app/runtime/src/main/java/com/tns/NativeScriptUncaughtExceptionHandler.java similarity index 100% rename from test-app/app/src/main/java/com/tns/NativeScriptUncaughtExceptionHandler.java rename to test-app/runtime/src/main/java/com/tns/NativeScriptUncaughtExceptionHandler.java diff --git a/test-app/app/src/main/java/com/tns/RuntimeHelper.java b/test-app/runtime/src/main/java/com/tns/RuntimeHelper.java similarity index 99% rename from test-app/app/src/main/java/com/tns/RuntimeHelper.java rename to test-app/runtime/src/main/java/com/tns/RuntimeHelper.java index 90a64f16e..c10b59b86 100644 --- a/test-app/app/src/main/java/com/tns/RuntimeHelper.java +++ b/test-app/runtime/src/main/java/com/tns/RuntimeHelper.java @@ -8,7 +8,7 @@ import android.content.SharedPreferences; import android.content.pm.PackageManager.NameNotFoundException; import android.os.Build; -import android.preference.PreferenceManager; +import androidx.preference.PreferenceManager; import android.util.Log; import java.io.File; @@ -68,6 +68,8 @@ public static Runtime initRuntime(Context context) { ManualInstrumentation.Frame loadLibraryFrame = ManualInstrumentation.start("loadLibrary NativeScript"); try { System.loadLibrary("NativeScript"); + } catch (Exception e) { + throw e; } finally { loadLibraryFrame.close(); } diff --git a/test-app/app/src/main/java/com/tns/Util.java b/test-app/runtime/src/main/java/com/tns/Util.java similarity index 97% rename from test-app/app/src/main/java/com/tns/Util.java rename to test-app/runtime/src/main/java/com/tns/Util.java index 250f2dfd6..86ce6ccb6 100644 --- a/test-app/app/src/main/java/com/tns/Util.java +++ b/test-app/runtime/src/main/java/com/tns/Util.java @@ -2,18 +2,17 @@ import java.io.*; -import com.tns.internal.Plugin; - import android.content.Context; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.os.Bundle; -import android.util.Log; import androidx.core.content.pm.PackageInfoCompat; +import com.tns.internal.Plugin; + public final class Util { private Util() { } @@ -57,7 +56,7 @@ static boolean runPlugin(Logger logger, Context context) { try { Class<?> liveSyncPluginClass = Class.forName(pluginClassName); - Plugin p = (Plugin) liveSyncPluginClass.newInstance(); + Plugin p = (Plugin) liveSyncPluginClass.getDeclaredConstructor().newInstance(); success = p.execute(context); } catch (Exception e) { if (Util.isDebuggableApp(context) && logger.isEnabled()) { diff --git a/test-app/runtime/src/main/java/com/tns/embedding/ApplicationHolder.java b/test-app/runtime/src/main/java/com/tns/embedding/ApplicationHolder.java new file mode 100644 index 000000000..9649d9765 --- /dev/null +++ b/test-app/runtime/src/main/java/com/tns/embedding/ApplicationHolder.java @@ -0,0 +1,20 @@ +package com.tns.embedding; + +import android.app.Application; + +public class ApplicationHolder { + + private static Application application; + + private ApplicationHolder() { + + } + + public static void setInstance(Application application) { + ApplicationHolder.application = application; + } + + public static Application getInstance() { + return application; + } +} diff --git a/test-app/runtime/src/main/java/com/tns/embedding/CallbacksStore.java b/test-app/runtime/src/main/java/com/tns/embedding/CallbacksStore.java new file mode 100644 index 000000000..aff6147ac --- /dev/null +++ b/test-app/runtime/src/main/java/com/tns/embedding/CallbacksStore.java @@ -0,0 +1,29 @@ +package com.tns.embedding; + +public class CallbacksStore { + + private static EmbeddableFragmentCallbacks fragmentCallbacks; + private static EmbeddableActivityCallbacks activityCallbacks; + + public static void setFragmentCallbacks(EmbeddableFragmentCallbacks callbacks) { + fragmentCallbacks = callbacks; + } + + public static void setActivityCallbacks(EmbeddableActivityCallbacks callbacks) { + activityCallbacks = callbacks; + } + + public static EmbeddableFragmentCallbacks getFragmentCallbacks() { + if (fragmentCallbacks == null) { + throw new RuntimeException("{N} Core modules: Fragment callbacks are null"); + } + return fragmentCallbacks; + } + + public static EmbeddableActivityCallbacks getActivityCallbacks() { + if (activityCallbacks == null) { + throw new RuntimeException("{N} Core modules: Activity callbacks are null"); + } + return activityCallbacks; + } +} diff --git a/test-app/runtime/src/main/java/com/tns/embedding/EmbeddableActivityCallbacks.java b/test-app/runtime/src/main/java/com/tns/embedding/EmbeddableActivityCallbacks.java new file mode 100644 index 000000000..2fd78714d --- /dev/null +++ b/test-app/runtime/src/main/java/com/tns/embedding/EmbeddableActivityCallbacks.java @@ -0,0 +1,40 @@ +package com.tns.embedding; + +import androidx.appcompat.app.AppCompatActivity; + +public abstract class EmbeddableActivityCallbacks { + + private AppCompatActivity activity; + + public void setActivity(AppCompatActivity activity) { + this.activity = activity; + } + + public AppCompatActivity getActivity() { + return this.activity; + } + + public abstract void onPostResume(); + + public abstract void onStart(); + + public abstract void onStop(); + + public abstract void onDestroy(); + + public abstract void onActivityResult(int param_0, int param_1, android.content.Intent param_2); + + public abstract void onCreate(android.os.Bundle param_0); + + public abstract void onRequestPermissionsResult(int param_0, java.lang.String[] param_1, int[] param_2); + + public abstract void onSaveInstanceState(android.os.Bundle param_0); + + public abstract void onBackPressed(); + + public abstract void onNewIntent(android.content.Intent param_0); + + public abstract void onCreate(android.os.Bundle param_0, android.os.PersistableBundle param_1); + + public abstract void onSaveInstanceState(android.os.Bundle param_0, android.os.PersistableBundle param_1); +} diff --git a/test-app/runtime/src/main/java/com/tns/embedding/EmbeddableFragmentCallbacks.java b/test-app/runtime/src/main/java/com/tns/embedding/EmbeddableFragmentCallbacks.java new file mode 100644 index 000000000..ced2508eb --- /dev/null +++ b/test-app/runtime/src/main/java/com/tns/embedding/EmbeddableFragmentCallbacks.java @@ -0,0 +1,31 @@ +package com.tns.embedding; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.fragment.app.Fragment; + +public abstract class EmbeddableFragmentCallbacks { + + private Fragment fragment; + + public void setFragment(Fragment fragment) { + this.fragment = fragment; + } + + public Fragment getFragment() { + return fragment; + } + + public abstract View onCreateView( + LayoutInflater inflater, + ViewGroup container, + Bundle savedInstanceState + ); + + public abstract void onResume(); + + public abstract void onPause(); +} diff --git a/test-app/runtime/src/main/java/com/tns/embedding/JetpackNavigationUtils.java b/test-app/runtime/src/main/java/com/tns/embedding/JetpackNavigationUtils.java new file mode 100644 index 000000000..e33a47fe1 --- /dev/null +++ b/test-app/runtime/src/main/java/com/tns/embedding/JetpackNavigationUtils.java @@ -0,0 +1,13 @@ +package com.tns.embedding; + +import android.view.View; + +import androidx.navigation.NavController; +import androidx.navigation.Navigation; + +public class JetpackNavigationUtils { + public static void navigate(View view, String route) { + NavController nav = Navigation.findNavController(view); + nav.navigate(route); + } +} diff --git a/test-app/app/src/main/java/com/tns/internal/AppBuilderCallback.java b/test-app/runtime/src/main/java/com/tns/internal/AppBuilderCallback.java similarity index 100% rename from test-app/app/src/main/java/com/tns/internal/AppBuilderCallback.java rename to test-app/runtime/src/main/java/com/tns/internal/AppBuilderCallback.java diff --git a/test-app/app/src/main/java/com/tns/internal/Plugin.java b/test-app/runtime/src/main/java/com/tns/internal/Plugin.java similarity index 98% rename from test-app/app/src/main/java/com/tns/internal/Plugin.java rename to test-app/runtime/src/main/java/com/tns/internal/Plugin.java index b678681f8..3f67011f5 100644 --- a/test-app/app/src/main/java/com/tns/internal/Plugin.java +++ b/test-app/runtime/src/main/java/com/tns/internal/Plugin.java @@ -2,4 +2,4 @@ public interface Plugin { boolean execute(android.content.Context context) throws Exception; -} +} \ No newline at end of file diff --git a/test-app/runtime/src/main/java/org/nativescript/Bootstrap.java b/test-app/runtime/src/main/java/org/nativescript/Bootstrap.java new file mode 100644 index 000000000..2eaeaac52 --- /dev/null +++ b/test-app/runtime/src/main/java/org/nativescript/Bootstrap.java @@ -0,0 +1,22 @@ +package org.nativescript; + +import android.app.Application; + +import com.tns.ManualInstrumentation; +import com.tns.RuntimeHelper; +import com.tns.embedding.ApplicationHolder; + +public class Bootstrap { + public static void bootstrapNativeScriptRuntime(Application application) { + ManualInstrumentation.Frame frame = ManualInstrumentation.start("NativeScriptApplication.onCreate"); + try { + ApplicationHolder.setInstance(application); + com.tns.Runtime runtime = RuntimeHelper.initRuntime(application); + if (runtime != null) { + runtime.run(); + } + } finally { + frame.close(); + } + } +} diff --git a/test-app/runtime/src/main/java/org/nativescript/NativeScriptActivity.java b/test-app/runtime/src/main/java/org/nativescript/NativeScriptActivity.java new file mode 100644 index 000000000..071454c88 --- /dev/null +++ b/test-app/runtime/src/main/java/org/nativescript/NativeScriptActivity.java @@ -0,0 +1,110 @@ +package org.nativescript; + +import android.annotation.SuppressLint; +import android.os.Bundle; +import android.view.View; + +import androidx.appcompat.app.AppCompatActivity; + +import com.tns.embedding.CallbacksStore; +import com.tns.embedding.EmbeddableActivityCallbacks; + +import org.nativescript.android.runtime.R; + +public class NativeScriptActivity extends AppCompatActivity { + + private final EmbeddableActivityCallbacks callbacks = CallbacksStore.getActivityCallbacks(); + static View nativeScriptView = null; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + callbacks.setActivity(this); + callbacks.onCreate(savedInstanceState); +// drawNativeScriptApp(savedInstanceState); + } + + @Override + public void onCreate(android.os.Bundle savedInstanceState, android.os.PersistableBundle persistableBundle) { + super.onCreate(savedInstanceState, persistableBundle); + callbacks.setActivity(this); + callbacks.onCreate(savedInstanceState, persistableBundle); +// drawNativeScriptApp(savedInstanceState); + } + + private void drawNativeScriptApp(Bundle savedInstanceState) { + setContentView(R.layout.main); + if (savedInstanceState == null) { + getSupportFragmentManager().beginTransaction() + .replace(R.id.container, new NativeScriptFragment()) + .commitNow(); + } + } + + @Override + protected void onPostResume() { + super.onPostResume(); + callbacks.onPostResume(); + } + + @Override + protected void onStart() { + super.onStart(); + callbacks.onStart(); + } + + @Override + protected void onStop() { + super.onStop(); + callbacks.onStop(); + } + + @Override + protected void onDestroy() { + try { + callbacks.onDestroy(); + nativeScriptView = null; + } finally { + super.onDestroy(); + } + } + + @Override + protected void onActivityResult(int param_0, int param_1, android.content.Intent param_2) { + super.onActivityResult(param_0, param_1, param_2); + callbacks.onActivityResult(param_0, param_1, param_2); + } + + @SuppressLint("MissingSuperCall") + @Override + public void onRequestPermissionsResult(int param_0, java.lang.String[] param_1, int[] param_2) { + callbacks.onRequestPermissionsResult(param_0, param_1, param_2); + } + + @Override + protected void onSaveInstanceState(android.os.Bundle param_0) { + super.onSaveInstanceState(param_0); + callbacks.onSaveInstanceState(param_0); + } + + @Override + public void onBackPressed() { + callbacks.onBackPressed(); + } + + @Override + protected void onNewIntent(android.content.Intent param_0) { + super.onNewIntent(param_0); + super.setIntent(param_0); + callbacks.onNewIntent(param_0); + } + + @Override + public void onSaveInstanceState(android.os.Bundle param_0, android.os.PersistableBundle param_1) { + super.onSaveInstanceState(param_0, param_1); + } + + public void superOnBackPressed() { + super.onBackPressed(); + } +} diff --git a/test-app/runtime/src/main/java/org/nativescript/NativeScriptApplication.java b/test-app/runtime/src/main/java/org/nativescript/NativeScriptApplication.java new file mode 100644 index 000000000..3195d0c29 --- /dev/null +++ b/test-app/runtime/src/main/java/org/nativescript/NativeScriptApplication.java @@ -0,0 +1,13 @@ +package org.nativescript; + +import static org.nativescript.Bootstrap.bootstrapNativeScriptRuntime; + +import android.app.Application; + +public class NativeScriptApplication extends Application { + @Override + public void onCreate() { + super.onCreate(); + bootstrapNativeScriptRuntime(this); + } +} diff --git a/test-app/runtime/src/main/java/org/nativescript/NativeScriptFragment.java b/test-app/runtime/src/main/java/org/nativescript/NativeScriptFragment.java new file mode 100644 index 000000000..c75ed4ac5 --- /dev/null +++ b/test-app/runtime/src/main/java/org/nativescript/NativeScriptFragment.java @@ -0,0 +1,58 @@ +package org.nativescript; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.FrameLayout; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; + +import com.tns.embedding.CallbacksStore; +import com.tns.embedding.EmbeddableFragmentCallbacks; + +public class NativeScriptFragment extends Fragment { + + private final EmbeddableFragmentCallbacks callbacks = CallbacksStore.getFragmentCallbacks(); + + @Override + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + callbacks.setFragment(this); + } + + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, + @Nullable Bundle savedInstanceState) { + if (NativeScriptActivity.nativeScriptView == null) { + NativeScriptActivity.nativeScriptView = callbacks.onCreateView(inflater, container, savedInstanceState); + } + + FrameLayout wrapper = new FrameLayout(requireContext()); + wrapper.addView(NativeScriptActivity.nativeScriptView); + return wrapper; + } + + @Override + public void onResume() { + super.onResume(); + callbacks.onResume(); + } + + @Override + public void onPause() { + super.onPause(); + callbacks.onPause(); + } + + @Override + public void onDestroyView() { + super.onDestroyView(); + if (NativeScriptActivity.nativeScriptView != null && NativeScriptActivity.nativeScriptView.getParent() != null) { + ((ViewGroup) NativeScriptActivity.nativeScriptView.getParent()).removeView(NativeScriptActivity.nativeScriptView); + } + } +} diff --git a/test-app/runtime/src/main/res/layout/main.xml b/test-app/runtime/src/main/res/layout/main.xml new file mode 100644 index 000000000..dc7a433ab --- /dev/null +++ b/test-app/runtime/src/main/res/layout/main.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8"?> +<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/container" + android:layout_width="match_parent" + android:layout_height="match_parent" > + +</androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file diff --git a/test-app/settings.gradle b/test-app/settings.gradle index b8eab86f2..ac3c36e16 100644 --- a/test-app/settings.gradle +++ b/test-app/settings.gradle @@ -1,3 +1,10 @@ +pluginManagement { + repositories { + gradlePluginPortal() + mavenLocal() + } +} + include ':app', ':runtime', ':runtime-binding-generator',