import {createRequire} from 'module' import {dirname as __global__dirname__} from 'path' import {fileURLToPath} from 'url' const require=createRequire(import.meta.url) const __filename=fileURLToPath(import.meta.url) const __dirname=__global__dirname__(__filename) var cN=Object.create;var Dc=Object.defineProperty;var pN=Object.getOwnPropertyDescriptor;var dN=Object.getOwnPropertyNames;var fN=Object.getPrototypeOf,hN=Object.prototype.hasOwnProperty;var yt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,n)=>(typeof require<"u"?require:t)[n]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var mN=(e,t)=>()=>(e&&(t=e(e=0)),t);var me=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),yN=(e,t)=>{for(var n in t)Dc(e,n,{get:t[n],enumerable:!0})},qv=(e,t,n,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of dN(t))!hN.call(e,o)&&o!==n&&Dc(e,o,{get:()=>t[o],enumerable:!(i=pN(t,o))||i.enumerable});return e};var Fi=(e,t,n)=>(n=e!=null?cN(fN(e)):{},qv(t||!e||!e.__esModule?Dc(n,"default",{value:e,enumerable:!0}):n,e)),Er=e=>qv(Dc({},"__esModule",{value:!0}),e);var br={};yN(br,{__addDisposableResource:()=>cT,__assign:()=>Ic,__asyncDelegator:()=>rT,__asyncGenerator:()=>tT,__asyncValues:()=>nT,__await:()=>eo,__awaiter:()=>Xv,__classPrivateFieldGet:()=>oT,__classPrivateFieldIn:()=>uT,__classPrivateFieldSet:()=>lT,__createBinding:()=>Nc,__decorate:()=>zv,__disposeResources:()=>pT,__esDecorate:()=>bN,__exportStar:()=>Yv,__extends:()=>Wv,__generator:()=>Jv,__importDefault:()=>aT,__importStar:()=>sT,__makeTemplateObject:()=>iT,__metadata:()=>Hv,__param:()=>Gv,__propKey:()=>vN,__read:()=>eh,__rest:()=>Kv,__runInitializers:()=>gN,__setFunctionName:()=>TN,__spread:()=>Qv,__spreadArray:()=>eT,__spreadArrays:()=>Zv,__values:()=>Oc,default:()=>xN});function Wv(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");Zf(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}function Kv(e,t){var n={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,i=Object.getOwnPropertySymbols(e);o=0;a--)(u=e[a])&&(r=(o<3?u(r):o>3?u(t,n,r):u(t,n))||r);return o>3&&r&&Object.defineProperty(t,n,r),r}function Gv(e,t){return function(n,i){t(n,i,e)}}function bN(e,t,n,i,o,r){function u(E){if(E!==void 0&&typeof E!="function")throw new TypeError("Function expected");return E}for(var a=i.kind,m=a==="getter"?"get":a==="setter"?"set":"value",d=!t&&e?i.static?e:e.prototype:null,s=t||(d?Object.getOwnPropertyDescriptor(d,i.name):{}),l,f=!1,p=n.length-1;p>=0;p--){var h={};for(var y in i)h[y]=y==="access"?{}:i[y];for(var y in i.access)h.access[y]=i.access[y];h.addInitializer=function(E){if(f)throw new TypeError("Cannot add initializers after decoration has completed");r.push(u(E||null))};var b=(0,n[p])(a==="accessor"?{get:s.get,set:s.set}:s[m],h);if(a==="accessor"){if(b===void 0)continue;if(b===null||typeof b!="object")throw new TypeError("Object expected");(l=u(b.get))&&(s.get=l),(l=u(b.set))&&(s.set=l),(l=u(b.init))&&o.unshift(l)}else(l=u(b))&&(a==="field"?o.unshift(l):s[m]=l)}d&&Object.defineProperty(d,i.name,s),f=!0}function gN(e,t,n){for(var i=arguments.length>2,o=0;o0&&r[r.length-1])&&(d[0]===6||d[0]===2)){n=0;continue}if(d[0]===3&&(!r||d[1]>r[0]&&d[1]=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function eh(e,t){var n=typeof Symbol=="function"&&e[Symbol.iterator];if(!n)return e;var i=n.call(e),o,r=[],u;try{for(;(t===void 0||t-- >0)&&!(o=i.next()).done;)r.push(o.value)}catch(a){u={error:a}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(u)throw u.error}}return r}function Qv(){for(var e=[],t=0;t1||a(f,p)})})}function a(f,p){try{m(i[f](p))}catch(h){l(r[0][3],h)}}function m(f){f.value instanceof eo?Promise.resolve(f.value.v).then(d,s):l(r[0][2],f)}function d(f){a("next",f)}function s(f){a("throw",f)}function l(f,p){f(p),r.shift(),r.length&&a(r[0][0],r[0][1])}}function rT(e){var t,n;return t={},i("next"),i("throw",function(o){throw o}),i("return"),t[Symbol.iterator]=function(){return this},t;function i(o,r){t[o]=e[o]?function(u){return(n=!n)?{value:eo(e[o](u)),done:!1}:r?r(u):u}:r}}function nT(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof Oc=="function"?Oc(e):e[Symbol.iterator](),n={},i("next"),i("throw"),i("return"),n[Symbol.asyncIterator]=function(){return this},n);function i(r){n[r]=e[r]&&function(u){return new Promise(function(a,m){u=e[r](u),o(a,m,u.done,u.value)})}}function o(r,u,a,m){Promise.resolve(m).then(function(d){r({value:d,done:a})},u)}}function iT(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function sT(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n in e)n!=="default"&&Object.prototype.hasOwnProperty.call(e,n)&&Nc(t,e,n);return EN(t,e),t}function aT(e){return e&&e.__esModule?e:{default:e}}function oT(e,t,n,i){if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a getter");if(typeof t=="function"?e!==t||!i:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return n==="m"?i:n==="a"?i.call(e):i?i.value:t.get(e)}function lT(e,t,n,i,o){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!o)throw new TypeError("Private accessor was defined without a setter");if(typeof t=="function"?e!==t||!o:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?o.call(e,n):o?o.value=n:t.set(e,n),n}function uT(e,t){if(t===null||typeof t!="object"&&typeof t!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof e=="function"?t===e:e.has(t)}function cT(e,t,n){if(t!=null){if(typeof t!="object"&&typeof t!="function")throw new TypeError("Object expected.");var i;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");i=t[Symbol.asyncDispose]}if(i===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");i=t[Symbol.dispose]}if(typeof i!="function")throw new TypeError("Object not disposable.");e.stack.push({value:t,dispose:i,async:n})}else n&&e.stack.push({async:!0});return t}function pT(e){function t(i){e.error=e.hasError?new SN(i,e.error,"An error was suppressed during disposal."):i,e.hasError=!0}function n(){for(;e.stack.length;){var i=e.stack.pop();try{var o=i.dispose&&i.dispose.call(i.value);if(i.async)return Promise.resolve(o).then(n,function(r){return t(r),n()})}catch(r){t(r)}}if(e.hasError)throw e.error}return n()}var Zf,Ic,Nc,EN,SN,xN,gr=mN(()=>{Zf=function(e,t){return Zf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(n[o]=i[o])},Zf(e,t)};Ic=function(){return Ic=Object.assign||function(t){for(var n,i=1,o=arguments.length;i{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});ml.Def=void 0;var to=(gr(),Er(br)),yT=Object.prototype,Lc=yT.toString,gi=yT.hasOwnProperty,hl=function(){function e(){}return e.prototype.assert=function(t,n){if(!this.check(t,n)){var i=rh(t);throw new Error(i+" does not match type "+this)}return!0},e.prototype.arrayOf=function(){var t=this;return new th(t)},e}(),th=function(e){to.__extends(t,e);function t(n){var i=e.call(this)||this;return i.elemType=n,i.kind="ArrayType",i}return t.prototype.toString=function(){return"["+this.elemType+"]"},t.prototype.check=function(n,i){var o=this;return Array.isArray(n)&&n.every(function(r){return o.elemType.check(r,i)})},t}(hl),dT=function(e){to.__extends(t,e);function t(n){var i=e.call(this)||this;return i.value=n,i.kind="IdentityType",i}return t.prototype.toString=function(){return String(this.value)},t.prototype.check=function(n,i){var o=n===this.value;return!o&&typeof i=="function"&&i(this,n),o},t}(hl),fT=function(e){to.__extends(t,e);function t(n){var i=e.call(this)||this;return i.fields=n,i.kind="ObjectType",i}return t.prototype.toString=function(){return"{ "+this.fields.join(", ")+" }"},t.prototype.check=function(n,i){return Lc.call(n)===Lc.call({})&&this.fields.every(function(o){return o.type.check(n[o.name],i)})},t}(hl),hT=function(e){to.__extends(t,e);function t(n){var i=e.call(this)||this;return i.types=n,i.kind="OrType",i}return t.prototype.toString=function(){return this.types.join(" | ")},t.prototype.check=function(n,i){return this.types.some(function(o){return o.check(n,i)})},t}(hl),Fc=function(e){to.__extends(t,e);function t(n,i){var o=e.call(this)||this;return o.name=n,o.predicate=i,o.kind="PredicateType",o}return t.prototype.toString=function(){return this.name},t.prototype.check=function(n,i){var o=this.predicate(n,i);return!o&&typeof i=="function"&&i(this,n),o},t}(hl),jc=function(){function e(t,n){this.type=t,this.typeName=n,this.baseNames=[],this.ownFields=Object.create(null),this.allSupertypes=Object.create(null),this.supertypeList=[],this.allFields=Object.create(null),this.fieldNames=[],this.finalized=!1,this.buildable=!1,this.buildParams=[]}return e.prototype.isSupertypeOf=function(t){if(t instanceof e){if(this.finalized!==!0||t.finalized!==!0)throw new Error("");return gi.call(t.allSupertypes,this.typeName)}else throw new Error(t+" is not a Def")},e.prototype.checkAllFields=function(t,n){var i=this.allFields;if(this.finalized!==!0)throw new Error(""+this.typeName);function o(r){var u=i[r],a=u.type,m=u.getValue(t);return a.check(m,n)}return t!==null&&typeof t=="object"&&Object.keys(i).every(o)},e.prototype.bases=function(){for(var t=[],n=0;n=0)return i[N];if(typeof B!="string")throw new Error("missing name");return new Fc(B,U)}return new dT(U)},def:function(U){return gi.call(b,U)?b[U]:b[U]=new v(U)},hasDef:function(U){return gi.call(b,U)}},n=[],i=[];function o(U,B){var N=Lc.call(B),X=new Fc(U,function(H){return Lc.call(H)===N});return B&&typeof B.constructor=="function"&&(n.push(B.constructor),i.push(X)),X}var r=o("string","truthy"),u=o("function",function(){}),a=o("array",[]),m=o("object",{}),d=o("RegExp",/./),s=o("Date",new Date),l=o("number",3),f=o("boolean",!0),p=o("null",null),h=o("undefined",void 0),y={string:r,function:u,array:a,object:m,RegExp:d,Date:s,number:l,boolean:f,null:p,undefined:h},b=Object.create(null);function E(U){if(U&&typeof U=="object"){var B=U.type;if(typeof B=="string"&&gi.call(b,B)){var N=b[B];if(N.finalized)return N}}return null}var v=function(U){to.__extends(B,U);function B(N){var X=U.call(this,new Fc(N,function(H,F){return X.check(H,F)}),N)||this;return X}return B.prototype.check=function(N,X){if(this.finalized!==!0)throw new Error("prematurely checking unfinalized type "+this.typeName);if(N===null||typeof N!="object")return!1;var H=E(N);return H?X&&H===this?this.checkAllFields(N,X):this.isSupertypeOf(H)?X?H.checkAllFields(N,X)&&this.checkAllFields(N,!1):!0:!1:this.typeName==="SourceLocation"||this.typeName==="Position"?this.checkAllFields(N,X):!1},B.prototype.build=function(){for(var N=this,X=[],H=0;H=0&&z(this.typeName)}},B}(jc);function S(U){if(!gi.call(b,U))throw new Error("");var B=b[U];if(B.finalized!==!0)throw new Error("");return B.supertypeList.slice(1)}function w(U){for(var B={},N=Object.keys(b),X=N.length,H=0;H{"use strict";Object.defineProperty(Rc,"__esModule",{value:!0});var wN=(gr(),Er(br)),CN=wN.__importDefault(nn()),AN=Object.prototype,Mc=AN.hasOwnProperty;function PN(e){var t=e.use(CN.default),n=t.builtInTypes.array,i=t.builtInTypes.number,o=function l(f,p,h){if(!(this instanceof l))throw new Error("Path constructor cannot be invoked without 'new'");if(p){if(!(p instanceof l))throw new Error("")}else p=null,h=null;this.value=f,this.parentPath=p,this.name=h,this.__childCache=null},r=o.prototype;function u(l){return l.__childCache||(l.__childCache=Object.create(null))}function a(l,f){var p=u(l),h=l.getValueProperty(f),y=p[f];return(!Mc.call(p,f)||y.value!==h)&&(y=p[f]=new l.constructor(h,l,f)),y}r.getValueProperty=function(f){return this.value[f]},r.get=function(){for(var f=[],p=0;p=0&&(h[l.name=y]=l)}else p[l.name]=l.value,h[l.name]=l;if(p[l.name]!==l.value)throw new Error("");if(l.parentPath.get(l.name)!==l)throw new Error("");return l}return r.replace=function(f){var p=[],h=this.parentPath.value,y=u(this.parentPath),b=arguments.length;if(s(this),n.check(h)){for(var E=h.length,v=d(this.parentPath,b-1,this.name+1),S=[this.name,1],w=0;w{"use strict";Object.defineProperty(Bc,"__esModule",{value:!0});var kN=(gr(),Er(br)),DN=kN.__importDefault(nn()),yl=Object.prototype.hasOwnProperty;function IN(e){var t=e.use(DN.default),n=t.Type,i=t.namedTypes,o=i.Node,r=i.Expression,u=t.builtInTypes.array,a=t.builders,m=function v(S,w){if(!(this instanceof v))throw new Error("Scope constructor cannot be invoked without 'new'");s.assert(S.value);var A;if(w){if(!(w instanceof v))throw new Error("");A=w.depth+1}else w=null,A=0;Object.defineProperties(this,{path:{value:S},node:{value:S.value},isGlobal:{value:!w,enumerable:!0},depth:{value:A},parent:{value:w},bindings:{value:{}},types:{value:{}}})},d=[i.Program,i.Function,i.CatchClause],s=n.or.apply(n,d);m.isEstablishedBy=function(v){return s.check(v)};var l=m.prototype;l.didScan=!1,l.declares=function(v){return this.scan(),yl.call(this.bindings,v)},l.declaresType=function(v){return this.scan(),yl.call(this.types,v)},l.declareTemporary=function(v){if(v){if(!/^[a-z$_]/i.test(v))throw new Error("")}else v="t$";v+=this.depth.toString(36)+"$",this.scan();for(var S=0;this.declares(v+S);)++S;var w=v+S;return this.bindings[w]=t.builders.identifier(w)},l.injectTemporary=function(v,S){v||(v=this.declareTemporary());var w=this.path.get("body");return i.BlockStatement.check(w.value)&&(w=w.get("body")),w.unshift(a.variableDeclaration("var",[a.variableDeclarator(v,S||null)])),v},l.scan=function(v){if(v||!this.didScan){for(var S in this.bindings)delete this.bindings[S];f(this.path,this.bindings,this.types),this.didScan=!0}},l.getBindings=function(){return this.scan(),this.bindings},l.getTypes=function(){return this.scan(),this.types};function f(v,S,w){var A=v.value;if(s.assert(A),i.CatchClause.check(A)){var x=v.get("param");x.value&&b(x,S)}else p(v,S,w)}function p(v,S,w){var A=v.value;v.parent&&i.FunctionExpression.check(v.parent.node)&&v.parent.node.id&&b(v.parent.get("id"),S),A&&(u.check(A)?v.each(function(x){y(x,S,w)}):i.Function.check(A)?(v.get("params").each(function(x){b(x,S)}),y(v.get("body"),S,w)):i.TypeAlias&&i.TypeAlias.check(A)||i.InterfaceDeclaration&&i.InterfaceDeclaration.check(A)||i.TSTypeAliasDeclaration&&i.TSTypeAliasDeclaration.check(A)||i.TSInterfaceDeclaration&&i.TSInterfaceDeclaration.check(A)?E(v.get("id"),w):i.VariableDeclarator.check(A)?(b(v.get("id"),S),y(v.get("init"),S,w)):A.type==="ImportSpecifier"||A.type==="ImportNamespaceSpecifier"||A.type==="ImportDefaultSpecifier"?b(v.get(A.local?"local":A.name?"name":"id"),S):o.check(A)&&!r.check(A)&&t.eachField(A,function(x,C){var P=v.get(x);if(!h(P,C))throw new Error("");y(P,S,w)}))}function h(v,S){return!!(v.value===S||Array.isArray(v.value)&&v.value.length===0&&Array.isArray(S)&&S.length===0)}function y(v,S,w){var A=v.value;if(!(!A||r.check(A)))if(i.FunctionDeclaration.check(A)&&A.id!==null)b(v.get("id"),S);else if(i.ClassDeclaration&&i.ClassDeclaration.check(A))b(v.get("id"),S);else if(s.check(A)){if(i.CatchClause.check(A)&&i.Identifier.check(A.param)){var x=A.param.name,C=yl.call(S,x);p(v.get("body"),S,w),C||delete S[x]}}else p(v,S,w)}function b(v,S){var w=v.value;i.Pattern.assert(w),i.Identifier.check(w)?yl.call(S,w.name)?S[w.name].push(v):S[w.name]=[v]:i.AssignmentPattern&&i.AssignmentPattern.check(w)?b(v.get("left"),S):i.ObjectPattern&&i.ObjectPattern.check(w)?v.get("properties").each(function(A){var x=A.value;i.Pattern.check(x)?b(A,S):i.Property.check(x)?b(A.get("value"),S):i.SpreadProperty&&i.SpreadProperty.check(x)&&b(A.get("argument"),S)}):i.ArrayPattern&&i.ArrayPattern.check(w)?v.get("elements").each(function(A){var x=A.value;i.Pattern.check(x)?b(A,S):i.SpreadElement&&i.SpreadElement.check(x)&&b(A.get("argument"),S)}):i.PropertyPattern&&i.PropertyPattern.check(w)?b(v.get("pattern"),S):(i.SpreadElementPattern&&i.SpreadElementPattern.check(w)||i.RestElement&&i.RestElement.check(w)||i.SpreadPropertyPattern&&i.SpreadPropertyPattern.check(w))&&b(v.get("argument"),S)}function E(v,S){var w=v.value;i.Pattern.assert(w),i.Identifier.check(w)&&(yl.call(S,w.name)?S[w.name].push(v):S[w.name]=[v])}return l.lookup=function(v){for(var S=this;S&&!S.declares(v);S=S.parent);return S},l.lookupType=function(v){for(var S=this;S&&!S.declaresType(v);S=S.parent);return S},l.getGlobalScope=function(){for(var v=this;!v.isGlobal;)v=v.parent;return v},m}Bc.default=IN;gT.exports=Bc.default});var sh=me((Uc,TT)=>{"use strict";Object.defineProperty(Uc,"__esModule",{value:!0});var ih=(gr(),Er(br)),ON=ih.__importDefault(nn()),NN=ih.__importDefault(nh()),FN=ih.__importDefault(vT());function jN(e){var t=e.use(ON.default),n=t.namedTypes,i=t.builders,o=t.builtInTypes.number,r=t.builtInTypes.array,u=e.use(NN.default),a=e.use(FN.default),m=function E(v,S,w){if(!(this instanceof E))throw new Error("NodePath constructor cannot be invoked without 'new'");u.call(this,v,S,w)},d=m.prototype=Object.create(u.prototype,{constructor:{value:m,enumerable:!1,writable:!0,configurable:!0}});Object.defineProperties(d,{node:{get:function(){return Object.defineProperty(this,"node",{configurable:!0,value:this._computeNode()}),this.node}},parent:{get:function(){return Object.defineProperty(this,"parent",{configurable:!0,value:this._computeParent()}),this.parent}},scope:{get:function(){return Object.defineProperty(this,"scope",{configurable:!0,value:this._computeScope()}),this.scope}}}),d.replace=function(){return delete this.node,delete this.parent,delete this.scope,u.prototype.replace.apply(this,arguments)},d.prune=function(){var E=this.parent;return this.replace(),y(E)},d._computeNode=function(){var E=this.value;if(n.Node.check(E))return E;var v=this.parentPath;return v&&v.node||null},d._computeParent=function(){var E=this.value,v=this.parentPath;if(!n.Node.check(E)){for(;v&&!n.Node.check(v.value);)v=v.parentPath;v&&(v=v.parentPath)}for(;v&&!n.Node.check(v.value);)v=v.parentPath;return v||null},d._computeScope=function(){var E=this.value,v=this.parentPath,S=v&&v.scope;return n.Node.check(E)&&a.isEstablishedBy(E)&&(S=new a(this,S)),S||null},d.getValueProperty=function(E){return t.getFieldValue(this.value,E)},d.needsParens=function(E){var v=this.parentPath;if(!v)return!1;var S=this.value;if(!n.Expression.check(S)||S.type==="Identifier")return!1;for(;!n.Node.check(v.value);)if(v=v.parentPath,!v)return!1;var w=v.value;switch(S.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return w.type==="MemberExpression"&&this.name==="object"&&w.object===S;case"BinaryExpression":case"LogicalExpression":switch(w.type){case"CallExpression":return this.name==="callee"&&w.callee===S;case"UnaryExpression":case"SpreadElement":case"SpreadProperty":return!0;case"MemberExpression":return this.name==="object"&&w.object===S;case"BinaryExpression":case"LogicalExpression":{var A=S,x=w.operator,C=f[x],P=A.operator,D=f[P];if(C>D)return!0;if(C===D&&this.name==="right"){if(w.right!==A)throw new Error("Nodes must be equal");return!0}}default:return!1}case"SequenceExpression":switch(w.type){case"ForStatement":return!1;case"ExpressionStatement":return this.name!=="expression";default:return!0}case"YieldExpression":switch(w.type){case"BinaryExpression":case"LogicalExpression":case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"CallExpression":case"MemberExpression":case"NewExpression":case"ConditionalExpression":case"YieldExpression":return!0;default:return!1}case"Literal":return w.type==="MemberExpression"&&o.check(S.value)&&this.name==="object"&&w.object===S;case"AssignmentExpression":case"ConditionalExpression":switch(w.type){case"UnaryExpression":case"SpreadElement":case"SpreadProperty":case"BinaryExpression":case"LogicalExpression":return!0;case"CallExpression":return this.name==="callee"&&w.callee===S;case"ConditionalExpression":return this.name==="test"&&w.test===S;case"MemberExpression":return this.name==="object"&&w.object===S;default:return!1}default:if(w.type==="NewExpression"&&this.name==="callee"&&w.callee===S)return p(S)}return!!(E!==!0&&!this.canBeFirstInStatement()&&this.firstInStatement())};function s(E){return n.BinaryExpression.check(E)||n.LogicalExpression.check(E)}function l(E){return n.UnaryExpression.check(E)||n.SpreadElement&&n.SpreadElement.check(E)||n.SpreadProperty&&n.SpreadProperty.check(E)}var f={};[["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]].forEach(function(E,v){E.forEach(function(S){f[S]=v})});function p(E){return n.CallExpression.check(E)?!0:r.check(E)?E.some(p):n.Node.check(E)?t.someField(E,function(v,S){return p(S)}):!1}d.canBeFirstInStatement=function(){var E=this.node;return!n.FunctionExpression.check(E)&&!n.ObjectExpression.check(E)},d.firstInStatement=function(){return h(this)};function h(E){for(var v,S;E.parent;E=E.parent){if(v=E.node,S=E.parent.node,n.BlockStatement.check(S)&&E.parent.name==="body"&&E.name===0){if(S.body[0]!==v)throw new Error("Nodes must be equal");return!0}if(n.ExpressionStatement.check(S)&&E.name==="expression"){if(S.expression!==v)throw new Error("Nodes must be equal");return!0}if(n.SequenceExpression.check(S)&&E.parent.name==="expressions"&&E.name===0){if(S.expressions[0]!==v)throw new Error("Nodes must be equal");continue}if(n.CallExpression.check(S)&&E.name==="callee"){if(S.callee!==v)throw new Error("Nodes must be equal");continue}if(n.MemberExpression.check(S)&&E.name==="object"){if(S.object!==v)throw new Error("Nodes must be equal");continue}if(n.ConditionalExpression.check(S)&&E.name==="test"){if(S.test!==v)throw new Error("Nodes must be equal");continue}if(s(S)&&E.name==="left"){if(S.left!==v)throw new Error("Nodes must be equal");continue}if(n.UnaryExpression.check(S)&&!S.prefix&&E.name==="argument"){if(S.argument!==v)throw new Error("Nodes must be equal");continue}return!1}return!0}function y(E){if(n.VariableDeclaration.check(E.node)){var v=E.get("declarations").value;if(!v||v.length===0)return E.prune()}else if(n.ExpressionStatement.check(E.node)){if(!E.get("expression").value)return E.prune()}else n.IfStatement.check(E.node)&&b(E);return E}function b(E){var v=E.get("test").value,S=E.get("alternate").value,w=E.get("consequent").value;if(!w&&!S){var A=i.expressionStatement(v);E.replace(A)}else if(!w&&S){var x=i.unaryExpression("!",v,!0);n.UnaryExpression.check(v)&&v.operator==="!"&&(x=v.argument),E.get("test").replace(x),E.get("consequent").replace(S),E.get("alternate").replace()}}return m}Uc.default=jN;TT.exports=Uc.default});var xT=me((Vc,ST)=>{"use strict";Object.defineProperty(Vc,"__esModule",{value:!0});var ET=(gr(),Er(br)),LN=ET.__importDefault(nn()),MN=ET.__importDefault(sh()),$c=Object.prototype.hasOwnProperty;function RN(e){var t=e.use(LN.default),n=e.use(MN.default),i=t.builtInTypes.array,o=t.builtInTypes.object,r=t.builtInTypes.function,u,a=function h(){if(!(this instanceof h))throw new Error("PathVisitor constructor cannot be invoked without 'new'");this._reusableContextStack=[],this._methodNameTable=m(this),this._shouldVisitComments=$c.call(this._methodNameTable,"Block")||$c.call(this._methodNameTable,"Line"),this.Context=f(this),this._visiting=!1,this._changeReported=!1};function m(h){var y=Object.create(null);for(var b in h)/^visit[A-Z]/.test(b)&&(y[b.slice(5)]=!0);for(var E=t.computeSupertypeLookupTable(y),v=Object.create(null),S=Object.keys(E),w=S.length,A=0;A{"use strict";Object.defineProperty(qc,"__esModule",{value:!0});var BN=(gr(),Er(br)),UN=BN.__importDefault(nn());function $N(e){var t=e.use(UN.default),n=t.getFieldNames,i=t.getFieldValue,o=t.builtInTypes.array,r=t.builtInTypes.object,u=t.builtInTypes.Date,a=t.builtInTypes.RegExp,m=Object.prototype.hasOwnProperty;function d(h,y,b){return o.check(b)?b.length=0:b=null,l(h,y,b)}d.assert=function(h,y){var b=[];if(!d(h,y,b))if(b.length===0){if(h!==y)throw new Error("Nodes must be equal")}else throw new Error("Nodes differ in the following path: "+b.map(s).join(""))};function s(h){return/[_$a-z][_$a-z0-9]*/i.test(h)?"."+h:"["+JSON.stringify(h)+"]"}function l(h,y,b){return h===y?!0:o.check(h)?f(h,y,b):r.check(h)?p(h,y,b):u.check(h)?u.check(y)&&+h==+y:a.check(h)?a.check(y)&&h.source===y.source&&h.global===y.global&&h.multiline===y.multiline&&h.ignoreCase===y.ignoreCase:h==y}function f(h,y,b){o.assert(h);var E=h.length;if(!o.check(y)||y.length!==E)return b&&b.push("length"),!1;for(var v=0;v{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});var bl=(gr(),Er(br)),VN=bl.__importDefault(nn()),qN=bl.__importDefault(xT()),WN=bl.__importDefault(wT()),KN=bl.__importDefault(nh()),zN=bl.__importDefault(sh());function GN(e){var t=HN(),n=t.use(VN.default);e.forEach(t.use),n.finalize();var i=t.use(qN.default);return{Type:n.Type,builtInTypes:n.builtInTypes,namedTypes:n.namedTypes,builders:n.builders,defineMethod:n.defineMethod,getFieldNames:n.getFieldNames,getFieldValue:n.getFieldValue,eachField:n.eachField,someField:n.someField,getSupertypeNames:n.getSupertypeNames,getBuilderName:n.getBuilderName,astNodesAreEquivalent:t.use(WN.default),finalize:n.finalize,Path:t.use(KN.default),NodePath:t.use(zN.default),PathVisitor:i,use:t.use,visit:i.visit}}Wc.default=GN;function HN(){var e=[],t=[];function n(o){var r=e.indexOf(o);return r===-1&&(r=e.length,e.push(o),t[r]=o(i)),t[r]}var i={use:n};return i}CT.exports=Wc.default});var Kc=me(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});qs.LogicalOperators=qs.AssignmentOperators=qs.BinaryOperators=void 0;qs.BinaryOperators=["==","!=","===","!==","<","<=",">",">=","<<",">>",">>>","+","-","*","/","%","&","|","^","in","instanceof"];qs.AssignmentOperators=["=","+=","-=","*=","/=","%=","<<=",">>=",">>>=","|=","^=","&="];qs.LogicalOperators=["||","&&"]});var Xn=me((zc,PT)=>{"use strict";Object.defineProperty(zc,"__esModule",{value:!0});var XN=(gr(),Er(br)),JN=XN.__importDefault(nn());function YN(e){var t=e.use(JN.default),n=t.Type,i=t.builtInTypes,o=i.number;function r(d){return n.from(function(s){return o.check(s)&&s>=d},o+" >= "+d)}var u={null:function(){return null},emptyArray:function(){return[]},false:function(){return!1},true:function(){return!0},undefined:function(){},"use strict":function(){return"use strict"}},a=n.or(i.string,i.number,i.boolean,i.null,i.undefined),m=n.from(function(d){if(d===null)return!0;var s=typeof d;return!(s==="object"||s==="function")},a.toString());return{geq:r,defaults:u,isPrimitive:m}}zc.default=YN;PT.exports=zc.default});var oh=me((Gc,DT)=>{"use strict";Object.defineProperty(Gc,"__esModule",{value:!0});var kT=(gr(),Er(br)),ah=Kc(),QN=kT.__importDefault(nn()),ZN=kT.__importDefault(Xn());function eF(e){var t=e.use(QN.default),n=t.Type,i=n.def,o=n.or,r=e.use(ZN.default),u=r.defaults,a=r.geq;i("Printable").field("loc",o(i("SourceLocation"),null),u.null,!0),i("Node").bases("Printable").field("type",String).field("comments",o([i("Comment")],null),u.null,!0),i("SourceLocation").field("start",i("Position")).field("end",i("Position")).field("source",o(String,null),u.null),i("Position").field("line",a(1)).field("column",a(0)),i("File").bases("Node").build("program","name").field("program",i("Program")).field("name",o(String,null),u.null),i("Program").bases("Node").build("body").field("body",[i("Statement")]),i("Function").bases("Node").field("id",o(i("Identifier"),null),u.null).field("params",[i("Pattern")]).field("body",i("BlockStatement")).field("generator",Boolean,u.false).field("async",Boolean,u.false),i("Statement").bases("Node"),i("EmptyStatement").bases("Statement").build(),i("BlockStatement").bases("Statement").build("body").field("body",[i("Statement")]),i("ExpressionStatement").bases("Statement").build("expression").field("expression",i("Expression")),i("IfStatement").bases("Statement").build("test","consequent","alternate").field("test",i("Expression")).field("consequent",i("Statement")).field("alternate",o(i("Statement"),null),u.null),i("LabeledStatement").bases("Statement").build("label","body").field("label",i("Identifier")).field("body",i("Statement")),i("BreakStatement").bases("Statement").build("label").field("label",o(i("Identifier"),null),u.null),i("ContinueStatement").bases("Statement").build("label").field("label",o(i("Identifier"),null),u.null),i("WithStatement").bases("Statement").build("object","body").field("object",i("Expression")).field("body",i("Statement")),i("SwitchStatement").bases("Statement").build("discriminant","cases","lexical").field("discriminant",i("Expression")).field("cases",[i("SwitchCase")]).field("lexical",Boolean,u.false),i("ReturnStatement").bases("Statement").build("argument").field("argument",o(i("Expression"),null)),i("ThrowStatement").bases("Statement").build("argument").field("argument",i("Expression")),i("TryStatement").bases("Statement").build("block","handler","finalizer").field("block",i("BlockStatement")).field("handler",o(i("CatchClause"),null),function(){return this.handlers&&this.handlers[0]||null}).field("handlers",[i("CatchClause")],function(){return this.handler?[this.handler]:[]},!0).field("guardedHandlers",[i("CatchClause")],u.emptyArray).field("finalizer",o(i("BlockStatement"),null),u.null),i("CatchClause").bases("Node").build("param","guard","body").field("param",i("Pattern")).field("guard",o(i("Expression"),null),u.null).field("body",i("BlockStatement")),i("WhileStatement").bases("Statement").build("test","body").field("test",i("Expression")).field("body",i("Statement")),i("DoWhileStatement").bases("Statement").build("body","test").field("body",i("Statement")).field("test",i("Expression")),i("ForStatement").bases("Statement").build("init","test","update","body").field("init",o(i("VariableDeclaration"),i("Expression"),null)).field("test",o(i("Expression"),null)).field("update",o(i("Expression"),null)).field("body",i("Statement")),i("ForInStatement").bases("Statement").build("left","right","body").field("left",o(i("VariableDeclaration"),i("Expression"))).field("right",i("Expression")).field("body",i("Statement")),i("DebuggerStatement").bases("Statement").build(),i("Declaration").bases("Statement"),i("FunctionDeclaration").bases("Function","Declaration").build("id","params","body").field("id",i("Identifier")),i("FunctionExpression").bases("Function","Expression").build("id","params","body"),i("VariableDeclaration").bases("Declaration").build("kind","declarations").field("kind",o("var","let","const")).field("declarations",[i("VariableDeclarator")]),i("VariableDeclarator").bases("Node").build("id","init").field("id",i("Pattern")).field("init",o(i("Expression"),null),u.null),i("Expression").bases("Node"),i("ThisExpression").bases("Expression").build(),i("ArrayExpression").bases("Expression").build("elements").field("elements",[o(i("Expression"),null)]),i("ObjectExpression").bases("Expression").build("properties").field("properties",[i("Property")]),i("Property").bases("Node").build("kind","key","value").field("kind",o("init","get","set")).field("key",o(i("Literal"),i("Identifier"))).field("value",i("Expression")),i("SequenceExpression").bases("Expression").build("expressions").field("expressions",[i("Expression")]);var m=o("-","+","!","~","typeof","void","delete");i("UnaryExpression").bases("Expression").build("operator","argument","prefix").field("operator",m).field("argument",i("Expression")).field("prefix",Boolean,u.true);var d=o.apply(void 0,ah.BinaryOperators);i("BinaryExpression").bases("Expression").build("operator","left","right").field("operator",d).field("left",i("Expression")).field("right",i("Expression"));var s=o.apply(void 0,ah.AssignmentOperators);i("AssignmentExpression").bases("Expression").build("operator","left","right").field("operator",s).field("left",o(i("Pattern"),i("MemberExpression"))).field("right",i("Expression"));var l=o("++","--");i("UpdateExpression").bases("Expression").build("operator","argument","prefix").field("operator",l).field("argument",i("Expression")).field("prefix",Boolean);var f=o.apply(void 0,ah.LogicalOperators);i("LogicalExpression").bases("Expression").build("operator","left","right").field("operator",f).field("left",i("Expression")).field("right",i("Expression")),i("ConditionalExpression").bases("Expression").build("test","consequent","alternate").field("test",i("Expression")).field("consequent",i("Expression")).field("alternate",i("Expression")),i("NewExpression").bases("Expression").build("callee","arguments").field("callee",i("Expression")).field("arguments",[i("Expression")]),i("CallExpression").bases("Expression").build("callee","arguments").field("callee",i("Expression")).field("arguments",[i("Expression")]),i("MemberExpression").bases("Expression").build("object","property","computed").field("object",i("Expression")).field("property",o(i("Identifier"),i("Expression"))).field("computed",Boolean,function(){var p=this.property.type;return p==="Literal"||p==="MemberExpression"||p==="BinaryExpression"}),i("Pattern").bases("Node"),i("SwitchCase").bases("Node").build("test","consequent").field("test",o(i("Expression"),null)).field("consequent",[i("Statement")]),i("Identifier").bases("Expression","Pattern").build("name").field("name",String).field("optional",Boolean,u.false),i("Literal").bases("Expression").build("value").field("value",o(String,Boolean,null,Number,RegExp)).field("regex",o({pattern:String,flags:String},null),function(){if(this.value instanceof RegExp){var p="";return this.value.ignoreCase&&(p+="i"),this.value.multiline&&(p+="m"),this.value.global&&(p+="g"),{pattern:this.value.source,flags:p}}return null}),i("Comment").bases("Printable").field("value",String).field("leading",Boolean,u.true).field("trailing",Boolean,u.false)}Gc.default=eF;DT.exports=Gc.default});var uh=me((Hc,IT)=>{"use strict";Object.defineProperty(Hc,"__esModule",{value:!0});var lh=(gr(),Er(br)),tF=lh.__importDefault(oh()),rF=lh.__importDefault(nn()),nF=lh.__importDefault(Xn());function iF(e){e.use(tF.default);var t=e.use(rF.default),n=t.Type.def,i=t.Type.or,o=e.use(nF.default).defaults;n("Function").field("generator",Boolean,o.false).field("expression",Boolean,o.false).field("defaults",[i(n("Expression"),null)],o.emptyArray).field("rest",i(n("Identifier"),null),o.null),n("RestElement").bases("Pattern").build("argument").field("argument",n("Pattern")).field("typeAnnotation",i(n("TypeAnnotation"),n("TSTypeAnnotation"),null),o.null),n("SpreadElementPattern").bases("Pattern").build("argument").field("argument",n("Pattern")),n("FunctionDeclaration").build("id","params","body","generator","expression").field("id",i(n("Identifier"),null)),n("FunctionExpression").build("id","params","body","generator","expression"),n("ArrowFunctionExpression").bases("Function","Expression").build("params","body","expression").field("id",null,o.null).field("body",i(n("BlockStatement"),n("Expression"))).field("generator",!1,o.false),n("ForOfStatement").bases("Statement").build("left","right","body").field("left",i(n("VariableDeclaration"),n("Pattern"))).field("right",n("Expression")).field("body",n("Statement")),n("YieldExpression").bases("Expression").build("argument","delegate").field("argument",i(n("Expression"),null)).field("delegate",Boolean,o.false),n("GeneratorExpression").bases("Expression").build("body","blocks","filter").field("body",n("Expression")).field("blocks",[n("ComprehensionBlock")]).field("filter",i(n("Expression"),null)),n("ComprehensionExpression").bases("Expression").build("body","blocks","filter").field("body",n("Expression")).field("blocks",[n("ComprehensionBlock")]).field("filter",i(n("Expression"),null)),n("ComprehensionBlock").bases("Node").build("left","right","each").field("left",n("Pattern")).field("right",n("Expression")).field("each",Boolean),n("Property").field("key",i(n("Literal"),n("Identifier"),n("Expression"))).field("value",i(n("Expression"),n("Pattern"))).field("method",Boolean,o.false).field("shorthand",Boolean,o.false).field("computed",Boolean,o.false),n("ObjectProperty").field("shorthand",Boolean,o.false),n("PropertyPattern").bases("Pattern").build("key","pattern").field("key",i(n("Literal"),n("Identifier"),n("Expression"))).field("pattern",n("Pattern")).field("computed",Boolean,o.false),n("ObjectPattern").bases("Pattern").build("properties").field("properties",[i(n("PropertyPattern"),n("Property"))]),n("ArrayPattern").bases("Pattern").build("elements").field("elements",[i(n("Pattern"),null)]),n("SpreadElement").bases("Node").build("argument").field("argument",n("Expression")),n("ArrayExpression").field("elements",[i(n("Expression"),n("SpreadElement"),n("RestElement"),null)]),n("NewExpression").field("arguments",[i(n("Expression"),n("SpreadElement"))]),n("CallExpression").field("arguments",[i(n("Expression"),n("SpreadElement"))]),n("AssignmentPattern").bases("Pattern").build("left","right").field("left",n("Pattern")).field("right",n("Expression")),n("MethodDefinition").bases("Declaration").build("kind","key","value","static").field("kind",i("constructor","method","get","set")).field("key",n("Expression")).field("value",n("Function")).field("computed",Boolean,o.false).field("static",Boolean,o.false);var r=i(n("MethodDefinition"),n("VariableDeclarator"),n("ClassPropertyDefinition"),n("ClassProperty"));n("ClassProperty").bases("Declaration").build("key").field("key",i(n("Literal"),n("Identifier"),n("Expression"))).field("computed",Boolean,o.false),n("ClassPropertyDefinition").bases("Declaration").build("definition").field("definition",r),n("ClassBody").bases("Declaration").build("body").field("body",[r]),n("ClassDeclaration").bases("Declaration").build("id","body","superClass").field("id",i(n("Identifier"),null)).field("body",n("ClassBody")).field("superClass",i(n("Expression"),null),o.null),n("ClassExpression").bases("Expression").build("id","body","superClass").field("id",i(n("Identifier"),null),o.null).field("body",n("ClassBody")).field("superClass",i(n("Expression"),null),o.null),n("Super").bases("Expression").build(),n("Specifier").bases("Node"),n("ModuleSpecifier").bases("Specifier").field("local",i(n("Identifier"),null),o.null).field("id",i(n("Identifier"),null),o.null).field("name",i(n("Identifier"),null),o.null),n("ImportSpecifier").bases("ModuleSpecifier").build("imported","local").field("imported",n("Identifier")),n("ImportDefaultSpecifier").bases("ModuleSpecifier").build("local"),n("ImportNamespaceSpecifier").bases("ModuleSpecifier").build("local"),n("ImportDeclaration").bases("Declaration").build("specifiers","source","importKind").field("specifiers",[i(n("ImportSpecifier"),n("ImportNamespaceSpecifier"),n("ImportDefaultSpecifier"))],o.emptyArray).field("source",n("Literal")).field("importKind",i("value","type"),function(){return"value"}),n("ExportNamedDeclaration").bases("Declaration").build("declaration","specifiers","source").field("declaration",i(n("Declaration"),null)).field("specifiers",[n("ExportSpecifier")],o.emptyArray).field("source",i(n("Literal"),null),o.null),n("ExportSpecifier").bases("ModuleSpecifier").build("local","exported").field("exported",n("Identifier")),n("ExportDefaultDeclaration").bases("Declaration").build("declaration").field("declaration",i(n("Declaration"),n("Expression"))),n("ExportAllDeclaration").bases("Declaration").build("source").field("source",n("Literal")),n("TaggedTemplateExpression").bases("Expression").build("tag","quasi").field("tag",n("Expression")).field("quasi",n("TemplateLiteral")),n("TemplateLiteral").bases("Expression").build("quasis","expressions").field("quasis",[n("TemplateElement")]).field("expressions",[n("Expression")]),n("TemplateElement").bases("Node").build("value","tail").field("value",{cooked:String,raw:String}).field("tail",Boolean),n("MetaProperty").bases("Expression").build("meta","property").field("meta",n("Identifier")).field("property",n("Identifier"))}Hc.default=iF;IT.exports=Hc.default});var ch=me((Jc,NT)=>{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});var Xc=(gr(),Er(br)),OT=Kc(),sF=Xc.__importDefault(uh()),aF=Xc.__importDefault(nn());function oF(e){e.use(sF.default);var t=e.use(aF.default),n=t.Type.def,i=t.Type.or,o=i.apply(void 0,Xc.__spreadArrays(OT.BinaryOperators,["**"]));n("BinaryExpression").field("operator",o);var r=i.apply(void 0,Xc.__spreadArrays(OT.AssignmentOperators,["**="]));n("AssignmentExpression").field("operator",r)}Jc.default=oF;NT.exports=Jc.default});var dh=me((Yc,FT)=>{"use strict";Object.defineProperty(Yc,"__esModule",{value:!0});var ph=(gr(),Er(br)),lF=ph.__importDefault(ch()),uF=ph.__importDefault(nn()),cF=ph.__importDefault(Xn());function pF(e){e.use(lF.default);var t=e.use(uF.default),n=t.Type.def,i=e.use(cF.default).defaults;n("Function").field("async",Boolean,i.false),n("AwaitExpression").bases("Expression").build("argument").field("argument",n("Expression"))}Yc.default=pF;FT.exports=Yc.default});var hh=me((Qc,jT)=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});var fh=(gr(),Er(br)),dF=fh.__importDefault(dh()),fF=fh.__importDefault(nn()),hF=fh.__importDefault(Xn());function mF(e){e.use(dF.default);var t=e.use(fF.default),n=t.Type.def,i=t.Type.or,o=e.use(hF.default).defaults;n("ForOfStatement").field("await",Boolean,o.false),n("SpreadProperty").bases("Node").build("argument").field("argument",n("Expression")),n("ObjectExpression").field("properties",[i(n("Property"),n("SpreadProperty"),n("SpreadElement"))]),n("TemplateElement").field("value",{cooked:i(String,null),raw:String}),n("SpreadPropertyPattern").bases("Pattern").build("argument").field("argument",n("Pattern")),n("ObjectPattern").field("properties",[i(n("PropertyPattern"),n("Property"),n("RestElement"),n("SpreadPropertyPattern"))])}Qc.default=mF;jT.exports=Qc.default});var yh=me((Zc,LT)=>{"use strict";Object.defineProperty(Zc,"__esModule",{value:!0});var mh=(gr(),Er(br)),yF=mh.__importDefault(hh()),bF=mh.__importDefault(nn()),gF=mh.__importDefault(Xn());function vF(e){e.use(yF.default);var t=e.use(bF.default),n=t.Type.def,i=t.Type.or,o=e.use(gF.default).defaults;n("CatchClause").field("param",i(n("Pattern"),null),o.null)}Zc.default=vF;LT.exports=Zc.default});var gl=me((tp,MT)=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var ep=(gr(),Er(br)),TF=Kc(),EF=ep.__importDefault(yh()),SF=ep.__importDefault(nn()),xF=ep.__importDefault(Xn());function _F(e){e.use(EF.default);var t=e.use(SF.default),n=t.Type.def,i=t.Type.or,o=e.use(xF.default),r=o.defaults;n("ImportExpression").bases("Expression").build("source").field("source",n("Expression")),n("ExportAllDeclaration").build("source","exported").field("source",n("Literal")).field("exported",i(n("Identifier"),null)),n("ChainElement").bases("Node").field("optional",Boolean,r.false),n("CallExpression").bases("Expression","ChainElement"),n("MemberExpression").bases("Expression","ChainElement"),n("ChainExpression").bases("Expression").build("expression").field("expression",n("ChainElement")),n("OptionalCallExpression").bases("CallExpression").build("callee","arguments","optional").field("optional",Boolean,r.true),n("OptionalMemberExpression").bases("MemberExpression").build("object","property","computed","optional").field("optional",Boolean,r.true);var u=i.apply(void 0,ep.__spreadArrays(TF.LogicalOperators,["??"]));n("LogicalExpression").field("operator",u)}tp.default=_F;MT.exports=tp.default});var BT=me((rp,RT)=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});var bh=(gr(),Er(br)),wF=bh.__importDefault(gl()),CF=bh.__importDefault(nn()),AF=bh.__importDefault(Xn());function PF(e){e.use(wF.default);var t=e.use(CF.default),n=t.Type.def,i=t.Type.or,o=e.use(AF.default).defaults;n("JSXAttribute").bases("Node").build("name","value").field("name",i(n("JSXIdentifier"),n("JSXNamespacedName"))).field("value",i(n("Literal"),n("JSXExpressionContainer"),n("JSXElement"),n("JSXFragment"),null),o.null),n("JSXIdentifier").bases("Identifier").build("name").field("name",String),n("JSXNamespacedName").bases("Node").build("namespace","name").field("namespace",n("JSXIdentifier")).field("name",n("JSXIdentifier")),n("JSXMemberExpression").bases("MemberExpression").build("object","property").field("object",i(n("JSXIdentifier"),n("JSXMemberExpression"))).field("property",n("JSXIdentifier")).field("computed",Boolean,o.false);var r=i(n("JSXIdentifier"),n("JSXNamespacedName"),n("JSXMemberExpression"));n("JSXSpreadAttribute").bases("Node").build("argument").field("argument",n("Expression"));var u=[i(n("JSXAttribute"),n("JSXSpreadAttribute"))];n("JSXExpressionContainer").bases("Expression").build("expression").field("expression",i(n("Expression"),n("JSXEmptyExpression")));var a=[i(n("JSXText"),n("JSXExpressionContainer"),n("JSXSpreadChild"),n("JSXElement"),n("JSXFragment"),n("Literal"))];n("JSXElement").bases("Expression").build("openingElement","closingElement","children").field("openingElement",n("JSXOpeningElement")).field("closingElement",i(n("JSXClosingElement"),null),o.null).field("children",a,o.emptyArray).field("name",r,function(){return this.openingElement.name},!0).field("selfClosing",Boolean,function(){return this.openingElement.selfClosing},!0).field("attributes",u,function(){return this.openingElement.attributes},!0),n("JSXOpeningElement").bases("Node").build("name","attributes","selfClosing").field("name",r).field("attributes",u,o.emptyArray).field("selfClosing",Boolean,o.false),n("JSXClosingElement").bases("Node").build("name").field("name",r),n("JSXFragment").bases("Expression").build("openingFragment","closingFragment","children").field("openingFragment",n("JSXOpeningFragment")).field("closingFragment",n("JSXClosingFragment")).field("children",a,o.emptyArray),n("JSXOpeningFragment").bases("Node").build(),n("JSXClosingFragment").bases("Node").build(),n("JSXText").bases("Literal").build("value","raw").field("value",String).field("raw",String,function(){return this.value}),n("JSXEmptyExpression").bases("Node").build(),n("JSXSpreadChild").bases("Node").build("expression").field("expression",n("Expression"))}rp.default=PF;RT.exports=rp.default});var ip=me((np,UT)=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});var gh=(gr(),Er(br)),kF=gh.__importDefault(nn()),DF=gh.__importDefault(Xn()),IF=gh.__importDefault(gl());function OF(e){e.use(IF.default);var t=e.use(kF.default),n=t.Type,i=t.Type.def,o=n.or,r=e.use(DF.default),u=r.defaults;i("AwaitExpression").build("argument","all").field("argument",o(i("Expression"),null)).field("all",Boolean,u.false),i("Decorator").bases("Node").build("expression").field("expression",i("Expression")),i("Property").field("decorators",o([i("Decorator")],null),u.null),i("MethodDefinition").field("decorators",o([i("Decorator")],null),u.null),i("PrivateName").bases("Expression","Pattern").build("id").field("id",i("Identifier")),i("ClassPrivateProperty").bases("ClassProperty").build("key","value").field("key",i("PrivateName")).field("value",o(i("Expression"),null),u.null)}np.default=OF;UT.exports=np.default});var vh=me((sp,VT)=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});var $T=(gr(),Er(br)),NF=$T.__importDefault(nn()),FF=$T.__importDefault(Xn());function jF(e){var t=e.use(NF.default),n=t.Type.def,i=t.Type.or,o=e.use(FF.default).defaults,r=i(n("TypeAnnotation"),n("TSTypeAnnotation"),null),u=i(n("TypeParameterDeclaration"),n("TSTypeParameterDeclaration"),null);n("Identifier").field("typeAnnotation",r,o.null),n("ObjectPattern").field("typeAnnotation",r,o.null),n("Function").field("returnType",r,o.null).field("typeParameters",u,o.null),n("ClassProperty").build("key","value","typeAnnotation","static").field("value",i(n("Expression"),null)).field("static",Boolean,o.false).field("typeAnnotation",r,o.null),["ClassDeclaration","ClassExpression"].forEach(function(a){n(a).field("typeParameters",u,o.null).field("superTypeParameters",i(n("TypeParameterInstantiation"),n("TSTypeParameterInstantiation"),null),o.null).field("implements",i([n("ClassImplements")],[n("TSExpressionWithTypeArguments")]),o.emptyArray)})}sp.default=jF;VT.exports=sp.default});var Th=me((op,qT)=>{"use strict";Object.defineProperty(op,"__esModule",{value:!0});var ap=(gr(),Er(br)),LF=ap.__importDefault(ip()),MF=ap.__importDefault(vh()),RF=ap.__importDefault(nn()),BF=ap.__importDefault(Xn());function UF(e){e.use(LF.default),e.use(MF.default);var t=e.use(RF.default),n=t.Type.def,i=t.Type.or,o=e.use(BF.default).defaults;n("Flow").bases("Node"),n("FlowType").bases("Flow"),n("AnyTypeAnnotation").bases("FlowType").build(),n("EmptyTypeAnnotation").bases("FlowType").build(),n("MixedTypeAnnotation").bases("FlowType").build(),n("VoidTypeAnnotation").bases("FlowType").build(),n("SymbolTypeAnnotation").bases("FlowType").build(),n("NumberTypeAnnotation").bases("FlowType").build(),n("BigIntTypeAnnotation").bases("FlowType").build(),n("NumberLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),n("NumericLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Number).field("raw",String),n("BigIntLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",null).field("raw",String),n("StringTypeAnnotation").bases("FlowType").build(),n("StringLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",String).field("raw",String),n("BooleanTypeAnnotation").bases("FlowType").build(),n("BooleanLiteralTypeAnnotation").bases("FlowType").build("value","raw").field("value",Boolean).field("raw",String),n("TypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",n("FlowType")),n("NullableTypeAnnotation").bases("FlowType").build("typeAnnotation").field("typeAnnotation",n("FlowType")),n("NullLiteralTypeAnnotation").bases("FlowType").build(),n("NullTypeAnnotation").bases("FlowType").build(),n("ThisTypeAnnotation").bases("FlowType").build(),n("ExistsTypeAnnotation").bases("FlowType").build(),n("ExistentialTypeParam").bases("FlowType").build(),n("FunctionTypeAnnotation").bases("FlowType").build("params","returnType","rest","typeParameters").field("params",[n("FunctionTypeParam")]).field("returnType",n("FlowType")).field("rest",i(n("FunctionTypeParam"),null)).field("typeParameters",i(n("TypeParameterDeclaration"),null)),n("FunctionTypeParam").bases("Node").build("name","typeAnnotation","optional").field("name",i(n("Identifier"),null)).field("typeAnnotation",n("FlowType")).field("optional",Boolean),n("ArrayTypeAnnotation").bases("FlowType").build("elementType").field("elementType",n("FlowType")),n("ObjectTypeAnnotation").bases("FlowType").build("properties","indexers","callProperties").field("properties",[i(n("ObjectTypeProperty"),n("ObjectTypeSpreadProperty"))]).field("indexers",[n("ObjectTypeIndexer")],o.emptyArray).field("callProperties",[n("ObjectTypeCallProperty")],o.emptyArray).field("inexact",i(Boolean,void 0),o.undefined).field("exact",Boolean,o.false).field("internalSlots",[n("ObjectTypeInternalSlot")],o.emptyArray),n("Variance").bases("Node").build("kind").field("kind",i("plus","minus"));var r=i(n("Variance"),"plus","minus",null);n("ObjectTypeProperty").bases("Node").build("key","value","optional").field("key",i(n("Literal"),n("Identifier"))).field("value",n("FlowType")).field("optional",Boolean).field("variance",r,o.null),n("ObjectTypeIndexer").bases("Node").build("id","key","value").field("id",n("Identifier")).field("key",n("FlowType")).field("value",n("FlowType")).field("variance",r,o.null).field("static",Boolean,o.false),n("ObjectTypeCallProperty").bases("Node").build("value").field("value",n("FunctionTypeAnnotation")).field("static",Boolean,o.false),n("QualifiedTypeIdentifier").bases("Node").build("qualification","id").field("qualification",i(n("Identifier"),n("QualifiedTypeIdentifier"))).field("id",n("Identifier")),n("GenericTypeAnnotation").bases("FlowType").build("id","typeParameters").field("id",i(n("Identifier"),n("QualifiedTypeIdentifier"))).field("typeParameters",i(n("TypeParameterInstantiation"),null)),n("MemberTypeAnnotation").bases("FlowType").build("object","property").field("object",n("Identifier")).field("property",i(n("MemberTypeAnnotation"),n("GenericTypeAnnotation"))),n("UnionTypeAnnotation").bases("FlowType").build("types").field("types",[n("FlowType")]),n("IntersectionTypeAnnotation").bases("FlowType").build("types").field("types",[n("FlowType")]),n("TypeofTypeAnnotation").bases("FlowType").build("argument").field("argument",n("FlowType")),n("ObjectTypeSpreadProperty").bases("Node").build("argument").field("argument",n("FlowType")),n("ObjectTypeInternalSlot").bases("Node").build("id","value","optional","static","method").field("id",n("Identifier")).field("value",n("FlowType")).field("optional",Boolean).field("static",Boolean).field("method",Boolean),n("TypeParameterDeclaration").bases("Node").build("params").field("params",[n("TypeParameter")]),n("TypeParameterInstantiation").bases("Node").build("params").field("params",[n("FlowType")]),n("TypeParameter").bases("FlowType").build("name","variance","bound","default").field("name",String).field("variance",r,o.null).field("bound",i(n("TypeAnnotation"),null),o.null).field("default",i(n("FlowType"),null),o.null),n("ClassProperty").field("variance",r,o.null),n("ClassImplements").bases("Node").build("id").field("id",n("Identifier")).field("superClass",i(n("Expression"),null),o.null).field("typeParameters",i(n("TypeParameterInstantiation"),null),o.null),n("InterfaceTypeAnnotation").bases("FlowType").build("body","extends").field("body",n("ObjectTypeAnnotation")).field("extends",i([n("InterfaceExtends")],null),o.null),n("InterfaceDeclaration").bases("Declaration").build("id","body","extends").field("id",n("Identifier")).field("typeParameters",i(n("TypeParameterDeclaration"),null),o.null).field("body",n("ObjectTypeAnnotation")).field("extends",[n("InterfaceExtends")]),n("DeclareInterface").bases("InterfaceDeclaration").build("id","body","extends"),n("InterfaceExtends").bases("Node").build("id").field("id",n("Identifier")).field("typeParameters",i(n("TypeParameterInstantiation"),null),o.null),n("TypeAlias").bases("Declaration").build("id","typeParameters","right").field("id",n("Identifier")).field("typeParameters",i(n("TypeParameterDeclaration"),null)).field("right",n("FlowType")),n("DeclareTypeAlias").bases("TypeAlias").build("id","typeParameters","right"),n("OpaqueType").bases("Declaration").build("id","typeParameters","impltype","supertype").field("id",n("Identifier")).field("typeParameters",i(n("TypeParameterDeclaration"),null)).field("impltype",n("FlowType")).field("supertype",i(n("FlowType"),null)),n("DeclareOpaqueType").bases("OpaqueType").build("id","typeParameters","supertype").field("impltype",i(n("FlowType"),null)),n("TypeCastExpression").bases("Expression").build("expression","typeAnnotation").field("expression",n("Expression")).field("typeAnnotation",n("TypeAnnotation")),n("TupleTypeAnnotation").bases("FlowType").build("types").field("types",[n("FlowType")]),n("DeclareVariable").bases("Statement").build("id").field("id",n("Identifier")),n("DeclareFunction").bases("Statement").build("id").field("id",n("Identifier")).field("predicate",i(n("FlowPredicate"),null),o.null),n("DeclareClass").bases("InterfaceDeclaration").build("id"),n("DeclareModule").bases("Statement").build("id","body").field("id",i(n("Identifier"),n("Literal"))).field("body",n("BlockStatement")),n("DeclareModuleExports").bases("Statement").build("typeAnnotation").field("typeAnnotation",n("TypeAnnotation")),n("DeclareExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",i(n("DeclareVariable"),n("DeclareFunction"),n("DeclareClass"),n("FlowType"),n("TypeAlias"),n("DeclareOpaqueType"),n("InterfaceDeclaration"),null)).field("specifiers",[i(n("ExportSpecifier"),n("ExportBatchSpecifier"))],o.emptyArray).field("source",i(n("Literal"),null),o.null),n("DeclareExportAllDeclaration").bases("Declaration").build("source").field("source",i(n("Literal"),null),o.null),n("ImportDeclaration").field("importKind",i("value","type","typeof"),function(){return"value"}),n("FlowPredicate").bases("Flow"),n("InferredPredicate").bases("FlowPredicate").build(),n("DeclaredPredicate").bases("FlowPredicate").build("value").field("value",n("Expression")),n("Function").field("predicate",i(n("FlowPredicate"),null),o.null),n("CallExpression").field("typeArguments",i(null,n("TypeParameterInstantiation")),o.null),n("NewExpression").field("typeArguments",i(null,n("TypeParameterInstantiation")),o.null),n("EnumDeclaration").bases("Declaration").build("id","body").field("id",n("Identifier")).field("body",i(n("EnumBooleanBody"),n("EnumNumberBody"),n("EnumStringBody"),n("EnumSymbolBody"))),n("EnumBooleanBody").build("members","explicitType").field("members",[n("EnumBooleanMember")]).field("explicitType",Boolean),n("EnumNumberBody").build("members","explicitType").field("members",[n("EnumNumberMember")]).field("explicitType",Boolean),n("EnumStringBody").build("members","explicitType").field("members",i([n("EnumStringMember")],[n("EnumDefaultedMember")])).field("explicitType",Boolean),n("EnumSymbolBody").build("members").field("members",[n("EnumDefaultedMember")]),n("EnumBooleanMember").build("id","init").field("id",n("Identifier")).field("init",i(n("Literal"),Boolean)),n("EnumNumberMember").build("id","init").field("id",n("Identifier")).field("init",n("Literal")),n("EnumStringMember").build("id","init").field("id",n("Identifier")).field("init",n("Literal")),n("EnumDefaultedMember").build("id").field("id",n("Identifier"))}op.default=UF;qT.exports=op.default});var KT=me((lp,WT)=>{"use strict";Object.defineProperty(lp,"__esModule",{value:!0});var Eh=(gr(),Er(br)),$F=Eh.__importDefault(gl()),VF=Eh.__importDefault(nn()),qF=Eh.__importDefault(Xn());function WF(e){e.use($F.default);var t=e.use(VF.default),n=e.use(qF.default).defaults,i=t.Type.def,o=t.Type.or;i("VariableDeclaration").field("declarations",[o(i("VariableDeclarator"),i("Identifier"))]),i("Property").field("value",o(i("Expression"),i("Pattern"))),i("ArrayPattern").field("elements",[o(i("Pattern"),i("SpreadElement"),null)]),i("ObjectPattern").field("properties",[o(i("Property"),i("PropertyPattern"),i("SpreadPropertyPattern"),i("SpreadProperty"))]),i("ExportSpecifier").bases("ModuleSpecifier").build("id","name"),i("ExportBatchSpecifier").bases("Specifier").build(),i("ExportDeclaration").bases("Declaration").build("default","declaration","specifiers","source").field("default",Boolean).field("declaration",o(i("Declaration"),i("Expression"),null)).field("specifiers",[o(i("ExportSpecifier"),i("ExportBatchSpecifier"))],n.emptyArray).field("source",o(i("Literal"),null),n.null),i("Block").bases("Comment").build("value","leading","trailing"),i("Line").bases("Comment").build("value","leading","trailing")}lp.default=WF;WT.exports=lp.default});var xh=me((up,zT)=>{"use strict";Object.defineProperty(up,"__esModule",{value:!0});var Sh=(gr(),Er(br)),KF=Sh.__importDefault(ip()),zF=Sh.__importDefault(nn()),GF=Sh.__importDefault(Xn());function HF(e){e.use(KF.default);var t=e.use(zF.default),n=e.use(GF.default).defaults,i=t.Type.def,o=t.Type.or;i("Noop").bases("Statement").build(),i("DoExpression").bases("Expression").build("body").field("body",[i("Statement")]),i("BindExpression").bases("Expression").build("object","callee").field("object",o(i("Expression"),null)).field("callee",i("Expression")),i("ParenthesizedExpression").bases("Expression").build("expression").field("expression",i("Expression")),i("ExportNamespaceSpecifier").bases("Specifier").build("exported").field("exported",i("Identifier")),i("ExportDefaultSpecifier").bases("Specifier").build("exported").field("exported",i("Identifier")),i("CommentBlock").bases("Comment").build("value","leading","trailing"),i("CommentLine").bases("Comment").build("value","leading","trailing"),i("Directive").bases("Node").build("value").field("value",i("DirectiveLiteral")),i("DirectiveLiteral").bases("Node","Expression").build("value").field("value",String,n["use strict"]),i("InterpreterDirective").bases("Node").build("value").field("value",String),i("BlockStatement").bases("Statement").build("body").field("body",[i("Statement")]).field("directives",[i("Directive")],n.emptyArray),i("Program").bases("Node").build("body").field("body",[i("Statement")]).field("directives",[i("Directive")],n.emptyArray).field("interpreter",o(i("InterpreterDirective"),null),n.null),i("StringLiteral").bases("Literal").build("value").field("value",String),i("NumericLiteral").bases("Literal").build("value").field("value",Number).field("raw",o(String,null),n.null).field("extra",{rawValue:Number,raw:String},function(){return{rawValue:this.value,raw:this.value+""}}),i("BigIntLiteral").bases("Literal").build("value").field("value",o(String,Number)).field("extra",{rawValue:String,raw:String},function(){return{rawValue:String(this.value),raw:this.value+"n"}}),i("NullLiteral").bases("Literal").build().field("value",null,n.null),i("BooleanLiteral").bases("Literal").build("value").field("value",Boolean),i("RegExpLiteral").bases("Literal").build("pattern","flags").field("pattern",String).field("flags",String).field("value",RegExp,function(){return new RegExp(this.pattern,this.flags)});var r=o(i("Property"),i("ObjectMethod"),i("ObjectProperty"),i("SpreadProperty"),i("SpreadElement"));i("ObjectExpression").bases("Expression").build("properties").field("properties",[r]),i("ObjectMethod").bases("Node","Function").build("kind","key","params","body","computed").field("kind",o("method","get","set")).field("key",o(i("Literal"),i("Identifier"),i("Expression"))).field("params",[i("Pattern")]).field("body",i("BlockStatement")).field("computed",Boolean,n.false).field("generator",Boolean,n.false).field("async",Boolean,n.false).field("accessibility",o(i("Literal"),null),n.null).field("decorators",o([i("Decorator")],null),n.null),i("ObjectProperty").bases("Node").build("key","value").field("key",o(i("Literal"),i("Identifier"),i("Expression"))).field("value",o(i("Expression"),i("Pattern"))).field("accessibility",o(i("Literal"),null),n.null).field("computed",Boolean,n.false);var u=o(i("MethodDefinition"),i("VariableDeclarator"),i("ClassPropertyDefinition"),i("ClassProperty"),i("ClassPrivateProperty"),i("ClassMethod"),i("ClassPrivateMethod"));i("ClassBody").bases("Declaration").build("body").field("body",[u]),i("ClassMethod").bases("Declaration","Function").build("kind","key","params","body","computed","static").field("key",o(i("Literal"),i("Identifier"),i("Expression"))),i("ClassPrivateMethod").bases("Declaration","Function").build("key","params","body","kind","computed","static").field("key",i("PrivateName")),["ClassMethod","ClassPrivateMethod"].forEach(function(m){i(m).field("kind",o("get","set","method","constructor"),function(){return"method"}).field("body",i("BlockStatement")).field("computed",Boolean,n.false).field("static",o(Boolean,null),n.null).field("abstract",o(Boolean,null),n.null).field("access",o("public","private","protected",null),n.null).field("accessibility",o("public","private","protected",null),n.null).field("decorators",o([i("Decorator")],null),n.null).field("optional",o(Boolean,null),n.null)});var a=o(i("Property"),i("PropertyPattern"),i("SpreadPropertyPattern"),i("SpreadProperty"),i("ObjectProperty"),i("RestProperty"));i("ObjectPattern").bases("Pattern").build("properties").field("properties",[a]).field("decorators",o([i("Decorator")],null),n.null),i("SpreadProperty").bases("Node").build("argument").field("argument",i("Expression")),i("RestProperty").bases("Node").build("argument").field("argument",i("Expression")),i("ForAwaitStatement").bases("Statement").build("left","right","body").field("left",o(i("VariableDeclaration"),i("Expression"))).field("right",i("Expression")).field("body",i("Statement")),i("Import").bases("Expression").build()}up.default=HF;zT.exports=up.default});var XT=me((cp,HT)=>{"use strict";Object.defineProperty(cp,"__esModule",{value:!0});var GT=(gr(),Er(br)),XF=GT.__importDefault(xh()),JF=GT.__importDefault(Th());function YF(e){e.use(XF.default),e.use(JF.default)}cp.default=YF;HT.exports=cp.default});var YT=me((dp,JT)=>{"use strict";Object.defineProperty(dp,"__esModule",{value:!0});var pp=(gr(),Er(br)),QF=pp.__importDefault(xh()),ZF=pp.__importDefault(vh()),ej=pp.__importDefault(nn()),tj=pp.__importDefault(Xn());function rj(e){e.use(QF.default),e.use(ZF.default);var t=e.use(ej.default),n=t.namedTypes,i=t.Type.def,o=t.Type.or,r=e.use(tj.default).defaults,u=t.Type.from(function(s,l){return!!(n.StringLiteral&&n.StringLiteral.check(s,l)||n.Literal&&n.Literal.check(s,l)&&typeof s.value=="string")},"StringLiteral");i("TSType").bases("Node");var a=o(i("Identifier"),i("TSQualifiedName"));i("TSTypeReference").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("typeName","typeParameters").field("typeName",a),i("TSHasOptionalTypeParameterInstantiation").field("typeParameters",o(i("TSTypeParameterInstantiation"),null),r.null),i("TSHasOptionalTypeParameters").field("typeParameters",o(i("TSTypeParameterDeclaration"),null,void 0),r.null),i("TSHasOptionalTypeAnnotation").field("typeAnnotation",o(i("TSTypeAnnotation"),null),r.null),i("TSQualifiedName").bases("Node").build("left","right").field("left",a).field("right",a),i("TSAsExpression").bases("Expression","Pattern").build("expression","typeAnnotation").field("expression",i("Expression")).field("typeAnnotation",i("TSType")).field("extra",o({parenthesized:Boolean},null),r.null),i("TSNonNullExpression").bases("Expression","Pattern").build("expression").field("expression",i("Expression")),["TSAnyKeyword","TSBigIntKeyword","TSBooleanKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword","TSThisType"].forEach(function(s){i(s).bases("TSType").build()}),i("TSArrayType").bases("TSType").build("elementType").field("elementType",i("TSType")),i("TSLiteralType").bases("TSType").build("literal").field("literal",o(i("NumericLiteral"),i("StringLiteral"),i("BooleanLiteral"),i("TemplateLiteral"),i("UnaryExpression"))),["TSUnionType","TSIntersectionType"].forEach(function(s){i(s).bases("TSType").build("types").field("types",[i("TSType")])}),i("TSConditionalType").bases("TSType").build("checkType","extendsType","trueType","falseType").field("checkType",i("TSType")).field("extendsType",i("TSType")).field("trueType",i("TSType")).field("falseType",i("TSType")),i("TSInferType").bases("TSType").build("typeParameter").field("typeParameter",i("TSTypeParameter")),i("TSParenthesizedType").bases("TSType").build("typeAnnotation").field("typeAnnotation",i("TSType"));var m=[o(i("Identifier"),i("RestElement"),i("ArrayPattern"),i("ObjectPattern"))];["TSFunctionType","TSConstructorType"].forEach(function(s){i(s).bases("TSType","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters").field("parameters",m)}),i("TSDeclareFunction").bases("Declaration","TSHasOptionalTypeParameters").build("id","params","returnType").field("declare",Boolean,r.false).field("async",Boolean,r.false).field("generator",Boolean,r.false).field("id",o(i("Identifier"),null),r.null).field("params",[i("Pattern")]).field("returnType",o(i("TSTypeAnnotation"),i("Noop"),null),r.null),i("TSDeclareMethod").bases("Declaration","TSHasOptionalTypeParameters").build("key","params","returnType").field("async",Boolean,r.false).field("generator",Boolean,r.false).field("params",[i("Pattern")]).field("abstract",Boolean,r.false).field("accessibility",o("public","private","protected",void 0),r.undefined).field("static",Boolean,r.false).field("computed",Boolean,r.false).field("optional",Boolean,r.false).field("key",o(i("Identifier"),i("StringLiteral"),i("NumericLiteral"),i("Expression"))).field("kind",o("get","set","method","constructor"),function(){return"method"}).field("access",o("public","private","protected",void 0),r.undefined).field("decorators",o([i("Decorator")],null),r.null).field("returnType",o(i("TSTypeAnnotation"),i("Noop"),null),r.null),i("TSMappedType").bases("TSType").build("typeParameter","typeAnnotation").field("readonly",o(Boolean,"+","-"),r.false).field("typeParameter",i("TSTypeParameter")).field("optional",o(Boolean,"+","-"),r.false).field("typeAnnotation",o(i("TSType"),null),r.null),i("TSTupleType").bases("TSType").build("elementTypes").field("elementTypes",[o(i("TSType"),i("TSNamedTupleMember"))]),i("TSNamedTupleMember").bases("TSType").build("label","elementType","optional").field("label",i("Identifier")).field("optional",Boolean,r.false).field("elementType",i("TSType")),i("TSRestType").bases("TSType").build("typeAnnotation").field("typeAnnotation",i("TSType")),i("TSOptionalType").bases("TSType").build("typeAnnotation").field("typeAnnotation",i("TSType")),i("TSIndexedAccessType").bases("TSType").build("objectType","indexType").field("objectType",i("TSType")).field("indexType",i("TSType")),i("TSTypeOperator").bases("TSType").build("operator").field("operator",String).field("typeAnnotation",i("TSType")),i("TSTypeAnnotation").bases("Node").build("typeAnnotation").field("typeAnnotation",o(i("TSType"),i("TSTypeAnnotation"))),i("TSIndexSignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",[i("Identifier")]).field("readonly",Boolean,r.false),i("TSPropertySignature").bases("Declaration","TSHasOptionalTypeAnnotation").build("key","typeAnnotation","optional").field("key",i("Expression")).field("computed",Boolean,r.false).field("readonly",Boolean,r.false).field("optional",Boolean,r.false).field("initializer",o(i("Expression"),null),r.null),i("TSMethodSignature").bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("key","parameters","typeAnnotation").field("key",i("Expression")).field("computed",Boolean,r.false).field("optional",Boolean,r.false).field("parameters",m),i("TSTypePredicate").bases("TSTypeAnnotation","TSType").build("parameterName","typeAnnotation","asserts").field("parameterName",o(i("Identifier"),i("TSThisType"))).field("typeAnnotation",o(i("TSTypeAnnotation"),null),r.null).field("asserts",Boolean,r.false),["TSCallSignatureDeclaration","TSConstructSignatureDeclaration"].forEach(function(s){i(s).bases("Declaration","TSHasOptionalTypeParameters","TSHasOptionalTypeAnnotation").build("parameters","typeAnnotation").field("parameters",m)}),i("TSEnumMember").bases("Node").build("id","initializer").field("id",o(i("Identifier"),u)).field("initializer",o(i("Expression"),null),r.null),i("TSTypeQuery").bases("TSType").build("exprName").field("exprName",o(a,i("TSImportType")));var d=o(i("TSCallSignatureDeclaration"),i("TSConstructSignatureDeclaration"),i("TSIndexSignature"),i("TSMethodSignature"),i("TSPropertySignature"));i("TSTypeLiteral").bases("TSType").build("members").field("members",[d]),i("TSTypeParameter").bases("Identifier").build("name","constraint","default").field("name",String).field("constraint",o(i("TSType"),void 0),r.undefined).field("default",o(i("TSType"),void 0),r.undefined),i("TSTypeAssertion").bases("Expression","Pattern").build("typeAnnotation","expression").field("typeAnnotation",i("TSType")).field("expression",i("Expression")).field("extra",o({parenthesized:Boolean},null),r.null),i("TSTypeParameterDeclaration").bases("Declaration").build("params").field("params",[i("TSTypeParameter")]),i("TSTypeParameterInstantiation").bases("Node").build("params").field("params",[i("TSType")]),i("TSEnumDeclaration").bases("Declaration").build("id","members").field("id",i("Identifier")).field("const",Boolean,r.false).field("declare",Boolean,r.false).field("members",[i("TSEnumMember")]).field("initializer",o(i("Expression"),null),r.null),i("TSTypeAliasDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","typeAnnotation").field("id",i("Identifier")).field("declare",Boolean,r.false).field("typeAnnotation",i("TSType")),i("TSModuleBlock").bases("Node").build("body").field("body",[i("Statement")]),i("TSModuleDeclaration").bases("Declaration").build("id","body").field("id",o(u,a)).field("declare",Boolean,r.false).field("global",Boolean,r.false).field("body",o(i("TSModuleBlock"),i("TSModuleDeclaration"),null),r.null),i("TSImportType").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("argument","qualifier","typeParameters").field("argument",u).field("qualifier",o(a,void 0),r.undefined),i("TSImportEqualsDeclaration").bases("Declaration").build("id","moduleReference").field("id",i("Identifier")).field("isExport",Boolean,r.false).field("moduleReference",o(a,i("TSExternalModuleReference"))),i("TSExternalModuleReference").bases("Declaration").build("expression").field("expression",u),i("TSExportAssignment").bases("Statement").build("expression").field("expression",i("Expression")),i("TSNamespaceExportDeclaration").bases("Declaration").build("id").field("id",i("Identifier")),i("TSInterfaceBody").bases("Node").build("body").field("body",[d]),i("TSExpressionWithTypeArguments").bases("TSType","TSHasOptionalTypeParameterInstantiation").build("expression","typeParameters").field("expression",a),i("TSInterfaceDeclaration").bases("Declaration","TSHasOptionalTypeParameters").build("id","body").field("id",a).field("declare",Boolean,r.false).field("extends",o([i("TSExpressionWithTypeArguments")],null),r.null).field("body",i("TSInterfaceBody")),i("TSParameterProperty").bases("Pattern").build("parameter").field("accessibility",o("public","private","protected",void 0),r.undefined).field("readonly",Boolean,r.false).field("parameter",o(i("Identifier"),i("AssignmentPattern"))),i("ClassProperty").field("access",o("public","private","protected",void 0),r.undefined),i("ClassBody").field("body",[o(i("MethodDefinition"),i("VariableDeclarator"),i("ClassPropertyDefinition"),i("ClassProperty"),i("ClassPrivateProperty"),i("ClassMethod"),i("ClassPrivateMethod"),i("TSDeclareMethod"),d)])}dp.default=rj;JT.exports=dp.default});var QT=me(vl=>{"use strict";Object.defineProperty(vl,"__esModule",{value:!0});vl.namedTypes=void 0;var nj;nj=vl.namedTypes||(vl.namedTypes={})});var Qi=me(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.visit=ir.use=ir.Type=ir.someField=ir.PathVisitor=ir.Path=ir.NodePath=ir.namedTypes=ir.getSupertypeNames=ir.getFieldValue=ir.getFieldNames=ir.getBuilderName=ir.finalize=ir.eachField=ir.defineMethod=ir.builtInTypes=ir.builders=ir.astNodesAreEquivalent=void 0;var Jn=(gr(),Er(br)),ij=Jn.__importDefault(AT()),sj=Jn.__importDefault(oh()),aj=Jn.__importDefault(uh()),oj=Jn.__importDefault(ch()),lj=Jn.__importDefault(dh()),uj=Jn.__importDefault(hh()),cj=Jn.__importDefault(yh()),pj=Jn.__importDefault(gl()),dj=Jn.__importDefault(BT()),fj=Jn.__importDefault(Th()),hj=Jn.__importDefault(KT()),mj=Jn.__importDefault(XT()),yj=Jn.__importDefault(YT()),bj=Jn.__importDefault(ip()),ZT=QT();Object.defineProperty(ir,"namedTypes",{enumerable:!0,get:function(){return ZT.namedTypes}});var Cn=ij.default([sj.default,aj.default,oj.default,lj.default,uj.default,cj.default,pj.default,dj.default,fj.default,hj.default,mj.default,yj.default,bj.default]),gj=Cn.astNodesAreEquivalent,vj=Cn.builders,Tj=Cn.builtInTypes,Ej=Cn.defineMethod,Sj=Cn.eachField,xj=Cn.finalize,_j=Cn.getBuilderName,wj=Cn.getFieldNames,Cj=Cn.getFieldValue,Aj=Cn.getSupertypeNames,Pj=Cn.namedTypes,kj=Cn.NodePath,Dj=Cn.Path,Ij=Cn.PathVisitor,Oj=Cn.someField,Nj=Cn.Type,Fj=Cn.use,jj=Cn.visit;ir.astNodesAreEquivalent=gj;ir.builders=vj;ir.builtInTypes=Tj;ir.defineMethod=Ej;ir.eachField=Sj;ir.finalize=xj;ir.getBuilderName=_j;ir.getFieldNames=wj;ir.getFieldValue=Cj;ir.getSupertypeNames=Aj;ir.NodePath=kj;ir.Path=Dj;ir.PathVisitor=Ij;ir.someField=Oj;ir.Type=Nj;ir.use=Fj;ir.visit=jj;Object.assign(ZT.namedTypes,Pj)});var nE=me((mY,rE)=>{"use strict";var eE={},Lj=eE.hasOwnProperty,tE=(e,t)=>{for(let n in e)Lj.call(e,n)&&t(n,e[n])},Mj=(e,t)=>(t&&tE(t,(n,i)=>{e[n]=i}),e),Rj=(e,t)=>{let n=e.length,i=-1;for(;++iTl.call(e)=="[object Object]",Vj=e=>typeof e=="string"||Tl.call(e)=="[object String]",qj=e=>typeof e=="number"||Tl.call(e)=="[object Number]",Wj=e=>typeof e=="function",Kj=e=>Tl.call(e)=="[object Map]",zj=e=>Tl.call(e)=="[object Set]",Gj={'"':'\\"',"'":"\\'","\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},Hj=/["'\\\b\f\n\r\t]/,Xj=/[0-9]/,Jj=/[ !#-&\(-\[\]-_a-~]/,Ws=(e,t)=>{let n=()=>{d=m,++t.indentLevel,m=t.indent.repeat(t.indentLevel)},i={escapeEverything:!1,minimal:!1,isScriptContext:!1,quotes:"single",wrap:!1,es6:!1,json:!1,compact:!0,lowercaseHex:!1,numbers:"decimal",indent:" ",indentLevel:0,__inline1__:!1,__inline2__:!1},o=t&&t.json;o&&(i.quotes="double",i.wrap=!0),t=Mj(i,t),t.quotes!="single"&&t.quotes!="double"&&t.quotes!="backtick"&&(t.quotes="single");let r=t.quotes=="double"?'"':t.quotes=="backtick"?"`":"'",u=t.compact,a=t.lowercaseHex,m=t.indent.repeat(t.indentLevel),d="",s=t.__inline1__,l=t.__inline2__,f=u?"":` `,p,h=!0,y=t.numbers=="binary",b=t.numbers=="octal",E=t.numbers=="decimal",v=t.numbers=="hexadecimal";if(o&&e&&Wj(e.toJSON)&&(e=e.toJSON()),!Vj(e)){if(Kj(e))return e.size==0?"new Map()":(u||(t.__inline1__=!0,t.__inline2__=!1),"new Map("+Ws(Array.from(e),t)+")");if(zj(e))return e.size==0?"new Set()":"new Set("+Ws(Array.from(e),t)+")";if(Uj(e))return e.length==0?"Buffer.from([])":"Buffer.from("+Ws(Array.from(e),t)+")";if(Bj(e))return p=[],t.wrap=!0,s&&(t.__inline1__=!1,t.__inline2__=!0),l||n(),Rj(e,x=>{h=!1,l&&(t.__inline2__=!1),p.push((u||l?"":m)+Ws(x,t))}),h?"[]":l?"["+p.join(", ")+"]":"["+f+p.join(","+f)+f+(u?"":d)+"]";if(qj(e)){if(o)return JSON.stringify(e);if(E)return String(e);if(v){let x=e.toString(16);return a||(x=x.toUpperCase()),"0x"+x}if(y)return"0b"+e.toString(2);if(b)return"0o"+e.toString(8)}else return $j(e)?(p=[],t.wrap=!0,n(),tE(e,(x,C)=>{h=!1,p.push((u?"":m)+Ws(x,t)+":"+(u?"":" ")+Ws(C,t))}),h?"{}":"{"+f+p.join(","+f)+f+(u?"":d)+"}"):o?JSON.stringify(e)||"null":String(e)}let S=e,w=-1,A=S.length;for(p="";++w=55296&&I<=56319&&A>w+1){let j=S.charCodeAt(w+1);if(j>=56320&&j<=57343){let R=((I-55296)*1024+j-56320+65536).toString(16);a||(R=R.toUpperCase()),p+="\\u{"+R+"}",++w;continue}}}if(!t.escapeEverything){if(Jj.test(x)){p+=x;continue}if(x=='"'){p+=r==x?'\\"':x;continue}if(x=="`"){p+=r==x?"\\`":x;continue}if(x=="'"){p+=r==x?"\\'":x;continue}}if(x=="\0"&&!o&&!Xj.test(S.charAt(w+1))){p+="\\0";continue}if(Hj.test(x)){p+=Gj[x];continue}let C=x.charCodeAt(0);if(t.minimal&&C!=8232&&C!=8233){p+=x;continue}let P=C.toString(16);a||(P=P.toUpperCase());let D=P.length>2||o,L="\\"+(D?"u":"x")+("0000"+P).slice(D?-4:-2);p+=L}return t.wrap&&(p=r+p+r),r=="`"&&(p=p.replace(/\$\{/g,"\\${")),t.isScriptContext?p.replace(/<\/(script|style)/gi,"<\\/$1").replace(/