@lithent/hmr-parser 0.2.4 → 0.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lithentHmrParser.cjs +29 -43
- package/dist/lithentHmrParser.cjs.map +1 -1
- package/dist/lithentHmrParser.mjs +19909 -21421
- package/dist/lithentHmrParser.mjs.map +1 -1
- package/dist/lithentHmrParser.umd.js +29 -43
- package/dist/lithentHmrParser.umd.js.map +1 -1
- package/package.json +5 -5
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
`),
|
|
3
|
-
`),
|
|
4
|
-
`,0),o=-1;for(;
|
|
5
|
-
`,
|
|
6
|
-
`)
|
|
7
|
-
`);if(
|
|
8
|
-
`,
|
|
9
|
-
`));else for(o=
|
|
10
|
-
`?
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t,t.exports),e=null),t.exports),t=44,n=59,r=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,i=new Uint8Array(64),a=new Uint8Array(128);for(let e=0;e<r.length;e++){let t=r.charCodeAt(e);i[e]=t,a[t]=e}function o(e,t,n){let r=t-n;r=r<0?-r<<1|1:r<<1;do{let t=r&31;r>>>=5,r>0&&(t|=32),e.write(i[t])}while(r>0);return t}var s=16384,c=typeof TextDecoder<`u`?new TextDecoder:typeof Buffer<`u`?{decode(e){return 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}},l=class{constructor(){this.pos=0,this.out=``,this.buffer=new Uint8Array(s)}write(e){let{buffer:t}=this;t[this.pos++]=e,this.pos===s&&(this.out+=c.decode(t),this.pos=0)}flush(){let{buffer:e,out:t,pos:n}=this;return n>0?t+c.decode(e.subarray(0,n)):t}};function u(e){let r=new l,i=0,a=0,s=0,c=0;for(let l=0;l<e.length;l++){let u=e[l];if(l>0&&r.write(n),u.length===0)continue;let d=0;for(let e=0;e<u.length;e++){let n=u[e];e>0&&r.write(t),d=o(r,n[0],d),n.length!==1&&(i=o(r,n[1],i),a=o(r,n[2],a),s=o(r,n[3],s),n.length!==4&&(c=o(r,n[4],c)))}}return r.flush()}var d=class e{constructor(t){this.bits=t instanceof e?t.bits.slice():[]}add(e){this.bits[e>>5]|=1<<(e&31)}has(e){return!!(this.bits[e>>5]&1<<(e&31))}},f=class e{constructor(e,t,n){this.start=e,this.end=t,this.original=n,this.intro=``,this.outro=``,this.content=n,this.storeName=!1,this.edited=!1,this.previous=null,this.next=null}appendLeft(e){this.outro+=e}appendRight(e){this.intro+=e}clone(){let t=new e(this.start,this.end,this.original);return t.intro=this.intro,t.outro=this.outro,t.content=this.content,t.storeName=this.storeName,t.edited=this.edited,t}contains(e){return this.start<e&&e<this.end}eachNext(e){let t=this;for(;t;)e(t),t=t.next}eachPrevious(e){let t=this;for(;t;)e(t),t=t.previous}edit(e,t,n){return this.content=e,n||(this.intro=``,this.outro=``),this.storeName=t,this.edited=!0,this}prependLeft(e){this.outro=e+this.outro}prependRight(e){this.intro=e+this.intro}reset(){this.intro=``,this.outro=``,this.edited&&(this.content=this.original,this.storeName=!1,this.edited=!1)}split(t){let n=t-this.start,r=this.original.slice(0,n),i=this.original.slice(n);this.original=r;let a=new e(t,this.end,i);return a.outro=this.outro,this.outro=``,this.end=t,this.edited?(a.edit(``,!1),this.content=``):this.content=r,a.next=this.next,a.next&&(a.next.previous=a),a.previous=this,this.next=a,a}toString(){return this.intro+this.content+this.outro}trimEnd(e){if(this.outro=this.outro.replace(e,``),this.outro.length)return!0;let t=this.content.replace(e,``);if(t.length)return t!==this.content&&(this.split(this.start+t.length).edit(``,void 0,!0),this.edited&&this.edit(t,this.storeName,!0)),!0;if(this.edit(``,void 0,!0),this.intro=this.intro.replace(e,``),this.intro.length)return!0}trimStart(e){if(this.intro=this.intro.replace(e,``),this.intro.length)return!0;let t=this.content.replace(e,``);if(t.length){if(t!==this.content){let e=this.split(this.end-t.length);this.edited&&e.edit(t,this.storeName,!0),this.edit(``,void 0,!0)}return!0}if(this.edit(``,void 0,!0),this.outro=this.outro.replace(e,``),this.outro.length)return!0}};function p(){return typeof globalThis<`u`&&typeof globalThis.btoa==`function`?e=>globalThis.btoa(unescape(encodeURIComponent(e))):typeof Buffer==`function`?e=>Buffer.from(e,`utf-8`).toString(`base64`):()=>{throw Error("Unsupported environment: `window.btoa` or `Buffer` should be supported.")}}var m=p(),h=class{constructor(e){this.version=3,this.file=e.file,this.sources=e.sources,this.sourcesContent=e.sourcesContent,this.names=e.names,this.mappings=u(e.mappings),e.x_google_ignoreList!==void 0&&(this.x_google_ignoreList=e.x_google_ignoreList),e.debugId!==void 0&&(this.debugId=e.debugId)}toString(){return JSON.stringify(this)}toUrl(){return`data:application/json;charset=utf-8;base64,`+m(this.toString())}};function g(e){let t=e.split(`
|
|
2
|
+
`),n=t.filter(e=>/^\t+/.test(e)),r=t.filter(e=>/^ {2,}/.test(e));if(n.length===0&&r.length===0)return null;if(n.length>=r.length)return` `;let i=r.reduce((e,t)=>{let n=/^ +/.exec(t)[0].length;return Math.min(n,e)},1/0);return Array(i+1).join(` `)}function _(e,t){let n=e.split(/[/\\]/),r=t.split(/[/\\]/);for(n.pop();n[0]===r[0];)n.shift(),r.shift();if(n.length){let e=n.length;for(;e--;)n[e]=`..`}return n.concat(r).join(`/`)}var ee=Object.prototype.toString;function te(e){return ee.call(e)===`[object Object]`}function ne(e){let t=e.split(`
|
|
3
|
+
`),n=[];for(let e=0,r=0;e<t.length;e++)n.push(r),r+=t[e].length+1;return function(e){let t=0,r=n.length;for(;t<r;){let i=t+r>>1;e<n[i]?r=i:t=i+1}let i=t-1;return{line:i,column:e-n[i]}}}var re=/\w/,v=class{constructor(e){this.hires=e,this.generatedCodeLine=0,this.generatedCodeColumn=0,this.raw=[],this.rawSegments=this.raw[this.generatedCodeLine]=[],this.pending=null}addEdit(e,t,n,r){if(t.length){let i=t.length-1,a=t.indexOf(`
|
|
4
|
+
`,0),o=-1;for(;a>=0&&i>a;){let i=[this.generatedCodeColumn,e,n.line,n.column];r>=0&&i.push(r),this.rawSegments.push(i),this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,o=a,a=t.indexOf(`
|
|
5
|
+
`,a+1)}let s=[this.generatedCodeColumn,e,n.line,n.column];r>=0&&s.push(r),this.rawSegments.push(s),this.advance(t.slice(o+1))}else this.pending&&(this.rawSegments.push(this.pending),this.advance(t));this.pending=null}addUneditedChunk(e,t,n,r,i){let a=t.start,o=!0,s=!1;for(;a<t.end;){if(n[a]===`
|
|
6
|
+
`)r.line+=1,r.column=0,this.generatedCodeLine+=1,this.raw[this.generatedCodeLine]=this.rawSegments=[],this.generatedCodeColumn=0,o=!0,s=!1;else{if(this.hires||o||i.has(a)){let t=[this.generatedCodeColumn,e,r.line,r.column];this.hires===`boundary`?re.test(n[a])?s||(this.rawSegments.push(t),s=!0):(this.rawSegments.push(t),s=!1):this.rawSegments.push(t)}r.column+=1,this.generatedCodeColumn+=1,o=!1}a+=1}this.pending=null}advance(e){if(!e)return;let t=e.split(`
|
|
7
|
+
`);if(t.length>1){for(let e=0;e<t.length-1;e++)this.generatedCodeLine++,this.raw[this.generatedCodeLine]=this.rawSegments=[];this.generatedCodeColumn=0}this.generatedCodeColumn+=t[t.length-1].length}},y=`
|
|
8
|
+
`,b={insertLeft:!1,insertRight:!1,storeName:!1},x=class e{constructor(e,t={}){let n=new f(0,e.length,e);Object.defineProperties(this,{original:{writable:!0,value:e},outro:{writable:!0,value:``},intro:{writable:!0,value:``},firstChunk:{writable:!0,value:n},lastChunk:{writable:!0,value:n},lastSearchedChunk:{writable:!0,value:n},byStart:{writable:!0,value:{}},byEnd:{writable:!0,value:{}},filename:{writable:!0,value:t.filename},indentExclusionRanges:{writable:!0,value:t.indentExclusionRanges},sourcemapLocations:{writable:!0,value:new d},storedNames:{writable:!0,value:{}},indentStr:{writable:!0,value:void 0},ignoreList:{writable:!0,value:t.ignoreList},offset:{writable:!0,value:t.offset||0}}),this.byStart[0]=n,this.byEnd[e.length]=n}addSourcemapLocation(e){this.sourcemapLocations.add(e)}append(e){if(typeof e!=`string`)throw TypeError(`outro content must be a string`);return this.outro+=e,this}appendLeft(e,t){if(e+=this.offset,typeof t!=`string`)throw TypeError(`inserted content must be a string`);this._split(e);let n=this.byEnd[e];return n?n.appendLeft(t):this.intro+=t,this}appendRight(e,t){if(e+=this.offset,typeof t!=`string`)throw TypeError(`inserted content must be a string`);this._split(e);let n=this.byStart[e];return n?n.appendRight(t):this.outro+=t,this}clone(){let t=new e(this.original,{filename:this.filename,offset:this.offset}),n=this.firstChunk,r=t.firstChunk=t.lastSearchedChunk=n.clone();for(;n;){t.byStart[r.start]=r,t.byEnd[r.end]=r;let e=n.next,i=e&&e.clone();i&&(r.next=i,i.previous=r,r=i),n=e}return t.lastChunk=r,this.indentExclusionRanges&&(t.indentExclusionRanges=this.indentExclusionRanges.slice()),t.sourcemapLocations=new d(this.sourcemapLocations),t.intro=this.intro,t.outro=this.outro,t}generateDecodedMap(e){e=e||{};let t=Object.keys(this.storedNames),n=new v(e.hires),r=ne(this.original);return this.intro&&n.advance(this.intro),this.firstChunk.eachNext(e=>{let i=r(e.start);e.intro.length&&n.advance(e.intro),e.edited?n.addEdit(0,e.content,i,e.storeName?t.indexOf(e.original):-1):n.addUneditedChunk(0,e,this.original,i,this.sourcemapLocations),e.outro.length&&n.advance(e.outro)}),this.outro&&n.advance(this.outro),{file:e.file?e.file.split(/[/\\]/).pop():void 0,sources:[e.source?_(e.file||``,e.source):e.file||``],sourcesContent:e.includeContent?[this.original]:void 0,names:t,mappings:n.raw,x_google_ignoreList:this.ignoreList?[0]:void 0}}generateMap(e){return new h(this.generateDecodedMap(e))}_ensureindentStr(){this.indentStr===void 0&&(this.indentStr=g(this.original))}_getRawIndentString(){return this._ensureindentStr(),this.indentStr}getIndentString(){return this._ensureindentStr(),this.indentStr===null?` `:this.indentStr}indent(e,t){let n=/^[^\r\n]/gm;if(te(e)&&(t=e,e=void 0),e===void 0&&(this._ensureindentStr(),e=this.indentStr||` `),e===``)return this;t=t||{};let r={};t.exclude&&(typeof t.exclude[0]==`number`?[t.exclude]:t.exclude).forEach(e=>{for(let t=e[0];t<e[1];t+=1)r[t]=!0});let i=t.indentStart!==!1,a=t=>i?`${e}${t}`:(i=!0,t);this.intro=this.intro.replace(n,a);let o=0,s=this.firstChunk;for(;s;){let t=s.end;if(s.edited)r[o]||(s.content=s.content.replace(n,a),s.content.length&&(i=s.content[s.content.length-1]===`
|
|
9
|
+
`));else for(o=s.start;o<t;){if(!r[o]){let t=this.original[o];t===`
|
|
10
|
+
`?i=!0:t!==`\r`&&i&&(i=!1,o===s.start||(this._splitChunk(s,o),s=s.next),s.prependRight(e))}o+=1}o=s.end,s=s.next}return this.outro=this.outro.replace(n,a),this}insert(){throw Error(`magicString.insert(...) is deprecated. Use prependRight(...) or appendLeft(...)`)}insertLeft(e,t){return b.insertLeft||(console.warn(`magicString.insertLeft(...) is deprecated. Use magicString.appendLeft(...) instead`),b.insertLeft=!0),this.appendLeft(e,t)}insertRight(e,t){return b.insertRight||(console.warn(`magicString.insertRight(...) is deprecated. Use magicString.prependRight(...) instead`),b.insertRight=!0),this.prependRight(e,t)}move(e,t,n){if(e+=this.offset,t+=this.offset,n+=this.offset,n>=e&&n<=t)throw Error(`Cannot move a selection inside itself`);this._split(e),this._split(t),this._split(n);let r=this.byStart[e],i=this.byEnd[t],a=r.previous,o=i.next,s=this.byStart[n];if(!s&&i===this.lastChunk)return this;let c=s?s.previous:this.lastChunk;return a&&(a.next=o),o&&(o.previous=a),c&&(c.next=r),s&&(s.previous=i),r.previous||(this.firstChunk=i.next),i.next||(this.lastChunk=r.previous,this.lastChunk.next=null),r.previous=c,i.next=s||null,c||(this.firstChunk=r),s||(this.lastChunk=i),this}overwrite(e,t,n,r){return r=r||{},this.update(e,t,n,{...r,overwrite:!r.contentOnly})}update(e,t,n,r){if(e+=this.offset,t+=this.offset,typeof n!=`string`)throw TypeError(`replacement content must be a string`);if(this.original.length!==0){for(;e<0;)e+=this.original.length;for(;t<0;)t+=this.original.length}if(t>this.original.length)throw Error(`end is out of bounds`);if(e===t)throw Error(`Cannot overwrite a zero-length range – use appendLeft or prependRight instead`);this._split(e),this._split(t),r===!0&&(b.storeName||(console.warn(`The final argument to magicString.overwrite(...) should be an options object. See https://github.com/rich-harris/magic-string`),b.storeName=!0),r={storeName:!0});let i=r!==void 0&&r.storeName,a=r!==void 0&&r.overwrite;if(i){let n=this.original.slice(e,t);Object.defineProperty(this.storedNames,n,{writable:!0,value:!0,enumerable:!0})}let o=this.byStart[e],s=this.byEnd[t];if(o){let e=o;for(;e!==s;){if(e.next!==this.byStart[e.end])throw Error(`Cannot overwrite across a split point`);e=e.next,e.edit(``,!1)}o.edit(n,i,!a)}else{let r=new f(e,t,``).edit(n,i);s.next=r,r.previous=s}return this}prepend(e){if(typeof e!=`string`)throw TypeError(`outro content must be a string`);return this.intro=e+this.intro,this}prependLeft(e,t){if(e+=this.offset,typeof t!=`string`)throw TypeError(`inserted content must be a string`);this._split(e);let n=this.byEnd[e];return n?n.prependLeft(t):this.intro=t+this.intro,this}prependRight(e,t){if(e+=this.offset,typeof t!=`string`)throw TypeError(`inserted content must be a string`);this._split(e);let n=this.byStart[e];return n?n.prependRight(t):this.outro=t+this.outro,this}remove(e,t){if(e+=this.offset,t+=this.offset,this.original.length!==0){for(;e<0;)e+=this.original.length;for(;t<0;)t+=this.original.length}if(e===t)return this;if(e<0||t>this.original.length)throw Error(`Character is out of bounds`);if(e>t)throw Error(`end must be greater than start`);this._split(e),this._split(t);let n=this.byStart[e];for(;n;)n.intro=``,n.outro=``,n.edit(``),n=t>n.end?this.byStart[n.end]:null;return this}reset(e,t){if(e+=this.offset,t+=this.offset,this.original.length!==0){for(;e<0;)e+=this.original.length;for(;t<0;)t+=this.original.length}if(e===t)return this;if(e<0||t>this.original.length)throw Error(`Character is out of bounds`);if(e>t)throw Error(`end must be greater than start`);this._split(e),this._split(t);let n=this.byStart[e];for(;n;)n.reset(),n=t>n.end?this.byStart[n.end]:null;return this}lastChar(){if(this.outro.length)return this.outro[this.outro.length-1];let e=this.lastChunk;do{if(e.outro.length)return e.outro[e.outro.length-1];if(e.content.length)return e.content[e.content.length-1];if(e.intro.length)return e.intro[e.intro.length-1]}while(e=e.previous);return this.intro.length?this.intro[this.intro.length-1]:``}lastLine(){let e=this.outro.lastIndexOf(y);if(e!==-1)return this.outro.substr(e+1);let t=this.outro,n=this.lastChunk;do{if(n.outro.length>0){if(e=n.outro.lastIndexOf(y),e!==-1)return n.outro.substr(e+1)+t;t=n.outro+t}if(n.content.length>0){if(e=n.content.lastIndexOf(y),e!==-1)return n.content.substr(e+1)+t;t=n.content+t}if(n.intro.length>0){if(e=n.intro.lastIndexOf(y),e!==-1)return n.intro.substr(e+1)+t;t=n.intro+t}}while(n=n.previous);return e=this.intro.lastIndexOf(y),e===-1?this.intro+t:this.intro.substr(e+1)+t}slice(e=0,t=this.original.length-this.offset){if(e+=this.offset,t+=this.offset,this.original.length!==0){for(;e<0;)e+=this.original.length;for(;t<0;)t+=this.original.length}let n=``,r=this.firstChunk;for(;r&&(r.start>e||r.end<=e);){if(r.start<t&&r.end>=t)return n;r=r.next}if(r&&r.edited&&r.start!==e)throw Error(`Cannot use replaced character ${e} as slice start anchor.`);let i=r;for(;r;){r.intro&&(i!==r||r.start===e)&&(n+=r.intro);let a=r.start<t&&r.end>=t;if(a&&r.edited&&r.end!==t)throw Error(`Cannot use replaced character ${t} as slice end anchor.`);let o=i===r?e-r.start:0,s=a?r.content.length+t-r.end:r.content.length;if(n+=r.content.slice(o,s),r.outro&&(!a||r.end===t)&&(n+=r.outro),a)break;r=r.next}return n}snip(e,t){let n=this.clone();return n.remove(0,e),n.remove(t,n.original.length),n}_split(e){if(this.byStart[e]||this.byEnd[e])return;let t=this.lastSearchedChunk,n=t,r=e>t.end;for(;t;){if(t.contains(e))return this._splitChunk(t,e);if(t=r?this.byStart[t.end]:this.byEnd[t.start],t===n)return;n=t}}_splitChunk(e,t){if(e.edited&&e.content.length){let n=ne(this.original)(t);throw Error(`Cannot split a chunk that has already been edited (${n.line}:${n.column} – "${e.original}")`)}let n=e.split(t);return this.byEnd[t]=e,this.byStart[t]=n,this.byEnd[n.end]=n,e===this.lastChunk&&(this.lastChunk=n),this.lastSearchedChunk=e,!0}toString(){let e=this.intro,t=this.firstChunk;for(;t;)e+=t.toString(),t=t.next;return e+this.outro}isEmpty(){let e=this.firstChunk;do if(e.intro.length&&e.intro.trim()||e.content.length&&e.content.trim()||e.outro.length&&e.outro.trim())return!1;while(e=e.next);return!0}length(){let e=this.firstChunk,t=0;do t+=e.intro.length+e.content.length+e.outro.length;while(e=e.next);return t}trimLines(){return this.trim(`[\\r\\n]`)}trim(e){return this.trimStart(e).trimEnd(e)}trimEndAborted(e){let t=RegExp((e||`\\s`)+`+$`);if(this.outro=this.outro.replace(t,``),this.outro.length)return!0;let n=this.lastChunk;do{let e=n.end,r=n.trimEnd(t);if(n.end!==e&&(this.lastChunk===n&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),r)return!0;n=n.previous}while(n);return!1}trimEnd(e){return this.trimEndAborted(e),this}trimStartAborted(e){let t=RegExp(`^`+(e||`\\s`)+`+`);if(this.intro=this.intro.replace(t,``),this.intro.length)return!0;let n=this.firstChunk;do{let e=n.end,r=n.trimStart(t);if(n.end!==e&&(n===this.lastChunk&&(this.lastChunk=n.next),this.byEnd[n.end]=n,this.byStart[n.next.start]=n.next,this.byEnd[n.next.end]=n.next),r)return!0;n=n.next}while(n);return!1}trimStart(e){return this.trimStartAborted(e),this}hasChanged(){return this.original!==this.toString()}_replaceRegexp(e,t){function n(e,n){return typeof t==`string`?t.replace(/\$(\$|&|\d+)/g,(t,n)=>n===`$`?`$`:n===`&`?e[0]:+n<e.length?e[+n]:`$${n}`):t(...e,e.index,n,e.groups)}function r(e,t){let n,r=[];for(;n=e.exec(t);)r.push(n);return r}if(e.global)r(e,this.original).forEach(e=>{if(e.index!=null){let t=n(e,this.original);t!==e[0]&&this.overwrite(e.index,e.index+e[0].length,t)}});else{let t=this.original.match(e);if(t&&t.index!=null){let e=n(t,this.original);e!==t[0]&&this.overwrite(t.index,t.index+t[0].length,e)}}return this}_replaceString(e,t){let{original:n}=this,r=n.indexOf(e);return r!==-1&&(typeof t==`function`&&(t=t(e,r,n)),e!==t&&this.overwrite(r,r+e.length,t)),this}replace(e,t){return typeof e==`string`?this._replaceString(e,t):this._replaceRegexp(e,t)}_replaceAllString(e,t){let{original:n}=this,r=e.length;for(let i=n.indexOf(e);i!==-1;i=n.indexOf(e,i+r)){let e=n.slice(i,i+r),a=t;typeof t==`function`&&(a=t(e,i,n)),e!==a&&this.overwrite(i,i+r,a)}return this}replaceAll(e,t){if(typeof e==`string`)return this._replaceAllString(e,t);if(!e.global)throw TypeError(`MagicString.prototype.replaceAll called with a non-global RegExp argument`);return this._replaceRegexp(e,t)}},S=(e,t)=>`
|
|
11
11
|
const __lithentModuleUrl = new URL(import.meta.url);
|
|
12
12
|
__lithentModuleUrl.searchParams.delete('t');
|
|
13
13
|
const __lithentModuleId = __lithentModuleUrl.pathname + __lithentModuleUrl.search;
|
|
@@ -89,10 +89,10 @@ const __lithentSetupHmrHooks = () => {
|
|
|
89
89
|
if (!import.meta.hot) return;
|
|
90
90
|
// Entries without components must propagate to importers, not accept an update
|
|
91
91
|
// that cannot render anything (e.g. the render-only application entry).
|
|
92
|
-
if (${JSON.stringify(
|
|
92
|
+
if (${JSON.stringify(t)}.length) {
|
|
93
93
|
import.meta.hot.accept(mod => {
|
|
94
94
|
const current = __lithentHotData.currentComponents || {};
|
|
95
|
-
const missing = ${JSON.stringify(
|
|
95
|
+
const missing = ${JSON.stringify(t)}.filter(name => !current[name]);
|
|
96
96
|
if (!mod || missing.length) {
|
|
97
97
|
import.meta.hot.invalidate('removed or unavailable components: ' + missing.join(', '));
|
|
98
98
|
return;
|
|
@@ -133,37 +133,23 @@ const __lithentSetupHmrHooks = () => {
|
|
|
133
133
|
});
|
|
134
134
|
};
|
|
135
135
|
__lithentSetupHmrHooks();
|
|
136
|
-
`;var Ut={};Object.defineProperty(Ut,"__esModule",{value:!0});function Pn(t,e){if(t==null)return{};var r={};for(var s in t)if({}.hasOwnProperty.call(t,s)){if(e.includes(s))continue;r[s]=t[s]}return r}class we{constructor(e,r,s){this.line=void 0,this.column=void 0,this.index=void 0,this.line=e,this.column=r,this.index=s}}class Bt{constructor(e,r){this.start=void 0,this.end=void 0,this.filename=void 0,this.identifierName=void 0,this.start=e,this.end=r}}function oe(t,e){const{line:r,column:s,index:i}=t;return new we(r,s+e,i+e)}const Ks="BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED";var gn={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:Ks},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:Ks}};const Us={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"},Ot=t=>t.type==="UpdateExpression"?Us.UpdateExpression[`${t.prefix}`]:Us[t.type];var An={AccessorIsGenerator:({kind:t})=>`A ${t}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:t})=>`Missing initializer in ${t} 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.",DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',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:t})=>`\`${t}\` has already been exported. Exported identifiers must be unique.`,DuplicateProto:"Redefinition of __proto__ property.",DuplicateRegExpFlags:"Duplicate regular expression flag.",DynamicImportPhaseRequiresImportExpressions:({phase:t})=>`'import.${t}(...)' can only be parsed when using the 'createImportExpressions' option.`,ElementAfterRest:"Rest element must be last element.",EscapedCharNotAnIdentifier:"Invalid Unicode escape.",ExportBindingIsString:({localName:t,exportName:e})=>`A string literal cannot be used as an exported binding without \`from\`.
|
|
137
|
-
|
|
138
|
-
- Did you mean \`import { "${t}" as foo }\`?`,ImportCallArity:"`import()` requires exactly 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:t})=>`Expected number in radix ${t}.`,InvalidEscapeSequence:"Bad character escape sequence.",InvalidEscapeSequenceTemplate:"Invalid escape sequence in template.",InvalidEscapedReservedWord:({reservedWord:t})=>`Escape sequence in keyword ${t}.`,InvalidIdentifier:({identifierName:t})=>`Invalid identifier ${t}.`,InvalidLhs:({ancestor:t})=>`Invalid left-hand side in ${Ot(t)}.`,InvalidLhsBinding:({ancestor:t})=>`Binding invalid left-hand side in ${Ot(t)}.`,InvalidLhsOptionalChaining:({ancestor:t})=>`Invalid optional chaining in the left-hand side of ${Ot(t)}.`,InvalidNumber:"Invalid number.",InvalidOrMissingExponent:"Floating-point numbers require a valid exponent after the 'e'.",InvalidOrUnexpectedToken:({unexpected:t})=>`Unexpected character '${t}'.`,InvalidParenthesizedAssignment:"Invalid parenthesized assignment pattern.",InvalidPrivateFieldResolution:({identifierName:t})=>`Private name #${t} 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:t})=>`Label '${t}' 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:t})=>`This experimental syntax requires enabling the parser plugin: ${t.map(e=>JSON.stringify(e)).join(", ")}.`,MissingOneOfPlugins:({missingPlugin:t})=>`This experimental syntax requires enabling one of the following parser plugin(s): ${t.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:t})=>`Duplicate key "${t}" is not allowed in module attributes.`,ModuleExportNameHasLoneSurrogate:({surrogateCharCode:t})=>`An export name cannot include a lone surrogate, found '\\u${t.toString(16)}'.`,ModuleExportUndefined:({localName:t})=>`Export '${t}' 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:t})=>`Private names are only allowed in property accesses (\`obj.#${t}\`) or in \`in\` expressions (\`#${t} in obj\`).`,PrivateNameRedeclaration:({identifierName:t})=>`Duplicate private name #${t}.`,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.",SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',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:t})=>`Unexpected keyword '${t}'.`,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:t})=>`Unexpected reserved word '${t}'.`,UnexpectedSuper:"'super' is only allowed in object methods and classes.",UnexpectedToken:({expected:t,unexpected:e})=>`Unexpected token${e?` '${e}'.`:""}${t?`, expected "${t}"`:""}`,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:t,onlyValidPropertyName:e})=>`The only valid meta property for ${t} is ${t}.${e}.`,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.",UsingDeclarationExport:"Using declaration cannot be exported.",UsingDeclarationHasBindingPattern:"Using declaration cannot have destructuring patterns.",VarRedeclaration:({identifierName:t})=>`Identifier '${t}' 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."},In={StrictDelete:"Deleting local variable in strict mode.",StrictEvalArguments:({referenceName:t})=>`Assigning to '${t}' in strict mode.`,StrictEvalArgumentsBinding:({bindingName:t})=>`Binding '${t}' 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."};const vn=new Set(["ArrowFunctionExpression","AssignmentExpression","ConditionalExpression","YieldExpression"]);var Cn=Object.assign({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:t})=>`Invalid topic token ${t}. In order to use ${t} as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "${t}" }.`,PipeTopicUnused:"Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.",PipeUnparenthesizedBody:({type:t})=>`Hack-style pipe body cannot be an unparenthesized ${Ot({type:t})}; 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 Nn=["message"];function Vs(t,e,r){Object.defineProperty(t,e,{enumerable:!1,configurable:!0,value:r})}function wn({toMessage:t,code:e,reasonCode:r,syntaxPlugin:s}){const i=r==="MissingPlugin"||r==="MissingOneOfPlugins";{const a={AccessorCannotDeclareThisParameter:"AccesorCannotDeclareThisParameter",AccessorCannotHaveTypeParameters:"AccesorCannotHaveTypeParameters",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference",SetAccessorCannotHaveOptionalParameter:"SetAccesorCannotHaveOptionalParameter",SetAccessorCannotHaveRestParameter:"SetAccesorCannotHaveRestParameter",SetAccessorCannotHaveReturnType:"SetAccesorCannotHaveReturnType"};a[r]&&(r=a[r])}return function a(n,o){const u=new SyntaxError;return u.code=e,u.reasonCode=r,u.loc=n,u.pos=n.index,u.syntaxPlugin=s,i&&(u.missingPlugin=o.missingPlugin),Vs(u,"clone",function(h={}){var E;const{line:I,column:A,index:w}=(E=h.loc)!=null?E:n;return a(new we(I,A,w),Object.assign({},o,h.details))}),Vs(u,"details",o),Object.defineProperty(u,"message",{configurable:!0,get(){const p=`${t(o)} (${n.line}:${n.column})`;return this.message=p,p},set(p){Object.defineProperty(this,"message",{value:p,writable:!0})}}),u}}function Ee(t,e){if(Array.isArray(t))return s=>Ee(s,t[0]);const r={};for(const s of Object.keys(t)){const i=t[s],a=typeof i=="string"?{message:()=>i}:typeof i=="function"?{message:i}:i,{message:n}=a,o=Pn(a,Nn),u=typeof n=="string"?()=>n:n;r[s]=wn(Object.assign({code:"BABEL_PARSER_SYNTAX_ERROR",reasonCode:s,toMessage:u},e?{syntaxPlugin:e}:{},o))}return r}const x=Object.assign({},Ee(gn),Ee(An),Ee(In),Ee`pipelineOperator`(Cn));function On(){return{sourceType:"script",sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function Dn(t){const e=On();if(t==null)return e;if(t.annexB!=null&&t.annexB!==!1)throw new Error("The `annexB` option can only be set to `false`.");for(const r of Object.keys(e))t[r]!=null&&(e[r]=t[r]);if(e.startLine===1)t.startIndex==null&&e.startColumn>0?e.startIndex=e.startColumn:t.startColumn==null&&e.startIndex>0&&(e.startColumn=e.startIndex);else if((t.startColumn==null||t.startIndex==null)&&t.startIndex!=null)throw new Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return e}const{defineProperty:Ln}=Object,$s=(t,e)=>{t&&Ln(t,e,{enumerable:!1,value:t[e]})};function Ge(t){return $s(t.loc.start,"index"),$s(t.loc.end,"index"),t}var kn=t=>class extends t{parse(){const r=Ge(super.parse());return this.optionFlags&128&&(r.tokens=r.tokens.map(Ge)),r}parseRegExpLiteral({pattern:r,flags:s}){let i=null;try{i=new RegExp(r,s)}catch{}const a=this.estreeParseLiteral(i);return a.regex={pattern:r,flags:s},a}parseBigIntLiteral(r){let s;try{s=BigInt(r)}catch{s=null}const i=this.estreeParseLiteral(s);return i.bigint=String(i.value||r),i}parseDecimalLiteral(r){const i=this.estreeParseLiteral(null);return i.decimal=String(i.value||r),i}estreeParseLiteral(r){return this.parseLiteral(r,"Literal")}parseStringLiteral(r){return this.estreeParseLiteral(r)}parseNumericLiteral(r){return this.estreeParseLiteral(r)}parseNullLiteral(){return this.estreeParseLiteral(null)}parseBooleanLiteral(r){return this.estreeParseLiteral(r)}directiveToStmt(r){const s=r.value;delete r.value,s.type="Literal",s.raw=s.extra.raw,s.value=s.extra.expressionValue;const i=r;return i.type="ExpressionStatement",i.expression=s,i.directive=s.extra.rawValue,delete s.extra,i}initFunction(r,s){super.initFunction(r,s),r.expression=!1}checkDeclaration(r){r!=null&&this.isObjectProperty(r)?this.checkDeclaration(r.value):super.checkDeclaration(r)}getObjectOrClassMethodParams(r){return r.value.params}isValidDirective(r){var s;return r.type==="ExpressionStatement"&&r.expression.type==="Literal"&&typeof r.expression.value=="string"&&!((s=r.expression.extra)!=null&&s.parenthesized)}parseBlockBody(r,s,i,a,n){super.parseBlockBody(r,s,i,a,n);const o=r.directives.map(u=>this.directiveToStmt(u));r.body=o.concat(r.body),delete r.directives}parsePrivateName(){const r=super.parsePrivateName();return this.getPluginOption("estree","classFeatures")?this.convertPrivateNameToPrivateIdentifier(r):r}convertPrivateNameToPrivateIdentifier(r){const s=super.getPrivateNameSV(r);return r=r,delete r.id,r.name=s,r.type="PrivateIdentifier",r}isPrivateName(r){return this.getPluginOption("estree","classFeatures")?r.type==="PrivateIdentifier":super.isPrivateName(r)}getPrivateNameSV(r){return this.getPluginOption("estree","classFeatures")?r.name:super.getPrivateNameSV(r)}parseLiteral(r,s){const i=super.parseLiteral(r,s);return i.raw=i.extra.raw,delete i.extra,i}parseFunctionBody(r,s,i=!1){super.parseFunctionBody(r,s,i),r.expression=r.body.type!=="BlockStatement"}parseMethod(r,s,i,a,n,o,u=!1){let p=this.startNode();p.kind=r.kind,p=super.parseMethod(p,s,i,a,n,o,u),p.type="FunctionExpression",delete p.kind,r.value=p;const{typeParameters:h}=r;return h&&(delete r.typeParameters,p.typeParameters=h,this.resetStartLocationFromNode(p,h)),o==="ClassPrivateMethod"&&(r.computed=!1),this.finishNode(r,"MethodDefinition")}nameIsConstructor(r){return r.type==="Literal"?r.value==="constructor":super.nameIsConstructor(r)}parseClassProperty(...r){const s=super.parseClassProperty(...r);return this.getPluginOption("estree","classFeatures")&&(s.type="PropertyDefinition"),s}parseClassPrivateProperty(...r){const s=super.parseClassPrivateProperty(...r);return this.getPluginOption("estree","classFeatures")&&(s.type="PropertyDefinition",s.computed=!1),s}parseObjectMethod(r,s,i,a,n){const o=super.parseObjectMethod(r,s,i,a,n);return o&&(o.type="Property",o.kind==="method"&&(o.kind="init"),o.shorthand=!1),o}parseObjectProperty(r,s,i,a){const n=super.parseObjectProperty(r,s,i,a);return n&&(n.kind="init",n.type="Property"),n}isValidLVal(r,s,i){return r==="Property"?"value":super.isValidLVal(r,s,i)}isAssignable(r,s){return r!=null&&this.isObjectProperty(r)?this.isAssignable(r.value,s):super.isAssignable(r,s)}toAssignable(r,s=!1){if(r!=null&&this.isObjectProperty(r)){const{key:i,value:a}=r;this.isPrivateName(i)&&this.classScope.usePrivateName(this.getPrivateNameSV(i),i.loc.start),this.toAssignable(a,s)}else super.toAssignable(r,s)}toAssignableObjectExpressionProp(r,s,i){r.type==="Property"&&(r.kind==="get"||r.kind==="set")?this.raise(x.PatternHasAccessor,r.key):r.type==="Property"&&r.method?this.raise(x.PatternHasMethod,r.key):super.toAssignableObjectExpressionProp(r,s,i)}finishCallExpression(r,s){const i=super.finishCallExpression(r,s);if(i.callee.type==="Import"){var a,n;i.type="ImportExpression",i.source=i.arguments[0],i.options=(a=i.arguments[1])!=null?a:null,i.attributes=(n=i.arguments[1])!=null?n:null,delete i.arguments,delete i.callee}return i}toReferencedArguments(r){r.type!=="ImportExpression"&&super.toReferencedArguments(r)}parseExport(r,s){const i=this.state.lastTokStartLoc,a=super.parseExport(r,s);switch(a.type){case"ExportAllDeclaration":a.exported=null;break;case"ExportNamedDeclaration":a.specifiers.length===1&&a.specifiers[0].type==="ExportNamespaceSpecifier"&&(a.type="ExportAllDeclaration",a.exported=a.specifiers[0].exported,delete a.specifiers);case"ExportDefaultDeclaration":{var n;const{declaration:o}=a;(o==null?void 0:o.type)==="ClassDeclaration"&&((n=o.decorators)==null?void 0:n.length)>0&&o.start===a.start&&this.resetStartLocation(a,i)}break}return a}parseSubscript(r,s,i,a){const n=super.parseSubscript(r,s,i,a);if(a.optionalChainMember){if((n.type==="OptionalMemberExpression"||n.type==="OptionalCallExpression")&&(n.type=n.type.substring(8)),a.stop){const o=this.startNodeAtNode(n);return o.expression=n,this.finishNode(o,"ChainExpression")}}else(n.type==="MemberExpression"||n.type==="CallExpression")&&(n.optional=!1);return n}isOptionalMemberExpression(r){return r.type==="ChainExpression"?r.expression.type==="MemberExpression":super.isOptionalMemberExpression(r)}hasPropertyAsPrivateName(r){return r.type==="ChainExpression"&&(r=r.expression),super.hasPropertyAsPrivateName(r)}isObjectProperty(r){return r.type==="Property"&&r.kind==="init"&&!r.method}isObjectMethod(r){return r.type==="Property"&&(r.method||r.kind==="get"||r.kind==="set")}finishNodeAt(r,s,i){return Ge(super.finishNodeAt(r,s,i))}resetStartLocation(r,s){super.resetStartLocation(r,s),Ge(r)}resetEndLocation(r,s=this.state.lastTokEndLoc){super.resetEndLocation(r,s),Ge(r)}};class tt{constructor(e,r){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!r}}const W={brace:new tt("{"),j_oTag:new tt("<tag"),j_cTag:new tt("</tag"),j_expr:new tt("<tag>...</tag>",!0)};W.template=new tt("`",!0);const $=!0,O=!0,br=!0,Qe=!0,ve=!0,Mn=!0;class Ri{constructor(e,r={}){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=r.keyword,this.beforeExpr=!!r.beforeExpr,this.startsExpr=!!r.startsExpr,this.rightAssociative=!!r.rightAssociative,this.isLoop=!!r.isLoop,this.isAssign=!!r.isAssign,this.prefix=!!r.prefix,this.postfix=!!r.postfix,this.binop=r.binop!=null?r.binop:null,this.updateContext=null}}const Kr=new Map;function X(t,e={}){e.keyword=t;const r=_(t,e);return Kr.set(t,r),r}function ne(t,e){return _(t,{beforeExpr:$,binop:e})}let it=-1;const xe=[],Ur=[],Vr=[],$r=[],Yr=[],Xr=[];function _(t,e={}){var r,s,i,a;return++it,Ur.push(t),Vr.push((r=e.binop)!=null?r:-1),$r.push((s=e.beforeExpr)!=null?s:!1),Yr.push((i=e.startsExpr)!=null?i:!1),Xr.push((a=e.prefix)!=null?a:!1),xe.push(new Ri(t,e)),it}function V(t,e={}){var r,s,i,a;return++it,Kr.set(t,it),Ur.push(t),Vr.push((r=e.binop)!=null?r:-1),$r.push((s=e.beforeExpr)!=null?s:!1),Yr.push((i=e.startsExpr)!=null?i:!1),Xr.push((a=e.prefix)!=null?a:!1),xe.push(new Ri("name",e)),it}const _n={bracketL:_("[",{beforeExpr:$,startsExpr:O}),bracketHashL:_("#[",{beforeExpr:$,startsExpr:O}),bracketBarL:_("[|",{beforeExpr:$,startsExpr:O}),bracketR:_("]"),bracketBarR:_("|]"),braceL:_("{",{beforeExpr:$,startsExpr:O}),braceBarL:_("{|",{beforeExpr:$,startsExpr:O}),braceHashL:_("#{",{beforeExpr:$,startsExpr:O}),braceR:_("}"),braceBarR:_("|}"),parenL:_("(",{beforeExpr:$,startsExpr:O}),parenR:_(")"),comma:_(",",{beforeExpr:$}),semi:_(";",{beforeExpr:$}),colon:_(":",{beforeExpr:$}),doubleColon:_("::",{beforeExpr:$}),dot:_("."),question:_("?",{beforeExpr:$}),questionDot:_("?."),arrow:_("=>",{beforeExpr:$}),template:_("template"),ellipsis:_("...",{beforeExpr:$}),backQuote:_("`",{startsExpr:O}),dollarBraceL:_("${",{beforeExpr:$,startsExpr:O}),templateTail:_("...`",{startsExpr:O}),templateNonTail:_("...${",{beforeExpr:$,startsExpr:O}),at:_("@"),hash:_("#",{startsExpr:O}),interpreterDirective:_("#!..."),eq:_("=",{beforeExpr:$,isAssign:Qe}),assign:_("_=",{beforeExpr:$,isAssign:Qe}),slashAssign:_("_=",{beforeExpr:$,isAssign:Qe}),xorAssign:_("_=",{beforeExpr:$,isAssign:Qe}),moduloAssign:_("_=",{beforeExpr:$,isAssign:Qe}),incDec:_("++/--",{prefix:ve,postfix:Mn,startsExpr:O}),bang:_("!",{beforeExpr:$,prefix:ve,startsExpr:O}),tilde:_("~",{beforeExpr:$,prefix:ve,startsExpr:O}),doubleCaret:_("^^",{startsExpr:O}),doubleAt:_("@@",{startsExpr:O}),pipeline:ne("|>",0),nullishCoalescing:ne("??",1),logicalOR:ne("||",1),logicalAND:ne("&&",2),bitwiseOR:ne("|",3),bitwiseXOR:ne("^",4),bitwiseAND:ne("&",5),equality:ne("==/!=/===/!==",6),lt:ne("</>/<=/>=",7),gt:ne("</>/<=/>=",7),relational:ne("</>/<=/>=",7),bitShift:ne("<</>>/>>>",8),bitShiftL:ne("<</>>/>>>",8),bitShiftR:ne("<</>>/>>>",8),plusMin:_("+/-",{beforeExpr:$,binop:9,prefix:ve,startsExpr:O}),modulo:_("%",{binop:10,startsExpr:O}),star:_("*",{binop:10}),slash:ne("/",10),exponent:_("**",{beforeExpr:$,binop:11,rightAssociative:!0}),_in:X("in",{beforeExpr:$,binop:7}),_instanceof:X("instanceof",{beforeExpr:$,binop:7}),_break:X("break"),_case:X("case",{beforeExpr:$}),_catch:X("catch"),_continue:X("continue"),_debugger:X("debugger"),_default:X("default",{beforeExpr:$}),_else:X("else",{beforeExpr:$}),_finally:X("finally"),_function:X("function",{startsExpr:O}),_if:X("if"),_return:X("return",{beforeExpr:$}),_switch:X("switch"),_throw:X("throw",{beforeExpr:$,prefix:ve,startsExpr:O}),_try:X("try"),_var:X("var"),_const:X("const"),_with:X("with"),_new:X("new",{beforeExpr:$,startsExpr:O}),_this:X("this",{startsExpr:O}),_super:X("super",{startsExpr:O}),_class:X("class",{startsExpr:O}),_extends:X("extends",{beforeExpr:$}),_export:X("export"),_import:X("import",{startsExpr:O}),_null:X("null",{startsExpr:O}),_true:X("true",{startsExpr:O}),_false:X("false",{startsExpr:O}),_typeof:X("typeof",{beforeExpr:$,prefix:ve,startsExpr:O}),_void:X("void",{beforeExpr:$,prefix:ve,startsExpr:O}),_delete:X("delete",{beforeExpr:$,prefix:ve,startsExpr:O}),_do:X("do",{isLoop:br,beforeExpr:$}),_for:X("for",{isLoop:br}),_while:X("while",{isLoop:br}),_as:V("as",{startsExpr:O}),_assert:V("assert",{startsExpr:O}),_async:V("async",{startsExpr:O}),_await:V("await",{startsExpr:O}),_defer:V("defer",{startsExpr:O}),_from:V("from",{startsExpr:O}),_get:V("get",{startsExpr:O}),_let:V("let",{startsExpr:O}),_meta:V("meta",{startsExpr:O}),_of:V("of",{startsExpr:O}),_sent:V("sent",{startsExpr:O}),_set:V("set",{startsExpr:O}),_source:V("source",{startsExpr:O}),_static:V("static",{startsExpr:O}),_using:V("using",{startsExpr:O}),_yield:V("yield",{startsExpr:O}),_asserts:V("asserts",{startsExpr:O}),_checks:V("checks",{startsExpr:O}),_exports:V("exports",{startsExpr:O}),_global:V("global",{startsExpr:O}),_implements:V("implements",{startsExpr:O}),_intrinsic:V("intrinsic",{startsExpr:O}),_infer:V("infer",{startsExpr:O}),_is:V("is",{startsExpr:O}),_mixins:V("mixins",{startsExpr:O}),_proto:V("proto",{startsExpr:O}),_require:V("require",{startsExpr:O}),_satisfies:V("satisfies",{startsExpr:O}),_keyof:V("keyof",{startsExpr:O}),_readonly:V("readonly",{startsExpr:O}),_unique:V("unique",{startsExpr:O}),_abstract:V("abstract",{startsExpr:O}),_declare:V("declare",{startsExpr:O}),_enum:V("enum",{startsExpr:O}),_module:V("module",{startsExpr:O}),_namespace:V("namespace",{startsExpr:O}),_interface:V("interface",{startsExpr:O}),_type:V("type",{startsExpr:O}),_opaque:V("opaque",{startsExpr:O}),name:_("name",{startsExpr:O}),placeholder:_("%%",{startsExpr:!0}),string:_("string",{startsExpr:O}),num:_("num",{startsExpr:O}),bigint:_("bigint",{startsExpr:O}),decimal:_("decimal",{startsExpr:O}),regexp:_("regexp",{startsExpr:O}),privateName:_("#name",{startsExpr:O}),eof:_("eof"),jsxName:_("jsxName"),jsxText:_("jsxText",{beforeExpr:!0}),jsxTagStart:_("jsxTagStart",{startsExpr:!0}),jsxTagEnd:_("jsxTagEnd")};function H(t){return t>=93&&t<=133}function Bn(t){return t<=92}function fe(t){return t>=58&&t<=133}function ji(t){return t>=58&&t<=137}function Fn(t){return $r[t]}function Lr(t){return Yr[t]}function Rn(t){return t>=29&&t<=33}function Ys(t){return t>=129&&t<=131}function jn(t){return t>=90&&t<=92}function Jr(t){return t>=58&&t<=92}function Kn(t){return t>=39&&t<=59}function Un(t){return t===34}function Vn(t){return Xr[t]}function $n(t){return t>=121&&t<=123}function Yn(t){return t>=124&&t<=130}function Oe(t){return Ur[t]}function Dt(t){return Vr[t]}function Xn(t){return t===57}function Ft(t){return t>=24&&t<=25}function Se(t){return xe[t]}xe[8].updateContext=t=>{t.pop()},xe[5].updateContext=xe[7].updateContext=xe[23].updateContext=t=>{t.push(W.brace)},xe[22].updateContext=t=>{t[t.length-1]===W.template?t.pop():t.push(W.template)},xe[143].updateContext=t=>{t.push(W.j_expr,W.j_oTag)};let qr="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-Ა-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-Ꟑꟑꟓꟕ-ꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",Ki="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・";const Jn=new RegExp("["+qr+"]"),qn=new RegExp("["+qr+Ki+"]");qr=Ki=null;const Ui=[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,4,51,13,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,39,27,10,22,251,41,7,1,17,2,60,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,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,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,200,32,32,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,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,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,229,29,3,0,496,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,16,621,2467,541,1507,4938,6,4191],Wn=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,80,3,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,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,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,343,9,54,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,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,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,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function kr(t,e){let r=65536;for(let s=0,i=e.length;s<i;s+=2){if(r+=e[s],r>t)return!1;if(r+=e[s+1],r>=t)return!0}return!1}function be(t){return t<65?t===36:t<=90?!0:t<97?t===95:t<=122?!0:t<=65535?t>=170&&Jn.test(String.fromCharCode(t)):kr(t,Ui)}function Ye(t){return t<48?t===36:t<58?!0:t<65?!1:t<=90?!0:t<97?t===95:t<=122?!0:t<=65535?t>=170&&qn.test(String.fromCharCode(t)):kr(t,Ui)||kr(t,Wn)}const Wr={keyword:["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"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},Hn=new Set(Wr.keyword),zn=new Set(Wr.strict),Gn=new Set(Wr.strictBind);function Vi(t,e){return e&&t==="await"||t==="enum"}function $i(t,e){return Vi(t,e)||zn.has(t)}function Yi(t){return Gn.has(t)}function Xi(t,e){return $i(t,e)||Yi(t)}function Qn(t){return Hn.has(t)}function Zn(t,e,r){return t===64&&e===64&&be(r)}const eo=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"]);function to(t){return eo.has(t)}class Hr{constructor(e){this.flags=0,this.names=new Map,this.firstLexicalName="",this.flags=e}}class zr{constructor(e,r){this.parser=void 0,this.scopeStack=[],this.inModule=void 0,this.undefinedExports=new Map,this.parser=e,this.inModule=r}get inTopLevel(){return(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){const e=this.currentThisScopeFlags();return(e&64)>0&&(e&2)===0}get inStaticBlock(){for(let e=this.scopeStack.length-1;;e--){const{flags:r}=this.scopeStack[e];if(r&128)return!0;if(r&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(e){return new Hr(e)}enter(e){this.scopeStack.push(this.createScope(e))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(e){return!!(e.flags&130||!this.parser.inModule&&e.flags&1)}declareName(e,r,s){let i=this.currentScope();if(r&8||r&16){this.checkRedeclarationInScope(i,e,r,s);let a=i.names.get(e)||0;r&16?a=a|4:(i.firstLexicalName||(i.firstLexicalName=e),a=a|2),i.names.set(e,a),r&8&&this.maybeExportDefined(i,e)}else if(r&4)for(let a=this.scopeStack.length-1;a>=0&&(i=this.scopeStack[a],this.checkRedeclarationInScope(i,e,r,s),i.names.set(e,(i.names.get(e)||0)|1),this.maybeExportDefined(i,e),!(i.flags&387));--a);this.parser.inModule&&i.flags&1&&this.undefinedExports.delete(e)}maybeExportDefined(e,r){this.parser.inModule&&e.flags&1&&this.undefinedExports.delete(r)}checkRedeclarationInScope(e,r,s,i){this.isRedeclaredInScope(e,r,s)&&this.parser.raise(x.VarRedeclaration,i,{identifierName:r})}isRedeclaredInScope(e,r,s){if(!(s&1))return!1;if(s&8)return e.names.has(r);const i=e.names.get(r);return s&16?(i&2)>0||!this.treatFunctionsAsVarInScope(e)&&(i&1)>0:(i&2)>0&&!(e.flags&8&&e.firstLexicalName===r)||!this.treatFunctionsAsVarInScope(e)&&(i&4)>0}checkLocalExport(e){const{name:r}=e;this.scopeStack[0].names.has(r)||this.undefinedExports.set(r,e.loc.start)}currentScope(){return this.scopeStack[this.scopeStack.length-1]}currentVarScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:r}=this.scopeStack[e];if(r&387)return r}}currentThisScopeFlags(){for(let e=this.scopeStack.length-1;;e--){const{flags:r}=this.scopeStack[e];if(r&451&&!(r&4))return r}}}class ro extends Hr{constructor(...e){super(...e),this.declareFunctions=new Set}}class so extends zr{createScope(e){return new ro(e)}declareName(e,r,s){const i=this.currentScope();if(r&2048){this.checkRedeclarationInScope(i,e,r,s),this.maybeExportDefined(i,e),i.declareFunctions.add(e);return}super.declareName(e,r,s)}isRedeclaredInScope(e,r,s){if(super.isRedeclaredInScope(e,r,s))return!0;if(s&2048&&!e.declareFunctions.has(r)){const i=e.names.get(r);return(i&4)>0||(i&2)>0}return!1}checkLocalExport(e){this.scopeStack[0].declareFunctions.has(e.name)||super.checkLocalExport(e)}}class io{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(e){return e+this.startIndex}offsetToSourcePos(e){return e-this.startIndex}hasPlugin(e){if(typeof e=="string")return this.plugins.has(e);{const[r,s]=e;if(!this.hasPlugin(r))return!1;const i=this.plugins.get(r);for(const a of Object.keys(s))if((i==null?void 0:i[a])!==s[a])return!1;return!0}}getPluginOption(e,r){var s;return(s=this.plugins.get(e))==null?void 0:s[r]}}function Ji(t,e){t.trailingComments===void 0?t.trailingComments=e:t.trailingComments.unshift(...e)}function ao(t,e){t.leadingComments===void 0?t.leadingComments=e:t.leadingComments.unshift(...e)}function nt(t,e){t.innerComments===void 0?t.innerComments=e:t.innerComments.unshift(...e)}function De(t,e,r){let s=null,i=e.length;for(;s===null&&i>0;)s=e[--i];s===null||s.start>r.start?nt(t,r.comments):Ji(s,r.comments)}class no extends io{addComment(e){this.filename&&(e.loc.filename=this.filename);const{commentsLen:r}=this.state;this.comments.length!==r&&(this.comments.length=r),this.comments.push(e),this.state.commentsLen++}processComment(e){const{commentStack:r}=this.state,s=r.length;if(s===0)return;let i=s-1;const a=r[i];a.start===e.end&&(a.leadingNode=e,i--);const{start:n}=e;for(;i>=0;i--){const o=r[i],u=o.end;if(u>n)o.containingNode=e,this.finalizeComment(o),r.splice(i,1);else{u===n&&(o.trailingNode=e);break}}}finalizeComment(e){const{comments:r}=e;if(e.leadingNode!==null||e.trailingNode!==null)e.leadingNode!==null&&Ji(e.leadingNode,r),e.trailingNode!==null&&ao(e.trailingNode,r);else{const{containingNode:s,start:i}=e;if(this.input.charCodeAt(this.offsetToSourcePos(i)-1)===44)switch(s.type){case"ObjectExpression":case"ObjectPattern":case"RecordExpression":De(s,s.properties,e);break;case"CallExpression":case"OptionalCallExpression":De(s,s.arguments,e);break;case"FunctionDeclaration":case"FunctionExpression":case"ArrowFunctionExpression":case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":De(s,s.params,e);break;case"ArrayExpression":case"ArrayPattern":case"TupleExpression":De(s,s.elements,e);break;case"ExportNamedDeclaration":case"ImportDeclaration":De(s,s.specifiers,e);break;case"TSEnumDeclaration":De(s,s.members,e);break;case"TSEnumBody":De(s,s.members,e);break;default:nt(s,r)}else nt(s,r)}}finalizeRemainingComments(){const{commentStack:e}=this.state;for(let r=e.length-1;r>=0;r--)this.finalizeComment(e[r]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(e){const{commentStack:r}=this.state,{length:s}=r;if(s===0)return;const i=r[s-1];i.leadingNode===e&&(i.leadingNode=null)}resetPreviousIdentifierLeadingComments(e){const{commentStack:r}=this.state,{length:s}=r;s!==0&&(r[s-1].trailingNode===e?r[s-1].trailingNode=null:s>=2&&r[s-2].trailingNode===e&&(r[s-2].trailingNode=null))}takeSurroundingComments(e,r,s){const{commentStack:i}=this.state,a=i.length;if(a===0)return;let n=a-1;for(;n>=0;n--){const o=i[n],u=o.end;if(o.start===s)o.leadingNode=e;else if(u===r)o.trailingNode=e;else if(u<r)break}}}const oo=/\r\n|[\r\n\u2028\u2029]/,St=new RegExp(oo.source,"g");function Xe(t){switch(t){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}function Xs(t,e,r){for(let s=e;s<r;s++)if(Xe(t.charCodeAt(s)))return!0;return!1}const Er=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,Pr=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g;function lo(t){switch(t){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 Gr{constructor(){this.flags=1024,this.startIndex=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.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=140,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[W.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(this.flags&1)>0}set strict(e){e?this.flags|=1:this.flags&=-2}init({strictMode:e,sourceType:r,startIndex:s,startLine:i,startColumn:a}){this.strict=e===!1?!1:e===!0?!0:r==="module",this.startIndex=s,this.curLine=i,this.lineStart=-a,this.startLoc=this.endLoc=new we(i,a,s)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(e){e?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(e){e?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(e){e?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(e){e?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(e){e?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(e){e?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(e){e?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(e){e?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(e){e?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(e){e?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(e){e?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(e){e?this.flags|=4096:this.flags&=-4097}curPosition(){return new we(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){const e=new Gr;return e.flags=this.flags,e.startIndex=this.startIndex,e.curLine=this.curLine,e.lineStart=this.lineStart,e.startLoc=this.startLoc,e.endLoc=this.endLoc,e.errors=this.errors.slice(),e.potentialArrowAt=this.potentialArrowAt,e.noArrowAt=this.noArrowAt.slice(),e.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),e.topicContext=this.topicContext,e.labels=this.labels.slice(),e.commentsLen=this.commentsLen,e.commentStack=this.commentStack.slice(),e.pos=this.pos,e.type=this.type,e.value=this.value,e.start=this.start,e.end=this.end,e.lastTokEndLoc=this.lastTokEndLoc,e.lastTokStartLoc=this.lastTokStartLoc,e.context=this.context.slice(),e.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,e.strictErrors=this.strictErrors,e.tokensLength=this.tokensLength,e}}var uo=function(e){return e>=48&&e<=57};const Js={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},xt={bin:t=>t===48||t===49,oct:t=>t>=48&&t<=55,dec:t=>t>=48&&t<=57,hex:t=>t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102};function qs(t,e,r,s,i,a){const n=r,o=s,u=i;let p="",h=null,E=r;const{length:I}=e;for(;;){if(r>=I){a.unterminated(n,o,u),p+=e.slice(E,r);break}const A=e.charCodeAt(r);if(co(t,A,e,r)){p+=e.slice(E,r);break}if(A===92){p+=e.slice(E,r);const w=po(e,r,s,i,t==="template",a);w.ch===null&&!h?h={pos:r,lineStart:s,curLine:i}:p+=w.ch,{pos:r,lineStart:s,curLine:i}=w,E=r}else A===8232||A===8233?(++r,++i,s=r):A===10||A===13?t==="template"?(p+=e.slice(E,r)+`
|
|
139
|
-
`,++r,A===13&&e.charCodeAt(r)===10&&++r,++i,E=s=r):a.unterminated(n,o,u):++r}return{pos:r,str:p,firstInvalidLoc:h,lineStart:s,curLine:i,containsInvalid:!!h}}function co(t,e,r,s){return t==="template"?e===96||e===36&&r.charCodeAt(s+1)===123:e===(t==="double"?34:39)}function po(t,e,r,s,i,a){const n=!i;e++;const o=p=>({pos:e,ch:p,lineStart:r,curLine:s}),u=t.charCodeAt(e++);switch(u){case 110:return o(`
|
|
140
|
-
`);case 114:return o("\r");case 120:{let p;return{code:p,pos:e}=Mr(t,e,r,s,2,!1,n,a),o(p===null?null:String.fromCharCode(p))}case 117:{let p;return{code:p,pos:e}=Wi(t,e,r,s,n,a),o(p===null?null:String.fromCodePoint(p))}case 116:return o(" ");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:t.charCodeAt(e)===10&&++e;case 10:r=e,++s;case 8232:case 8233:return o("");case 56:case 57:if(i)return o(null);a.strictNumericEscape(e-1,r,s);default:if(u>=48&&u<=55){const p=e-1;let E=/^[0-7]+/.exec(t.slice(p,e+2))[0],I=parseInt(E,8);I>255&&(E=E.slice(0,-1),I=parseInt(E,8)),e+=E.length-1;const A=t.charCodeAt(e);if(E!=="0"||A===56||A===57){if(i)return o(null);a.strictNumericEscape(p,r,s)}return o(String.fromCharCode(I))}return o(String.fromCharCode(u))}}function Mr(t,e,r,s,i,a,n,o){const u=e;let p;return{n:p,pos:e}=qi(t,e,r,s,16,i,a,!1,o,!n),p===null&&(n?o.invalidEscapeSequence(u,r,s):e=u-1),{code:p,pos:e}}function qi(t,e,r,s,i,a,n,o,u,p){const h=e,E=i===16?Js.hex:Js.decBinOct,I=i===16?xt.hex:i===10?xt.dec:i===8?xt.oct:xt.bin;let A=!1,w=0;for(let P=0,v=a??1/0;P<v;++P){const g=t.charCodeAt(e);let C;if(g===95&&o!=="bail"){const k=t.charCodeAt(e-1),R=t.charCodeAt(e+1);if(o){if(Number.isNaN(R)||!I(R)||E.has(k)||E.has(R)){if(p)return{n:null,pos:e};u.unexpectedNumericSeparator(e,r,s)}}else{if(p)return{n:null,pos:e};u.numericSeparatorInEscapeSequence(e,r,s)}++e;continue}if(g>=97?C=g-97+10:g>=65?C=g-65+10:uo(g)?C=g-48:C=1/0,C>=i){if(C<=9&&p)return{n:null,pos:e};if(C<=9&&u.invalidDigit(e,r,s,i))C=0;else if(n)C=0,A=!0;else break}++e,w=w*i+C}return e===h||a!=null&&e-h!==a||A?{n:null,pos:e}:{n:w,pos:e}}function Wi(t,e,r,s,i,a){const n=t.charCodeAt(e);let o;if(n===123){if(++e,{code:o,pos:e}=Mr(t,e,r,s,t.indexOf("}",e)-e,!0,i,a),++e,o!==null&&o>1114111)if(i)a.invalidCodePoint(e,r,s);else return{code:null,pos:e}}else({code:o,pos:e}=Mr(t,e,r,s,4,!1,i,a));return{code:o,pos:e}}function Ze(t,e,r){return new we(r,t-e,t)}const fo=new Set([103,109,115,105,121,117,100,118]);class Ne{constructor(e){const r=e.startIndex||0;this.type=e.type,this.value=e.value,this.start=r+e.start,this.end=r+e.end,this.loc=new Bt(e.startLoc,e.endLoc)}}class ho extends no{constructor(e,r){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(s,i,a,n)=>this.optionFlags&1024?(this.raise(x.InvalidDigit,Ze(s,i,a),{radix:n}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(x.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(x.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(x.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(x.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(s,i,a)=>{this.recordStrictModeErrors(x.StrictNumericEscape,Ze(s,i,a))},unterminated:(s,i,a)=>{throw this.raise(x.UnterminatedString,Ze(s-1,i,a))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(x.StrictNumericEscape),unterminated:(s,i,a)=>{throw this.raise(x.UnterminatedTemplate,Ze(s,i,a))}}),this.state=new Gr,this.state.init(e),this.input=r,this.length=r.length,this.comments=[],this.isLookahead=!1}pushToken(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new Ne(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(e){return this.match(e)?(this.next(),!0):!1}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 r=this.state;return this.state=e,r}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(e){return Er.lastIndex=e,Er.test(this.input)?Er.lastIndex:e}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(e){return Pr.lastIndex=e,Pr.test(this.input)?Pr.lastIndex:e}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(e){let r=this.input.charCodeAt(e);if((r&64512)===55296&&++e<this.input.length){const s=this.input.charCodeAt(e);(s&64512)===56320&&(r=65536+((r&1023)<<10)+(s&1023))}return r}setStrict(e){this.state.strict=e,e&&(this.state.strictErrors.forEach(([r,s])=>this.raise(r,s)),this.state.strictErrors.clear())}curContext(){return this.state.context[this.state.context.length-1]}nextToken(){if(this.skipSpace(),this.state.start=this.state.pos,this.isLookahead||(this.state.startLoc=this.state.curPosition()),this.state.pos>=this.length){this.finishToken(140);return}this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(e){let r;this.isLookahead||(r=this.state.curPosition());const s=this.state.pos,i=this.input.indexOf(e,s+2);if(i===-1)throw this.raise(x.UnterminatedComment,this.state.curPosition());for(this.state.pos=i+e.length,St.lastIndex=s+2;St.test(this.input)&&St.lastIndex<=i;)++this.state.curLine,this.state.lineStart=St.lastIndex;if(this.isLookahead)return;const a={type:"CommentBlock",value:this.input.slice(s+2,i),start:this.sourceToOffsetPos(s),end:this.sourceToOffsetPos(i+e.length),loc:new Bt(r,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(a),a}skipLineComment(e){const r=this.state.pos;let s;this.isLookahead||(s=this.state.curPosition());let i=this.input.charCodeAt(this.state.pos+=e);if(this.state.pos<this.length)for(;!Xe(i)&&++this.state.pos<this.length;)i=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;const a=this.state.pos,o={type:"CommentLine",value:this.input.slice(r+e,a),start:this.sourceToOffsetPos(r),end:this.sourceToOffsetPos(a),loc:new Bt(s,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(o),o}skipSpace(){const e=this.state.pos,r=this.optionFlags&2048?[]:null;e:for(;this.state.pos<this.length;){const s=this.input.charCodeAt(this.state.pos);switch(s){case 32:case 160:case 9:++this.state.pos;break;case 13:this.input.charCodeAt(this.state.pos+1)===10&&++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 i=this.skipBlockComment("*/");i!==void 0&&(this.addComment(i),r==null||r.push(i));break}case 47:{const i=this.skipLineComment(2);i!==void 0&&(this.addComment(i),r==null||r.push(i));break}default:break e}break;default:if(lo(s))++this.state.pos;else if(s===45&&!this.inModule&&this.optionFlags&4096){const i=this.state.pos;if(this.input.charCodeAt(i+1)===45&&this.input.charCodeAt(i+2)===62&&(e===0||this.state.lineStart>e)){const a=this.skipLineComment(3);a!==void 0&&(this.addComment(a),r==null||r.push(a))}else break e}else if(s===60&&!this.inModule&&this.optionFlags&4096){const i=this.state.pos;if(this.input.charCodeAt(i+1)===33&&this.input.charCodeAt(i+2)===45&&this.input.charCodeAt(i+3)===45){const a=this.skipLineComment(4);a!==void 0&&(this.addComment(a),r==null||r.push(a))}else break e}else break e}}if((r==null?void 0:r.length)>0){const s=this.state.pos,i={start:this.sourceToOffsetPos(e),end:this.sourceToOffsetPos(s),comments:r,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(i)}}finishToken(e,r){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();const s=this.state.type;this.state.type=e,this.state.value=r,this.isLookahead||this.updateContext(s)}replaceToken(e){this.state.type=e,this.updateContext()}readToken_numberSign(){if(this.state.pos===0&&this.readToken_interpreter())return;const e=this.state.pos+1,r=this.codePointAtPos(e);if(r>=48&&r<=57)throw this.raise(x.UnexpectedDigitAfterHash,this.state.curPosition());if(r===123||r===91&&this.hasPlugin("recordAndTuple")){if(this.expectPlugin("recordAndTuple"),this.getPluginOption("recordAndTuple","syntaxType")==="bar")throw this.raise(r===123?x.RecordExpressionHashIncorrectStartSyntaxType:x.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,r===123?this.finishToken(7):this.finishToken(1)}else be(r)?(++this.state.pos,this.finishToken(139,this.readWord1(r))):r===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){const e=this.input.charCodeAt(this.state.pos+1);if(e>=48&&e<=57){this.readNumber(!0);return}e===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let e=this.input.charCodeAt(this.state.pos+1);if(e!==33)return!1;const r=this.state.pos;for(this.state.pos+=1;!Xe(e)&&++this.state.pos<this.length;)e=this.input.charCodeAt(this.state.pos);const s=this.input.slice(r+2,this.state.pos);return this.finishToken(28,s),!0}readToken_mult_modulo(e){let r=e===42?55:54,s=1,i=this.input.charCodeAt(this.state.pos+1);e===42&&i===42&&(s++,i=this.input.charCodeAt(this.state.pos+2),r=57),i===61&&!this.state.inType&&(s++,r=e===37?33:30),this.finishOp(r,s)}readToken_pipe_amp(e){const r=this.input.charCodeAt(this.state.pos+1);if(r===e){this.input.charCodeAt(this.state.pos+2)===61?this.finishOp(30,3):this.finishOp(e===124?41:42,2);return}if(e===124){if(r===62){this.finishOp(39,2);return}if(this.hasPlugin("recordAndTuple")&&r===125){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(x.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(9);return}if(this.hasPlugin("recordAndTuple")&&r===93){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(x.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(4);return}}if(r===61){this.finishOp(30,2);return}this.finishOp(e===124?43:45,1)}readToken_caret(){const e=this.input.charCodeAt(this.state.pos+1);e===61&&!this.state.inType?this.finishOp(32,2):e===94&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"^^"}])?(this.finishOp(37,2),this.input.codePointAt(this.state.pos)===94&&this.unexpected()):this.finishOp(44,1)}readToken_atSign(){this.input.charCodeAt(this.state.pos+1)===64&&this.hasPlugin(["pipelineOperator",{proposal:"hack",topicToken:"@@"}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(e){const r=this.input.charCodeAt(this.state.pos+1);if(r===e){this.finishOp(34,2);return}r===61?this.finishOp(30,2):this.finishOp(53,1)}readToken_lt(){const{pos:e}=this.state,r=this.input.charCodeAt(e+1);if(r===60){if(this.input.charCodeAt(e+2)===61){this.finishOp(30,3);return}this.finishOp(51,2);return}if(r===61){this.finishOp(49,2);return}this.finishOp(47,1)}readToken_gt(){const{pos:e}=this.state,r=this.input.charCodeAt(e+1);if(r===62){const s=this.input.charCodeAt(e+2)===62?3:2;if(this.input.charCodeAt(e+s)===61){this.finishOp(30,s+1);return}this.finishOp(52,s);return}if(r===61){this.finishOp(49,2);return}this.finishOp(48,1)}readToken_eq_excl(e){const r=this.input.charCodeAt(this.state.pos+1);if(r===61){this.finishOp(46,this.input.charCodeAt(this.state.pos+2)===61?3:2);return}if(e===61&&r===62){this.state.pos+=2,this.finishToken(19);return}this.finishOp(e===61?29:35,1)}readToken_question(){const e=this.input.charCodeAt(this.state.pos+1),r=this.input.charCodeAt(this.state.pos+2);e===63?r===61?this.finishOp(30,3):this.finishOp(40,2):e===46&&!(r>=48&&r<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(e){switch(e){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(x.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin("recordAndTuple")&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption("recordAndTuple","syntaxType")!=="bar")throw this.raise(x.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin("functionBind")&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{const r=this.input.charCodeAt(this.state.pos+1);if(r===120||r===88){this.readRadixNumber(16);return}if(r===111||r===79){this.readRadixNumber(8);return}if(r===98||r===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(e);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(e);return;case 124:case 38:this.readToken_pipe_amp(e);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(e);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(e);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(be(e)){this.readWord(e);return}}throw this.raise(x.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(e)})}finishOp(e,r){const s=this.input.slice(this.state.pos,this.state.pos+r);this.state.pos+=r,this.finishToken(e,s)}readRegexp(){const e=this.state.startLoc,r=this.state.start+1;let s,i,{pos:a}=this.state;for(;;++a){if(a>=this.length)throw this.raise(x.UnterminatedRegExp,oe(e,1));const p=this.input.charCodeAt(a);if(Xe(p))throw this.raise(x.UnterminatedRegExp,oe(e,1));if(s)s=!1;else{if(p===91)i=!0;else if(p===93&&i)i=!1;else if(p===47&&!i)break;s=p===92}}const n=this.input.slice(r,a);++a;let o="";const u=()=>oe(e,a+2-r);for(;a<this.length;){const p=this.codePointAtPos(a),h=String.fromCharCode(p);if(fo.has(p))p===118?o.includes("u")&&this.raise(x.IncompatibleRegExpUVFlags,u()):p===117&&o.includes("v")&&this.raise(x.IncompatibleRegExpUVFlags,u()),o.includes(h)&&this.raise(x.DuplicateRegExpFlags,u());else if(Ye(p)||p===92)this.raise(x.MalformedRegExpFlags,u());else break;++a,o+=h}this.state.pos=a,this.finishToken(138,{pattern:n,flags:o})}readInt(e,r,s=!1,i=!0){const{n:a,pos:n}=qi(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,r,s,i,this.errorHandlers_readInt,!1);return this.state.pos=n,a}readRadixNumber(e){const r=this.state.pos,s=this.state.curPosition();let i=!1;this.state.pos+=2;const a=this.readInt(e);a==null&&this.raise(x.InvalidDigit,oe(s,2),{radix:e});const n=this.input.charCodeAt(this.state.pos);if(n===110)++this.state.pos,i=!0;else if(n===109)throw this.raise(x.InvalidDecimal,s);if(be(this.codePointAtPos(this.state.pos)))throw this.raise(x.NumberIdentifier,this.state.curPosition());if(i){const o=this.input.slice(r,this.state.pos).replace(/[_n]/g,"");this.finishToken(136,o);return}this.finishToken(135,a)}readNumber(e){const r=this.state.pos,s=this.state.curPosition();let i=!1,a=!1,n=!1,o=!1;!e&&this.readInt(10)===null&&this.raise(x.InvalidNumber,this.state.curPosition());const u=this.state.pos-r>=2&&this.input.charCodeAt(r)===48;if(u){const A=this.input.slice(r,this.state.pos);if(this.recordStrictModeErrors(x.StrictOctalLiteral,s),!this.state.strict){const w=A.indexOf("_");w>0&&this.raise(x.ZeroDigitNumericSeparator,oe(s,w))}o=u&&!/[89]/.test(A)}let p=this.input.charCodeAt(this.state.pos);if(p===46&&!o&&(++this.state.pos,this.readInt(10),i=!0,p=this.input.charCodeAt(this.state.pos)),(p===69||p===101)&&!o&&(p=this.input.charCodeAt(++this.state.pos),(p===43||p===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(x.InvalidOrMissingExponent,s),i=!0,n=!0,p=this.input.charCodeAt(this.state.pos)),p===110&&((i||u)&&this.raise(x.InvalidBigIntLiteral,s),++this.state.pos,a=!0),p===109){this.expectPlugin("decimal",this.state.curPosition()),(n||u)&&this.raise(x.InvalidDecimal,s),++this.state.pos;var h=!0}if(be(this.codePointAtPos(this.state.pos)))throw this.raise(x.NumberIdentifier,this.state.curPosition());const E=this.input.slice(r,this.state.pos).replace(/[_mn]/g,"");if(a){this.finishToken(136,E);return}if(h){this.finishToken(137,E);return}const I=o?parseInt(E,8):parseFloat(E);this.finishToken(135,I)}readCodePoint(e){const{code:r,pos:s}=Wi(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,this.errorHandlers_readCodePoint);return this.state.pos=s,r}readString(e){const{str:r,pos:s,curLine:i,lineStart:a}=qs(e===34?"double":"single",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_string);this.state.pos=s+1,this.state.lineStart=a,this.state.curLine=i,this.finishToken(134,r)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){const e=this.input[this.state.pos],{str:r,firstInvalidLoc:s,pos:i,curLine:a,lineStart:n}=qs("template",this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=i+1,this.state.lineStart=n,this.state.curLine=a,s&&(this.state.firstInvalidTemplateEscapePos=new we(s.curLine,s.pos-s.lineStart,this.sourceToOffsetPos(s.pos))),this.input.codePointAt(i)===96?this.finishToken(24,s?null:e+r+"`"):(this.state.pos++,this.finishToken(25,s?null:e+r+"${"))}recordStrictModeErrors(e,r){const s=r.index;this.state.strict&&!this.state.strictErrors.has(s)?this.raise(e,r):this.state.strictErrors.set(s,[e,r])}readWord1(e){this.state.containsEsc=!1;let r="";const s=this.state.pos;let i=this.state.pos;for(e!==void 0&&(this.state.pos+=e<=65535?1:2);this.state.pos<this.length;){const a=this.codePointAtPos(this.state.pos);if(Ye(a))this.state.pos+=a<=65535?1:2;else if(a===92){this.state.containsEsc=!0,r+=this.input.slice(i,this.state.pos);const n=this.state.curPosition(),o=this.state.pos===s?be:Ye;if(this.input.charCodeAt(++this.state.pos)!==117){this.raise(x.MissingUnicodeEscape,this.state.curPosition()),i=this.state.pos-1;continue}++this.state.pos;const u=this.readCodePoint(!0);u!==null&&(o(u)||this.raise(x.EscapedCharNotAnIdentifier,n),r+=String.fromCodePoint(u)),i=this.state.pos}else break}return r+this.input.slice(i,this.state.pos)}readWord(e){const r=this.readWord1(e),s=Kr.get(r);s!==void 0?this.finishToken(s,Oe(s)):this.finishToken(132,r)}checkKeywordEscapes(){const{type:e}=this.state;Jr(e)&&this.state.containsEsc&&this.raise(x.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:Oe(e)})}raise(e,r,s={}){const i=r instanceof we?r:r.loc.start,a=e(i,s);if(!(this.optionFlags&1024))throw a;return this.isLookahead||this.state.errors.push(a),a}raiseOverwrite(e,r,s={}){const i=r instanceof we?r:r.loc.start,a=i.index,n=this.state.errors;for(let o=n.length-1;o>=0;o--){const u=n[o];if(u.loc.index===a)return n[o]=e(i,s);if(u.loc.index<a)break}return this.raise(e,r,s)}updateContext(e){}unexpected(e,r){throw this.raise(x.UnexpectedToken,e??this.state.startLoc,{expected:r?Oe(r):null})}expectPlugin(e,r){if(this.hasPlugin(e))return!0;throw this.raise(x.MissingPlugin,r??this.state.startLoc,{missingPlugin:[e]})}expectOnePlugin(e){if(!e.some(r=>this.hasPlugin(r)))throw this.raise(x.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:e})}errorBuilder(e){return(r,s,i)=>{this.raise(e,Ze(r,s,i))}}}class yo{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}}class mo{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 yo)}exit(){const e=this.stack.pop(),r=this.current();for(const[s,i]of Array.from(e.undefinedPrivateNames))r?r.undefinedPrivateNames.has(s)||r.undefinedPrivateNames.set(s,i):this.parser.raise(x.InvalidPrivateFieldResolution,i,{identifierName:s})}declarePrivateName(e,r,s){const{privateNames:i,loneAccessors:a,undefinedPrivateNames:n}=this.current();let o=i.has(e);if(r&3){const u=o&&a.get(e);if(u){const p=u&4,h=r&4,E=u&3,I=r&3;o=E===I||p!==h,o||a.delete(e)}else o||a.set(e,r)}o&&this.parser.raise(x.PrivateNameRedeclaration,s,{identifierName:e}),i.add(e),n.delete(e)}usePrivateName(e,r){let s;for(s of this.stack)if(s.privateNames.has(e))return;s?s.undefinedPrivateNames.set(e,r):this.parser.raise(x.InvalidPrivateFieldResolution,r,{identifierName:e})}}class Vt{constructor(e=0){this.type=e}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}}class Hi extends Vt{constructor(e){super(e),this.declarationErrors=new Map}recordDeclarationError(e,r){const s=r.index;this.declarationErrors.set(s,[e,r])}clearDeclarationError(e){this.declarationErrors.delete(e)}iterateErrors(e){this.declarationErrors.forEach(e)}}class To{constructor(e){this.parser=void 0,this.stack=[new Vt],this.parser=e}enter(e){this.stack.push(e)}exit(){this.stack.pop()}recordParameterInitializerError(e,r){const s=r.loc.start,{stack:i}=this;let a=i.length-1,n=i[a];for(;!n.isCertainlyParameterDeclaration();){if(n.canBeArrowParameterDeclaration())n.recordDeclarationError(e,s);else return;n=i[--a]}this.parser.raise(e,s)}recordArrowParameterBindingError(e,r){const{stack:s}=this,i=s[s.length-1],a=r.loc.start;if(i.isCertainlyParameterDeclaration())this.parser.raise(e,a);else if(i.canBeArrowParameterDeclaration())i.recordDeclarationError(e,a);else return}recordAsyncArrowParametersError(e){const{stack:r}=this;let s=r.length-1,i=r[s];for(;i.canBeArrowParameterDeclaration();)i.type===2&&i.recordDeclarationError(x.AwaitBindingIdentifier,e),i=r[--s]}validateAsPattern(){const{stack:e}=this,r=e[e.length-1];r.canBeArrowParameterDeclaration()&&r.iterateErrors(([s,i])=>{this.parser.raise(s,i);let a=e.length-2,n=e[a];for(;n.canBeArrowParameterDeclaration();)n.clearDeclarationError(i.index),n=e[--a]})}}function So(){return new Vt(3)}function xo(){return new Hi(1)}function bo(){return new Hi(2)}function zi(){return new Vt}class Eo{constructor(){this.stacks=[]}enter(e){this.stacks.push(e)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}}function Lt(t,e){return(t?2:0)|(e?1:0)}class Po extends ho{addExtra(e,r,s,i=!0){if(!e)return;let{extra:a}=e;a==null&&(a={},e.extra=a),i?a[r]=s:Object.defineProperty(a,r,{enumerable:i,value:s})}isContextual(e){return this.state.type===e&&!this.state.containsEsc}isUnparsedContextual(e,r){const s=e+r.length;if(this.input.slice(e,s)===r){const i=this.input.charCodeAt(s);return!(Ye(i)||(i&64512)===55296)}return!1}isLookaheadContextual(e){const r=this.nextTokenStart();return this.isUnparsedContextual(r,e)}eatContextual(e){return this.isContextual(e)?(this.next(),!0):!1}expectContextual(e,r){if(!this.eatContextual(e)){if(r!=null)throw this.raise(r,this.state.startLoc);this.unexpected(null,e)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return Xs(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return Xs(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(e=!0){(e?this.isLineTerminator():this.eat(13))||this.raise(x.MissingSemicolon,this.state.lastTokEndLoc)}expect(e,r){this.eat(e)||this.unexpected(r,e)}tryParse(e,r=this.state.clone()){const s={node:null};try{const i=e((a=null)=>{throw s.node=a,s});if(this.state.errors.length>r.errors.length){const a=this.state;return this.state=r,this.state.tokensLength=a.tokensLength,{node:i,error:a.errors[r.errors.length],thrown:!1,aborted:!1,failState:a}}return{node:i,error:null,thrown:!1,aborted:!1,failState:null}}catch(i){const a=this.state;if(this.state=r,i instanceof SyntaxError)return{node:null,error:i,thrown:!0,aborted:!1,failState:a};if(i===s)return{node:s.node,error:null,thrown:!1,aborted:!0,failState:a};throw i}}checkExpressionErrors(e,r){if(!e)return!1;const{shorthandAssignLoc:s,doubleProtoLoc:i,privateKeyLoc:a,optionalParametersLoc:n}=e,o=!!s||!!i||!!n||!!a;if(!r)return o;s!=null&&this.raise(x.InvalidCoverInitializedName,s),i!=null&&this.raise(x.DuplicateProto,i),a!=null&&this.raise(x.UnexpectedPrivateField,a),n!=null&&this.unexpected(n)}isLiteralPropertyName(){return ji(this.state.type)}isPrivateName(e){return e.type==="PrivateName"}getPrivateNameSV(e){return e.id.name}hasPropertyAsPrivateName(e){return(e.type==="MemberExpression"||e.type==="OptionalMemberExpression")&&this.isPrivateName(e.property)}isObjectProperty(e){return e.type==="ObjectProperty"}isObjectMethod(e){return e.type==="ObjectMethod"}initializeScopes(e=this.options.sourceType==="module"){const r=this.state.labels;this.state.labels=[];const s=this.exportedIdentifiers;this.exportedIdentifiers=new Set;const i=this.inModule;this.inModule=e;const a=this.scope,n=this.getScopeHandler();this.scope=new n(this,e);const o=this.prodParam;this.prodParam=new Eo;const u=this.classScope;this.classScope=new mo(this);const p=this.expressionScope;return this.expressionScope=new To(this),()=>{this.state.labels=r,this.exportedIdentifiers=s,this.inModule=i,this.scope=a,this.prodParam=o,this.classScope=u,this.expressionScope=p}}enterInitialScopes(){let e=0;this.inModule&&(e|=2),this.scope.enter(1),this.prodParam.enter(e)}checkDestructuringPrivate(e){const{privateKeyLoc:r}=e;r!==null&&this.expectPlugin("destructuringPrivate",r)}}class kt{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}}class Rt{constructor(e,r,s){this.type="",this.start=r,this.end=0,this.loc=new Bt(s),(e==null?void 0:e.optionFlags)&64&&(this.range=[r,0]),e!=null&&e.filename&&(this.loc.filename=e.filename)}}const Qr=Rt.prototype;Qr.__clone=function(){const t=new Rt(void 0,this.start,this.loc.start),e=Object.keys(this);for(let r=0,s=e.length;r<s;r++){const i=e[r];i!=="leadingComments"&&i!=="trailingComments"&&i!=="innerComments"&&(t[i]=this[i])}return t};function go(t){return Pe(t)}function Pe(t){const{type:e,start:r,end:s,loc:i,range:a,extra:n,name:o}=t,u=Object.create(Qr);return u.type=e,u.start=r,u.end=s,u.loc=i,u.range=a,u.extra=n,u.name=o,e==="Placeholder"&&(u.expectedNode=t.expectedNode),u}function Ao(t){const{type:e,start:r,end:s,loc:i,range:a,extra:n}=t;if(e==="Placeholder")return go(t);const o=Object.create(Qr);return o.type=e,o.start=r,o.end=s,o.loc=i,o.range=a,t.raw!==void 0?o.raw=t.raw:o.extra=n,o.value=t.value,o}class Io extends Po{startNode(){const e=this.state.startLoc;return new Rt(this,e.index,e)}startNodeAt(e){return new Rt(this,e.index,e)}startNodeAtNode(e){return this.startNodeAt(e.loc.start)}finishNode(e,r){return this.finishNodeAt(e,r,this.state.lastTokEndLoc)}finishNodeAt(e,r,s){return e.type=r,e.end=s.index,e.loc.end=s,this.optionFlags&64&&(e.range[1]=s.index),this.optionFlags&2048&&this.processComment(e),e}resetStartLocation(e,r){e.start=r.index,e.loc.start=r,this.optionFlags&64&&(e.range[0]=r.index)}resetEndLocation(e,r=this.state.lastTokEndLoc){e.end=r.index,e.loc.end=r,this.optionFlags&64&&(e.range[1]=r.index)}resetStartLocationFromNode(e,r){this.resetStartLocation(e,r.loc.start)}}const vo=new Set(["_","any","bool","boolean","empty","extends","false","interface","mixed","null","number","static","string","true","typeof","void"]),B=Ee`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:t})=>`Cannot overwrite reserved type ${t}.`,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:t,enumName:e})=>`Boolean enum members need to be initialized. Use either \`${t} = true,\` or \`${t} = false,\` in enum \`${e}\`.`,EnumDuplicateMemberName:({memberName:t,enumName:e})=>`Enum member names need to be unique, but the name \`${t}\` has already been used before in enum \`${e}\`.`,EnumInconsistentMemberValues:({enumName:t})=>`Enum \`${t}\` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.`,EnumInvalidExplicitType:({invalidEnumType:t,enumName:e})=>`Enum type \`${t}\` is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${e}\`.`,EnumInvalidExplicitTypeUnknownSupplied:({enumName:t})=>`Supplied enum type is not valid. Use one of \`boolean\`, \`number\`, \`string\`, or \`symbol\` in enum \`${t}\`.`,EnumInvalidMemberInitializerPrimaryType:({enumName:t,memberName:e,explicitType:r})=>`Enum \`${t}\` has type \`${r}\`, so the initializer of \`${e}\` needs to be a ${r} literal.`,EnumInvalidMemberInitializerSymbolType:({enumName:t,memberName:e})=>`Symbol enum members cannot be initialized. Use \`${e},\` in enum \`${t}\`.`,EnumInvalidMemberInitializerUnknownType:({enumName:t,memberName:e})=>`The enum member initializer for \`${e}\` needs to be a literal (either a boolean, number, or string) in enum \`${t}\`.`,EnumInvalidMemberName:({enumName:t,memberName:e,suggestion:r})=>`Enum member names cannot start with lowercase 'a' through 'z'. Instead of using \`${e}\`, consider using \`${r}\`, in enum \`${t}\`.`,EnumNumberMemberNotInitialized:({enumName:t,memberName:e})=>`Number enum members need to be initialized, e.g. \`${e} = 1\` in enum \`${t}\`.`,EnumStringMemberInconsistentlyInitialized:({enumName:t})=>`String enum members need to consistently either all use initializers, or use no initializers, in enum \`${t}\`.`,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:t})=>`Unexpected reserved type ${t}.`,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:t,suggestion:e})=>`\`declare export ${t}\` is not supported. Use \`${e}\` instead.`,UnsupportedStatementInDeclareModule:"Only declares and type imports are allowed inside declare module.",UnterminatedFlowComment:"Unterminated flow-comment."});function Co(t){return t.type==="DeclareExportAllDeclaration"||t.type==="DeclareExportDeclaration"&&(!t.declaration||t.declaration.type!=="TypeAlias"&&t.declaration.type!=="InterfaceDeclaration")}function Ws(t){return t.importKind==="type"||t.importKind==="typeof"}const No={const:"declare export var",let:"declare export var",type:"export type",interface:"export interface"};function wo(t,e){const r=[],s=[];for(let i=0;i<t.length;i++)(e(t[i],i,t)?r:s).push(t[i]);return[r,s]}const Oo=/\*?\s*@((?:no)?flow)\b/;var Do=t=>class extends t{constructor(...r){super(...r),this.flowPragma=void 0}getScopeHandler(){return so}shouldParseTypes(){return this.getPluginOption("flow","all")||this.flowPragma==="flow"}finishToken(r,s){r!==134&&r!==13&&r!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(r,s)}addComment(r){if(this.flowPragma===void 0){const s=Oo.exec(r.value);if(s)if(s[1]==="flow")this.flowPragma="flow";else if(s[1]==="noflow")this.flowPragma="noflow";else throw new Error("Unexpected flow pragma")}super.addComment(r)}flowParseTypeInitialiser(r){const s=this.state.inType;this.state.inType=!0,this.expect(r||14);const i=this.flowParseType();return this.state.inType=s,i}flowParsePredicate(){const r=this.startNode(),s=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>s.index+1&&this.raise(B.UnexpectedSpaceBetweenModuloChecks,s),this.eat(10)?(r.value=super.parseExpression(),this.expect(11),this.finishNode(r,"DeclaredPredicate")):this.finishNode(r,"InferredPredicate")}flowParseTypeAndPredicateInitialiser(){const r=this.state.inType;this.state.inType=!0,this.expect(14);let s=null,i=null;return this.match(54)?(this.state.inType=r,i=this.flowParsePredicate()):(s=this.flowParseType(),this.state.inType=r,this.match(54)&&(i=this.flowParsePredicate())),[s,i]}flowParseDeclareClass(r){return this.next(),this.flowParseInterfaceish(r,!0),this.finishNode(r,"DeclareClass")}flowParseDeclareFunction(r){this.next();const s=r.id=this.parseIdentifier(),i=this.startNode(),a=this.startNode();this.match(47)?i.typeParameters=this.flowParseTypeParameterDeclaration():i.typeParameters=null,this.expect(10);const n=this.flowParseFunctionTypeParams();return i.params=n.params,i.rest=n.rest,i.this=n._this,this.expect(11),[i.returnType,r.predicate]=this.flowParseTypeAndPredicateInitialiser(),a.typeAnnotation=this.finishNode(i,"FunctionTypeAnnotation"),s.typeAnnotation=this.finishNode(a,"TypeAnnotation"),this.resetEndLocation(s),this.semicolon(),this.scope.declareName(r.id.name,2048,r.id.loc.start),this.finishNode(r,"DeclareFunction")}flowParseDeclare(r,s){if(this.match(80))return this.flowParseDeclareClass(r);if(this.match(68))return this.flowParseDeclareFunction(r);if(this.match(74))return this.flowParseDeclareVariable(r);if(this.eatContextual(127))return this.match(16)?this.flowParseDeclareModuleExports(r):(s&&this.raise(B.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(r));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(r);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(r);if(this.isContextual(129))return this.flowParseDeclareInterface(r);if(this.match(82))return this.flowParseDeclareExportDeclaration(r,s);this.unexpected()}flowParseDeclareVariable(r){return this.next(),r.id=this.flowParseTypeAnnotatableIdentifier(!0),this.scope.declareName(r.id.name,5,r.id.loc.start),this.semicolon(),this.finishNode(r,"DeclareVariable")}flowParseDeclareModule(r){this.scope.enter(0),this.match(134)?r.id=super.parseExprAtom():r.id=this.parseIdentifier();const s=r.body=this.startNode(),i=s.body=[];for(this.expect(5);!this.match(8);){let o=this.startNode();this.match(83)?(this.next(),!this.isContextual(130)&&!this.match(87)&&this.raise(B.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(o)):(this.expectContextual(125,B.UnsupportedStatementInDeclareModule),o=this.flowParseDeclare(o,!0)),i.push(o)}this.scope.exit(),this.expect(8),this.finishNode(s,"BlockStatement");let a=null,n=!1;return i.forEach(o=>{Co(o)?(a==="CommonJS"&&this.raise(B.AmbiguousDeclareModuleKind,o),a="ES"):o.type==="DeclareModuleExports"&&(n&&this.raise(B.DuplicateDeclareModuleExports,o),a==="ES"&&this.raise(B.AmbiguousDeclareModuleKind,o),a="CommonJS",n=!0)}),r.kind=a||"CommonJS",this.finishNode(r,"DeclareModule")}flowParseDeclareExportDeclaration(r,s){if(this.expect(82),this.eat(65))return this.match(68)||this.match(80)?r.declaration=this.flowParseDeclare(this.startNode()):(r.declaration=this.flowParseType(),this.semicolon()),r.default=!0,this.finishNode(r,"DeclareExportDeclaration");if(this.match(75)||this.isLet()||(this.isContextual(130)||this.isContextual(129))&&!s){const i=this.state.value;throw this.raise(B.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:i,suggestion:No[i]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return r.declaration=this.flowParseDeclare(this.startNode()),r.default=!1,this.finishNode(r,"DeclareExportDeclaration");if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return r=this.parseExport(r,null),r.type==="ExportNamedDeclaration"&&(r.type="ExportDeclaration",r.default=!1,delete r.exportKind),r.type="Declare"+r.type,r;this.unexpected()}flowParseDeclareModuleExports(r){return this.next(),this.expectContextual(111),r.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(r,"DeclareModuleExports")}flowParseDeclareTypeAlias(r){this.next();const s=this.flowParseTypeAlias(r);return s.type="DeclareTypeAlias",s}flowParseDeclareOpaqueType(r){this.next();const s=this.flowParseOpaqueType(r,!0);return s.type="DeclareOpaqueType",s}flowParseDeclareInterface(r){return this.next(),this.flowParseInterfaceish(r,!1),this.finishNode(r,"DeclareInterface")}flowParseInterfaceish(r,s){if(r.id=this.flowParseRestrictedIdentifier(!s,!0),this.scope.declareName(r.id.name,s?17:8201,r.id.loc.start),this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,r.extends=[],this.eat(81))do r.extends.push(this.flowParseInterfaceExtends());while(!s&&this.eat(12));if(s){if(r.implements=[],r.mixins=[],this.eatContextual(117))do r.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))do r.implements.push(this.flowParseInterfaceExtends());while(this.eat(12))}r.body=this.flowParseObjectType({allowStatic:s,allowExact:!1,allowSpread:!1,allowProto:s,allowInexact:!1})}flowParseInterfaceExtends(){const r=this.startNode();return r.id=this.flowParseQualifiedTypeIdentifier(),this.match(47)?r.typeParameters=this.flowParseTypeParameterInstantiation():r.typeParameters=null,this.finishNode(r,"InterfaceExtends")}flowParseInterface(r){return this.flowParseInterfaceish(r,!1),this.finishNode(r,"InterfaceDeclaration")}checkNotUnderscore(r){r==="_"&&this.raise(B.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(r,s,i){vo.has(r)&&this.raise(i?B.AssignReservedType:B.UnexpectedReservedType,s,{reservedType:r})}flowParseRestrictedIdentifier(r,s){return this.checkReservedType(this.state.value,this.state.startLoc,s),this.parseIdentifier(r)}flowParseTypeAlias(r){return r.id=this.flowParseRestrictedIdentifier(!1,!0),this.scope.declareName(r.id.name,8201,r.id.loc.start),this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,r.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(r,"TypeAlias")}flowParseOpaqueType(r,s){return this.expectContextual(130),r.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(r.id.name,8201,r.id.loc.start),this.match(47)?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,r.supertype=null,this.match(14)&&(r.supertype=this.flowParseTypeInitialiser(14)),r.impltype=null,s||(r.impltype=this.flowParseTypeInitialiser(29)),this.semicolon(),this.finishNode(r,"OpaqueType")}flowParseTypeParameter(r=!1){const s=this.state.startLoc,i=this.startNode(),a=this.flowParseVariance(),n=this.flowParseTypeAnnotatableIdentifier();return i.name=n.name,i.variance=a,i.bound=n.typeAnnotation,this.match(29)?(this.eat(29),i.default=this.flowParseType()):r&&this.raise(B.MissingTypeParamDefault,s),this.finishNode(i,"TypeParameter")}flowParseTypeParameterDeclaration(){const r=this.state.inType,s=this.startNode();s.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let i=!1;do{const a=this.flowParseTypeParameter(i);s.params.push(a),a.default&&(i=!0),this.match(48)||this.expect(12)}while(!this.match(48));return this.expect(48),this.state.inType=r,this.finishNode(s,"TypeParameterDeclaration")}flowInTopLevelContext(r){if(this.curContext()!==W.brace){const s=this.state.context;this.state.context=[s[0]];try{return r()}finally{this.state.context=s}}else return r()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){const r=this.startNode(),s=this.state.inType;return this.state.inType=!0,r.params=[],this.flowInTopLevelContext(()=>{this.expect(47);const i=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)r.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=i}),this.state.inType=s,!this.state.inType&&this.curContext()===W.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(r,"TypeParameterInstantiation")}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;const r=this.startNode(),s=this.state.inType;for(r.params=[],this.state.inType=!0,this.expect(47);!this.match(48);)r.params.push(this.flowParseTypeOrImplicitInstantiation()),this.match(48)||this.expect(12);return this.expect(48),this.state.inType=s,this.finishNode(r,"TypeParameterInstantiation")}flowParseInterfaceType(){const r=this.startNode();if(this.expectContextual(129),r.extends=[],this.eat(81))do r.extends.push(this.flowParseInterfaceExtends());while(this.eat(12));return r.body=this.flowParseObjectType({allowStatic:!1,allowExact:!1,allowSpread:!1,allowProto:!1,allowInexact:!1}),this.finishNode(r,"InterfaceTypeAnnotation")}flowParseObjectPropertyKey(){return this.match(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(r,s,i){return r.static=s,this.lookahead().type===14?(r.id=this.flowParseObjectPropertyKey(),r.key=this.flowParseTypeInitialiser()):(r.id=null,r.key=this.flowParseType()),this.expect(3),r.value=this.flowParseTypeInitialiser(),r.variance=i,this.finishNode(r,"ObjectTypeIndexer")}flowParseObjectTypeInternalSlot(r,s){return r.static=s,r.id=this.flowParseObjectPropertyKey(),this.expect(3),this.expect(3),this.match(47)||this.match(10)?(r.method=!0,r.optional=!1,r.value=this.flowParseObjectTypeMethodish(this.startNodeAt(r.loc.start))):(r.method=!1,this.eat(17)&&(r.optional=!0),r.value=this.flowParseTypeInitialiser()),this.finishNode(r,"ObjectTypeInternalSlot")}flowParseObjectTypeMethodish(r){for(r.params=[],r.rest=null,r.typeParameters=null,r.this=null,this.match(47)&&(r.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(10),this.match(78)&&(r.this=this.flowParseFunctionTypeParam(!0),r.this.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)r.params.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(r.rest=this.flowParseFunctionTypeParam(!1)),this.expect(11),r.returnType=this.flowParseTypeInitialiser(),this.finishNode(r,"FunctionTypeAnnotation")}flowParseObjectTypeCallProperty(r,s){const i=this.startNode();return r.static=s,r.value=this.flowParseObjectTypeMethodish(i),this.finishNode(r,"ObjectTypeCallProperty")}flowParseObjectType({allowStatic:r,allowExact:s,allowSpread:i,allowProto:a,allowInexact:n}){const o=this.state.inType;this.state.inType=!0;const u=this.startNode();u.callProperties=[],u.properties=[],u.indexers=[],u.internalSlots=[];let p,h,E=!1;for(s&&this.match(6)?(this.expect(6),p=9,h=!0):(this.expect(5),p=8,h=!1),u.exact=h;!this.match(p);){let A=!1,w=null,P=null;const v=this.startNode();if(a&&this.isContextual(118)){const C=this.lookahead();C.type!==14&&C.type!==17&&(this.next(),w=this.state.startLoc,r=!1)}if(r&&this.isContextual(106)){const C=this.lookahead();C.type!==14&&C.type!==17&&(this.next(),A=!0)}const g=this.flowParseVariance();if(this.eat(0))w!=null&&this.unexpected(w),this.eat(0)?(g&&this.unexpected(g.loc.start),u.internalSlots.push(this.flowParseObjectTypeInternalSlot(v,A))):u.indexers.push(this.flowParseObjectTypeIndexer(v,A,g));else if(this.match(10)||this.match(47))w!=null&&this.unexpected(w),g&&this.unexpected(g.loc.start),u.callProperties.push(this.flowParseObjectTypeCallProperty(v,A));else{let C="init";if(this.isContextual(99)||this.isContextual(104)){const R=this.lookahead();ji(R.type)&&(C=this.state.value,this.next())}const k=this.flowParseObjectTypeProperty(v,A,w,g,C,i,n??!h);k===null?(E=!0,P=this.state.lastTokStartLoc):u.properties.push(k)}this.flowObjectTypeSemicolon(),P&&!this.match(8)&&!this.match(9)&&this.raise(B.UnexpectedExplicitInexactInObject,P)}this.expect(p),i&&(u.inexact=E);const I=this.finishNode(u,"ObjectTypeAnnotation");return this.state.inType=o,I}flowParseObjectTypeProperty(r,s,i,a,n,o,u){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(o?u||this.raise(B.InexactInsideExact,this.state.lastTokStartLoc):this.raise(B.InexactInsideNonObject,this.state.lastTokStartLoc),a&&this.raise(B.InexactVariance,a),null):(o||this.raise(B.UnexpectedSpreadType,this.state.lastTokStartLoc),i!=null&&this.unexpected(i),a&&this.raise(B.SpreadVariance,a),r.argument=this.flowParseType(),this.finishNode(r,"ObjectTypeSpreadProperty"));{r.key=this.flowParseObjectPropertyKey(),r.static=s,r.proto=i!=null,r.kind=n;let p=!1;return this.match(47)||this.match(10)?(r.method=!0,i!=null&&this.unexpected(i),a&&this.unexpected(a.loc.start),r.value=this.flowParseObjectTypeMethodish(this.startNodeAt(r.loc.start)),(n==="get"||n==="set")&&this.flowCheckGetterSetterParams(r),!o&&r.key.name==="constructor"&&r.value.this&&this.raise(B.ThisParamBannedInConstructor,r.value.this)):(n!=="init"&&this.unexpected(),r.method=!1,this.eat(17)&&(p=!0),r.value=this.flowParseTypeInitialiser(),r.variance=a),r.optional=p,this.finishNode(r,"ObjectTypeProperty")}}flowCheckGetterSetterParams(r){const s=r.kind==="get"?0:1,i=r.value.params.length+(r.value.rest?1:0);r.value.this&&this.raise(r.kind==="get"?B.GetterMayNotHaveThisParam:B.SetterMayNotHaveThisParam,r.value.this),i!==s&&this.raise(r.kind==="get"?x.BadGetterArity:x.BadSetterArity,r),r.kind==="set"&&r.value.rest&&this.raise(x.BadSetterRestParameter,r)}flowObjectTypeSemicolon(){!this.eat(13)&&!this.eat(12)&&!this.match(8)&&!this.match(9)&&this.unexpected()}flowParseQualifiedTypeIdentifier(r,s){var i;(i=r)!=null||(r=this.state.startLoc);let a=s||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){const n=this.startNodeAt(r);n.qualification=a,n.id=this.flowParseRestrictedIdentifier(!0),a=this.finishNode(n,"QualifiedTypeIdentifier")}return a}flowParseGenericType(r,s){const i=this.startNodeAt(r);return i.typeParameters=null,i.id=this.flowParseQualifiedTypeIdentifier(r,s),this.match(47)&&(i.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(i,"GenericTypeAnnotation")}flowParseTypeofType(){const r=this.startNode();return this.expect(87),r.argument=this.flowParsePrimaryType(),this.finishNode(r,"TypeofTypeAnnotation")}flowParseTupleType(){const r=this.startNode();for(r.types=[],this.expect(0);this.state.pos<this.length&&!this.match(3)&&(r.types.push(this.flowParseType()),!this.match(3));)this.expect(12);return this.expect(3),this.finishNode(r,"TupleTypeAnnotation")}flowParseFunctionTypeParam(r){let s=null,i=!1,a=null;const n=this.startNode(),o=this.lookahead(),u=this.state.type===78;return o.type===14||o.type===17?(u&&!r&&this.raise(B.ThisParamMustBeFirst,n),s=this.parseIdentifier(u),this.eat(17)&&(i=!0,u&&this.raise(B.ThisParamMayNotBeOptional,n)),a=this.flowParseTypeInitialiser()):a=this.flowParseType(),n.name=s,n.optional=i,n.typeAnnotation=a,this.finishNode(n,"FunctionTypeParam")}reinterpretTypeAsFunctionTypeParam(r){const s=this.startNodeAt(r.loc.start);return s.name=null,s.optional=!1,s.typeAnnotation=r,this.finishNode(s,"FunctionTypeParam")}flowParseFunctionTypeParams(r=[]){let s=null,i=null;for(this.match(78)&&(i=this.flowParseFunctionTypeParam(!0),i.name=null,this.match(11)||this.expect(12));!this.match(11)&&!this.match(21);)r.push(this.flowParseFunctionTypeParam(!1)),this.match(11)||this.expect(12);return this.eat(21)&&(s=this.flowParseFunctionTypeParam(!1)),{params:r,rest:s,_this:i}}flowIdentToTypeAnnotation(r,s,i){switch(i.name){case"any":return this.finishNode(s,"AnyTypeAnnotation");case"bool":case"boolean":return this.finishNode(s,"BooleanTypeAnnotation");case"mixed":return this.finishNode(s,"MixedTypeAnnotation");case"empty":return this.finishNode(s,"EmptyTypeAnnotation");case"number":return this.finishNode(s,"NumberTypeAnnotation");case"string":return this.finishNode(s,"StringTypeAnnotation");case"symbol":return this.finishNode(s,"SymbolTypeAnnotation");default:return this.checkNotUnderscore(i.name),this.flowParseGenericType(r,i)}}flowParsePrimaryType(){const r=this.state.startLoc,s=this.startNode();let i,a,n=!1;const o=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=o,a;case 47:{const u=this.startNode();return u.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),i=this.flowParseFunctionTypeParams(),u.params=i.params,u.rest=i.rest,u.this=i._this,this.expect(11),this.expect(19),u.returnType=this.flowParseType(),this.finishNode(u,"FunctionTypeAnnotation")}case 10:{const u=this.startNode();if(this.next(),!this.match(11)&&!this.match(21))if(H(this.state.type)||this.match(78)){const p=this.lookahead().type;n=p!==17&&p!==14}else n=!0;if(n){if(this.state.noAnonFunctionType=!1,a=this.flowParseType(),this.state.noAnonFunctionType=o,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),a;this.eat(12)}return a?i=this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(a)]):i=this.flowParseFunctionTypeParams(),u.params=i.params,u.rest=i.rest,u.this=i._this,this.expect(11),this.expect(19),u.returnType=this.flowParseType(),u.typeParameters=null,this.finishNode(u,"FunctionTypeAnnotation")}case 134:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case 85:case 86:return s.value=this.match(85),this.next(),this.finishNode(s,"BooleanLiteralTypeAnnotation");case 53:if(this.state.value==="-"){if(this.next(),this.match(135))return this.parseLiteralAtNode(-this.state.value,"NumberLiteralTypeAnnotation",s);if(this.match(136))return this.parseLiteralAtNode(-this.state.value,"BigIntLiteralTypeAnnotation",s);throw this.raise(B.UnexpectedSubtractionOperand,this.state.startLoc)}this.unexpected();return;case 135:return this.parseLiteral(this.state.value,"NumberLiteralTypeAnnotation");case 136:return this.parseLiteral(this.state.value,"BigIntLiteralTypeAnnotation");case 88:return this.next(),this.finishNode(s,"VoidTypeAnnotation");case 84:return this.next(),this.finishNode(s,"NullLiteralTypeAnnotation");case 78:return this.next(),this.finishNode(s,"ThisTypeAnnotation");case 55:return this.next(),this.finishNode(s,"ExistsTypeAnnotation");case 87:return this.flowParseTypeofType();default:if(Jr(this.state.type)){const u=Oe(this.state.type);return this.next(),super.createIdentifier(s,u)}else if(H(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(r,s,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){const r=this.state.startLoc;let s=this.flowParsePrimaryType(),i=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){const a=this.startNodeAt(r),n=this.eat(18);i=i||n,this.expect(0),!n&&this.match(3)?(a.elementType=s,this.next(),s=this.finishNode(a,"ArrayTypeAnnotation")):(a.objectType=s,a.indexType=this.flowParseType(),this.expect(3),i?(a.optional=n,s=this.finishNode(a,"OptionalIndexedAccessType")):s=this.finishNode(a,"IndexedAccessType"))}return s}flowParsePrefixType(){const r=this.startNode();return this.eat(17)?(r.typeAnnotation=this.flowParsePrefixType(),this.finishNode(r,"NullableTypeAnnotation")):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){const r=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){const s=this.startNodeAt(r.loc.start);return s.params=[this.reinterpretTypeAsFunctionTypeParam(r)],s.rest=null,s.this=null,s.returnType=this.flowParseType(),s.typeParameters=null,this.finishNode(s,"FunctionTypeAnnotation")}return r}flowParseIntersectionType(){const r=this.startNode();this.eat(45);const s=this.flowParseAnonFunctionWithoutParens();for(r.types=[s];this.eat(45);)r.types.push(this.flowParseAnonFunctionWithoutParens());return r.types.length===1?s:this.finishNode(r,"IntersectionTypeAnnotation")}flowParseUnionType(){const r=this.startNode();this.eat(43);const s=this.flowParseIntersectionType();for(r.types=[s];this.eat(43);)r.types.push(this.flowParseIntersectionType());return r.types.length===1?s:this.finishNode(r,"UnionTypeAnnotation")}flowParseType(){const r=this.state.inType;this.state.inType=!0;const s=this.flowParseUnionType();return this.state.inType=r,s}flowParseTypeOrImplicitInstantiation(){if(this.state.type===132&&this.state.value==="_"){const r=this.state.startLoc,s=this.parseIdentifier();return this.flowParseGenericType(r,s)}else return this.flowParseType()}flowParseTypeAnnotation(){const r=this.startNode();return r.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(r,"TypeAnnotation")}flowParseTypeAnnotatableIdentifier(r){const s=r?this.parseIdentifier():this.flowParseRestrictedIdentifier();return this.match(14)&&(s.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(s)),s}typeCastToParameter(r){return r.expression.typeAnnotation=r.typeAnnotation,this.resetEndLocation(r.expression,r.typeAnnotation.loc.end),r.expression}flowParseVariance(){let r=null;return this.match(53)?(r=this.startNode(),this.state.value==="+"?r.kind="plus":r.kind="minus",this.next(),this.finishNode(r,"Variance")):r}parseFunctionBody(r,s,i=!1){if(s){this.forwardNoArrowParamsConversionAt(r,()=>super.parseFunctionBody(r,!0,i));return}super.parseFunctionBody(r,!1,i)}parseFunctionBodyAndFinish(r,s,i=!1){if(this.match(14)){const a=this.startNode();[a.typeAnnotation,r.predicate]=this.flowParseTypeAndPredicateInitialiser(),r.returnType=a.typeAnnotation?this.finishNode(a,"TypeAnnotation"):null}return super.parseFunctionBodyAndFinish(r,s,i)}parseStatementLike(r){if(this.state.strict&&this.isContextual(129)){const i=this.lookahead();if(fe(i.type)){const a=this.startNode();return this.next(),this.flowParseInterface(a)}}else if(this.isContextual(126)){const i=this.startNode();return this.next(),this.flowParseEnumDeclaration(i)}const s=super.parseStatementLike(r);return this.flowPragma===void 0&&!this.isValidDirective(s)&&(this.flowPragma=null),s}parseExpressionStatement(r,s,i){if(s.type==="Identifier"){if(s.name==="declare"){if(this.match(80)||H(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(r)}else if(H(this.state.type)){if(s.name==="interface")return this.flowParseInterface(r);if(s.name==="type")return this.flowParseTypeAlias(r);if(s.name==="opaque")return this.flowParseOpaqueType(r,!1)}}return super.parseExpressionStatement(r,s,i)}shouldParseExportDeclaration(){const{type:r}=this.state;return r===126||Ys(r)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){const{type:r}=this.state;return r===126||Ys(r)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){const r=this.startNode();return this.next(),this.flowParseEnumDeclaration(r)}return super.parseExportDefaultExpression()}parseConditional(r,s,i){if(!this.match(17))return r;if(this.state.maybeInArrowParameters){const I=this.lookaheadCharCode();if(I===44||I===61||I===58||I===41)return this.setOptionalParametersError(i),r}this.expect(17);const a=this.state.clone(),n=this.state.noArrowAt,o=this.startNodeAt(s);let{consequent:u,failed:p}=this.tryParseConditionalConsequent(),[h,E]=this.getArrowLikeExpressions(u);if(p||E.length>0){const I=[...n];if(E.length>0){this.state=a,this.state.noArrowAt=I;for(let A=0;A<E.length;A++)I.push(E[A].start);({consequent:u,failed:p}=this.tryParseConditionalConsequent()),[h,E]=this.getArrowLikeExpressions(u)}p&&h.length>1&&this.raise(B.AmbiguousConditionalArrow,a.startLoc),p&&h.length===1&&(this.state=a,I.push(h[0].start),this.state.noArrowAt=I,{consequent:u,failed:p}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(u,!0),this.state.noArrowAt=n,this.expect(14),o.test=r,o.consequent=u,o.alternate=this.forwardNoArrowParamsConversionAt(o,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(o,"ConditionalExpression")}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);const r=this.parseMaybeAssignAllowIn(),s=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:r,failed:s}}getArrowLikeExpressions(r,s){const i=[r],a=[];for(;i.length!==0;){const n=i.pop();n.type==="ArrowFunctionExpression"&&n.body.type!=="BlockStatement"?(n.typeParameters||!n.returnType?this.finishArrowValidation(n):a.push(n),i.push(n.body)):n.type==="ConditionalExpression"&&(i.push(n.consequent),i.push(n.alternate))}return s?(a.forEach(n=>this.finishArrowValidation(n)),[a,[]]):wo(a,n=>n.params.every(o=>this.isAssignable(o,!0)))}finishArrowValidation(r){var s;this.toAssignableList(r.params,(s=r.extra)==null?void 0:s.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(r,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(r,s){let i;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(r.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),i=s(),this.state.noArrowParamsConversionAt.pop()):i=s(),i}parseParenItem(r,s){const i=super.parseParenItem(r,s);if(this.eat(17)&&(i.optional=!0,this.resetEndLocation(r)),this.match(14)){const a=this.startNodeAt(s);return a.expression=i,a.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(a,"TypeCastExpression")}return i}assertModuleNodeAllowed(r){r.type==="ImportDeclaration"&&(r.importKind==="type"||r.importKind==="typeof")||r.type==="ExportNamedDeclaration"&&r.exportKind==="type"||r.type==="ExportAllDeclaration"&&r.exportKind==="type"||super.assertModuleNodeAllowed(r)}parseExportDeclaration(r){if(this.isContextual(130)){r.exportKind="type";const s=this.startNode();return this.next(),this.match(5)?(r.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(r),null):this.flowParseTypeAlias(s)}else if(this.isContextual(131)){r.exportKind="type";const s=this.startNode();return this.next(),this.flowParseOpaqueType(s,!1)}else if(this.isContextual(129)){r.exportKind="type";const s=this.startNode();return this.next(),this.flowParseInterface(s)}else if(this.isContextual(126)){r.exportKind="value";const s=this.startNode();return this.next(),this.flowParseEnumDeclaration(s)}else return super.parseExportDeclaration(r)}eatExportStar(r){return super.eatExportStar(r)?!0:this.isContextual(130)&&this.lookahead().type===55?(r.exportKind="type",this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(r){const{startLoc:s}=this.state,i=super.maybeParseExportNamespaceSpecifier(r);return i&&r.exportKind==="type"&&this.unexpected(s),i}parseClassId(r,s,i){super.parseClassId(r,s,i),this.match(47)&&(r.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(r,s,i){const{startLoc:a}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(r,s))return;s.declare=!0}super.parseClassMember(r,s,i),s.declare&&(s.type!=="ClassProperty"&&s.type!=="ClassPrivateProperty"&&s.type!=="PropertyDefinition"?this.raise(B.DeclareClassElement,a):s.value&&this.raise(B.DeclareClassFieldInitializer,s.value))}isIterator(r){return r==="iterator"||r==="asyncIterator"}readIterator(){const r=super.readWord1(),s="@@"+r;(!this.isIterator(r)||!this.state.inType)&&this.raise(x.InvalidIdentifier,this.state.curPosition(),{identifierName:s}),this.finishToken(132,s)}getTokenFromCode(r){const s=this.input.charCodeAt(this.state.pos+1);r===123&&s===124?this.finishOp(6,2):this.state.inType&&(r===62||r===60)?this.finishOp(r===62?48:47,1):this.state.inType&&r===63?s===46?this.finishOp(18,2):this.finishOp(17,1):Zn(r,s,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(r)}isAssignable(r,s){return r.type==="TypeCastExpression"?this.isAssignable(r.expression,s):super.isAssignable(r,s)}toAssignable(r,s=!1){!s&&r.type==="AssignmentExpression"&&r.left.type==="TypeCastExpression"&&(r.left=this.typeCastToParameter(r.left)),super.toAssignable(r,s)}toAssignableList(r,s,i){for(let a=0;a<r.length;a++){const n=r[a];(n==null?void 0:n.type)==="TypeCastExpression"&&(r[a]=this.typeCastToParameter(n))}super.toAssignableList(r,s,i)}toReferencedList(r,s){for(let a=0;a<r.length;a++){var i;const n=r[a];n&&n.type==="TypeCastExpression"&&!((i=n.extra)!=null&&i.parenthesized)&&(r.length>1||!s)&&this.raise(B.TypeCastInPattern,n.typeAnnotation)}return r}parseArrayLike(r,s,i,a){const n=super.parseArrayLike(r,s,i,a);return s&&!this.state.maybeInArrowParameters&&this.toReferencedList(n.elements),n}isValidLVal(r,s,i){return r==="TypeCastExpression"||super.isValidLVal(r,s,i)}parseClassProperty(r){return this.match(14)&&(r.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassProperty(r)}parseClassPrivateProperty(r){return this.match(14)&&(r.typeAnnotation=this.flowParseTypeAnnotation()),super.parseClassPrivateProperty(r)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(14)||super.isClassProperty()}isNonstaticConstructor(r){return!this.match(14)&&super.isNonstaticConstructor(r)}pushClassMethod(r,s,i,a,n,o){if(s.variance&&this.unexpected(s.variance.loc.start),delete s.variance,this.match(47)&&(s.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassMethod(r,s,i,a,n,o),s.params&&n){const u=s.params;u.length>0&&this.isThisParam(u[0])&&this.raise(B.ThisParamBannedInConstructor,s)}else if(s.type==="MethodDefinition"&&n&&s.value.params){const u=s.value.params;u.length>0&&this.isThisParam(u[0])&&this.raise(B.ThisParamBannedInConstructor,s)}}pushClassPrivateMethod(r,s,i,a){s.variance&&this.unexpected(s.variance.loc.start),delete s.variance,this.match(47)&&(s.typeParameters=this.flowParseTypeParameterDeclaration()),super.pushClassPrivateMethod(r,s,i,a)}parseClassSuper(r){if(super.parseClassSuper(r),r.superClass&&(this.match(47)||this.match(51))&&(r.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();const s=r.implements=[];do{const i=this.startNode();i.id=this.flowParseRestrictedIdentifier(!0),this.match(47)?i.typeParameters=this.flowParseTypeParameterInstantiation():i.typeParameters=null,s.push(this.finishNode(i,"ClassImplements"))}while(this.eat(12))}}checkGetterSetterParams(r){super.checkGetterSetterParams(r);const s=this.getObjectOrClassMethodParams(r);if(s.length>0){const i=s[0];this.isThisParam(i)&&r.kind==="get"?this.raise(B.GetterMayNotHaveThisParam,i):this.isThisParam(i)&&this.raise(B.SetterMayNotHaveThisParam,i)}}parsePropertyNamePrefixOperator(r){r.variance=this.flowParseVariance()}parseObjPropValue(r,s,i,a,n,o,u){r.variance&&this.unexpected(r.variance.loc.start),delete r.variance;let p;this.match(47)&&!o&&(p=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());const h=super.parseObjPropValue(r,s,i,a,n,o,u);return p&&((h.value||h).typeParameters=p),h}parseFunctionParamType(r){return this.eat(17)&&(r.type!=="Identifier"&&this.raise(B.PatternIsOptional,r),this.isThisParam(r)&&this.raise(B.ThisParamMayNotBeOptional,r),r.optional=!0),this.match(14)?r.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(r)&&this.raise(B.ThisParamAnnotationRequired,r),this.match(29)&&this.isThisParam(r)&&this.raise(B.ThisParamNoDefault,r),this.resetEndLocation(r),r}parseMaybeDefault(r,s){const i=super.parseMaybeDefault(r,s);return i.type==="AssignmentPattern"&&i.typeAnnotation&&i.right.start<i.typeAnnotation.start&&this.raise(B.TypeBeforeInitializer,i.typeAnnotation),i}checkImportReflection(r){super.checkImportReflection(r),r.module&&r.importKind!=="value"&&this.raise(B.ImportReflectionHasImportType,r.specifiers[0].loc.start)}parseImportSpecifierLocal(r,s,i){s.local=Ws(r)?this.flowParseRestrictedIdentifier(!0,!0):this.parseIdentifier(),r.specifiers.push(this.finishImportSpecifier(s,i))}isPotentialImportPhase(r){if(super.isPotentialImportPhase(r))return!0;if(this.isContextual(130)){if(!r)return!0;const s=this.lookaheadCharCode();return s===123||s===42}return!r&&this.isContextual(87)}applyImportPhase(r,s,i,a){if(super.applyImportPhase(r,s,i,a),s){if(!i&&this.match(65))return;r.exportKind=i==="type"?i:"value"}else i==="type"&&this.match(55)&&this.unexpected(),r.importKind=i==="type"||i==="typeof"?i:"value"}parseImportSpecifier(r,s,i,a,n){const o=r.imported;let u=null;o.type==="Identifier"&&(o.name==="type"?u="type":o.name==="typeof"&&(u="typeof"));let p=!1;if(this.isContextual(93)&&!this.isLookaheadContextual("as")){const E=this.parseIdentifier(!0);u!==null&&!fe(this.state.type)?(r.imported=E,r.importKind=u,r.local=Pe(E)):(r.imported=o,r.importKind=null,r.local=this.parseIdentifier())}else{if(u!==null&&fe(this.state.type))r.imported=this.parseIdentifier(!0),r.importKind=u;else{if(s)throw this.raise(x.ImportBindingIsString,r,{importName:o.value});r.imported=o,r.importKind=null}this.eatContextual(93)?r.local=this.parseIdentifier():(p=!0,r.local=Pe(r.imported))}const h=Ws(r);return i&&h&&this.raise(B.ImportTypeShorthandOnlyInPureImport,r),(i||h)&&this.checkReservedType(r.local.name,r.local.loc.start,!0),p&&!i&&!h&&this.checkReservedWord(r.local.name,r.loc.start,!0,!0),this.finishImportSpecifier(r,"ImportSpecifier")}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseFunctionParams(r,s){const i=r.kind;i!=="get"&&i!=="set"&&this.match(47)&&(r.typeParameters=this.flowParseTypeParameterDeclaration()),super.parseFunctionParams(r,s)}parseVarId(r,s){super.parseVarId(r,s),this.match(14)&&(r.id.typeAnnotation=this.flowParseTypeAnnotation(),this.resetEndLocation(r.id))}parseAsyncArrowFromCallExpression(r,s){if(this.match(14)){const i=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0,r.returnType=this.flowParseTypeAnnotation(),this.state.noAnonFunctionType=i}return super.parseAsyncArrowFromCallExpression(r,s)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}parseMaybeAssign(r,s){var i;let a=null,n;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(a=this.state.clone(),n=this.tryParse(()=>super.parseMaybeAssign(r,s),a),!n.error)return n.node;const{context:p}=this.state,h=p[p.length-1];(h===W.j_oTag||h===W.j_expr)&&p.pop()}if((i=n)!=null&&i.error||this.match(47)){var o,u;a=a||this.state.clone();let p;const h=this.tryParse(I=>{var A;p=this.flowParseTypeParameterDeclaration();const w=this.forwardNoArrowParamsConversionAt(p,()=>{const v=super.parseMaybeAssign(r,s);return this.resetStartLocationFromNode(v,p),v});(A=w.extra)!=null&&A.parenthesized&&I();const P=this.maybeUnwrapTypeCastExpression(w);return P.type!=="ArrowFunctionExpression"&&I(),P.typeParameters=p,this.resetStartLocationFromNode(P,p),w},a);let E=null;if(h.node&&this.maybeUnwrapTypeCastExpression(h.node).type==="ArrowFunctionExpression"){if(!h.error&&!h.aborted)return h.node.async&&this.raise(B.UnexpectedTypeParameterBeforeAsyncArrowFunction,p),h.node;E=h.node}if((o=n)!=null&&o.node)return this.state=n.failState,n.node;if(E)return this.state=h.failState,E;throw(u=n)!=null&&u.thrown?n.error:h.thrown?h.error:this.raise(B.UnexpectedTokenAfterTypeParameter,p)}return super.parseMaybeAssign(r,s)}parseArrow(r){if(this.match(14)){const s=this.tryParse(()=>{const i=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;const a=this.startNode();return[a.typeAnnotation,r.predicate]=this.flowParseTypeAndPredicateInitialiser(),this.state.noAnonFunctionType=i,this.canInsertSemicolon()&&this.unexpected(),this.match(19)||this.unexpected(),a});if(s.thrown)return null;s.error&&(this.state=s.failState),r.returnType=s.node.typeAnnotation?this.finishNode(s.node,"TypeAnnotation"):null}return super.parseArrow(r)}shouldParseArrow(r){return this.match(14)||super.shouldParseArrow(r)}setArrowFunctionParameters(r,s){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(r.start))?r.params=s:super.setArrowFunctionParameters(r,s)}checkParams(r,s,i,a=!0){if(!(i&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(r.start)))){for(let n=0;n<r.params.length;n++)this.isThisParam(r.params[n])&&n>0&&this.raise(B.ThisParamMustBeFirst,r.params[n]);super.checkParams(r,s,i,a)}}parseParenAndDistinguishExpression(r){return super.parseParenAndDistinguishExpression(r&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(r,s,i){if(r.type==="Identifier"&&r.name==="async"&&this.state.noArrowAt.includes(s.index)){this.next();const a=this.startNodeAt(s);a.callee=r,a.arguments=super.parseCallExpressionArguments(11),r=this.finishNode(a,"CallExpression")}else if(r.type==="Identifier"&&r.name==="async"&&this.match(47)){const a=this.state.clone(),n=this.tryParse(u=>this.parseAsyncArrowWithTypeParameters(s)||u(),a);if(!n.error&&!n.aborted)return n.node;const o=this.tryParse(()=>super.parseSubscripts(r,s,i),a);if(o.node&&!o.error)return o.node;if(n.node)return this.state=n.failState,n.node;if(o.node)return this.state=o.failState,o.node;throw n.error||o.error}return super.parseSubscripts(r,s,i)}parseSubscript(r,s,i,a){if(this.match(18)&&this.isLookaheadToken_lt()){if(a.optionalChainMember=!0,i)return a.stop=!0,r;this.next();const n=this.startNodeAt(s);return n.callee=r,n.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),n.arguments=this.parseCallExpressionArguments(11),n.optional=!0,this.finishCallExpression(n,!0)}else if(!i&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){const n=this.startNodeAt(s);n.callee=r;const o=this.tryParse(()=>(n.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),n.arguments=super.parseCallExpressionArguments(11),a.optionalChainMember&&(n.optional=!1),this.finishCallExpression(n,a.optionalChainMember)));if(o.node)return o.error&&(this.state=o.failState),o.node}return super.parseSubscript(r,s,i,a)}parseNewCallee(r){super.parseNewCallee(r);let s=null;this.shouldParseTypes()&&this.match(47)&&(s=this.tryParse(()=>this.flowParseTypeParameterInstantiationCallOrNew()).node),r.typeArguments=s}parseAsyncArrowWithTypeParameters(r){const s=this.startNodeAt(r);if(this.parseFunctionParams(s,!1),!!this.parseArrow(s))return super.parseArrowExpression(s,void 0,!0)}readToken_mult_modulo(r){const s=this.input.charCodeAt(this.state.pos+1);if(r===42&&s===47&&this.state.hasFlowComment){this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken();return}super.readToken_mult_modulo(r)}readToken_pipe_amp(r){const s=this.input.charCodeAt(this.state.pos+1);if(r===124&&s===125){this.finishOp(9,2);return}super.readToken_pipe_amp(r)}parseTopLevel(r,s){const i=super.parseTopLevel(r,s);return this.state.hasFlowComment&&this.raise(B.UnterminatedFlowComment,this.state.curPosition()),i}skipBlockComment(){if(this.hasPlugin("flowComments")&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(B.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();const r=this.skipFlowComment();r&&(this.state.pos+=r,this.state.hasFlowComment=!0);return}return super.skipBlockComment(this.state.hasFlowComment?"*-/":"*/")}skipFlowComment(){const{pos:r}=this.state;let s=2;for(;[32,9].includes(this.input.charCodeAt(r+s));)s++;const i=this.input.charCodeAt(s+r),a=this.input.charCodeAt(s+r+1);return i===58&&a===58?s+2:this.input.slice(s+r,s+r+12)==="flow-include"?s+12:i===58&&a!==58?s:!1}hasFlowCommentCompletion(){if(this.input.indexOf("*/",this.state.pos)===-1)throw this.raise(x.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(r,{enumName:s,memberName:i}){this.raise(B.EnumBooleanMemberNotInitialized,r,{memberName:i,enumName:s})}flowEnumErrorInvalidMemberInitializer(r,s){return this.raise(s.explicitType?s.explicitType==="symbol"?B.EnumInvalidMemberInitializerSymbolType:B.EnumInvalidMemberInitializerPrimaryType:B.EnumInvalidMemberInitializerUnknownType,r,s)}flowEnumErrorNumberMemberNotInitialized(r,s){this.raise(B.EnumNumberMemberNotInitialized,r,s)}flowEnumErrorStringMemberInconsistentlyInitialized(r,s){this.raise(B.EnumStringMemberInconsistentlyInitialized,r,s)}flowEnumMemberInit(){const r=this.state.startLoc,s=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{const i=this.parseNumericLiteral(this.state.value);return s()?{type:"number",loc:i.loc.start,value:i}:{type:"invalid",loc:r}}case 134:{const i=this.parseStringLiteral(this.state.value);return s()?{type:"string",loc:i.loc.start,value:i}:{type:"invalid",loc:r}}case 85:case 86:{const i=this.parseBooleanLiteral(this.match(85));return s()?{type:"boolean",loc:i.loc.start,value:i}:{type:"invalid",loc:r}}default:return{type:"invalid",loc:r}}}flowEnumMemberRaw(){const r=this.state.startLoc,s=this.parseIdentifier(!0),i=this.eat(29)?this.flowEnumMemberInit():{type:"none",loc:r};return{id:s,init:i}}flowEnumCheckExplicitTypeMismatch(r,s,i){const{explicitType:a}=s;a!==null&&a!==i&&this.flowEnumErrorInvalidMemberInitializer(r,s)}flowEnumMembers({enumName:r,explicitType:s}){const i=new Set,a={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]};let n=!1;for(;!this.match(8);){if(this.eat(21)){n=!0;break}const o=this.startNode(),{id:u,init:p}=this.flowEnumMemberRaw(),h=u.name;if(h==="")continue;/^[a-z]/.test(h)&&this.raise(B.EnumInvalidMemberName,u,{memberName:h,suggestion:h[0].toUpperCase()+h.slice(1),enumName:r}),i.has(h)&&this.raise(B.EnumDuplicateMemberName,u,{memberName:h,enumName:r}),i.add(h);const E={enumName:r,explicitType:s,memberName:h};switch(o.id=u,p.type){case"boolean":{this.flowEnumCheckExplicitTypeMismatch(p.loc,E,"boolean"),o.init=p.value,a.booleanMembers.push(this.finishNode(o,"EnumBooleanMember"));break}case"number":{this.flowEnumCheckExplicitTypeMismatch(p.loc,E,"number"),o.init=p.value,a.numberMembers.push(this.finishNode(o,"EnumNumberMember"));break}case"string":{this.flowEnumCheckExplicitTypeMismatch(p.loc,E,"string"),o.init=p.value,a.stringMembers.push(this.finishNode(o,"EnumStringMember"));break}case"invalid":throw this.flowEnumErrorInvalidMemberInitializer(p.loc,E);case"none":switch(s){case"boolean":this.flowEnumErrorBooleanMemberNotInitialized(p.loc,E);break;case"number":this.flowEnumErrorNumberMemberNotInitialized(p.loc,E);break;default:a.defaultedMembers.push(this.finishNode(o,"EnumDefaultedMember"))}}this.match(8)||this.expect(12)}return{members:a,hasUnknownMembers:n}}flowEnumStringMembers(r,s,{enumName:i}){if(r.length===0)return s;if(s.length===0)return r;if(s.length>r.length){for(const a of r)this.flowEnumErrorStringMemberInconsistentlyInitialized(a,{enumName:i});return s}else{for(const a of s)this.flowEnumErrorStringMemberInconsistentlyInitialized(a,{enumName:i});return r}}flowEnumParseExplicitType({enumName:r}){if(!this.eatContextual(102))return null;if(!H(this.state.type))throw this.raise(B.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:r});const{value:s}=this.state;return this.next(),s!=="boolean"&&s!=="number"&&s!=="string"&&s!=="symbol"&&this.raise(B.EnumInvalidExplicitType,this.state.startLoc,{enumName:r,invalidEnumType:s}),s}flowEnumBody(r,s){const i=s.name,a=s.loc.start,n=this.flowEnumParseExplicitType({enumName:i});this.expect(5);const{members:o,hasUnknownMembers:u}=this.flowEnumMembers({enumName:i,explicitType:n});switch(r.hasUnknownMembers=u,n){case"boolean":return r.explicitType=!0,r.members=o.booleanMembers,this.expect(8),this.finishNode(r,"EnumBooleanBody");case"number":return r.explicitType=!0,r.members=o.numberMembers,this.expect(8),this.finishNode(r,"EnumNumberBody");case"string":return r.explicitType=!0,r.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:i}),this.expect(8),this.finishNode(r,"EnumStringBody");case"symbol":return r.members=o.defaultedMembers,this.expect(8),this.finishNode(r,"EnumSymbolBody");default:{const p=()=>(r.members=[],this.expect(8),this.finishNode(r,"EnumStringBody"));r.explicitType=!1;const h=o.booleanMembers.length,E=o.numberMembers.length,I=o.stringMembers.length,A=o.defaultedMembers.length;if(!h&&!E&&!I&&!A)return p();if(!h&&!E)return r.members=this.flowEnumStringMembers(o.stringMembers,o.defaultedMembers,{enumName:i}),this.expect(8),this.finishNode(r,"EnumStringBody");if(!E&&!I&&h>=A){for(const w of o.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(w.loc.start,{enumName:i,memberName:w.id.name});return r.members=o.booleanMembers,this.expect(8),this.finishNode(r,"EnumBooleanBody")}else if(!h&&!I&&E>=A){for(const w of o.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(w.loc.start,{enumName:i,memberName:w.id.name});return r.members=o.numberMembers,this.expect(8),this.finishNode(r,"EnumNumberBody")}else return this.raise(B.EnumInconsistentMemberValues,a,{enumName:i}),p()}}}flowParseEnumDeclaration(r){const s=this.parseIdentifier();return r.id=s,r.body=this.flowEnumBody(this.startNode(),s),this.finishNode(r,"EnumDeclaration")}jsxParseOpeningElementAfterName(r){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(r.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(r)}isLookaheadToken_lt(){const r=this.nextTokenStart();if(this.input.charCodeAt(r)===60){const s=this.input.charCodeAt(r+1);return s!==60&&s!==61}return!1}reScan_lt_gt(){const{type:r}=this.state;r===47?(this.state.pos-=1,this.readToken_lt()):r===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){const{type:r}=this.state;return r===51?(this.state.pos-=2,this.finishOp(47,1),47):r}maybeUnwrapTypeCastExpression(r){return r.type==="TypeCastExpression"?r.expression:r}};const Lo={__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:"♦"},Le=Ee`jsx`({AttributeIsEmpty:"JSX attributes must only be assigned a non-empty expression.",MissingClosingTagElement:({openingTagName:t})=>`Expected corresponding JSX closing tag for <${t}>.`,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:t,HTMLEntity:e})=>`Unexpected token \`${t}\`. Did you mean \`${e}\` or \`{'${t}'}\`?`,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 Ce(t){return t?t.type==="JSXOpeningFragment"||t.type==="JSXClosingFragment":!1}function Ve(t){if(t.type==="JSXIdentifier")return t.name;if(t.type==="JSXNamespacedName")return t.namespace.name+":"+t.name.name;if(t.type==="JSXMemberExpression")return Ve(t.object)+"."+Ve(t.property);throw new Error("Node had unexpected type: "+t.type)}var ko=t=>class extends t{jsxReadToken(){let r="",s=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(Le.UnterminatedJsxContent,this.state.startLoc);const i=this.input.charCodeAt(this.state.pos);switch(i){case 60:case 123:if(this.state.pos===this.state.start){i===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(i);return}r+=this.input.slice(s,this.state.pos),this.finishToken(142,r);return;case 38:r+=this.input.slice(s,this.state.pos),r+=this.jsxReadEntity(),s=this.state.pos;break;case 62:case 125:default:Xe(i)?(r+=this.input.slice(s,this.state.pos),r+=this.jsxReadNewLine(!0),s=this.state.pos):++this.state.pos}}}jsxReadNewLine(r){const s=this.input.charCodeAt(this.state.pos);let i;return++this.state.pos,s===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,i=r?`
|
|
136
|
+
`,C=e((e=>{Object.defineProperty(e,"__esModule",{value:!0});function t(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;n[r]=e[r]}return n}var n=class{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}},r=class{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){let{line:r,column:i,index:a}=e;return new n(r,i+t,a+t)}var a=`BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED`,o={ImportMetaOutsideModule:{message:`import.meta may appear only with 'sourceType: "module"'`,code:a},ImportOutsideModule:{message:`'import' and 'export' may appear only with 'sourceType: "module"'`,code:a}},s={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`},c=e=>e.type===`UpdateExpression`?s.UpdateExpression[`${e.prefix}`]:s[e.type],l={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.`,DeferImportRequiresNamespace:'Only `import defer * as x from "./module"` is valid.',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.`,DynamicImportPhaseRequiresImportExpressions:({phase:e})=>`'import.${e}(...)' can only be parsed when using the 'createImportExpressions' option.`,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})=>`'${e===`ForInStatement`?`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 ${e===`BreakStatement`?`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 `deprecatedImportAssert` parser 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 }\`?`,ImportCallArity:"`import()` requires exactly 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 ${c(e)}.`,InvalidLhsBinding:({ancestor:e})=>`Binding invalid left-hand side in ${c(e)}.`,InvalidLhsOptionalChaining:({ancestor:e})=>`Invalid optional chaining in the left-hand side of ${c(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.`,SourcePhaseImportRequiresDefault:'Only `import source x from "./module"` is valid.',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.`,UsingDeclarationExport:`Using declaration cannot be exported.`,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.`},u={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.`},d=new Set([`ArrowFunctionExpression`,`AssignmentExpression`,`ConditionalExpression`,`YieldExpression`]),f=Object.assign({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 ${c({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.`}),p=[`message`];function m(e,t,n){Object.defineProperty(e,t,{enumerable:!1,configurable:!0,value:n})}function h({toMessage:e,code:t,reasonCode:r,syntaxPlugin:i}){let a=r===`MissingPlugin`||r===`MissingOneOfPlugins`;{let e={AccessorCannotDeclareThisParameter:`AccesorCannotDeclareThisParameter`,AccessorCannotHaveTypeParameters:`AccesorCannotHaveTypeParameters`,ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:`ConstInitiailizerMustBeStringOrNumericLiteralOrLiteralEnumReference`,SetAccessorCannotHaveOptionalParameter:`SetAccesorCannotHaveOptionalParameter`,SetAccessorCannotHaveRestParameter:`SetAccesorCannotHaveRestParameter`,SetAccessorCannotHaveReturnType:`SetAccesorCannotHaveReturnType`};e[r]&&(r=e[r])}return function o(s,c){let l=SyntaxError();return l.code=t,l.reasonCode=r,l.loc=s,l.pos=s.index,l.syntaxPlugin=i,a&&(l.missingPlugin=c.missingPlugin),m(l,`clone`,function(e={}){let{line:t,column:r,index:i}=e.loc??s;return o(new n(t,r,i),Object.assign({},c,e.details))}),m(l,`details`,c),Object.defineProperty(l,"message",{configurable:!0,get(){let t=`${e(c)} (${s.line}:${s.column})`;return this.message=t,t},set(e){Object.defineProperty(this,"message",{value:e,writable:!0})}}),l}}function g(e,n){if(Array.isArray(e))return t=>g(t,e[0]);let r={};for(let i of Object.keys(e)){let a=e[i],o=typeof a==`string`?{message:()=>a}:typeof a==`function`?{message:a}:a,{message:s}=o,c=t(o,p);r[i]=h(Object.assign({code:`BABEL_PARSER_SYNTAX_ERROR`,reasonCode:i,toMessage:typeof s==`string`?()=>s:s},n?{syntaxPlugin:n}:{},c))}return r}var _=Object.assign({},g(o),g(l),g(u),g`pipelineOperator`(f));function ee(){return{sourceType:`script`,sourceFilename:void 0,startIndex:0,startColumn:0,startLine:1,allowAwaitOutsideFunction:!1,allowReturnOutsideFunction:!1,allowNewTargetOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,allowUndeclaredExports:!1,plugins:[],strictMode:null,ranges:!1,tokens:!1,createImportExpressions:!1,createParenthesizedExpressions:!1,errorRecovery:!1,attachComment:!0,annexB:!0}}function te(e){let t=ee();if(e==null)return t;if(e.annexB!=null&&e.annexB!==!1)throw Error("The `annexB` option can only be set to `false`.");for(let n of Object.keys(t))e[n]!=null&&(t[n]=e[n]);if(t.startLine===1)e.startIndex==null&&t.startColumn>0?t.startIndex=t.startColumn:e.startColumn==null&&t.startIndex>0&&(t.startColumn=t.startIndex);else if((e.startColumn==null||e.startIndex==null)&&e.startIndex!=null)throw Error("With a `startLine > 1` you must also specify `startIndex` and `startColumn`.");return t}var{defineProperty:ne}=Object,re=(e,t)=>{e&&ne(e,t,{enumerable:!1,value:e[t]})};function v(e){return re(e.loc.start,`index`),re(e.loc.end,`index`),e}var y=e=>class extends e{parse(){let e=v(super.parse());return this.optionFlags&128&&(e.tokens=e.tokens.map(v)),e}parseRegExpLiteral({pattern:e,flags:t}){let n=null;try{n=new RegExp(e,t)}catch{}let r=this.estreeParseLiteral(n);return r.regex={pattern:e,flags:t},r}parseBigIntLiteral(e){let t;try{t=BigInt(e)}catch{t=null}let n=this.estreeParseLiteral(t);return n.bigint=String(n.value||e),n}parseDecimalLiteral(e){let 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){let t=e.value;delete e.value,t.type=`Literal`,t.raw=t.extra.raw,t.value=t.extra.expressionValue;let 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){e!=null&&this.isObjectProperty(e)?this.checkDeclaration(e.value):super.checkDeclaration(e)}getObjectOrClassMethodParams(e){return e.value.params}isValidDirective(e){var t;return e.type===`ExpressionStatement`&&e.expression.type===`Literal`&&typeof e.expression.value==`string`&&!((t=e.expression.extra)!=null&&t.parenthesized)}parseBlockBody(e,t,n,r,i){super.parseBlockBody(e,t,n,r,i),e.body=e.directives.map(e=>this.directiveToStmt(e)).concat(e.body),delete e.directives}parsePrivateName(){let e=super.parsePrivateName();return this.getPluginOption(`estree`,`classFeatures`)?this.convertPrivateNameToPrivateIdentifier(e):e}convertPrivateNameToPrivateIdentifier(e){let t=super.getPrivateNameSV(e);return e=e,delete e.id,e.name=t,e.type=`PrivateIdentifier`,e}isPrivateName(e){return this.getPluginOption(`estree`,`classFeatures`)?e.type===`PrivateIdentifier`:super.isPrivateName(e)}getPrivateNameSV(e){return this.getPluginOption(`estree`,`classFeatures`)?e.name:super.getPrivateNameSV(e)}parseLiteral(e,t){let 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=e.body.type!==`BlockStatement`}parseMethod(e,t,n,r,i,a,o=!1){let s=this.startNode();s.kind=e.kind,s=super.parseMethod(s,t,n,r,i,a,o),s.type=`FunctionExpression`,delete s.kind,e.value=s;let{typeParameters:c}=e;return c&&(delete e.typeParameters,s.typeParameters=c,this.resetStartLocationFromNode(s,c)),a===`ClassPrivateMethod`&&(e.computed=!1),this.finishNode(e,`MethodDefinition`)}nameIsConstructor(e){return e.type===`Literal`?e.value===`constructor`:super.nameIsConstructor(e)}parseClassProperty(...e){let t=super.parseClassProperty(...e);return this.getPluginOption(`estree`,`classFeatures`)&&(t.type=`PropertyDefinition`),t}parseClassPrivateProperty(...e){let t=super.parseClassPrivateProperty(...e);return this.getPluginOption(`estree`,`classFeatures`)&&(t.type=`PropertyDefinition`,t.computed=!1),t}parseObjectMethod(e,t,n,r,i){let a=super.parseObjectMethod(e,t,n,r,i);return a&&(a.type=`Property`,a.kind===`method`&&(a.kind=`init`),a.shorthand=!1),a}parseObjectProperty(e,t,n,r){let i=super.parseObjectProperty(e,t,n,r);return i&&(i.kind=`init`,i.type=`Property`),i}isValidLVal(e,t,n){return e===`Property`?`value`:super.isValidLVal(e,t,n)}isAssignable(e,t){return e!=null&&this.isObjectProperty(e)?this.isAssignable(e.value,t):super.isAssignable(e,t)}toAssignable(e,t=!1){if(e!=null&&this.isObjectProperty(e)){let{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){e.type===`Property`&&(e.kind===`get`||e.kind===`set`)?this.raise(_.PatternHasAccessor,e.key):e.type===`Property`&&e.method?this.raise(_.PatternHasMethod,e.key):super.toAssignableObjectExpressionProp(e,t,n)}finishCallExpression(e,t){let n=super.finishCallExpression(e,t);return n.callee.type===`Import`&&(n.type=`ImportExpression`,n.source=n.arguments[0],n.options=n.arguments[1]??null,n.attributes=n.arguments[1]??null,delete n.arguments,delete n.callee),n}toReferencedArguments(e){e.type!==`ImportExpression`&&super.toReferencedArguments(e)}parseExport(e,t){let n=this.state.lastTokStartLoc,r=super.parseExport(e,t);switch(r.type){case`ExportAllDeclaration`:r.exported=null;break;case`ExportNamedDeclaration`:r.specifiers.length===1&&r.specifiers[0].type===`ExportNamespaceSpecifier`&&(r.type=`ExportAllDeclaration`,r.exported=r.specifiers[0].exported,delete r.specifiers);case`ExportDefaultDeclaration`:{var i;let{declaration:e}=r;(e==null?void 0:e.type)===`ClassDeclaration`&&((i=e.decorators)==null?void 0:i.length)>0&&e.start===r.start&&this.resetStartLocation(r,n)}}return r}parseSubscript(e,t,n,r){let i=super.parseSubscript(e,t,n,r);if(r.optionalChainMember){if((i.type===`OptionalMemberExpression`||i.type===`OptionalCallExpression`)&&(i.type=i.type.substring(8)),r.stop){let e=this.startNodeAtNode(i);return e.expression=i,this.finishNode(e,`ChainExpression`)}}else(i.type===`MemberExpression`||i.type===`CallExpression`)&&(i.optional=!1);return i}isOptionalMemberExpression(e){return e.type===`ChainExpression`?e.expression.type===`MemberExpression`:super.isOptionalMemberExpression(e)}hasPropertyAsPrivateName(e){return e.type===`ChainExpression`&&(e=e.expression),super.hasPropertyAsPrivateName(e)}isObjectProperty(e){return e.type===`Property`&&e.kind===`init`&&!e.method}isObjectMethod(e){return e.type===`Property`&&(e.method||e.kind===`get`||e.kind===`set`)}finishNodeAt(e,t,n){return v(super.finishNodeAt(e,t,n))}resetStartLocation(e,t){super.resetStartLocation(e,t),v(e)}resetEndLocation(e,t=this.state.lastTokEndLoc){super.resetEndLocation(e,t),v(e)}},b=class{constructor(e,t){this.token=void 0,this.preserveSpace=void 0,this.token=e,this.preserveSpace=!!t}},x={brace:new b(`{`),j_oTag:new b(`<tag`),j_cTag:new b(`</tag`),j_expr:new b(`<tag>...</tag>`,!0)};x.template=new b("`",!0);var S=!0,C=!0,ie=!0,w=!0,T=!0,ae=!0,oe=class{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=t.binop==null?null:t.binop,this.updateContext=null}},se=new Map;function E(e,t={}){t.keyword=e;let n=j(e,t);return se.set(e,n),n}function D(e,t){return j(e,{beforeExpr:S,binop:t})}var O=-1,k=[],ce=[],le=[],ue=[],A=[],de=[];function j(e,t={}){return++O,ce.push(e),le.push(t.binop??-1),ue.push(t.beforeExpr??!1),A.push(t.startsExpr??!1),de.push(t.prefix??!1),k.push(new oe(e,t)),O}function M(e,t={}){return++O,se.set(e,O),ce.push(e),le.push(t.binop??-1),ue.push(t.beforeExpr??!1),A.push(t.startsExpr??!1),de.push(t.prefix??!1),k.push(new oe(`name`,t)),O}var N={bracketL:j(`[`,{beforeExpr:S,startsExpr:C}),bracketHashL:j(`#[`,{beforeExpr:S,startsExpr:C}),bracketBarL:j(`[|`,{beforeExpr:S,startsExpr:C}),bracketR:j(`]`),bracketBarR:j(`|]`),braceL:j(`{`,{beforeExpr:S,startsExpr:C}),braceBarL:j(`{|`,{beforeExpr:S,startsExpr:C}),braceHashL:j(`#{`,{beforeExpr:S,startsExpr:C}),braceR:j(`}`),braceBarR:j(`|}`),parenL:j(`(`,{beforeExpr:S,startsExpr:C}),parenR:j(`)`),comma:j(`,`,{beforeExpr:S}),semi:j(`;`,{beforeExpr:S}),colon:j(`:`,{beforeExpr:S}),doubleColon:j(`::`,{beforeExpr:S}),dot:j(`.`),question:j(`?`,{beforeExpr:S}),questionDot:j(`?.`),arrow:j(`=>`,{beforeExpr:S}),template:j(`template`),ellipsis:j(`...`,{beforeExpr:S}),backQuote:j("`",{startsExpr:C}),dollarBraceL:j("${",{beforeExpr:S,startsExpr:C}),templateTail:j("...`",{startsExpr:C}),templateNonTail:j("...${",{beforeExpr:S,startsExpr:C}),at:j(`@`),hash:j(`#`,{startsExpr:C}),interpreterDirective:j(`#!...`),eq:j(`=`,{beforeExpr:S,isAssign:w}),assign:j(`_=`,{beforeExpr:S,isAssign:w}),slashAssign:j(`_=`,{beforeExpr:S,isAssign:w}),xorAssign:j(`_=`,{beforeExpr:S,isAssign:w}),moduloAssign:j(`_=`,{beforeExpr:S,isAssign:w}),incDec:j(`++/--`,{prefix:T,postfix:ae,startsExpr:C}),bang:j(`!`,{beforeExpr:S,prefix:T,startsExpr:C}),tilde:j(`~`,{beforeExpr:S,prefix:T,startsExpr:C}),doubleCaret:j(`^^`,{startsExpr:C}),doubleAt:j(`@@`,{startsExpr:C}),pipeline:D(`|>`,0),nullishCoalescing:D(`??`,1),logicalOR:D(`||`,1),logicalAND:D(`&&`,2),bitwiseOR:D(`|`,3),bitwiseXOR:D(`^`,4),bitwiseAND:D(`&`,5),equality:D(`==/!=/===/!==`,6),lt:D(`</>/<=/>=`,7),gt:D(`</>/<=/>=`,7),relational:D(`</>/<=/>=`,7),bitShift:D(`<</>>/>>>`,8),bitShiftL:D(`<</>>/>>>`,8),bitShiftR:D(`<</>>/>>>`,8),plusMin:j(`+/-`,{beforeExpr:S,binop:9,prefix:T,startsExpr:C}),modulo:j(`%`,{binop:10,startsExpr:C}),star:j(`*`,{binop:10}),slash:D(`/`,10),exponent:j(`**`,{beforeExpr:S,binop:11,rightAssociative:!0}),_in:E(`in`,{beforeExpr:S,binop:7}),_instanceof:E(`instanceof`,{beforeExpr:S,binop:7}),_break:E(`break`),_case:E(`case`,{beforeExpr:S}),_catch:E(`catch`),_continue:E(`continue`),_debugger:E(`debugger`),_default:E(`default`,{beforeExpr:S}),_else:E(`else`,{beforeExpr:S}),_finally:E(`finally`),_function:E(`function`,{startsExpr:C}),_if:E(`if`),_return:E(`return`,{beforeExpr:S}),_switch:E(`switch`),_throw:E(`throw`,{beforeExpr:S,prefix:T,startsExpr:C}),_try:E(`try`),_var:E(`var`),_const:E(`const`),_with:E(`with`),_new:E(`new`,{beforeExpr:S,startsExpr:C}),_this:E(`this`,{startsExpr:C}),_super:E(`super`,{startsExpr:C}),_class:E(`class`,{startsExpr:C}),_extends:E(`extends`,{beforeExpr:S}),_export:E(`export`),_import:E(`import`,{startsExpr:C}),_null:E(`null`,{startsExpr:C}),_true:E(`true`,{startsExpr:C}),_false:E(`false`,{startsExpr:C}),_typeof:E(`typeof`,{beforeExpr:S,prefix:T,startsExpr:C}),_void:E(`void`,{beforeExpr:S,prefix:T,startsExpr:C}),_delete:E(`delete`,{beforeExpr:S,prefix:T,startsExpr:C}),_do:E(`do`,{isLoop:ie,beforeExpr:S}),_for:E(`for`,{isLoop:ie}),_while:E(`while`,{isLoop:ie}),_as:M(`as`,{startsExpr:C}),_assert:M(`assert`,{startsExpr:C}),_async:M(`async`,{startsExpr:C}),_await:M(`await`,{startsExpr:C}),_defer:M(`defer`,{startsExpr:C}),_from:M(`from`,{startsExpr:C}),_get:M(`get`,{startsExpr:C}),_let:M(`let`,{startsExpr:C}),_meta:M(`meta`,{startsExpr:C}),_of:M(`of`,{startsExpr:C}),_sent:M(`sent`,{startsExpr:C}),_set:M(`set`,{startsExpr:C}),_source:M(`source`,{startsExpr:C}),_static:M(`static`,{startsExpr:C}),_using:M(`using`,{startsExpr:C}),_yield:M(`yield`,{startsExpr:C}),_asserts:M(`asserts`,{startsExpr:C}),_checks:M(`checks`,{startsExpr:C}),_exports:M(`exports`,{startsExpr:C}),_global:M(`global`,{startsExpr:C}),_implements:M(`implements`,{startsExpr:C}),_intrinsic:M(`intrinsic`,{startsExpr:C}),_infer:M(`infer`,{startsExpr:C}),_is:M(`is`,{startsExpr:C}),_mixins:M(`mixins`,{startsExpr:C}),_proto:M(`proto`,{startsExpr:C}),_require:M(`require`,{startsExpr:C}),_satisfies:M(`satisfies`,{startsExpr:C}),_keyof:M(`keyof`,{startsExpr:C}),_readonly:M(`readonly`,{startsExpr:C}),_unique:M(`unique`,{startsExpr:C}),_abstract:M(`abstract`,{startsExpr:C}),_declare:M(`declare`,{startsExpr:C}),_enum:M(`enum`,{startsExpr:C}),_module:M(`module`,{startsExpr:C}),_namespace:M(`namespace`,{startsExpr:C}),_interface:M(`interface`,{startsExpr:C}),_type:M(`type`,{startsExpr:C}),_opaque:M(`opaque`,{startsExpr:C}),name:j(`name`,{startsExpr:C}),placeholder:j(`%%`,{startsExpr:!0}),string:j(`string`,{startsExpr:C}),num:j(`num`,{startsExpr:C}),bigint:j(`bigint`,{startsExpr:C}),decimal:j(`decimal`,{startsExpr:C}),regexp:j(`regexp`,{startsExpr:C}),privateName:j(`#name`,{startsExpr:C}),eof:j(`eof`),jsxName:j(`jsxName`),jsxText:j(`jsxText`,{beforeExpr:!0}),jsxTagStart:j(`jsxTagStart`,{startsExpr:!0}),jsxTagEnd:j(`jsxTagEnd`)};function P(e){return e>=93&&e<=133}function fe(e){return e<=92}function F(e){return e>=58&&e<=133}function pe(e){return e>=58&&e<=137}function me(e){return ue[e]}function he(e){return A[e]}function ge(e){return e>=29&&e<=33}function I(e){return e>=129&&e<=131}function _e(e){return e>=90&&e<=92}function ve(e){return e>=58&&e<=92}function ye(e){return e>=39&&e<=59}function L(e){return e===34}function be(e){return de[e]}function xe(e){return e>=121&&e<=123}function Se(e){return e>=124&&e<=130}function R(e){return ce[e]}function Ce(e){return le[e]}function we(e){return e===57}function Te(e){return e>=24&&e<=25}function z(e){return k[e]}k[8].updateContext=e=>{e.pop()},k[5].updateContext=k[7].updateContext=k[23].updateContext=e=>{e.push(x.brace)},k[22].updateContext=e=>{e[e.length-1]===x.template?e.pop():e.push(x.template)},k[143].updateContext=e=>{e.push(x.j_expr,x.j_oTag)};var Ee=`ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-Ა-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-Ꟑꟑꟓꟕ-ꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ`,De=`·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・`,Oe=RegExp(`[`+Ee+`]`),B=RegExp(`[`+Ee+De+`]`);Ee=De=null;var ke=[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,4,51,13,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,39,27,10,22,251,41,7,1,17,2,60,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,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,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,200,32,32,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,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,129,74,6,0,67,12,65,1,2,0,29,6135,9,1237,42,9,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,229,29,3,0,496,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,16,621,2467,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,7,9,32,4,318,1,80,3,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,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,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,343,9,54,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,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,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,245,1,2,9,726,6,110,6,6,9,4759,9,787719,239];function je(e,t){let n=65536;for(let r=0,i=t.length;r<i;r+=2){if(n+=t[r],n>e)return!1;if(n+=t[r+1],n>=e)return!0}return!1}function V(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&Oe.test(String.fromCharCode(e)):je(e,ke)}function H(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&B.test(String.fromCharCode(e)):je(e,ke)||je(e,Ae)}var Me={keyword:`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`.split(`.`),strict:[`implements`,`interface`,`let`,`package`,`private`,`protected`,`public`,`static`,`yield`],strictBind:[`eval`,`arguments`]},Ne=new Set(Me.keyword),Pe=new Set(Me.strict),Fe=new Set(Me.strictBind);function Ie(e,t){return t&&e===`await`||e===`enum`}function Le(e,t){return Ie(e,t)||Pe.has(e)}function Re(e){return Fe.has(e)}function ze(e,t){return Le(e,t)||Re(e)}function Be(e){return Ne.has(e)}function Ve(e,t,n){return e===64&&t===64&&V(n)}var He=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`.split(`.`));function Ue(e){return He.has(e)}var We=class{constructor(e){this.flags=0,this.names=new Map,this.firstLexicalName=``,this.flags=e}},Ge=class{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(this.currentScope().flags&1)>0}get inFunction(){return(this.currentVarScopeFlags()&2)>0}get allowSuper(){return(this.currentThisScopeFlags()&16)>0}get allowDirectSuper(){return(this.currentThisScopeFlags()&32)>0}get inClass(){return(this.currentThisScopeFlags()&64)>0}get inClassAndNotInNonArrowFunction(){let e=this.currentThisScopeFlags();return(e&64)>0&&!(e&2)}get inStaticBlock(){for(let e=this.scopeStack.length-1;;e--){let{flags:t}=this.scopeStack[e];if(t&128)return!0;if(t&451)return!1}}get inNonArrowFunction(){return(this.currentThisScopeFlags()&2)>0}get treatFunctionsAsVar(){return this.treatFunctionsAsVarInScope(this.currentScope())}createScope(e){return new We(e)}enter(e){this.scopeStack.push(this.createScope(e))}exit(){return this.scopeStack.pop().flags}treatFunctionsAsVarInScope(e){return!!(e.flags&130||!this.parser.inModule&&e.flags&1)}declareName(e,t,n){let r=this.currentScope();if(t&8||t&16){this.checkRedeclarationInScope(r,e,t,n);let i=r.names.get(e)||0;t&16?i|=4:(r.firstLexicalName||(r.firstLexicalName=e),i|=2),r.names.set(e,i),t&8&&this.maybeExportDefined(r,e)}else if(t&4)for(let i=this.scopeStack.length-1;i>=0&&(r=this.scopeStack[i],this.checkRedeclarationInScope(r,e,t,n),r.names.set(e,(r.names.get(e)||0)|1),this.maybeExportDefined(r,e),!(r.flags&387));--i);this.parser.inModule&&r.flags&1&&this.undefinedExports.delete(e)}maybeExportDefined(e,t){this.parser.inModule&&e.flags&1&&this.undefinedExports.delete(t)}checkRedeclarationInScope(e,t,n,r){this.isRedeclaredInScope(e,t,n)&&this.parser.raise(_.VarRedeclaration,r,{identifierName:t})}isRedeclaredInScope(e,t,n){if(!(n&1))return!1;if(n&8)return e.names.has(t);let r=e.names.get(t);return n&16?(r&2)>0||!this.treatFunctionsAsVarInScope(e)&&(r&1)>0:(r&2)>0&&!(e.flags&8&&e.firstLexicalName===t)||!this.treatFunctionsAsVarInScope(e)&&(r&4)>0}checkLocalExport(e){let{name:t}=e;this.scopeStack[0].names.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--){let{flags:t}=this.scopeStack[e];if(t&387)return t}}currentThisScopeFlags(){for(let e=this.scopeStack.length-1;;e--){let{flags:t}=this.scopeStack[e];if(t&451&&!(t&4))return t}}},Ke=class extends We{constructor(...e){super(...e),this.declareFunctions=new Set}},qe=class extends Ge{createScope(e){return new Ke(e)}declareName(e,t,n){let r=this.currentScope();t&2048?(this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e),r.declareFunctions.add(e)):super.declareName(e,t,n)}isRedeclaredInScope(e,t,n){if(super.isRedeclaredInScope(e,t,n))return!0;if(n&2048&&!e.declareFunctions.has(t)){let n=e.names.get(t);return(n&4)>0||(n&2)>0}return!1}checkLocalExport(e){this.scopeStack[0].declareFunctions.has(e.name)||super.checkLocalExport(e)}},Je=class{constructor(){this.sawUnambiguousESM=!1,this.ambiguousScriptDifferentAst=!1}sourceToOffsetPos(e){return e+this.startIndex}offsetToSourcePos(e){return e-this.startIndex}hasPlugin(e){if(typeof e==`string`)return this.plugins.has(e);{let[t,n]=e;if(!this.hasPlugin(t))return!1;let r=this.plugins.get(t);for(let e of Object.keys(n))if((r==null?void 0:r[e])!==n[e])return!1;return!0}}getPluginOption(e,t){var n;return(n=this.plugins.get(e))==null?void 0:n[t]}};function Ye(e,t){e.trailingComments===void 0?e.trailingComments=t:e.trailingComments.unshift(...t)}function Xe(e,t){e.leadingComments===void 0?e.leadingComments=t:e.leadingComments.unshift(...t)}function Ze(e,t){e.innerComments===void 0?e.innerComments=t:e.innerComments.unshift(...t)}function U(e,t,n){let r=null,i=t.length;for(;r===null&&i>0;)r=t[--i];r===null||r.start>n.start?Ze(e,n.comments):Ye(r,n.comments)}var Qe=class extends Je{addComment(e){this.filename&&(e.loc.filename=this.filename);let{commentsLen:t}=this.state;this.comments.length!==t&&(this.comments.length=t),this.comments.push(e),this.state.commentsLen++}processComment(e){let{commentStack:t}=this.state,n=t.length;if(n===0)return;let r=n-1,i=t[r];i.start===e.end&&(i.leadingNode=e,r--);let{start:a}=e;for(;r>=0;r--){let n=t[r],i=n.end;if(i>a)n.containingNode=e,this.finalizeComment(n),t.splice(r,1);else{i===a&&(n.trailingNode=e);break}}}finalizeComment(e){let{comments:t}=e;if(e.leadingNode!==null||e.trailingNode!==null)e.leadingNode!==null&&Ye(e.leadingNode,t),e.trailingNode!==null&&Xe(e.trailingNode,t);else{let{containingNode:n,start:r}=e;if(this.input.charCodeAt(this.offsetToSourcePos(r)-1)===44)switch(n.type){case`ObjectExpression`:case`ObjectPattern`:case`RecordExpression`:U(n,n.properties,e);break;case`CallExpression`:case`OptionalCallExpression`:U(n,n.arguments,e);break;case`FunctionDeclaration`:case`FunctionExpression`:case`ArrowFunctionExpression`:case`ObjectMethod`:case`ClassMethod`:case`ClassPrivateMethod`:U(n,n.params,e);break;case`ArrayExpression`:case`ArrayPattern`:case`TupleExpression`:U(n,n.elements,e);break;case`ExportNamedDeclaration`:case`ImportDeclaration`:U(n,n.specifiers,e);break;case`TSEnumDeclaration`:U(n,n.members,e);break;case`TSEnumBody`:U(n,n.members,e);break;default:Ze(n,t)}else Ze(n,t)}}finalizeRemainingComments(){let{commentStack:e}=this.state;for(let t=e.length-1;t>=0;t--)this.finalizeComment(e[t]);this.state.commentStack=[]}resetPreviousNodeTrailingComments(e){let{commentStack:t}=this.state,{length:n}=t;if(n===0)return;let r=t[n-1];r.leadingNode===e&&(r.leadingNode=null)}resetPreviousIdentifierLeadingComments(e){let{commentStack:t}=this.state,{length:n}=t;n!==0&&(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){let{commentStack:r}=this.state,i=r.length;if(i===0)return;let a=i-1;for(;a>=0;a--){let i=r[a],o=i.end;if(i.start===n)i.leadingNode=e;else if(o===t)i.trailingNode=e;else if(o<t)break}}},$e=RegExp(`\\r\\n|[\\r\\n\\u2028\\u2029]`,`g`);function W(e){switch(e){case 10:case 13:case 8232:case 8233:return!0;default:return!1}}function et(e,t,n){for(let r=t;r<n;r++)if(W(e.charCodeAt(r)))return!0;return!1}var tt=/(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g,nt=/(?:[^\S\n\r\u2028\u2029]|\/\/.*|\/\*.*?\*\/)*/g;function rt(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}}var it=class e{constructor(){this.flags=1024,this.startIndex=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.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null},this.labels=[],this.commentsLen=0,this.commentStack=[],this.pos=0,this.type=140,this.value=null,this.start=0,this.end=0,this.lastTokEndLoc=null,this.lastTokStartLoc=null,this.context=[x.brace],this.firstInvalidTemplateEscapePos=null,this.strictErrors=new Map,this.tokensLength=0}get strict(){return(this.flags&1)>0}set strict(e){e?this.flags|=1:this.flags&=-2}init({strictMode:e,sourceType:t,startIndex:r,startLine:i,startColumn:a}){this.strict=e===!1?!1:e===!0||t===`module`,this.startIndex=r,this.curLine=i,this.lineStart=-a,this.startLoc=this.endLoc=new n(i,a,r)}get maybeInArrowParameters(){return(this.flags&2)>0}set maybeInArrowParameters(e){e?this.flags|=2:this.flags&=-3}get inType(){return(this.flags&4)>0}set inType(e){e?this.flags|=4:this.flags&=-5}get noAnonFunctionType(){return(this.flags&8)>0}set noAnonFunctionType(e){e?this.flags|=8:this.flags&=-9}get hasFlowComment(){return(this.flags&16)>0}set hasFlowComment(e){e?this.flags|=16:this.flags&=-17}get isAmbientContext(){return(this.flags&32)>0}set isAmbientContext(e){e?this.flags|=32:this.flags&=-33}get inAbstractClass(){return(this.flags&64)>0}set inAbstractClass(e){e?this.flags|=64:this.flags&=-65}get inDisallowConditionalTypesContext(){return(this.flags&128)>0}set inDisallowConditionalTypesContext(e){e?this.flags|=128:this.flags&=-129}get soloAwait(){return(this.flags&256)>0}set soloAwait(e){e?this.flags|=256:this.flags&=-257}get inFSharpPipelineDirectBody(){return(this.flags&512)>0}set inFSharpPipelineDirectBody(e){e?this.flags|=512:this.flags&=-513}get canStartJSXElement(){return(this.flags&1024)>0}set canStartJSXElement(e){e?this.flags|=1024:this.flags&=-1025}get containsEsc(){return(this.flags&2048)>0}set containsEsc(e){e?this.flags|=2048:this.flags&=-2049}get hasTopLevelAwait(){return(this.flags&4096)>0}set hasTopLevelAwait(e){e?this.flags|=4096:this.flags&=-4097}curPosition(){return new n(this.curLine,this.pos-this.lineStart,this.pos+this.startIndex)}clone(){let t=new e;return t.flags=this.flags,t.startIndex=this.startIndex,t.curLine=this.curLine,t.lineStart=this.lineStart,t.startLoc=this.startLoc,t.endLoc=this.endLoc,t.errors=this.errors.slice(),t.potentialArrowAt=this.potentialArrowAt,t.noArrowAt=this.noArrowAt.slice(),t.noArrowParamsConversionAt=this.noArrowParamsConversionAt.slice(),t.topicContext=this.topicContext,t.labels=this.labels.slice(),t.commentsLen=this.commentsLen,t.commentStack=this.commentStack.slice(),t.pos=this.pos,t.type=this.type,t.value=this.value,t.start=this.start,t.end=this.end,t.lastTokEndLoc=this.lastTokEndLoc,t.lastTokStartLoc=this.lastTokStartLoc,t.context=this.context.slice(),t.firstInvalidTemplateEscapePos=this.firstInvalidTemplateEscapePos,t.strictErrors=this.strictErrors,t.tokensLength=this.tokensLength,t}},at=function(e){return e>=48&&e<=57},ot={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},st={bin:e=>e===48||e===49,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 ct(e,t,n,r,i,a){let o=n,s=r,c=i,l=``,u=null,d=n,{length:f}=t;for(;;){if(n>=f){a.unterminated(o,s,c),l+=t.slice(d,n);break}let p=t.charCodeAt(n);if(lt(e,p,t,n)){l+=t.slice(d,n);break}if(p===92){l+=t.slice(d,n);let o=ut(t,n,r,i,e===`template`,a);o.ch===null&&!u?u={pos:n,lineStart:r,curLine:i}:l+=o.ch,{pos:n,lineStart:r,curLine:i}=o,d=n}else p===8232||p===8233?(++n,++i,r=n):p===10||p===13?e===`template`?(l+=t.slice(d,n)+`
|
|
137
|
+
`,++n,p===13&&t.charCodeAt(n)===10&&++n,++i,d=r=n):a.unterminated(o,s,c):++n}return{pos:n,str:l,firstInvalidLoc:u,lineStart:r,curLine:i,containsInvalid:!!u}}function lt(e,t,n,r){return e===`template`?t===96||t===36&&n.charCodeAt(r+1)===123:t===(e===`double`?34:39)}function ut(e,t,n,r,i,a){let o=!i;t++;let s=e=>({pos:t,ch:e,lineStart:n,curLine:r}),c=e.charCodeAt(t++);switch(c){case 110:return s(`
|
|
138
|
+
`);case 114:return s(`\r`);case 120:{let i;return{code:i,pos:t}=dt(e,t,n,r,2,!1,o,a),s(i===null?null:String.fromCharCode(i))}case 117:{let i;return{code:i,pos:t}=pt(e,t,n,r,o,a),s(i===null?null:String.fromCodePoint(i))}case 116:return s(` `);case 98:return s(`\b`);case 118:return s(`\v`);case 102:return s(`\f`);case 13:e.charCodeAt(t)===10&&++t;case 10:n=t,++r;case 8232:case 8233:return s(``);case 56:case 57:if(i)return s(null);a.strictNumericEscape(t-1,n,r);default:if(c>=48&&c<=55){let o=t-1,c=/^[0-7]+/.exec(e.slice(o,t+2))[0],l=parseInt(c,8);l>255&&(c=c.slice(0,-1),l=parseInt(c,8)),t+=c.length-1;let u=e.charCodeAt(t);if(c!==`0`||u===56||u===57){if(i)return s(null);a.strictNumericEscape(o,n,r)}return s(String.fromCharCode(l))}return s(String.fromCharCode(c))}}function dt(e,t,n,r,i,a,o,s){let c=t,l;return{n:l,pos:t}=ft(e,t,n,r,16,i,a,!1,s,!o),l===null&&(o?s.invalidEscapeSequence(c,n,r):t=c-1),{code:l,pos:t}}function ft(e,t,n,r,i,a,o,s,c,l){let u=t,d=i===16?ot.hex:ot.decBinOct,f=i===16?st.hex:i===10?st.dec:i===8?st.oct:st.bin,p=!1,m=0;for(let u=0,h=a??1/0;u<h;++u){let a=e.charCodeAt(t),u;if(a===95&&s!==`bail`){let i=e.charCodeAt(t-1),a=e.charCodeAt(t+1);if(!s){if(l)return{n:null,pos:t};c.numericSeparatorInEscapeSequence(t,n,r)}else if(Number.isNaN(a)||!f(a)||d.has(i)||d.has(a)){if(l)return{n:null,pos:t};c.unexpectedNumericSeparator(t,n,r)}++t}else{if(u=a>=97?a-97+10:a>=65?a-65+10:at(a)?a-48:1/0,u>=i){if(u<=9&&l)return{n:null,pos:t};if(u<=9&&c.invalidDigit(t,n,r,i))u=0;else if(o)u=0,p=!0;else break}++t,m=m*i+u}}return t===u||a!=null&&t-u!==a||p?{n:null,pos:t}:{n:m,pos:t}}function pt(e,t,n,r,i,a){let o=e.charCodeAt(t),s;if(o===123){if(++t,{code:s,pos:t}=dt(e,t,n,r,e.indexOf(`}`,t)-t,!0,i,a),++t,s!==null&&s>1114111){if(i)a.invalidCodePoint(t,n,r);else return{code:null,pos:t}}}else({code:s,pos:t}=dt(e,t,n,r,4,!1,i,a));return{code:s,pos:t}}function G(e,t,r){return new n(r,e-t,e)}var mt=new Set([103,109,115,105,121,117,100,118]),K=class{constructor(e){let t=e.startIndex||0;this.type=e.type,this.value=e.value,this.start=t+e.start,this.end=t+e.end,this.loc=new r(e.startLoc,e.endLoc)}},ht=class extends Qe{constructor(e,t){super(),this.isLookahead=void 0,this.tokens=[],this.errorHandlers_readInt={invalidDigit:(e,t,n,r)=>this.optionFlags&1024?(this.raise(_.InvalidDigit,G(e,t,n),{radix:r}),!0):!1,numericSeparatorInEscapeSequence:this.errorBuilder(_.NumericSeparatorInEscapeSequence),unexpectedNumericSeparator:this.errorBuilder(_.UnexpectedNumericSeparator)},this.errorHandlers_readCodePoint=Object.assign({},this.errorHandlers_readInt,{invalidEscapeSequence:this.errorBuilder(_.InvalidEscapeSequence),invalidCodePoint:this.errorBuilder(_.InvalidCodePoint)}),this.errorHandlers_readStringContents_string=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:(e,t,n)=>{this.recordStrictModeErrors(_.StrictNumericEscape,G(e,t,n))},unterminated:(e,t,n)=>{throw this.raise(_.UnterminatedString,G(e-1,t,n))}}),this.errorHandlers_readStringContents_template=Object.assign({},this.errorHandlers_readCodePoint,{strictNumericEscape:this.errorBuilder(_.StrictNumericEscape),unterminated:(e,t,n)=>{throw this.raise(_.UnterminatedTemplate,G(e,t,n))}}),this.state=new it,this.state.init(e),this.input=t,this.length=t.length,this.comments=[],this.isLookahead=!1}pushToken(e){this.tokens.length=this.state.tokensLength,this.tokens.push(e),++this.state.tokensLength}next(){this.checkKeywordEscapes(),this.optionFlags&128&&this.pushToken(new K(this.state)),this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()}eat(e){return this.match(e)?(this.next(),!0):!1}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(){let e=this.state;this.state=this.createLookaheadState(e),this.isLookahead=!0,this.nextToken(),this.isLookahead=!1;let t=this.state;return this.state=e,t}nextTokenStart(){return this.nextTokenStartSince(this.state.pos)}nextTokenStartSince(e){return tt.lastIndex=e,tt.test(this.input)?tt.lastIndex:e}lookaheadCharCode(){return this.input.charCodeAt(this.nextTokenStart())}nextTokenInLineStart(){return this.nextTokenInLineStartSince(this.state.pos)}nextTokenInLineStartSince(e){return nt.lastIndex=e,nt.test(this.input)?nt.lastIndex:e}lookaheadInLineCharCode(){return this.input.charCodeAt(this.nextTokenInLineStart())}codePointAtPos(e){let t=this.input.charCodeAt(e);if((t&64512)==55296&&++e<this.input.length){let n=this.input.charCodeAt(e);(n&64512)==56320&&(t=65536+((t&1023)<<10)+(n&1023))}return t}setStrict(e){this.state.strict=e,e&&(this.state.strictErrors.forEach(([e,t])=>this.raise(e,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(140):this.getTokenFromCode(this.codePointAtPos(this.state.pos))}skipBlockComment(e){let t;this.isLookahead||(t=this.state.curPosition());let n=this.state.pos,i=this.input.indexOf(e,n+2);if(i===-1)throw this.raise(_.UnterminatedComment,this.state.curPosition());for(this.state.pos=i+e.length,$e.lastIndex=n+2;$e.test(this.input)&&$e.lastIndex<=i;)++this.state.curLine,this.state.lineStart=$e.lastIndex;if(this.isLookahead)return;let a={type:`CommentBlock`,value:this.input.slice(n+2,i),start:this.sourceToOffsetPos(n),end:this.sourceToOffsetPos(i+e.length),loc:new r(t,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(a),a}skipLineComment(e){let t=this.state.pos,n;this.isLookahead||(n=this.state.curPosition());let i=this.input.charCodeAt(this.state.pos+=e);if(this.state.pos<this.length)for(;!W(i)&&++this.state.pos<this.length;)i=this.input.charCodeAt(this.state.pos);if(this.isLookahead)return;let a=this.state.pos,o={type:`CommentLine`,value:this.input.slice(t+e,a),start:this.sourceToOffsetPos(t),end:this.sourceToOffsetPos(a),loc:new r(n,this.state.curPosition())};return this.optionFlags&128&&this.pushToken(o),o}skipSpace(){let e=this.state.pos,t=this.optionFlags&2048?[]:null;loop:for(;this.state.pos<this.length;){let n=this.input.charCodeAt(this.state.pos);switch(n){case 32:case 160:case 9:++this.state.pos;break;case 13:this.input.charCodeAt(this.state.pos+1)===10&&++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:{let e=this.skipBlockComment(`*/`);e!==void 0&&(this.addComment(e),t==null||t.push(e));break}case 47:{let e=this.skipLineComment(2);e!==void 0&&(this.addComment(e),t==null||t.push(e));break}default:break loop}break;default:if(rt(n))++this.state.pos;else if(n===45&&!this.inModule&&this.optionFlags&4096){let n=this.state.pos;if(this.input.charCodeAt(n+1)===45&&this.input.charCodeAt(n+2)===62&&(e===0||this.state.lineStart>e)){let e=this.skipLineComment(3);e!==void 0&&(this.addComment(e),t==null||t.push(e))}else break loop}else if(n===60&&!this.inModule&&this.optionFlags&4096){let e=this.state.pos;if(this.input.charCodeAt(e+1)===33&&this.input.charCodeAt(e+2)===45&&this.input.charCodeAt(e+3)===45){let e=this.skipLineComment(4);e!==void 0&&(this.addComment(e),t==null||t.push(e))}else break loop}else break loop}}if((t==null?void 0:t.length)>0){let n=this.state.pos,r={start:this.sourceToOffsetPos(e),end:this.sourceToOffsetPos(n),comments:t,leadingNode:null,trailingNode:null,containingNode:null};this.state.commentStack.push(r)}}finishToken(e,t){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();let 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(this.state.pos===0&&this.readToken_interpreter())return;let e=this.state.pos+1,t=this.codePointAtPos(e);if(t>=48&&t<=57)throw this.raise(_.UnexpectedDigitAfterHash,this.state.curPosition());if(t===123||t===91&&this.hasPlugin(`recordAndTuple`)){if(this.expectPlugin(`recordAndTuple`),this.getPluginOption(`recordAndTuple`,`syntaxType`)===`bar`)throw this.raise(t===123?_.RecordExpressionHashIncorrectStartSyntaxType:_.TupleExpressionHashIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,t===123?this.finishToken(7):this.finishToken(1)}else V(t)?(++this.state.pos,this.finishToken(139,this.readWord1(t))):t===92?(++this.state.pos,this.finishToken(139,this.readWord1())):this.finishOp(27,1)}readToken_dot(){let e=this.input.charCodeAt(this.state.pos+1);e>=48&&e<=57?this.readNumber(!0):e===46&&this.input.charCodeAt(this.state.pos+2)===46?(this.state.pos+=3,this.finishToken(21)):(++this.state.pos,this.finishToken(16))}readToken_slash(){this.input.charCodeAt(this.state.pos+1)===61?this.finishOp(31,2):this.finishOp(56,1)}readToken_interpreter(){if(this.state.pos!==0||this.length<2)return!1;let e=this.input.charCodeAt(this.state.pos+1);if(e!==33)return!1;let t=this.state.pos;for(this.state.pos+=1;!W(e)&&++this.state.pos<this.length;)e=this.input.charCodeAt(this.state.pos);let n=this.input.slice(t+2,this.state.pos);return this.finishToken(28,n),!0}readToken_mult_modulo(e){let t=e===42?55:54,n=1,r=this.input.charCodeAt(this.state.pos+1);e===42&&r===42&&(n++,r=this.input.charCodeAt(this.state.pos+2),t=57),r===61&&!this.state.inType&&(n++,t=e===37?33:30),this.finishOp(t,n)}readToken_pipe_amp(e){let t=this.input.charCodeAt(this.state.pos+1);if(t===e)this.input.charCodeAt(this.state.pos+2)===61?this.finishOp(30,3):this.finishOp(e===124?41:42,2);else{if(e===124){if(t===62){this.finishOp(39,2);return}if(this.hasPlugin(`recordAndTuple`)&&t===125){if(this.getPluginOption(`recordAndTuple`,`syntaxType`)!==`bar`)throw this.raise(_.RecordExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(9);return}if(this.hasPlugin(`recordAndTuple`)&&t===93){if(this.getPluginOption(`recordAndTuple`,`syntaxType`)!==`bar`)throw this.raise(_.TupleExpressionBarIncorrectEndSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(4);return}}t===61?this.finishOp(30,2):this.finishOp(e===124?43:45,1)}}readToken_caret(){let e=this.input.charCodeAt(this.state.pos+1);e===61&&!this.state.inType?this.finishOp(32,2):e===94&&this.hasPlugin([`pipelineOperator`,{proposal:`hack`,topicToken:`^^`}])?(this.finishOp(37,2),this.input.codePointAt(this.state.pos)===94&&this.unexpected()):this.finishOp(44,1)}readToken_atSign(){this.input.charCodeAt(this.state.pos+1)===64&&this.hasPlugin([`pipelineOperator`,{proposal:`hack`,topicToken:`@@`}])?this.finishOp(38,2):this.finishOp(26,1)}readToken_plus_min(e){let t=this.input.charCodeAt(this.state.pos+1);t===e?this.finishOp(34,2):t===61?this.finishOp(30,2):this.finishOp(53,1)}readToken_lt(){let{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(t===60){if(this.input.charCodeAt(e+2)===61){this.finishOp(30,3);return}this.finishOp(51,2)}else t===61?this.finishOp(49,2):this.finishOp(47,1)}readToken_gt(){let{pos:e}=this.state,t=this.input.charCodeAt(e+1);if(t===62){let t=this.input.charCodeAt(e+2)===62?3:2;if(this.input.charCodeAt(e+t)===61){this.finishOp(30,t+1);return}this.finishOp(52,t)}else t===61?this.finishOp(49,2):this.finishOp(48,1)}readToken_eq_excl(e){let t=this.input.charCodeAt(this.state.pos+1);t===61?this.finishOp(46,this.input.charCodeAt(this.state.pos+2)===61?3:2):e===61&&t===62?(this.state.pos+=2,this.finishToken(19)):this.finishOp(e===61?29:35,1)}readToken_question(){let e=this.input.charCodeAt(this.state.pos+1),t=this.input.charCodeAt(this.state.pos+2);e===63?t===61?this.finishOp(30,3):this.finishOp(40,2):e===46&&!(t>=48&&t<=57)?(this.state.pos+=2,this.finishToken(18)):(++this.state.pos,this.finishToken(17))}getTokenFromCode(e){switch(e){case 46:this.readToken_dot();return;case 40:++this.state.pos,this.finishToken(10);return;case 41:++this.state.pos,this.finishToken(11);return;case 59:++this.state.pos,this.finishToken(13);return;case 44:++this.state.pos,this.finishToken(12);return;case 91:if(this.hasPlugin(`recordAndTuple`)&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption(`recordAndTuple`,`syntaxType`)!==`bar`)throw this.raise(_.TupleExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(2)}else++this.state.pos,this.finishToken(0);return;case 93:++this.state.pos,this.finishToken(3);return;case 123:if(this.hasPlugin(`recordAndTuple`)&&this.input.charCodeAt(this.state.pos+1)===124){if(this.getPluginOption(`recordAndTuple`,`syntaxType`)!==`bar`)throw this.raise(_.RecordExpressionBarIncorrectStartSyntaxType,this.state.curPosition());this.state.pos+=2,this.finishToken(6)}else++this.state.pos,this.finishToken(5);return;case 125:++this.state.pos,this.finishToken(8);return;case 58:this.hasPlugin(`functionBind`)&&this.input.charCodeAt(this.state.pos+1)===58?this.finishOp(15,2):(++this.state.pos,this.finishToken(14));return;case 63:this.readToken_question();return;case 96:this.readTemplateToken();return;case 48:{let e=this.input.charCodeAt(this.state.pos+1);if(e===120||e===88){this.readRadixNumber(16);return}if(e===111||e===79){this.readRadixNumber(8);return}if(e===98||e===66){this.readRadixNumber(2);return}}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:this.readNumber(!1);return;case 34:case 39:this.readString(e);return;case 47:this.readToken_slash();return;case 37:case 42:this.readToken_mult_modulo(e);return;case 124:case 38:this.readToken_pipe_amp(e);return;case 94:this.readToken_caret();return;case 43:case 45:this.readToken_plus_min(e);return;case 60:this.readToken_lt();return;case 62:this.readToken_gt();return;case 61:case 33:this.readToken_eq_excl(e);return;case 126:this.finishOp(36,1);return;case 64:this.readToken_atSign();return;case 35:this.readToken_numberSign();return;case 92:this.readWord();return;default:if(V(e)){this.readWord(e);return}}throw this.raise(_.InvalidOrUnexpectedToken,this.state.curPosition(),{unexpected:String.fromCodePoint(e)})}finishOp(e,t){let n=this.input.slice(this.state.pos,this.state.pos+t);this.state.pos+=t,this.finishToken(e,n)}readRegexp(){let e=this.state.startLoc,t=this.state.start+1,n,r,{pos:a}=this.state;for(;;++a){if(a>=this.length)throw this.raise(_.UnterminatedRegExp,i(e,1));let t=this.input.charCodeAt(a);if(W(t))throw this.raise(_.UnterminatedRegExp,i(e,1));if(n)n=!1;else{if(t===91)r=!0;else if(t===93&&r)r=!1;else if(t===47&&!r)break;n=t===92}}let o=this.input.slice(t,a);++a;let s=``,c=()=>i(e,a+2-t);for(;a<this.length;){let e=this.codePointAtPos(a),t=String.fromCharCode(e);if(mt.has(e))e===118?s.includes(`u`)&&this.raise(_.IncompatibleRegExpUVFlags,c()):e===117&&s.includes(`v`)&&this.raise(_.IncompatibleRegExpUVFlags,c()),s.includes(t)&&this.raise(_.DuplicateRegExpFlags,c());else if(H(e)||e===92)this.raise(_.MalformedRegExpFlags,c());else break;++a,s+=t}this.state.pos=a,this.finishToken(138,{pattern:o,flags:s})}readInt(e,t,n=!1,r=!0){let{n:i,pos:a}=ft(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,t,n,r,this.errorHandlers_readInt,!1);return this.state.pos=a,i}readRadixNumber(e){let t=this.state.pos,n=this.state.curPosition(),r=!1;this.state.pos+=2;let a=this.readInt(e);a??this.raise(_.InvalidDigit,i(n,2),{radix:e});let o=this.input.charCodeAt(this.state.pos);if(o===110)++this.state.pos,r=!0;else if(o===109)throw this.raise(_.InvalidDecimal,n);if(V(this.codePointAtPos(this.state.pos)))throw this.raise(_.NumberIdentifier,this.state.curPosition());if(r){let e=this.input.slice(t,this.state.pos).replace(/[_n]/g,``);this.finishToken(136,e)}else this.finishToken(135,a)}readNumber(e){let t=this.state.pos,n=this.state.curPosition(),r=!1,a=!1,o=!1,s=!1;!e&&this.readInt(10)===null&&this.raise(_.InvalidNumber,this.state.curPosition());let c=this.state.pos-t>=2&&this.input.charCodeAt(t)===48;if(c){let e=this.input.slice(t,this.state.pos);if(this.recordStrictModeErrors(_.StrictOctalLiteral,n),!this.state.strict){let t=e.indexOf(`_`);t>0&&this.raise(_.ZeroDigitNumericSeparator,i(n,t))}s=c&&!/[89]/.test(e)}let l=this.input.charCodeAt(this.state.pos);if(l===46&&!s&&(++this.state.pos,this.readInt(10),r=!0,l=this.input.charCodeAt(this.state.pos)),l!==69&&l!==101||s||(l=this.input.charCodeAt(++this.state.pos),(l===43||l===45)&&++this.state.pos,this.readInt(10)===null&&this.raise(_.InvalidOrMissingExponent,n),r=!0,o=!0,l=this.input.charCodeAt(this.state.pos)),l===110&&((r||c)&&this.raise(_.InvalidBigIntLiteral,n),++this.state.pos,a=!0),l===109){this.expectPlugin(`decimal`,this.state.curPosition()),(o||c)&&this.raise(_.InvalidDecimal,n),++this.state.pos;var u=!0}if(V(this.codePointAtPos(this.state.pos)))throw this.raise(_.NumberIdentifier,this.state.curPosition());let d=this.input.slice(t,this.state.pos).replace(/[_mn]/g,``);if(a){this.finishToken(136,d);return}if(u){this.finishToken(137,d);return}let f=s?parseInt(d,8):parseFloat(d);this.finishToken(135,f)}readCodePoint(e){let{code:t,pos:n}=pt(this.input,this.state.pos,this.state.lineStart,this.state.curLine,e,this.errorHandlers_readCodePoint);return this.state.pos=n,t}readString(e){let{str:t,pos:n,curLine:r,lineStart:i}=ct(e===34?`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=i,this.state.curLine=r,this.finishToken(134,t)}readTemplateContinuation(){this.match(8)||this.unexpected(null,8),this.state.pos--,this.readTemplateToken()}readTemplateToken(){let e=this.input[this.state.pos],{str:t,firstInvalidLoc:r,pos:i,curLine:a,lineStart:o}=ct(`template`,this.input,this.state.pos+1,this.state.lineStart,this.state.curLine,this.errorHandlers_readStringContents_template);this.state.pos=i+1,this.state.lineStart=o,this.state.curLine=a,r&&(this.state.firstInvalidTemplateEscapePos=new n(r.curLine,r.pos-r.lineStart,this.sourceToOffsetPos(r.pos))),this.input.codePointAt(i)===96?this.finishToken(24,r?null:e+t+"`"):(this.state.pos++,this.finishToken(25,r?null:e+t+"${"))}recordStrictModeErrors(e,t){let n=t.index;this.state.strict&&!this.state.strictErrors.has(n)?this.raise(e,t):this.state.strictErrors.set(n,[e,t])}readWord1(e){this.state.containsEsc=!1;let t=``,n=this.state.pos,r=this.state.pos;for(e!==void 0&&(this.state.pos+=e<=65535?1:2);this.state.pos<this.length;){let e=this.codePointAtPos(this.state.pos);if(H(e))this.state.pos+=e<=65535?1:2;else if(e===92){this.state.containsEsc=!0,t+=this.input.slice(r,this.state.pos);let e=this.state.curPosition(),i=this.state.pos===n?V:H;if(this.input.charCodeAt(++this.state.pos)!==117){this.raise(_.MissingUnicodeEscape,this.state.curPosition()),r=this.state.pos-1;continue}++this.state.pos;let a=this.readCodePoint(!0);a!==null&&(i(a)||this.raise(_.EscapedCharNotAnIdentifier,e),t+=String.fromCodePoint(a)),r=this.state.pos}else break}return t+this.input.slice(r,this.state.pos)}readWord(e){let t=this.readWord1(e),n=se.get(t);n===void 0?this.finishToken(132,t):this.finishToken(n,R(n))}checkKeywordEscapes(){let{type:e}=this.state;ve(e)&&this.state.containsEsc&&this.raise(_.InvalidEscapedReservedWord,this.state.startLoc,{reservedWord:R(e)})}raise(e,t,r={}){let i=e(t instanceof n?t:t.loc.start,r);if(!(this.optionFlags&1024))throw i;return this.isLookahead||this.state.errors.push(i),i}raiseOverwrite(e,t,r={}){let i=t instanceof n?t:t.loc.start,a=i.index,o=this.state.errors;for(let t=o.length-1;t>=0;t--){let n=o[t];if(n.loc.index===a)return o[t]=e(i,r);if(n.loc.index<a)break}return this.raise(e,t,r)}updateContext(e){}unexpected(e,t){throw this.raise(_.UnexpectedToken,e??this.state.startLoc,{expected:t?R(t):null})}expectPlugin(e,t){if(this.hasPlugin(e))return!0;throw this.raise(_.MissingPlugin,t??this.state.startLoc,{missingPlugin:[e]})}expectOnePlugin(e){if(!e.some(e=>this.hasPlugin(e)))throw this.raise(_.MissingOneOfPlugins,this.state.startLoc,{missingPlugin:e})}errorBuilder(e){return(t,n,r)=>{this.raise(e,G(t,n,r))}}},gt=class{constructor(){this.privateNames=new Set,this.loneAccessors=new Map,this.undefinedPrivateNames=new Map}},_t=class{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 gt)}exit(){let e=this.stack.pop(),t=this.current();for(let[n,r]of Array.from(e.undefinedPrivateNames))t?t.undefinedPrivateNames.has(n)||t.undefinedPrivateNames.set(n,r):this.parser.raise(_.InvalidPrivateFieldResolution,r,{identifierName:n})}declarePrivateName(e,t,n){let{privateNames:r,loneAccessors:i,undefinedPrivateNames:a}=this.current(),o=r.has(e);if(t&3){let n=o&&i.get(e);if(n){let r=n&4,a=t&4;o=(n&3)==(t&3)||r!==a,o||i.delete(e)}else o||i.set(e,t)}o&&this.parser.raise(_.PrivateNameRedeclaration,n,{identifierName:e}),r.add(e),a.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(_.InvalidPrivateFieldResolution,t,{identifierName:e})}},vt=class{constructor(e=0){this.type=e}canBeArrowParameterDeclaration(){return this.type===2||this.type===1}isCertainlyParameterDeclaration(){return this.type===3}},yt=class extends vt{constructor(e){super(e),this.declarationErrors=new Map}recordDeclarationError(e,t){let n=t.index;this.declarationErrors.set(n,[e,t])}clearDeclarationError(e){this.declarationErrors.delete(e)}iterateErrors(e){this.declarationErrors.forEach(e)}},bt=class{constructor(e){this.parser=void 0,this.stack=[new vt],this.parser=e}enter(e){this.stack.push(e)}exit(){this.stack.pop()}recordParameterInitializerError(e,t){let n=t.loc.start,{stack:r}=this,i=r.length-1,a=r[i];for(;!a.isCertainlyParameterDeclaration();){if(a.canBeArrowParameterDeclaration())a.recordDeclarationError(e,n);else return;a=r[--i]}this.parser.raise(e,n)}recordArrowParameterBindingError(e,t){let{stack:n}=this,r=n[n.length-1],i=t.loc.start;if(r.isCertainlyParameterDeclaration())this.parser.raise(e,i);else if(r.canBeArrowParameterDeclaration())r.recordDeclarationError(e,i);else return}recordAsyncArrowParametersError(e){let{stack:t}=this,n=t.length-1,r=t[n];for(;r.canBeArrowParameterDeclaration();)r.type===2&&r.recordDeclarationError(_.AwaitBindingIdentifier,e),r=t[--n]}validateAsPattern(){let{stack:e}=this,t=e[e.length-1];t.canBeArrowParameterDeclaration()&&t.iterateErrors(([t,n])=>{this.parser.raise(t,n);let r=e.length-2,i=e[r];for(;i.canBeArrowParameterDeclaration();)i.clearDeclarationError(n.index),i=e[--r]})}};function xt(){return new vt(3)}function St(){return new yt(1)}function Ct(){return new yt(2)}function wt(){return new vt}var Tt=class{constructor(){this.stacks=[]}enter(e){this.stacks.push(e)}exit(){this.stacks.pop()}currentFlags(){return this.stacks[this.stacks.length-1]}get hasAwait(){return(this.currentFlags()&2)>0}get hasYield(){return(this.currentFlags()&1)>0}get hasReturn(){return(this.currentFlags()&4)>0}get hasIn(){return(this.currentFlags()&8)>0}};function q(e,t){return(e?2:0)|!!t}var Et=class extends ht{addExtra(e,t,n,r=!0){if(!e)return;let{extra:i}=e;i??(i={},e.extra=i),r?i[t]=n:Object.defineProperty(i,t,{enumerable:r,value:n})}isContextual(e){return this.state.type===e&&!this.state.containsEsc}isUnparsedContextual(e,t){let n=e+t.length;if(this.input.slice(e,n)===t){let e=this.input.charCodeAt(n);return!(H(e)||(e&64512)==55296)}return!1}isLookaheadContextual(e){let t=this.nextTokenStart();return this.isUnparsedContextual(t,e)}eatContextual(e){return this.isContextual(e)?(this.next(),!0):!1}expectContextual(e,t){if(!this.eatContextual(e)){if(t!=null)throw this.raise(t,this.state.startLoc);this.unexpected(null,e)}}canInsertSemicolon(){return this.match(140)||this.match(8)||this.hasPrecedingLineBreak()}hasPrecedingLineBreak(){return et(this.input,this.offsetToSourcePos(this.state.lastTokEndLoc.index),this.state.start)}hasFollowingLineBreak(){return et(this.input,this.state.end,this.nextTokenStart())}isLineTerminator(){return this.eat(13)||this.canInsertSemicolon()}semicolon(e=!0){(e?this.isLineTerminator():this.eat(13))||this.raise(_.MissingSemicolon,this.state.lastTokEndLoc)}expect(e,t){this.eat(e)||this.unexpected(t,e)}tryParse(e,t=this.state.clone()){let n={node:null};try{let r=e((e=null)=>{throw n.node=e,n});if(this.state.errors.length>t.errors.length){let 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){let 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;let{shorthandAssignLoc:n,doubleProtoLoc:r,privateKeyLoc:i,optionalParametersLoc:a}=e,o=!!n||!!r||!!a||!!i;if(!t)return o;n!=null&&this.raise(_.InvalidCoverInitializedName,n),r!=null&&this.raise(_.DuplicateProto,r),i!=null&&this.raise(_.UnexpectedPrivateField,i),a!=null&&this.unexpected(a)}isLiteralPropertyName(){return pe(this.state.type)}isPrivateName(e){return e.type===`PrivateName`}getPrivateNameSV(e){return e.id.name}hasPropertyAsPrivateName(e){return(e.type===`MemberExpression`||e.type===`OptionalMemberExpression`)&&this.isPrivateName(e.property)}isObjectProperty(e){return e.type===`ObjectProperty`}isObjectMethod(e){return e.type===`ObjectMethod`}initializeScopes(e=this.options.sourceType===`module`){let t=this.state.labels;this.state.labels=[];let n=this.exportedIdentifiers;this.exportedIdentifiers=new Set;let r=this.inModule;this.inModule=e;let i=this.scope,a=this.getScopeHandler();this.scope=new a(this,e);let o=this.prodParam;this.prodParam=new Tt;let s=this.classScope;this.classScope=new _t(this);let c=this.expressionScope;return this.expressionScope=new bt(this),()=>{this.state.labels=t,this.exportedIdentifiers=n,this.inModule=r,this.scope=i,this.prodParam=o,this.classScope=s,this.expressionScope=c}}enterInitialScopes(){let e=0;this.inModule&&(e|=2),this.scope.enter(1),this.prodParam.enter(e)}checkDestructuringPrivate(e){let{privateKeyLoc:t}=e;t!==null&&this.expectPlugin(`destructuringPrivate`,t)}},J=class{constructor(){this.shorthandAssignLoc=null,this.doubleProtoLoc=null,this.privateKeyLoc=null,this.optionalParametersLoc=null}},Y=class{constructor(e,t,n){this.type=``,this.start=t,this.end=0,this.loc=new r(n),(e==null?void 0:e.optionFlags)&64&&(this.range=[t,0]),e!=null&&e.filename&&(this.loc.filename=e.filename)}},Dt=Y.prototype;Dt.__clone=function(){let e=new Y(void 0,this.start,this.loc.start),t=Object.keys(this);for(let n=0,r=t.length;n<r;n++){let r=t[n];r!==`leadingComments`&&r!==`trailingComments`&&r!==`innerComments`&&(e[r]=this[r])}return e};function Ot(e){return X(e)}function X(e){let{type:t,start:n,end:r,loc:i,range:a,extra:o,name:s}=e,c=Object.create(Dt);return c.type=t,c.start=n,c.end=r,c.loc=i,c.range=a,c.extra=o,c.name=s,t===`Placeholder`&&(c.expectedNode=e.expectedNode),c}function kt(e){let{type:t,start:n,end:r,loc:i,range:a,extra:o}=e;if(t===`Placeholder`)return Ot(e);let s=Object.create(Dt);return s.type=t,s.start=n,s.end=r,s.loc=i,s.range=a,e.raw===void 0?s.extra=o:s.raw=e.raw,s.value=e.value,s}var At=class extends Et{startNode(){let e=this.state.startLoc;return new Y(this,e.index,e)}startNodeAt(e){return new Y(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.optionFlags&64&&(e.range[1]=n.index),this.optionFlags&2048&&this.processComment(e),e}resetStartLocation(e,t){e.start=t.index,e.loc.start=t,this.optionFlags&64&&(e.range[0]=t.index)}resetEndLocation(e,t=this.state.lastTokEndLoc){e.end=t.index,e.loc.end=t,this.optionFlags&64&&(e.range[1]=t.index)}resetStartLocationFromNode(e,t){this.resetStartLocation(e,t.loc.start)}},jt=new Set([`_`,`any`,`bool`,`boolean`,`empty`,`extends`,`false`,`interface`,`mixed`,`null`,`number`,`static`,`string`,`true`,`typeof`,`void`]),Z=g`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 Mt(e){return e.type===`DeclareExportAllDeclaration`||e.type===`DeclareExportDeclaration`&&(!e.declaration||e.declaration.type!==`TypeAlias`&&e.declaration.type!==`InterfaceDeclaration`)}function Nt(e){return e.importKind===`type`||e.importKind===`typeof`}var Pt={const:`declare export var`,let:`declare export var`,type:`export type`,interface:`export interface`};function Ft(e,t){let n=[],r=[];for(let i=0;i<e.length;i++)(t(e[i],i,e)?n:r).push(e[i]);return[n,r]}var It=/\*?\s*@((?:no)?flow)\b/,Lt=e=>class extends e{constructor(...e){super(...e),this.flowPragma=void 0}getScopeHandler(){return qe}shouldParseTypes(){return this.getPluginOption(`flow`,`all`)||this.flowPragma===`flow`}finishToken(e,t){e!==134&&e!==13&&e!==28&&this.flowPragma===void 0&&(this.flowPragma=null),super.finishToken(e,t)}addComment(e){if(this.flowPragma===void 0){let t=It.exec(e.value);if(t){if(t[1]===`flow`)this.flowPragma=`flow`;else if(t[1]===`noflow`)this.flowPragma=`noflow`;else throw Error(`Unexpected flow pragma`)}}super.addComment(e)}flowParseTypeInitialiser(e){let t=this.state.inType;this.state.inType=!0,this.expect(e||14);let n=this.flowParseType();return this.state.inType=t,n}flowParsePredicate(){let e=this.startNode(),t=this.state.startLoc;return this.next(),this.expectContextual(110),this.state.lastTokStartLoc.index>t.index+1&&this.raise(Z.UnexpectedSpaceBetweenModuloChecks,t),this.eat(10)?(e.value=super.parseExpression(),this.expect(11),this.finishNode(e,`DeclaredPredicate`)):this.finishNode(e,`InferredPredicate`)}flowParseTypeAndPredicateInitialiser(){let 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();let t=e.id=this.parseIdentifier(),n=this.startNode(),r=this.startNode();n.typeParameters=this.match(47)?this.flowParseTypeParameterDeclaration():null,this.expect(10);let i=this.flowParseFunctionTypeParams();return n.params=i.params,n.rest=i.rest,n.this=i._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(127))return this.match(16)?this.flowParseDeclareModuleExports(e):(t&&this.raise(Z.NestedDeclareModule,this.state.lastTokStartLoc),this.flowParseDeclareModule(e));if(this.isContextual(130))return this.flowParseDeclareTypeAlias(e);if(this.isContextual(131))return this.flowParseDeclareOpaqueType(e);if(this.isContextual(129))return this.flowParseDeclareInterface(e);if(this.match(82))return this.flowParseDeclareExportDeclaration(e,t);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),e.id=this.match(134)?super.parseExprAtom():this.parseIdentifier();let 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(130)&&!this.match(87)&&this.raise(Z.InvalidNonTypeImportInDeclareModule,this.state.lastTokStartLoc),super.parseImport(e)):(this.expectContextual(125,Z.UnsupportedStatementInDeclareModule),e=this.flowParseDeclare(e,!0)),n.push(e)}this.scope.exit(),this.expect(8),this.finishNode(t,`BlockStatement`);let r=null,i=!1;return n.forEach(e=>{Mt(e)?(r===`CommonJS`&&this.raise(Z.AmbiguousDeclareModuleKind,e),r=`ES`):e.type===`DeclareModuleExports`&&(i&&this.raise(Z.DuplicateDeclareModuleExports,e),r===`ES`&&this.raise(Z.AmbiguousDeclareModuleKind,e),r=`CommonJS`,i=!0)}),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(130)||this.isContextual(129))&&!t){let e=this.state.value;throw this.raise(Z.UnsupportedDeclareExportKind,this.state.startLoc,{unsupportedExportKind:e,suggestion:Pt[e]})}if(this.match(74)||this.match(68)||this.match(80)||this.isContextual(131))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,`DeclareExportDeclaration`);if(this.match(55)||this.match(5)||this.isContextual(129)||this.isContextual(130)||this.isContextual(131))return e=this.parseExport(e,null),e.type===`ExportNamedDeclaration`&&(e.type=`ExportDeclaration`,e.default=!1,delete e.exportKind),e.type=`Declare`+e.type,e;this.unexpected()}flowParseDeclareModuleExports(e){return this.next(),this.expectContextual(111),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,`DeclareModuleExports`)}flowParseDeclareTypeAlias(e){this.next();let t=this.flowParseTypeAlias(e);return t.type=`DeclareTypeAlias`,t}flowParseDeclareOpaqueType(e){this.next();let 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),e.typeParameters=this.match(47)?this.flowParseTypeParameterDeclaration():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(117))do e.mixins.push(this.flowParseInterfaceExtends());while(this.eat(12));if(this.eatContextual(113))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(){let e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),e.typeParameters=this.match(47)?this.flowParseTypeParameterInstantiation():null,this.finishNode(e,`InterfaceExtends`)}flowParseInterface(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,`InterfaceDeclaration`)}checkNotUnderscore(e){e===`_`&&this.raise(Z.UnexpectedReservedUnderscore,this.state.startLoc)}checkReservedType(e,t,n){jt.has(e)&&this.raise(n?Z.AssignReservedType:Z.UnexpectedReservedType,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),e.typeParameters=this.match(47)?this.flowParseTypeParameterDeclaration():null,e.right=this.flowParseTypeInitialiser(29),this.semicolon(),this.finishNode(e,`TypeAlias`)}flowParseOpaqueType(e,t){return this.expectContextual(130),e.id=this.flowParseRestrictedIdentifier(!0,!0),this.scope.declareName(e.id.name,8201,e.id.loc.start),e.typeParameters=this.match(47)?this.flowParseTypeParameterDeclaration():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){let t=this.state.startLoc,n=this.startNode(),r=this.flowParseVariance(),i=this.flowParseTypeAnnotatableIdentifier();return n.name=i.name,n.variance=r,n.bound=i.typeAnnotation,this.match(29)?(this.eat(29),n.default=this.flowParseType()):e&&this.raise(Z.MissingTypeParamDefault,t),this.finishNode(n,`TypeParameter`)}flowParseTypeParameterDeclaration(){let e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.match(47)||this.match(143)?this.next():this.unexpected();let n=!1;do{let 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`)}flowInTopLevelContext(e){if(this.curContext()!==x.brace){let t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}else return e()}flowParseTypeParameterInstantiationInExpression(){if(this.reScan_lt()===47)return this.flowParseTypeParameterInstantiation()}flowParseTypeParameterInstantiation(){let e=this.startNode(),t=this.state.inType;return this.state.inType=!0,e.params=[],this.flowInTopLevelContext(()=>{this.expect(47);let t=this.state.noAnonFunctionType;for(this.state.noAnonFunctionType=!1;!this.match(48);)e.params.push(this.flowParseType()),this.match(48)||this.expect(12);this.state.noAnonFunctionType=t}),this.state.inType=t,!this.state.inType&&this.curContext()===x.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(e,`TypeParameterInstantiation`)}flowParseTypeParameterInstantiationCallOrNew(){if(this.reScan_lt()!==47)return;let 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(){let e=this.startNode();if(this.expectContextual(129),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(135)||this.match(134)?super.parseExprAtom():this.parseIdentifier(!0)}flowParseObjectTypeIndexer(e,t,n){return e.static=t,this.lookahead().type===14?(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){let 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:i}){let a=this.state.inType;this.state.inType=!0;let o=this.startNode();o.callProperties=[],o.properties=[],o.indexers=[],o.internalSlots=[];let s,c,l=!1;for(t&&this.match(6)?(this.expect(6),s=9,c=!0):(this.expect(5),s=8,c=!1),o.exact=c;!this.match(s);){let t=!1,a=null,s=null,u=this.startNode();if(r&&this.isContextual(118)){let t=this.lookahead();t.type!==14&&t.type!==17&&(this.next(),a=this.state.startLoc,e=!1)}if(e&&this.isContextual(106)){let e=this.lookahead();e.type!==14&&e.type!==17&&(this.next(),t=!0)}let d=this.flowParseVariance();if(this.eat(0))a!=null&&this.unexpected(a),this.eat(0)?(d&&this.unexpected(d.loc.start),o.internalSlots.push(this.flowParseObjectTypeInternalSlot(u,t))):o.indexers.push(this.flowParseObjectTypeIndexer(u,t,d));else if(this.match(10)||this.match(47))a!=null&&this.unexpected(a),d&&this.unexpected(d.loc.start),o.callProperties.push(this.flowParseObjectTypeCallProperty(u,t));else{let e=`init`;(this.isContextual(99)||this.isContextual(104))&&pe(this.lookahead().type)&&(e=this.state.value,this.next());let r=this.flowParseObjectTypeProperty(u,t,a,d,e,n,i??!c);r===null?(l=!0,s=this.state.lastTokStartLoc):o.properties.push(r)}this.flowObjectTypeSemicolon(),s&&!this.match(8)&&!this.match(9)&&this.raise(Z.UnexpectedExplicitInexactInObject,s)}this.expect(s),n&&(o.inexact=l);let u=this.finishNode(o,`ObjectTypeAnnotation`);return this.state.inType=a,u}flowParseObjectTypeProperty(e,t,n,r,i,a,o){if(this.eat(21))return this.match(12)||this.match(13)||this.match(8)||this.match(9)?(a?o||this.raise(Z.InexactInsideExact,this.state.lastTokStartLoc):this.raise(Z.InexactInsideNonObject,this.state.lastTokStartLoc),r&&this.raise(Z.InexactVariance,r),null):(a||this.raise(Z.UnexpectedSpreadType,this.state.lastTokStartLoc),n!=null&&this.unexpected(n),r&&this.raise(Z.SpreadVariance,r),e.argument=this.flowParseType(),this.finishNode(e,`ObjectTypeSpreadProperty`));{e.key=this.flowParseObjectPropertyKey(),e.static=t,e.proto=n!=null,e.kind=i;let o=!1;return this.match(47)||this.match(10)?(e.method=!0,n!=null&&this.unexpected(n),r&&this.unexpected(r.loc.start),e.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e.loc.start)),(i===`get`||i===`set`)&&this.flowCheckGetterSetterParams(e),!a&&e.key.name===`constructor`&&e.value.this&&this.raise(Z.ThisParamBannedInConstructor,e.value.this)):(i!==`init`&&this.unexpected(),e.method=!1,this.eat(17)&&(o=!0),e.value=this.flowParseTypeInitialiser(),e.variance=r),e.optional=o,this.finishNode(e,`ObjectTypeProperty`)}}flowCheckGetterSetterParams(e){let t=e.kind===`get`?0:1,n=e.value.params.length+ +!!e.value.rest;e.value.this&&this.raise(e.kind===`get`?Z.GetterMayNotHaveThisParam:Z.SetterMayNotHaveThisParam,e.value.this),n!==t&&this.raise(e.kind===`get`?_.BadGetterArity:_.BadSetterArity,e),e.kind===`set`&&e.value.rest&&this.raise(_.BadSetterRestParameter,e)}flowObjectTypeSemicolon(){this.eat(13)||this.eat(12)||this.match(8)||this.match(9)||this.unexpected()}flowParseQualifiedTypeIdentifier(e,t){e??(e=this.state.startLoc);let n=t||this.flowParseRestrictedIdentifier(!0);for(;this.eat(16);){let t=this.startNodeAt(e);t.qualification=n,t.id=this.flowParseRestrictedIdentifier(!0),n=this.finishNode(t,`QualifiedTypeIdentifier`)}return n}flowParseGenericType(e,t){let 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(){let e=this.startNode();return this.expect(87),e.argument=this.flowParsePrimaryType(),this.finishNode(e,`TypeofTypeAnnotation`)}flowParseTupleType(){let 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,i=this.startNode(),a=this.lookahead(),o=this.state.type===78;return a.type===14||a.type===17?(o&&!e&&this.raise(Z.ThisParamMustBeFirst,i),t=this.parseIdentifier(o),this.eat(17)&&(n=!0,o&&this.raise(Z.ThisParamMayNotBeOptional,i)),r=this.flowParseTypeInitialiser()):r=this.flowParseType(),i.name=t,i.optional=n,i.typeAnnotation=r,this.finishNode(i,`FunctionTypeParam`)}reinterpretTypeAsFunctionTypeParam(e){let 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(){let e=this.state.startLoc,t=this.startNode(),n,r,i=!1,a=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=a,r;case 47:{let e=this.startNode();return e.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(10),n=this.flowParseFunctionTypeParams(),e.params=n.params,e.rest=n.rest,e.this=n._this,this.expect(11),this.expect(19),e.returnType=this.flowParseType(),this.finishNode(e,`FunctionTypeAnnotation`)}case 10:{let e=this.startNode();if(this.next(),!this.match(11)&&!this.match(21)){if(P(this.state.type)||this.match(78)){let e=this.lookahead().type;i=e!==17&&e!==14}else i=!0}if(i){if(this.state.noAnonFunctionType=!1,r=this.flowParseType(),this.state.noAnonFunctionType=a,this.state.noAnonFunctionType||!(this.match(12)||this.match(11)&&this.lookahead().type===19))return this.expect(11),r;this.eat(12)}return n=r?this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(r)]):this.flowParseFunctionTypeParams(),e.params=n.params,e.rest=n.rest,e.this=n._this,this.expect(11),this.expect(19),e.returnType=this.flowParseType(),e.typeParameters=null,this.finishNode(e,`FunctionTypeAnnotation`)}case 134: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(135))return this.parseLiteralAtNode(-this.state.value,`NumberLiteralTypeAnnotation`,t);if(this.match(136))return this.parseLiteralAtNode(-this.state.value,`BigIntLiteralTypeAnnotation`,t);throw this.raise(Z.UnexpectedSubtractionOperand,this.state.startLoc)}this.unexpected();return;case 135:return this.parseLiteral(this.state.value,`NumberLiteralTypeAnnotation`);case 136: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(ve(this.state.type)){let e=R(this.state.type);return this.next(),super.createIdentifier(t,e)}if(P(this.state.type))return this.isContextual(129)?this.flowParseInterfaceType():this.flowIdentToTypeAnnotation(e,t,this.parseIdentifier())}this.unexpected()}flowParsePostfixType(){let e=this.state.startLoc,t=this.flowParsePrimaryType(),n=!1;for(;(this.match(0)||this.match(18))&&!this.canInsertSemicolon();){let r=this.startNodeAt(e),i=this.eat(18);n=n||i,this.expect(0),!i&&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=i,t=this.finishNode(r,`OptionalIndexedAccessType`)):t=this.finishNode(r,`IndexedAccessType`))}return t}flowParsePrefixType(){let e=this.startNode();return this.eat(17)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,`NullableTypeAnnotation`)):this.flowParsePostfixType()}flowParseAnonFunctionWithoutParens(){let e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(19)){let 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(){let e=this.startNode();this.eat(45);let t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(45);)e.types.push(this.flowParseAnonFunctionWithoutParens());return e.types.length===1?t:this.finishNode(e,`IntersectionTypeAnnotation`)}flowParseUnionType(){let e=this.startNode();this.eat(43);let t=this.flowParseIntersectionType();for(e.types=[t];this.eat(43);)e.types.push(this.flowParseIntersectionType());return e.types.length===1?t:this.finishNode(e,`UnionTypeAnnotation`)}flowParseType(){let e=this.state.inType;this.state.inType=!0;let t=this.flowParseUnionType();return this.state.inType=e,t}flowParseTypeOrImplicitInstantiation(){if(this.state.type===132&&this.state.value===`_`){let e=this.state.startLoc,t=this.parseIdentifier();return this.flowParseGenericType(e,t)}return this.flowParseType()}flowParseTypeAnnotation(){let e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,`TypeAnnotation`)}flowParseTypeAnnotatableIdentifier(e){let 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)){let 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(129)){if(F(this.lookahead().type)){let e=this.startNode();return this.next(),this.flowParseInterface(e)}}else if(this.isContextual(126)){let e=this.startNode();return this.next(),this.flowParseEnumDeclaration(e)}let t=super.parseStatementLike(e);return this.flowPragma===void 0&&!this.isValidDirective(t)&&(this.flowPragma=null),t}parseExpressionStatement(e,t,n){if(t.type===`Identifier`){if(t.name===`declare`){if(this.match(80)||P(this.state.type)||this.match(68)||this.match(74)||this.match(82))return this.flowParseDeclare(e)}else if(P(this.state.type)){if(t.name===`interface`)return this.flowParseInterface(e);if(t.name===`type`)return this.flowParseTypeAlias(e);if(t.name===`opaque`)return this.flowParseOpaqueType(e,!1)}}return super.parseExpressionStatement(e,t,n)}shouldParseExportDeclaration(){let{type:e}=this.state;return e===126||I(e)?!this.state.containsEsc:super.shouldParseExportDeclaration()}isExportDefaultSpecifier(){let{type:e}=this.state;return e===126||I(e)?this.state.containsEsc:super.isExportDefaultSpecifier()}parseExportDefaultExpression(){if(this.isContextual(126)){let 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){let t=this.lookaheadCharCode();if(t===44||t===61||t===58||t===41)return this.setOptionalParametersError(n),e}this.expect(17);let r=this.state.clone(),i=this.state.noArrowAt,a=this.startNodeAt(t),{consequent:o,failed:s}=this.tryParseConditionalConsequent(),[c,l]=this.getArrowLikeExpressions(o);if(s||l.length>0){let e=[...i];if(l.length>0){this.state=r,this.state.noArrowAt=e;for(let t=0;t<l.length;t++)e.push(l[t].start);({consequent:o,failed:s}=this.tryParseConditionalConsequent()),[c,l]=this.getArrowLikeExpressions(o)}s&&c.length>1&&this.raise(Z.AmbiguousConditionalArrow,r.startLoc),s&&c.length===1&&(this.state=r,e.push(c[0].start),this.state.noArrowAt=e,{consequent:o,failed:s}=this.tryParseConditionalConsequent())}return this.getArrowLikeExpressions(o,!0),this.state.noArrowAt=i,this.expect(14),a.test=e,a.consequent=o,a.alternate=this.forwardNoArrowParamsConversionAt(a,()=>this.parseMaybeAssign(void 0,void 0)),this.finishNode(a,`ConditionalExpression`)}tryParseConditionalConsequent(){this.state.noArrowParamsConversionAt.push(this.state.start);let e=this.parseMaybeAssignAllowIn(),t=!this.match(14);return this.state.noArrowParamsConversionAt.pop(),{consequent:e,failed:t}}getArrowLikeExpressions(e,t){let n=[e],r=[];for(;n.length!==0;){let e=n.pop();e.type===`ArrowFunctionExpression`&&e.body.type!==`BlockStatement`?(e.typeParameters||!e.returnType?this.finishArrowValidation(e):r.push(e),n.push(e.body)):e.type===`ConditionalExpression`&&(n.push(e.consequent),n.push(e.alternate))}return t?(r.forEach(e=>this.finishArrowValidation(e)),[r,[]]):Ft(r,e=>e.params.every(e=>this.isAssignable(e,!0)))}finishArrowValidation(e){var t;this.toAssignableList(e.params,(t=e.extra)==null?void 0:t.trailingCommaLoc,!1),this.scope.enter(6),super.checkParams(e,!1,!0),this.scope.exit()}forwardNoArrowParamsConversionAt(e,t){let n;return this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?(this.state.noArrowParamsConversionAt.push(this.state.start),n=t(),this.state.noArrowParamsConversionAt.pop()):n=t(),n}parseParenItem(e,t){let n=super.parseParenItem(e,t);if(this.eat(17)&&(n.optional=!0,this.resetEndLocation(e)),this.match(14)){let e=this.startNodeAt(t);return e.expression=n,e.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(e,`TypeCastExpression`)}return n}assertModuleNodeAllowed(e){e.type===`ImportDeclaration`&&(e.importKind===`type`||e.importKind===`typeof`)||e.type===`ExportNamedDeclaration`&&e.exportKind===`type`||e.type===`ExportAllDeclaration`&&e.exportKind===`type`||super.assertModuleNodeAllowed(e)}parseExportDeclaration(e){if(this.isContextual(130)){e.exportKind=`type`;let t=this.startNode();return this.next(),this.match(5)?(e.specifiers=this.parseExportSpecifiers(!0),super.parseExportFrom(e),null):this.flowParseTypeAlias(t)}if(this.isContextual(131)){e.exportKind=`type`;let t=this.startNode();return this.next(),this.flowParseOpaqueType(t,!1)}if(this.isContextual(129)){e.exportKind=`type`;let t=this.startNode();return this.next(),this.flowParseInterface(t)}if(this.isContextual(126)){e.exportKind=`value`;let t=this.startNode();return this.next(),this.flowParseEnumDeclaration(t)}return super.parseExportDeclaration(e)}eatExportStar(e){return super.eatExportStar(e)?!0:this.isContextual(130)&&this.lookahead().type===55?(e.exportKind=`type`,this.next(),this.next(),!0):!1}maybeParseExportNamespaceSpecifier(e){let{startLoc:t}=this.state,n=super.maybeParseExportNamespaceSpecifier(e);return n&&e.exportKind===`type`&&this.unexpected(t),n}parseClassId(e,t,n){super.parseClassId(e,t,n),this.match(47)&&(e.typeParameters=this.flowParseTypeParameterDeclaration())}parseClassMember(e,t,n){let{startLoc:r}=this.state;if(this.isContextual(125)){if(super.parseClassMemberFromModifier(e,t))return;t.declare=!0}super.parseClassMember(e,t,n),t.declare&&(t.type!==`ClassProperty`&&t.type!==`ClassPrivateProperty`&&t.type!==`PropertyDefinition`?this.raise(Z.DeclareClassElement,r):t.value&&this.raise(Z.DeclareClassFieldInitializer,t.value))}isIterator(e){return e===`iterator`||e===`asyncIterator`}readIterator(){let e=super.readWord1(),t=`@@`+e;this.isIterator(e)&&this.state.inType||this.raise(_.InvalidIdentifier,this.state.curPosition(),{identifierName:t}),this.finishToken(132,t)}getTokenFromCode(e){let t=this.input.charCodeAt(this.state.pos+1);e===123&&t===124?this.finishOp(6,2):this.state.inType&&(e===62||e===60)?this.finishOp(e===62?48:47,1):this.state.inType&&e===63?t===46?this.finishOp(18,2):this.finishOp(17,1):Ve(e,t,this.input.charCodeAt(this.state.pos+2))?(this.state.pos+=2,this.readIterator()):super.getTokenFromCode(e)}isAssignable(e,t){return e.type===`TypeCastExpression`?this.isAssignable(e.expression,t):super.isAssignable(e,t)}toAssignable(e,t=!1){!t&&e.type===`AssignmentExpression`&&e.left.type===`TypeCastExpression`&&(e.left=this.typeCastToParameter(e.left)),super.toAssignable(e,t)}toAssignableList(e,t,n){for(let t=0;t<e.length;t++){let n=e[t];(n==null?void 0:n.type)===`TypeCastExpression`&&(e[t]=this.typeCastToParameter(n))}super.toAssignableList(e,t,n)}toReferencedList(e,t){for(let r=0;r<e.length;r++){var n;let i=e[r];i&&i.type===`TypeCastExpression`&&!((n=i.extra)!=null&&n.parenthesized)&&(e.length>1||!t)&&this.raise(Z.TypeCastInPattern,i.typeAnnotation)}return e}parseArrayLike(e,t,n,r){let i=super.parseArrayLike(e,t,n,r);return t&&!this.state.maybeInArrowParameters&&this.toReferencedList(i.elements),i}isValidLVal(e,t,n){return e===`TypeCastExpression`||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,i,a){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,i,a),t.params&&i){let e=t.params;e.length>0&&this.isThisParam(e[0])&&this.raise(Z.ThisParamBannedInConstructor,t)}else if(t.type===`MethodDefinition`&&i&&t.value.params){let e=t.value.params;e.length>0&&this.isThisParam(e[0])&&this.raise(Z.ThisParamBannedInConstructor,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)||this.match(51))&&(e.superTypeParameters=this.flowParseTypeParameterInstantiationInExpression()),this.isContextual(113)){this.next();let t=e.implements=[];do{let e=this.startNode();e.id=this.flowParseRestrictedIdentifier(!0),e.typeParameters=this.match(47)?this.flowParseTypeParameterInstantiation():null,t.push(this.finishNode(e,`ClassImplements`))}while(this.eat(12))}}checkGetterSetterParams(e){super.checkGetterSetterParams(e);let t=this.getObjectOrClassMethodParams(e);if(t.length>0){let n=t[0];this.isThisParam(n)&&e.kind===`get`?this.raise(Z.GetterMayNotHaveThisParam,n):this.isThisParam(n)&&this.raise(Z.SetterMayNotHaveThisParam,n)}}parsePropertyNamePrefixOperator(e){e.variance=this.flowParseVariance()}parseObjPropValue(e,t,n,r,i,a,o){e.variance&&this.unexpected(e.variance.loc.start),delete e.variance;let s;this.match(47)&&!a&&(s=this.flowParseTypeParameterDeclaration(),this.match(10)||this.unexpected());let c=super.parseObjPropValue(e,t,n,r,i,a,o);return s&&((c.value||c).typeParameters=s),c}parseFunctionParamType(e){return this.eat(17)&&(e.type!==`Identifier`&&this.raise(Z.PatternIsOptional,e),this.isThisParam(e)&&this.raise(Z.ThisParamMayNotBeOptional,e),e.optional=!0),this.match(14)?e.typeAnnotation=this.flowParseTypeAnnotation():this.isThisParam(e)&&this.raise(Z.ThisParamAnnotationRequired,e),this.match(29)&&this.isThisParam(e)&&this.raise(Z.ThisParamNoDefault,e),this.resetEndLocation(e),e}parseMaybeDefault(e,t){let n=super.parseMaybeDefault(e,t);return n.type===`AssignmentPattern`&&n.typeAnnotation&&n.right.start<n.typeAnnotation.start&&this.raise(Z.TypeBeforeInitializer,n.typeAnnotation),n}checkImportReflection(e){super.checkImportReflection(e),e.module&&e.importKind!==`value`&&this.raise(Z.ImportReflectionHasImportType,e.specifiers[0].loc.start)}parseImportSpecifierLocal(e,t,n){t.local=Nt(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(130)){if(!e)return!0;let t=this.lookaheadCharCode();return t===123||t===42}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=n===`type`?n:`value`}else n===`type`&&this.match(55)&&this.unexpected(),e.importKind=n===`type`||n===`typeof`?n:`value`}parseImportSpecifier(e,t,n,r,i){let a=e.imported,o=null;a.type===`Identifier`&&(a.name===`type`?o=`type`:a.name===`typeof`&&(o=`typeof`));let s=!1;if(this.isContextual(93)&&!this.isLookaheadContextual(`as`)){let t=this.parseIdentifier(!0);o!==null&&!F(this.state.type)?(e.imported=t,e.importKind=o,e.local=X(t)):(e.imported=a,e.importKind=null,e.local=this.parseIdentifier())}else{if(o!==null&&F(this.state.type))e.imported=this.parseIdentifier(!0),e.importKind=o;else{if(t)throw this.raise(_.ImportBindingIsString,e,{importName:a.value});e.imported=a,e.importKind=null}this.eatContextual(93)?e.local=this.parseIdentifier():(s=!0,e.local=X(e.imported))}let c=Nt(e);return n&&c&&this.raise(Z.ImportTypeShorthandOnlyInPureImport,e),(n||c)&&this.checkReservedType(e.local.name,e.local.loc.start,!0),s&&!n&&!c&&this.checkReservedWord(e.local.name,e.loc.start,!0,!0),this.finishImportSpecifier(e,`ImportSpecifier`)}parseBindingAtom(){switch(this.state.type){case 78:return this.parseIdentifier(!0);default:return super.parseBindingAtom()}}parseFunctionParams(e,t){let n=e.kind;n!==`get`&&n!==`set`&&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)){let 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=null,i;if(this.hasPlugin(`jsx`)&&(this.match(143)||this.match(47))){if(r=this.state.clone(),i=this.tryParse(()=>super.parseMaybeAssign(e,t),r),!i.error)return i.node;let{context:n}=this.state,a=n[n.length-1];(a===x.j_oTag||a===x.j_expr)&&n.pop()}if((n=i)!=null&&n.error||this.match(47)){var a,o;r=r||this.state.clone();let n,s=this.tryParse(r=>{var i;n=this.flowParseTypeParameterDeclaration();let a=this.forwardNoArrowParamsConversionAt(n,()=>{let r=super.parseMaybeAssign(e,t);return this.resetStartLocationFromNode(r,n),r});(i=a.extra)!=null&&i.parenthesized&&r();let o=this.maybeUnwrapTypeCastExpression(a);return o.type!==`ArrowFunctionExpression`&&r(),o.typeParameters=n,this.resetStartLocationFromNode(o,n),a},r),c=null;if(s.node&&this.maybeUnwrapTypeCastExpression(s.node).type===`ArrowFunctionExpression`){if(!s.error&&!s.aborted)return s.node.async&&this.raise(Z.UnexpectedTypeParameterBeforeAsyncArrowFunction,n),s.node;c=s.node}if((a=i)!=null&&a.node)return this.state=i.failState,i.node;if(c)return this.state=s.failState,c;throw(o=i)!=null&&o.thrown?i.error:s.thrown?s.error:this.raise(Z.UnexpectedTokenAfterTypeParameter,n)}return super.parseMaybeAssign(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse(()=>{let t=this.state.noAnonFunctionType;this.state.noAnonFunctionType=!0;let 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){this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start))?e.params=t:super.setArrowFunctionParameters(e,t)}checkParams(e,t,n,r=!0){if(!(n&&this.state.noArrowParamsConversionAt.includes(this.offsetToSourcePos(e.start)))){for(let t=0;t<e.params.length;t++)this.isThisParam(e.params[t])&&t>0&&this.raise(Z.ThisParamMustBeFirst,e.params[t]);super.checkParams(e,t,n,r)}}parseParenAndDistinguishExpression(e){return super.parseParenAndDistinguishExpression(e&&!this.state.noArrowAt.includes(this.sourceToOffsetPos(this.state.start)))}parseSubscripts(e,t,n){if(e.type===`Identifier`&&e.name===`async`&&this.state.noArrowAt.includes(t.index)){this.next();let n=this.startNodeAt(t);n.callee=e,n.arguments=super.parseCallExpressionArguments(11),e=this.finishNode(n,`CallExpression`)}else if(e.type===`Identifier`&&e.name===`async`&&this.match(47)){let r=this.state.clone(),i=this.tryParse(e=>this.parseAsyncArrowWithTypeParameters(t)||e(),r);if(!i.error&&!i.aborted)return i.node;let a=this.tryParse(()=>super.parseSubscripts(e,t,n),r);if(a.node&&!a.error)return a.node;if(i.node)return this.state=i.failState,i.node;if(a.node)return this.state=a.failState,a.node;throw i.error||a.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();let i=this.startNodeAt(t);return i.callee=e,i.typeArguments=this.flowParseTypeParameterInstantiationInExpression(),this.expect(10),i.arguments=this.parseCallExpressionArguments(11),i.optional=!0,this.finishCallExpression(i,!0)}if(!n&&this.shouldParseTypes()&&(this.match(47)||this.match(51))){let n=this.startNodeAt(t);n.callee=e;let i=this.tryParse(()=>(n.typeArguments=this.flowParseTypeParameterInstantiationCallOrNew(),this.expect(10),n.arguments=super.parseCallExpressionArguments(11),r.optionalChainMember&&(n.optional=!1),this.finishCallExpression(n,r.optionalChainMember)));if(i.node)return i.error&&(this.state=i.failState),i.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){let t=this.startNodeAt(e);if(this.parseFunctionParams(t,!1),this.parseArrow(t))return super.parseArrowExpression(t,void 0,!0)}readToken_mult_modulo(e){let t=this.input.charCodeAt(this.state.pos+1);e===42&&t===47&&this.state.hasFlowComment?(this.state.hasFlowComment=!1,this.state.pos+=2,this.nextToken()):super.readToken_mult_modulo(e)}readToken_pipe_amp(e){let t=this.input.charCodeAt(this.state.pos+1);e===124&&t===125?this.finishOp(9,2):super.readToken_pipe_amp(e)}parseTopLevel(e,t){let n=super.parseTopLevel(e,t);return this.state.hasFlowComment&&this.raise(Z.UnterminatedFlowComment,this.state.curPosition()),n}skipBlockComment(){if(this.hasPlugin(`flowComments`)&&this.skipFlowComment()){if(this.state.hasFlowComment)throw this.raise(Z.NestedFlowComment,this.state.startLoc);this.hasFlowCommentCompletion();let e=this.skipFlowComment();e&&(this.state.pos+=e,this.state.hasFlowComment=!0)}else return super.skipBlockComment(this.state.hasFlowComment?`*-/`:`*/`)}skipFlowComment(){let{pos:e}=this.state,t=2;for(;[32,9].includes(this.input.charCodeAt(e+t));)t++;let n=this.input.charCodeAt(t+e),r=this.input.charCodeAt(t+e+1);return n===58&&r===58?t+2:this.input.slice(t+e,t+e+12)===`flow-include`?t+12:n===58&&r!==58&&t}hasFlowCommentCompletion(){if(this.input.indexOf(`*/`,this.state.pos)===-1)throw this.raise(_.UnterminatedComment,this.state.curPosition())}flowEnumErrorBooleanMemberNotInitialized(e,{enumName:t,memberName:n}){this.raise(Z.EnumBooleanMemberNotInitialized,e,{memberName:n,enumName:t})}flowEnumErrorInvalidMemberInitializer(e,t){return this.raise(t.explicitType?t.explicitType===`symbol`?Z.EnumInvalidMemberInitializerSymbolType:Z.EnumInvalidMemberInitializerPrimaryType:Z.EnumInvalidMemberInitializerUnknownType,e,t)}flowEnumErrorNumberMemberNotInitialized(e,t){this.raise(Z.EnumNumberMemberNotInitialized,e,t)}flowEnumErrorStringMemberInconsistentlyInitialized(e,t){this.raise(Z.EnumStringMemberInconsistentlyInitialized,e,t)}flowEnumMemberInit(){let e=this.state.startLoc,t=()=>this.match(12)||this.match(8);switch(this.state.type){case 135:{let n=this.parseNumericLiteral(this.state.value);return t()?{type:`number`,loc:n.loc.start,value:n}:{type:`invalid`,loc:e}}case 134:{let n=this.parseStringLiteral(this.state.value);return t()?{type:`string`,loc:n.loc.start,value:n}:{type:`invalid`,loc:e}}case 85:case 86:{let 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(){let e=this.state.startLoc;return{id:this.parseIdentifier(!0),init:this.eat(29)?this.flowEnumMemberInit():{type:`none`,loc:e}}}flowEnumCheckExplicitTypeMismatch(e,t,n){let{explicitType:r}=t;r!==null&&r!==n&&this.flowEnumErrorInvalidMemberInitializer(e,t)}flowEnumMembers({enumName:e,explicitType:t}){let n=new Set,r={booleanMembers:[],numberMembers:[],stringMembers:[],defaultedMembers:[]},i=!1;for(;!this.match(8);){if(this.eat(21)){i=!0;break}let a=this.startNode(),{id:o,init:s}=this.flowEnumMemberRaw(),c=o.name;if(c===``)continue;/^[a-z]/.test(c)&&this.raise(Z.EnumInvalidMemberName,o,{memberName:c,suggestion:c[0].toUpperCase()+c.slice(1),enumName:e}),n.has(c)&&this.raise(Z.EnumDuplicateMemberName,o,{memberName:c,enumName:e}),n.add(c);let l={enumName:e,explicitType:t,memberName:c};switch(a.id=o,s.type){case`boolean`:this.flowEnumCheckExplicitTypeMismatch(s.loc,l,`boolean`),a.init=s.value,r.booleanMembers.push(this.finishNode(a,`EnumBooleanMember`));break;case`number`:this.flowEnumCheckExplicitTypeMismatch(s.loc,l,`number`),a.init=s.value,r.numberMembers.push(this.finishNode(a,`EnumNumberMember`));break;case`string`:this.flowEnumCheckExplicitTypeMismatch(s.loc,l,`string`),a.init=s.value,r.stringMembers.push(this.finishNode(a,`EnumStringMember`));break;case`invalid`:throw this.flowEnumErrorInvalidMemberInitializer(s.loc,l);case`none`:switch(t){case`boolean`:this.flowEnumErrorBooleanMemberNotInitialized(s.loc,l);break;case`number`:this.flowEnumErrorNumberMemberNotInitialized(s.loc,l);break;default:r.defaultedMembers.push(this.finishNode(a,`EnumDefaultedMember`))}}this.match(8)||this.expect(12)}return{members:r,hasUnknownMembers:i}}flowEnumStringMembers(e,t,{enumName:n}){if(e.length===0)return t;if(t.length===0)return e;if(t.length>e.length){for(let t of e)this.flowEnumErrorStringMemberInconsistentlyInitialized(t,{enumName:n});return t}for(let e of t)this.flowEnumErrorStringMemberInconsistentlyInitialized(e,{enumName:n});return e}flowEnumParseExplicitType({enumName:e}){if(!this.eatContextual(102))return null;if(!P(this.state.type))throw this.raise(Z.EnumInvalidExplicitTypeUnknownSupplied,this.state.startLoc,{enumName:e});let{value:t}=this.state;return this.next(),t!==`boolean`&&t!==`number`&&t!==`string`&&t!==`symbol`&&this.raise(Z.EnumInvalidExplicitType,this.state.startLoc,{enumName:e,invalidEnumType:t}),t}flowEnumBody(e,t){let n=t.name,r=t.loc.start,i=this.flowEnumParseExplicitType({enumName:n});this.expect(5);let{members:a,hasUnknownMembers:o}=this.flowEnumMembers({enumName:n,explicitType:i});switch(e.hasUnknownMembers=o,i){case`boolean`:return e.explicitType=!0,e.members=a.booleanMembers,this.expect(8),this.finishNode(e,`EnumBooleanBody`);case`number`:return e.explicitType=!0,e.members=a.numberMembers,this.expect(8),this.finishNode(e,`EnumNumberBody`);case`string`:return e.explicitType=!0,e.members=this.flowEnumStringMembers(a.stringMembers,a.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,`EnumStringBody`);case`symbol`:return e.members=a.defaultedMembers,this.expect(8),this.finishNode(e,`EnumSymbolBody`);default:{let t=()=>(e.members=[],this.expect(8),this.finishNode(e,`EnumStringBody`));e.explicitType=!1;let i=a.booleanMembers.length,o=a.numberMembers.length,s=a.stringMembers.length,c=a.defaultedMembers.length;if(!i&&!o&&!s&&!c)return t();if(!i&&!o)return e.members=this.flowEnumStringMembers(a.stringMembers,a.defaultedMembers,{enumName:n}),this.expect(8),this.finishNode(e,`EnumStringBody`);if(!o&&!s&&i>=c){for(let e of a.defaultedMembers)this.flowEnumErrorBooleanMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=a.booleanMembers,this.expect(8),this.finishNode(e,`EnumBooleanBody`)}if(!i&&!s&&o>=c){for(let e of a.defaultedMembers)this.flowEnumErrorNumberMemberNotInitialized(e.loc.start,{enumName:n,memberName:e.id.name});return e.members=a.numberMembers,this.expect(8),this.finishNode(e,`EnumNumberBody`)}return this.raise(Z.EnumInconsistentMemberValues,r,{enumName:n}),t()}}}flowParseEnumDeclaration(e){let t=this.parseIdentifier();return e.id=t,e.body=this.flowEnumBody(this.startNode(),t),this.finishNode(e,`EnumDeclaration`)}jsxParseOpeningElementAfterName(e){return this.shouldParseTypes()&&(this.match(47)||this.match(51))&&(e.typeArguments=this.flowParseTypeParameterInstantiationInExpression()),super.jsxParseOpeningElementAfterName(e)}isLookaheadToken_lt(){let e=this.nextTokenStart();if(this.input.charCodeAt(e)===60){let t=this.input.charCodeAt(e+1);return t!==60&&t!==61}return!1}reScan_lt_gt(){let{type:e}=this.state;e===47?(--this.state.pos,this.readToken_lt()):e===48&&(--this.state.pos,this.readToken_gt())}reScan_lt(){let{type:e}=this.state;return e===51?(this.state.pos-=2,this.finishOp(47,1),47):e}maybeUnwrapTypeCastExpression(e){return e.type===`TypeCastExpression`?e.expression:e}},Rt={__proto__:null,quot:`"`,amp:`&`,apos:`'`,lt:`<`,gt:`>`,nbsp:`\xA0`,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:`♦`},zt=g`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 Q(e){return e?e.type===`JSXOpeningFragment`||e.type===`JSXClosingFragment`:!1}function Bt(e){if(e.type===`JSXIdentifier`)return e.name;if(e.type===`JSXNamespacedName`)return e.namespace.name+`:`+e.name.name;if(e.type===`JSXMemberExpression`)return Bt(e.object)+`.`+Bt(e.property);throw Error(`Node had unexpected type: `+e.type)}var Vt=e=>class extends e{jsxReadToken(){let e=``,t=this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(zt.UnterminatedJsxContent,this.state.startLoc);let n=this.input.charCodeAt(this.state.pos);switch(n){case 60:case 123:if(this.state.pos===this.state.start){n===60&&this.state.canStartJSXElement?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(n);return}e+=this.input.slice(t,this.state.pos),this.finishToken(142,e);return;case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;default:W(n)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}}jsxReadNewLine(e){let t=this.input.charCodeAt(this.state.pos),n;return++this.state.pos,t===13&&this.input.charCodeAt(this.state.pos)===10?(++this.state.pos,n=e?`
|
|
141
139
|
`:`\r
|
|
142
|
-
`):i=String.fromCharCode(s),++this.state.curLine,this.state.lineStart=this.state.pos,i}jsxReadString(r){let s="",i=++this.state.pos;for(;;){if(this.state.pos>=this.length)throw this.raise(x.UnterminatedString,this.state.startLoc);const a=this.input.charCodeAt(this.state.pos);if(a===r)break;a===38?(s+=this.input.slice(i,this.state.pos),s+=this.jsxReadEntity(),i=this.state.pos):Xe(a)?(s+=this.input.slice(i,this.state.pos),s+=this.jsxReadNewLine(!1),i=this.state.pos):++this.state.pos}s+=this.input.slice(i,this.state.pos++),this.finishToken(134,s)}jsxReadEntity(){const r=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let s=10;this.codePointAtPos(this.state.pos)===120&&(s=16,++this.state.pos);const i=this.readInt(s,void 0,!1,"bail");if(i!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(i)}else{let s=0,i=!1;for(;s++<10&&this.state.pos<this.length&&!(i=this.codePointAtPos(this.state.pos)===59);)++this.state.pos;if(i){const a=this.input.slice(r,this.state.pos),n=Lo[a];if(++this.state.pos,n)return n}}return this.state.pos=r,"&"}jsxReadWord(){let r;const s=this.state.pos;do r=this.input.charCodeAt(++this.state.pos);while(Ye(r)||r===45);this.finishToken(141,this.input.slice(s,this.state.pos))}jsxParseIdentifier(){const r=this.startNode();return this.match(141)?r.name=this.state.value:Jr(this.state.type)?r.name=Oe(this.state.type):this.unexpected(),this.next(),this.finishNode(r,"JSXIdentifier")}jsxParseNamespacedName(){const r=this.state.startLoc,s=this.jsxParseIdentifier();if(!this.eat(14))return s;const i=this.startNodeAt(r);return i.namespace=s,i.name=this.jsxParseIdentifier(),this.finishNode(i,"JSXNamespacedName")}jsxParseElementName(){const r=this.state.startLoc;let s=this.jsxParseNamespacedName();if(s.type==="JSXNamespacedName")return s;for(;this.eat(16);){const i=this.startNodeAt(r);i.object=s,i.property=this.jsxParseIdentifier(),s=this.finishNode(i,"JSXMemberExpression")}return s}jsxParseAttributeValue(){let r;switch(this.state.type){case 5:return r=this.startNode(),this.setContext(W.brace),this.next(),r=this.jsxParseExpressionContainer(r,W.j_oTag),r.expression.type==="JSXEmptyExpression"&&this.raise(Le.AttributeIsEmpty,r),r;case 143:case 134:return this.parseExprAtom();default:throw this.raise(Le.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){const r=this.startNodeAt(this.state.lastTokEndLoc);return this.finishNodeAt(r,"JSXEmptyExpression",this.state.startLoc)}jsxParseSpreadChild(r){return this.next(),r.expression=this.parseExpression(),this.setContext(W.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(r,"JSXSpreadChild")}jsxParseExpressionContainer(r,s){if(this.match(8))r.expression=this.jsxParseEmptyExpression();else{const i=this.parseExpression();r.expression=i}return this.setContext(s),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(r,"JSXExpressionContainer")}jsxParseAttribute(){const r=this.startNode();return this.match(5)?(this.setContext(W.brace),this.next(),this.expect(21),r.argument=this.parseMaybeAssignAllowIn(),this.setContext(W.j_oTag),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(r,"JSXSpreadAttribute")):(r.name=this.jsxParseNamespacedName(),r.value=this.eat(29)?this.jsxParseAttributeValue():null,this.finishNode(r,"JSXAttribute"))}jsxParseOpeningElementAt(r){const s=this.startNodeAt(r);return this.eat(144)?this.finishNode(s,"JSXOpeningFragment"):(s.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(s))}jsxParseOpeningElementAfterName(r){const s=[];for(;!this.match(56)&&!this.match(144);)s.push(this.jsxParseAttribute());return r.attributes=s,r.selfClosing=this.eat(56),this.expect(144),this.finishNode(r,"JSXOpeningElement")}jsxParseClosingElementAt(r){const s=this.startNodeAt(r);return this.eat(144)?this.finishNode(s,"JSXClosingFragment"):(s.name=this.jsxParseElementName(),this.expect(144),this.finishNode(s,"JSXClosingElement"))}jsxParseElementAt(r){const s=this.startNodeAt(r),i=[],a=this.jsxParseOpeningElementAt(r);let n=null;if(!a.selfClosing){e:for(;;)switch(this.state.type){case 143:if(r=this.state.startLoc,this.next(),this.eat(56)){n=this.jsxParseClosingElementAt(r);break e}i.push(this.jsxParseElementAt(r));break;case 142:i.push(this.parseLiteral(this.state.value,"JSXText"));break;case 5:{const o=this.startNode();this.setContext(W.brace),this.next(),this.match(21)?i.push(this.jsxParseSpreadChild(o)):i.push(this.jsxParseExpressionContainer(o,W.j_expr));break}default:this.unexpected()}Ce(a)&&!Ce(n)&&n!==null?this.raise(Le.MissingClosingTagFragment,n):!Ce(a)&&Ce(n)?this.raise(Le.MissingClosingTagElement,n,{openingTagName:Ve(a.name)}):!Ce(a)&&!Ce(n)&&Ve(n.name)!==Ve(a.name)&&this.raise(Le.MissingClosingTagElement,n,{openingTagName:Ve(a.name)})}if(Ce(a)?(s.openingFragment=a,s.closingFragment=n):(s.openingElement=a,s.closingElement=n),s.children=i,this.match(47))throw this.raise(Le.UnwrappedAdjacentJSXElements,this.state.startLoc);return Ce(a)?this.finishNode(s,"JSXFragment"):this.finishNode(s,"JSXElement")}jsxParseElement(){const r=this.state.startLoc;return this.next(),this.jsxParseElementAt(r)}setContext(r){const{context:s}=this.state;s[s.length-1]=r}parseExprAtom(r){return this.match(143)?this.jsxParseElement():this.match(47)&&this.input.charCodeAt(this.state.pos)!==33?(this.replaceToken(143),this.jsxParseElement()):super.parseExprAtom(r)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(r){const s=this.curContext();if(s===W.j_expr){this.jsxReadToken();return}if(s===W.j_oTag||s===W.j_cTag){if(be(r)){this.jsxReadWord();return}if(r===62){++this.state.pos,this.finishToken(144);return}if((r===34||r===39)&&s===W.j_oTag){this.jsxReadString(r);return}}if(r===60&&this.state.canStartJSXElement&&this.input.charCodeAt(this.state.pos+1)!==33){++this.state.pos,this.finishToken(143);return}super.getTokenFromCode(r)}updateContext(r){const{context:s,type:i}=this.state;if(i===56&&r===143)s.splice(-2,2,W.j_cTag),this.state.canStartJSXElement=!1;else if(i===143)s.push(W.j_oTag);else if(i===144){const a=s[s.length-1];a===W.j_oTag&&r===56||a===W.j_cTag?(s.pop(),this.state.canStartJSXElement=s[s.length-1]===W.j_expr):(this.setContext(W.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=Fn(i)}};class Mo extends Hr{constructor(...e){super(...e),this.tsNames=new Map}}class _o extends zr{constructor(...e){super(...e),this.importsStack=[]}createScope(e){return this.importsStack.push(new Set),new Mo(e)}enter(e){e===256&&this.importsStack.push(new Set),super.enter(e)}exit(){const e=super.exit();return e===256&&this.importsStack.pop(),e}hasImport(e,r){const s=this.importsStack.length;if(this.importsStack[s-1].has(e))return!0;if(!r&&s>1){for(let i=0;i<s-1;i++)if(this.importsStack[i].has(e))return!0}return!1}declareName(e,r,s){if(r&4096){this.hasImport(e,!0)&&this.parser.raise(x.VarRedeclaration,s,{identifierName:e}),this.importsStack[this.importsStack.length-1].add(e);return}const i=this.currentScope();let a=i.tsNames.get(e)||0;if(r&1024){this.maybeExportDefined(i,e),i.tsNames.set(e,a|16);return}super.declareName(e,r,s),r&2&&(r&1||(this.checkRedeclarationInScope(i,e,r,s),this.maybeExportDefined(i,e)),a=a|1),r&256&&(a=a|2),r&512&&(a=a|4),r&128&&(a=a|8),a&&i.tsNames.set(e,a)}isRedeclaredInScope(e,r,s){const i=e.tsNames.get(r);if((i&2)>0){if(s&256){const a=!!(s&512),n=(i&4)>0;return a!==n}return!0}return s&128&&(i&8)>0?e.names.get(r)&2?!!(s&1):!1:s&2&&(i&1)>0?!0:super.isRedeclaredInScope(e,r,s)}checkLocalExport(e){const{name:r}=e;if(this.hasImport(r))return;const s=this.scopeStack.length;for(let i=s-1;i>=0;i--){const n=this.scopeStack[i].tsNames.get(r);if((n&1)>0||(n&16)>0)return}super.checkLocalExport(e)}}const Gi=t=>t.type==="ParenthesizedExpression"?Gi(t.expression):t;class Bo extends Io{toAssignable(e,r=!1){var s,i;let a;switch((e.type==="ParenthesizedExpression"||(s=e.extra)!=null&&s.parenthesized)&&(a=Gi(e),r?a.type==="Identifier"?this.expressionScope.recordArrowParameterBindingError(x.InvalidParenthesizedAssignment,e):a.type!=="MemberExpression"&&!this.isOptionalMemberExpression(a)&&this.raise(x.InvalidParenthesizedAssignment,e):this.raise(x.InvalidParenthesizedAssignment,e)),e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":break;case"ObjectExpression":e.type="ObjectPattern";for(let o=0,u=e.properties.length,p=u-1;o<u;o++){var n;const h=e.properties[o],E=o===p;this.toAssignableObjectExpressionProp(h,E,r),E&&h.type==="RestElement"&&(n=e.extra)!=null&&n.trailingCommaLoc&&this.raise(x.RestTrailingComma,e.extra.trailingCommaLoc)}break;case"ObjectProperty":{const{key:o,value:u}=e;this.isPrivateName(o)&&this.classScope.usePrivateName(this.getPrivateNameSV(o),o.loc.start),this.toAssignable(u,r);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,(i=e.extra)==null?void 0:i.trailingCommaLoc,r);break;case"AssignmentExpression":e.operator!=="="&&this.raise(x.MissingEqInAssignment,e.left.loc.end),e.type="AssignmentPattern",delete e.operator,this.toAssignable(e.left,r);break;case"ParenthesizedExpression":this.toAssignable(a,r);break}}toAssignableObjectExpressionProp(e,r,s){if(e.type==="ObjectMethod")this.raise(e.kind==="get"||e.kind==="set"?x.PatternHasAccessor:x.PatternHasMethod,e.key);else if(e.type==="SpreadElement"){e.type="RestElement";const i=e.argument;this.checkToRestConversion(i,!1),this.toAssignable(i,s),r||this.raise(x.RestTrailingComma,e)}else this.toAssignable(e,s)}toAssignableList(e,r,s){const i=e.length-1;for(let a=0;a<=i;a++){const n=e[a];if(n){if(n.type==="SpreadElement"){n.type="RestElement";const o=n.argument;this.checkToRestConversion(o,!0),this.toAssignable(o,s)}else this.toAssignable(n,s);n.type==="RestElement"&&(a<i?this.raise(x.RestTrailingComma,n):r&&this.raise(x.RestTrailingComma,r))}}}isAssignable(e,r){switch(e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":case"RestElement":return!0;case"ObjectExpression":{const s=e.properties.length-1;return e.properties.every((i,a)=>i.type!=="ObjectMethod"&&(a===s||i.type!=="SpreadElement")&&this.isAssignable(i))}case"ObjectProperty":return this.isAssignable(e.value);case"SpreadElement":return this.isAssignable(e.argument);case"ArrayExpression":return e.elements.every(s=>s===null||this.isAssignable(s));case"AssignmentExpression":return e.operator==="=";case"ParenthesizedExpression":return this.isAssignable(e.expression);case"MemberExpression":case"OptionalMemberExpression":return!r;default:return!1}}toReferencedList(e,r){return e}toReferencedListDeep(e,r){this.toReferencedList(e,r);for(const s of e)(s==null?void 0:s.type)==="ArrayExpression"&&this.toReferencedListDeep(s.elements)}parseSpread(e){const r=this.startNode();return this.next(),r.argument=this.parseMaybeAssignAllowIn(e,void 0),this.finishNode(r,"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,r,s){const i=s&1,a=[];let n=!0;for(;!this.eat(e);)if(n?n=!1:this.expect(12),i&&this.match(12))a.push(null);else{if(this.eat(e))break;if(this.match(21)){let o=this.parseRestBinding();if((this.hasPlugin("flow")||s&2)&&(o=this.parseFunctionParamType(o)),a.push(o),!this.checkCommaAfterRest(r)){this.expect(e);break}}else{const o=[];for(this.match(26)&&this.hasPlugin("decorators")&&this.raise(x.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)o.push(this.parseDecorator());a.push(this.parseAssignableListItem(s,o))}}return a}parseBindingRestProperty(e){return this.next(),e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,"RestElement")}parseBindingProperty(){const{type:e,startLoc:r}=this.state;if(e===21)return this.parseBindingRestProperty(this.startNode());const s=this.startNode();return e===139?(this.expectPlugin("destructuringPrivate",r),this.classScope.usePrivateName(this.state.value,r),s.key=this.parsePrivateName()):this.parsePropertyName(s),s.method=!1,this.parseObjPropValue(s,r,!1,!1,!0,!1)}parseAssignableListItem(e,r){const s=this.parseMaybeDefault();(this.hasPlugin("flow")||e&2)&&this.parseFunctionParamType(s);const i=this.parseMaybeDefault(s.loc.start,s);return r.length&&(s.decorators=r),i}parseFunctionParamType(e){return e}parseMaybeDefault(e,r){var s,i;if((s=e)!=null||(e=this.state.startLoc),r=(i=r)!=null?i:this.parseBindingAtom(),!this.eat(29))return r;const a=this.startNodeAt(e);return a.left=r,a.right=this.parseMaybeAssignAllowIn(),this.finishNode(a,"AssignmentPattern")}isValidLVal(e,r,s){switch(e){case"AssignmentPattern":return"left";case"RestElement":return"argument";case"ObjectProperty":return"value";case"ParenthesizedExpression":return"expression";case"ArrayPattern":return"elements";case"ObjectPattern":return"properties"}return!1}isOptionalMemberExpression(e){return e.type==="OptionalMemberExpression"}checkLVal(e,r,s=64,i=!1,a=!1,n=!1){var o;const u=e.type;if(this.isObjectMethod(e))return;const p=this.isOptionalMemberExpression(e);if(p||u==="MemberExpression"){p&&(this.expectPlugin("optionalChainingAssign",e.loc.start),r.type!=="AssignmentExpression"&&this.raise(x.InvalidLhsOptionalChaining,e,{ancestor:r})),s!==64&&this.raise(x.InvalidPropertyBindingPattern,e);return}if(u==="Identifier"){this.checkIdentifier(e,s,a);const{name:P}=e;i&&(i.has(P)?this.raise(x.ParamDupe,e):i.add(P));return}const h=this.isValidLVal(u,!(n||(o=e.extra)!=null&&o.parenthesized)&&r.type==="AssignmentExpression",s);if(h===!0)return;if(h===!1){const P=s===64?x.InvalidLhs:x.InvalidLhsBinding;this.raise(P,e,{ancestor:r});return}let E,I;typeof h=="string"?(E=h,I=u==="ParenthesizedExpression"):[E,I]=h;const A=u==="ArrayPattern"||u==="ObjectPattern"?{type:u}:r,w=e[E];if(Array.isArray(w))for(const P of w)P&&this.checkLVal(P,A,s,i,a,I);else w&&this.checkLVal(w,A,s,i,a,I)}checkIdentifier(e,r,s=!1){this.state.strict&&(s?Xi(e.name,this.inModule):Yi(e.name))&&(r===64?this.raise(x.StrictEvalArguments,e,{referenceName:e.name}):this.raise(x.StrictEvalArgumentsBinding,e,{bindingName:e.name})),r&8192&&e.name==="let"&&this.raise(x.LetInLexicalBinding,e),r&64||this.declareNameFromIdentifier(e,r)}declareNameFromIdentifier(e,r){this.scope.declareName(e.name,r,e.loc.start)}checkToRestConversion(e,r){switch(e.type){case"ParenthesizedExpression":this.checkToRestConversion(e.expression,r);break;case"Identifier":case"MemberExpression":break;case"ArrayExpression":case"ObjectExpression":if(r)break;default:this.raise(x.InvalidRestAssignmentPattern,e)}}checkCommaAfterRest(e){return this.match(12)?(this.raise(this.lookaheadCharCode()===e?x.RestTrailingComma:x.ElementAfterRest,this.state.startLoc),!0):!1}}function Fo(t){if(t==null)throw new Error(`Unexpected ${t} value.`);return t}function Hs(t){if(!t)throw new Error("Assert fail")}const M=Ee`typescript`({AbstractMethodHasImplementation:({methodName:t})=>`Method '${t}' cannot have an implementation because it is marked abstract.`,AbstractPropertyHasInitializer:({propertyName:t})=>`Property '${t}' cannot have an initializer because it is marked abstract.`,AccessorCannotBeOptional:"An 'accessor' property cannot be declared optional.",AccessorCannotDeclareThisParameter:"'get' and 'set' accessors cannot declare 'this' parameters.",AccessorCannotHaveTypeParameters:"An accessor cannot have type parameters.",ClassMethodHasDeclare:"Class methods cannot have the 'declare' modifier.",ClassMethodHasReadonly:"Class methods cannot have the 'readonly' modifier.",ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:"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:t})=>`'declare' is not allowed in ${t}ters.`,DeclareClassFieldHasInitializer:"Initializers are not allowed in ambient contexts.",DeclareFunctionHasImplementation:"An implementation cannot be declared in ambient contexts.",DuplicateAccessibilityModifier:({modifier:t})=>"Accessibility modifier already seen.",DuplicateModifier:({modifier:t})=>`Duplicate modifier: '${t}'.`,EmptyHeritageClauseType:({token:t})=>`'${t}' 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:t})=>`'${t[0]}' modifier cannot be used with '${t[1]}' modifier.`,IndexSignatureHasAbstract:"Index signatures cannot have the 'abstract' modifier.",IndexSignatureHasAccessibility:({modifier:t})=>`Index signatures cannot have an accessibility modifier ('${t}').`,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:t})=>`'${t}' modifier cannot appear on a type member.`,InvalidModifierOnTypeParameter:({modifier:t})=>`'${t}' modifier cannot appear on a type parameter.`,InvalidModifierOnTypeParameterPositions:({modifier:t})=>`'${t}' modifier can only appear on a type parameter of a class, interface or type alias.`,InvalidModifiersOrder:({orderedModifiers:t})=>`'${t[0]}' modifier must precede '${t[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.",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:t})=>`Private elements cannot have an accessibility modifier ('${t}').`,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.",SetAccessorCannotHaveOptionalParameter:"A 'set' accessor cannot have an optional parameter.",SetAccessorCannotHaveRestParameter:"A 'set' accessor cannot have rest parameter.",SetAccessorCannotHaveReturnType:"A 'set' accessor cannot have a return type annotation.",SingleTypeParameterWithoutTrailingComma:({typeParameterName:t})=>`Single type parameter ${t} should have a trailing comma. Example usage: <${t},>.`,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:t})=>`Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got ${t}.`});function Ro(t){switch(t){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}}function zs(t){return t==="private"||t==="public"||t==="protected"}function jo(t){return t==="in"||t==="out"}var Ko=t=>class extends t{constructor(...r){super(...r),this.tsParseInOutModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out"],disallowedModifiers:["const","public","private","protected","readonly","declare","abstract","override"],errorTemplate:M.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:["const"],disallowedModifiers:["in","out"],errorTemplate:M.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:["in","out","const"],disallowedModifiers:["public","private","protected","readonly","declare","abstract","override"],errorTemplate:M.InvalidModifierOnTypeParameter})}getScopeHandler(){return _o}tsIsIdentifier(){return H(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),this.hasPrecedingLineBreak()?!1:this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(r,s){if(!H(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;const i=this.state.value;if(r.includes(i)){if(s&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return i}}tsParseModifiers({allowedModifiers:r,disallowedModifiers:s,stopOnStartOfClassStaticBlock:i,errorTemplate:a=M.InvalidModifierOnTypeMember},n){const o=(p,h,E,I)=>{h===E&&n[I]&&this.raise(M.InvalidModifiersOrder,p,{orderedModifiers:[E,I]})},u=(p,h,E,I)=>{(n[E]&&h===I||n[I]&&h===E)&&this.raise(M.IncompatibleModifiers,p,{modifiers:[E,I]})};for(;;){const{startLoc:p}=this.state,h=this.tsParseModifier(r.concat(s??[]),i);if(!h)break;zs(h)?n.accessibility?this.raise(M.DuplicateAccessibilityModifier,p,{modifier:h}):(o(p,h,h,"override"),o(p,h,h,"static"),o(p,h,h,"readonly"),n.accessibility=h):jo(h)?(n[h]&&this.raise(M.DuplicateModifier,p,{modifier:h}),n[h]=!0,o(p,h,"in","out")):(hasOwnProperty.call(n,h)?this.raise(M.DuplicateModifier,p,{modifier:h}):(o(p,h,"static","readonly"),o(p,h,"static","override"),o(p,h,"override","readonly"),o(p,h,"abstract","override"),u(p,h,"declare","override"),u(p,h,"static","abstract")),n[h]=!0),s!=null&&s.includes(h)&&this.raise(a,p,{modifier:h})}}tsIsListTerminator(r){switch(r){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(r,s){const i=[];for(;!this.tsIsListTerminator(r);)i.push(s());return i}tsParseDelimitedList(r,s,i){return Fo(this.tsParseDelimitedListWorker(r,s,!0,i))}tsParseDelimitedListWorker(r,s,i,a){const n=[];let o=-1;for(;!this.tsIsListTerminator(r);){o=-1;const u=s();if(u==null)return;if(n.push(u),this.eat(12)){o=this.state.lastTokStartLoc.index;continue}if(this.tsIsListTerminator(r))break;i&&this.expect(12);return}return a&&(a.value=o),n}tsParseBracketedList(r,s,i,a,n){a||(i?this.expect(0):this.expect(47));const o=this.tsParseDelimitedList(r,s,n);return i?this.expect(3):this.expect(48),o}tsParseImportType(){const r=this.startNode();return this.expect(83),this.expect(10),this.match(134)?r.argument=this.parseStringLiteral(this.state.value):(this.raise(M.UnsupportedImportTypeArgument,this.state.startLoc),r.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(r.options=super.parseMaybeAssignAllowIn(),this.eat(12)):r.options=null,this.expect(11),this.eat(16)&&(r.qualifier=this.tsParseEntityName(3)),this.match(47)&&(r.typeParameters=this.tsParseTypeArguments()),this.finishNode(r,"TSImportType")}tsParseEntityName(r){let s;if(r&1&&this.match(78))if(r&2)s=this.parseIdentifier(!0);else{const i=this.startNode();this.next(),s=this.finishNode(i,"ThisExpression")}else s=this.parseIdentifier(!!(r&1));for(;this.eat(16);){const i=this.startNodeAtNode(s);i.left=s,i.right=this.parseIdentifier(!!(r&1)),s=this.finishNode(i,"TSQualifiedName")}return s}tsParseTypeReference(){const r=this.startNode();return r.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(r.typeParameters=this.tsParseTypeArguments()),this.finishNode(r,"TSTypeReference")}tsParseThisTypePredicate(r){this.next();const s=this.startNodeAtNode(r);return s.parameterName=r,s.typeAnnotation=this.tsParseTypeAnnotation(!1),s.asserts=!1,this.finishNode(s,"TSTypePredicate")}tsParseThisTypeNode(){const r=this.startNode();return this.next(),this.finishNode(r,"TSThisType")}tsParseTypeQuery(){const r=this.startNode();return this.expect(87),this.match(83)?r.exprName=this.tsParseImportType():r.exprName=this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(r.typeParameters=this.tsParseTypeArguments()),this.finishNode(r,"TSTypeQuery")}tsParseTypeParameter(r){const s=this.startNode();return r(s),s.name=this.tsParseTypeParameterName(),s.constraint=this.tsEatThenParseType(81),s.default=this.tsEatThenParseType(29),this.finishNode(s,"TSTypeParameter")}tsTryParseTypeParameters(r){if(this.match(47))return this.tsParseTypeParameters(r)}tsParseTypeParameters(r){const s=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();const i={value:-1};return s.params=this.tsParseBracketedList("TypeParametersOrArguments",this.tsParseTypeParameter.bind(this,r),!1,!0,i),s.params.length===0&&this.raise(M.EmptyTypeParameters,s),i.value!==-1&&this.addExtra(s,"trailingComma",i.value),this.finishNode(s,"TSTypeParameterDeclaration")}tsFillSignature(r,s){const i=r===19,a="parameters",n="typeAnnotation";s.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),s[a]=this.tsParseBindingListForSignature(),i?s[n]=this.tsParseTypeOrTypePredicateAnnotation(r):this.match(r)&&(s[n]=this.tsParseTypeOrTypePredicateAnnotation(r))}tsParseBindingListForSignature(){const r=super.parseBindingList(11,41,2);for(const s of r){const{type:i}=s;(i==="AssignmentPattern"||i==="TSParameterProperty")&&this.raise(M.UnsupportedSignatureParameterKind,s,{type:i})}return r}tsParseTypeMemberSemicolon(){!this.eat(12)&&!this.isLineTerminator()&&this.expect(13)}tsParseSignatureMember(r,s){return this.tsFillSignature(14,s),this.tsParseTypeMemberSemicolon(),this.finishNode(s,r)}tsIsUnambiguouslyIndexSignature(){return this.next(),H(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(r){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);const s=this.parseIdentifier();s.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(s),this.expect(3),r.parameters=[s];const i=this.tsTryParseTypeAnnotation();return i&&(r.typeAnnotation=i),this.tsParseTypeMemberSemicolon(),this.finishNode(r,"TSIndexSignature")}tsParsePropertyOrMethodSignature(r,s){this.eat(17)&&(r.optional=!0);const i=r;if(this.match(10)||this.match(47)){s&&this.raise(M.ReadonlyForMethodSignature,r);const a=i;a.kind&&this.match(47)&&this.raise(M.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,a),this.tsParseTypeMemberSemicolon();const n="parameters",o="typeAnnotation";if(a.kind==="get")a[n].length>0&&(this.raise(x.BadGetterArity,this.state.curPosition()),this.isThisParam(a[n][0])&&this.raise(M.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(a.kind==="set"){if(a[n].length!==1)this.raise(x.BadSetterArity,this.state.curPosition());else{const u=a[n][0];this.isThisParam(u)&&this.raise(M.AccessorCannotDeclareThisParameter,this.state.curPosition()),u.type==="Identifier"&&u.optional&&this.raise(M.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),u.type==="RestElement"&&this.raise(M.SetAccessorCannotHaveRestParameter,this.state.curPosition())}a[o]&&this.raise(M.SetAccessorCannotHaveReturnType,a[o])}else a.kind="method";return this.finishNode(a,"TSMethodSignature")}else{const a=i;s&&(a.readonly=!0);const n=this.tsTryParseTypeAnnotation();return n&&(a.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(a,"TSPropertySignature")}}tsParseTypeMember(){const r=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember("TSCallSignatureDeclaration",r);if(this.match(77)){const i=this.startNode();return this.next(),this.match(10)||this.match(47)?this.tsParseSignatureMember("TSConstructSignatureDeclaration",r):(r.key=this.createIdentifier(i,"new"),this.tsParsePropertyOrMethodSignature(r,!1))}this.tsParseModifiers({allowedModifiers:["readonly"],disallowedModifiers:["declare","abstract","private","protected","public","static","override"]},r);const s=this.tsTryParseIndexSignature(r);return s||(super.parsePropertyName(r),!r.computed&&r.key.type==="Identifier"&&(r.key.name==="get"||r.key.name==="set")&&this.tsTokenCanFollowModifier()&&(r.kind=r.key.name,super.parsePropertyName(r)),this.tsParsePropertyOrMethodSignature(r,!!r.readonly))}tsParseTypeLiteral(){const r=this.startNode();return r.members=this.tsParseObjectTypeMembers(),this.finishNode(r,"TSTypeLiteral")}tsParseObjectTypeMembers(){this.expect(5);const r=this.tsParseList("TypeMembers",this.tsParseTypeMember.bind(this));return this.expect(8),r}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){const r=this.startNode();this.expect(5),this.match(53)?(r.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(r.readonly=!0),this.expect(0);{const s=this.startNode();s.name=this.tsParseTypeParameterName(),s.constraint=this.tsExpectThenParseType(58),r.typeParameter=this.finishNode(s,"TSTypeParameter")}return r.nameType=this.eatContextual(93)?this.tsParseType():null,this.expect(3),this.match(53)?(r.optional=this.state.value,this.next(),this.expect(17)):this.eat(17)&&(r.optional=!0),r.typeAnnotation=this.tsTryParseType(),this.semicolon(),this.expect(8),this.finishNode(r,"TSMappedType")}tsParseTupleType(){const r=this.startNode();r.elementTypes=this.tsParseBracketedList("TupleElementTypes",this.tsParseTupleElementType.bind(this),!0,!1);let s=!1;return r.elementTypes.forEach(i=>{const{type:a}=i;s&&a!=="TSRestType"&&a!=="TSOptionalType"&&!(a==="TSNamedTupleMember"&&i.optional)&&this.raise(M.OptionalTypeBeforeRequired,i),s||(s=a==="TSNamedTupleMember"&&i.optional||a==="TSOptionalType")}),this.finishNode(r,"TSTupleType")}tsParseTupleElementType(){const r=this.state.startLoc,s=this.eat(21),{startLoc:i}=this.state;let a,n,o,u;const h=fe(this.state.type)?this.lookaheadCharCode():null;if(h===58)a=!0,o=!1,n=this.parseIdentifier(!0),this.expect(14),u=this.tsParseType();else if(h===63){o=!0;const E=this.state.value,I=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(a=!0,n=this.createIdentifier(this.startNodeAt(i),E),this.expect(17),this.expect(14),u=this.tsParseType()):(a=!1,u=I,this.expect(17))}else u=this.tsParseType(),o=this.eat(17),a=this.eat(14);if(a){let E;n?(E=this.startNodeAt(i),E.optional=o,E.label=n,E.elementType=u,this.eat(17)&&(E.optional=!0,this.raise(M.TupleOptionalAfterType,this.state.lastTokStartLoc))):(E=this.startNodeAt(i),E.optional=o,this.raise(M.InvalidTupleMemberLabel,u),E.label=u,E.elementType=this.tsParseType()),u=this.finishNode(E,"TSNamedTupleMember")}else if(o){const E=this.startNodeAt(i);E.typeAnnotation=u,u=this.finishNode(E,"TSOptionalType")}if(s){const E=this.startNodeAt(r);E.typeAnnotation=u,u=this.finishNode(E,"TSRestType")}return u}tsParseParenthesizedType(){const r=this.startNode();return this.expect(10),r.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(r,"TSParenthesizedType")}tsParseFunctionOrConstructorType(r,s){const i=this.startNode();return r==="TSConstructorType"&&(i.abstract=!!s,s&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,i)),this.finishNode(i,r)}tsParseLiteralTypeNode(){const r=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:r.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(r,"TSLiteralType")}tsParseTemplateLiteralType(){{const r=this.startNode();return r.literal=super.parseTemplate(!1),this.finishNode(r,"TSLiteralType")}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){const r=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(r):r}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value==="-"){const r=this.startNode(),s=this.lookahead();return s.type!==135&&s.type!==136&&this.unexpected(),r.literal=this.parseMaybeUnary(),this.finishNode(r,"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:r}=this.state;if(H(r)||r===88||r===84){const s=r===88?"TSVoidKeyword":r===84?"TSNullKeyword":Ro(this.state.value);if(s!==void 0&&this.lookaheadCharCode()!==46){const i=this.startNode();return this.next(),this.finishNode(i,s)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){const{startLoc:r}=this.state;let s=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){const i=this.startNodeAt(r);i.elementType=s,this.expect(3),s=this.finishNode(i,"TSArrayType")}else{const i=this.startNodeAt(r);i.objectType=s,i.indexType=this.tsParseType(),this.expect(3),s=this.finishNode(i,"TSIndexedAccessType")}return s}tsParseTypeOperator(){const r=this.startNode(),s=this.state.value;return this.next(),r.operator=s,r.typeAnnotation=this.tsParseTypeOperatorOrHigher(),s==="readonly"&&this.tsCheckTypeAnnotationForReadOnly(r),this.finishNode(r,"TSTypeOperator")}tsCheckTypeAnnotationForReadOnly(r){switch(r.typeAnnotation.type){case"TSTupleType":case"TSArrayType":return;default:this.raise(M.UnexpectedReadonly,r)}}tsParseInferType(){const r=this.startNode();this.expectContextual(115);const s=this.startNode();return s.name=this.tsParseTypeParameterName(),s.constraint=this.tsTryParse(()=>this.tsParseConstraintForInferType()),r.typeParameter=this.finishNode(s,"TSTypeParameter"),this.finishNode(r,"TSInferType")}tsParseConstraintForInferType(){if(this.eat(81)){const r=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return r}}tsParseTypeOperatorOrHigher(){return $n(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(r,s,i){const a=this.startNode(),n=this.eat(i),o=[];do o.push(s());while(this.eat(i));return o.length===1&&!n?o[0]:(a.types=o,this.finishNode(a,r))}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)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(H(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){const{errors:r}=this.state,s=r.length;try{return this.parseObjectLike(8,!0),r.length===s}catch{return!1}}if(this.match(0)){this.next();const{errors:r}=this.state,s=r.length;try{return super.parseBindingList(3,93,1),r.length===s}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(r){return this.tsInType(()=>{const s=this.startNode();this.expect(r);const i=this.startNode(),a=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(a&&this.match(78)){let u=this.tsParseThisTypeOrThisTypePredicate();return u.type==="TSThisType"?(i.parameterName=u,i.asserts=!0,i.typeAnnotation=null,u=this.finishNode(i,"TSTypePredicate")):(this.resetStartLocationFromNode(u,i),u.asserts=!0),s.typeAnnotation=u,this.finishNode(s,"TSTypeAnnotation")}const n=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!n)return a?(i.parameterName=this.parseIdentifier(),i.asserts=a,i.typeAnnotation=null,s.typeAnnotation=this.finishNode(i,"TSTypePredicate"),this.finishNode(s,"TSTypeAnnotation")):this.tsParseTypeAnnotation(!1,s);const o=this.tsParseTypeAnnotation(!1);return i.parameterName=n,i.typeAnnotation=o,i.asserts=a,s.typeAnnotation=this.finishNode(i,"TSTypePredicate"),this.finishNode(s,"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 r=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),r}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;const r=this.state.containsEsc;return this.next(),!H(this.state.type)&&!this.match(78)?!1:(r&&this.raise(x.InvalidEscapedReservedWord,this.state.lastTokStartLoc,{reservedWord:"asserts"}),!0)}tsParseTypeAnnotation(r=!0,s=this.startNode()){return this.tsInType(()=>{r&&this.expect(14),s.typeAnnotation=this.tsParseType()}),this.finishNode(s,"TSTypeAnnotation")}tsParseType(){Hs(this.state.inType);const r=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return r;const s=this.startNodeAtNode(r);return s.checkType=r,s.extendsType=this.tsInDisallowConditionalTypesContext(()=>this.tsParseNonConditionalType()),this.expect(17),s.trueType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.expect(14),s.falseType=this.tsInAllowConditionalTypesContext(()=>this.tsParseType()),this.finishNode(s,"TSConditionalType")}isAbstractConstructorSignature(){return this.isContextual(124)&&this.lookahead().type===77}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(M.ReservedTypeAssertion,this.state.startLoc);const r=this.startNode();return r.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?this.tsParseTypeReference():this.tsParseType())),this.expect(48),r.expression=this.parseMaybeUnary(),this.finishNode(r,"TSTypeAssertion")}tsParseHeritageClause(r){const s=this.state.startLoc,i=this.tsParseDelimitedList("HeritageClauseElement",()=>{const a=this.startNode();return a.expression=this.tsParseEntityName(3),this.match(47)&&(a.typeParameters=this.tsParseTypeArguments()),this.finishNode(a,"TSExpressionWithTypeArguments")});return i.length||this.raise(M.EmptyHeritageClauseType,s,{token:r}),i}tsParseInterfaceDeclaration(r,s={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),s.declare&&(r.declare=!0),H(this.state.type)?(r.id=this.parseIdentifier(),this.checkIdentifier(r.id,130)):(r.id=null,this.raise(M.MissingInterfaceName,this.state.startLoc)),r.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(r.extends=this.tsParseHeritageClause("extends"));const i=this.startNode();return i.body=this.tsInType(this.tsParseObjectTypeMembers.bind(this)),r.body=this.finishNode(i,"TSInterfaceBody"),this.finishNode(r,"TSInterfaceDeclaration")}tsParseTypeAliasDeclaration(r){return r.id=this.parseIdentifier(),this.checkIdentifier(r.id,2),r.typeAnnotation=this.tsInType(()=>{if(r.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutModifiers),this.expect(29),this.isContextual(114)&&this.lookahead().type!==16){const s=this.startNode();return this.next(),this.finishNode(s,"TSIntrinsicKeyword")}return this.tsParseType()}),this.semicolon(),this.finishNode(r,"TSTypeAliasDeclaration")}tsInTopLevelContext(r){if(this.curContext()!==W.brace){const s=this.state.context;this.state.context=[s[0]];try{return r()}finally{this.state.context=s}}else return r()}tsInType(r){const s=this.state.inType;this.state.inType=!0;try{return r()}finally{this.state.inType=s}}tsInDisallowConditionalTypesContext(r){const s=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return r()}finally{this.state.inDisallowConditionalTypesContext=s}}tsInAllowConditionalTypesContext(r){const s=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!1;try{return r()}finally{this.state.inDisallowConditionalTypesContext=s}}tsEatThenParseType(r){if(this.match(r))return this.tsNextThenParseType()}tsExpectThenParseType(r){return this.tsInType(()=>(this.expect(r),this.tsParseType()))}tsNextThenParseType(){return this.tsInType(()=>(this.next(),this.tsParseType()))}tsParseEnumMember(){const r=this.startNode();return r.id=this.match(134)?super.parseStringLiteral(this.state.value):this.parseIdentifier(!0),this.eat(29)&&(r.initializer=super.parseMaybeAssignAllowIn()),this.finishNode(r,"TSEnumMember")}tsParseEnumDeclaration(r,s={}){return s.const&&(r.const=!0),s.declare&&(r.declare=!0),this.expectContextual(126),r.id=this.parseIdentifier(),this.checkIdentifier(r.id,r.const?8971:8459),this.expect(5),r.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(r,"TSEnumDeclaration")}tsParseEnumBody(){const r=this.startNode();return this.expect(5),r.members=this.tsParseDelimitedList("EnumMembers",this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(r,"TSEnumBody")}tsParseModuleBlock(){const r=this.startNode();return this.scope.enter(0),this.expect(5),super.parseBlockOrModuleBlockBody(r.body=[],void 0,!0,8),this.scope.exit(),this.finishNode(r,"TSModuleBlock")}tsParseModuleOrNamespaceDeclaration(r,s=!1){if(r.id=this.parseIdentifier(),s||this.checkIdentifier(r.id,1024),this.eat(16)){const i=this.startNode();this.tsParseModuleOrNamespaceDeclaration(i,!0),r.body=i}else this.scope.enter(256),this.prodParam.enter(0),r.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit();return this.finishNode(r,"TSModuleDeclaration")}tsParseAmbientExternalModuleDeclaration(r){return this.isContextual(112)?(r.kind="global",r.global=!0,r.id=this.parseIdentifier()):this.match(134)?(r.kind="module",r.id=super.parseStringLiteral(this.state.value)):this.unexpected(),this.match(5)?(this.scope.enter(256),this.prodParam.enter(0),r.body=this.tsParseModuleBlock(),this.prodParam.exit(),this.scope.exit()):this.semicolon(),this.finishNode(r,"TSModuleDeclaration")}tsParseImportEqualsDeclaration(r,s,i){r.isExport=i||!1,r.id=s||this.parseIdentifier(),this.checkIdentifier(r.id,4096),this.expect(29);const a=this.tsParseModuleReference();return r.importKind==="type"&&a.type!=="TSExternalModuleReference"&&this.raise(M.ImportAliasHasImportType,a),r.moduleReference=a,this.semicolon(),this.finishNode(r,"TSImportEqualsDeclaration")}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){const r=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),r.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(r,"TSExternalModuleReference")}tsLookAhead(r){const s=this.state.clone(),i=r();return this.state=s,i}tsTryParseAndCatch(r){const s=this.tryParse(i=>r()||i());if(!(s.aborted||!s.node))return s.error&&(this.state=s.failState),s.node}tsTryParse(r){const s=this.state.clone(),i=r();if(i!==void 0&&i!==!1)return i;this.state=s}tsTryParseDeclare(r){if(this.isLineTerminator())return;let s=this.state.type,i;return this.isContextual(100)&&(s=74,i="let"),this.tsInAmbientContext(()=>{switch(s){case 68:return r.declare=!0,super.parseFunctionStatement(r,!1,!1);case 80:return r.declare=!0,this.parseClass(r,!0,!1);case 126:return this.tsParseEnumDeclaration(r,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(r);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual("enum")?(r.declare=!0,this.parseVarStatement(r,i||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(r,{const:!0,declare:!0}));case 129:{const a=this.tsParseInterfaceDeclaration(r,{declare:!0});if(a)return a}default:if(H(s))return this.tsParseDeclaration(r,this.state.value,!0,null)}})}tsTryParseExportDeclaration(){return this.tsParseDeclaration(this.startNode(),this.state.value,!0,null)}tsParseExpressionStatement(r,s,i){switch(s.name){case"declare":{const a=this.tsTryParseDeclare(r);return a&&(a.declare=!0),a}case"global":if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);const a=r;return a.kind="global",r.global=!0,a.id=s,a.body=this.tsParseModuleBlock(),this.scope.exit(),this.prodParam.exit(),this.finishNode(a,"TSModuleDeclaration")}break;default:return this.tsParseDeclaration(r,s.name,!1,i)}}tsParseDeclaration(r,s,i,a){switch(s){case"abstract":if(this.tsCheckLineTerminator(i)&&(this.match(80)||H(this.state.type)))return this.tsParseAbstractDeclaration(r,a);break;case"module":if(this.tsCheckLineTerminator(i)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(r);if(H(this.state.type))return r.kind="module",this.tsParseModuleOrNamespaceDeclaration(r)}break;case"namespace":if(this.tsCheckLineTerminator(i)&&H(this.state.type))return r.kind="namespace",this.tsParseModuleOrNamespaceDeclaration(r);break;case"type":if(this.tsCheckLineTerminator(i)&&H(this.state.type))return this.tsParseTypeAliasDeclaration(r);break}}tsCheckLineTerminator(r){return r?this.hasFollowingLineBreak()?!1:(this.next(),!0):!this.isLineTerminator()}tsTryParseGenericAsyncArrowFunction(r){if(!this.match(47))return;const s=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;const i=this.tsTryParseAndCatch(()=>{const a=this.startNodeAt(r);return a.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(a),a.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),a});if(this.state.maybeInArrowParameters=s,!!i)return super.parseArrowExpression(i,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){const r=this.startNode();return r.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList("TypeParametersOrArguments",this.tsParseType.bind(this))))),r.params.length===0?this.raise(M.EmptyTypeArguments,r):!this.state.inType&&this.curContext()===W.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(r,"TSTypeParameterInstantiation")}tsIsDeclarationStart(){return Yn(this.state.type)}isExportDefaultSpecifier(){return this.tsIsDeclarationStart()?!1:super.isExportDefaultSpecifier()}parseAssignableListItem(r,s){const i=this.state.startLoc,a={};this.tsParseModifiers({allowedModifiers:["public","private","protected","override","readonly"]},a);const n=a.accessibility,o=a.override,u=a.readonly;!(r&4)&&(n||u||o)&&this.raise(M.UnexpectedParameterModifier,i);const p=this.parseMaybeDefault();r&2&&this.parseFunctionParamType(p);const h=this.parseMaybeDefault(p.loc.start,p);if(n||u||o){const E=this.startNodeAt(i);return s.length&&(E.decorators=s),n&&(E.accessibility=n),u&&(E.readonly=u),o&&(E.override=o),h.type!=="Identifier"&&h.type!=="AssignmentPattern"&&this.raise(M.UnsupportedParameterPropertyKind,E),E.parameter=h,this.finishNode(E,"TSParameterProperty")}return s.length&&(p.decorators=s),h}isSimpleParameter(r){return r.type==="TSParameterProperty"&&super.isSimpleParameter(r.parameter)||super.isSimpleParameter(r)}tsDisallowOptionalPattern(r){for(const s of r.params)s.type!=="Identifier"&&s.optional&&!this.state.isAmbientContext&&this.raise(M.PatternIsOptional,s)}setArrowFunctionParameters(r,s,i){super.setArrowFunctionParameters(r,s,i),this.tsDisallowOptionalPattern(r)}parseFunctionBodyAndFinish(r,s,i=!1){this.match(14)&&(r.returnType=this.tsParseTypeOrTypePredicateAnnotation(14));const a=s==="FunctionDeclaration"?"TSDeclareFunction":s==="ClassMethod"||s==="ClassPrivateMethod"?"TSDeclareMethod":void 0;return a&&!this.match(5)&&this.isLineTerminator()?this.finishNode(r,a):a==="TSDeclareFunction"&&this.state.isAmbientContext&&(this.raise(M.DeclareFunctionHasImplementation,r),r.declare)?super.parseFunctionBodyAndFinish(r,a,i):(this.tsDisallowOptionalPattern(r),super.parseFunctionBodyAndFinish(r,s,i))}registerFunctionStatementId(r){!r.body&&r.id?this.checkIdentifier(r.id,1024):super.registerFunctionStatementId(r)}tsCheckForInvalidTypeCasts(r){r.forEach(s=>{(s==null?void 0:s.type)==="TSTypeCastExpression"&&this.raise(M.UnexpectedTypeAnnotation,s.typeAnnotation)})}toReferencedList(r,s){return this.tsCheckForInvalidTypeCasts(r),r}parseArrayLike(r,s,i,a){const n=super.parseArrayLike(r,s,i,a);return n.type==="ArrayExpression"&&this.tsCheckForInvalidTypeCasts(n.elements),n}parseSubscript(r,s,i,a){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();const o=this.startNodeAt(s);return o.expression=r,this.finishNode(o,"TSNonNullExpression")}let n=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(i)return a.stop=!0,r;a.optionalChainMember=n=!0,this.next()}if(this.match(47)||this.match(51)){let o;const u=this.tsTryParseAndCatch(()=>{if(!i&&this.atPossibleAsyncArrow(r)){const I=this.tsTryParseGenericAsyncArrowFunction(s);if(I)return I}const p=this.tsParseTypeArgumentsInExpression();if(!p)return;if(n&&!this.match(10)){o=this.state.curPosition();return}if(Ft(this.state.type)){const I=super.parseTaggedTemplateExpression(r,s,a);return I.typeParameters=p,I}if(!i&&this.eat(10)){const I=this.startNodeAt(s);return I.callee=r,I.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(I.arguments),I.typeParameters=p,a.optionalChainMember&&(I.optional=n),this.finishCallExpression(I,a.optionalChainMember)}const h=this.state.type;if(h===48||h===52||h!==10&&Lr(h)&&!this.hasPrecedingLineBreak())return;const E=this.startNodeAt(s);return E.expression=r,E.typeParameters=p,this.finishNode(E,"TSInstantiationExpression")});if(o&&this.unexpected(o,10),u)return u.type==="TSInstantiationExpression"&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise(M.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),u}return super.parseSubscript(r,s,i,a)}parseNewCallee(r){var s;super.parseNewCallee(r);const{callee:i}=r;i.type==="TSInstantiationExpression"&&!((s=i.extra)!=null&&s.parenthesized)&&(r.typeParameters=i.typeParameters,r.callee=i.expression)}parseExprOp(r,s,i){let a;if(Dt(58)>i&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(a=this.isContextual(120)))){const n=this.startNodeAt(s);return n.expression=r,n.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(a&&this.raise(x.UnexpectedKeyword,this.state.startLoc,{keyword:"const"}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(n,a?"TSSatisfiesExpression":"TSAsExpression"),this.reScan_lt_gt(),this.parseExprOp(n,s,i)}return super.parseExprOp(r,s,i)}checkReservedWord(r,s,i,a){this.state.isAmbientContext||super.checkReservedWord(r,s,i,a)}checkImportReflection(r){super.checkImportReflection(r),r.module&&r.importKind!=="value"&&this.raise(M.ImportReflectionHasImportType,r.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(r){if(super.isPotentialImportPhase(r))return!0;if(this.isContextual(130)){const s=this.lookaheadCharCode();return r?s===123||s===42:s!==61}return!r&&this.isContextual(87)}applyImportPhase(r,s,i,a){super.applyImportPhase(r,s,i,a),s?r.exportKind=i==="type"?"type":"value":r.importKind=i==="type"||i==="typeof"?i:"value"}parseImport(r){if(this.match(134))return r.importKind="value",super.parseImport(r);let s;if(H(this.state.type)&&this.lookaheadCharCode()===61)return r.importKind="value",this.tsParseImportEqualsDeclaration(r);if(this.isContextual(130)){const i=this.parseMaybeImportPhase(r,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(r,i);s=super.parseImportSpecifiersAndAfter(r,i)}else s=super.parseImport(r);return s.importKind==="type"&&s.specifiers.length>1&&s.specifiers[0].type==="ImportDefaultSpecifier"&&this.raise(M.TypeImportCannotSpecifyDefaultAndNamed,s),s}parseExport(r,s){if(this.match(83)){const i=r;this.next();let a=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?a=this.parseMaybeImportPhase(i,!1):i.importKind="value",this.tsParseImportEqualsDeclaration(i,a,!0)}else if(this.eat(29)){const i=r;return i.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(i,"TSExportAssignment")}else if(this.eatContextual(93)){const i=r;return this.expectContextual(128),i.id=this.parseIdentifier(),this.semicolon(),this.finishNode(i,"TSNamespaceExportDeclaration")}else return super.parseExport(r,s)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){const r=this.startNode();return this.next(),r.abstract=!0,this.parseClass(r,!0,!0)}if(this.match(129)){const r=this.tsParseInterfaceDeclaration(this.startNode());if(r)return r}return super.parseExportDefaultExpression()}parseVarStatement(r,s,i=!1){const{isAmbientContext:a}=this.state,n=super.parseVarStatement(r,s,i||a);if(!a)return n;for(const{id:o,init:u}of n.declarations)u&&(s!=="const"||o.typeAnnotation?this.raise(M.InitializerNotAllowedInAmbientContext,u):Vo(u,this.hasPlugin("estree"))||this.raise(M.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,u));return n}parseStatementContent(r,s){if(this.match(75)&&this.isLookaheadContextual("enum")){const i=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(i,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){const i=this.tsParseInterfaceDeclaration(this.startNode());if(i)return i}return super.parseStatementContent(r,s)}parseAccessModifier(){return this.tsParseModifier(["public","protected","private"])}tsHasSomeModifiers(r,s){return s.some(i=>zs(i)?r.accessibility===i:!!r[i])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(r,s,i){const a=["declare","private","public","protected","override","abstract","readonly","static"];this.tsParseModifiers({allowedModifiers:a,disallowedModifiers:["in","out"],stopOnStartOfClassStaticBlock:!0,errorTemplate:M.InvalidModifierOnTypeParameterPositions},s);const n=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(s,a)&&this.raise(M.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(r,s)):this.parseClassMemberWithIsStatic(r,s,i,!!s.static)};s.declare?this.tsInAmbientContext(n):n()}parseClassMemberWithIsStatic(r,s,i,a){const n=this.tsTryParseIndexSignature(s);if(n){r.body.push(n),s.abstract&&this.raise(M.IndexSignatureHasAbstract,s),s.accessibility&&this.raise(M.IndexSignatureHasAccessibility,s,{modifier:s.accessibility}),s.declare&&this.raise(M.IndexSignatureHasDeclare,s),s.override&&this.raise(M.IndexSignatureHasOverride,s);return}!this.state.inAbstractClass&&s.abstract&&this.raise(M.NonAbstractClassHasAbstractMethod,s),s.override&&(i.hadSuperClass||this.raise(M.OverrideNotInSubClass,s)),super.parseClassMemberWithIsStatic(r,s,i,a)}parsePostMemberNameModifiers(r){this.eat(17)&&(r.optional=!0),r.readonly&&this.match(10)&&this.raise(M.ClassMethodHasReadonly,r),r.declare&&this.match(10)&&this.raise(M.ClassMethodHasDeclare,r)}parseExpressionStatement(r,s,i){return(s.type==="Identifier"?this.tsParseExpressionStatement(r,s,i):void 0)||super.parseExpressionStatement(r,s,i)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(r,s,i){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(r,s,i);const a=this.tryParse(()=>super.parseConditional(r,s));return a.node?(a.error&&(this.state=a.failState),a.node):(a.error&&super.setOptionalParametersError(i,a.error),r)}parseParenItem(r,s){const i=super.parseParenItem(r,s);if(this.eat(17)&&(i.optional=!0,this.resetEndLocation(r)),this.match(14)){const a=this.startNodeAt(s);return a.expression=r,a.typeAnnotation=this.tsParseTypeAnnotation(),this.finishNode(a,"TSTypeCastExpression")}return r}parseExportDeclaration(r){if(!this.state.isAmbientContext&&this.isContextual(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(r));const s=this.state.startLoc,i=this.eatContextual(125);if(i&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise(M.ExpectedAmbientAfterExportDeclare,this.state.startLoc);const n=H(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(r);return n?((n.type==="TSInterfaceDeclaration"||n.type==="TSTypeAliasDeclaration"||i)&&(r.exportKind="type"),i&&n.type!=="TSImportEqualsDeclaration"&&(this.resetStartLocation(n,s),n.declare=!0),n):null}parseClassId(r,s,i,a){if((!s||i)&&this.isContextual(113))return;super.parseClassId(r,s,i,r.declare?1024:8331);const n=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);n&&(r.typeParameters=n)}parseClassPropertyAnnotation(r){r.optional||(this.eat(35)?r.definite=!0:this.eat(17)&&(r.optional=!0));const s=this.tsTryParseTypeAnnotation();s&&(r.typeAnnotation=s)}parseClassProperty(r){if(this.parseClassPropertyAnnotation(r),this.state.isAmbientContext&&!(r.readonly&&!r.typeAnnotation)&&this.match(29)&&this.raise(M.DeclareClassFieldHasInitializer,this.state.startLoc),r.abstract&&this.match(29)){const{key:s}=r;this.raise(M.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:s.type==="Identifier"&&!r.computed?s.name:`[${this.input.slice(this.offsetToSourcePos(s.start),this.offsetToSourcePos(s.end))}]`})}return super.parseClassProperty(r)}parseClassPrivateProperty(r){return r.abstract&&this.raise(M.PrivateElementHasAbstract,r),r.accessibility&&this.raise(M.PrivateElementHasAccessibility,r,{modifier:r.accessibility}),this.parseClassPropertyAnnotation(r),super.parseClassPrivateProperty(r)}parseClassAccessorProperty(r){return this.parseClassPropertyAnnotation(r),r.optional&&this.raise(M.AccessorCannotBeOptional,r),super.parseClassAccessorProperty(r)}pushClassMethod(r,s,i,a,n,o){const u=this.tsTryParseTypeParameters(this.tsParseConstModifier);u&&n&&this.raise(M.ConstructorHasTypeParameters,u);const{declare:p=!1,kind:h}=s;p&&(h==="get"||h==="set")&&this.raise(M.DeclareAccessor,s,{kind:h}),u&&(s.typeParameters=u),super.pushClassMethod(r,s,i,a,n,o)}pushClassPrivateMethod(r,s,i,a){const n=this.tsTryParseTypeParameters(this.tsParseConstModifier);n&&(s.typeParameters=n),super.pushClassPrivateMethod(r,s,i,a)}declareClassPrivateMethodInScope(r,s){r.type!=="TSDeclareMethod"&&(r.type==="MethodDefinition"&&!hasOwnProperty.call(r.value,"body")||super.declareClassPrivateMethodInScope(r,s))}parseClassSuper(r){super.parseClassSuper(r),r.superClass&&(this.match(47)||this.match(51))&&(r.superTypeParameters=this.tsParseTypeArgumentsInExpression()),this.eatContextual(113)&&(r.implements=this.tsParseHeritageClause("implements"))}parseObjPropValue(r,s,i,a,n,o,u){const p=this.tsTryParseTypeParameters(this.tsParseConstModifier);return p&&(r.typeParameters=p),super.parseObjPropValue(r,s,i,a,n,o,u)}parseFunctionParams(r,s){const i=this.tsTryParseTypeParameters(this.tsParseConstModifier);i&&(r.typeParameters=i),super.parseFunctionParams(r,s)}parseVarId(r,s){super.parseVarId(r,s),r.id.type==="Identifier"&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(r.definite=!0);const i=this.tsTryParseTypeAnnotation();i&&(r.id.typeAnnotation=i,this.resetEndLocation(r.id))}parseAsyncArrowFromCallExpression(r,s){return this.match(14)&&(r.returnType=this.tsParseTypeAnnotation()),super.parseAsyncArrowFromCallExpression(r,s)}parseMaybeAssign(r,s){var i,a,n,o,u;let p,h,E;if(this.hasPlugin("jsx")&&(this.match(143)||this.match(47))){if(p=this.state.clone(),h=this.tryParse(()=>super.parseMaybeAssign(r,s),p),!h.error)return h.node;const{context:w}=this.state,P=w[w.length-1];(P===W.j_oTag||P===W.j_expr)&&w.pop()}if(!((i=h)!=null&&i.error)&&!this.match(47))return super.parseMaybeAssign(r,s);(!p||p===this.state)&&(p=this.state.clone());let I;const A=this.tryParse(w=>{var P,v;I=this.tsParseTypeParameters(this.tsParseConstModifier);const g=super.parseMaybeAssign(r,s);return(g.type!=="ArrowFunctionExpression"||(P=g.extra)!=null&&P.parenthesized)&&w(),((v=I)==null?void 0:v.params.length)!==0&&this.resetStartLocationFromNode(g,I),g.typeParameters=I,g},p);if(!A.error&&!A.aborted)return I&&this.reportReservedArrowTypeParam(I),A.node;if(!h&&(Hs(!this.hasPlugin("jsx")),E=this.tryParse(()=>super.parseMaybeAssign(r,s),p),!E.error))return E.node;if((a=h)!=null&&a.node)return this.state=h.failState,h.node;if(A.node)return this.state=A.failState,I&&this.reportReservedArrowTypeParam(I),A.node;if((n=E)!=null&&n.node)return this.state=E.failState,E.node;throw((o=h)==null?void 0:o.error)||A.error||((u=E)==null?void 0:u.error)}reportReservedArrowTypeParam(r){var s;r.params.length===1&&!r.params[0].constraint&&!((s=r.extra)!=null&&s.trailingComma)&&this.getPluginOption("typescript","disallowAmbiguousJSXLike")&&this.raise(M.ReservedArrowTypeParam,r)}parseMaybeUnary(r,s){return!this.hasPlugin("jsx")&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(r,s)}parseArrow(r){if(this.match(14)){const s=this.tryParse(i=>{const a=this.tsParseTypeOrTypePredicateAnnotation(14);return(this.canInsertSemicolon()||!this.match(19))&&i(),a});if(s.aborted)return;s.thrown||(s.error&&(this.state=s.failState),r.returnType=s.node)}return super.parseArrow(r)}parseFunctionParamType(r){this.eat(17)&&(r.optional=!0);const s=this.tsTryParseTypeAnnotation();return s&&(r.typeAnnotation=s),this.resetEndLocation(r),r}isAssignable(r,s){switch(r.type){case"TSTypeCastExpression":return this.isAssignable(r.expression,s);case"TSParameterProperty":return!0;default:return super.isAssignable(r,s)}}toAssignable(r,s=!1){switch(r.type){case"ParenthesizedExpression":this.toAssignableParenthesizedExpression(r,s);break;case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":s?this.expressionScope.recordArrowParameterBindingError(M.UnexpectedTypeCastInParameter,r):this.raise(M.UnexpectedTypeCastInParameter,r),this.toAssignable(r.expression,s);break;case"AssignmentExpression":!s&&r.left.type==="TSTypeCastExpression"&&(r.left=this.typeCastToParameter(r.left));default:super.toAssignable(r,s)}}toAssignableParenthesizedExpression(r,s){switch(r.expression.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSNonNullExpression":case"TSTypeAssertion":case"ParenthesizedExpression":this.toAssignable(r.expression,s);break;default:super.toAssignable(r,s)}}checkToRestConversion(r,s){switch(r.type){case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":this.checkToRestConversion(r.expression,!1);break;default:super.checkToRestConversion(r,s)}}isValidLVal(r,s,i){switch(r){case"TSTypeCastExpression":return!0;case"TSParameterProperty":return"parameter";case"TSNonNullExpression":case"TSInstantiationExpression":return"expression";case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":return(i!==64||!s)&&["expression",!0];default:return super.isValidLVal(r,s,i)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(r,s){if(this.match(47)||this.match(51)){const i=this.tsParseTypeArgumentsInExpression();if(this.match(10)){const a=super.parseMaybeDecoratorArguments(r,s);return a.typeParameters=i,a}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(r,s)}checkCommaAfterRest(r){return this.state.isAmbientContext&&this.match(12)&&this.lookaheadCharCode()===r?(this.next(),!1):super.checkCommaAfterRest(r)}isClassMethod(){return this.match(47)||super.isClassMethod()}isClassProperty(){return this.match(35)||this.match(14)||super.isClassProperty()}parseMaybeDefault(r,s){const i=super.parseMaybeDefault(r,s);return i.type==="AssignmentPattern"&&i.typeAnnotation&&i.right.start<i.typeAnnotation.start&&this.raise(M.TypeAnnotationAfterAssign,i.typeAnnotation),i}getTokenFromCode(r){if(this.state.inType){if(r===62){this.finishOp(48,1);return}if(r===60){this.finishOp(47,1);return}}super.getTokenFromCode(r)}reScan_lt_gt(){const{type:r}=this.state;r===47?(this.state.pos-=1,this.readToken_lt()):r===48&&(this.state.pos-=1,this.readToken_gt())}reScan_lt(){const{type:r}=this.state;return r===51?(this.state.pos-=2,this.finishOp(47,1),47):r}toAssignableList(r,s,i){for(let a=0;a<r.length;a++){const n=r[a];(n==null?void 0:n.type)==="TSTypeCastExpression"&&(r[a]=this.typeCastToParameter(n))}super.toAssignableList(r,s,i)}typeCastToParameter(r){return r.expression.typeAnnotation=r.typeAnnotation,this.resetEndLocation(r.expression,r.typeAnnotation.loc.end),r.expression}shouldParseArrow(r){return this.match(14)?r.every(s=>this.isAssignable(s,!0)):super.shouldParseArrow(r)}shouldParseAsyncArrow(){return this.match(14)||super.shouldParseAsyncArrow()}canHaveLeadingDecorator(){return super.canHaveLeadingDecorator()||this.isAbstractClass()}jsxParseOpeningElementAfterName(r){if(this.match(47)||this.match(51)){const s=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());s&&(r.typeParameters=s)}return super.jsxParseOpeningElementAfterName(r)}getGetterSetterExpectedParamCount(r){const s=super.getGetterSetterExpectedParamCount(r),a=this.getObjectOrClassMethodParams(r)[0];return a&&this.isThisParam(a)?s+1:s}parseCatchClauseParam(){const r=super.parseCatchClauseParam(),s=this.tsTryParseTypeAnnotation();return s&&(r.typeAnnotation=s,this.resetEndLocation(r)),r}tsInAmbientContext(r){const{isAmbientContext:s,strict:i}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return r()}finally{this.state.isAmbientContext=s,this.state.strict=i}}parseClass(r,s,i){const a=this.state.inAbstractClass;this.state.inAbstractClass=!!r.abstract;try{return super.parseClass(r,s,i)}finally{this.state.inAbstractClass=a}}tsParseAbstractDeclaration(r,s){if(this.match(80))return r.abstract=!0,this.maybeTakeDecorators(s,this.parseClass(r,!0,!1));if(this.isContextual(129)){if(!this.hasFollowingLineBreak())return r.abstract=!0,this.raise(M.NonClassMethodPropertyHasAbstractModifer,r),this.tsParseInterfaceDeclaration(r)}else this.unexpected(null,80)}parseMethod(r,s,i,a,n,o,u){const p=super.parseMethod(r,s,i,a,n,o,u);if(p.abstract&&(this.hasPlugin("estree")?p.value:p).body){const{key:I}=p;this.raise(M.AbstractMethodHasImplementation,p,{methodName:I.type==="Identifier"&&!p.computed?I.name:`[${this.input.slice(this.offsetToSourcePos(I.start),this.offsetToSourcePos(I.end))}]`})}return p}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(r,s,i,a){return!s&&a?(this.parseTypeOnlyImportExportSpecifier(r,!1,i),this.finishNode(r,"ExportSpecifier")):(r.exportKind="value",super.parseExportSpecifier(r,s,i,a))}parseImportSpecifier(r,s,i,a,n){return!s&&a?(this.parseTypeOnlyImportExportSpecifier(r,!0,i),this.finishNode(r,"ImportSpecifier")):(r.importKind="value",super.parseImportSpecifier(r,s,i,a,i?4098:4096))}parseTypeOnlyImportExportSpecifier(r,s,i){const a=s?"imported":"local",n=s?"local":"exported";let o=r[a],u,p=!1,h=!0;const E=o.loc.start;if(this.isContextual(93)){const A=this.parseIdentifier();if(this.isContextual(93)){const w=this.parseIdentifier();fe(this.state.type)?(p=!0,o=A,u=s?this.parseIdentifier():this.parseModuleExportName(),h=!1):(u=w,h=!1)}else fe(this.state.type)?(h=!1,u=s?this.parseIdentifier():this.parseModuleExportName()):(p=!0,o=A)}else fe(this.state.type)&&(p=!0,s?(o=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(o.name,o.loc.start,!0,!0)):o=this.parseModuleExportName());p&&i&&this.raise(s?M.TypeModifierIsUsedInTypeImports:M.TypeModifierIsUsedInTypeExports,E),r[a]=o,r[n]=u;const I=s?"importKind":"exportKind";r[I]=p?"type":"value",h&&this.eatContextual(93)&&(r[n]=s?this.parseIdentifier():this.parseModuleExportName()),r[n]||(r[n]=Pe(r[a])),s&&this.checkIdentifier(r[n],p?4098:4096)}};function Uo(t){if(t.type!=="MemberExpression")return!1;const{computed:e,property:r}=t;return e&&r.type!=="StringLiteral"&&(r.type!=="TemplateLiteral"||r.expressions.length>0)?!1:Zi(t.object)}function Vo(t,e){var r;const{type:s}=t;if((r=t.extra)!=null&&r.parenthesized)return!1;if(e){if(s==="Literal"){const{value:i}=t;if(typeof i=="string"||typeof i=="boolean")return!0}}else if(s==="StringLiteral"||s==="BooleanLiteral")return!0;return!!(Qi(t,e)||$o(t,e)||s==="TemplateLiteral"&&t.expressions.length===0||Uo(t))}function Qi(t,e){return e?t.type==="Literal"&&(typeof t.value=="number"||"bigint"in t):t.type==="NumericLiteral"||t.type==="BigIntLiteral"}function $o(t,e){if(t.type==="UnaryExpression"){const{operator:r,argument:s}=t;if(r==="-"&&Qi(s,e))return!0}return!1}function Zi(t){return t.type==="Identifier"?!0:t.type!=="MemberExpression"||t.computed?!1:Zi(t.object)}const Gs=Ee`placeholders`({ClassNameIsRequired:"A class name is required.",UnexpectedSpace:"Unexpected space in placeholder."});var Yo=t=>class extends t{parsePlaceholder(r){if(this.match(133)){const s=this.startNode();return this.next(),this.assertNoSpace(),s.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(s,r)}}finishPlaceholder(r,s){let i=r;return(!i.expectedNode||!i.type)&&(i=this.finishNode(i,"Placeholder")),i.expectedNode=s,i}getTokenFromCode(r){r===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,2):super.getTokenFromCode(r)}parseExprAtom(r){return this.parsePlaceholder("Expression")||super.parseExprAtom(r)}parseIdentifier(r){return this.parsePlaceholder("Identifier")||super.parseIdentifier(r)}checkReservedWord(r,s,i,a){r!==void 0&&super.checkReservedWord(r,s,i,a)}parseBindingAtom(){return this.parsePlaceholder("Pattern")||super.parseBindingAtom()}isValidLVal(r,s,i){return r==="Placeholder"||super.isValidLVal(r,s,i)}toAssignable(r,s){r&&r.type==="Placeholder"&&r.expectedNode==="Expression"?r.expectedNode="Pattern":super.toAssignable(r,s)}chStartsBindingIdentifier(r,s){return!!(super.chStartsBindingIdentifier(r,s)||this.lookahead().type===133)}verifyBreakContinue(r,s){r.label&&r.label.type==="Placeholder"||super.verifyBreakContinue(r,s)}parseExpressionStatement(r,s){var i;if(s.type!=="Placeholder"||(i=s.extra)!=null&&i.parenthesized)return super.parseExpressionStatement(r,s);if(this.match(14)){const n=r;return n.label=this.finishPlaceholder(s,"Identifier"),this.next(),n.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(n,"LabeledStatement")}this.semicolon();const a=r;return a.name=s.name,this.finishPlaceholder(a,"Statement")}parseBlock(r,s,i){return this.parsePlaceholder("BlockStatement")||super.parseBlock(r,s,i)}parseFunctionId(r){return this.parsePlaceholder("Identifier")||super.parseFunctionId(r)}parseClass(r,s,i){const a=s?"ClassDeclaration":"ClassExpression";this.next();const n=this.state.strict,o=this.parsePlaceholder("Identifier");if(o)if(this.match(81)||this.match(133)||this.match(5))r.id=o;else{if(i||!s)return r.id=null,r.body=this.finishPlaceholder(o,"ClassBody"),this.finishNode(r,a);throw this.raise(Gs.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(r,s,i);return super.parseClassSuper(r),r.body=this.parsePlaceholder("ClassBody")||super.parseClassBody(!!r.superClass,n),this.finishNode(r,a)}parseExport(r,s){const i=this.parsePlaceholder("Identifier");if(!i)return super.parseExport(r,s);const a=r;if(!this.isContextual(98)&&!this.match(12))return a.specifiers=[],a.source=null,a.declaration=this.finishPlaceholder(i,"Declaration"),this.finishNode(a,"ExportNamedDeclaration");this.expectPlugin("exportDefaultFrom");const n=this.startNode();return n.exported=i,a.specifiers=[this.finishNode(n,"ExportDefaultSpecifier")],super.parseExport(a,s)}isExportDefaultSpecifier(){if(this.match(65)){const r=this.nextTokenStart();if(this.isUnparsedContextual(r,"from")&&this.input.startsWith(Oe(133),this.nextTokenStartSince(r+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(r,s){var i;return(i=r.specifiers)!=null&&i.length?!0:super.maybeParseExportDefaultSpecifier(r,s)}checkExport(r){const{specifiers:s}=r;s!=null&&s.length&&(r.specifiers=s.filter(i=>i.exported.type==="Placeholder")),super.checkExport(r),r.specifiers=s}parseImport(r){const s=this.parsePlaceholder("Identifier");if(!s)return super.parseImport(r);if(r.specifiers=[],!this.isContextual(98)&&!this.match(12))return r.source=this.finishPlaceholder(s,"StringLiteral"),this.semicolon(),this.finishNode(r,"ImportDeclaration");const i=this.startNodeAtNode(s);return i.local=s,r.specifiers.push(this.finishNode(i,"ImportDefaultSpecifier")),this.eat(12)&&(this.maybeParseStarImportSpecifier(r)||this.parseNamedImportSpecifiers(r)),this.expectContextual(98),r.source=this.parseImportSource(),this.semicolon(),this.finishNode(r,"ImportDeclaration")}parseImportSource(){return this.parsePlaceholder("StringLiteral")||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(Gs.UnexpectedSpace,this.state.lastTokEndLoc)}},Xo=t=>class extends t{parseV8Intrinsic(){if(this.match(54)){const r=this.state.startLoc,s=this.startNode();if(this.next(),H(this.state.type)){const i=this.parseIdentifierName(),a=this.createIdentifier(s,i);if(a.type="V8IntrinsicIdentifier",this.match(10))return a}this.unexpected(r)}}parseExprAtom(r){return this.parseV8Intrinsic()||super.parseExprAtom(r)}};const Qs=["minimal","fsharp","hack","smart"],Zs=["^^","@@","^","%","#"];function Jo(t){if(t.has("decorators")){if(t.has("decorators-legacy"))throw new Error("Cannot use the decorators and decorators-legacy plugin together");const r=t.get("decorators").decoratorsBeforeExport;if(r!=null&&typeof r!="boolean")throw new Error("'decoratorsBeforeExport' must be a boolean, if specified.");const s=t.get("decorators").allowCallParenthesized;if(s!=null&&typeof s!="boolean")throw new Error("'allowCallParenthesized' must be a boolean.")}if(t.has("flow")&&t.has("typescript"))throw new Error("Cannot combine flow and typescript plugins.");if(t.has("placeholders")&&t.has("v8intrinsic"))throw new Error("Cannot combine placeholders and v8intrinsic plugins.");if(t.has("pipelineOperator")){var e;const r=t.get("pipelineOperator").proposal;if(!Qs.includes(r)){const i=Qs.map(a=>`"${a}"`).join(", ");throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${i}.`)}const s=((e=t.get("recordAndTuple"))==null?void 0:e.syntaxType)==="hash";if(r==="hack"){if(t.has("placeholders"))throw new Error("Cannot combine placeholders plugin and Hack-style pipes.");if(t.has("v8intrinsic"))throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes.");const i=t.get("pipelineOperator").topicToken;if(!Zs.includes(i)){const a=Zs.map(n=>`"${n}"`).join(", ");throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${a}.`)}if(i==="#"&&s)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify(["recordAndTuple",t.get("recordAndTuple")])}\`.`)}else if(r==="smart"&&s)throw new Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify(["recordAndTuple",t.get("recordAndTuple")])}\`.`)}if(t.has("moduleAttributes")){if(t.has("deprecatedImportAssert")||t.has("importAssertions"))throw new Error("Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.");if(t.get("moduleAttributes").version!=="may-2020")throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.")}if(t.has("importAssertions")&&t.has("deprecatedImportAssert"))throw new Error("Cannot combine importAssertions and deprecatedImportAssert plugins.");if(!t.has("deprecatedImportAssert")&&t.has("importAttributes")&&t.get("importAttributes").deprecatedAssertSyntax&&t.set("deprecatedImportAssert",{}),t.has("recordAndTuple")){const r=t.get("recordAndTuple").syntaxType;if(r!=null){const s=["hash","bar"];if(!s.includes(r))throw new Error("The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: "+s.map(i=>`'${i}'`).join(", "))}}if(t.has("asyncDoExpressions")&&!t.has("doExpressions")){const r=new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.");throw r.missingPlugins="doExpressions",r}if(t.has("optionalChainingAssign")&&t.get("optionalChainingAssign").version!=="2023-07")throw new Error("The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.")}const ea={estree:kn,jsx:ko,flow:Do,typescript:Ko,v8intrinsic:Xo,placeholders:Yo},qo=Object.keys(ea);class Wo extends Bo{checkProto(e,r,s,i){if(e.type==="SpreadElement"||this.isObjectMethod(e)||e.computed||e.shorthand)return;const a=e.key;if((a.type==="Identifier"?a.name:a.value)==="__proto__"){if(r){this.raise(x.RecordNoProto,a);return}s.used&&(i?i.doubleProtoLoc===null&&(i.doubleProtoLoc=a.loc.start):this.raise(x.DuplicateProto,a)),s.used=!0}}shouldExitDescending(e,r){return e.type==="ArrowFunctionExpression"&&this.offsetToSourcePos(e.start)===r}getExpression(){this.enterInitialScopes(),this.nextToken();const e=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),e.comments=this.comments,e.errors=this.state.errors,this.optionFlags&128&&(e.tokens=this.tokens),e}parseExpression(e,r){return e?this.disallowInAnd(()=>this.parseExpressionBase(r)):this.allowInAnd(()=>this.parseExpressionBase(r))}parseExpressionBase(e){const r=this.state.startLoc,s=this.parseMaybeAssign(e);if(this.match(12)){const i=this.startNodeAt(r);for(i.expressions=[s];this.eat(12);)i.expressions.push(this.parseMaybeAssign(e));return this.toReferencedList(i.expressions),this.finishNode(i,"SequenceExpression")}return s}parseMaybeAssignDisallowIn(e,r){return this.disallowInAnd(()=>this.parseMaybeAssign(e,r))}parseMaybeAssignAllowIn(e,r){return this.allowInAnd(()=>this.parseMaybeAssign(e,r))}setOptionalParametersError(e,r){var s;e.optionalParametersLoc=(s=r==null?void 0:r.loc)!=null?s:this.state.startLoc}parseMaybeAssign(e,r){const s=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let o=this.parseYield();return r&&(o=r.call(this,o,s)),o}let i;e?i=!1:(e=new kt,i=!0);const{type:a}=this.state;(a===10||H(a))&&(this.state.potentialArrowAt=this.state.start);let n=this.parseMaybeConditional(e);if(r&&(n=r.call(this,n,s)),Rn(this.state.type)){const o=this.startNodeAt(s),u=this.state.value;if(o.operator=u,this.match(29)){this.toAssignable(n,!0),o.left=n;const p=s.index;e.doubleProtoLoc!=null&&e.doubleProtoLoc.index>=p&&(e.doubleProtoLoc=null),e.shorthandAssignLoc!=null&&e.shorthandAssignLoc.index>=p&&(e.shorthandAssignLoc=null),e.privateKeyLoc!=null&&e.privateKeyLoc.index>=p&&(this.checkDestructuringPrivate(e),e.privateKeyLoc=null)}else o.left=n;return this.next(),o.right=this.parseMaybeAssign(),this.checkLVal(n,this.finishNode(o,"AssignmentExpression")),o}else i&&this.checkExpressionErrors(e,!0);return n}parseMaybeConditional(e){const r=this.state.startLoc,s=this.state.potentialArrowAt,i=this.parseExprOps(e);return this.shouldExitDescending(i,s)?i:this.parseConditional(i,r,e)}parseConditional(e,r,s){if(this.eat(17)){const i=this.startNodeAt(r);return i.test=e,i.consequent=this.parseMaybeAssignAllowIn(),this.expect(14),i.alternate=this.parseMaybeAssign(),this.finishNode(i,"ConditionalExpression")}return e}parseMaybeUnaryOrPrivate(e){return this.match(139)?this.parsePrivateName():this.parseMaybeUnary(e)}parseExprOps(e){const r=this.state.startLoc,s=this.state.potentialArrowAt,i=this.parseMaybeUnaryOrPrivate(e);return this.shouldExitDescending(i,s)?i:this.parseExprOp(i,r,-1)}parseExprOp(e,r,s){if(this.isPrivateName(e)){const a=this.getPrivateNameSV(e);(s>=Dt(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(x.PrivateInExpectedIn,e,{identifierName:a}),this.classScope.usePrivateName(a,e.loc.start)}const i=this.state.type;if(Kn(i)&&(this.prodParam.hasIn||!this.match(58))){let a=Dt(i);if(a>s){if(i===39){if(this.expectPlugin("pipelineOperator"),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,r)}const n=this.startNodeAt(r);n.left=e,n.operator=this.state.value;const o=i===41||i===42,u=i===40;if(u&&(a=Dt(42)),this.next(),i===39&&this.hasPlugin(["pipelineOperator",{proposal:"minimal"}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(x.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);n.right=this.parseExprOpRightExpr(i,a);const p=this.finishNode(n,o||u?"LogicalExpression":"BinaryExpression"),h=this.state.type;if(u&&(h===41||h===42)||o&&h===40)throw this.raise(x.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(p,r,s)}}return e}parseExprOpRightExpr(e,r){const s=this.state.startLoc;switch(e){case 39:switch(this.getPluginOption("pipelineOperator","proposal")){case"hack":return this.withTopicBindingContext(()=>this.parseHackPipeBody());case"fsharp":return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(r))}if(this.getPluginOption("pipelineOperator","proposal")==="smart")return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(x.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e,r),s)});default:return this.parseExprOpBaseRightExpr(e,r)}}parseExprOpBaseRightExpr(e,r){const s=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),s,Xn(e)?r-1:r)}parseHackPipeBody(){var e;const{startLoc:r}=this.state,s=this.parseMaybeAssign();return vn.has(s.type)&&!((e=s.extra)!=null&&e.parenthesized)&&this.raise(x.PipeUnparenthesizedBody,r,{type:s.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(x.PipeTopicUnused,r),s}checkExponentialAfterUnary(e){this.match(57)&&this.raise(x.UnexpectedTokenUnaryExponentiation,e.argument)}parseMaybeUnary(e,r){const s=this.state.startLoc,i=this.isContextual(96);if(i&&this.recordAwaitIfAllowed()){this.next();const u=this.parseAwait(s);return r||this.checkExponentialAfterUnary(u),u}const a=this.match(34),n=this.startNode();if(Vn(this.state.type)){n.operator=this.state.value,n.prefix=!0,this.match(72)&&this.expectPlugin("throwExpressions");const u=this.match(89);if(this.next(),n.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&u){const p=n.argument;p.type==="Identifier"?this.raise(x.StrictDelete,n):this.hasPropertyAsPrivateName(p)&&this.raise(x.DeletePrivateField,n)}if(!a)return r||this.checkExponentialAfterUnary(n),this.finishNode(n,"UnaryExpression")}const o=this.parseUpdate(n,a,e);if(i){const{type:u}=this.state;if((this.hasPlugin("v8intrinsic")?Lr(u):Lr(u)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(x.AwaitNotInAsyncContext,s),this.parseAwait(s)}return o}parseUpdate(e,r,s){if(r){const n=e;return this.checkLVal(n.argument,this.finishNode(n,"UpdateExpression")),e}const i=this.state.startLoc;let a=this.parseExprSubscripts(s);if(this.checkExpressionErrors(s,!1))return a;for(;Un(this.state.type)&&!this.canInsertSemicolon();){const n=this.startNodeAt(i);n.operator=this.state.value,n.prefix=!1,n.argument=a,this.next(),this.checkLVal(a,a=this.finishNode(n,"UpdateExpression"))}return a}parseExprSubscripts(e){const r=this.state.startLoc,s=this.state.potentialArrowAt,i=this.parseExprAtom(e);return this.shouldExitDescending(i,s)?i:this.parseSubscripts(i,r)}parseSubscripts(e,r,s){const i={optionalChainMember:!1,maybeAsyncArrow:this.atPossibleAsyncArrow(e),stop:!1};do e=this.parseSubscript(e,r,s,i),i.maybeAsyncArrow=!1;while(!i.stop);return e}parseSubscript(e,r,s,i){const{type:a}=this.state;if(!s&&a===15)return this.parseBind(e,r,s,i);if(Ft(a))return this.parseTaggedTemplateExpression(e,r,i);let n=!1;if(a===18){if(s&&(this.raise(x.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return i.stop=!0,e;i.optionalChainMember=n=!0,this.next()}if(!s&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,r,i,n);{const o=this.eat(0);return o||n||this.eat(16)?this.parseMember(e,r,i,o,n):(i.stop=!0,e)}}parseMember(e,r,s,i,a){const n=this.startNodeAt(r);return n.object=e,n.computed=i,i?(n.property=this.parseExpression(),this.expect(3)):this.match(139)?(e.type==="Super"&&this.raise(x.SuperPrivateField,r),this.classScope.usePrivateName(this.state.value,this.state.startLoc),n.property=this.parsePrivateName()):n.property=this.parseIdentifier(!0),s.optionalChainMember?(n.optional=a,this.finishNode(n,"OptionalMemberExpression")):this.finishNode(n,"MemberExpression")}parseBind(e,r,s,i){const a=this.startNodeAt(r);return a.object=e,this.next(),a.callee=this.parseNoCallExpr(),i.stop=!0,this.parseSubscripts(this.finishNode(a,"BindExpression"),r,s)}parseCoverCallAndAsyncArrowHead(e,r,s,i){const a=this.state.maybeInArrowParameters;let n=null;this.state.maybeInArrowParameters=!0,this.next();const o=this.startNodeAt(r);o.callee=e;const{maybeAsyncArrow:u,optionalChainMember:p}=s;u&&(this.expressionScope.enter(bo()),n=new kt),p&&(o.optional=i),i?o.arguments=this.parseCallExpressionArguments(11):o.arguments=this.parseCallExpressionArguments(11,e.type!=="Super",o,n);let h=this.finishCallExpression(o,p);return u&&this.shouldParseAsyncArrow()&&!i?(s.stop=!0,this.checkDestructuringPrivate(n),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),h=this.parseAsyncArrowFromCallExpression(this.startNodeAt(r),h)):(u&&(this.checkExpressionErrors(n,!0),this.expressionScope.exit()),this.toReferencedArguments(h)),this.state.maybeInArrowParameters=a,h}toReferencedArguments(e,r){this.toReferencedListDeep(e.arguments,r)}parseTaggedTemplateExpression(e,r,s){const i=this.startNodeAt(r);return i.tag=e,i.quasi=this.parseTemplate(!0),s.optionalChainMember&&this.raise(x.OptionalChainingNoTemplate,r),this.finishNode(i,"TaggedTemplateExpression")}atPossibleAsyncArrow(e){return e.type==="Identifier"&&e.name==="async"&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start===5&&this.offsetToSourcePos(e.start)===this.state.potentialArrowAt}finishCallExpression(e,r){if(e.callee.type==="Import")if(e.arguments.length===0||e.arguments.length>2)this.raise(x.ImportCallArity,e);else for(const s of e.arguments)s.type==="SpreadElement"&&this.raise(x.ImportCallSpreadArgument,s);return this.finishNode(e,r?"OptionalCallExpression":"CallExpression")}parseCallExpressionArguments(e,r,s,i){const a=[];let n=!0;const o=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(e);){if(n)n=!1;else if(this.expect(12),this.match(e)){s&&this.addTrailingCommaExtraToNode(s),this.next();break}a.push(this.parseExprListItem(!1,i,r))}return this.state.inFSharpPipelineDirectBody=o,a}shouldParseAsyncArrow(){return this.match(19)&&!this.canInsertSemicolon()}parseAsyncArrowFromCallExpression(e,r){var s;return this.resetPreviousNodeTrailingComments(r),this.expect(19),this.parseArrowExpression(e,r.arguments,!0,(s=r.extra)==null?void 0:s.trailingCommaLoc),r.innerComments&&nt(e,r.innerComments),r.callee.trailingComments&&nt(e,r.callee.trailingComments),e}parseNoCallExpr(){const e=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,!0)}parseExprAtom(e){let r,s=null;const{type:i}=this.state;switch(i){case 79:return this.parseSuper();case 83:return r=this.startNode(),this.next(),this.match(16)?this.parseImportMetaProperty(r):this.match(10)?this.optionFlags&256?this.parseImportCall(r):this.finishNode(r,"Import"):(this.raise(x.UnsupportedImport,this.state.lastTokStartLoc),this.finishNode(r,"Import"));case 78:return r=this.startNode(),this.next(),this.finishNode(r,"ThisExpression");case 90:return this.parseDo(this.startNode(),!1);case 56:case 31:return this.readRegexp(),this.parseRegExpLiteral(this.state.value);case 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134: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 a=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(a)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,e);case 6:case 7:return this.parseObjectLike(this.state.type===6?9:8,!1,!0);case 5:return this.parseObjectLike(8,!1,!1,e);case 68:return this.parseFunctionOrFunctionSent();case 26:s=this.parseDecorators();case 80:return this.parseClass(this.maybeTakeDecorators(s,this.startNode()),!1);case 77:return this.parseNewOrNewTarget();case 25:case 24:return this.parseTemplate(!1);case 15:{r=this.startNode(),this.next(),r.object=null;const a=r.callee=this.parseNoCallExpr();if(a.type==="MemberExpression")return this.finishNode(r,"BindExpression");throw this.raise(x.UnsupportedBind,a)}case 139:return this.raise(x.PrivateInExpectedIn,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 a=this.getPluginOption("pipelineOperator","proposal");if(a)return this.parseTopicReference(a);this.unexpected();break}case 47:{const a=this.input.codePointAt(this.nextTokenStart());be(a)||a===62?this.expectOnePlugin(["jsx","flow","typescript"]):this.unexpected();break}default:if(i===137)return this.parseDecimalLiteral(this.state.value);if(H(i)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();const a=this.state.potentialArrowAt===this.state.start,n=this.state.containsEsc,o=this.parseIdentifier();if(!n&&o.name==="async"&&!this.canInsertSemicolon()){const{type:u}=this.state;if(u===68)return this.resetPreviousNodeTrailingComments(o),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(o));if(H(u))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(o)):o;if(u===90)return this.resetPreviousNodeTrailingComments(o),this.parseDo(this.startNodeAtNode(o),!0)}return a&&this.match(19)&&!this.canInsertSemicolon()?(this.next(),this.parseArrowExpression(this.startNodeAtNode(o),[o],!1)):o}else this.unexpected()}}parseTopicReferenceThenEqualsSign(e,r){const s=this.getPluginOption("pipelineOperator","proposal");if(s)return this.state.type=e,this.state.value=r,this.state.pos--,this.state.end--,this.state.endLoc=oe(this.state.endLoc,-1),this.parseTopicReference(s);this.unexpected()}parseTopicReference(e){const r=this.startNode(),s=this.state.startLoc,i=this.state.type;return this.next(),this.finishTopicReference(r,s,e,i)}finishTopicReference(e,r,s,i){if(this.testTopicReferenceConfiguration(s,r,i))return s==="hack"?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(x.PipeTopicUnbound,r),this.registerTopicReference(),this.finishNode(e,"TopicReference")):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(x.PrimaryTopicNotAllowed,r),this.registerTopicReference(),this.finishNode(e,"PipelinePrimaryTopicReference"));throw this.raise(x.PipeTopicUnconfiguredToken,r,{token:Oe(i)})}testTopicReferenceConfiguration(e,r,s){switch(e){case"hack":return this.hasPlugin(["pipelineOperator",{topicToken:Oe(s)}]);case"smart":return s===27;default:throw this.raise(x.PipeTopicRequiresHackPipes,r)}}parseAsyncArrowUnaryFunction(e){this.prodParam.enter(Lt(!0,this.prodParam.hasYield));const r=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(x.LineTerminatorBeforeArrow,this.state.curPosition()),this.expect(19),this.parseArrowExpression(e,r,!0)}parseDo(e,r){this.expectPlugin("doExpressions"),r&&this.expectPlugin("asyncDoExpressions"),e.async=r,this.next();const s=this.state.labels;return this.state.labels=[],r?(this.prodParam.enter(2),e.body=this.parseBlock(),this.prodParam.exit()):e.body=this.parseBlock(),this.state.labels=s,this.finishNode(e,"DoExpression")}parseSuper(){const e=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16)?this.raise(x.SuperNotAllowed,e):!this.scope.allowSuper&&!(this.optionFlags&16)&&this.raise(x.UnexpectedSuper,e),!this.match(10)&&!this.match(0)&&!this.match(16)&&this.raise(x.UnsupportedSuper,e),this.finishNode(e,"Super")}parsePrivateName(){const e=this.startNode(),r=this.startNodeAt(oe(this.state.startLoc,1)),s=this.state.value;return this.next(),e.id=this.createIdentifier(r,s),this.finishNode(e,"PrivateName")}parseFunctionOrFunctionSent(){const e=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){const r=this.createIdentifier(this.startNodeAtNode(e),"function");return this.next(),this.match(103)?this.expectPlugin("functionSent"):this.hasPlugin("functionSent")||this.unexpected(),this.parseMetaProperty(e,r,"sent")}return this.parseFunction(e)}parseMetaProperty(e,r,s){e.meta=r;const i=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==s||i)&&this.raise(x.UnsupportedMetaProperty,e.property,{target:r.name,onlyValidPropertyName:s}),this.finishNode(e,"MetaProperty")}parseImportMetaProperty(e){const r=this.createIdentifier(this.startNodeAtNode(e),"import");if(this.next(),this.isContextual(101))this.inModule||this.raise(x.ImportMetaOutsideModule,r),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){const s=this.isContextual(105);if(this.expectPlugin(s?"sourcePhaseImports":"deferredImportEvaluation"),!(this.optionFlags&256))throw this.raise(x.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),e.phase=s?"source":"defer",this.parseImportCall(e)}return this.parseMetaProperty(e,r,"meta")}parseLiteralAtNode(e,r,s){return this.addExtra(s,"rawValue",e),this.addExtra(s,"raw",this.input.slice(this.offsetToSourcePos(s.start),this.state.end)),s.value=e,this.next(),this.finishNode(s,r)}parseLiteral(e,r){const s=this.startNode();return this.parseLiteralAtNode(e,r,s)}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 r=this.startNode();return this.addExtra(r,"raw",this.input.slice(this.offsetToSourcePos(r.start),this.state.end)),r.pattern=e.pattern,r.flags=e.flags,this.next(),this.finishNode(r,"RegExpLiteral")}parseBooleanLiteral(e){const r=this.startNode();return r.value=e,this.next(),this.finishNode(r,"BooleanLiteral")}parseNullLiteral(){const e=this.startNode();return this.next(),this.finishNode(e,"NullLiteral")}parseParenAndDistinguishExpression(e){const r=this.state.startLoc;let s;this.next(),this.expressionScope.enter(xo());const i=this.state.maybeInArrowParameters,a=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;const n=this.state.startLoc,o=[],u=new kt;let p=!0,h,E;for(;!this.match(11);){if(p)p=!1;else if(this.expect(12,u.optionalParametersLoc===null?null:u.optionalParametersLoc),this.match(11)){E=this.state.startLoc;break}if(this.match(21)){const w=this.state.startLoc;if(h=this.state.startLoc,o.push(this.parseParenItem(this.parseRestBinding(),w)),!this.checkCommaAfterRest(41))break}else o.push(this.parseMaybeAssignAllowIn(u,this.parseParenItem))}const I=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=i,this.state.inFSharpPipelineDirectBody=a;let A=this.startNodeAt(r);return e&&this.shouldParseArrow(o)&&(A=this.parseArrow(A))?(this.checkDestructuringPrivate(u),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(A,o,!1),A):(this.expressionScope.exit(),o.length||this.unexpected(this.state.lastTokStartLoc),E&&this.unexpected(E),h&&this.unexpected(h),this.checkExpressionErrors(u,!0),this.toReferencedListDeep(o,!0),o.length>1?(s=this.startNodeAt(n),s.expressions=o,this.finishNode(s,"SequenceExpression"),this.resetEndLocation(s,I)):s=o[0],this.wrapParenthesis(r,s))}wrapParenthesis(e,r){if(!(this.optionFlags&512))return this.addExtra(r,"parenthesized",!0),this.addExtra(r,"parenStart",e.index),this.takeSurroundingComments(r,e.index,this.state.lastTokEndLoc.index),r;const s=this.startNodeAt(e);return s.expression=r,this.finishNode(s,"ParenthesizedExpression")}shouldParseArrow(e){return!this.canInsertSemicolon()}parseArrow(e){if(this.eat(19))return e}parseParenItem(e,r){return e}parseNewOrNewTarget(){const e=this.startNode();if(this.next(),this.match(16)){const r=this.createIdentifier(this.startNodeAtNode(e),"new");this.next();const s=this.parseMetaProperty(e,r,"target");return!this.scope.inNonArrowFunction&&!this.scope.inClass&&!(this.optionFlags&4)&&this.raise(x.UnexpectedNewTarget,s),s}return this.parseNew(e)}parseNew(e){if(this.parseNewCallee(e),this.eat(10)){const r=this.parseExprList(11);this.toReferencedList(r),e.arguments=r}else e.arguments=[];return this.finishNode(e,"NewExpression")}parseNewCallee(e){const r=this.match(83),s=this.parseNoCallExpr();e.callee=s,r&&(s.type==="Import"||s.type==="ImportExpression")&&this.raise(x.ImportCallNotNewExpression,s)}parseTemplateElement(e){const{start:r,startLoc:s,end:i,value:a}=this.state,n=r+1,o=this.startNodeAt(oe(s,1));a===null&&(e||this.raise(x.InvalidEscapeSequenceTemplate,oe(this.state.firstInvalidTemplateEscapePos,1)));const u=this.match(24),p=u?-1:-2,h=i+p;o.value={raw:this.input.slice(n,h).replace(/\r\n?/g,`
|
|
143
|
-
`),cooked:a===null?null:a.slice(1,p)},o.tail=u,this.next();const E=this.finishNode(o,"TemplateElement");return this.resetEndLocation(E,oe(this.state.lastTokEndLoc,p)),E}parseTemplate(e){const r=this.startNode();let s=this.parseTemplateElement(e);const i=[s],a=[];for(;!s.tail;)a.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),i.push(s=this.parseTemplateElement(e));return r.expressions=a,r.quasis=i,this.finishNode(r,"TemplateLiteral")}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(e,r,s,i){s&&this.expectPlugin("recordAndTuple");const a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const n=Object.create(null);let o=!0;const u=this.startNode();for(u.properties=[],this.next();!this.match(e);){if(o)o=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(u);break}let h;r?h=this.parseBindingProperty():(h=this.parsePropertyDefinition(i),this.checkProto(h,s,n,i)),s&&!this.isObjectProperty(h)&&h.type!=="SpreadElement"&&this.raise(x.InvalidRecordProperty,h),h.shorthand&&this.addExtra(h,"shorthand",!0),u.properties.push(h)}this.next(),this.state.inFSharpPipelineDirectBody=a;let p="ObjectExpression";return r?p="ObjectPattern":s&&(p="RecordExpression"),this.finishNode(u,p)}addTrailingCommaExtraToNode(e){this.addExtra(e,"trailingComma",this.state.lastTokStartLoc.index),this.addExtra(e,"trailingCommaLoc",this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(e){return!e.computed&&e.key.type==="Identifier"&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(e){let r=[];if(this.match(26))for(this.hasPlugin("decorators")&&this.raise(x.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)r.push(this.parseDecorator());const s=this.startNode();let i=!1,a=!1,n;if(this.match(21))return r.length&&this.unexpected(),this.parseSpread();r.length&&(s.decorators=r,r=[]),s.method=!1,e&&(n=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(s);const u=this.state.containsEsc;if(this.parsePropertyName(s,e),!o&&!u&&this.maybeAsyncOrAccessorProp(s)){const{key:p}=s,h=p.name;h==="async"&&!this.hasPrecedingLineBreak()&&(i=!0,this.resetPreviousNodeTrailingComments(p),o=this.eat(55),this.parsePropertyName(s)),(h==="get"||h==="set")&&(a=!0,this.resetPreviousNodeTrailingComments(p),s.kind=h,this.match(55)&&(o=!0,this.raise(x.AccessorIsGenerator,this.state.curPosition(),{kind:h}),this.next()),this.parsePropertyName(s))}return this.parseObjPropValue(s,n,o,i,!1,a,e)}getGetterSetterExpectedParamCount(e){return e.kind==="get"?0:1}getObjectOrClassMethodParams(e){return e.params}checkGetterSetterParams(e){var r;const s=this.getGetterSetterExpectedParamCount(e),i=this.getObjectOrClassMethodParams(e);i.length!==s&&this.raise(e.kind==="get"?x.BadGetterArity:x.BadSetterArity,e),e.kind==="set"&&((r=i[i.length-1])==null?void 0:r.type)==="RestElement"&&this.raise(x.BadSetterRestParameter,e)}parseObjectMethod(e,r,s,i,a){if(a){const n=this.parseMethod(e,r,!1,!1,!1,"ObjectMethod");return this.checkGetterSetterParams(n),n}if(s||r||this.match(10))return i&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,r,s,!1,!1,"ObjectMethod")}parseObjectProperty(e,r,s,i){if(e.shorthand=!1,this.eat(14))return e.value=s?this.parseMaybeDefault(this.state.startLoc):this.parseMaybeAssignAllowIn(i),this.finishNode(e,"ObjectProperty");if(!e.computed&&e.key.type==="Identifier"){if(this.checkReservedWord(e.key.name,e.key.loc.start,!0,!1),s)e.value=this.parseMaybeDefault(r,Pe(e.key));else if(this.match(29)){const a=this.state.startLoc;i!=null?i.shorthandAssignLoc===null&&(i.shorthandAssignLoc=a):this.raise(x.InvalidCoverInitializedName,a),e.value=this.parseMaybeDefault(r,Pe(e.key))}else e.value=Pe(e.key);return e.shorthand=!0,this.finishNode(e,"ObjectProperty")}}parseObjPropValue(e,r,s,i,a,n,o){const u=this.parseObjectMethod(e,s,i,a,n)||this.parseObjectProperty(e,r,a,o);return u||this.unexpected(),u}parsePropertyName(e,r){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{const{type:s,value:i}=this.state;let a;if(fe(s))a=this.parseIdentifier(!0);else switch(s){case 135:a=this.parseNumericLiteral(i);break;case 134:a=this.parseStringLiteral(i);break;case 136:a=this.parseBigIntLiteral(i);break;case 139:{const n=this.state.startLoc;r!=null?r.privateKeyLoc===null&&(r.privateKeyLoc=n):this.raise(x.UnexpectedPrivateField,n),a=this.parsePrivateName();break}default:if(s===137){a=this.parseDecimalLiteral(i);break}this.unexpected()}e.key=a,s!==139&&(e.computed=!1)}}initFunction(e,r){e.id=null,e.generator=!1,e.async=r}parseMethod(e,r,s,i,a,n,o=!1){this.initFunction(e,s),e.generator=r,this.scope.enter(18|(o?64:0)|(a?32:0)),this.prodParam.enter(Lt(s,e.generator)),this.parseFunctionParams(e,i);const u=this.parseFunctionBodyAndFinish(e,n,!0);return this.prodParam.exit(),this.scope.exit(),u}parseArrayLike(e,r,s,i){s&&this.expectPlugin("recordAndTuple");const a=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;const n=this.startNode();return this.next(),n.elements=this.parseExprList(e,!s,i,n),this.state.inFSharpPipelineDirectBody=a,this.finishNode(n,s?"TupleExpression":"ArrayExpression")}parseArrowExpression(e,r,s,i){this.scope.enter(6);let a=Lt(s,!1);!this.match(5)&&this.prodParam.hasIn&&(a|=8),this.prodParam.enter(a),this.initFunction(e,s);const n=this.state.maybeInArrowParameters;return r&&(this.state.maybeInArrowParameters=!0,this.setArrowFunctionParameters(e,r,i)),this.state.maybeInArrowParameters=!1,this.parseFunctionBody(e,!0),this.prodParam.exit(),this.scope.exit(),this.state.maybeInArrowParameters=n,this.finishNode(e,"ArrowFunctionExpression")}setArrowFunctionParameters(e,r,s){this.toAssignableList(r,s,!1),e.params=r}parseFunctionBodyAndFinish(e,r,s=!1){return this.parseFunctionBody(e,!1,s),this.finishNode(e,r)}parseFunctionBody(e,r,s=!1){const i=r&&!this.match(5);if(this.expressionScope.enter(zi()),i)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,r,!1);else{const a=this.state.strict,n=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),e.body=this.parseBlock(!0,!1,o=>{const u=!this.isSimpleParamList(e.params);o&&u&&this.raise(x.IllegalLanguageModeDirective,(e.kind==="method"||e.kind==="constructor")&&e.key?e.key.loc.end:e);const p=!a&&this.state.strict;this.checkParams(e,!this.state.strict&&!r&&!s&&!u,r,p),this.state.strict&&e.id&&this.checkIdentifier(e.id,65,p)}),this.prodParam.exit(),this.state.labels=n}this.expressionScope.exit()}isSimpleParameter(e){return e.type==="Identifier"}isSimpleParamList(e){for(let r=0,s=e.length;r<s;r++)if(!this.isSimpleParameter(e[r]))return!1;return!0}checkParams(e,r,s,i=!0){const a=!r&&new Set,n={type:"FormalParameters"};for(const o of e.params)this.checkLVal(o,n,5,a,i)}parseExprList(e,r,s,i){const a=[];let n=!0;for(;!this.eat(e);){if(n)n=!1;else if(this.expect(12),this.match(e)){i&&this.addTrailingCommaExtraToNode(i),this.next();break}a.push(this.parseExprListItem(r,s))}return a}parseExprListItem(e,r,s){let i;if(this.match(12))e||this.raise(x.UnexpectedToken,this.state.curPosition(),{unexpected:","}),i=null;else if(this.match(21)){const a=this.state.startLoc;i=this.parseParenItem(this.parseSpread(r),a)}else if(this.match(17)){this.expectPlugin("partialApplication"),s||this.raise(x.UnexpectedArgumentPlaceholder,this.state.startLoc);const a=this.startNode();this.next(),i=this.finishNode(a,"ArgumentPlaceholder")}else i=this.parseMaybeAssignAllowIn(r,this.parseParenItem);return i}parseIdentifier(e){const r=this.startNode(),s=this.parseIdentifierName(e);return this.createIdentifier(r,s)}createIdentifier(e,r){return e.name=r,e.loc.identifierName=r,this.finishNode(e,"Identifier")}parseIdentifierName(e){let r;const{startLoc:s,type:i}=this.state;fe(i)?r=this.state.value:this.unexpected();const a=Bn(i);return e?a&&this.replaceToken(132):this.checkReservedWord(r,s,a,!1),this.next(),r}checkReservedWord(e,r,s,i){if(e.length>10||!to(e))return;if(s&&Qn(e)){this.raise(x.UnexpectedKeyword,r,{keyword:e});return}if((this.state.strict?i?Xi:$i:Vi)(e,this.inModule)){this.raise(x.UnexpectedReservedWord,r,{reservedWord:e});return}else if(e==="yield"){if(this.prodParam.hasYield){this.raise(x.YieldBindingIdentifier,r);return}}else if(e==="await"){if(this.prodParam.hasAwait){this.raise(x.AwaitBindingIdentifier,r);return}if(this.scope.inStaticBlock){this.raise(x.AwaitBindingIdentifierInStaticBlock,r);return}this.expressionScope.recordAsyncArrowParametersError(r)}else if(e==="arguments"&&this.scope.inClassAndNotInNonArrowFunction){this.raise(x.ArgumentsInClass,r);return}}recordAwaitIfAllowed(){const e=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return e&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),e}parseAwait(e){const r=this.startNodeAt(e);return this.expressionScope.recordParameterInitializerError(x.AwaitExpressionFormalParameter,r),this.eat(55)&&this.raise(x.ObsoleteAwaitStar,r),!this.scope.inFunction&&!(this.optionFlags&1)&&(this.isAmbiguousAwait()?this.ambiguousScriptDifferentAst=!0:this.sawUnambiguousESM=!0),this.state.soloAwait||(r.argument=this.parseMaybeUnary(null,!0)),this.finishNode(r,"AwaitExpression")}isAmbiguousAwait(){if(this.hasPrecedingLineBreak())return!0;const{type:e}=this.state;return e===53||e===10||e===0||Ft(e)||e===102&&!this.state.containsEsc||e===138||e===56||this.hasPlugin("v8intrinsic")&&e===54}parseYield(){const e=this.startNode();this.expressionScope.recordParameterInitializerError(x.YieldInParameter,e),this.next();let r=!1,s=null;if(!this.hasPrecedingLineBreak())switch(r=this.eat(55),this.state.type){case 13:case 140:case 8:case 11:case 3:case 9:case 14:case 12:if(!r)break;default:s=this.parseMaybeAssign()}return e.delegate=r,e.argument=s,this.finishNode(e,"YieldExpression")}parseImportCall(e){if(this.next(),e.source=this.parseMaybeAssignAllowIn(),e.options=null,this.eat(12)&&!this.match(11)&&(e.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(x.ImportCallArity,e)}return this.expect(11),this.finishNode(e,"ImportExpression")}checkPipelineAtInfixOperator(e,r){this.hasPlugin(["pipelineOperator",{proposal:"smart"}])&&e.type==="SequenceExpression"&&this.raise(x.PipelineHeadSequenceExpression,r)}parseSmartPipelineBodyInStyle(e,r){if(this.isSimpleReference(e)){const s=this.startNodeAt(r);return s.callee=e,this.finishNode(s,"PipelineBareFunction")}else{const s=this.startNodeAt(r);return this.checkSmartPipeTopicBodyEarlyErrors(r),s.expression=e,this.finishNode(s,"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(x.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(x.PipelineTopicUnused,e)}withTopicBindingContext(e){const r=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:1,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=r}}withSmartMixTopicForbiddingContext(e){if(this.hasPlugin(["pipelineOperator",{proposal:"smart"}])){const r=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=r}}else return e()}withSoloAwaitPermittingContext(e){const r=this.state.soloAwait;this.state.soloAwait=!0;try{return e()}finally{this.state.soloAwait=r}}allowInAnd(e){const r=this.prodParam.currentFlags();if(8&~r){this.prodParam.enter(r|8);try{return e()}finally{this.prodParam.exit()}}return e()}disallowInAnd(e){const r=this.prodParam.currentFlags();if(8&r){this.prodParam.enter(r&-9);try{return e()}finally{this.prodParam.exit()}}return e()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(e){const r=this.state.startLoc;this.state.potentialArrowAt=this.state.start;const s=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;const i=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),r,e);return this.state.inFSharpPipelineDirectBody=s,i}parseModuleExpression(){this.expectPlugin("moduleBlocks");const e=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);const r=this.startNodeAt(this.state.endLoc);this.next();const s=this.initializeScopes(!0);this.enterInitialScopes();try{e.body=this.parseProgram(r,8,"module")}finally{s()}return this.finishNode(e,"ModuleExpression")}parsePropertyNamePrefixOperator(e){}}const gr={kind:1},Ho={kind:2},zo=/[\uD800-\uDFFF]/u,Ar=/in(?:stanceof)?/y;function Go(t,e,r){for(let s=0;s<t.length;s++){const i=t[s],{type:a}=i;if(typeof a=="number"){{if(a===139){const{loc:n,start:o,value:u,end:p}=i,h=o+1,E=oe(n.start,1);t.splice(s,1,new Ne({type:Se(27),value:"#",start:o,end:h,startLoc:n.start,endLoc:E}),new Ne({type:Se(132),value:u,start:h,end:p,startLoc:E,endLoc:n.end})),s++;continue}if(Ft(a)){const{loc:n,start:o,value:u,end:p}=i,h=o+1,E=oe(n.start,1);let I;e.charCodeAt(o-r)===96?I=new Ne({type:Se(22),value:"`",start:o,end:h,startLoc:n.start,endLoc:E}):I=new Ne({type:Se(8),value:"}",start:o,end:h,startLoc:n.start,endLoc:E});let A,w,P,v;a===24?(w=p-1,P=oe(n.end,-1),A=u===null?null:u.slice(1,-1),v=new Ne({type:Se(22),value:"`",start:w,end:p,startLoc:P,endLoc:n.end})):(w=p-2,P=oe(n.end,-2),A=u===null?null:u.slice(1,-2),v=new Ne({type:Se(23),value:"${",start:w,end:p,startLoc:P,endLoc:n.end})),t.splice(s,1,I,new Ne({type:Se(20),value:A,start:h,end:w,startLoc:E,endLoc:P}),v),s+=2;continue}}i.type=Se(a)}}return t}class Qo extends Wo{parseTopLevel(e,r){return e.program=this.parseProgram(r),e.comments=this.comments,this.optionFlags&128&&(e.tokens=Go(this.tokens,this.input,this.startIndex)),this.finishNode(e,"File")}parseProgram(e,r=140,s=this.options.sourceType){if(e.sourceType=s,e.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(e,!0,!0,r),this.inModule){if(!(this.optionFlags&32)&&this.scope.undefinedExports.size>0)for(const[a,n]of Array.from(this.scope.undefinedExports))this.raise(x.ModuleExportUndefined,n,{localName:a});this.addExtra(e,"topLevelAwait",this.state.hasTopLevelAwait)}let i;return r===140?i=this.finishNode(e,"Program"):i=this.finishNodeAt(e,"Program",oe(this.state.startLoc,-1)),i}stmtToDirective(e){const r=e;r.type="Directive",r.value=r.expression,delete r.expression;const s=r.value,i=s.value,a=this.input.slice(this.offsetToSourcePos(s.start),this.offsetToSourcePos(s.end)),n=s.value=a.slice(1,-1);return this.addExtra(s,"raw",a),this.addExtra(s,"rawValue",n),this.addExtra(s,"expressionValue",i),s.type="DirectiveLiteral",r}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(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(e,r){if(be(e)){if(Ar.lastIndex=r,Ar.test(this.input)){const s=this.codePointAtPos(Ar.lastIndex);if(!Ye(s)&&s!==92)return!1}return!0}else return e===92}chStartsBindingPattern(e){return e===91||e===123}hasFollowingBindingAtom(){const e=this.nextTokenStart(),r=this.codePointAtPos(e);return this.chStartsBindingPattern(r)||this.chStartsBindingIdentifier(r,e)}hasInLineFollowingBindingIdentifierOrBrace(){const e=this.nextTokenInLineStart(),r=this.codePointAtPos(e);return r===123||this.chStartsBindingIdentifier(r,e)}startsUsingForOf(){const{type:e,containsEsc:r}=this.lookahead();if(e===102&&!r)return!1;if(H(e)&&!this.hasFollowingLineBreak())return this.expectPlugin("explicitResourceManagement"),!0}startsAwaitUsing(){let e=this.nextTokenInLineStart();if(this.isUnparsedContextual(e,"using")){e=this.nextTokenInLineStartSince(e+5);const r=this.codePointAtPos(e);if(this.chStartsBindingIdentifier(r,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 r=0;return this.options.annexB&&!this.state.strict&&(r|=4,e&&(r|=8)),this.parseStatementLike(r)}parseStatement(){return this.parseStatementLike(0)}parseStatementLike(e){let r=null;return this.match(26)&&(r=this.parseDecorators(!0)),this.parseStatementContent(e,r)}parseStatementContent(e,r){const s=this.state.type,i=this.startNode(),a=!!(e&2),n=!!(e&4),o=e&1;switch(s){case 60:return this.parseBreakContinueStatement(i,!0);case 63:return this.parseBreakContinueStatement(i,!1);case 64:return this.parseDebuggerStatement(i);case 90:return this.parseDoWhileStatement(i);case 91:return this.parseForStatement(i);case 68:if(this.lookaheadCharCode()===46)break;return n||this.raise(this.state.strict?x.StrictFunction:this.options.annexB?x.SloppyFunctionAnnexB:x.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(i,!1,!a&&n);case 80:return a||this.unexpected(),this.parseClass(this.maybeTakeDecorators(r,i),!0);case 69:return this.parseIfStatement(i);case 70:return this.parseReturnStatement(i);case 71:return this.parseSwitchStatement(i);case 72:return this.parseThrowStatement(i);case 73:return this.parseTryStatement(i);case 96:if(!this.state.containsEsc&&this.startsAwaitUsing())return this.recordAwaitIfAllowed()?a||this.raise(x.UnexpectedLexicalDeclaration,i):this.raise(x.AwaitUsingNotInAsyncContext,i),this.next(),this.parseVarStatement(i,"await using");break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin("explicitResourceManagement"),!this.scope.inModule&&this.scope.inTopLevel?this.raise(x.UnexpectedUsingDeclaration,this.state.startLoc):a||this.raise(x.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(i,"using");case 100:{if(this.state.containsEsc)break;const h=this.nextTokenStart(),E=this.codePointAtPos(h);if(E!==91&&(!a&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(E,h)&&E!==123))break}case 75:a||this.raise(x.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{const h=this.state.value;return this.parseVarStatement(i,h)}case 92:return this.parseWhileStatement(i);case 76:return this.parseWithStatement(i);case 5:return this.parseBlock();case 13:return this.parseEmptyStatement(i);case 83:{const h=this.lookaheadCharCode();if(h===40||h===46)break}case 82:{!(this.optionFlags&8)&&!o&&this.raise(x.UnexpectedImportExport,this.state.startLoc),this.next();let h;return s===83?(h=this.parseImport(i),h.type==="ImportDeclaration"&&(!h.importKind||h.importKind==="value")&&(this.sawUnambiguousESM=!0)):(h=this.parseExport(i,r),(h.type==="ExportNamedDeclaration"&&(!h.exportKind||h.exportKind==="value")||h.type==="ExportAllDeclaration"&&(!h.exportKind||h.exportKind==="value")||h.type==="ExportDefaultDeclaration")&&(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(h),h}default:if(this.isAsyncFunction())return a||this.raise(x.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(i,!0,!a&&n)}const u=this.state.value,p=this.parseExpression();return H(s)&&p.type==="Identifier"&&this.eat(14)?this.parseLabeledStatement(i,u,p,e):this.parseExpressionStatement(i,p,r)}assertModuleNodeAllowed(e){!(this.optionFlags&8)&&!this.inModule&&this.raise(x.ImportOutsideModule,e)}decoratorsEnabledBeforeExport(){return this.hasPlugin("decorators-legacy")?!0:this.hasPlugin("decorators")&&this.getPluginOption("decorators","decoratorsBeforeExport")!==!1}maybeTakeDecorators(e,r,s){if(e){var i;(i=r.decorators)!=null&&i.length?(typeof this.getPluginOption("decorators","decoratorsBeforeExport")!="boolean"&&this.raise(x.DecoratorsBeforeAfterExport,r.decorators[0]),r.decorators.unshift(...e)):r.decorators=e,this.resetStartLocationFromNode(r,e[0]),s&&this.resetStartLocationFromNode(s,r)}return r}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(e){const r=[];do r.push(this.parseDecorator());while(this.match(26));if(this.match(82))e||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(x.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(x.UnexpectedLeadingDecorator,this.state.startLoc);return r}parseDecorator(){this.expectOnePlugin(["decorators","decorators-legacy"]);const e=this.startNode();if(this.next(),this.hasPlugin("decorators")){const r=this.state.startLoc;let s;if(this.match(10)){const i=this.state.startLoc;this.next(),s=this.parseExpression(),this.expect(11),s=this.wrapParenthesis(i,s);const a=this.state.startLoc;e.expression=this.parseMaybeDecoratorArguments(s,i),this.getPluginOption("decorators","allowCallParenthesized")===!1&&e.expression!==s&&this.raise(x.DecoratorArgumentsOutsideParentheses,a)}else{for(s=this.parseIdentifier(!1);this.eat(16);){const i=this.startNodeAt(r);i.object=s,this.match(139)?(this.classScope.usePrivateName(this.state.value,this.state.startLoc),i.property=this.parsePrivateName()):i.property=this.parseIdentifier(!0),i.computed=!1,s=this.finishNode(i,"MemberExpression")}e.expression=this.parseMaybeDecoratorArguments(s,r)}}else e.expression=this.parseExprSubscripts();return this.finishNode(e,"Decorator")}parseMaybeDecoratorArguments(e,r){if(this.eat(10)){const s=this.startNodeAt(r);return s.callee=e,s.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(s.arguments),this.finishNode(s,"CallExpression")}return e}parseBreakContinueStatement(e,r){return this.next(),this.isLineTerminator()?e.label=null:(e.label=this.parseIdentifier(),this.semicolon()),this.verifyBreakContinue(e,r),this.finishNode(e,r?"BreakStatement":"ContinueStatement")}verifyBreakContinue(e,r){let s;for(s=0;s<this.state.labels.length;++s){const i=this.state.labels[s];if((e.label==null||i.name===e.label.name)&&(i.kind!=null&&(r||i.kind===1)||e.label&&r))break}if(s===this.state.labels.length){const i=r?"BreakStatement":"ContinueStatement";this.raise(x.IllegalBreakContinue,e,{type:i})}}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(gr),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(gr);let r=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(r=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return r!==null&&this.unexpected(r),this.parseFor(e,null);const s=this.isContextual(100);{const u=this.isContextual(96)&&this.startsAwaitUsing(),p=u||this.isContextual(107)&&this.startsUsingForOf(),h=s&&this.hasFollowingBindingAtom()||p;if(this.match(74)||this.match(75)||h){const E=this.startNode();let I;u?(I="await using",this.recordAwaitIfAllowed()||this.raise(x.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):I=this.state.value,this.next(),this.parseVar(E,!0,I);const A=this.finishNode(E,"VariableDeclaration"),w=this.match(58);return w&&p&&this.raise(x.ForInUsing,A),(w||this.isContextual(102))&&A.declarations.length===1?this.parseForIn(e,A,r):(r!==null&&this.unexpected(r),this.parseFor(e,A))}}const i=this.isContextual(95),a=new kt,n=this.parseExpression(!0,a),o=this.isContextual(102);if(o&&(s&&this.raise(x.ForOfLet,n),r===null&&i&&n.type==="Identifier"&&this.raise(x.ForOfAsync,n)),o||this.match(58)){this.checkDestructuringPrivate(a),this.toAssignable(n,!0);const u=o?"ForOfStatement":"ForInStatement";return this.checkLVal(n,{type:u}),this.parseForIn(e,n,r)}else this.checkExpressionErrors(a,!0);return r!==null&&this.unexpected(r),this.parseFor(e,n)}parseFunctionStatement(e,r,s){return this.next(),this.parseFunction(e,1|(s?2:0)|(r?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.optionFlags&2)&&this.raise(x.IllegalReturn,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 r=e.cases=[];this.expect(5),this.state.labels.push(Ho),this.scope.enter(0);let s;for(let i;!this.match(8);)if(this.match(61)||this.match(65)){const a=this.match(61);s&&this.finishNode(s,"SwitchCase"),r.push(s=this.startNode()),s.consequent=[],this.next(),a?s.test=this.parseExpression():(i&&this.raise(x.MultipleDefaultsInSwitch,this.state.lastTokStartLoc),i=!0,s.test=null),this.expect(14)}else s?s.consequent.push(this.parseStatementListItem()):this.unexpected();return this.scope.exit(),s&&this.finishNode(s,"SwitchCase"),this.next(),this.state.labels.pop(),this.finishNode(e,"SwitchStatement")}parseThrowStatement(e){return this.next(),this.hasPrecedingLineBreak()&&this.raise(x.NewlineAfterThrow,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&&e.type==="Identifier"?8:0),this.checkLVal(e,{type:"CatchClause"},9),e}parseTryStatement(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.match(62)){const r=this.startNode();this.next(),this.match(10)?(this.expect(10),r.param=this.parseCatchClauseParam(),this.expect(11)):(r.param=null,this.scope.enter(0)),r.body=this.withSmartMixTopicForbiddingContext(()=>this.parseBlock(!1,!1)),this.scope.exit(),e.handler=this.finishNode(r,"CatchClause")}return e.finalizer=this.eat(67)?this.parseBlock():null,!e.handler&&!e.finalizer&&this.raise(x.NoCatchOrFinally,e),this.finishNode(e,"TryStatement")}parseVarStatement(e,r,s=!1){return this.next(),this.parseVar(e,!1,r,s),this.semicolon(),this.finishNode(e,"VariableDeclaration")}parseWhileStatement(e){return this.next(),e.test=this.parseHeaderExpression(),this.state.labels.push(gr),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(e,"WhileStatement")}parseWithStatement(e){return this.state.strict&&this.raise(x.StrictWith,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,r,s,i){for(const n of this.state.labels)n.name===r&&this.raise(x.LabelRedeclaration,s,{labelName:r});const a=jn(this.state.type)?1:this.match(71)?2:null;for(let n=this.state.labels.length-1;n>=0;n--){const o=this.state.labels[n];if(o.statementStart===e.start)o.statementStart=this.sourceToOffsetPos(this.state.start),o.kind=a;else break}return this.state.labels.push({name:r,kind:a,statementStart:this.sourceToOffsetPos(this.state.start)}),e.body=i&8?this.parseStatementOrSloppyAnnexBFunctionDeclaration(!0):this.parseStatement(),this.state.labels.pop(),e.label=s,this.finishNode(e,"LabeledStatement")}parseExpressionStatement(e,r,s){return e.expression=r,this.semicolon(),this.finishNode(e,"ExpressionStatement")}parseBlock(e=!1,r=!0,s){const i=this.startNode();return e&&this.state.strictErrors.clear(),this.expect(5),r&&this.scope.enter(0),this.parseBlockBody(i,e,!1,8,s),r&&this.scope.exit(),this.finishNode(i,"BlockStatement")}isValidDirective(e){return e.type==="ExpressionStatement"&&e.expression.type==="StringLiteral"&&!e.expression.extra.parenthesized}parseBlockBody(e,r,s,i,a){const n=e.body=[],o=e.directives=[];this.parseBlockOrModuleBlockBody(n,r?o:void 0,s,i,a)}parseBlockOrModuleBlockBody(e,r,s,i,a){const n=this.state.strict;let o=!1,u=!1;for(;!this.match(i);){const p=s?this.parseModuleItem():this.parseStatementListItem();if(r&&!u){if(this.isValidDirective(p)){const h=this.stmtToDirective(p);r.push(h),!o&&h.value.value==="use strict"&&(o=!0,this.setStrict(!0));continue}u=!0,this.state.strictErrors.clear()}e.push(p)}a==null||a.call(this,o),n||this.setStrict(!1),this.next()}parseFor(e,r){return e.init=r,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,r,s){const i=this.match(58);return this.next(),i?s!==null&&this.unexpected(s):e.await=s!==null,r.type==="VariableDeclaration"&&r.declarations[0].init!=null&&(!i||!this.options.annexB||this.state.strict||r.kind!=="var"||r.declarations[0].id.type!=="Identifier")&&this.raise(x.ForInOfLoopInitializer,r,{type:i?"ForInStatement":"ForOfStatement"}),r.type==="AssignmentPattern"&&this.raise(x.InvalidLhs,r,{ancestor:{type:"ForStatement"}}),e.left=r,e.right=i?this.parseExpression():this.parseMaybeAssignAllowIn(),this.expect(11),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.scope.exit(),this.state.labels.pop(),this.finishNode(e,i?"ForInStatement":"ForOfStatement")}parseVar(e,r,s,i=!1){const a=e.declarations=[];for(e.kind=s;;){const n=this.startNode();if(this.parseVarId(n,s),n.init=this.eat(29)?r?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,n.init===null&&!i&&(n.id.type!=="Identifier"&&!(r&&(this.match(58)||this.isContextual(102)))?this.raise(x.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:"destructuring"}):(s==="const"||s==="using"||s==="await using")&&!(this.match(58)||this.isContextual(102))&&this.raise(x.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:s})),a.push(this.finishNode(n,"VariableDeclarator")),!this.eat(12))break}return e}parseVarId(e,r){const s=this.parseBindingAtom();(r==="using"||r==="await using")&&(s.type==="ArrayPattern"||s.type==="ObjectPattern")&&this.raise(x.UsingDeclarationHasBindingPattern,s.loc.start),this.checkLVal(s,{type:"VariableDeclarator"},r==="var"?5:8201),e.id=s}parseAsyncFunctionExpression(e){return this.parseFunction(e,8)}parseFunction(e,r=0){const s=r&2,i=!!(r&1),a=i&&!(r&4),n=!!(r&8);this.initFunction(e,n),this.match(55)&&(s&&this.raise(x.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),e.generator=!0),i&&(e.id=this.parseFunctionId(a));const o=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(Lt(n,e.generator)),i||(e.id=this.parseFunctionId()),this.parseFunctionParams(e,!1),this.withSmartMixTopicForbiddingContext(()=>{this.parseFunctionBodyAndFinish(e,i?"FunctionDeclaration":"FunctionExpression")}),this.prodParam.exit(),this.scope.exit(),i&&!s&&this.registerFunctionStatementId(e),this.state.maybeInArrowParameters=o,e}parseFunctionId(e){return e||H(this.state.type)?this.parseIdentifier():null}parseFunctionParams(e,r){this.expect(10),this.expressionScope.enter(So()),e.params=this.parseBindingList(11,41,2|(r?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,r,s){this.next();const i=this.state.strict;return this.state.strict=!0,this.parseClassId(e,r,s),this.parseClassSuper(e),e.body=this.parseClassBody(!!e.superClass,i),this.finishNode(e,r?"ClassDeclaration":"ClassExpression")}isClassProperty(){return this.match(29)||this.match(13)||this.match(8)}isClassMethod(){return this.match(10)}nameIsConstructor(e){return e.type==="Identifier"&&e.name==="constructor"||e.type==="StringLiteral"&&e.value==="constructor"}isNonstaticConstructor(e){return!e.computed&&!e.static&&this.nameIsConstructor(e.key)}parseClassBody(e,r){this.classScope.enter();const s={hadConstructor:!1,hadSuperClass:e};let i=[];const a=this.startNode();if(a.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(i.length>0)throw this.raise(x.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){i.push(this.parseDecorator());continue}const n=this.startNode();i.length&&(n.decorators=i,this.resetStartLocationFromNode(n,i[0]),i=[]),this.parseClassMember(a,n,s),n.kind==="constructor"&&n.decorators&&n.decorators.length>0&&this.raise(x.DecoratorConstructor,n)}}),this.state.strict=r,this.next(),i.length)throw this.raise(x.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(a,"ClassBody")}parseClassMemberFromModifier(e,r){const s=this.parseIdentifier(!0);if(this.isClassMethod()){const i=r;return i.kind="method",i.computed=!1,i.key=s,i.static=!1,this.pushClassMethod(e,i,!1,!1,!1,!1),!0}else if(this.isClassProperty()){const i=r;return i.computed=!1,i.key=s,i.static=!1,e.body.push(this.parseClassProperty(i)),!0}return this.resetPreviousNodeTrailingComments(s),!1}parseClassMember(e,r,s){const i=this.isContextual(106);if(i){if(this.parseClassMemberFromModifier(e,r))return;if(this.eat(5)){this.parseClassStaticBlock(e,r);return}}this.parseClassMemberWithIsStatic(e,r,s,i)}parseClassMemberWithIsStatic(e,r,s,i){const a=r,n=r,o=r,u=r,p=r,h=a,E=a;if(r.static=i,this.parsePropertyNamePrefixOperator(r),this.eat(55)){h.kind="method";const g=this.match(139);if(this.parseClassElementName(h),g){this.pushClassPrivateMethod(e,n,!0,!1);return}this.isNonstaticConstructor(a)&&this.raise(x.ConstructorIsGenerator,a.key),this.pushClassMethod(e,a,!0,!1,!1,!1);return}const I=!this.state.containsEsc&&H(this.state.type),A=this.parseClassElementName(r),w=I?A.name:null,P=this.isPrivateName(A),v=this.state.startLoc;if(this.parsePostMemberNameModifiers(E),this.isClassMethod()){if(h.kind="method",P){this.pushClassPrivateMethod(e,n,!1,!1);return}const g=this.isNonstaticConstructor(a);let C=!1;g&&(a.kind="constructor",s.hadConstructor&&!this.hasPlugin("typescript")&&this.raise(x.DuplicateConstructor,A),g&&this.hasPlugin("typescript")&&r.override&&this.raise(x.OverrideOnConstructor,A),s.hadConstructor=!0,C=s.hadSuperClass),this.pushClassMethod(e,a,!1,!1,g,C)}else if(this.isClassProperty())P?this.pushClassPrivateProperty(e,u):this.pushClassProperty(e,o);else if(w==="async"&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(A);const g=this.eat(55);E.optional&&this.unexpected(v),h.kind="method";const C=this.match(139);this.parseClassElementName(h),this.parsePostMemberNameModifiers(E),C?this.pushClassPrivateMethod(e,n,g,!0):(this.isNonstaticConstructor(a)&&this.raise(x.ConstructorIsAsync,a.key),this.pushClassMethod(e,a,g,!0,!1,!1))}else if((w==="get"||w==="set")&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(A),h.kind=w;const g=this.match(139);this.parseClassElementName(a),g?this.pushClassPrivateMethod(e,n,!1,!1):(this.isNonstaticConstructor(a)&&this.raise(x.ConstructorIsAccessor,a.key),this.pushClassMethod(e,a,!1,!1,!1,!1)),this.checkGetterSetterParams(a)}else if(w==="accessor"&&!this.isLineTerminator()){this.expectPlugin("decoratorAutoAccessors"),this.resetPreviousNodeTrailingComments(A);const g=this.match(139);this.parseClassElementName(o),this.pushClassAccessorProperty(e,p,g)}else this.isLineTerminator()?P?this.pushClassPrivateProperty(e,u):this.pushClassProperty(e,o):this.unexpected()}parseClassElementName(e){const{type:r,value:s}=this.state;if((r===132||r===134)&&e.static&&s==="prototype"&&this.raise(x.StaticPrototype,this.state.startLoc),r===139){s==="constructor"&&this.raise(x.ConstructorClassPrivateField,this.state.startLoc);const i=this.parsePrivateName();return e.key=i,i}return this.parsePropertyName(e),e.key}parseClassStaticBlock(e,r){var s;this.scope.enter(208);const i=this.state.labels;this.state.labels=[],this.prodParam.enter(0);const a=r.body=[];this.parseBlockOrModuleBlockBody(a,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=i,e.body.push(this.finishNode(r,"StaticBlock")),(s=r.decorators)!=null&&s.length&&this.raise(x.DecoratorStaticBlock,r)}pushClassProperty(e,r){!r.computed&&this.nameIsConstructor(r.key)&&this.raise(x.ConstructorClassField,r.key),e.body.push(this.parseClassProperty(r))}pushClassPrivateProperty(e,r){const s=this.parseClassPrivateProperty(r);e.body.push(s),this.classScope.declarePrivateName(this.getPrivateNameSV(s.key),0,s.key.loc.start)}pushClassAccessorProperty(e,r,s){!s&&!r.computed&&this.nameIsConstructor(r.key)&&this.raise(x.ConstructorClassField,r.key);const i=this.parseClassAccessorProperty(r);e.body.push(i),s&&this.classScope.declarePrivateName(this.getPrivateNameSV(i.key),0,i.key.loc.start)}pushClassMethod(e,r,s,i,a,n){e.body.push(this.parseMethod(r,s,i,a,n,"ClassMethod",!0))}pushClassPrivateMethod(e,r,s,i){const a=this.parseMethod(r,s,i,!1,!1,"ClassPrivateMethod",!0);e.body.push(a);const n=a.kind==="get"?a.static?6:2:a.kind==="set"?a.static?5:1:0;this.declareClassPrivateMethodInScope(a,n)}declareClassPrivateMethodInScope(e,r){this.classScope.declarePrivateName(this.getPrivateNameSV(e.key),r,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(zi()),this.prodParam.enter(0),e.value=this.eat(29)?this.parseMaybeAssignAllowIn():null,this.expressionScope.exit(),this.prodParam.exit(),this.scope.exit()}parseClassId(e,r,s,i=8331){if(H(this.state.type))e.id=this.parseIdentifier(),r&&this.declareNameFromIdentifier(e.id,i);else if(s||!r)e.id=null;else throw this.raise(x.MissingClassName,this.state.startLoc)}parseClassSuper(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(e,r){const s=this.parseMaybeImportPhase(e,!0),i=this.maybeParseExportDefaultSpecifier(e,s),a=!i||this.eat(12),n=a&&this.eatExportStar(e),o=n&&this.maybeParseExportNamespaceSpecifier(e),u=a&&(!o||this.eat(12)),p=i||n;if(n&&!o){if(i&&this.unexpected(),r)throw this.raise(x.UnsupportedDecoratorExport,e);return this.parseExportFrom(e,!0),this.finishNode(e,"ExportAllDeclaration")}const h=this.maybeParseExportNamedSpecifiers(e);i&&a&&!n&&!h&&this.unexpected(null,5),o&&u&&this.unexpected(null,98);let E;if(p||h){if(E=!1,r)throw this.raise(x.UnsupportedDecoratorExport,e);this.parseExportFrom(e,p)}else E=this.maybeParseExportDeclaration(e);if(p||h||E){var I;const A=e;if(this.checkExport(A,!0,!1,!!A.source),((I=A.declaration)==null?void 0:I.type)==="ClassDeclaration")this.maybeTakeDecorators(r,A.declaration,A);else if(r)throw this.raise(x.UnsupportedDecoratorExport,e);return this.finishNode(A,"ExportNamedDeclaration")}if(this.eat(65)){const A=e,w=this.parseExportDefaultExpression();if(A.declaration=w,w.type==="ClassDeclaration")this.maybeTakeDecorators(r,w,A);else if(r)throw this.raise(x.UnsupportedDecoratorExport,e);return this.checkExport(A,!0,!0),this.finishNode(A,"ExportDefaultDeclaration")}this.unexpected(null,5)}eatExportStar(e){return this.eat(55)}maybeParseExportDefaultSpecifier(e,r){if(r||this.isExportDefaultSpecifier()){this.expectPlugin("exportDefaultFrom",r==null?void 0:r.loc.start);const s=r||this.parseIdentifier(!0),i=this.startNodeAtNode(s);return i.exported=s,e.specifiers=[this.finishNode(i,"ExportDefaultSpecifier")],!0}return!1}maybeParseExportNamespaceSpecifier(e){if(this.isContextual(93)){var r,s;(s=(r=e).specifiers)!=null||(r.specifiers=[]);const i=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),i.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(i,"ExportNamespaceSpecifier")),!0}return!1}maybeParseExportNamedSpecifiers(e){if(this.match(5)){const r=e;r.specifiers||(r.specifiers=[]);const s=r.exportKind==="type";return r.specifiers.push(...this.parseExportSpecifiers(s)),r.source=null,r.declaration=null,this.hasPlugin("importAssertions")&&(r.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):!1}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")&&this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(x.DecoratorBeforeExport,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(x.UnsupportedDefaultExport,this.state.startLoc);const r=this.parseMaybeAssignAllowIn();return this.semicolon(),r}parseExportDeclaration(e){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){const{type:e}=this.state;if(H(e)){if(e===95&&!this.state.containsEsc||e===100)return!1;if((e===130||e===129)&&!this.state.containsEsc){const{type:i}=this.lookahead();if(H(i)&&i!==98||i===5)return this.expectOnePlugin(["flow","typescript"]),!1}}else if(!this.match(65))return!1;const r=this.nextTokenStart(),s=this.isUnparsedContextual(r,"from");if(this.input.charCodeAt(r)===44||H(this.state.type)&&s)return!0;if(this.match(65)&&s){const i=this.input.charCodeAt(this.nextTokenStartSince(r+4));return i===34||i===39}return!1}parseExportFrom(e,r){this.eatContextual(98)?(e.source=this.parseImportSource(),this.checkExport(e),this.maybeParseImportAttributes(e),this.checkJSONModuleImport(e)):r&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){const{type:e}=this.state;return e===26&&(this.expectOnePlugin(["decorators","decorators-legacy"]),this.hasPlugin("decorators"))?(this.getPluginOption("decorators","decoratorsBeforeExport")===!0&&this.raise(x.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)?(this.raise(x.UsingDeclarationExport,this.state.startLoc),!0):this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(x.UsingDeclarationExport,this.state.startLoc),!0):e===74||e===75||e===68||e===80||this.isLet()||this.isAsyncFunction()}checkExport(e,r,s,i){if(r){var a;if(s){if(this.checkDuplicateExports(e,"default"),this.hasPlugin("exportDefaultFrom")){var n;const o=e.declaration;o.type==="Identifier"&&o.name==="from"&&o.end-o.start===4&&!((n=o.extra)!=null&&n.parenthesized)&&this.raise(x.ExportDefaultFromAsIdentifier,o)}}else if((a=e.specifiers)!=null&&a.length)for(const o of e.specifiers){const{exported:u}=o,p=u.type==="Identifier"?u.name:u.value;if(this.checkDuplicateExports(o,p),!i&&o.local){const{local:h}=o;h.type!=="Identifier"?this.raise(x.ExportBindingIsString,o,{localName:h.value,exportName:p}):(this.checkReservedWord(h.name,h.loc.start,!0,!1),this.scope.checkLocalExport(h))}}else if(e.declaration){const o=e.declaration;if(o.type==="FunctionDeclaration"||o.type==="ClassDeclaration"){const{id:u}=o;if(!u)throw new Error("Assertion failure");this.checkDuplicateExports(e,u.name)}else if(o.type==="VariableDeclaration")for(const u of o.declarations)this.checkDeclaration(u.id)}}}checkDeclaration(e){if(e.type==="Identifier")this.checkDuplicateExports(e,e.name);else if(e.type==="ObjectPattern")for(const r of e.properties)this.checkDeclaration(r);else if(e.type==="ArrayPattern")for(const r of e.elements)r&&this.checkDeclaration(r);else e.type==="ObjectProperty"?this.checkDeclaration(e.value):e.type==="RestElement"?this.checkDeclaration(e.argument):e.type==="AssignmentPattern"&&this.checkDeclaration(e.left)}checkDuplicateExports(e,r){this.exportedIdentifiers.has(r)&&(r==="default"?this.raise(x.DuplicateDefaultExport,e):this.raise(x.DuplicateExport,e,{exportName:r})),this.exportedIdentifiers.add(r)}parseExportSpecifiers(e){const r=[];let s=!0;for(this.expect(5);!this.eat(8);){if(s)s=!1;else if(this.expect(12),this.eat(8))break;const i=this.isContextual(130),a=this.match(134),n=this.startNode();n.local=this.parseModuleExportName(),r.push(this.parseExportSpecifier(n,a,e,i))}return r}parseExportSpecifier(e,r,s,i){return this.eatContextual(93)?e.exported=this.parseModuleExportName():r?e.exported=Ao(e.local):e.exported||(e.exported=Pe(e.local)),this.finishNode(e,"ExportSpecifier")}parseModuleExportName(){if(this.match(134)){const e=this.parseStringLiteral(this.state.value),r=zo.exec(e.value);return r&&this.raise(x.ModuleExportNameHasLoneSurrogate,e,{surrogateCharCode:r[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)}isJSONModuleImport(e){return e.assertions!=null?e.assertions.some(({key:r,value:s})=>s.value==="json"&&(r.type==="Identifier"?r.name==="type":r.value==="type")):!1}checkImportReflection(e){const{specifiers:r}=e,s=r.length===1?r[0].type:null;if(e.phase==="source")s!=="ImportDefaultSpecifier"&&this.raise(x.SourcePhaseImportRequiresDefault,r[0].loc.start);else if(e.phase==="defer")s!=="ImportNamespaceSpecifier"&&this.raise(x.DeferImportRequiresNamespace,r[0].loc.start);else if(e.module){var i;s!=="ImportDefaultSpecifier"&&this.raise(x.ImportReflectionNotBinding,r[0].loc.start),((i=e.assertions)==null?void 0:i.length)>0&&this.raise(x.ImportReflectionHasAssertion,r[0].loc.start)}}checkJSONModuleImport(e){if(this.isJSONModuleImport(e)&&e.type!=="ExportAllDeclaration"){const{specifiers:r}=e;if(r!=null){const s=r.find(i=>{let a;if(i.type==="ExportSpecifier"?a=i.local:i.type==="ImportSpecifier"&&(a=i.imported),a!==void 0)return a.type==="Identifier"?a.name!=="default":a.value!=="default"});s!==void 0&&this.raise(x.ImportJSONBindingNotDefault,s.loc.start)}}}isPotentialImportPhase(e){return e?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(e,r,s,i){r||(s==="module"?(this.expectPlugin("importReflection",i),e.module=!0):this.hasPlugin("importReflection")&&(e.module=!1),s==="source"?(this.expectPlugin("sourcePhaseImports",i),e.phase="source"):s==="defer"?(this.expectPlugin("deferredImportEvaluation",i),e.phase="defer"):this.hasPlugin("sourcePhaseImports")&&(e.phase=null))}parseMaybeImportPhase(e,r){if(!this.isPotentialImportPhase(r))return this.applyImportPhase(e,r,null),null;const s=this.parseIdentifier(!0),{type:i}=this.state;return(fe(i)?i!==98||this.lookaheadCharCode()===102:i!==12)?(this.resetPreviousIdentifierLeadingComments(s),this.applyImportPhase(e,r,s.name,s.loc.start),null):(this.applyImportPhase(e,r,null),s)}isPrecedingIdImportPhase(e){const{type:r}=this.state;return H(r)?r!==98||this.lookaheadCharCode()===102:r!==12}parseImport(e){return this.match(134)?this.parseImportSourceAndAttributes(e):this.parseImportSpecifiersAndAfter(e,this.parseMaybeImportPhase(e,!1))}parseImportSpecifiersAndAfter(e,r){e.specifiers=[];const i=!this.maybeParseDefaultImportSpecifier(e,r)||this.eat(12),a=i&&this.maybeParseStarImportSpecifier(e);return i&&!a&&this.parseNamedImportSpecifiers(e),this.expectContextual(98),this.parseImportSourceAndAttributes(e)}parseImportSourceAndAttributes(e){var r;return(r=e.specifiers)!=null||(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(134)||this.unexpected(),this.parseExprAtom()}parseImportSpecifierLocal(e,r,s){r.local=this.parseIdentifier(),e.specifiers.push(this.finishImportSpecifier(r,s))}finishImportSpecifier(e,r,s=8201){return this.checkLVal(e.local,{type:r},s),this.finishNode(e,r)}parseImportAttributes(){this.expect(5);const e=[],r=new Set;do{if(this.match(8))break;const s=this.startNode(),i=this.state.value;if(r.has(i)&&this.raise(x.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:i}),r.add(i),this.match(134)?s.key=this.parseStringLiteral(i):s.key=this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(x.ModuleAttributeInvalidValue,this.state.startLoc);s.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(s,"ImportAttribute"))}while(this.eat(12));return this.expect(8),e}parseModuleAttributes(){const e=[],r=new Set;do{const s=this.startNode();if(s.key=this.parseIdentifier(!0),s.key.name!=="type"&&this.raise(x.ModuleAttributeDifferentFromType,s.key),r.has(s.key.name)&&this.raise(x.ModuleAttributesWithDuplicateKeys,s.key,{key:s.key.name}),r.add(s.key.name),this.expect(14),!this.match(134))throw this.raise(x.ModuleAttributeInvalidValue,this.state.startLoc);s.value=this.parseStringLiteral(this.state.value),e.push(this.finishNode(s,"ImportAttribute"))}while(this.eat(12));return e}maybeParseImportAttributes(e){let r;var s=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),this.hasPlugin("moduleAttributes")?r=this.parseModuleAttributes():r=this.parseImportAttributes(),s=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin("deprecatedImportAssert")&&!this.hasPlugin("importAssertions")&&this.raise(x.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin("importAssertions")||this.addExtra(e,"deprecatedAssertSyntax",!0),this.next(),r=this.parseImportAttributes()):r=[];!s&&this.hasPlugin("importAssertions")?e.assertions=r:e.attributes=r}maybeParseDefaultImportSpecifier(e,r){if(r){const s=this.startNodeAtNode(r);return s.local=r,e.specifiers.push(this.finishImportSpecifier(s,"ImportDefaultSpecifier")),!0}else if(fe(this.state.type))return this.parseImportSpecifierLocal(e,this.startNode(),"ImportDefaultSpecifier"),!0;return!1}maybeParseStarImportSpecifier(e){if(this.match(55)){const r=this.startNode();return this.next(),this.expectContextual(93),this.parseImportSpecifierLocal(e,r,"ImportNamespaceSpecifier"),!0}return!1}parseNamedImportSpecifiers(e){let r=!0;for(this.expect(5);!this.eat(8);){if(r)r=!1;else{if(this.eat(14))throw this.raise(x.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}const s=this.startNode(),i=this.match(134),a=this.isContextual(130);s.imported=this.parseModuleExportName();const n=this.parseImportSpecifier(s,i,e.importKind==="type"||e.importKind==="typeof",a,void 0);e.specifiers.push(n)}}parseImportSpecifier(e,r,s,i,a){if(this.eatContextual(93))e.local=this.parseIdentifier();else{const{imported:n}=e;if(r)throw this.raise(x.ImportBindingIsString,e,{importName:n.value});this.checkReservedWord(n.name,e.loc.start,!0,!0),e.local||(e.local=Pe(n))}return this.finishImportSpecifier(e,"ImportSpecifier",a)}isThisParam(e){return e.type==="Identifier"&&e.name==="this"}}class ta extends Qo{constructor(e,r,s){e=Dn(e),super(e,r),this.options=e,this.initializeScopes(),this.plugins=s,this.filename=e.sourceFilename,this.startIndex=e.startIndex;let i=0;e.allowAwaitOutsideFunction&&(i|=1),e.allowReturnOutsideFunction&&(i|=2),e.allowImportExportEverywhere&&(i|=8),e.allowSuperOutsideMethod&&(i|=16),e.allowUndeclaredExports&&(i|=32),e.allowNewTargetOutsideFunction&&(i|=4),e.ranges&&(i|=64),e.tokens&&(i|=128),e.createImportExpressions&&(i|=256),e.createParenthesizedExpressions&&(i|=512),e.errorRecovery&&(i|=1024),e.attachComment&&(i|=2048),e.annexB&&(i|=4096),this.optionFlags=i}getScopeHandler(){return zr}parse(){this.enterInitialScopes();const e=this.startNode(),r=this.startNode();return this.nextToken(),e.errors=null,this.parseTopLevel(e,r),e.errors=this.state.errors,e.comments.length=this.state.commentsLen,e}}function Zo(t,e){var r;if(((r=e)==null?void 0:r.sourceType)==="unambiguous"){e=Object.assign({},e);try{e.sourceType="module";const s=rt(e,t),i=s.parse();if(s.sawUnambiguousESM)return i;if(s.ambiguousScriptDifferentAst)try{return e.sourceType="script",rt(e,t).parse()}catch{}else i.program.sourceType="script";return i}catch(s){try{return e.sourceType="script",rt(e,t).parse()}catch{}throw s}}else return rt(e,t).parse()}function el(t,e){const r=rt(e,t);return r.options.strictMode&&(r.state.strict=!0),r.getExpression()}function tl(t){const e={};for(const r of Object.keys(t))e[r]=Se(t[r]);return e}const rl=tl(_n);function rt(t,e){let r=ta;const s=new Map;if(t!=null&&t.plugins){for(const i of t.plugins){let a,n;typeof i=="string"?a=i:[a,n]=i,s.has(a)||s.set(a,n||{})}Jo(s),r=sl(s)}return new r(t,e,s)}const ei=new Map;function sl(t){const e=[];for(const i of qo)t.has(i)&&e.push(i);const r=e.join("|");let s=ei.get(r);if(!s){s=ta;for(const i of e)s=ea[i](s);ei.set(r,s)}return s}var il=Ut.parse=Zo;Ut.parseExpression=el;Ut.tokTypes=rl;var Ir={},$t={},Yt={},Xt={},d={},lt={};Object.defineProperty(lt,"__esModule",{value:!0});lt.default=al;function al(t,e){const r=Object.keys(e);for(const s of r)if(t[s]!==e[s])return!1;return!0}var Je={};Object.defineProperty(Je,"__esModule",{value:!0});Je.default=nl;const ti=new Set;function nl(t,e,r="",s=t){if(ti.has(s))return;ti.add(s);const{internal:i,trace:a}=ol(1,2);i||console.warn(`${r}\`${t}\` has been deprecated, please migrate to \`${e}\`
|
|
144
|
-
${a}`)}function ol(t,e){const{stackTraceLimit:r,prepareStackTrace:s}=Error;let i;if(Error.stackTraceLimit=1+t+e,Error.prepareStackTrace=function(n,o){i=o},new Error().stack,Error.stackTraceLimit=r,Error.prepareStackTrace=s,!i)return{internal:!1,trace:""};const a=i.slice(1+t,1+t+e);return{internal:/[\\/]@babel[\\/]/.test(a[1].getFileName()),trace:a.map(n=>` at ${n}`).join(`
|
|
145
|
-
`)}}Object.defineProperty(d,"__esModule",{value:!0});d.isAccessor=vd;d.isAnyTypeAnnotation=$u;d.isArgumentPlaceholder=Sp;d.isArrayExpression=ll;d.isArrayPattern=nu;d.isArrayTypeAnnotation=Yu;d.isArrowFunctionExpression=ou;d.isAssignmentExpression=ul;d.isAssignmentPattern=au;d.isAwaitExpression=Ou;d.isBigIntLiteral=Lu;d.isBinary=Wf;d.isBinaryExpression=cl;d.isBindExpression=xp;d.isBlock=Gf;d.isBlockParent=zf;d.isBlockStatement=hl;d.isBooleanLiteral=_l;d.isBooleanLiteralTypeAnnotation=Ju;d.isBooleanTypeAnnotation=Xu;d.isBreakStatement=yl;d.isCallExpression=ml;d.isCatchClause=Tl;d.isClass=gd;d.isClassAccessorProperty=Fu;d.isClassBody=lu;d.isClassDeclaration=cu;d.isClassExpression=uu;d.isClassImplements=Wu;d.isClassMethod=Pu;d.isClassPrivateMethod=ju;d.isClassPrivateProperty=Ru;d.isClassProperty=Bu;d.isCompletionStatement=ed;d.isConditional=td;d.isConditionalExpression=Sl;d.isContinueStatement=xl;d.isDebuggerStatement=bl;d.isDecimalLiteral=Ip;d.isDeclaration=cd;d.isDeclareClass=Hu;d.isDeclareExportAllDeclaration=ic;d.isDeclareExportDeclaration=sc;d.isDeclareFunction=zu;d.isDeclareInterface=Gu;d.isDeclareModule=Qu;d.isDeclareModuleExports=Zu;d.isDeclareOpaqueType=tc;d.isDeclareTypeAlias=ec;d.isDeclareVariable=rc;d.isDeclaredPredicate=ac;d.isDecorator=bp;d.isDirective=fl;d.isDirectiveLiteral=dl;d.isDoExpression=Ep;d.isDoWhileStatement=El;d.isEmptyStatement=Pl;d.isEmptyTypeAnnotation=mc;d.isEnumBody=kd;d.isEnumBooleanBody=Yc;d.isEnumBooleanMember=Wc;d.isEnumDeclaration=$c;d.isEnumDefaultedMember=Gc;d.isEnumMember=Md;d.isEnumNumberBody=Xc;d.isEnumNumberMember=Hc;d.isEnumStringBody=Jc;d.isEnumStringMember=zc;d.isEnumSymbolBody=qc;d.isExistsTypeAnnotation=nc;d.isExportAllDeclaration=pu;d.isExportDeclaration=Ad;d.isExportDefaultDeclaration=fu;d.isExportDefaultSpecifier=Pp;d.isExportNamedDeclaration=du;d.isExportNamespaceSpecifier=ku;d.isExportSpecifier=hu;d.isExpression=qf;d.isExpressionStatement=gl;d.isExpressionWrapper=id;d.isFile=Al;d.isFlow=Nd;d.isFlowBaseAnnotation=Od;d.isFlowDeclaration=Dd;d.isFlowPredicate=Ld;d.isFlowType=wd;d.isFor=ad;d.isForInStatement=Il;d.isForOfStatement=yu;d.isForStatement=vl;d.isForXStatement=nd;d.isFunction=od;d.isFunctionDeclaration=Cl;d.isFunctionExpression=Nl;d.isFunctionParameter=pd;d.isFunctionParent=ld;d.isFunctionTypeAnnotation=oc;d.isFunctionTypeParam=lc;d.isGenericTypeAnnotation=uc;d.isIdentifier=wl;d.isIfStatement=Ol;d.isImmutable=md;d.isImport=Du;d.isImportAttribute=Vu;d.isImportDeclaration=mu;d.isImportDefaultSpecifier=Tu;d.isImportExpression=bu;d.isImportNamespaceSpecifier=Su;d.isImportOrExportDeclaration=ra;d.isImportSpecifier=xu;d.isIndexedAccessType=Qc;d.isInferredPredicate=cc;d.isInterfaceDeclaration=fc;d.isInterfaceExtends=pc;d.isInterfaceTypeAnnotation=dc;d.isInterpreterDirective=pl;d.isIntersectionTypeAnnotation=hc;d.isJSX=_d;d.isJSXAttribute=ep;d.isJSXClosingElement=tp;d.isJSXClosingFragment=hp;d.isJSXElement=rp;d.isJSXEmptyExpression=sp;d.isJSXExpressionContainer=ip;d.isJSXFragment=fp;d.isJSXIdentifier=np;d.isJSXMemberExpression=op;d.isJSXNamespacedName=lp;d.isJSXOpeningElement=up;d.isJSXOpeningFragment=dp;d.isJSXSpreadAttribute=cp;d.isJSXSpreadChild=ap;d.isJSXText=pp;d.isLVal=dd;d.isLabeledStatement=Dl;d.isLiteral=yd;d.isLogicalExpression=Fl;d.isLoop=rd;d.isMemberExpression=Rl;d.isMetaProperty=Eu;d.isMethod=Sd;d.isMiscellaneous=Bd;d.isMixedTypeAnnotation=yc;d.isModuleDeclaration=Xd;d.isModuleExpression=vp;d.isModuleSpecifier=Id;d.isNewExpression=jl;d.isNoop=yp;d.isNullLiteral=Ml;d.isNullLiteralTypeAnnotation=qu;d.isNullableTypeAnnotation=Tc;d.isNumberLiteral=Ud;d.isNumberLiteralTypeAnnotation=Sc;d.isNumberTypeAnnotation=xc;d.isNumericLiteral=kl;d.isObjectExpression=Ul;d.isObjectMember=xd;d.isObjectMethod=Vl;d.isObjectPattern=gu;d.isObjectProperty=$l;d.isObjectTypeAnnotation=bc;d.isObjectTypeCallProperty=Pc;d.isObjectTypeIndexer=gc;d.isObjectTypeInternalSlot=Ec;d.isObjectTypeProperty=Ac;d.isObjectTypeSpreadProperty=Ic;d.isOpaqueType=vc;d.isOptionalCallExpression=_u;d.isOptionalIndexedAccessType=Zc;d.isOptionalMemberExpression=Mu;d.isParenthesizedExpression=ql;d.isPattern=Pd;d.isPatternLike=fd;d.isPipelineBareFunction=wp;d.isPipelinePrimaryTopicReference=Op;d.isPipelineTopicExpression=Np;d.isPlaceholder=mp;d.isPrivate=Cd;d.isPrivateName=Ku;d.isProgram=Kl;d.isProperty=bd;d.isPureish=ud;d.isQualifiedTypeIdentifier=Cc;d.isRecordExpression=gp;d.isRegExpLiteral=Bl;d.isRegexLiteral=Vd;d.isRestElement=Yl;d.isRestProperty=$d;d.isReturnStatement=Xl;d.isScopable=Hf;d.isSequenceExpression=Jl;d.isSpreadElement=Au;d.isSpreadProperty=Yd;d.isStandardized=Jf;d.isStatement=Qf;d.isStaticBlock=Uu;d.isStringLiteral=Ll;d.isStringLiteralTypeAnnotation=Nc;d.isStringTypeAnnotation=wc;d.isSuper=Iu;d.isSwitchCase=Wl;d.isSwitchStatement=Hl;d.isSymbolTypeAnnotation=Oc;d.isTSAnyKeyword=Up;d.isTSArrayType=lf;d.isTSAsExpression=Nf;d.isTSBaseType=Kd;d.isTSBigIntKeyword=$p;d.isTSBooleanKeyword=Vp;d.isTSCallSignatureDeclaration=Bp;d.isTSConditionalType=yf;d.isTSConstructSignatureDeclaration=Fp;d.isTSConstructorType=rf;d.isTSDeclareFunction=kp;d.isTSDeclareMethod=Mp;d.isTSEntityName=hd;d.isTSEnumBody=Df;d.isTSEnumDeclaration=Lf;d.isTSEnumMember=kf;d.isTSExportAssignment=Kf;d.isTSExpressionWithTypeArguments=gf;d.isTSExternalModuleReference=Rf;d.isTSFunctionType=tf;d.isTSImportEqualsDeclaration=Ff;d.isTSImportType=Bf;d.isTSIndexSignature=Kp;d.isTSIndexedAccessType=xf;d.isTSInferType=mf;d.isTSInstantiationExpression=Cf;d.isTSInterfaceBody=If;d.isTSInterfaceDeclaration=Af;d.isTSIntersectionType=hf;d.isTSIntrinsicKeyword=Yp;d.isTSLiteralType=Pf;d.isTSMappedType=bf;d.isTSMethodSignature=jp;d.isTSModuleBlock=_f;d.isTSModuleDeclaration=Mf;d.isTSNamedTupleMember=ff;d.isTSNamespaceExportDeclaration=Uf;d.isTSNeverKeyword=Xp;d.isTSNonNullExpression=jf;d.isTSNullKeyword=Jp;d.isTSNumberKeyword=qp;d.isTSObjectKeyword=Wp;d.isTSOptionalType=cf;d.isTSParameterProperty=Lp;d.isTSParenthesizedType=Tf;d.isTSPropertySignature=Rp;d.isTSQualifiedName=_p;d.isTSRestType=pf;d.isTSSatisfiesExpression=wf;d.isTSStringKeyword=Hp;d.isTSSymbolKeyword=zp;d.isTSTemplateLiteralType=Ef;d.isTSThisType=ef;d.isTSTupleType=uf;d.isTSType=jd;d.isTSTypeAliasDeclaration=vf;d.isTSTypeAnnotation=Vf;d.isTSTypeAssertion=Of;d.isTSTypeElement=Rd;d.isTSTypeLiteral=of;d.isTSTypeOperator=Sf;d.isTSTypeParameter=Xf;d.isTSTypeParameterDeclaration=Yf;d.isTSTypeParameterInstantiation=$f;d.isTSTypePredicate=af;d.isTSTypeQuery=nf;d.isTSTypeReference=sf;d.isTSUndefinedKeyword=Gp;d.isTSUnionType=df;d.isTSUnknownKeyword=Qp;d.isTSVoidKeyword=Zp;d.isTaggedTemplateExpression=vu;d.isTemplateElement=Cu;d.isTemplateLiteral=Nu;d.isTerminatorless=Zf;d.isThisExpression=zl;d.isThisTypeAnnotation=Dc;d.isThrowStatement=Gl;d.isTopicReference=Cp;d.isTryStatement=Ql;d.isTupleExpression=Ap;d.isTupleTypeAnnotation=Lc;d.isTypeAlias=Mc;d.isTypeAnnotation=_c;d.isTypeCastExpression=Bc;d.isTypeParameter=Fc;d.isTypeParameterDeclaration=Rc;d.isTypeParameterInstantiation=jc;d.isTypeScript=Fd;d.isTypeofTypeAnnotation=kc;d.isUnaryExpression=Zl;d.isUnaryLike=Ed;d.isUnionTypeAnnotation=Kc;d.isUpdateExpression=eu;d.isUserWhitespacable=Td;d.isV8IntrinsicIdentifier=Tp;d.isVariableDeclaration=tu;d.isVariableDeclarator=ru;d.isVariance=Uc;d.isVoidPattern=Dp;d.isVoidTypeAnnotation=Vc;d.isWhile=sd;d.isWhileStatement=su;d.isWithStatement=iu;d.isYieldExpression=wu;var T=lt,ut=Je;function ll(t,e){return!t||t.type!=="ArrayExpression"?!1:e==null||(0,T.default)(t,e)}function ul(t,e){return!t||t.type!=="AssignmentExpression"?!1:e==null||(0,T.default)(t,e)}function cl(t,e){return!t||t.type!=="BinaryExpression"?!1:e==null||(0,T.default)(t,e)}function pl(t,e){return!t||t.type!=="InterpreterDirective"?!1:e==null||(0,T.default)(t,e)}function fl(t,e){return!t||t.type!=="Directive"?!1:e==null||(0,T.default)(t,e)}function dl(t,e){return!t||t.type!=="DirectiveLiteral"?!1:e==null||(0,T.default)(t,e)}function hl(t,e){return!t||t.type!=="BlockStatement"?!1:e==null||(0,T.default)(t,e)}function yl(t,e){return!t||t.type!=="BreakStatement"?!1:e==null||(0,T.default)(t,e)}function ml(t,e){return!t||t.type!=="CallExpression"?!1:e==null||(0,T.default)(t,e)}function Tl(t,e){return!t||t.type!=="CatchClause"?!1:e==null||(0,T.default)(t,e)}function Sl(t,e){return!t||t.type!=="ConditionalExpression"?!1:e==null||(0,T.default)(t,e)}function xl(t,e){return!t||t.type!=="ContinueStatement"?!1:e==null||(0,T.default)(t,e)}function bl(t,e){return!t||t.type!=="DebuggerStatement"?!1:e==null||(0,T.default)(t,e)}function El(t,e){return!t||t.type!=="DoWhileStatement"?!1:e==null||(0,T.default)(t,e)}function Pl(t,e){return!t||t.type!=="EmptyStatement"?!1:e==null||(0,T.default)(t,e)}function gl(t,e){return!t||t.type!=="ExpressionStatement"?!1:e==null||(0,T.default)(t,e)}function Al(t,e){return!t||t.type!=="File"?!1:e==null||(0,T.default)(t,e)}function Il(t,e){return!t||t.type!=="ForInStatement"?!1:e==null||(0,T.default)(t,e)}function vl(t,e){return!t||t.type!=="ForStatement"?!1:e==null||(0,T.default)(t,e)}function Cl(t,e){return!t||t.type!=="FunctionDeclaration"?!1:e==null||(0,T.default)(t,e)}function Nl(t,e){return!t||t.type!=="FunctionExpression"?!1:e==null||(0,T.default)(t,e)}function wl(t,e){return!t||t.type!=="Identifier"?!1:e==null||(0,T.default)(t,e)}function Ol(t,e){return!t||t.type!=="IfStatement"?!1:e==null||(0,T.default)(t,e)}function Dl(t,e){return!t||t.type!=="LabeledStatement"?!1:e==null||(0,T.default)(t,e)}function Ll(t,e){return!t||t.type!=="StringLiteral"?!1:e==null||(0,T.default)(t,e)}function kl(t,e){return!t||t.type!=="NumericLiteral"?!1:e==null||(0,T.default)(t,e)}function Ml(t,e){return!t||t.type!=="NullLiteral"?!1:e==null||(0,T.default)(t,e)}function _l(t,e){return!t||t.type!=="BooleanLiteral"?!1:e==null||(0,T.default)(t,e)}function Bl(t,e){return!t||t.type!=="RegExpLiteral"?!1:e==null||(0,T.default)(t,e)}function Fl(t,e){return!t||t.type!=="LogicalExpression"?!1:e==null||(0,T.default)(t,e)}function Rl(t,e){return!t||t.type!=="MemberExpression"?!1:e==null||(0,T.default)(t,e)}function jl(t,e){return!t||t.type!=="NewExpression"?!1:e==null||(0,T.default)(t,e)}function Kl(t,e){return!t||t.type!=="Program"?!1:e==null||(0,T.default)(t,e)}function Ul(t,e){return!t||t.type!=="ObjectExpression"?!1:e==null||(0,T.default)(t,e)}function Vl(t,e){return!t||t.type!=="ObjectMethod"?!1:e==null||(0,T.default)(t,e)}function $l(t,e){return!t||t.type!=="ObjectProperty"?!1:e==null||(0,T.default)(t,e)}function Yl(t,e){return!t||t.type!=="RestElement"?!1:e==null||(0,T.default)(t,e)}function Xl(t,e){return!t||t.type!=="ReturnStatement"?!1:e==null||(0,T.default)(t,e)}function Jl(t,e){return!t||t.type!=="SequenceExpression"?!1:e==null||(0,T.default)(t,e)}function ql(t,e){return!t||t.type!=="ParenthesizedExpression"?!1:e==null||(0,T.default)(t,e)}function Wl(t,e){return!t||t.type!=="SwitchCase"?!1:e==null||(0,T.default)(t,e)}function Hl(t,e){return!t||t.type!=="SwitchStatement"?!1:e==null||(0,T.default)(t,e)}function zl(t,e){return!t||t.type!=="ThisExpression"?!1:e==null||(0,T.default)(t,e)}function Gl(t,e){return!t||t.type!=="ThrowStatement"?!1:e==null||(0,T.default)(t,e)}function Ql(t,e){return!t||t.type!=="TryStatement"?!1:e==null||(0,T.default)(t,e)}function Zl(t,e){return!t||t.type!=="UnaryExpression"?!1:e==null||(0,T.default)(t,e)}function eu(t,e){return!t||t.type!=="UpdateExpression"?!1:e==null||(0,T.default)(t,e)}function tu(t,e){return!t||t.type!=="VariableDeclaration"?!1:e==null||(0,T.default)(t,e)}function ru(t,e){return!t||t.type!=="VariableDeclarator"?!1:e==null||(0,T.default)(t,e)}function su(t,e){return!t||t.type!=="WhileStatement"?!1:e==null||(0,T.default)(t,e)}function iu(t,e){return!t||t.type!=="WithStatement"?!1:e==null||(0,T.default)(t,e)}function au(t,e){return!t||t.type!=="AssignmentPattern"?!1:e==null||(0,T.default)(t,e)}function nu(t,e){return!t||t.type!=="ArrayPattern"?!1:e==null||(0,T.default)(t,e)}function ou(t,e){return!t||t.type!=="ArrowFunctionExpression"?!1:e==null||(0,T.default)(t,e)}function lu(t,e){return!t||t.type!=="ClassBody"?!1:e==null||(0,T.default)(t,e)}function uu(t,e){return!t||t.type!=="ClassExpression"?!1:e==null||(0,T.default)(t,e)}function cu(t,e){return!t||t.type!=="ClassDeclaration"?!1:e==null||(0,T.default)(t,e)}function pu(t,e){return!t||t.type!=="ExportAllDeclaration"?!1:e==null||(0,T.default)(t,e)}function fu(t,e){return!t||t.type!=="ExportDefaultDeclaration"?!1:e==null||(0,T.default)(t,e)}function du(t,e){return!t||t.type!=="ExportNamedDeclaration"?!1:e==null||(0,T.default)(t,e)}function hu(t,e){return!t||t.type!=="ExportSpecifier"?!1:e==null||(0,T.default)(t,e)}function yu(t,e){return!t||t.type!=="ForOfStatement"?!1:e==null||(0,T.default)(t,e)}function mu(t,e){return!t||t.type!=="ImportDeclaration"?!1:e==null||(0,T.default)(t,e)}function Tu(t,e){return!t||t.type!=="ImportDefaultSpecifier"?!1:e==null||(0,T.default)(t,e)}function Su(t,e){return!t||t.type!=="ImportNamespaceSpecifier"?!1:e==null||(0,T.default)(t,e)}function xu(t,e){return!t||t.type!=="ImportSpecifier"?!1:e==null||(0,T.default)(t,e)}function bu(t,e){return!t||t.type!=="ImportExpression"?!1:e==null||(0,T.default)(t,e)}function Eu(t,e){return!t||t.type!=="MetaProperty"?!1:e==null||(0,T.default)(t,e)}function Pu(t,e){return!t||t.type!=="ClassMethod"?!1:e==null||(0,T.default)(t,e)}function gu(t,e){return!t||t.type!=="ObjectPattern"?!1:e==null||(0,T.default)(t,e)}function Au(t,e){return!t||t.type!=="SpreadElement"?!1:e==null||(0,T.default)(t,e)}function Iu(t,e){return!t||t.type!=="Super"?!1:e==null||(0,T.default)(t,e)}function vu(t,e){return!t||t.type!=="TaggedTemplateExpression"?!1:e==null||(0,T.default)(t,e)}function Cu(t,e){return!t||t.type!=="TemplateElement"?!1:e==null||(0,T.default)(t,e)}function Nu(t,e){return!t||t.type!=="TemplateLiteral"?!1:e==null||(0,T.default)(t,e)}function wu(t,e){return!t||t.type!=="YieldExpression"?!1:e==null||(0,T.default)(t,e)}function Ou(t,e){return!t||t.type!=="AwaitExpression"?!1:e==null||(0,T.default)(t,e)}function Du(t,e){return!t||t.type!=="Import"?!1:e==null||(0,T.default)(t,e)}function Lu(t,e){return!t||t.type!=="BigIntLiteral"?!1:e==null||(0,T.default)(t,e)}function ku(t,e){return!t||t.type!=="ExportNamespaceSpecifier"?!1:e==null||(0,T.default)(t,e)}function Mu(t,e){return!t||t.type!=="OptionalMemberExpression"?!1:e==null||(0,T.default)(t,e)}function _u(t,e){return!t||t.type!=="OptionalCallExpression"?!1:e==null||(0,T.default)(t,e)}function Bu(t,e){return!t||t.type!=="ClassProperty"?!1:e==null||(0,T.default)(t,e)}function Fu(t,e){return!t||t.type!=="ClassAccessorProperty"?!1:e==null||(0,T.default)(t,e)}function Ru(t,e){return!t||t.type!=="ClassPrivateProperty"?!1:e==null||(0,T.default)(t,e)}function ju(t,e){return!t||t.type!=="ClassPrivateMethod"?!1:e==null||(0,T.default)(t,e)}function Ku(t,e){return!t||t.type!=="PrivateName"?!1:e==null||(0,T.default)(t,e)}function Uu(t,e){return!t||t.type!=="StaticBlock"?!1:e==null||(0,T.default)(t,e)}function Vu(t,e){return!t||t.type!=="ImportAttribute"?!1:e==null||(0,T.default)(t,e)}function $u(t,e){return!t||t.type!=="AnyTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Yu(t,e){return!t||t.type!=="ArrayTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Xu(t,e){return!t||t.type!=="BooleanTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Ju(t,e){return!t||t.type!=="BooleanLiteralTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function qu(t,e){return!t||t.type!=="NullLiteralTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Wu(t,e){return!t||t.type!=="ClassImplements"?!1:e==null||(0,T.default)(t,e)}function Hu(t,e){return!t||t.type!=="DeclareClass"?!1:e==null||(0,T.default)(t,e)}function zu(t,e){return!t||t.type!=="DeclareFunction"?!1:e==null||(0,T.default)(t,e)}function Gu(t,e){return!t||t.type!=="DeclareInterface"?!1:e==null||(0,T.default)(t,e)}function Qu(t,e){return!t||t.type!=="DeclareModule"?!1:e==null||(0,T.default)(t,e)}function Zu(t,e){return!t||t.type!=="DeclareModuleExports"?!1:e==null||(0,T.default)(t,e)}function ec(t,e){return!t||t.type!=="DeclareTypeAlias"?!1:e==null||(0,T.default)(t,e)}function tc(t,e){return!t||t.type!=="DeclareOpaqueType"?!1:e==null||(0,T.default)(t,e)}function rc(t,e){return!t||t.type!=="DeclareVariable"?!1:e==null||(0,T.default)(t,e)}function sc(t,e){return!t||t.type!=="DeclareExportDeclaration"?!1:e==null||(0,T.default)(t,e)}function ic(t,e){return!t||t.type!=="DeclareExportAllDeclaration"?!1:e==null||(0,T.default)(t,e)}function ac(t,e){return!t||t.type!=="DeclaredPredicate"?!1:e==null||(0,T.default)(t,e)}function nc(t,e){return!t||t.type!=="ExistsTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function oc(t,e){return!t||t.type!=="FunctionTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function lc(t,e){return!t||t.type!=="FunctionTypeParam"?!1:e==null||(0,T.default)(t,e)}function uc(t,e){return!t||t.type!=="GenericTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function cc(t,e){return!t||t.type!=="InferredPredicate"?!1:e==null||(0,T.default)(t,e)}function pc(t,e){return!t||t.type!=="InterfaceExtends"?!1:e==null||(0,T.default)(t,e)}function fc(t,e){return!t||t.type!=="InterfaceDeclaration"?!1:e==null||(0,T.default)(t,e)}function dc(t,e){return!t||t.type!=="InterfaceTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function hc(t,e){return!t||t.type!=="IntersectionTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function yc(t,e){return!t||t.type!=="MixedTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function mc(t,e){return!t||t.type!=="EmptyTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Tc(t,e){return!t||t.type!=="NullableTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Sc(t,e){return!t||t.type!=="NumberLiteralTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function xc(t,e){return!t||t.type!=="NumberTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function bc(t,e){return!t||t.type!=="ObjectTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Ec(t,e){return!t||t.type!=="ObjectTypeInternalSlot"?!1:e==null||(0,T.default)(t,e)}function Pc(t,e){return!t||t.type!=="ObjectTypeCallProperty"?!1:e==null||(0,T.default)(t,e)}function gc(t,e){return!t||t.type!=="ObjectTypeIndexer"?!1:e==null||(0,T.default)(t,e)}function Ac(t,e){return!t||t.type!=="ObjectTypeProperty"?!1:e==null||(0,T.default)(t,e)}function Ic(t,e){return!t||t.type!=="ObjectTypeSpreadProperty"?!1:e==null||(0,T.default)(t,e)}function vc(t,e){return!t||t.type!=="OpaqueType"?!1:e==null||(0,T.default)(t,e)}function Cc(t,e){return!t||t.type!=="QualifiedTypeIdentifier"?!1:e==null||(0,T.default)(t,e)}function Nc(t,e){return!t||t.type!=="StringLiteralTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function wc(t,e){return!t||t.type!=="StringTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Oc(t,e){return!t||t.type!=="SymbolTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Dc(t,e){return!t||t.type!=="ThisTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Lc(t,e){return!t||t.type!=="TupleTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function kc(t,e){return!t||t.type!=="TypeofTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Mc(t,e){return!t||t.type!=="TypeAlias"?!1:e==null||(0,T.default)(t,e)}function _c(t,e){return!t||t.type!=="TypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Bc(t,e){return!t||t.type!=="TypeCastExpression"?!1:e==null||(0,T.default)(t,e)}function Fc(t,e){return!t||t.type!=="TypeParameter"?!1:e==null||(0,T.default)(t,e)}function Rc(t,e){return!t||t.type!=="TypeParameterDeclaration"?!1:e==null||(0,T.default)(t,e)}function jc(t,e){return!t||t.type!=="TypeParameterInstantiation"?!1:e==null||(0,T.default)(t,e)}function Kc(t,e){return!t||t.type!=="UnionTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function Uc(t,e){return!t||t.type!=="Variance"?!1:e==null||(0,T.default)(t,e)}function Vc(t,e){return!t||t.type!=="VoidTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function $c(t,e){return!t||t.type!=="EnumDeclaration"?!1:e==null||(0,T.default)(t,e)}function Yc(t,e){return!t||t.type!=="EnumBooleanBody"?!1:e==null||(0,T.default)(t,e)}function Xc(t,e){return!t||t.type!=="EnumNumberBody"?!1:e==null||(0,T.default)(t,e)}function Jc(t,e){return!t||t.type!=="EnumStringBody"?!1:e==null||(0,T.default)(t,e)}function qc(t,e){return!t||t.type!=="EnumSymbolBody"?!1:e==null||(0,T.default)(t,e)}function Wc(t,e){return!t||t.type!=="EnumBooleanMember"?!1:e==null||(0,T.default)(t,e)}function Hc(t,e){return!t||t.type!=="EnumNumberMember"?!1:e==null||(0,T.default)(t,e)}function zc(t,e){return!t||t.type!=="EnumStringMember"?!1:e==null||(0,T.default)(t,e)}function Gc(t,e){return!t||t.type!=="EnumDefaultedMember"?!1:e==null||(0,T.default)(t,e)}function Qc(t,e){return!t||t.type!=="IndexedAccessType"?!1:e==null||(0,T.default)(t,e)}function Zc(t,e){return!t||t.type!=="OptionalIndexedAccessType"?!1:e==null||(0,T.default)(t,e)}function ep(t,e){return!t||t.type!=="JSXAttribute"?!1:e==null||(0,T.default)(t,e)}function tp(t,e){return!t||t.type!=="JSXClosingElement"?!1:e==null||(0,T.default)(t,e)}function rp(t,e){return!t||t.type!=="JSXElement"?!1:e==null||(0,T.default)(t,e)}function sp(t,e){return!t||t.type!=="JSXEmptyExpression"?!1:e==null||(0,T.default)(t,e)}function ip(t,e){return!t||t.type!=="JSXExpressionContainer"?!1:e==null||(0,T.default)(t,e)}function ap(t,e){return!t||t.type!=="JSXSpreadChild"?!1:e==null||(0,T.default)(t,e)}function np(t,e){return!t||t.type!=="JSXIdentifier"?!1:e==null||(0,T.default)(t,e)}function op(t,e){return!t||t.type!=="JSXMemberExpression"?!1:e==null||(0,T.default)(t,e)}function lp(t,e){return!t||t.type!=="JSXNamespacedName"?!1:e==null||(0,T.default)(t,e)}function up(t,e){return!t||t.type!=="JSXOpeningElement"?!1:e==null||(0,T.default)(t,e)}function cp(t,e){return!t||t.type!=="JSXSpreadAttribute"?!1:e==null||(0,T.default)(t,e)}function pp(t,e){return!t||t.type!=="JSXText"?!1:e==null||(0,T.default)(t,e)}function fp(t,e){return!t||t.type!=="JSXFragment"?!1:e==null||(0,T.default)(t,e)}function dp(t,e){return!t||t.type!=="JSXOpeningFragment"?!1:e==null||(0,T.default)(t,e)}function hp(t,e){return!t||t.type!=="JSXClosingFragment"?!1:e==null||(0,T.default)(t,e)}function yp(t,e){return!t||t.type!=="Noop"?!1:e==null||(0,T.default)(t,e)}function mp(t,e){return!t||t.type!=="Placeholder"?!1:e==null||(0,T.default)(t,e)}function Tp(t,e){return!t||t.type!=="V8IntrinsicIdentifier"?!1:e==null||(0,T.default)(t,e)}function Sp(t,e){return!t||t.type!=="ArgumentPlaceholder"?!1:e==null||(0,T.default)(t,e)}function xp(t,e){return!t||t.type!=="BindExpression"?!1:e==null||(0,T.default)(t,e)}function bp(t,e){return!t||t.type!=="Decorator"?!1:e==null||(0,T.default)(t,e)}function Ep(t,e){return!t||t.type!=="DoExpression"?!1:e==null||(0,T.default)(t,e)}function Pp(t,e){return!t||t.type!=="ExportDefaultSpecifier"?!1:e==null||(0,T.default)(t,e)}function gp(t,e){return!t||t.type!=="RecordExpression"?!1:e==null||(0,T.default)(t,e)}function Ap(t,e){return!t||t.type!=="TupleExpression"?!1:e==null||(0,T.default)(t,e)}function Ip(t,e){return!t||t.type!=="DecimalLiteral"?!1:e==null||(0,T.default)(t,e)}function vp(t,e){return!t||t.type!=="ModuleExpression"?!1:e==null||(0,T.default)(t,e)}function Cp(t,e){return!t||t.type!=="TopicReference"?!1:e==null||(0,T.default)(t,e)}function Np(t,e){return!t||t.type!=="PipelineTopicExpression"?!1:e==null||(0,T.default)(t,e)}function wp(t,e){return!t||t.type!=="PipelineBareFunction"?!1:e==null||(0,T.default)(t,e)}function Op(t,e){return!t||t.type!=="PipelinePrimaryTopicReference"?!1:e==null||(0,T.default)(t,e)}function Dp(t,e){return!t||t.type!=="VoidPattern"?!1:e==null||(0,T.default)(t,e)}function Lp(t,e){return!t||t.type!=="TSParameterProperty"?!1:e==null||(0,T.default)(t,e)}function kp(t,e){return!t||t.type!=="TSDeclareFunction"?!1:e==null||(0,T.default)(t,e)}function Mp(t,e){return!t||t.type!=="TSDeclareMethod"?!1:e==null||(0,T.default)(t,e)}function _p(t,e){return!t||t.type!=="TSQualifiedName"?!1:e==null||(0,T.default)(t,e)}function Bp(t,e){return!t||t.type!=="TSCallSignatureDeclaration"?!1:e==null||(0,T.default)(t,e)}function Fp(t,e){return!t||t.type!=="TSConstructSignatureDeclaration"?!1:e==null||(0,T.default)(t,e)}function Rp(t,e){return!t||t.type!=="TSPropertySignature"?!1:e==null||(0,T.default)(t,e)}function jp(t,e){return!t||t.type!=="TSMethodSignature"?!1:e==null||(0,T.default)(t,e)}function Kp(t,e){return!t||t.type!=="TSIndexSignature"?!1:e==null||(0,T.default)(t,e)}function Up(t,e){return!t||t.type!=="TSAnyKeyword"?!1:e==null||(0,T.default)(t,e)}function Vp(t,e){return!t||t.type!=="TSBooleanKeyword"?!1:e==null||(0,T.default)(t,e)}function $p(t,e){return!t||t.type!=="TSBigIntKeyword"?!1:e==null||(0,T.default)(t,e)}function Yp(t,e){return!t||t.type!=="TSIntrinsicKeyword"?!1:e==null||(0,T.default)(t,e)}function Xp(t,e){return!t||t.type!=="TSNeverKeyword"?!1:e==null||(0,T.default)(t,e)}function Jp(t,e){return!t||t.type!=="TSNullKeyword"?!1:e==null||(0,T.default)(t,e)}function qp(t,e){return!t||t.type!=="TSNumberKeyword"?!1:e==null||(0,T.default)(t,e)}function Wp(t,e){return!t||t.type!=="TSObjectKeyword"?!1:e==null||(0,T.default)(t,e)}function Hp(t,e){return!t||t.type!=="TSStringKeyword"?!1:e==null||(0,T.default)(t,e)}function zp(t,e){return!t||t.type!=="TSSymbolKeyword"?!1:e==null||(0,T.default)(t,e)}function Gp(t,e){return!t||t.type!=="TSUndefinedKeyword"?!1:e==null||(0,T.default)(t,e)}function Qp(t,e){return!t||t.type!=="TSUnknownKeyword"?!1:e==null||(0,T.default)(t,e)}function Zp(t,e){return!t||t.type!=="TSVoidKeyword"?!1:e==null||(0,T.default)(t,e)}function ef(t,e){return!t||t.type!=="TSThisType"?!1:e==null||(0,T.default)(t,e)}function tf(t,e){return!t||t.type!=="TSFunctionType"?!1:e==null||(0,T.default)(t,e)}function rf(t,e){return!t||t.type!=="TSConstructorType"?!1:e==null||(0,T.default)(t,e)}function sf(t,e){return!t||t.type!=="TSTypeReference"?!1:e==null||(0,T.default)(t,e)}function af(t,e){return!t||t.type!=="TSTypePredicate"?!1:e==null||(0,T.default)(t,e)}function nf(t,e){return!t||t.type!=="TSTypeQuery"?!1:e==null||(0,T.default)(t,e)}function of(t,e){return!t||t.type!=="TSTypeLiteral"?!1:e==null||(0,T.default)(t,e)}function lf(t,e){return!t||t.type!=="TSArrayType"?!1:e==null||(0,T.default)(t,e)}function uf(t,e){return!t||t.type!=="TSTupleType"?!1:e==null||(0,T.default)(t,e)}function cf(t,e){return!t||t.type!=="TSOptionalType"?!1:e==null||(0,T.default)(t,e)}function pf(t,e){return!t||t.type!=="TSRestType"?!1:e==null||(0,T.default)(t,e)}function ff(t,e){return!t||t.type!=="TSNamedTupleMember"?!1:e==null||(0,T.default)(t,e)}function df(t,e){return!t||t.type!=="TSUnionType"?!1:e==null||(0,T.default)(t,e)}function hf(t,e){return!t||t.type!=="TSIntersectionType"?!1:e==null||(0,T.default)(t,e)}function yf(t,e){return!t||t.type!=="TSConditionalType"?!1:e==null||(0,T.default)(t,e)}function mf(t,e){return!t||t.type!=="TSInferType"?!1:e==null||(0,T.default)(t,e)}function Tf(t,e){return!t||t.type!=="TSParenthesizedType"?!1:e==null||(0,T.default)(t,e)}function Sf(t,e){return!t||t.type!=="TSTypeOperator"?!1:e==null||(0,T.default)(t,e)}function xf(t,e){return!t||t.type!=="TSIndexedAccessType"?!1:e==null||(0,T.default)(t,e)}function bf(t,e){return!t||t.type!=="TSMappedType"?!1:e==null||(0,T.default)(t,e)}function Ef(t,e){return!t||t.type!=="TSTemplateLiteralType"?!1:e==null||(0,T.default)(t,e)}function Pf(t,e){return!t||t.type!=="TSLiteralType"?!1:e==null||(0,T.default)(t,e)}function gf(t,e){return!t||t.type!=="TSExpressionWithTypeArguments"?!1:e==null||(0,T.default)(t,e)}function Af(t,e){return!t||t.type!=="TSInterfaceDeclaration"?!1:e==null||(0,T.default)(t,e)}function If(t,e){return!t||t.type!=="TSInterfaceBody"?!1:e==null||(0,T.default)(t,e)}function vf(t,e){return!t||t.type!=="TSTypeAliasDeclaration"?!1:e==null||(0,T.default)(t,e)}function Cf(t,e){return!t||t.type!=="TSInstantiationExpression"?!1:e==null||(0,T.default)(t,e)}function Nf(t,e){return!t||t.type!=="TSAsExpression"?!1:e==null||(0,T.default)(t,e)}function wf(t,e){return!t||t.type!=="TSSatisfiesExpression"?!1:e==null||(0,T.default)(t,e)}function Of(t,e){return!t||t.type!=="TSTypeAssertion"?!1:e==null||(0,T.default)(t,e)}function Df(t,e){return!t||t.type!=="TSEnumBody"?!1:e==null||(0,T.default)(t,e)}function Lf(t,e){return!t||t.type!=="TSEnumDeclaration"?!1:e==null||(0,T.default)(t,e)}function kf(t,e){return!t||t.type!=="TSEnumMember"?!1:e==null||(0,T.default)(t,e)}function Mf(t,e){return!t||t.type!=="TSModuleDeclaration"?!1:e==null||(0,T.default)(t,e)}function _f(t,e){return!t||t.type!=="TSModuleBlock"?!1:e==null||(0,T.default)(t,e)}function Bf(t,e){return!t||t.type!=="TSImportType"?!1:e==null||(0,T.default)(t,e)}function Ff(t,e){return!t||t.type!=="TSImportEqualsDeclaration"?!1:e==null||(0,T.default)(t,e)}function Rf(t,e){return!t||t.type!=="TSExternalModuleReference"?!1:e==null||(0,T.default)(t,e)}function jf(t,e){return!t||t.type!=="TSNonNullExpression"?!1:e==null||(0,T.default)(t,e)}function Kf(t,e){return!t||t.type!=="TSExportAssignment"?!1:e==null||(0,T.default)(t,e)}function Uf(t,e){return!t||t.type!=="TSNamespaceExportDeclaration"?!1:e==null||(0,T.default)(t,e)}function Vf(t,e){return!t||t.type!=="TSTypeAnnotation"?!1:e==null||(0,T.default)(t,e)}function $f(t,e){return!t||t.type!=="TSTypeParameterInstantiation"?!1:e==null||(0,T.default)(t,e)}function Yf(t,e){return!t||t.type!=="TSTypeParameterDeclaration"?!1:e==null||(0,T.default)(t,e)}function Xf(t,e){return!t||t.type!=="TSTypeParameter"?!1:e==null||(0,T.default)(t,e)}function Jf(t,e){if(!t)return!1;switch(t.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"ImportExpression":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":case"ImportAttribute":break;case"Placeholder":switch(t.expectedNode){case"Identifier":case"StringLiteral":case"BlockStatement":case"ClassBody":break;default:return!1}break;default:return!1}return e==null||(0,T.default)(t,e)}function qf(t,e){if(!t)return!1;switch(t.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"ImportExpression":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(t.expectedNode){case"Expression":case"Identifier":case"StringLiteral":break;default:return!1}break;default:return!1}return e==null||(0,T.default)(t,e)}function Wf(t,e){if(!t)return!1;switch(t.type){case"BinaryExpression":case"LogicalExpression":break;default:return!1}return e==null||(0,T.default)(t,e)}function Hf(t,e){if(!t)return!1;switch(t.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(t.expectedNode==="BlockStatement")break;default:return!1}return e==null||(0,T.default)(t,e)}function zf(t,e){if(!t)return!1;switch(t.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(t.expectedNode==="BlockStatement")break;default:return!1}return e==null||(0,T.default)(t,e)}function Gf(t,e){if(!t)return!1;switch(t.type){case"BlockStatement":case"Program":case"TSModuleBlock":break;case"Placeholder":if(t.expectedNode==="BlockStatement")break;default:return!1}return e==null||(0,T.default)(t,e)}function Qf(t,e){if(!t)return!1;switch(t.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(t.expectedNode){case"Statement":case"Declaration":case"BlockStatement":break;default:return!1}break;default:return!1}return e==null||(0,T.default)(t,e)}function Zf(t,e){if(!t)return!1;switch(t.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":case"YieldExpression":case"AwaitExpression":break;default:return!1}return e==null||(0,T.default)(t,e)}function ed(t,e){if(!t)return!1;switch(t.type){case"BreakStatement":case"ContinueStatement":case"ReturnStatement":case"ThrowStatement":break;default:return!1}return e==null||(0,T.default)(t,e)}function td(t,e){if(!t)return!1;switch(t.type){case"ConditionalExpression":case"IfStatement":break;default:return!1}return e==null||(0,T.default)(t,e)}function rd(t,e){if(!t)return!1;switch(t.type){case"DoWhileStatement":case"ForInStatement":case"ForStatement":case"WhileStatement":case"ForOfStatement":break;default:return!1}return e==null||(0,T.default)(t,e)}function sd(t,e){if(!t)return!1;switch(t.type){case"DoWhileStatement":case"WhileStatement":break;default:return!1}return e==null||(0,T.default)(t,e)}function id(t,e){if(!t)return!1;switch(t.type){case"ExpressionStatement":case"ParenthesizedExpression":case"TypeCastExpression":break;default:return!1}return e==null||(0,T.default)(t,e)}function ad(t,e){if(!t)return!1;switch(t.type){case"ForInStatement":case"ForStatement":case"ForOfStatement":break;default:return!1}return e==null||(0,T.default)(t,e)}function nd(t,e){if(!t)return!1;switch(t.type){case"ForInStatement":case"ForOfStatement":break;default:return!1}return e==null||(0,T.default)(t,e)}function od(t,e){if(!t)return!1;switch(t.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return e==null||(0,T.default)(t,e)}function ld(t,e){if(!t)return!1;switch(t.type){case"FunctionDeclaration":case"FunctionExpression":case"ObjectMethod":case"ArrowFunctionExpression":case"ClassMethod":case"ClassPrivateMethod":case"StaticBlock":case"TSModuleBlock":break;default:return!1}return e==null||(0,T.default)(t,e)}function ud(t,e){if(!t)return!1;switch(t.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(t.expectedNode==="StringLiteral")break;default:return!1}return e==null||(0,T.default)(t,e)}function cd(t,e){if(!t)return!1;switch(t.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":case"TSImportEqualsDeclaration":break;case"Placeholder":if(t.expectedNode==="Declaration")break;default:return!1}return e==null||(0,T.default)(t,e)}function pd(t,e){if(!t)return!1;switch(t.type){case"Identifier":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":break;case"Placeholder":if(t.expectedNode==="Identifier")break;default:return!1}return e==null||(0,T.default)(t,e)}function fd(t,e){if(!t)return!1;switch(t.type){case"Identifier":case"MemberExpression":case"RestElement":case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSNonNullExpression":break;case"Placeholder":switch(t.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return e==null||(0,T.default)(t,e)}function dd(t,e){if(!t)return!1;switch(t.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(t.expectedNode){case"Pattern":case"Identifier":break;default:return!1}break;default:return!1}return e==null||(0,T.default)(t,e)}function hd(t,e){if(!t)return!1;switch(t.type){case"Identifier":case"TSQualifiedName":break;case"Placeholder":if(t.expectedNode==="Identifier")break;default:return!1}return e==null||(0,T.default)(t,e)}function yd(t,e){if(!t)return!1;switch(t.type){case"StringLiteral":case"NumericLiteral":case"NullLiteral":case"BooleanLiteral":case"RegExpLiteral":case"TemplateLiteral":case"BigIntLiteral":case"DecimalLiteral":break;case"Placeholder":if(t.expectedNode==="StringLiteral")break;default:return!1}return e==null||(0,T.default)(t,e)}function md(t,e){if(!t)return!1;switch(t.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(t.expectedNode==="StringLiteral")break;default:return!1}return e==null||(0,T.default)(t,e)}function Td(t,e){if(!t)return!1;switch(t.type){case"ObjectMethod":case"ObjectProperty":case"ObjectTypeInternalSlot":case"ObjectTypeCallProperty":case"ObjectTypeIndexer":case"ObjectTypeProperty":case"ObjectTypeSpreadProperty":break;default:return!1}return e==null||(0,T.default)(t,e)}function Sd(t,e){if(!t)return!1;switch(t.type){case"ObjectMethod":case"ClassMethod":case"ClassPrivateMethod":break;default:return!1}return e==null||(0,T.default)(t,e)}function xd(t,e){if(!t)return!1;switch(t.type){case"ObjectMethod":case"ObjectProperty":break;default:return!1}return e==null||(0,T.default)(t,e)}function bd(t,e){if(!t)return!1;switch(t.type){case"ObjectProperty":case"ClassProperty":case"ClassAccessorProperty":case"ClassPrivateProperty":break;default:return!1}return e==null||(0,T.default)(t,e)}function Ed(t,e){if(!t)return!1;switch(t.type){case"UnaryExpression":case"SpreadElement":break;default:return!1}return e==null||(0,T.default)(t,e)}function Pd(t,e){if(!t)return!1;switch(t.type){case"AssignmentPattern":case"ArrayPattern":case"ObjectPattern":case"VoidPattern":break;case"Placeholder":if(t.expectedNode==="Pattern")break;default:return!1}return e==null||(0,T.default)(t,e)}function gd(t,e){if(!t)return!1;switch(t.type){case"ClassExpression":case"ClassDeclaration":break;default:return!1}return e==null||(0,T.default)(t,e)}function ra(t,e){if(!t)return!1;switch(t.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":case"ImportDeclaration":break;default:return!1}return e==null||(0,T.default)(t,e)}function Ad(t,e){if(!t)return!1;switch(t.type){case"ExportAllDeclaration":case"ExportDefaultDeclaration":case"ExportNamedDeclaration":break;default:return!1}return e==null||(0,T.default)(t,e)}function Id(t,e){if(!t)return!1;switch(t.type){case"ExportSpecifier":case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":break;default:return!1}return e==null||(0,T.default)(t,e)}function vd(t,e){if(!t)return!1;switch(t.type){case"ClassAccessorProperty":break;default:return!1}return e==null||(0,T.default)(t,e)}function Cd(t,e){if(!t)return!1;switch(t.type){case"ClassPrivateProperty":case"ClassPrivateMethod":case"PrivateName":break;default:return!1}return e==null||(0,T.default)(t,e)}function Nd(t,e){if(!t)return!1;switch(t.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 e==null||(0,T.default)(t,e)}function wd(t,e){if(!t)return!1;switch(t.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 e==null||(0,T.default)(t,e)}function Od(t,e){if(!t)return!1;switch(t.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 e==null||(0,T.default)(t,e)}function Dd(t,e){if(!t)return!1;switch(t.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 e==null||(0,T.default)(t,e)}function Ld(t,e){if(!t)return!1;switch(t.type){case"DeclaredPredicate":case"InferredPredicate":break;default:return!1}return e==null||(0,T.default)(t,e)}function kd(t,e){if(!t)return!1;switch(t.type){case"EnumBooleanBody":case"EnumNumberBody":case"EnumStringBody":case"EnumSymbolBody":break;default:return!1}return e==null||(0,T.default)(t,e)}function Md(t,e){if(!t)return!1;switch(t.type){case"EnumBooleanMember":case"EnumNumberMember":case"EnumStringMember":case"EnumDefaultedMember":break;default:return!1}return e==null||(0,T.default)(t,e)}function _d(t,e){if(!t)return!1;switch(t.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 e==null||(0,T.default)(t,e)}function Bd(t,e){if(!t)return!1;switch(t.type){case"Noop":case"Placeholder":case"V8IntrinsicIdentifier":break;default:return!1}return e==null||(0,T.default)(t,e)}function Fd(t,e){if(!t)return!1;switch(t.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"TSTemplateLiteralType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSInterfaceDeclaration":case"TSInterfaceBody":case"TSTypeAliasDeclaration":case"TSInstantiationExpression":case"TSAsExpression":case"TSSatisfiesExpression":case"TSTypeAssertion":case"TSEnumBody":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 e==null||(0,T.default)(t,e)}function Rd(t,e){if(!t)return!1;switch(t.type){case"TSCallSignatureDeclaration":case"TSConstructSignatureDeclaration":case"TSPropertySignature":case"TSMethodSignature":case"TSIndexSignature":break;default:return!1}return e==null||(0,T.default)(t,e)}function jd(t,e){if(!t)return!1;switch(t.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"TSTemplateLiteralType":case"TSLiteralType":case"TSExpressionWithTypeArguments":case"TSImportType":break;default:return!1}return e==null||(0,T.default)(t,e)}function Kd(t,e){if(!t)return!1;switch(t.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"TSTemplateLiteralType":case"TSLiteralType":break;default:return!1}return e==null||(0,T.default)(t,e)}function Ud(t,e){return(0,ut.default)("isNumberLiteral","isNumericLiteral"),!t||t.type!=="NumberLiteral"?!1:e==null||(0,T.default)(t,e)}function Vd(t,e){return(0,ut.default)("isRegexLiteral","isRegExpLiteral"),!t||t.type!=="RegexLiteral"?!1:e==null||(0,T.default)(t,e)}function $d(t,e){return(0,ut.default)("isRestProperty","isRestElement"),!t||t.type!=="RestProperty"?!1:e==null||(0,T.default)(t,e)}function Yd(t,e){return(0,ut.default)("isSpreadProperty","isSpreadElement"),!t||t.type!=="SpreadProperty"?!1:e==null||(0,T.default)(t,e)}function Xd(t,e){return(0,ut.default)("isModuleDeclaration","isImportOrExportDeclaration"),ra(t,e)}Object.defineProperty(Xt,"__esModule",{value:!0});Xt.default=Jd;var Be=d;function ri(t){return(0,Be.isMemberExpression)(t)||(0,Be.isMetaProperty)(t)}function Jd(t,e,r){if(!ri(t))return!1;const s=Array.isArray(e)?e:e.split("."),i=[];let a;for(a=t;ri(a);a=(n=a.object)!=null?n:a.meta){var n;i.push(a.property)}if(i.push(a),i.length<s.length||!r&&i.length>s.length)return!1;for(let o=0,u=i.length-1;o<s.length;o++,u--){const p=i[u];let h;if((0,Be.isIdentifier)(p))h=p.name;else if((0,Be.isStringLiteral)(p))h=p.value;else if((0,Be.isThisExpression)(p))h="this";else if((0,Be.isSuper)(p))h="super";else if((0,Be.isPrivateName)(p))h="#"+p.id.name;else return!1;if(s[o]!==h)return!1}return!0}Object.defineProperty(Yt,"__esModule",{value:!0});Yt.default=Wd;var qd=Xt;function Wd(t,e){const r=t.split(".");return s=>(0,qd.default)(s,r,e)}Object.defineProperty($t,"__esModule",{value:!0});$t.default=void 0;var Hd=Yt;const zd=(0,Hd.default)("React.Component");$t.default=zd;var Zr={};Object.defineProperty(Zr,"__esModule",{value:!0});Zr.default=Gd;function Gd(t){return!!t&&/^[a-z]/.test(t)}var bt={},Et={},ue={},f={},ke={},vr={},ie={},Pt={},gt={},si;function es(){if(si)return gt;si=1,Object.defineProperty(gt,"__esModule",{value:!0}),gt.default=e;var t=de();function e(r,s){if(r===s)return!0;if(r==null||t.ALIAS_KEYS[s])return!1;const i=t.FLIPPED_ALIAS_KEYS[s];return!!(i!=null&&i.includes(r))}return gt}var At={},ii;function sa(){if(ii)return At;ii=1,Object.defineProperty(At,"__esModule",{value:!0}),At.default=e;var t=de();function e(r,s){if(r===s)return!0;const i=t.PLACEHOLDERS_ALIAS[r];return!!(i!=null&&i.includes(s))}return At}var ai;function ct(){if(ai)return Pt;ai=1,Object.defineProperty(Pt,"__esModule",{value:!0}),Pt.default=i;var t=lt,e=es(),r=sa(),s=de();function i(a,n,o){return n?(0,e.default)(n.type,a)?o===void 0?!0:(0,t.default)(n,o):!o&&n.type==="Placeholder"&&a in s.FLIPPED_ALIAS_KEYS?(0,r.default)(n.expectedNode,a):!1:!1}return Pt}var Re={},Jt={},pt={};Object.defineProperty(pt,"__esModule",{value:!0});pt.isIdentifierChar=oa;pt.isIdentifierName=th;pt.isIdentifierStart=na;let ts="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-Ა-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ--ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",ia="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ--ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・";const Qd=new RegExp("["+ts+"]"),Zd=new RegExp("["+ts+ia+"]");ts=ia=null;const aa=[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,4,51,13,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,7,25,39,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,39,27,10,22,251,41,7,1,17,5,57,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,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,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,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,24,43,261,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,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,229,29,3,0,208,30,2,2,2,1,2,6,3,4,10,1,225,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,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489],eh=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,78,5,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,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,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,199,7,137,9,54,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,55,9,266,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,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,245,1,2,9,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function _r(t,e){let r=65536;for(let s=0,i=e.length;s<i;s+=2){if(r+=e[s],r>t)return!1;if(r+=e[s+1],r>=t)return!0}return!1}function na(t){return t<65?t===36:t<=90?!0:t<97?t===95:t<=122?!0:t<=65535?t>=170&&Qd.test(String.fromCharCode(t)):_r(t,aa)}function oa(t){return t<48?t===36:t<58?!0:t<65?!1:t<=90?!0:t<97?t===95:t<=122?!0:t<=65535?t>=170&&Zd.test(String.fromCharCode(t)):_r(t,aa)||_r(t,eh)}function th(t){let e=!0;for(let r=0;r<t.length;r++){let s=t.charCodeAt(r);if((s&64512)===55296&&r+1<t.length){const i=t.charCodeAt(++r);(i&64512)===56320&&(s=65536+((s&1023)<<10)+(i&1023))}if(e){if(e=!1,!na(s))return!1}else if(!oa(s))return!1}return!e}var je={};Object.defineProperty(je,"__esModule",{value:!0});je.isKeyword=nh;je.isReservedWord=la;je.isStrictBindOnlyReservedWord=ca;je.isStrictBindReservedWord=ah;je.isStrictReservedWord=ua;const rs={keyword:["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"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]},rh=new Set(rs.keyword),sh=new Set(rs.strict),ih=new Set(rs.strictBind);function la(t,e){return e&&t==="await"||t==="enum"}function ua(t,e){return la(t,e)||sh.has(t)}function ca(t){return ih.has(t)}function ah(t,e){return ua(t,e)||ca(t)}function nh(t){return rh.has(t)}(function(t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"isIdentifierChar",{enumerable:!0,get:function(){return e.isIdentifierChar}}),Object.defineProperty(t,"isIdentifierName",{enumerable:!0,get:function(){return e.isIdentifierName}}),Object.defineProperty(t,"isIdentifierStart",{enumerable:!0,get:function(){return e.isIdentifierStart}}),Object.defineProperty(t,"isKeyword",{enumerable:!0,get:function(){return r.isKeyword}}),Object.defineProperty(t,"isReservedWord",{enumerable:!0,get:function(){return r.isReservedWord}}),Object.defineProperty(t,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return r.isStrictBindOnlyReservedWord}}),Object.defineProperty(t,"isStrictBindReservedWord",{enumerable:!0,get:function(){return r.isStrictBindReservedWord}}),Object.defineProperty(t,"isStrictReservedWord",{enumerable:!0,get:function(){return r.isStrictReservedWord}});var e=pt,r=je})(Jt);Object.defineProperty(Re,"__esModule",{value:!0});Re.default=oh;var Cr=Jt;function oh(t,e=!0){return typeof t!="string"||e&&((0,Cr.isKeyword)(t)||(0,Cr.isStrictReservedWord)(t,!0))?!1:(0,Cr.isIdentifierName)(t)}var ft={};Object.defineProperty(ft,"__esModule",{value:!0});ft.readCodePoint=fa;ft.readInt=pa;ft.readStringContents=uh;var lh=function(e){return e>=48&&e<=57};const ni={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},It={bin:t=>t===48||t===49,oct:t=>t>=48&&t<=55,dec:t=>t>=48&&t<=57,hex:t=>t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102};function uh(t,e,r,s,i,a){const n=r,o=s,u=i;let p="",h=null,E=r;const{length:I}=e;for(;;){if(r>=I){a.unterminated(n,o,u),p+=e.slice(E,r);break}const A=e.charCodeAt(r);if(ch(t,A,e,r)){p+=e.slice(E,r);break}if(A===92){p+=e.slice(E,r);const w=ph(e,r,s,i,t==="template",a);w.ch===null&&!h?h={pos:r,lineStart:s,curLine:i}:p+=w.ch,{pos:r,lineStart:s,curLine:i}=w,E=r}else A===8232||A===8233?(++r,++i,s=r):A===10||A===13?t==="template"?(p+=e.slice(E,r)+`
|
|
146
|
-
|
|
147
|
-
`);case 114:return o("\r");case 120:{let p;return{code:p,pos:e}=Br(t,e,r,s,2,!1,n,a),o(p===null?null:String.fromCharCode(p))}case 117:{let p;return{code:p,pos:e}=fa(t,e,r,s,n,a),o(p===null?null:String.fromCodePoint(p))}case 116:return o(" ");case 98:return o("\b");case 118:return o("\v");case 102:return o("\f");case 13:t.charCodeAt(e)===10&&++e;case 10:r=e,++s;case 8232:case 8233:return o("");case 56:case 57:if(i)return o(null);a.strictNumericEscape(e-1,r,s);default:if(u>=48&&u<=55){const p=e-1;let E=/^[0-7]+/.exec(t.slice(p,e+2))[0],I=parseInt(E,8);I>255&&(E=E.slice(0,-1),I=parseInt(E,8)),e+=E.length-1;const A=t.charCodeAt(e);if(E!=="0"||A===56||A===57){if(i)return o(null);a.strictNumericEscape(p,r,s)}return o(String.fromCharCode(I))}return o(String.fromCharCode(u))}}function Br(t,e,r,s,i,a,n,o){const u=e;let p;return{n:p,pos:e}=pa(t,e,r,s,16,i,a,!1,o,!n),p===null&&(n?o.invalidEscapeSequence(u,r,s):e=u-1),{code:p,pos:e}}function pa(t,e,r,s,i,a,n,o,u,p){const h=e,E=i===16?ni.hex:ni.decBinOct,I=i===16?It.hex:i===10?It.dec:i===8?It.oct:It.bin;let A=!1,w=0;for(let P=0,v=a??1/0;P<v;++P){const g=t.charCodeAt(e);let C;if(g===95&&o!=="bail"){const k=t.charCodeAt(e-1),R=t.charCodeAt(e+1);if(o){if(Number.isNaN(R)||!I(R)||E.has(k)||E.has(R)){if(p)return{n:null,pos:e};u.unexpectedNumericSeparator(e,r,s)}}else{if(p)return{n:null,pos:e};u.numericSeparatorInEscapeSequence(e,r,s)}++e;continue}if(g>=97?C=g-97+10:g>=65?C=g-65+10:lh(g)?C=g-48:C=1/0,C>=i){if(C<=9&&p)return{n:null,pos:e};if(C<=9&&u.invalidDigit(e,r,s,i))C=0;else if(n)C=0,A=!0;else break}++e,w=w*i+C}return e===h||a!=null&&e-h!==a||A?{n:null,pos:e}:{n:w,pos:e}}function fa(t,e,r,s,i,a){const n=t.charCodeAt(e);let o;if(n===123){if(++e,{code:o,pos:e}=Br(t,e,r,s,t.indexOf("}",e)-e,!0,i,a),++e,o!==null&&o>1114111)if(i)a.invalidCodePoint(e,r,s);else return{code:null,pos:e}}else({code:o,pos:e}=Br(t,e,r,s,4,!1,i,a));return{code:o,pos:e}}var U={};Object.defineProperty(U,"__esModule",{value:!0});U.UPDATE_OPERATORS=U.UNARY_OPERATORS=U.STRING_UNARY_OPERATORS=U.STATEMENT_OR_BLOCK_KEYS=U.NUMBER_UNARY_OPERATORS=U.NUMBER_BINARY_OPERATORS=U.LOGICAL_OPERATORS=U.INHERIT_KEYS=U.FOR_INIT_KEYS=U.FLATTENABLE_KEYS=U.EQUALITY_BINARY_OPERATORS=U.COMPARISON_BINARY_OPERATORS=U.COMMENT_KEYS=U.BOOLEAN_UNARY_OPERATORS=U.BOOLEAN_NUMBER_BINARY_OPERATORS=U.BOOLEAN_BINARY_OPERATORS=U.BINARY_OPERATORS=U.ASSIGNMENT_OPERATORS=void 0;U.STATEMENT_OR_BLOCK_KEYS=["consequent","body","alternate"];U.FLATTENABLE_KEYS=["body","expressions"];U.FOR_INIT_KEYS=["left","init"];U.COMMENT_KEYS=["leadingComments","trailingComments","innerComments"];const fh=U.LOGICAL_OPERATORS=["||","&&","??"];U.UPDATE_OPERATORS=["++","--"];const dh=U.BOOLEAN_NUMBER_BINARY_OPERATORS=[">","<",">=","<="],hh=U.EQUALITY_BINARY_OPERATORS=["==","===","!=","!=="],yh=U.COMPARISON_BINARY_OPERATORS=[...hh,"in","instanceof"],mh=U.BOOLEAN_BINARY_OPERATORS=[...yh,...dh],da=U.NUMBER_BINARY_OPERATORS=["-","/","%","*","**","&","|",">>",">>>","<<","^"];U.BINARY_OPERATORS=["+",...da,...mh,"|>"];U.ASSIGNMENT_OPERATORS=["=","+=",...da.map(t=>t+"="),...fh.map(t=>t+"=")];const Th=U.BOOLEAN_UNARY_OPERATORS=["delete","!"],Sh=U.NUMBER_UNARY_OPERATORS=["+","-","~"],xh=U.STRING_UNARY_OPERATORS=["typeof"];U.UNARY_OPERATORS=["void","throw",...Th,...Sh,...xh];U.INHERIT_KEYS={optional:["typeAnnotation","typeParameters","returnType"],force:["start","loc","end"]};U.BLOCK_SCOPED_SYMBOL=Symbol.for("var used to be block scoped"),U.NOT_LOCAL_BINDING=Symbol.for("should not be considered a local binding");var Y={},oi;function ge(){if(oi)return Y;oi=1,Object.defineProperty(Y,"__esModule",{value:!0}),Y.allExpandedTypes=Y.VISITOR_KEYS=Y.NODE_UNION_SHAPES__PRIVATE=Y.NODE_PARENT_VALIDATIONS=Y.NODE_FIELDS=Y.FLIPPED_ALIAS_KEYS=Y.DEPRECATED_KEYS=Y.BUILDER_KEYS=Y.ALIAS_KEYS=void 0,Y.arrayOf=P,Y.arrayOfType=v,Y.assertEach=C,Y.assertNodeOrValueType=se,Y.assertNodeType=Q,Y.assertOneOf=k,Y.assertOptionalChainStart=le,Y.assertShape=ae,Y.assertValueType=J,Y.chain=Ke,Y.default=mt,Y.defineAliasedType=Sr,Y.validate=E,Y.validateArrayOfType=g,Y.validateOptional=A,Y.validateOptionalType=w,Y.validateType=I;var t=ct(),e=ss();const r=Y.VISITOR_KEYS={},s=Y.ALIAS_KEYS={},i=Y.FLIPPED_ALIAS_KEYS={},a=Y.NODE_FIELDS={},n=Y.BUILDER_KEYS={},o=Y.DEPRECATED_KEYS={},u=Y.NODE_PARENT_VALIDATIONS={},p=Y.NODE_UNION_SHAPES__PRIVATE={};function h(L){return Array.isArray(L)?"array":L===null?"null":typeof L}function E(L){return{validate:L}}function I(...L){return E(Q(...L))}function A(L){return{validate:L,optional:!0}}function w(...L){return{validate:Q(...L),optional:!0}}function P(L){return Ke(J("array"),C(L))}function v(...L){return P(Q(...L))}function g(...L){return E(v(...L))}function C(L){const K=process.env.BABEL_TYPES_8_BREAKING?e.validateChild:()=>{};function q(j,z,te){if(!Array.isArray(te))return;let Z=0;const G={toString(){return`${z}[${Z}]`}};for(;Z<te.length;Z++){const ee=te[Z];L(j,G,ee),K(j,G,ee)}}return q.each=L,q}function k(...L){function K(q,j,z){if(!L.includes(z))throw new TypeError(`Property ${j} expected value to be one of ${JSON.stringify(L)} but got ${JSON.stringify(z)}`)}return K.oneOf=L,K}const R=Y.allExpandedTypes=[];function Q(...L){const K=new Set;R.push({types:L,set:K});function q(j,z,te){const Z=te==null?void 0:te.type;if(Z!=null){if(K.has(Z)){(0,e.validateChild)(j,z,te);return}if(Z==="Placeholder"){for(const G of L)if((0,t.default)(G,te)){(0,e.validateChild)(j,z,te);return}}}throw new TypeError(`Property ${z} of ${j.type} expected node to be of a type ${JSON.stringify(L)} but instead got ${JSON.stringify(Z)}`)}return q.oneOfNodeTypes=L,q}function se(...L){function K(q,j,z){const te=h(z);for(const Z of L)if(te===Z||(0,t.default)(Z,z)){(0,e.validateChild)(q,j,z);return}throw new TypeError(`Property ${j} of ${q.type} expected node to be of a type ${JSON.stringify(L)} but instead got ${JSON.stringify(z==null?void 0:z.type)}`)}return K.oneOfNodeOrValueTypes=L,K}function J(L){function K(q,j,z){if(h(z)!==L)throw new TypeError(`Property ${j} expected type of ${L} but got ${h(z)}`)}return K.type=L,K}function ae(L){const K=Object.keys(L);function q(j,z,te){const Z=[];for(const G of K)try{(0,e.validateField)(j,G,te[G],L[G])}catch(ee){if(ee instanceof TypeError){Z.push(ee.message);continue}throw ee}if(Z.length)throw new TypeError(`Property ${z} of ${j.type} expected to have the following:
|
|
148
|
-
${Z.join(`
|
|
149
|
-
`)}`)}return q.shapeOf=L,q}function le(){function L(K){var q;let j=K;for(;K;){const{type:z}=j;if(z==="OptionalCallExpression"){if(j.optional)return;j=j.callee;continue}if(z==="OptionalMemberExpression"){if(j.optional)return;j=j.object;continue}break}throw new TypeError(`Non-optional ${K.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${(q=j)==null?void 0:q.type}`)}return L}function Ke(...L){function K(...q){for(const j of L)j(...q)}if(K.chainOf=L,L.length>=2&&"type"in L[0]&&L[0].type==="array"&&!("each"in L[1]))throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.');return K}const mr=new Set(["aliases","builder","deprecatedAlias","fields","inherits","visitor","validate","unionShape"]),Tr=new Set(["default","optional","deprecated","validate"]),We={};function Sr(...L){return(K,q={})=>{let j=q.aliases;if(!j){var z;q.inherits&&(j=(z=We[q.inherits].aliases)==null?void 0:z.slice()),j??(j=[]),q.aliases=j}const te=L.filter(Z=>!j.includes(Z));j.unshift(...te),mt(K,q)}}function mt(L,K={}){const q=K.inherits&&We[K.inherits]||{};let j=K.fields;if(!j&&(j={},q.fields)){const G=Object.getOwnPropertyNames(q.fields);for(const ee of G){const ye=q.fields[ee],Ie=ye.default;if(Array.isArray(Ie)?Ie.length>0:Ie&&typeof Ie=="object")throw new Error("field defaults can only be primitives or empty arrays currently");j[ee]={default:Array.isArray(Ie)?[]:Ie,optional:ye.optional,deprecated:ye.deprecated,validate:ye.validate}}}const z=K.visitor||q.visitor||[],te=K.aliases||q.aliases||[],Z=K.builder||q.builder||K.visitor||[];for(const G of Object.keys(K))if(!mr.has(G))throw new Error(`Unknown type option "${G}" on ${L}`);K.deprecatedAlias&&(o[K.deprecatedAlias]=L);for(const G of z.concat(Z))j[G]=j[G]||{};for(const G of Object.keys(j)){const ee=j[G];ee.default!==void 0&&!Z.includes(G)&&(ee.optional=!0),ee.default===void 0?ee.default=null:!ee.validate&&ee.default!=null&&(ee.validate=J(h(ee.default)));for(const ye of Object.keys(ee))if(!Tr.has(ye))throw new Error(`Unknown field key "${ye}" on ${L}.${G}`)}r[L]=K.visitor=z,n[L]=K.builder=Z,a[L]=K.fields=j,s[L]=K.aliases=te,te.forEach(G=>{i[G]=i[G]||[],i[G].push(L)}),K.validate&&(u[L]=K.validate),K.unionShape&&(p[L]=K.unionShape),We[L]=K}return Y}var li;function qt(){if(li)return ie;li=1,Object.defineProperty(ie,"__esModule",{value:!0}),ie.patternLikeCommon=ie.importAttributes=ie.functionTypeAnnotationCommon=ie.functionDeclarationCommon=ie.functionCommon=ie.classMethodOrPropertyUnionShapeCommon=ie.classMethodOrPropertyCommon=ie.classMethodOrDeclareMethodCommon=void 0;var t=ct(),e=Re,r=Jt,s=ft,i=U,a=ge();const n=(P=!1)=>({unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{key:{validate:(0,a.assertNodeType)("Expression")}}},{name:"nonComputed",value:[!1],properties:{key:{validate:P?(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"):(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral")}}}]}});ie.classMethodOrPropertyUnionShapeCommon=n;const o=(0,a.defineAliasedType)("Standardized");o("ArrayExpression",{fields:{elements:{validate:(0,a.arrayOf)((0,a.assertNodeOrValueType)("null","Expression","SpreadElement")),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:["elements"],aliases:["Expression"]}),o("AssignmentExpression",{fields:{operator:{validate:process.env.BABEL_TYPES_8_BREAKING?Object.assign(function(){const P=(0,a.assertOneOf)(...i.ASSIGNMENT_OPERATORS),v=(0,a.assertOneOf)("=");return function(g,C,k){((0,t.default)("Pattern",g.left)?v:P)(g,C,k)}}(),{oneOf:i.ASSIGNMENT_OPERATORS}):(0,a.assertValueType)("string")},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.assertNodeType)("Identifier","MemberExpression","OptionalMemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,a.assertNodeType)("LVal","OptionalMemberExpression")},right:{validate:(0,a.assertNodeType)("Expression")}},builder:["operator","left","right"],visitor:["left","right"],aliases:["Expression"]}),o("BinaryExpression",{builder:["operator","left","right"],fields:{operator:{validate:(0,a.assertOneOf)(...i.BINARY_OPERATORS)},left:{validate:function(){const P=(0,a.assertNodeType)("Expression"),v=(0,a.assertNodeType)("Expression","PrivateName");return Object.assign(function(C,k,R){(C.operator==="in"?v:P)(C,k,R)},{oneOfNodeTypes:["Expression","PrivateName"]})}()},right:{validate:(0,a.assertNodeType)("Expression")}},visitor:["left","right"],aliases:["Binary","Expression"]}),o("InterpreterDirective",{builder:["value"],fields:{value:{validate:(0,a.assertValueType)("string")}}}),o("Directive",{visitor:["value"],fields:{value:{validate:(0,a.assertNodeType)("DirectiveLiteral")}}}),o("DirectiveLiteral",{builder:["value"],fields:{value:{validate:(0,a.assertValueType)("string")}}}),o("BlockStatement",{builder:["body","directives"],visitor:["directives","body"],fields:{directives:{validate:(0,a.arrayOfType)("Directive"),default:[]},body:(0,a.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","Block","Statement"]}),o("BreakStatement",{visitor:["label"],fields:{label:{validate:(0,a.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),o("CallExpression",{visitor:["callee","typeParameters","typeArguments","arguments"],builder:["callee","arguments"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,a.assertNodeType)("Expression","Super","V8IntrinsicIdentifier")},arguments:(0,a.validateArrayOfType)("Expression","SpreadElement","ArgumentPlaceholder"),typeArguments:{validate:(0,a.assertNodeType)("TypeParameterInstantiation"),optional:!0}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,a.assertValueType)("boolean"),optional:!0},typeParameters:{validate:(0,a.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),o("CatchClause",{visitor:["param","body"],fields:{param:{validate:(0,a.assertNodeType)("Identifier","ArrayPattern","ObjectPattern"),optional:!0},body:{validate:(0,a.assertNodeType)("BlockStatement")}},aliases:["Scopable","BlockParent"]}),o("ConditionalExpression",{visitor:["test","consequent","alternate"],fields:{test:{validate:(0,a.assertNodeType)("Expression")},consequent:{validate:(0,a.assertNodeType)("Expression")},alternate:{validate:(0,a.assertNodeType)("Expression")}},aliases:["Expression","Conditional"]}),o("ContinueStatement",{visitor:["label"],fields:{label:{validate:(0,a.assertNodeType)("Identifier"),optional:!0}},aliases:["Statement","Terminatorless","CompletionStatement"]}),o("DebuggerStatement",{aliases:["Statement"]}),o("DoWhileStatement",{builder:["test","body"],visitor:["body","test"],fields:{test:{validate:(0,a.assertNodeType)("Expression")},body:{validate:(0,a.assertNodeType)("Statement")}},aliases:["Statement","BlockParent","Loop","While","Scopable"]}),o("EmptyStatement",{aliases:["Statement"]}),o("ExpressionStatement",{visitor:["expression"],fields:{expression:{validate:(0,a.assertNodeType)("Expression")}},aliases:["Statement","ExpressionWrapper"]}),o("File",{builder:["program","comments","tokens"],visitor:["program"],fields:{program:{validate:(0,a.assertNodeType)("Program")},comments:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.assertEach)((0,a.assertNodeType)("CommentBlock","CommentLine")):Object.assign(()=>{},{each:{oneOfNodeTypes:["CommentBlock","CommentLine"]}}),optional:!0},tokens:{validate:(0,a.assertEach)(Object.assign(()=>{},{type:"any"})),optional:!0}}}),o("ForInStatement",{visitor:["left","right","body"],aliases:["Scopable","Statement","For","BlockParent","Loop","ForXStatement"],fields:{left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.assertNodeType)("VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,a.assertNodeType)("VariableDeclaration","LVal")},right:{validate:(0,a.assertNodeType)("Expression")},body:{validate:(0,a.assertNodeType)("Statement")}}}),o("ForStatement",{visitor:["init","test","update","body"],aliases:["Scopable","Statement","For","BlockParent","Loop"],fields:{init:{validate:(0,a.assertNodeType)("VariableDeclaration","Expression"),optional:!0},test:{validate:(0,a.assertNodeType)("Expression"),optional:!0},update:{validate:(0,a.assertNodeType)("Expression"),optional:!0},body:{validate:(0,a.assertNodeType)("Statement")}}});const u=()=>({params:(0,a.validateArrayOfType)("FunctionParameter"),generator:{default:!1},async:{default:!1}});ie.functionCommon=u;const p=()=>({returnType:{validate:(0,a.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,a.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0}});ie.functionTypeAnnotationCommon=p;const h=()=>Object.assign({},u(),{declare:{validate:(0,a.assertValueType)("boolean"),optional:!0},id:{validate:(0,a.assertNodeType)("Identifier"),optional:!0}});ie.functionDeclarationCommon=h,o("FunctionDeclaration",{builder:["id","params","body","generator","async"],visitor:["id","typeParameters","params","predicate","returnType","body"],fields:Object.assign({},h(),p(),{body:{validate:(0,a.assertNodeType)("BlockStatement")},predicate:{validate:(0,a.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}}),aliases:["Scopable","Function","BlockParent","FunctionParent","Statement","Pureish","Declaration"],validate:process.env.BABEL_TYPES_8_BREAKING?function(){const P=(0,a.assertNodeType)("Identifier");return function(v,g,C){(0,t.default)("ExportDefaultDeclaration",v)||P(C,"id",C.id)}}():void 0}),o("FunctionExpression",{inherits:"FunctionDeclaration",aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},u(),p(),{id:{validate:(0,a.assertNodeType)("Identifier"),optional:!0},body:{validate:(0,a.assertNodeType)("BlockStatement")},predicate:{validate:(0,a.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})});const E=()=>({typeAnnotation:{validate:(0,a.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},optional:{validate:(0,a.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0}});ie.patternLikeCommon=E,o("Identifier",{builder:["name"],visitor:["typeAnnotation","decorators"],aliases:["Expression","FunctionParameter","PatternLike","LVal","TSEntityName"],fields:Object.assign({},E(),{name:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertValueType)("string"),Object.assign(function(P,v,g){if(!(0,e.default)(g,!1))throw new TypeError(`"${g}" is not a valid identifier name`)},{type:"string"})):(0,a.assertValueType)("string")}}),validate:process.env.BABEL_TYPES_8_BREAKING?function(P,v,g){const C=/\.(\w+)$/.exec(v.toString());if(!C)return;const[,k]=C,R={computed:!1};if(k==="property"){if((0,t.default)("MemberExpression",P,R)||(0,t.default)("OptionalMemberExpression",P,R))return}else if(k==="key"){if((0,t.default)("Property",P,R)||(0,t.default)("Method",P,R))return}else if(k==="exported"){if((0,t.default)("ExportSpecifier",P))return}else if(k==="imported"){if((0,t.default)("ImportSpecifier",P,{imported:g}))return}else if(k==="meta"&&(0,t.default)("MetaProperty",P,{meta:g}))return;if(((0,r.isKeyword)(g.name)||(0,r.isReservedWord)(g.name,!1))&&g.name!=="this")throw new TypeError(`"${g.name}" is not a valid identifier`)}:void 0}),o("IfStatement",{visitor:["test","consequent","alternate"],aliases:["Statement","Conditional"],fields:{test:{validate:(0,a.assertNodeType)("Expression")},consequent:{validate:(0,a.assertNodeType)("Statement")},alternate:{optional:!0,validate:(0,a.assertNodeType)("Statement")}}}),o("LabeledStatement",{visitor:["label","body"],aliases:["Statement"],fields:{label:{validate:(0,a.assertNodeType)("Identifier")},body:{validate:(0,a.assertNodeType)("Statement")}}}),o("StringLiteral",{builder:["value"],fields:{value:{validate:(0,a.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),o("NumericLiteral",{builder:["value"],deprecatedAlias:"NumberLiteral",fields:{value:{validate:(0,a.chain)((0,a.assertValueType)("number"),Object.assign(function(P,v,g){},{type:"number"}))}},aliases:["Expression","Pureish","Literal","Immutable"]}),o("NullLiteral",{aliases:["Expression","Pureish","Literal","Immutable"]}),o("BooleanLiteral",{builder:["value"],fields:{value:{validate:(0,a.assertValueType)("boolean")}},aliases:["Expression","Pureish","Literal","Immutable"]}),o("RegExpLiteral",{builder:["pattern","flags"],deprecatedAlias:"RegexLiteral",aliases:["Expression","Pureish","Literal"],fields:{pattern:{validate:(0,a.assertValueType)("string")},flags:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertValueType)("string"),Object.assign(function(P,v,g){const C=/[^dgimsuvy]/.exec(g);if(C)throw new TypeError(`"${C[0]}" is not a valid RegExp flag`)},{type:"string"})):(0,a.assertValueType)("string"),default:""}}}),o("LogicalExpression",{builder:["operator","left","right"],visitor:["left","right"],aliases:["Binary","Expression"],fields:{operator:{validate:(0,a.assertOneOf)(...i.LOGICAL_OPERATORS)},left:{validate:(0,a.assertNodeType)("Expression")},right:{validate:(0,a.assertNodeType)("Expression")}}}),o("MemberExpression",{builder:["object","property","computed",...process.env.BABEL_TYPES_8_BREAKING?[]:["optional"]],visitor:["object","property"],aliases:["Expression","LVal","PatternLike"],unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{property:{validate:(0,a.assertNodeType)("Expression")}}},{name:"nonComputed",value:[!1],properties:{property:{validate:(0,a.assertNodeType)("Identifier","PrivateName")}}}]},fields:Object.assign({object:{validate:(0,a.assertNodeType)("Expression","Super")},property:{validate:function(){const P=(0,a.assertNodeType)("Identifier","PrivateName"),v=(0,a.assertNodeType)("Expression"),g=function(C,k,R){(C.computed?v:P)(C,k,R)};return g.oneOfNodeTypes=["Expression","Identifier","PrivateName"],g}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,a.assertValueType)("boolean"),optional:!0}})}),o("NewExpression",{inherits:"CallExpression"}),o("Program",{visitor:["directives","body"],builder:["body","directives","sourceType","interpreter"],fields:{sourceType:{validate:(0,a.assertOneOf)("script","module"),default:"script"},interpreter:{validate:(0,a.assertNodeType)("InterpreterDirective"),default:null,optional:!0},directives:{validate:(0,a.arrayOfType)("Directive"),default:[]},body:(0,a.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","Block"]}),o("ObjectExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:(0,a.validateArrayOfType)("ObjectMethod","ObjectProperty","SpreadElement")}}),o("ObjectMethod",Object.assign({builder:["kind","key","params","body","computed","generator","async"],visitor:["decorators","key","typeParameters","params","returnType","body"]},n(),{fields:Object.assign({},u(),p(),{kind:Object.assign({validate:(0,a.assertOneOf)("method","get","set")},process.env.BABEL_TYPES_8_BREAKING?{}:{default:"method"}),computed:{default:!1},key:{validate:function(){const P=(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),v=(0,a.assertNodeType)("Expression"),g=function(C,k,R){(C.computed?v:P)(C,k,R)};return g.oneOfNodeTypes=["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral"],g}()},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0},body:{validate:(0,a.assertNodeType)("BlockStatement")}}),aliases:["UserWhitespacable","Function","Scopable","BlockParent","FunctionParent","Method","ObjectMember"]})),o("ObjectProperty",{builder:["key","value","computed","shorthand",...process.env.BABEL_TYPES_8_BREAKING?[]:["decorators"]],unionShape:{discriminator:"computed",shapes:[{name:"computed",value:[!0],properties:{key:{validate:(0,a.assertNodeType)("Expression")}}},{name:"nonComputed",value:[!1],properties:{key:{validate:(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName")}}}]},fields:{computed:{default:!1},key:{validate:function(){const P=(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"),v=(0,a.assertNodeType)("Expression");return Object.assign(function(C,k,R){(C.computed?v:P)(C,k,R)},{oneOfNodeTypes:["Expression","Identifier","StringLiteral","NumericLiteral","BigIntLiteral","DecimalLiteral","PrivateName"]})}()},value:{validate:(0,a.assertNodeType)("Expression","PatternLike")},shorthand:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertValueType)("boolean"),Object.assign(function(P,v,g){if(g){if(P.computed)throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true");if(!(0,t.default)("Identifier",P.key))throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier")}},{type:"boolean"})):(0,a.assertValueType)("boolean"),default:!1},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0}},visitor:["decorators","key","value"],aliases:["UserWhitespacable","Property","ObjectMember"],validate:process.env.BABEL_TYPES_8_BREAKING?function(){const P=(0,a.assertNodeType)("Identifier","Pattern","TSAsExpression","TSSatisfiesExpression","TSNonNullExpression","TSTypeAssertion"),v=(0,a.assertNodeType)("Expression");return function(g,C,k){((0,t.default)("ObjectPattern",g)?P:v)(k,"value",k.value)}}():void 0}),o("RestElement",{visitor:["argument","typeAnnotation"],builder:["argument"],aliases:["FunctionParameter","PatternLike","LVal"],deprecatedAlias:"RestProperty",fields:Object.assign({},E(),{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"):(0,a.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression","RestElement","AssignmentPattern")}}),validate:process.env.BABEL_TYPES_8_BREAKING?function(P,v){const g=/(\w+)\[(\d+)\]/.exec(v.toString());if(!g)throw new Error("Internal Babel error: malformed key.");const[,C,k]=g;if(P[C].length>+k+1)throw new TypeError(`RestElement must be last element of ${C}`)}:void 0}),o("ReturnStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,a.assertNodeType)("Expression"),optional:!0}}}),o("SequenceExpression",{visitor:["expressions"],fields:{expressions:(0,a.validateArrayOfType)("Expression")},aliases:["Expression"]}),o("ParenthesizedExpression",{visitor:["expression"],aliases:["Expression","ExpressionWrapper"],fields:{expression:{validate:(0,a.assertNodeType)("Expression")}}}),o("SwitchCase",{visitor:["test","consequent"],fields:{test:{validate:(0,a.assertNodeType)("Expression"),optional:!0},consequent:(0,a.validateArrayOfType)("Statement")}}),o("SwitchStatement",{visitor:["discriminant","cases"],aliases:["Statement","BlockParent","Scopable"],fields:{discriminant:{validate:(0,a.assertNodeType)("Expression")},cases:(0,a.validateArrayOfType)("SwitchCase")}}),o("ThisExpression",{aliases:["Expression"]}),o("ThrowStatement",{visitor:["argument"],aliases:["Statement","Terminatorless","CompletionStatement"],fields:{argument:{validate:(0,a.assertNodeType)("Expression")}}}),o("TryStatement",{visitor:["block","handler","finalizer"],aliases:["Statement"],fields:{block:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertNodeType)("BlockStatement"),Object.assign(function(P){if(!P.handler&&!P.finalizer)throw new TypeError("TryStatement expects either a handler or finalizer, or both")},{oneOfNodeTypes:["BlockStatement"]})):(0,a.assertNodeType)("BlockStatement")},handler:{optional:!0,validate:(0,a.assertNodeType)("CatchClause")},finalizer:{optional:!0,validate:(0,a.assertNodeType)("BlockStatement")}}}),o("UnaryExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!0},argument:{validate:(0,a.assertNodeType)("Expression")},operator:{validate:(0,a.assertOneOf)(...i.UNARY_OPERATORS)}},visitor:["argument"],aliases:["UnaryLike","Expression"]}),o("UpdateExpression",{builder:["operator","argument","prefix"],fields:{prefix:{default:!1},argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.assertNodeType)("Identifier","MemberExpression"):(0,a.assertNodeType)("Expression")},operator:{validate:(0,a.assertOneOf)(...i.UPDATE_OPERATORS)}},visitor:["argument"],aliases:["Expression"]}),o("VariableDeclaration",{builder:["kind","declarations"],visitor:["declarations"],aliases:["Statement","Declaration"],fields:{declare:{validate:(0,a.assertValueType)("boolean"),optional:!0},kind:{validate:(0,a.assertOneOf)("var","let","const","using","await using")},declarations:(0,a.validateArrayOfType)("VariableDeclarator")},validate:process.env.BABEL_TYPES_8_BREAKING?(()=>{const P=(0,a.assertNodeType)("Identifier","Placeholder"),v=(0,a.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","Placeholder"),g=(0,a.assertNodeType)("Identifier","VoidPattern","Placeholder");return function(C,k,R){const{kind:Q,declarations:se}=R,J=(0,t.default)("ForXStatement",C,{left:R});if(J&&se.length!==1)throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${C.type}`);for(const ae of se)Q==="const"||Q==="let"||Q==="var"?!J&&!ae.init?P(ae,"id",ae.id):v(ae,"id",ae.id):g(ae,"id",ae.id)}})():void 0}),o("VariableDeclarator",{visitor:["id","init"],fields:{id:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.assertNodeType)("Identifier","ArrayPattern","ObjectPattern","VoidPattern"):(0,a.assertNodeType)("LVal","VoidPattern")},definite:{optional:!0,validate:(0,a.assertValueType)("boolean")},init:{optional:!0,validate:(0,a.assertNodeType)("Expression")}}}),o("WhileStatement",{visitor:["test","body"],aliases:["Statement","BlockParent","Loop","While","Scopable"],fields:{test:{validate:(0,a.assertNodeType)("Expression")},body:{validate:(0,a.assertNodeType)("Statement")}}}),o("WithStatement",{visitor:["object","body"],aliases:["Statement"],fields:{object:{validate:(0,a.assertNodeType)("Expression")},body:{validate:(0,a.assertNodeType)("Statement")}}}),o("AssignmentPattern",{visitor:["left","right","decorators"],builder:["left","right"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},E(),{left:{validate:(0,a.assertNodeType)("Identifier","ObjectPattern","ArrayPattern","MemberExpression","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression")},right:{validate:(0,a.assertNodeType)("Expression")},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0}})}),o("ArrayPattern",{visitor:["elements","typeAnnotation"],builder:["elements"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},E(),{elements:{validate:(0,a.chain)((0,a.assertValueType)("array"),(0,a.assertEach)((0,a.assertNodeOrValueType)("null","PatternLike")))}})}),o("ArrowFunctionExpression",{builder:["params","body","async"],visitor:["typeParameters","params","predicate","returnType","body"],aliases:["Scopable","Function","BlockParent","FunctionParent","Expression","Pureish"],fields:Object.assign({},u(),p(),{expression:{validate:(0,a.assertValueType)("boolean")},body:{validate:(0,a.assertNodeType)("BlockStatement","Expression")},predicate:{validate:(0,a.assertNodeType)("DeclaredPredicate","InferredPredicate"),optional:!0}})}),o("ClassBody",{visitor:["body"],fields:{body:(0,a.validateArrayOfType)("ClassMethod","ClassPrivateMethod","ClassProperty","ClassPrivateProperty","ClassAccessorProperty","TSDeclareMethod","TSIndexSignature","StaticBlock")}}),o("ClassExpression",{builder:["id","superClass","body","decorators"],visitor:["decorators","id","typeParameters","superClass","superTypeParameters","mixins","implements","body"],aliases:["Scopable","Class","Expression"],fields:{id:{validate:(0,a.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,a.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,a.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,a.assertNodeType)("Expression")},superTypeParameters:{validate:(0,a.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,a.arrayOfType)("TSExpressionWithTypeArguments","ClassImplements"),optional:!0},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0},mixins:{validate:(0,a.assertNodeType)("InterfaceExtends"),optional:!0}}}),o("ClassDeclaration",{inherits:"ClassExpression",aliases:["Scopable","Class","Statement","Declaration"],fields:{id:{validate:(0,a.assertNodeType)("Identifier"),optional:!0},typeParameters:{validate:(0,a.assertNodeType)("TypeParameterDeclaration","TSTypeParameterDeclaration","Noop"),optional:!0},body:{validate:(0,a.assertNodeType)("ClassBody")},superClass:{optional:!0,validate:(0,a.assertNodeType)("Expression")},superTypeParameters:{validate:(0,a.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0},implements:{validate:(0,a.arrayOfType)("TSExpressionWithTypeArguments","ClassImplements"),optional:!0},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0},mixins:{validate:(0,a.assertNodeType)("InterfaceExtends"),optional:!0},declare:{validate:(0,a.assertValueType)("boolean"),optional:!0},abstract:{validate:(0,a.assertValueType)("boolean"),optional:!0}},validate:process.env.BABEL_TYPES_8_BREAKING?function(){const P=(0,a.assertNodeType)("Identifier");return function(v,g,C){(0,t.default)("ExportDefaultDeclaration",v)||P(C,"id",C.id)}}():void 0});const I=ie.importAttributes={attributes:{optional:!0,validate:(0,a.arrayOfType)("ImportAttribute")},assertions:{deprecated:!0,optional:!0,validate:(0,a.arrayOfType)("ImportAttribute")}};o("ExportAllDeclaration",{builder:["source"],visitor:["source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:Object.assign({source:{validate:(0,a.assertNodeType)("StringLiteral")},exportKind:(0,a.validateOptional)((0,a.assertOneOf)("type","value"))},I)}),o("ExportDefaultDeclaration",{visitor:["declaration"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:{declaration:(0,a.validateType)("TSDeclareFunction","FunctionDeclaration","ClassDeclaration","Expression"),exportKind:(0,a.validateOptional)((0,a.assertOneOf)("value"))}}),o("ExportNamedDeclaration",{builder:["declaration","specifiers","source"],visitor:["declaration","specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration","ExportDeclaration"],fields:Object.assign({declaration:{optional:!0,validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertNodeType)("Declaration"),Object.assign(function(P,v,g){if(g&&P.specifiers.length)throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration");if(g&&P.source)throw new TypeError("Cannot export a declaration from a source")},{oneOfNodeTypes:["Declaration"]})):(0,a.assertNodeType)("Declaration")}},I,{specifiers:{default:[],validate:(0,a.arrayOf)(function(){const P=(0,a.assertNodeType)("ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"),v=(0,a.assertNodeType)("ExportSpecifier");return process.env.BABEL_TYPES_8_BREAKING?Object.assign(function(g,C,k){(g.source?P:v)(g,C,k)},{oneOfNodeTypes:["ExportSpecifier","ExportDefaultSpecifier","ExportNamespaceSpecifier"]}):P}())},source:{validate:(0,a.assertNodeType)("StringLiteral"),optional:!0},exportKind:(0,a.validateOptional)((0,a.assertOneOf)("type","value"))})}),o("ExportSpecifier",{visitor:["local","exported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,a.assertNodeType)("Identifier")},exported:{validate:(0,a.assertNodeType)("Identifier","StringLiteral")},exportKind:{validate:(0,a.assertOneOf)("type","value"),optional:!0}}}),o("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,a.assertNodeType)("VariableDeclaration","LVal");const P=(0,a.assertNodeType)("VariableDeclaration"),v=(0,a.assertNodeType)("Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression");return Object.assign(function(g,C,k){(0,t.default)("VariableDeclaration",k)?P(g,C,k):v(g,C,k)},{oneOfNodeTypes:["VariableDeclaration","Identifier","MemberExpression","ArrayPattern","ObjectPattern","TSAsExpression","TSSatisfiesExpression","TSTypeAssertion","TSNonNullExpression"]})}()},right:{validate:(0,a.assertNodeType)("Expression")},body:{validate:(0,a.assertNodeType)("Statement")},await:{default:!1}}}),o("ImportDeclaration",{builder:["specifiers","source"],visitor:["specifiers","source","attributes","assertions"],aliases:["Statement","Declaration","ImportOrExportDeclaration"],fields:Object.assign({},I,{module:{optional:!0,validate:(0,a.assertValueType)("boolean")},phase:{default:null,validate:(0,a.assertOneOf)("source","defer")},specifiers:(0,a.validateArrayOfType)("ImportSpecifier","ImportDefaultSpecifier","ImportNamespaceSpecifier"),source:{validate:(0,a.assertNodeType)("StringLiteral")},importKind:{validate:(0,a.assertOneOf)("type","typeof","value"),optional:!0}})}),o("ImportDefaultSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,a.assertNodeType)("Identifier")}}}),o("ImportNamespaceSpecifier",{visitor:["local"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,a.assertNodeType)("Identifier")}}}),o("ImportSpecifier",{visitor:["imported","local"],builder:["local","imported"],aliases:["ModuleSpecifier"],fields:{local:{validate:(0,a.assertNodeType)("Identifier")},imported:{validate:(0,a.assertNodeType)("Identifier","StringLiteral")},importKind:{validate:(0,a.assertOneOf)("type","typeof","value"),optional:!0}}}),o("ImportExpression",{visitor:["source","options"],aliases:["Expression"],fields:{phase:{default:null,validate:(0,a.assertOneOf)("source","defer")},source:{validate:(0,a.assertNodeType)("Expression")},options:{validate:(0,a.assertNodeType)("Expression"),optional:!0}}}),o("MetaProperty",{visitor:["meta","property"],aliases:["Expression"],fields:{meta:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertNodeType)("Identifier"),Object.assign(function(P,v,g){let C;switch(g.name){case"function":C="sent";break;case"new":C="target";break;case"import":C="meta";break}if(!(0,t.default)("Identifier",P.property,{name:C}))throw new TypeError("Unrecognised MetaProperty")},{oneOfNodeTypes:["Identifier"]})):(0,a.assertNodeType)("Identifier")},property:{validate:(0,a.assertNodeType)("Identifier")}}});const A=()=>({abstract:{validate:(0,a.assertValueType)("boolean"),optional:!0},accessibility:{validate:(0,a.assertOneOf)("public","private","protected"),optional:!0},static:{default:!1},override:{default:!1},computed:{default:!1},optional:{validate:(0,a.assertValueType)("boolean"),optional:!0},key:{validate:(0,a.chain)(function(){const P=(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral"),v=(0,a.assertNodeType)("Expression");return function(g,C,k){(g.computed?v:P)(g,C,k)}}(),(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression"))}});ie.classMethodOrPropertyCommon=A;const w=()=>Object.assign({},u(),A(),{params:(0,a.validateArrayOfType)("FunctionParameter","TSParameterProperty"),kind:{validate:(0,a.assertOneOf)("get","set","method","constructor"),default:"method"},access:{validate:(0,a.chain)((0,a.assertValueType)("string"),(0,a.assertOneOf)("public","private","protected")),optional:!0},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0}});return ie.classMethodOrDeclareMethodCommon=w,o("ClassMethod",Object.assign({aliases:["Function","Scopable","BlockParent","FunctionParent","Method"],builder:["kind","key","params","body","computed","static","generator","async"],visitor:["decorators","key","typeParameters","params","returnType","body"]},n(),{fields:Object.assign({},w(),p(),{body:{validate:(0,a.assertNodeType)("BlockStatement")}})})),o("ObjectPattern",{visitor:["decorators","properties","typeAnnotation"],builder:["properties"],aliases:["FunctionParameter","Pattern","PatternLike","LVal"],fields:Object.assign({},E(),{properties:(0,a.validateArrayOfType)("RestElement","ObjectProperty")})}),o("SpreadElement",{visitor:["argument"],aliases:["UnaryLike"],deprecatedAlias:"SpreadProperty",fields:{argument:{validate:(0,a.assertNodeType)("Expression")}}}),o("Super",{aliases:["Expression"]}),o("TaggedTemplateExpression",{visitor:["tag","typeParameters","quasi"],builder:["tag","quasi"],aliases:["Expression"],fields:{tag:{validate:(0,a.assertNodeType)("Expression")},quasi:{validate:(0,a.assertNodeType)("TemplateLiteral")},typeParameters:{validate:(0,a.assertNodeType)("TypeParameterInstantiation","TSTypeParameterInstantiation"),optional:!0}}}),o("TemplateElement",{builder:["value","tail"],fields:{value:{validate:(0,a.chain)((0,a.assertShape)({raw:{validate:(0,a.assertValueType)("string")},cooked:{validate:(0,a.assertValueType)("string"),optional:!0}}),function(v){const g=v.value.raw;let C=!1;const k=()=>{throw new Error("Internal @babel/types error.")},{str:R,firstInvalidLoc:Q}=(0,s.readStringContents)("template",g,0,0,0,{unterminated(){C=!0},strictNumericEscape:k,invalidEscapeSequence:k,numericSeparatorInEscapeSequence:k,unexpectedNumericSeparator:k,invalidDigit:k,invalidCodePoint:k});if(!C)throw new Error("Invalid raw");v.value.cooked=Q?null:R})},tail:{default:!1}}}),o("TemplateLiteral",{visitor:["quasis","expressions"],aliases:["Expression","Literal"],fields:{quasis:(0,a.validateArrayOfType)("TemplateElement"),expressions:{validate:(0,a.chain)((0,a.assertValueType)("array"),(0,a.assertEach)((0,a.assertNodeType)("Expression","TSType")),function(P,v,g){if(P.quasis.length!==g.length+1)throw new TypeError(`Number of ${P.type} quasis should be exactly one more than the number of expressions.
|
|
150
|
-
Expected ${g.length+1} quasis but got ${P.quasis.length}`)})}}}),o("YieldExpression",{builder:["argument","delegate"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{delegate:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertValueType)("boolean"),Object.assign(function(P,v,g){if(g&&!P.argument)throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument")},{type:"boolean"})):(0,a.assertValueType)("boolean"),default:!1},argument:{optional:!0,validate:(0,a.assertNodeType)("Expression")}}}),o("AwaitExpression",{builder:["argument"],visitor:["argument"],aliases:["Expression","Terminatorless"],fields:{argument:{validate:(0,a.assertNodeType)("Expression")}}}),o("Import",{aliases:["Expression"]}),o("BigIntLiteral",{builder:["value"],fields:{value:{validate:(0,a.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),o("ExportNamespaceSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,a.assertNodeType)("Identifier")}}}),o("OptionalMemberExpression",{builder:["object","property","computed","optional"],visitor:["object","property"],aliases:["Expression"],fields:{object:{validate:(0,a.assertNodeType)("Expression")},property:{validate:function(){const P=(0,a.assertNodeType)("Identifier"),v=(0,a.assertNodeType)("Expression");return Object.assign(function(C,k,R){(C.computed?v:P)(C,k,R)},{oneOfNodeTypes:["Expression","Identifier"]})}()},computed:{default:!1},optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertValueType)("boolean"),(0,a.assertOptionalChainStart)()):(0,a.assertValueType)("boolean")}}}),o("OptionalCallExpression",{visitor:["callee","typeParameters","typeArguments","arguments"],builder:["callee","arguments","optional"],aliases:["Expression"],fields:Object.assign({callee:{validate:(0,a.assertNodeType)("Expression")},arguments:(0,a.validateArrayOfType)("Expression","SpreadElement","ArgumentPlaceholder"),optional:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,a.chain)((0,a.assertValueType)("boolean"),(0,a.assertOptionalChainStart)()):(0,a.assertValueType)("boolean")},typeArguments:{validate:(0,a.assertNodeType)("TypeParameterInstantiation"),optional:!0}},{typeParameters:{validate:(0,a.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),o("ClassProperty",Object.assign({visitor:["decorators","variance","key","typeAnnotation","value"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property"]},n(),{fields:Object.assign({},A(),{value:{validate:(0,a.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,a.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,a.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0},readonly:{validate:(0,a.assertValueType)("boolean"),optional:!0},declare:{validate:(0,a.assertValueType)("boolean"),optional:!0},variance:{validate:(0,a.assertNodeType)("Variance"),optional:!0}})})),o("ClassAccessorProperty",Object.assign({visitor:["decorators","key","typeAnnotation","value"],builder:["key","value","typeAnnotation","decorators","computed","static"],aliases:["Property","Accessor"]},n(!0),{fields:Object.assign({},A(),{key:{validate:(0,a.chain)(function(){const P=(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","PrivateName"),v=(0,a.assertNodeType)("Expression");return function(g,C,k){(g.computed?v:P)(g,C,k)}}(),(0,a.assertNodeType)("Identifier","StringLiteral","NumericLiteral","BigIntLiteral","Expression","PrivateName"))},value:{validate:(0,a.assertNodeType)("Expression"),optional:!0},definite:{validate:(0,a.assertValueType)("boolean"),optional:!0},typeAnnotation:{validate:(0,a.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0},readonly:{validate:(0,a.assertValueType)("boolean"),optional:!0},declare:{validate:(0,a.assertValueType)("boolean"),optional:!0},variance:{validate:(0,a.assertNodeType)("Variance"),optional:!0}})})),o("ClassPrivateProperty",{visitor:["decorators","variance","key","typeAnnotation","value"],builder:["key","value","decorators","static"],aliases:["Property","Private"],fields:{key:{validate:(0,a.assertNodeType)("PrivateName")},value:{validate:(0,a.assertNodeType)("Expression"),optional:!0},typeAnnotation:{validate:(0,a.assertNodeType)("TypeAnnotation","TSTypeAnnotation","Noop"),optional:!0},decorators:{validate:(0,a.arrayOfType)("Decorator"),optional:!0},static:{validate:(0,a.assertValueType)("boolean"),default:!1},readonly:{validate:(0,a.assertValueType)("boolean"),optional:!0},optional:{validate:(0,a.assertValueType)("boolean"),optional:!0},definite:{validate:(0,a.assertValueType)("boolean"),optional:!0},variance:{validate:(0,a.assertNodeType)("Variance"),optional:!0}}}),o("ClassPrivateMethod",{builder:["kind","key","params","body","static"],visitor:["decorators","key","typeParameters","params","returnType","body"],aliases:["Function","Scopable","BlockParent","FunctionParent","Method","Private"],fields:Object.assign({},w(),p(),{kind:{validate:(0,a.assertOneOf)("get","set","method"),default:"method"},key:{validate:(0,a.assertNodeType)("PrivateName")},body:{validate:(0,a.assertNodeType)("BlockStatement")}})}),o("PrivateName",{visitor:["id"],aliases:["Private"],fields:{id:{validate:(0,a.assertNodeType)("Identifier")}}}),o("StaticBlock",{visitor:["body"],fields:{body:(0,a.validateArrayOfType)("Statement")},aliases:["Scopable","BlockParent","FunctionParent"]}),o("ImportAttribute",{visitor:["key","value"],fields:{key:{validate:(0,a.assertNodeType)("Identifier","StringLiteral")},value:{validate:(0,a.assertNodeType)("StringLiteral")}}}),ie}var ui={},ci;function bh(){if(ci)return ui;ci=1;var t=qt(),e=ge();const r=(0,e.defineAliasedType)("Flow"),s=i=>{const a=i==="DeclareClass";r(i,{builder:["id","typeParameters","extends","body"],visitor:["id","typeParameters","extends",...a?["mixins","implements"]:[],"body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({id:(0,e.validateType)("Identifier"),typeParameters:(0,e.validateOptionalType)("TypeParameterDeclaration"),extends:(0,e.validateOptional)((0,e.arrayOfType)("InterfaceExtends"))},a?{mixins:(0,e.validateOptional)((0,e.arrayOfType)("InterfaceExtends")),implements:(0,e.validateOptional)((0,e.arrayOfType)("ClassImplements"))}:{},{body:(0,e.validateType)("ObjectTypeAnnotation")})})};return r("AnyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("ArrayTypeAnnotation",{visitor:["elementType"],aliases:["FlowType"],fields:{elementType:(0,e.validateType)("FlowType")}}),r("BooleanTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("BooleanLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,e.validate)((0,e.assertValueType)("boolean"))}}),r("NullLiteralTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("ClassImplements",{visitor:["id","typeParameters"],fields:{id:(0,e.validateType)("Identifier"),typeParameters:(0,e.validateOptionalType)("TypeParameterInstantiation")}}),s("DeclareClass"),r("DeclareFunction",{builder:["id"],visitor:["id","predicate"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,e.validateType)("Identifier"),predicate:(0,e.validateOptionalType)("DeclaredPredicate")}}),s("DeclareInterface"),r("DeclareModule",{builder:["id","body","kind"],visitor:["id","body"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,e.validateType)("Identifier","StringLiteral"),body:(0,e.validateType)("BlockStatement"),kind:(0,e.validateOptional)((0,e.assertOneOf)("CommonJS","ES"))}}),r("DeclareModuleExports",{visitor:["typeAnnotation"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{typeAnnotation:(0,e.validateType)("TypeAnnotation")}}),r("DeclareTypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,e.validateType)("Identifier"),typeParameters:(0,e.validateOptionalType)("TypeParameterDeclaration"),right:(0,e.validateType)("FlowType")}}),r("DeclareOpaqueType",{visitor:["id","typeParameters","supertype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,e.validateType)("Identifier"),typeParameters:(0,e.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,e.validateOptionalType)("FlowType"),impltype:(0,e.validateOptionalType)("FlowType")}}),r("DeclareVariable",{visitor:["id"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,e.validateType)("Identifier")}}),r("DeclareExportDeclaration",{visitor:["declaration","specifiers","source","attributes"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({declaration:(0,e.validateOptionalType)("Flow"),specifiers:(0,e.validateOptional)((0,e.arrayOfType)("ExportSpecifier","ExportNamespaceSpecifier")),source:(0,e.validateOptionalType)("StringLiteral"),default:(0,e.validateOptional)((0,e.assertValueType)("boolean"))},t.importAttributes)}),r("DeclareExportAllDeclaration",{visitor:["source","attributes"],aliases:["FlowDeclaration","Statement","Declaration"],fields:Object.assign({source:(0,e.validateType)("StringLiteral"),exportKind:(0,e.validateOptional)((0,e.assertOneOf)("type","value"))},t.importAttributes)}),r("DeclaredPredicate",{visitor:["value"],aliases:["FlowPredicate"],fields:{value:(0,e.validateType)("Flow")}}),r("ExistsTypeAnnotation",{aliases:["FlowType"]}),r("FunctionTypeAnnotation",{builder:["typeParameters","params","rest","returnType"],visitor:["typeParameters","this","params","rest","returnType"],aliases:["FlowType"],fields:{typeParameters:(0,e.validateOptionalType)("TypeParameterDeclaration"),params:(0,e.validateArrayOfType)("FunctionTypeParam"),rest:(0,e.validateOptionalType)("FunctionTypeParam"),this:(0,e.validateOptionalType)("FunctionTypeParam"),returnType:(0,e.validateType)("FlowType")}}),r("FunctionTypeParam",{visitor:["name","typeAnnotation"],fields:{name:(0,e.validateOptionalType)("Identifier"),typeAnnotation:(0,e.validateType)("FlowType"),optional:(0,e.validateOptional)((0,e.assertValueType)("boolean"))}}),r("GenericTypeAnnotation",{visitor:["id","typeParameters"],aliases:["FlowType"],fields:{id:(0,e.validateType)("Identifier","QualifiedTypeIdentifier"),typeParameters:(0,e.validateOptionalType)("TypeParameterInstantiation")}}),r("InferredPredicate",{aliases:["FlowPredicate"]}),r("InterfaceExtends",{visitor:["id","typeParameters"],fields:{id:(0,e.validateType)("Identifier","QualifiedTypeIdentifier"),typeParameters:(0,e.validateOptionalType)("TypeParameterInstantiation")}}),s("InterfaceDeclaration"),r("InterfaceTypeAnnotation",{visitor:["extends","body"],aliases:["FlowType"],fields:{extends:(0,e.validateOptional)((0,e.arrayOfType)("InterfaceExtends")),body:(0,e.validateType)("ObjectTypeAnnotation")}}),r("IntersectionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,e.validate)((0,e.arrayOfType)("FlowType"))}}),r("MixedTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("EmptyTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("NullableTypeAnnotation",{visitor:["typeAnnotation"],aliases:["FlowType"],fields:{typeAnnotation:(0,e.validateType)("FlowType")}}),r("NumberLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,e.validate)((0,e.assertValueType)("number"))}}),r("NumberTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("ObjectTypeAnnotation",{visitor:["properties","indexers","callProperties","internalSlots"],aliases:["FlowType"],builder:["properties","indexers","callProperties","internalSlots","exact"],fields:{properties:(0,e.validate)((0,e.arrayOfType)("ObjectTypeProperty","ObjectTypeSpreadProperty")),indexers:{validate:(0,e.arrayOfType)("ObjectTypeIndexer"),optional:!0,default:[]},callProperties:{validate:(0,e.arrayOfType)("ObjectTypeCallProperty"),optional:!0,default:[]},internalSlots:{validate:(0,e.arrayOfType)("ObjectTypeInternalSlot"),optional:!0,default:[]},exact:{validate:(0,e.assertValueType)("boolean"),default:!1},inexact:(0,e.validateOptional)((0,e.assertValueType)("boolean"))}}),r("ObjectTypeInternalSlot",{visitor:["id","value"],builder:["id","value","optional","static","method"],aliases:["UserWhitespacable"],fields:{id:(0,e.validateType)("Identifier"),value:(0,e.validateType)("FlowType"),optional:(0,e.validate)((0,e.assertValueType)("boolean")),static:(0,e.validate)((0,e.assertValueType)("boolean")),method:(0,e.validate)((0,e.assertValueType)("boolean"))}}),r("ObjectTypeCallProperty",{visitor:["value"],aliases:["UserWhitespacable"],fields:{value:(0,e.validateType)("FlowType"),static:(0,e.validate)((0,e.assertValueType)("boolean"))}}),r("ObjectTypeIndexer",{visitor:["variance","id","key","value"],builder:["id","key","value","variance"],aliases:["UserWhitespacable"],fields:{id:(0,e.validateOptionalType)("Identifier"),key:(0,e.validateType)("FlowType"),value:(0,e.validateType)("FlowType"),static:(0,e.validate)((0,e.assertValueType)("boolean")),variance:(0,e.validateOptionalType)("Variance")}}),r("ObjectTypeProperty",{visitor:["key","value","variance"],aliases:["UserWhitespacable"],fields:{key:(0,e.validateType)("Identifier","StringLiteral"),value:(0,e.validateType)("FlowType"),kind:(0,e.validate)((0,e.assertOneOf)("init","get","set")),static:(0,e.validate)((0,e.assertValueType)("boolean")),proto:(0,e.validate)((0,e.assertValueType)("boolean")),optional:(0,e.validate)((0,e.assertValueType)("boolean")),variance:(0,e.validateOptionalType)("Variance"),method:(0,e.validate)((0,e.assertValueType)("boolean"))}}),r("ObjectTypeSpreadProperty",{visitor:["argument"],aliases:["UserWhitespacable"],fields:{argument:(0,e.validateType)("FlowType")}}),r("OpaqueType",{visitor:["id","typeParameters","supertype","impltype"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,e.validateType)("Identifier"),typeParameters:(0,e.validateOptionalType)("TypeParameterDeclaration"),supertype:(0,e.validateOptionalType)("FlowType"),impltype:(0,e.validateType)("FlowType")}}),r("QualifiedTypeIdentifier",{visitor:["qualification","id"],builder:["id","qualification"],fields:{id:(0,e.validateType)("Identifier"),qualification:(0,e.validateType)("Identifier","QualifiedTypeIdentifier")}}),r("StringLiteralTypeAnnotation",{builder:["value"],aliases:["FlowType"],fields:{value:(0,e.validate)((0,e.assertValueType)("string"))}}),r("StringTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("SymbolTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("ThisTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("TupleTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,e.validate)((0,e.arrayOfType)("FlowType"))}}),r("TypeofTypeAnnotation",{visitor:["argument"],aliases:["FlowType"],fields:{argument:(0,e.validateType)("FlowType")}}),r("TypeAlias",{visitor:["id","typeParameters","right"],aliases:["FlowDeclaration","Statement","Declaration"],fields:{id:(0,e.validateType)("Identifier"),typeParameters:(0,e.validateOptionalType)("TypeParameterDeclaration"),right:(0,e.validateType)("FlowType")}}),r("TypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:(0,e.validateType)("FlowType")}}),r("TypeCastExpression",{visitor:["expression","typeAnnotation"],aliases:["ExpressionWrapper","Expression"],fields:{expression:(0,e.validateType)("Expression"),typeAnnotation:(0,e.validateType)("TypeAnnotation")}}),r("TypeParameter",{visitor:["bound","default","variance"],fields:{name:(0,e.validate)((0,e.assertValueType)("string")),bound:(0,e.validateOptionalType)("TypeAnnotation"),default:(0,e.validateOptionalType)("FlowType"),variance:(0,e.validateOptionalType)("Variance")}}),r("TypeParameterDeclaration",{visitor:["params"],fields:{params:(0,e.validate)((0,e.arrayOfType)("TypeParameter"))}}),r("TypeParameterInstantiation",{visitor:["params"],fields:{params:(0,e.validate)((0,e.arrayOfType)("FlowType"))}}),r("UnionTypeAnnotation",{visitor:["types"],aliases:["FlowType"],fields:{types:(0,e.validate)((0,e.arrayOfType)("FlowType"))}}),r("Variance",{builder:["kind"],fields:{kind:(0,e.validate)((0,e.assertOneOf)("minus","plus"))}}),r("VoidTypeAnnotation",{aliases:["FlowType","FlowBaseAnnotation"]}),r("EnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:{id:(0,e.validateType)("Identifier"),body:(0,e.validateType)("EnumBooleanBody","EnumNumberBody","EnumStringBody","EnumSymbolBody")}}),r("EnumBooleanBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,e.validate)((0,e.assertValueType)("boolean")),members:(0,e.validateArrayOfType)("EnumBooleanMember"),hasUnknownMembers:(0,e.validate)((0,e.assertValueType)("boolean"))}}),r("EnumNumberBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,e.validate)((0,e.assertValueType)("boolean")),members:(0,e.validateArrayOfType)("EnumNumberMember"),hasUnknownMembers:(0,e.validate)((0,e.assertValueType)("boolean"))}}),r("EnumStringBody",{aliases:["EnumBody"],visitor:["members"],fields:{explicitType:(0,e.validate)((0,e.assertValueType)("boolean")),members:(0,e.validateArrayOfType)("EnumStringMember","EnumDefaultedMember"),hasUnknownMembers:(0,e.validate)((0,e.assertValueType)("boolean"))}}),r("EnumSymbolBody",{aliases:["EnumBody"],visitor:["members"],fields:{members:(0,e.validateArrayOfType)("EnumDefaultedMember"),hasUnknownMembers:(0,e.validate)((0,e.assertValueType)("boolean"))}}),r("EnumBooleanMember",{aliases:["EnumMember"],builder:["id"],visitor:["id","init"],fields:{id:(0,e.validateType)("Identifier"),init:(0,e.validateType)("BooleanLiteral")}}),r("EnumNumberMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,e.validateType)("Identifier"),init:(0,e.validateType)("NumericLiteral")}}),r("EnumStringMember",{aliases:["EnumMember"],visitor:["id","init"],fields:{id:(0,e.validateType)("Identifier"),init:(0,e.validateType)("StringLiteral")}}),r("EnumDefaultedMember",{aliases:["EnumMember"],visitor:["id"],fields:{id:(0,e.validateType)("Identifier")}}),r("IndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,e.validateType)("FlowType"),indexType:(0,e.validateType)("FlowType")}}),r("OptionalIndexedAccessType",{visitor:["objectType","indexType"],aliases:["FlowType"],fields:{objectType:(0,e.validateType)("FlowType"),indexType:(0,e.validateType)("FlowType"),optional:(0,e.validate)((0,e.assertValueType)("boolean"))}}),ui}var pi={},fi;function Eh(){if(fi)return pi;fi=1;var t=ge();const e=(0,t.defineAliasedType)("JSX");return e("JSXAttribute",{visitor:["name","value"],aliases:["Immutable"],fields:{name:{validate:(0,t.assertNodeType)("JSXIdentifier","JSXNamespacedName")},value:{optional:!0,validate:(0,t.assertNodeType)("JSXElement","JSXFragment","StringLiteral","JSXExpressionContainer")}}}),e("JSXClosingElement",{visitor:["name"],aliases:["Immutable"],fields:{name:{validate:(0,t.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")}}}),e("JSXElement",{builder:["openingElement","closingElement","children","selfClosing"],visitor:["openingElement","children","closingElement"],aliases:["Immutable","Expression"],fields:Object.assign({openingElement:{validate:(0,t.assertNodeType)("JSXOpeningElement")},closingElement:{optional:!0,validate:(0,t.assertNodeType)("JSXClosingElement")},children:(0,t.validateArrayOfType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")},{selfClosing:{validate:(0,t.assertValueType)("boolean"),optional:!0}})}),e("JSXEmptyExpression",{}),e("JSXExpressionContainer",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,t.assertNodeType)("Expression","JSXEmptyExpression")}}}),e("JSXSpreadChild",{visitor:["expression"],aliases:["Immutable"],fields:{expression:{validate:(0,t.assertNodeType)("Expression")}}}),e("JSXIdentifier",{builder:["name"],fields:{name:{validate:(0,t.assertValueType)("string")}}}),e("JSXMemberExpression",{visitor:["object","property"],fields:{object:{validate:(0,t.assertNodeType)("JSXMemberExpression","JSXIdentifier")},property:{validate:(0,t.assertNodeType)("JSXIdentifier")}}}),e("JSXNamespacedName",{visitor:["namespace","name"],fields:{namespace:{validate:(0,t.assertNodeType)("JSXIdentifier")},name:{validate:(0,t.assertNodeType)("JSXIdentifier")}}}),e("JSXOpeningElement",{builder:["name","attributes","selfClosing"],visitor:["name","typeParameters","typeArguments","attributes"],aliases:["Immutable"],fields:Object.assign({name:{validate:(0,t.assertNodeType)("JSXIdentifier","JSXMemberExpression","JSXNamespacedName")},selfClosing:{default:!1},attributes:(0,t.validateArrayOfType)("JSXAttribute","JSXSpreadAttribute"),typeArguments:{validate:(0,t.assertNodeType)("TypeParameterInstantiation"),optional:!0}},{typeParameters:{validate:(0,t.assertNodeType)("TSTypeParameterInstantiation"),optional:!0}})}),e("JSXSpreadAttribute",{visitor:["argument"],fields:{argument:{validate:(0,t.assertNodeType)("Expression")}}}),e("JSXText",{aliases:["Immutable"],builder:["value"],fields:{value:{validate:(0,t.assertValueType)("string")}}}),e("JSXFragment",{builder:["openingFragment","closingFragment","children"],visitor:["openingFragment","children","closingFragment"],aliases:["Immutable","Expression"],fields:{openingFragment:{validate:(0,t.assertNodeType)("JSXOpeningFragment")},closingFragment:{validate:(0,t.assertNodeType)("JSXClosingFragment")},children:(0,t.validateArrayOfType)("JSXText","JSXExpressionContainer","JSXSpreadChild","JSXElement","JSXFragment")}}),e("JSXOpeningFragment",{aliases:["Immutable"]}),e("JSXClosingFragment",{aliases:["Immutable"]}),pi}var di={},me={},hi;function ha(){if(hi)return me;hi=1,Object.defineProperty(me,"__esModule",{value:!0}),me.PLACEHOLDERS_FLIPPED_ALIAS=me.PLACEHOLDERS_ALIAS=me.PLACEHOLDERS=void 0;var t=ge();const e=me.PLACEHOLDERS=["Identifier","StringLiteral","Expression","Statement","Declaration","BlockStatement","ClassBody","Pattern"],r=me.PLACEHOLDERS_ALIAS={Declaration:["Statement"],Pattern:["PatternLike","LVal"]};for(const i of e){const a=t.ALIAS_KEYS[i];a!=null&&a.length&&(r[i]=a)}const s=me.PLACEHOLDERS_FLIPPED_ALIAS={};return Object.keys(r).forEach(i=>{r[i].forEach(a=>{hasOwnProperty.call(s,a)||(s[a]=[]),s[a].push(i)})}),me}var yi;function Ph(){if(yi)return di;yi=1;var t=ge(),e=ha(),r=qt();const s=(0,t.defineAliasedType)("Miscellaneous");return s("Noop",{visitor:[]}),s("Placeholder",{visitor:[],builder:["expectedNode","name"],fields:Object.assign({name:{validate:(0,t.assertNodeType)("Identifier")},expectedNode:{validate:(0,t.assertOneOf)(...e.PLACEHOLDERS)}},(0,r.patternLikeCommon)())}),s("V8IntrinsicIdentifier",{builder:["name"],fields:{name:{validate:(0,t.assertValueType)("string")}}}),di}var mi={},Ti;function gh(){if(Ti)return mi;Ti=1;var t=ge();return(0,t.default)("ArgumentPlaceholder",{}),(0,t.default)("BindExpression",{visitor:["object","callee"],aliases:["Expression"],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,t.assertNodeType)("Expression")},callee:{validate:(0,t.assertNodeType)("Expression")}}:{object:{validate:Object.assign(()=>{},{oneOfNodeTypes:["Expression"]})},callee:{validate:Object.assign(()=>{},{oneOfNodeTypes:["Expression"]})}}}),(0,t.default)("Decorator",{visitor:["expression"],fields:{expression:{validate:(0,t.assertNodeType)("Expression")}}}),(0,t.default)("DoExpression",{visitor:["body"],builder:["body","async"],aliases:["Expression"],fields:{body:{validate:(0,t.assertNodeType)("BlockStatement")},async:{validate:(0,t.assertValueType)("boolean"),default:!1}}}),(0,t.default)("ExportDefaultSpecifier",{visitor:["exported"],aliases:["ModuleSpecifier"],fields:{exported:{validate:(0,t.assertNodeType)("Identifier")}}}),(0,t.default)("RecordExpression",{visitor:["properties"],aliases:["Expression"],fields:{properties:(0,t.validateArrayOfType)("ObjectProperty","SpreadElement")}}),(0,t.default)("TupleExpression",{fields:{elements:{validate:(0,t.arrayOfType)("Expression","SpreadElement"),default:[]}},visitor:["elements"],aliases:["Expression"]}),(0,t.default)("DecimalLiteral",{builder:["value"],fields:{value:{validate:(0,t.assertValueType)("string")}},aliases:["Expression","Pureish","Literal","Immutable"]}),(0,t.default)("ModuleExpression",{visitor:["body"],fields:{body:{validate:(0,t.assertNodeType)("Program")}},aliases:["Expression"]}),(0,t.default)("TopicReference",{aliases:["Expression"]}),(0,t.default)("PipelineTopicExpression",{builder:["expression"],visitor:["expression"],fields:{expression:{validate:(0,t.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,t.default)("PipelineBareFunction",{builder:["callee"],visitor:["callee"],fields:{callee:{validate:(0,t.assertNodeType)("Expression")}},aliases:["Expression"]}),(0,t.default)("PipelinePrimaryTopicReference",{aliases:["Expression"]}),(0,t.default)("VoidPattern",{aliases:["Pattern","PatternLike","FunctionParameter"]}),mi}var Si={},xi;function Ah(){if(xi)return Si;xi=1;var t=ge(),e=qt(),r=ct();const s=(0,t.defineAliasedType)("TypeScript"),i=(0,t.assertValueType)("boolean"),a=()=>({returnType:{validate:(0,t.assertNodeType)("TSTypeAnnotation","Noop"),optional:!0},typeParameters:{validate:(0,t.assertNodeType)("TSTypeParameterDeclaration","Noop"),optional:!0}});s("TSParameterProperty",{aliases:["LVal"],visitor:["parameter"],fields:{accessibility:{validate:(0,t.assertOneOf)("public","private","protected"),optional:!0},readonly:{validate:(0,t.assertValueType)("boolean"),optional:!0},parameter:{validate:(0,t.assertNodeType)("Identifier","AssignmentPattern")},override:{validate:(0,t.assertValueType)("boolean"),optional:!0},decorators:{validate:(0,t.arrayOfType)("Decorator"),optional:!0}}}),s("TSDeclareFunction",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","params","returnType"],fields:Object.assign({},(0,e.functionDeclarationCommon)(),a())}),s("TSDeclareMethod",Object.assign({visitor:["decorators","key","typeParameters","params","returnType"]},(0,e.classMethodOrPropertyUnionShapeCommon)(),{fields:Object.assign({},(0,e.classMethodOrDeclareMethodCommon)(),a())})),s("TSQualifiedName",{aliases:["TSEntityName"],visitor:["left","right"],fields:{left:(0,t.validateType)("TSEntityName"),right:(0,t.validateType)("Identifier")}});const n=()=>({typeParameters:(0,t.validateOptionalType)("TSTypeParameterDeclaration"),parameters:(0,t.validateArrayOfType)("ArrayPattern","Identifier","ObjectPattern","RestElement"),typeAnnotation:(0,t.validateOptionalType)("TSTypeAnnotation")}),o={aliases:["TSTypeElement"],visitor:["typeParameters","parameters","typeAnnotation"],fields:n()};s("TSCallSignatureDeclaration",o),s("TSConstructSignatureDeclaration",o);const u=()=>({key:(0,t.validateType)("Expression"),computed:{default:!1},optional:(0,t.validateOptional)(i)});s("TSPropertySignature",{aliases:["TSTypeElement"],visitor:["key","typeAnnotation"],fields:Object.assign({},u(),{readonly:(0,t.validateOptional)(i),typeAnnotation:(0,t.validateOptionalType)("TSTypeAnnotation"),kind:{optional:!0,validate:(0,t.assertOneOf)("get","set")}})}),s("TSMethodSignature",{aliases:["TSTypeElement"],visitor:["key","typeParameters","parameters","typeAnnotation"],fields:Object.assign({},n(),u(),{kind:{validate:(0,t.assertOneOf)("method","get","set")}})}),s("TSIndexSignature",{aliases:["TSTypeElement"],visitor:["parameters","typeAnnotation"],fields:{readonly:(0,t.validateOptional)(i),static:(0,t.validateOptional)(i),parameters:(0,t.validateArrayOfType)("Identifier"),typeAnnotation:(0,t.validateOptionalType)("TSTypeAnnotation")}});const p=["TSAnyKeyword","TSBooleanKeyword","TSBigIntKeyword","TSIntrinsicKeyword","TSNeverKeyword","TSNullKeyword","TSNumberKeyword","TSObjectKeyword","TSStringKeyword","TSSymbolKeyword","TSUndefinedKeyword","TSUnknownKeyword","TSVoidKeyword"];for(const A of p)s(A,{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});s("TSThisType",{aliases:["TSType","TSBaseType"],visitor:[],fields:{}});const h={aliases:["TSType"],visitor:["typeParameters","parameters","typeAnnotation"]};s("TSFunctionType",Object.assign({},h,{fields:n()})),s("TSConstructorType",Object.assign({},h,{fields:Object.assign({},n(),{abstract:(0,t.validateOptional)(i)})})),s("TSTypeReference",{aliases:["TSType"],visitor:["typeName","typeParameters"],fields:{typeName:(0,t.validateType)("TSEntityName"),typeParameters:(0,t.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypePredicate",{aliases:["TSType"],visitor:["parameterName","typeAnnotation"],builder:["parameterName","typeAnnotation","asserts"],fields:{parameterName:(0,t.validateType)("Identifier","TSThisType"),typeAnnotation:(0,t.validateOptionalType)("TSTypeAnnotation"),asserts:(0,t.validateOptional)(i)}}),s("TSTypeQuery",{aliases:["TSType"],visitor:["exprName","typeParameters"],fields:{exprName:(0,t.validateType)("TSEntityName","TSImportType"),typeParameters:(0,t.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSTypeLiteral",{aliases:["TSType"],visitor:["members"],fields:{members:(0,t.validateArrayOfType)("TSTypeElement")}}),s("TSArrayType",{aliases:["TSType"],visitor:["elementType"],fields:{elementType:(0,t.validateType)("TSType")}}),s("TSTupleType",{aliases:["TSType"],visitor:["elementTypes"],fields:{elementTypes:(0,t.validateArrayOfType)("TSType","TSNamedTupleMember")}}),s("TSOptionalType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,t.validateType)("TSType")}}),s("TSRestType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,t.validateType)("TSType")}}),s("TSNamedTupleMember",{visitor:["label","elementType"],builder:["label","elementType","optional"],fields:{label:(0,t.validateType)("Identifier"),optional:{validate:i,default:!1},elementType:(0,t.validateType)("TSType")}});const E={aliases:["TSType"],visitor:["types"],fields:{types:(0,t.validateArrayOfType)("TSType")}};s("TSUnionType",E),s("TSIntersectionType",E),s("TSConditionalType",{aliases:["TSType"],visitor:["checkType","extendsType","trueType","falseType"],fields:{checkType:(0,t.validateType)("TSType"),extendsType:(0,t.validateType)("TSType"),trueType:(0,t.validateType)("TSType"),falseType:(0,t.validateType)("TSType")}}),s("TSInferType",{aliases:["TSType"],visitor:["typeParameter"],fields:{typeParameter:(0,t.validateType)("TSTypeParameter")}}),s("TSParenthesizedType",{aliases:["TSType"],visitor:["typeAnnotation"],fields:{typeAnnotation:(0,t.validateType)("TSType")}}),s("TSTypeOperator",{aliases:["TSType"],visitor:["typeAnnotation"],builder:["typeAnnotation","operator"],fields:{operator:{validate:(0,t.assertValueType)("string"),default:"keyof"},typeAnnotation:(0,t.validateType)("TSType")}}),s("TSIndexedAccessType",{aliases:["TSType"],visitor:["objectType","indexType"],fields:{objectType:(0,t.validateType)("TSType"),indexType:(0,t.validateType)("TSType")}}),s("TSMappedType",{aliases:["TSType"],visitor:["typeParameter","nameType","typeAnnotation"],builder:["typeParameter","typeAnnotation","nameType"],fields:Object.assign({},{typeParameter:(0,t.validateType)("TSTypeParameter")},{readonly:(0,t.validateOptional)((0,t.assertOneOf)(!0,!1,"+","-")),optional:(0,t.validateOptional)((0,t.assertOneOf)(!0,!1,"+","-")),typeAnnotation:(0,t.validateOptionalType)("TSType"),nameType:(0,t.validateOptionalType)("TSType")})}),s("TSTemplateLiteralType",{aliases:["TSType","TSBaseType"],visitor:["quasis","types"],fields:{quasis:(0,t.validateArrayOfType)("TemplateElement"),types:{validate:(0,t.chain)((0,t.assertValueType)("array"),(0,t.assertEach)((0,t.assertNodeType)("TSType")),function(A,w,P){if(A.quasis.length!==P.length+1)throw new TypeError(`Number of ${A.type} quasis should be exactly one more than the number of types.
|
|
151
|
-
Expected ${P.length+1} quasis but got ${A.quasis.length}`)})}}}),s("TSLiteralType",{aliases:["TSType","TSBaseType"],visitor:["literal"],fields:{literal:{validate:function(){const A=(0,t.assertNodeType)("NumericLiteral","BigIntLiteral"),w=(0,t.assertOneOf)("-"),P=(0,t.assertNodeType)("NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral"),v=function(C,k,R){(0,r.default)("UnaryExpression",R)?(w(R,"operator",R.operator),A(R,"argument",R.argument)):P(C,k,R)};return v.oneOfNodeTypes=["NumericLiteral","StringLiteral","BooleanLiteral","BigIntLiteral","TemplateLiteral","UnaryExpression"],v}()}}}),s("TSExpressionWithTypeArguments",{aliases:["TSType"],visitor:["expression","typeParameters"],fields:{expression:(0,t.validateType)("TSEntityName"),typeParameters:(0,t.validateOptionalType)("TSTypeParameterInstantiation")}}),s("TSInterfaceDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","extends","body"],fields:{declare:(0,t.validateOptional)(i),id:(0,t.validateType)("Identifier"),typeParameters:(0,t.validateOptionalType)("TSTypeParameterDeclaration"),extends:(0,t.validateOptional)((0,t.arrayOfType)("TSExpressionWithTypeArguments")),body:(0,t.validateType)("TSInterfaceBody")}}),s("TSInterfaceBody",{visitor:["body"],fields:{body:(0,t.validateArrayOfType)("TSTypeElement")}}),s("TSTypeAliasDeclaration",{aliases:["Statement","Declaration"],visitor:["id","typeParameters","typeAnnotation"],fields:{declare:(0,t.validateOptional)(i),id:(0,t.validateType)("Identifier"),typeParameters:(0,t.validateOptionalType)("TSTypeParameterDeclaration"),typeAnnotation:(0,t.validateType)("TSType")}}),s("TSInstantiationExpression",{aliases:["Expression"],visitor:["expression","typeParameters"],fields:{expression:(0,t.validateType)("Expression"),typeParameters:(0,t.validateOptionalType)("TSTypeParameterInstantiation")}});const I={aliases:["Expression","LVal","PatternLike"],visitor:["expression","typeAnnotation"],fields:{expression:(0,t.validateType)("Expression"),typeAnnotation:(0,t.validateType)("TSType")}};return s("TSAsExpression",I),s("TSSatisfiesExpression",I),s("TSTypeAssertion",{aliases:["Expression","LVal","PatternLike"],visitor:["typeAnnotation","expression"],fields:{typeAnnotation:(0,t.validateType)("TSType"),expression:(0,t.validateType)("Expression")}}),s("TSEnumBody",{visitor:["members"],fields:{members:(0,t.validateArrayOfType)("TSEnumMember")}}),s("TSEnumDeclaration",{aliases:["Statement","Declaration"],visitor:["id","members"],fields:{declare:(0,t.validateOptional)(i),const:(0,t.validateOptional)(i),id:(0,t.validateType)("Identifier"),members:(0,t.validateArrayOfType)("TSEnumMember"),initializer:(0,t.validateOptionalType)("Expression"),body:(0,t.validateOptionalType)("TSEnumBody")}}),s("TSEnumMember",{visitor:["id","initializer"],fields:{id:(0,t.validateType)("Identifier","StringLiteral"),initializer:(0,t.validateOptionalType)("Expression")}}),s("TSModuleDeclaration",{aliases:["Statement","Declaration"],visitor:["id","body"],fields:Object.assign({kind:{validate:(0,t.assertOneOf)("global","module","namespace")},declare:(0,t.validateOptional)(i)},{global:(0,t.validateOptional)(i)},{id:(0,t.validateType)("Identifier","StringLiteral"),body:(0,t.validateType)("TSModuleBlock","TSModuleDeclaration")})}),s("TSModuleBlock",{aliases:["Scopable","Block","BlockParent","FunctionParent"],visitor:["body"],fields:{body:(0,t.validateArrayOfType)("Statement")}}),s("TSImportType",{aliases:["TSType"],builder:["argument","qualifier","typeParameters"],visitor:["argument","options","qualifier","typeParameters"],fields:{argument:(0,t.validateType)("StringLiteral"),qualifier:(0,t.validateOptionalType)("TSEntityName"),typeParameters:(0,t.validateOptionalType)("TSTypeParameterInstantiation"),options:{validate:(0,t.assertNodeType)("ObjectExpression"),optional:!0}}}),s("TSImportEqualsDeclaration",{aliases:["Statement","Declaration"],visitor:["id","moduleReference"],fields:Object.assign({},{isExport:(0,t.validate)(i)},{id:(0,t.validateType)("Identifier"),moduleReference:(0,t.validateType)("TSEntityName","TSExternalModuleReference"),importKind:{validate:(0,t.assertOneOf)("type","value"),optional:!0}})}),s("TSExternalModuleReference",{visitor:["expression"],fields:{expression:(0,t.validateType)("StringLiteral")}}),s("TSNonNullExpression",{aliases:["Expression","LVal","PatternLike"],visitor:["expression"],fields:{expression:(0,t.validateType)("Expression")}}),s("TSExportAssignment",{aliases:["Statement"],visitor:["expression"],fields:{expression:(0,t.validateType)("Expression")}}),s("TSNamespaceExportDeclaration",{aliases:["Statement"],visitor:["id"],fields:{id:(0,t.validateType)("Identifier")}}),s("TSTypeAnnotation",{visitor:["typeAnnotation"],fields:{typeAnnotation:{validate:(0,t.assertNodeType)("TSType")}}}),s("TSTypeParameterInstantiation",{visitor:["params"],fields:{params:(0,t.validateArrayOfType)("TSType")}}),s("TSTypeParameterDeclaration",{visitor:["params"],fields:{params:(0,t.validateArrayOfType)("TSTypeParameter")}}),s("TSTypeParameter",{builder:["constraint","default","name"],visitor:["constraint","default"],fields:{name:{validate:(0,t.assertValueType)("string")},in:{validate:(0,t.assertValueType)("boolean"),optional:!0},out:{validate:(0,t.assertValueType)("boolean"),optional:!0},const:{validate:(0,t.assertValueType)("boolean"),optional:!0},constraint:{validate:(0,t.assertNodeType)("TSType"),optional:!0},default:{validate:(0,t.assertNodeType)("TSType"),optional:!0}}}),Si}var Wt={};Object.defineProperty(Wt,"__esModule",{value:!0});Wt.DEPRECATED_ALIASES=void 0;Wt.DEPRECATED_ALIASES={ModuleDeclaration:"ImportOrExportDeclaration"};var bi;function de(){return bi||(bi=1,function(t){Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ALIAS_KEYS",{enumerable:!0,get:function(){return e.ALIAS_KEYS}}),Object.defineProperty(t,"BUILDER_KEYS",{enumerable:!0,get:function(){return e.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 e.DEPRECATED_KEYS}}),Object.defineProperty(t,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return e.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(t,"NODE_FIELDS",{enumerable:!0,get:function(){return e.NODE_FIELDS}}),Object.defineProperty(t,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return e.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(t,"NODE_UNION_SHAPES__PRIVATE",{enumerable:!0,get:function(){return e.NODE_UNION_SHAPES__PRIVATE}}),Object.defineProperty(t,"PLACEHOLDERS",{enumerable:!0,get:function(){return r.PLACEHOLDERS}}),Object.defineProperty(t,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return r.PLACEHOLDERS_ALIAS}}),Object.defineProperty(t,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return r.PLACEHOLDERS_FLIPPED_ALIAS}}),t.TYPES=void 0,Object.defineProperty(t,"VISITOR_KEYS",{enumerable:!0,get:function(){return e.VISITOR_KEYS}}),qt(),bh(),Eh(),Ph(),gh(),Ah();var e=ge(),r=ha(),s=Wt;Object.keys(s.DEPRECATED_ALIASES).forEach(i=>{e.FLIPPED_ALIAS_KEYS[i]=e.FLIPPED_ALIAS_KEYS[s.DEPRECATED_ALIASES[i]]});for(const{types:i,set:a}of e.allExpandedTypes)for(const n of i){const o=e.FLIPPED_ALIAS_KEYS[n];o?o.forEach(a.add,a):a.add(n)}t.TYPES=[].concat(Object.keys(e.VISITOR_KEYS),Object.keys(e.FLIPPED_ALIAS_KEYS),Object.keys(e.DEPRECATED_KEYS))}(vr)),vr}var Ei;function ss(){if(Ei)return ke;Ei=1,Object.defineProperty(ke,"__esModule",{value:!0}),ke.default=e,ke.validateChild=i,ke.validateField=s,ke.validateInternal=r;var t=de();function e(a,n,o){if(!a)return;const u=t.NODE_FIELDS[a.type];if(!u)return;const p=u[n];s(a,n,o,p),i(a,n,o)}function r(a,n,o,u,p){if(a!=null&&a.validate&&!(a.optional&&u==null)&&(a.validate(n,o,u),p)){var h;const E=u.type;if(E==null)return;(h=t.NODE_PARENT_VALIDATIONS[E])==null||h.call(t.NODE_PARENT_VALIDATIONS,n,o,u)}}function s(a,n,o,u){u!=null&&u.validate&&(u.optional&&o==null||u.validate(a,n,o))}function i(a,n,o){var u;const p=o==null?void 0:o.type;p!=null&&((u=t.NODE_PARENT_VALIDATIONS[p])==null||u.call(t.NODE_PARENT_VALIDATIONS,a,n,o))}return ke}Object.defineProperty(f,"__esModule",{value:!0});f.anyTypeAnnotation=im;f.argumentPlaceholder=kT;f.arrayExpression=Nh;f.arrayPattern=gy;f.arrayTypeAnnotation=am;f.arrowFunctionExpression=Ay;f.assignmentExpression=wh;f.assignmentPattern=Py;f.awaitExpression=Jy;f.bigIntLiteral=Ch;f.binaryExpression=Oh;f.bindExpression=MT;f.blockStatement=Mh;f.booleanLiteral=ey;f.booleanLiteralTypeAnnotation=om;f.booleanTypeAnnotation=nm;f.breakStatement=_h;f.callExpression=Bh;f.catchClause=Fh;f.classAccessorProperty=Qy;f.classBody=Iy;f.classDeclaration=Cy;f.classExpression=vy;f.classImplements=um;f.classMethod=jy;f.classPrivateMethod=em;f.classPrivateProperty=Zy;f.classProperty=Gy;f.conditionalExpression=Rh;f.continueStatement=jh;f.debuggerStatement=Kh;f.decimalLiteral=KT;f.declareClass=cm;f.declareExportAllDeclaration=xm;f.declareExportDeclaration=Sm;f.declareFunction=pm;f.declareInterface=fm;f.declareModule=dm;f.declareModuleExports=hm;f.declareOpaqueType=mm;f.declareTypeAlias=ym;f.declareVariable=Tm;f.declaredPredicate=bm;f.decorator=_T;f.directive=Lh;f.directiveLiteral=kh;f.doExpression=BT;f.doWhileStatement=Uh;f.emptyStatement=Vh;f.emptyTypeAnnotation=Dm;f.enumBooleanBody=aT;f.enumBooleanMember=uT;f.enumDeclaration=iT;f.enumDefaultedMember=fT;f.enumNumberBody=nT;f.enumNumberMember=cT;f.enumStringBody=oT;f.enumStringMember=pT;f.enumSymbolBody=lT;f.existsTypeAnnotation=Em;f.exportAllDeclaration=Ny;f.exportDefaultDeclaration=wy;f.exportDefaultSpecifier=FT;f.exportNamedDeclaration=Oy;f.exportNamespaceSpecifier=Wy;f.exportSpecifier=Dy;f.expressionStatement=$h;f.file=Yh;f.forInStatement=Xh;f.forOfStatement=Ly;f.forStatement=Jh;f.functionDeclaration=qh;f.functionExpression=Wh;f.functionTypeAnnotation=Pm;f.functionTypeParam=gm;f.genericTypeAnnotation=Am;f.identifier=Hh;f.ifStatement=zh;f.import=qy;f.importAttribute=sm;f.importDeclaration=ky;f.importDefaultSpecifier=My;f.importExpression=Fy;f.importNamespaceSpecifier=_y;f.importSpecifier=By;f.indexedAccessType=dT;f.inferredPredicate=Im;f.interfaceDeclaration=Cm;f.interfaceExtends=vm;f.interfaceTypeAnnotation=Nm;f.interpreterDirective=Dh;f.intersectionTypeAnnotation=wm;f.jSXAttribute=f.jsxAttribute=yT;f.jSXClosingElement=f.jsxClosingElement=mT;f.jSXClosingFragment=f.jsxClosingFragment=wT;f.jSXElement=f.jsxElement=TT;f.jSXEmptyExpression=f.jsxEmptyExpression=ST;f.jSXExpressionContainer=f.jsxExpressionContainer=xT;f.jSXFragment=f.jsxFragment=CT;f.jSXIdentifier=f.jsxIdentifier=ET;f.jSXMemberExpression=f.jsxMemberExpression=PT;f.jSXNamespacedName=f.jsxNamespacedName=gT;f.jSXOpeningElement=f.jsxOpeningElement=AT;f.jSXOpeningFragment=f.jsxOpeningFragment=NT;f.jSXSpreadAttribute=f.jsxSpreadAttribute=IT;f.jSXSpreadChild=f.jsxSpreadChild=bT;f.jSXText=f.jsxText=vT;f.labeledStatement=Gh;f.logicalExpression=ty;f.memberExpression=ry;f.metaProperty=Ry;f.mixedTypeAnnotation=Om;f.moduleExpression=UT;f.newExpression=sy;f.noop=OT;f.nullLiteral=Zh;f.nullLiteralTypeAnnotation=lm;f.nullableTypeAnnotation=Lm;f.numberLiteral=n0;f.numberLiteralTypeAnnotation=km;f.numberTypeAnnotation=Mm;f.numericLiteral=ya;f.objectExpression=ay;f.objectMethod=ny;f.objectPattern=Ky;f.objectProperty=oy;f.objectTypeAnnotation=_m;f.objectTypeCallProperty=Fm;f.objectTypeIndexer=Rm;f.objectTypeInternalSlot=Bm;f.objectTypeProperty=jm;f.objectTypeSpreadProperty=Km;f.opaqueType=Um;f.optionalCallExpression=zy;f.optionalIndexedAccessType=hT;f.optionalMemberExpression=Hy;f.parenthesizedExpression=cy;f.pipelineBareFunction=YT;f.pipelinePrimaryTopicReference=XT;f.pipelineTopicExpression=$T;f.placeholder=DT;f.privateName=tm;f.program=iy;f.qualifiedTypeIdentifier=Vm;f.recordExpression=RT;f.regExpLiteral=ma;f.regexLiteral=o0;f.restElement=Ta;f.restProperty=l0;f.returnStatement=ly;f.sequenceExpression=uy;f.spreadElement=Sa;f.spreadProperty=u0;f.staticBlock=rm;f.stringLiteral=Qh;f.stringLiteralTypeAnnotation=$m;f.stringTypeAnnotation=Ym;f.super=Uy;f.switchCase=py;f.switchStatement=fy;f.symbolTypeAnnotation=Xm;f.taggedTemplateExpression=Vy;f.templateElement=$y;f.templateLiteral=Yy;f.thisExpression=dy;f.thisTypeAnnotation=Jm;f.throwStatement=hy;f.topicReference=VT;f.tryStatement=yy;f.tSAnyKeyword=f.tsAnyKeyword=rS;f.tSArrayType=f.tsArrayType=PS;f.tSAsExpression=f.tsAsExpression=VS;f.tSBigIntKeyword=f.tsBigIntKeyword=iS;f.tSBooleanKeyword=f.tsBooleanKeyword=sS;f.tSCallSignatureDeclaration=f.tsCallSignatureDeclaration=GT;f.tSConditionalType=f.tsConditionalType=wS;f.tSConstructSignatureDeclaration=f.tsConstructSignatureDeclaration=QT;f.tSConstructorType=f.tsConstructorType=TS;f.tSDeclareFunction=f.tsDeclareFunction=WT;f.tSDeclareMethod=f.tsDeclareMethod=HT;f.tSEnumBody=f.tsEnumBody=XS;f.tSEnumDeclaration=f.tsEnumDeclaration=JS;f.tSEnumMember=f.tsEnumMember=qS;f.tSExportAssignment=f.tsExportAssignment=e0;f.tSExpressionWithTypeArguments=f.tsExpressionWithTypeArguments=FS;f.tSExternalModuleReference=f.tsExternalModuleReference=QS;f.tSFunctionType=f.tsFunctionType=mS;f.tSImportEqualsDeclaration=f.tsImportEqualsDeclaration=GS;f.tSImportType=f.tsImportType=zS;f.tSIndexSignature=f.tsIndexSignature=tS;f.tSIndexedAccessType=f.tsIndexedAccessType=kS;f.tSInferType=f.tsInferType=OS;f.tSInstantiationExpression=f.tsInstantiationExpression=US;f.tSInterfaceBody=f.tsInterfaceBody=jS;f.tSInterfaceDeclaration=f.tsInterfaceDeclaration=RS;f.tSIntersectionType=f.tsIntersectionType=NS;f.tSIntrinsicKeyword=f.tsIntrinsicKeyword=aS;f.tSLiteralType=f.tsLiteralType=BS;f.tSMappedType=f.tsMappedType=MS;f.tSMethodSignature=f.tsMethodSignature=eS;f.tSModuleBlock=f.tsModuleBlock=HS;f.tSModuleDeclaration=f.tsModuleDeclaration=WS;f.tSNamedTupleMember=f.tsNamedTupleMember=vS;f.tSNamespaceExportDeclaration=f.tsNamespaceExportDeclaration=t0;f.tSNeverKeyword=f.tsNeverKeyword=nS;f.tSNonNullExpression=f.tsNonNullExpression=ZS;f.tSNullKeyword=f.tsNullKeyword=oS;f.tSNumberKeyword=f.tsNumberKeyword=lS;f.tSObjectKeyword=f.tsObjectKeyword=uS;f.tSOptionalType=f.tsOptionalType=AS;f.tSParameterProperty=f.tsParameterProperty=qT;f.tSParenthesizedType=f.tsParenthesizedType=DS;f.tSPropertySignature=f.tsPropertySignature=ZT;f.tSQualifiedName=f.tsQualifiedName=zT;f.tSRestType=f.tsRestType=IS;f.tSSatisfiesExpression=f.tsSatisfiesExpression=$S;f.tSStringKeyword=f.tsStringKeyword=cS;f.tSSymbolKeyword=f.tsSymbolKeyword=pS;f.tSTemplateLiteralType=f.tsTemplateLiteralType=_S;f.tSThisType=f.tsThisType=yS;f.tSTupleType=f.tsTupleType=gS;f.tSTypeAliasDeclaration=f.tsTypeAliasDeclaration=KS;f.tSTypeAnnotation=f.tsTypeAnnotation=r0;f.tSTypeAssertion=f.tsTypeAssertion=YS;f.tSTypeLiteral=f.tsTypeLiteral=ES;f.tSTypeOperator=f.tsTypeOperator=LS;f.tSTypeParameter=f.tsTypeParameter=a0;f.tSTypeParameterDeclaration=f.tsTypeParameterDeclaration=i0;f.tSTypeParameterInstantiation=f.tsTypeParameterInstantiation=s0;f.tSTypePredicate=f.tsTypePredicate=xS;f.tSTypeQuery=f.tsTypeQuery=bS;f.tSTypeReference=f.tsTypeReference=SS;f.tSUndefinedKeyword=f.tsUndefinedKeyword=fS;f.tSUnionType=f.tsUnionType=CS;f.tSUnknownKeyword=f.tsUnknownKeyword=dS;f.tSVoidKeyword=f.tsVoidKeyword=hS;f.tupleExpression=jT;f.tupleTypeAnnotation=qm;f.typeAlias=Hm;f.typeAnnotation=zm;f.typeCastExpression=Gm;f.typeParameter=Qm;f.typeParameterDeclaration=Zm;f.typeParameterInstantiation=eT;f.typeofTypeAnnotation=Wm;f.unaryExpression=my;f.unionTypeAnnotation=tT;f.updateExpression=Ty;f.v8IntrinsicIdentifier=LT;f.variableDeclaration=Sy;f.variableDeclarator=xy;f.variance=rT;f.voidPattern=JT;f.voidTypeAnnotation=sT;f.whileStatement=by;f.withStatement=Ey;f.yieldExpression=Xy;var Ih=ss(),Ht=Je,vh=ge();const{validateInternal:c}=Ih,{NODE_FIELDS:b}=vh;function Ch(t){typeof t=="bigint"&&(t=t.toString());const e={type:"BigIntLiteral",value:t},r=b.BigIntLiteral;return c(r.value,e,"value",t),e}function Nh(t=[]){const e={type:"ArrayExpression",elements:t},r=b.ArrayExpression;return c(r.elements,e,"elements",t,1),e}function wh(t,e,r){const s={type:"AssignmentExpression",operator:t,left:e,right:r},i=b.AssignmentExpression;return c(i.operator,s,"operator",t),c(i.left,s,"left",e,1),c(i.right,s,"right",r,1),s}function Oh(t,e,r){const s={type:"BinaryExpression",operator:t,left:e,right:r},i=b.BinaryExpression;return c(i.operator,s,"operator",t),c(i.left,s,"left",e,1),c(i.right,s,"right",r,1),s}function Dh(t){const e={type:"InterpreterDirective",value:t},r=b.InterpreterDirective;return c(r.value,e,"value",t),e}function Lh(t){const e={type:"Directive",value:t},r=b.Directive;return c(r.value,e,"value",t,1),e}function kh(t){const e={type:"DirectiveLiteral",value:t},r=b.DirectiveLiteral;return c(r.value,e,"value",t),e}function Mh(t,e=[]){const r={type:"BlockStatement",body:t,directives:e},s=b.BlockStatement;return c(s.body,r,"body",t,1),c(s.directives,r,"directives",e,1),r}function _h(t=null){const e={type:"BreakStatement",label:t},r=b.BreakStatement;return c(r.label,e,"label",t,1),e}function Bh(t,e){const r={type:"CallExpression",callee:t,arguments:e},s=b.CallExpression;return c(s.callee,r,"callee",t,1),c(s.arguments,r,"arguments",e,1),r}function Fh(t=null,e){const r={type:"CatchClause",param:t,body:e},s=b.CatchClause;return c(s.param,r,"param",t,1),c(s.body,r,"body",e,1),r}function Rh(t,e,r){const s={type:"ConditionalExpression",test:t,consequent:e,alternate:r},i=b.ConditionalExpression;return c(i.test,s,"test",t,1),c(i.consequent,s,"consequent",e,1),c(i.alternate,s,"alternate",r,1),s}function jh(t=null){const e={type:"ContinueStatement",label:t},r=b.ContinueStatement;return c(r.label,e,"label",t,1),e}function Kh(){return{type:"DebuggerStatement"}}function Uh(t,e){const r={type:"DoWhileStatement",test:t,body:e},s=b.DoWhileStatement;return c(s.test,r,"test",t,1),c(s.body,r,"body",e,1),r}function Vh(){return{type:"EmptyStatement"}}function $h(t){const e={type:"ExpressionStatement",expression:t},r=b.ExpressionStatement;return c(r.expression,e,"expression",t,1),e}function Yh(t,e=null,r=null){const s={type:"File",program:t,comments:e,tokens:r},i=b.File;return c(i.program,s,"program",t,1),c(i.comments,s,"comments",e,1),c(i.tokens,s,"tokens",r),s}function Xh(t,e,r){const s={type:"ForInStatement",left:t,right:e,body:r},i=b.ForInStatement;return c(i.left,s,"left",t,1),c(i.right,s,"right",e,1),c(i.body,s,"body",r,1),s}function Jh(t=null,e=null,r=null,s){const i={type:"ForStatement",init:t,test:e,update:r,body:s},a=b.ForStatement;return c(a.init,i,"init",t,1),c(a.test,i,"test",e,1),c(a.update,i,"update",r,1),c(a.body,i,"body",s,1),i}function qh(t=null,e,r,s=!1,i=!1){const a={type:"FunctionDeclaration",id:t,params:e,body:r,generator:s,async:i},n=b.FunctionDeclaration;return c(n.id,a,"id",t,1),c(n.params,a,"params",e,1),c(n.body,a,"body",r,1),c(n.generator,a,"generator",s),c(n.async,a,"async",i),a}function Wh(t=null,e,r,s=!1,i=!1){const a={type:"FunctionExpression",id:t,params:e,body:r,generator:s,async:i},n=b.FunctionExpression;return c(n.id,a,"id",t,1),c(n.params,a,"params",e,1),c(n.body,a,"body",r,1),c(n.generator,a,"generator",s),c(n.async,a,"async",i),a}function Hh(t){const e={type:"Identifier",name:t},r=b.Identifier;return c(r.name,e,"name",t),e}function zh(t,e,r=null){const s={type:"IfStatement",test:t,consequent:e,alternate:r},i=b.IfStatement;return c(i.test,s,"test",t,1),c(i.consequent,s,"consequent",e,1),c(i.alternate,s,"alternate",r,1),s}function Gh(t,e){const r={type:"LabeledStatement",label:t,body:e},s=b.LabeledStatement;return c(s.label,r,"label",t,1),c(s.body,r,"body",e,1),r}function Qh(t){const e={type:"StringLiteral",value:t},r=b.StringLiteral;return c(r.value,e,"value",t),e}function ya(t){const e={type:"NumericLiteral",value:t},r=b.NumericLiteral;return c(r.value,e,"value",t),e}function Zh(){return{type:"NullLiteral"}}function ey(t){const e={type:"BooleanLiteral",value:t},r=b.BooleanLiteral;return c(r.value,e,"value",t),e}function ma(t,e=""){const r={type:"RegExpLiteral",pattern:t,flags:e},s=b.RegExpLiteral;return c(s.pattern,r,"pattern",t),c(s.flags,r,"flags",e),r}function ty(t,e,r){const s={type:"LogicalExpression",operator:t,left:e,right:r},i=b.LogicalExpression;return c(i.operator,s,"operator",t),c(i.left,s,"left",e,1),c(i.right,s,"right",r,1),s}function ry(t,e,r=!1,s=null){const i={type:"MemberExpression",object:t,property:e,computed:r,optional:s},a=b.MemberExpression;return c(a.object,i,"object",t,1),c(a.property,i,"property",e,1),c(a.computed,i,"computed",r),c(a.optional,i,"optional",s),i}function sy(t,e){const r={type:"NewExpression",callee:t,arguments:e},s=b.NewExpression;return c(s.callee,r,"callee",t,1),c(s.arguments,r,"arguments",e,1),r}function iy(t,e=[],r="script",s=null){const i={type:"Program",body:t,directives:e,sourceType:r,interpreter:s},a=b.Program;return c(a.body,i,"body",t,1),c(a.directives,i,"directives",e,1),c(a.sourceType,i,"sourceType",r),c(a.interpreter,i,"interpreter",s,1),i}function ay(t){const e={type:"ObjectExpression",properties:t},r=b.ObjectExpression;return c(r.properties,e,"properties",t,1),e}function ny(t="method",e,r,s,i=!1,a=!1,n=!1){const o={type:"ObjectMethod",kind:t,key:e,params:r,body:s,computed:i,generator:a,async:n},u=b.ObjectMethod;return c(u.kind,o,"kind",t),c(u.key,o,"key",e,1),c(u.params,o,"params",r,1),c(u.body,o,"body",s,1),c(u.computed,o,"computed",i),c(u.generator,o,"generator",a),c(u.async,o,"async",n),o}function oy(t,e,r=!1,s=!1,i=null){const a={type:"ObjectProperty",key:t,value:e,computed:r,shorthand:s,decorators:i},n=b.ObjectProperty;return c(n.key,a,"key",t,1),c(n.value,a,"value",e,1),c(n.computed,a,"computed",r),c(n.shorthand,a,"shorthand",s),c(n.decorators,a,"decorators",i,1),a}function Ta(t){const e={type:"RestElement",argument:t},r=b.RestElement;return c(r.argument,e,"argument",t,1),e}function ly(t=null){const e={type:"ReturnStatement",argument:t},r=b.ReturnStatement;return c(r.argument,e,"argument",t,1),e}function uy(t){const e={type:"SequenceExpression",expressions:t},r=b.SequenceExpression;return c(r.expressions,e,"expressions",t,1),e}function cy(t){const e={type:"ParenthesizedExpression",expression:t},r=b.ParenthesizedExpression;return c(r.expression,e,"expression",t,1),e}function py(t=null,e){const r={type:"SwitchCase",test:t,consequent:e},s=b.SwitchCase;return c(s.test,r,"test",t,1),c(s.consequent,r,"consequent",e,1),r}function fy(t,e){const r={type:"SwitchStatement",discriminant:t,cases:e},s=b.SwitchStatement;return c(s.discriminant,r,"discriminant",t,1),c(s.cases,r,"cases",e,1),r}function dy(){return{type:"ThisExpression"}}function hy(t){const e={type:"ThrowStatement",argument:t},r=b.ThrowStatement;return c(r.argument,e,"argument",t,1),e}function yy(t,e=null,r=null){const s={type:"TryStatement",block:t,handler:e,finalizer:r},i=b.TryStatement;return c(i.block,s,"block",t,1),c(i.handler,s,"handler",e,1),c(i.finalizer,s,"finalizer",r,1),s}function my(t,e,r=!0){const s={type:"UnaryExpression",operator:t,argument:e,prefix:r},i=b.UnaryExpression;return c(i.operator,s,"operator",t),c(i.argument,s,"argument",e,1),c(i.prefix,s,"prefix",r),s}function Ty(t,e,r=!1){const s={type:"UpdateExpression",operator:t,argument:e,prefix:r},i=b.UpdateExpression;return c(i.operator,s,"operator",t),c(i.argument,s,"argument",e,1),c(i.prefix,s,"prefix",r),s}function Sy(t,e){const r={type:"VariableDeclaration",kind:t,declarations:e},s=b.VariableDeclaration;return c(s.kind,r,"kind",t),c(s.declarations,r,"declarations",e,1),r}function xy(t,e=null){const r={type:"VariableDeclarator",id:t,init:e},s=b.VariableDeclarator;return c(s.id,r,"id",t,1),c(s.init,r,"init",e,1),r}function by(t,e){const r={type:"WhileStatement",test:t,body:e},s=b.WhileStatement;return c(s.test,r,"test",t,1),c(s.body,r,"body",e,1),r}function Ey(t,e){const r={type:"WithStatement",object:t,body:e},s=b.WithStatement;return c(s.object,r,"object",t,1),c(s.body,r,"body",e,1),r}function Py(t,e){const r={type:"AssignmentPattern",left:t,right:e},s=b.AssignmentPattern;return c(s.left,r,"left",t,1),c(s.right,r,"right",e,1),r}function gy(t){const e={type:"ArrayPattern",elements:t},r=b.ArrayPattern;return c(r.elements,e,"elements",t,1),e}function Ay(t,e,r=!1){const s={type:"ArrowFunctionExpression",params:t,body:e,async:r,expression:null},i=b.ArrowFunctionExpression;return c(i.params,s,"params",t,1),c(i.body,s,"body",e,1),c(i.async,s,"async",r),s}function Iy(t){const e={type:"ClassBody",body:t},r=b.ClassBody;return c(r.body,e,"body",t,1),e}function vy(t=null,e=null,r,s=null){const i={type:"ClassExpression",id:t,superClass:e,body:r,decorators:s},a=b.ClassExpression;return c(a.id,i,"id",t,1),c(a.superClass,i,"superClass",e,1),c(a.body,i,"body",r,1),c(a.decorators,i,"decorators",s,1),i}function Cy(t=null,e=null,r,s=null){const i={type:"ClassDeclaration",id:t,superClass:e,body:r,decorators:s},a=b.ClassDeclaration;return c(a.id,i,"id",t,1),c(a.superClass,i,"superClass",e,1),c(a.body,i,"body",r,1),c(a.decorators,i,"decorators",s,1),i}function Ny(t){const e={type:"ExportAllDeclaration",source:t},r=b.ExportAllDeclaration;return c(r.source,e,"source",t,1),e}function wy(t){const e={type:"ExportDefaultDeclaration",declaration:t},r=b.ExportDefaultDeclaration;return c(r.declaration,e,"declaration",t,1),e}function Oy(t=null,e=[],r=null){const s={type:"ExportNamedDeclaration",declaration:t,specifiers:e,source:r},i=b.ExportNamedDeclaration;return c(i.declaration,s,"declaration",t,1),c(i.specifiers,s,"specifiers",e,1),c(i.source,s,"source",r,1),s}function Dy(t,e){const r={type:"ExportSpecifier",local:t,exported:e},s=b.ExportSpecifier;return c(s.local,r,"local",t,1),c(s.exported,r,"exported",e,1),r}function Ly(t,e,r,s=!1){const i={type:"ForOfStatement",left:t,right:e,body:r,await:s},a=b.ForOfStatement;return c(a.left,i,"left",t,1),c(a.right,i,"right",e,1),c(a.body,i,"body",r,1),c(a.await,i,"await",s),i}function ky(t,e){const r={type:"ImportDeclaration",specifiers:t,source:e},s=b.ImportDeclaration;return c(s.specifiers,r,"specifiers",t,1),c(s.source,r,"source",e,1),r}function My(t){const e={type:"ImportDefaultSpecifier",local:t},r=b.ImportDefaultSpecifier;return c(r.local,e,"local",t,1),e}function _y(t){const e={type:"ImportNamespaceSpecifier",local:t},r=b.ImportNamespaceSpecifier;return c(r.local,e,"local",t,1),e}function By(t,e){const r={type:"ImportSpecifier",local:t,imported:e},s=b.ImportSpecifier;return c(s.local,r,"local",t,1),c(s.imported,r,"imported",e,1),r}function Fy(t,e=null){const r={type:"ImportExpression",source:t,options:e},s=b.ImportExpression;return c(s.source,r,"source",t,1),c(s.options,r,"options",e,1),r}function Ry(t,e){const r={type:"MetaProperty",meta:t,property:e},s=b.MetaProperty;return c(s.meta,r,"meta",t,1),c(s.property,r,"property",e,1),r}function jy(t="method",e,r,s,i=!1,a=!1,n=!1,o=!1){const u={type:"ClassMethod",kind:t,key:e,params:r,body:s,computed:i,static:a,generator:n,async:o},p=b.ClassMethod;return c(p.kind,u,"kind",t),c(p.key,u,"key",e,1),c(p.params,u,"params",r,1),c(p.body,u,"body",s,1),c(p.computed,u,"computed",i),c(p.static,u,"static",a),c(p.generator,u,"generator",n),c(p.async,u,"async",o),u}function Ky(t){const e={type:"ObjectPattern",properties:t},r=b.ObjectPattern;return c(r.properties,e,"properties",t,1),e}function Sa(t){const e={type:"SpreadElement",argument:t},r=b.SpreadElement;return c(r.argument,e,"argument",t,1),e}function Uy(){return{type:"Super"}}function Vy(t,e){const r={type:"TaggedTemplateExpression",tag:t,quasi:e},s=b.TaggedTemplateExpression;return c(s.tag,r,"tag",t,1),c(s.quasi,r,"quasi",e,1),r}function $y(t,e=!1){const r={type:"TemplateElement",value:t,tail:e},s=b.TemplateElement;return c(s.value,r,"value",t),c(s.tail,r,"tail",e),r}function Yy(t,e){const r={type:"TemplateLiteral",quasis:t,expressions:e},s=b.TemplateLiteral;return c(s.quasis,r,"quasis",t,1),c(s.expressions,r,"expressions",e,1),r}function Xy(t=null,e=!1){const r={type:"YieldExpression",argument:t,delegate:e},s=b.YieldExpression;return c(s.argument,r,"argument",t,1),c(s.delegate,r,"delegate",e),r}function Jy(t){const e={type:"AwaitExpression",argument:t},r=b.AwaitExpression;return c(r.argument,e,"argument",t,1),e}function qy(){return{type:"Import"}}function Wy(t){const e={type:"ExportNamespaceSpecifier",exported:t},r=b.ExportNamespaceSpecifier;return c(r.exported,e,"exported",t,1),e}function Hy(t,e,r=!1,s){const i={type:"OptionalMemberExpression",object:t,property:e,computed:r,optional:s},a=b.OptionalMemberExpression;return c(a.object,i,"object",t,1),c(a.property,i,"property",e,1),c(a.computed,i,"computed",r),c(a.optional,i,"optional",s),i}function zy(t,e,r){const s={type:"OptionalCallExpression",callee:t,arguments:e,optional:r},i=b.OptionalCallExpression;return c(i.callee,s,"callee",t,1),c(i.arguments,s,"arguments",e,1),c(i.optional,s,"optional",r),s}function Gy(t,e=null,r=null,s=null,i=!1,a=!1){const n={type:"ClassProperty",key:t,value:e,typeAnnotation:r,decorators:s,computed:i,static:a},o=b.ClassProperty;return c(o.key,n,"key",t,1),c(o.value,n,"value",e,1),c(o.typeAnnotation,n,"typeAnnotation",r,1),c(o.decorators,n,"decorators",s,1),c(o.computed,n,"computed",i),c(o.static,n,"static",a),n}function Qy(t,e=null,r=null,s=null,i=!1,a=!1){const n={type:"ClassAccessorProperty",key:t,value:e,typeAnnotation:r,decorators:s,computed:i,static:a},o=b.ClassAccessorProperty;return c(o.key,n,"key",t,1),c(o.value,n,"value",e,1),c(o.typeAnnotation,n,"typeAnnotation",r,1),c(o.decorators,n,"decorators",s,1),c(o.computed,n,"computed",i),c(o.static,n,"static",a),n}function Zy(t,e=null,r=null,s=!1){const i={type:"ClassPrivateProperty",key:t,value:e,decorators:r,static:s},a=b.ClassPrivateProperty;return c(a.key,i,"key",t,1),c(a.value,i,"value",e,1),c(a.decorators,i,"decorators",r,1),c(a.static,i,"static",s),i}function em(t="method",e,r,s,i=!1){const a={type:"ClassPrivateMethod",kind:t,key:e,params:r,body:s,static:i},n=b.ClassPrivateMethod;return c(n.kind,a,"kind",t),c(n.key,a,"key",e,1),c(n.params,a,"params",r,1),c(n.body,a,"body",s,1),c(n.static,a,"static",i),a}function tm(t){const e={type:"PrivateName",id:t},r=b.PrivateName;return c(r.id,e,"id",t,1),e}function rm(t){const e={type:"StaticBlock",body:t},r=b.StaticBlock;return c(r.body,e,"body",t,1),e}function sm(t,e){const r={type:"ImportAttribute",key:t,value:e},s=b.ImportAttribute;return c(s.key,r,"key",t,1),c(s.value,r,"value",e,1),r}function im(){return{type:"AnyTypeAnnotation"}}function am(t){const e={type:"ArrayTypeAnnotation",elementType:t},r=b.ArrayTypeAnnotation;return c(r.elementType,e,"elementType",t,1),e}function nm(){return{type:"BooleanTypeAnnotation"}}function om(t){const e={type:"BooleanLiteralTypeAnnotation",value:t},r=b.BooleanLiteralTypeAnnotation;return c(r.value,e,"value",t),e}function lm(){return{type:"NullLiteralTypeAnnotation"}}function um(t,e=null){const r={type:"ClassImplements",id:t,typeParameters:e},s=b.ClassImplements;return c(s.id,r,"id",t,1),c(s.typeParameters,r,"typeParameters",e,1),r}function cm(t,e=null,r=null,s){const i={type:"DeclareClass",id:t,typeParameters:e,extends:r,body:s},a=b.DeclareClass;return c(a.id,i,"id",t,1),c(a.typeParameters,i,"typeParameters",e,1),c(a.extends,i,"extends",r,1),c(a.body,i,"body",s,1),i}function pm(t){const e={type:"DeclareFunction",id:t},r=b.DeclareFunction;return c(r.id,e,"id",t,1),e}function fm(t,e=null,r=null,s){const i={type:"DeclareInterface",id:t,typeParameters:e,extends:r,body:s},a=b.DeclareInterface;return c(a.id,i,"id",t,1),c(a.typeParameters,i,"typeParameters",e,1),c(a.extends,i,"extends",r,1),c(a.body,i,"body",s,1),i}function dm(t,e,r=null){const s={type:"DeclareModule",id:t,body:e,kind:r},i=b.DeclareModule;return c(i.id,s,"id",t,1),c(i.body,s,"body",e,1),c(i.kind,s,"kind",r),s}function hm(t){const e={type:"DeclareModuleExports",typeAnnotation:t},r=b.DeclareModuleExports;return c(r.typeAnnotation,e,"typeAnnotation",t,1),e}function ym(t,e=null,r){const s={type:"DeclareTypeAlias",id:t,typeParameters:e,right:r},i=b.DeclareTypeAlias;return c(i.id,s,"id",t,1),c(i.typeParameters,s,"typeParameters",e,1),c(i.right,s,"right",r,1),s}function mm(t,e=null,r=null){const s={type:"DeclareOpaqueType",id:t,typeParameters:e,supertype:r},i=b.DeclareOpaqueType;return c(i.id,s,"id",t,1),c(i.typeParameters,s,"typeParameters",e,1),c(i.supertype,s,"supertype",r,1),s}function Tm(t){const e={type:"DeclareVariable",id:t},r=b.DeclareVariable;return c(r.id,e,"id",t,1),e}function Sm(t=null,e=null,r=null,s=null){const i={type:"DeclareExportDeclaration",declaration:t,specifiers:e,source:r,attributes:s},a=b.DeclareExportDeclaration;return c(a.declaration,i,"declaration",t,1),c(a.specifiers,i,"specifiers",e,1),c(a.source,i,"source",r,1),c(a.attributes,i,"attributes",s,1),i}function xm(t,e=null){const r={type:"DeclareExportAllDeclaration",source:t,attributes:e},s=b.DeclareExportAllDeclaration;return c(s.source,r,"source",t,1),c(s.attributes,r,"attributes",e,1),r}function bm(t){const e={type:"DeclaredPredicate",value:t},r=b.DeclaredPredicate;return c(r.value,e,"value",t,1),e}function Em(){return{type:"ExistsTypeAnnotation"}}function Pm(t=null,e,r=null,s){const i={type:"FunctionTypeAnnotation",typeParameters:t,params:e,rest:r,returnType:s},a=b.FunctionTypeAnnotation;return c(a.typeParameters,i,"typeParameters",t,1),c(a.params,i,"params",e,1),c(a.rest,i,"rest",r,1),c(a.returnType,i,"returnType",s,1),i}function gm(t=null,e){const r={type:"FunctionTypeParam",name:t,typeAnnotation:e},s=b.FunctionTypeParam;return c(s.name,r,"name",t,1),c(s.typeAnnotation,r,"typeAnnotation",e,1),r}function Am(t,e=null){const r={type:"GenericTypeAnnotation",id:t,typeParameters:e},s=b.GenericTypeAnnotation;return c(s.id,r,"id",t,1),c(s.typeParameters,r,"typeParameters",e,1),r}function Im(){return{type:"InferredPredicate"}}function vm(t,e=null){const r={type:"InterfaceExtends",id:t,typeParameters:e},s=b.InterfaceExtends;return c(s.id,r,"id",t,1),c(s.typeParameters,r,"typeParameters",e,1),r}function Cm(t,e=null,r=null,s){const i={type:"InterfaceDeclaration",id:t,typeParameters:e,extends:r,body:s},a=b.InterfaceDeclaration;return c(a.id,i,"id",t,1),c(a.typeParameters,i,"typeParameters",e,1),c(a.extends,i,"extends",r,1),c(a.body,i,"body",s,1),i}function Nm(t=null,e){const r={type:"InterfaceTypeAnnotation",extends:t,body:e},s=b.InterfaceTypeAnnotation;return c(s.extends,r,"extends",t,1),c(s.body,r,"body",e,1),r}function wm(t){const e={type:"IntersectionTypeAnnotation",types:t},r=b.IntersectionTypeAnnotation;return c(r.types,e,"types",t,1),e}function Om(){return{type:"MixedTypeAnnotation"}}function Dm(){return{type:"EmptyTypeAnnotation"}}function Lm(t){const e={type:"NullableTypeAnnotation",typeAnnotation:t},r=b.NullableTypeAnnotation;return c(r.typeAnnotation,e,"typeAnnotation",t,1),e}function km(t){const e={type:"NumberLiteralTypeAnnotation",value:t},r=b.NumberLiteralTypeAnnotation;return c(r.value,e,"value",t),e}function Mm(){return{type:"NumberTypeAnnotation"}}function _m(t,e=[],r=[],s=[],i=!1){const a={type:"ObjectTypeAnnotation",properties:t,indexers:e,callProperties:r,internalSlots:s,exact:i},n=b.ObjectTypeAnnotation;return c(n.properties,a,"properties",t,1),c(n.indexers,a,"indexers",e,1),c(n.callProperties,a,"callProperties",r,1),c(n.internalSlots,a,"internalSlots",s,1),c(n.exact,a,"exact",i),a}function Bm(t,e,r,s,i){const a={type:"ObjectTypeInternalSlot",id:t,value:e,optional:r,static:s,method:i},n=b.ObjectTypeInternalSlot;return c(n.id,a,"id",t,1),c(n.value,a,"value",e,1),c(n.optional,a,"optional",r),c(n.static,a,"static",s),c(n.method,a,"method",i),a}function Fm(t){const e={type:"ObjectTypeCallProperty",value:t,static:null},r=b.ObjectTypeCallProperty;return c(r.value,e,"value",t,1),e}function Rm(t=null,e,r,s=null){const i={type:"ObjectTypeIndexer",id:t,key:e,value:r,variance:s,static:null},a=b.ObjectTypeIndexer;return c(a.id,i,"id",t,1),c(a.key,i,"key",e,1),c(a.value,i,"value",r,1),c(a.variance,i,"variance",s,1),i}function jm(t,e,r=null){const s={type:"ObjectTypeProperty",key:t,value:e,variance:r,kind:null,method:null,optional:null,proto:null,static:null},i=b.ObjectTypeProperty;return c(i.key,s,"key",t,1),c(i.value,s,"value",e,1),c(i.variance,s,"variance",r,1),s}function Km(t){const e={type:"ObjectTypeSpreadProperty",argument:t},r=b.ObjectTypeSpreadProperty;return c(r.argument,e,"argument",t,1),e}function Um(t,e=null,r=null,s){const i={type:"OpaqueType",id:t,typeParameters:e,supertype:r,impltype:s},a=b.OpaqueType;return c(a.id,i,"id",t,1),c(a.typeParameters,i,"typeParameters",e,1),c(a.supertype,i,"supertype",r,1),c(a.impltype,i,"impltype",s,1),i}function Vm(t,e){const r={type:"QualifiedTypeIdentifier",id:t,qualification:e},s=b.QualifiedTypeIdentifier;return c(s.id,r,"id",t,1),c(s.qualification,r,"qualification",e,1),r}function $m(t){const e={type:"StringLiteralTypeAnnotation",value:t},r=b.StringLiteralTypeAnnotation;return c(r.value,e,"value",t),e}function Ym(){return{type:"StringTypeAnnotation"}}function Xm(){return{type:"SymbolTypeAnnotation"}}function Jm(){return{type:"ThisTypeAnnotation"}}function qm(t){const e={type:"TupleTypeAnnotation",types:t},r=b.TupleTypeAnnotation;return c(r.types,e,"types",t,1),e}function Wm(t){const e={type:"TypeofTypeAnnotation",argument:t},r=b.TypeofTypeAnnotation;return c(r.argument,e,"argument",t,1),e}function Hm(t,e=null,r){const s={type:"TypeAlias",id:t,typeParameters:e,right:r},i=b.TypeAlias;return c(i.id,s,"id",t,1),c(i.typeParameters,s,"typeParameters",e,1),c(i.right,s,"right",r,1),s}function zm(t){const e={type:"TypeAnnotation",typeAnnotation:t},r=b.TypeAnnotation;return c(r.typeAnnotation,e,"typeAnnotation",t,1),e}function Gm(t,e){const r={type:"TypeCastExpression",expression:t,typeAnnotation:e},s=b.TypeCastExpression;return c(s.expression,r,"expression",t,1),c(s.typeAnnotation,r,"typeAnnotation",e,1),r}function Qm(t=null,e=null,r=null){const s={type:"TypeParameter",bound:t,default:e,variance:r,name:null},i=b.TypeParameter;return c(i.bound,s,"bound",t,1),c(i.default,s,"default",e,1),c(i.variance,s,"variance",r,1),s}function Zm(t){const e={type:"TypeParameterDeclaration",params:t},r=b.TypeParameterDeclaration;return c(r.params,e,"params",t,1),e}function eT(t){const e={type:"TypeParameterInstantiation",params:t},r=b.TypeParameterInstantiation;return c(r.params,e,"params",t,1),e}function tT(t){const e={type:"UnionTypeAnnotation",types:t},r=b.UnionTypeAnnotation;return c(r.types,e,"types",t,1),e}function rT(t){const e={type:"Variance",kind:t},r=b.Variance;return c(r.kind,e,"kind",t),e}function sT(){return{type:"VoidTypeAnnotation"}}function iT(t,e){const r={type:"EnumDeclaration",id:t,body:e},s=b.EnumDeclaration;return c(s.id,r,"id",t,1),c(s.body,r,"body",e,1),r}function aT(t){const e={type:"EnumBooleanBody",members:t,explicitType:null,hasUnknownMembers:null},r=b.EnumBooleanBody;return c(r.members,e,"members",t,1),e}function nT(t){const e={type:"EnumNumberBody",members:t,explicitType:null,hasUnknownMembers:null},r=b.EnumNumberBody;return c(r.members,e,"members",t,1),e}function oT(t){const e={type:"EnumStringBody",members:t,explicitType:null,hasUnknownMembers:null},r=b.EnumStringBody;return c(r.members,e,"members",t,1),e}function lT(t){const e={type:"EnumSymbolBody",members:t,hasUnknownMembers:null},r=b.EnumSymbolBody;return c(r.members,e,"members",t,1),e}function uT(t){const e={type:"EnumBooleanMember",id:t,init:null},r=b.EnumBooleanMember;return c(r.id,e,"id",t,1),e}function cT(t,e){const r={type:"EnumNumberMember",id:t,init:e},s=b.EnumNumberMember;return c(s.id,r,"id",t,1),c(s.init,r,"init",e,1),r}function pT(t,e){const r={type:"EnumStringMember",id:t,init:e},s=b.EnumStringMember;return c(s.id,r,"id",t,1),c(s.init,r,"init",e,1),r}function fT(t){const e={type:"EnumDefaultedMember",id:t},r=b.EnumDefaultedMember;return c(r.id,e,"id",t,1),e}function dT(t,e){const r={type:"IndexedAccessType",objectType:t,indexType:e},s=b.IndexedAccessType;return c(s.objectType,r,"objectType",t,1),c(s.indexType,r,"indexType",e,1),r}function hT(t,e){const r={type:"OptionalIndexedAccessType",objectType:t,indexType:e,optional:null},s=b.OptionalIndexedAccessType;return c(s.objectType,r,"objectType",t,1),c(s.indexType,r,"indexType",e,1),r}function yT(t,e=null){const r={type:"JSXAttribute",name:t,value:e},s=b.JSXAttribute;return c(s.name,r,"name",t,1),c(s.value,r,"value",e,1),r}function mT(t){const e={type:"JSXClosingElement",name:t},r=b.JSXClosingElement;return c(r.name,e,"name",t,1),e}function TT(t,e=null,r,s=null){const i={type:"JSXElement",openingElement:t,closingElement:e,children:r,selfClosing:s},a=b.JSXElement;return c(a.openingElement,i,"openingElement",t,1),c(a.closingElement,i,"closingElement",e,1),c(a.children,i,"children",r,1),c(a.selfClosing,i,"selfClosing",s),i}function ST(){return{type:"JSXEmptyExpression"}}function xT(t){const e={type:"JSXExpressionContainer",expression:t},r=b.JSXExpressionContainer;return c(r.expression,e,"expression",t,1),e}function bT(t){const e={type:"JSXSpreadChild",expression:t},r=b.JSXSpreadChild;return c(r.expression,e,"expression",t,1),e}function ET(t){const e={type:"JSXIdentifier",name:t},r=b.JSXIdentifier;return c(r.name,e,"name",t),e}function PT(t,e){const r={type:"JSXMemberExpression",object:t,property:e},s=b.JSXMemberExpression;return c(s.object,r,"object",t,1),c(s.property,r,"property",e,1),r}function gT(t,e){const r={type:"JSXNamespacedName",namespace:t,name:e},s=b.JSXNamespacedName;return c(s.namespace,r,"namespace",t,1),c(s.name,r,"name",e,1),r}function AT(t,e,r=!1){const s={type:"JSXOpeningElement",name:t,attributes:e,selfClosing:r},i=b.JSXOpeningElement;return c(i.name,s,"name",t,1),c(i.attributes,s,"attributes",e,1),c(i.selfClosing,s,"selfClosing",r),s}function IT(t){const e={type:"JSXSpreadAttribute",argument:t},r=b.JSXSpreadAttribute;return c(r.argument,e,"argument",t,1),e}function vT(t){const e={type:"JSXText",value:t},r=b.JSXText;return c(r.value,e,"value",t),e}function CT(t,e,r){const s={type:"JSXFragment",openingFragment:t,closingFragment:e,children:r},i=b.JSXFragment;return c(i.openingFragment,s,"openingFragment",t,1),c(i.closingFragment,s,"closingFragment",e,1),c(i.children,s,"children",r,1),s}function NT(){return{type:"JSXOpeningFragment"}}function wT(){return{type:"JSXClosingFragment"}}function OT(){return{type:"Noop"}}function DT(t,e){const r={type:"Placeholder",expectedNode:t,name:e},s=b.Placeholder;return c(s.expectedNode,r,"expectedNode",t),c(s.name,r,"name",e,1),r}function LT(t){const e={type:"V8IntrinsicIdentifier",name:t},r=b.V8IntrinsicIdentifier;return c(r.name,e,"name",t),e}function kT(){return{type:"ArgumentPlaceholder"}}function MT(t,e){const r={type:"BindExpression",object:t,callee:e},s=b.BindExpression;return c(s.object,r,"object",t,1),c(s.callee,r,"callee",e,1),r}function _T(t){const e={type:"Decorator",expression:t},r=b.Decorator;return c(r.expression,e,"expression",t,1),e}function BT(t,e=!1){const r={type:"DoExpression",body:t,async:e},s=b.DoExpression;return c(s.body,r,"body",t,1),c(s.async,r,"async",e),r}function FT(t){const e={type:"ExportDefaultSpecifier",exported:t},r=b.ExportDefaultSpecifier;return c(r.exported,e,"exported",t,1),e}function RT(t){const e={type:"RecordExpression",properties:t},r=b.RecordExpression;return c(r.properties,e,"properties",t,1),e}function jT(t=[]){const e={type:"TupleExpression",elements:t},r=b.TupleExpression;return c(r.elements,e,"elements",t,1),e}function KT(t){const e={type:"DecimalLiteral",value:t},r=b.DecimalLiteral;return c(r.value,e,"value",t),e}function UT(t){const e={type:"ModuleExpression",body:t},r=b.ModuleExpression;return c(r.body,e,"body",t,1),e}function VT(){return{type:"TopicReference"}}function $T(t){const e={type:"PipelineTopicExpression",expression:t},r=b.PipelineTopicExpression;return c(r.expression,e,"expression",t,1),e}function YT(t){const e={type:"PipelineBareFunction",callee:t},r=b.PipelineBareFunction;return c(r.callee,e,"callee",t,1),e}function XT(){return{type:"PipelinePrimaryTopicReference"}}function JT(){return{type:"VoidPattern"}}function qT(t){const e={type:"TSParameterProperty",parameter:t},r=b.TSParameterProperty;return c(r.parameter,e,"parameter",t,1),e}function WT(t=null,e=null,r,s=null){const i={type:"TSDeclareFunction",id:t,typeParameters:e,params:r,returnType:s},a=b.TSDeclareFunction;return c(a.id,i,"id",t,1),c(a.typeParameters,i,"typeParameters",e,1),c(a.params,i,"params",r,1),c(a.returnType,i,"returnType",s,1),i}function HT(t=null,e,r=null,s,i=null){const a={type:"TSDeclareMethod",decorators:t,key:e,typeParameters:r,params:s,returnType:i},n=b.TSDeclareMethod;return c(n.decorators,a,"decorators",t,1),c(n.key,a,"key",e,1),c(n.typeParameters,a,"typeParameters",r,1),c(n.params,a,"params",s,1),c(n.returnType,a,"returnType",i,1),a}function zT(t,e){const r={type:"TSQualifiedName",left:t,right:e},s=b.TSQualifiedName;return c(s.left,r,"left",t,1),c(s.right,r,"right",e,1),r}function GT(t=null,e,r=null){const s={type:"TSCallSignatureDeclaration",typeParameters:t,parameters:e,typeAnnotation:r},i=b.TSCallSignatureDeclaration;return c(i.typeParameters,s,"typeParameters",t,1),c(i.parameters,s,"parameters",e,1),c(i.typeAnnotation,s,"typeAnnotation",r,1),s}function QT(t=null,e,r=null){const s={type:"TSConstructSignatureDeclaration",typeParameters:t,parameters:e,typeAnnotation:r},i=b.TSConstructSignatureDeclaration;return c(i.typeParameters,s,"typeParameters",t,1),c(i.parameters,s,"parameters",e,1),c(i.typeAnnotation,s,"typeAnnotation",r,1),s}function ZT(t,e=null){const r={type:"TSPropertySignature",key:t,typeAnnotation:e},s=b.TSPropertySignature;return c(s.key,r,"key",t,1),c(s.typeAnnotation,r,"typeAnnotation",e,1),r}function eS(t,e=null,r,s=null){const i={type:"TSMethodSignature",key:t,typeParameters:e,parameters:r,typeAnnotation:s,kind:null},a=b.TSMethodSignature;return c(a.key,i,"key",t,1),c(a.typeParameters,i,"typeParameters",e,1),c(a.parameters,i,"parameters",r,1),c(a.typeAnnotation,i,"typeAnnotation",s,1),i}function tS(t,e=null){const r={type:"TSIndexSignature",parameters:t,typeAnnotation:e},s=b.TSIndexSignature;return c(s.parameters,r,"parameters",t,1),c(s.typeAnnotation,r,"typeAnnotation",e,1),r}function rS(){return{type:"TSAnyKeyword"}}function sS(){return{type:"TSBooleanKeyword"}}function iS(){return{type:"TSBigIntKeyword"}}function aS(){return{type:"TSIntrinsicKeyword"}}function nS(){return{type:"TSNeverKeyword"}}function oS(){return{type:"TSNullKeyword"}}function lS(){return{type:"TSNumberKeyword"}}function uS(){return{type:"TSObjectKeyword"}}function cS(){return{type:"TSStringKeyword"}}function pS(){return{type:"TSSymbolKeyword"}}function fS(){return{type:"TSUndefinedKeyword"}}function dS(){return{type:"TSUnknownKeyword"}}function hS(){return{type:"TSVoidKeyword"}}function yS(){return{type:"TSThisType"}}function mS(t=null,e,r=null){const s={type:"TSFunctionType",typeParameters:t,parameters:e,typeAnnotation:r},i=b.TSFunctionType;return c(i.typeParameters,s,"typeParameters",t,1),c(i.parameters,s,"parameters",e,1),c(i.typeAnnotation,s,"typeAnnotation",r,1),s}function TS(t=null,e,r=null){const s={type:"TSConstructorType",typeParameters:t,parameters:e,typeAnnotation:r},i=b.TSConstructorType;return c(i.typeParameters,s,"typeParameters",t,1),c(i.parameters,s,"parameters",e,1),c(i.typeAnnotation,s,"typeAnnotation",r,1),s}function SS(t,e=null){const r={type:"TSTypeReference",typeName:t,typeParameters:e},s=b.TSTypeReference;return c(s.typeName,r,"typeName",t,1),c(s.typeParameters,r,"typeParameters",e,1),r}function xS(t,e=null,r=null){const s={type:"TSTypePredicate",parameterName:t,typeAnnotation:e,asserts:r},i=b.TSTypePredicate;return c(i.parameterName,s,"parameterName",t,1),c(i.typeAnnotation,s,"typeAnnotation",e,1),c(i.asserts,s,"asserts",r),s}function bS(t,e=null){const r={type:"TSTypeQuery",exprName:t,typeParameters:e},s=b.TSTypeQuery;return c(s.exprName,r,"exprName",t,1),c(s.typeParameters,r,"typeParameters",e,1),r}function ES(t){const e={type:"TSTypeLiteral",members:t},r=b.TSTypeLiteral;return c(r.members,e,"members",t,1),e}function PS(t){const e={type:"TSArrayType",elementType:t},r=b.TSArrayType;return c(r.elementType,e,"elementType",t,1),e}function gS(t){const e={type:"TSTupleType",elementTypes:t},r=b.TSTupleType;return c(r.elementTypes,e,"elementTypes",t,1),e}function AS(t){const e={type:"TSOptionalType",typeAnnotation:t},r=b.TSOptionalType;return c(r.typeAnnotation,e,"typeAnnotation",t,1),e}function IS(t){const e={type:"TSRestType",typeAnnotation:t},r=b.TSRestType;return c(r.typeAnnotation,e,"typeAnnotation",t,1),e}function vS(t,e,r=!1){const s={type:"TSNamedTupleMember",label:t,elementType:e,optional:r},i=b.TSNamedTupleMember;return c(i.label,s,"label",t,1),c(i.elementType,s,"elementType",e,1),c(i.optional,s,"optional",r),s}function CS(t){const e={type:"TSUnionType",types:t},r=b.TSUnionType;return c(r.types,e,"types",t,1),e}function NS(t){const e={type:"TSIntersectionType",types:t},r=b.TSIntersectionType;return c(r.types,e,"types",t,1),e}function wS(t,e,r,s){const i={type:"TSConditionalType",checkType:t,extendsType:e,trueType:r,falseType:s},a=b.TSConditionalType;return c(a.checkType,i,"checkType",t,1),c(a.extendsType,i,"extendsType",e,1),c(a.trueType,i,"trueType",r,1),c(a.falseType,i,"falseType",s,1),i}function OS(t){const e={type:"TSInferType",typeParameter:t},r=b.TSInferType;return c(r.typeParameter,e,"typeParameter",t,1),e}function DS(t){const e={type:"TSParenthesizedType",typeAnnotation:t},r=b.TSParenthesizedType;return c(r.typeAnnotation,e,"typeAnnotation",t,1),e}function LS(t,e="keyof"){const r={type:"TSTypeOperator",typeAnnotation:t,operator:e},s=b.TSTypeOperator;return c(s.typeAnnotation,r,"typeAnnotation",t,1),c(s.operator,r,"operator",e),r}function kS(t,e){const r={type:"TSIndexedAccessType",objectType:t,indexType:e},s=b.TSIndexedAccessType;return c(s.objectType,r,"objectType",t,1),c(s.indexType,r,"indexType",e,1),r}function MS(t,e=null,r=null){const s={type:"TSMappedType",typeParameter:t,typeAnnotation:e,nameType:r},i=b.TSMappedType;return c(i.typeParameter,s,"typeParameter",t,1),c(i.typeAnnotation,s,"typeAnnotation",e,1),c(i.nameType,s,"nameType",r,1),s}function _S(t,e){const r={type:"TSTemplateLiteralType",quasis:t,types:e},s=b.TSTemplateLiteralType;return c(s.quasis,r,"quasis",t,1),c(s.types,r,"types",e,1),r}function BS(t){const e={type:"TSLiteralType",literal:t},r=b.TSLiteralType;return c(r.literal,e,"literal",t,1),e}function FS(t,e=null){const r={type:"TSExpressionWithTypeArguments",expression:t,typeParameters:e},s=b.TSExpressionWithTypeArguments;return c(s.expression,r,"expression",t,1),c(s.typeParameters,r,"typeParameters",e,1),r}function RS(t,e=null,r=null,s){const i={type:"TSInterfaceDeclaration",id:t,typeParameters:e,extends:r,body:s},a=b.TSInterfaceDeclaration;return c(a.id,i,"id",t,1),c(a.typeParameters,i,"typeParameters",e,1),c(a.extends,i,"extends",r,1),c(a.body,i,"body",s,1),i}function jS(t){const e={type:"TSInterfaceBody",body:t},r=b.TSInterfaceBody;return c(r.body,e,"body",t,1),e}function KS(t,e=null,r){const s={type:"TSTypeAliasDeclaration",id:t,typeParameters:e,typeAnnotation:r},i=b.TSTypeAliasDeclaration;return c(i.id,s,"id",t,1),c(i.typeParameters,s,"typeParameters",e,1),c(i.typeAnnotation,s,"typeAnnotation",r,1),s}function US(t,e=null){const r={type:"TSInstantiationExpression",expression:t,typeParameters:e},s=b.TSInstantiationExpression;return c(s.expression,r,"expression",t,1),c(s.typeParameters,r,"typeParameters",e,1),r}function VS(t,e){const r={type:"TSAsExpression",expression:t,typeAnnotation:e},s=b.TSAsExpression;return c(s.expression,r,"expression",t,1),c(s.typeAnnotation,r,"typeAnnotation",e,1),r}function $S(t,e){const r={type:"TSSatisfiesExpression",expression:t,typeAnnotation:e},s=b.TSSatisfiesExpression;return c(s.expression,r,"expression",t,1),c(s.typeAnnotation,r,"typeAnnotation",e,1),r}function YS(t,e){const r={type:"TSTypeAssertion",typeAnnotation:t,expression:e},s=b.TSTypeAssertion;return c(s.typeAnnotation,r,"typeAnnotation",t,1),c(s.expression,r,"expression",e,1),r}function XS(t){const e={type:"TSEnumBody",members:t},r=b.TSEnumBody;return c(r.members,e,"members",t,1),e}function JS(t,e){const r={type:"TSEnumDeclaration",id:t,members:e},s=b.TSEnumDeclaration;return c(s.id,r,"id",t,1),c(s.members,r,"members",e,1),r}function qS(t,e=null){const r={type:"TSEnumMember",id:t,initializer:e},s=b.TSEnumMember;return c(s.id,r,"id",t,1),c(s.initializer,r,"initializer",e,1),r}function WS(t,e){const r={type:"TSModuleDeclaration",id:t,body:e,kind:null},s=b.TSModuleDeclaration;return c(s.id,r,"id",t,1),c(s.body,r,"body",e,1),r}function HS(t){const e={type:"TSModuleBlock",body:t},r=b.TSModuleBlock;return c(r.body,e,"body",t,1),e}function zS(t,e=null,r=null){const s={type:"TSImportType",argument:t,qualifier:e,typeParameters:r},i=b.TSImportType;return c(i.argument,s,"argument",t,1),c(i.qualifier,s,"qualifier",e,1),c(i.typeParameters,s,"typeParameters",r,1),s}function GS(t,e){const r={type:"TSImportEqualsDeclaration",id:t,moduleReference:e,isExport:null},s=b.TSImportEqualsDeclaration;return c(s.id,r,"id",t,1),c(s.moduleReference,r,"moduleReference",e,1),r}function QS(t){const e={type:"TSExternalModuleReference",expression:t},r=b.TSExternalModuleReference;return c(r.expression,e,"expression",t,1),e}function ZS(t){const e={type:"TSNonNullExpression",expression:t},r=b.TSNonNullExpression;return c(r.expression,e,"expression",t,1),e}function e0(t){const e={type:"TSExportAssignment",expression:t},r=b.TSExportAssignment;return c(r.expression,e,"expression",t,1),e}function t0(t){const e={type:"TSNamespaceExportDeclaration",id:t},r=b.TSNamespaceExportDeclaration;return c(r.id,e,"id",t,1),e}function r0(t){const e={type:"TSTypeAnnotation",typeAnnotation:t},r=b.TSTypeAnnotation;return c(r.typeAnnotation,e,"typeAnnotation",t,1),e}function s0(t){const e={type:"TSTypeParameterInstantiation",params:t},r=b.TSTypeParameterInstantiation;return c(r.params,e,"params",t,1),e}function i0(t){const e={type:"TSTypeParameterDeclaration",params:t},r=b.TSTypeParameterDeclaration;return c(r.params,e,"params",t,1),e}function a0(t=null,e=null,r){const s={type:"TSTypeParameter",constraint:t,default:e,name:r},i=b.TSTypeParameter;return c(i.constraint,s,"constraint",t,1),c(i.default,s,"default",e,1),c(i.name,s,"name",r),s}function n0(t){return(0,Ht.default)("NumberLiteral","NumericLiteral","The node type "),ya(t)}function o0(t,e=""){return(0,Ht.default)("RegexLiteral","RegExpLiteral","The node type "),ma(t,e)}function l0(t){return(0,Ht.default)("RestProperty","RestElement","The node type "),Ta(t)}function u0(t){return(0,Ht.default)("SpreadProperty","SpreadElement","The node type "),Sa(t)}var l={};Object.defineProperty(l,"__esModule",{value:!0});l.JSXIdentifier=l.JSXFragment=l.JSXExpressionContainer=l.JSXEmptyExpression=l.JSXElement=l.JSXClosingFragment=l.JSXClosingElement=l.JSXAttribute=l.IntersectionTypeAnnotation=l.InterpreterDirective=l.InterfaceTypeAnnotation=l.InterfaceExtends=l.InterfaceDeclaration=l.InferredPredicate=l.IndexedAccessType=l.ImportSpecifier=l.ImportNamespaceSpecifier=l.ImportExpression=l.ImportDefaultSpecifier=l.ImportDeclaration=l.ImportAttribute=l.Import=l.IfStatement=l.Identifier=l.GenericTypeAnnotation=l.FunctionTypeParam=l.FunctionTypeAnnotation=l.FunctionExpression=l.FunctionDeclaration=l.ForStatement=l.ForOfStatement=l.ForInStatement=l.File=l.ExpressionStatement=l.ExportSpecifier=l.ExportNamespaceSpecifier=l.ExportNamedDeclaration=l.ExportDefaultSpecifier=l.ExportDefaultDeclaration=l.ExportAllDeclaration=l.ExistsTypeAnnotation=l.EnumSymbolBody=l.EnumStringMember=l.EnumStringBody=l.EnumNumberMember=l.EnumNumberBody=l.EnumDefaultedMember=l.EnumDeclaration=l.EnumBooleanMember=l.EnumBooleanBody=l.EmptyTypeAnnotation=l.EmptyStatement=l.DoWhileStatement=l.DoExpression=l.DirectiveLiteral=l.Directive=l.Decorator=l.DeclaredPredicate=l.DeclareVariable=l.DeclareTypeAlias=l.DeclareOpaqueType=l.DeclareModuleExports=l.DeclareModule=l.DeclareInterface=l.DeclareFunction=l.DeclareExportDeclaration=l.DeclareExportAllDeclaration=l.DeclareClass=l.DecimalLiteral=l.DebuggerStatement=l.ContinueStatement=l.ConditionalExpression=l.ClassProperty=l.ClassPrivateProperty=l.ClassPrivateMethod=l.ClassMethod=l.ClassImplements=l.ClassExpression=l.ClassDeclaration=l.ClassBody=l.ClassAccessorProperty=l.CatchClause=l.CallExpression=l.BreakStatement=l.BooleanTypeAnnotation=l.BooleanLiteralTypeAnnotation=l.BooleanLiteral=l.BlockStatement=l.BindExpression=l.BinaryExpression=l.BigIntLiteral=l.AwaitExpression=l.AssignmentPattern=l.AssignmentExpression=l.ArrowFunctionExpression=l.ArrayTypeAnnotation=l.ArrayPattern=l.ArrayExpression=l.ArgumentPlaceholder=l.AnyTypeAnnotation=void 0;l.TSNumberKeyword=l.TSNullKeyword=l.TSNonNullExpression=l.TSNeverKeyword=l.TSNamespaceExportDeclaration=l.TSNamedTupleMember=l.TSModuleDeclaration=l.TSModuleBlock=l.TSMethodSignature=l.TSMappedType=l.TSLiteralType=l.TSIntrinsicKeyword=l.TSIntersectionType=l.TSInterfaceDeclaration=l.TSInterfaceBody=l.TSInstantiationExpression=l.TSInferType=l.TSIndexedAccessType=l.TSIndexSignature=l.TSImportType=l.TSImportEqualsDeclaration=l.TSFunctionType=l.TSExternalModuleReference=l.TSExpressionWithTypeArguments=l.TSExportAssignment=l.TSEnumMember=l.TSEnumDeclaration=l.TSEnumBody=l.TSDeclareMethod=l.TSDeclareFunction=l.TSConstructorType=l.TSConstructSignatureDeclaration=l.TSConditionalType=l.TSCallSignatureDeclaration=l.TSBooleanKeyword=l.TSBigIntKeyword=l.TSAsExpression=l.TSArrayType=l.TSAnyKeyword=l.SymbolTypeAnnotation=l.SwitchStatement=l.SwitchCase=l.Super=l.StringTypeAnnotation=l.StringLiteralTypeAnnotation=l.StringLiteral=l.StaticBlock=l.SpreadProperty=l.SpreadElement=l.SequenceExpression=l.ReturnStatement=l.RestProperty=l.RestElement=l.RegexLiteral=l.RegExpLiteral=l.RecordExpression=l.QualifiedTypeIdentifier=l.Program=l.PrivateName=l.Placeholder=l.PipelineTopicExpression=l.PipelinePrimaryTopicReference=l.PipelineBareFunction=l.ParenthesizedExpression=l.OptionalMemberExpression=l.OptionalIndexedAccessType=l.OptionalCallExpression=l.OpaqueType=l.ObjectTypeSpreadProperty=l.ObjectTypeProperty=l.ObjectTypeInternalSlot=l.ObjectTypeIndexer=l.ObjectTypeCallProperty=l.ObjectTypeAnnotation=l.ObjectProperty=l.ObjectPattern=l.ObjectMethod=l.ObjectExpression=l.NumericLiteral=l.NumberTypeAnnotation=l.NumberLiteralTypeAnnotation=l.NumberLiteral=l.NullableTypeAnnotation=l.NullLiteralTypeAnnotation=l.NullLiteral=l.Noop=l.NewExpression=l.ModuleExpression=l.MixedTypeAnnotation=l.MetaProperty=l.MemberExpression=l.LogicalExpression=l.LabeledStatement=l.JSXText=l.JSXSpreadChild=l.JSXSpreadAttribute=l.JSXOpeningFragment=l.JSXOpeningElement=l.JSXNamespacedName=l.JSXMemberExpression=void 0;l.YieldExpression=l.WithStatement=l.WhileStatement=l.VoidTypeAnnotation=l.VoidPattern=l.Variance=l.VariableDeclarator=l.VariableDeclaration=l.V8IntrinsicIdentifier=l.UpdateExpression=l.UnionTypeAnnotation=l.UnaryExpression=l.TypeofTypeAnnotation=l.TypeParameterInstantiation=l.TypeParameterDeclaration=l.TypeParameter=l.TypeCastExpression=l.TypeAnnotation=l.TypeAlias=l.TupleTypeAnnotation=l.TupleExpression=l.TryStatement=l.TopicReference=l.ThrowStatement=l.ThisTypeAnnotation=l.ThisExpression=l.TemplateLiteral=l.TemplateElement=l.TaggedTemplateExpression=l.TSVoidKeyword=l.TSUnknownKeyword=l.TSUnionType=l.TSUndefinedKeyword=l.TSTypeReference=l.TSTypeQuery=l.TSTypePredicate=l.TSTypeParameterInstantiation=l.TSTypeParameterDeclaration=l.TSTypeParameter=l.TSTypeOperator=l.TSTypeLiteral=l.TSTypeAssertion=l.TSTypeAnnotation=l.TSTypeAliasDeclaration=l.TSTupleType=l.TSThisType=l.TSTemplateLiteralType=l.TSSymbolKeyword=l.TSStringKeyword=l.TSSatisfiesExpression=l.TSRestType=l.TSQualifiedName=l.TSPropertySignature=l.TSParenthesizedType=l.TSParameterProperty=l.TSOptionalType=l.TSObjectKeyword=void 0;var dt=f;function S(t){return dt[t]}l.ArrayExpression=S("arrayExpression");l.AssignmentExpression=S("assignmentExpression");l.BinaryExpression=S("binaryExpression");l.InterpreterDirective=S("interpreterDirective");l.Directive=S("directive");l.DirectiveLiteral=S("directiveLiteral");l.BlockStatement=S("blockStatement");l.BreakStatement=S("breakStatement");l.CallExpression=S("callExpression");l.CatchClause=S("catchClause");l.ConditionalExpression=S("conditionalExpression");l.ContinueStatement=S("continueStatement");l.DebuggerStatement=S("debuggerStatement");l.DoWhileStatement=S("doWhileStatement");l.EmptyStatement=S("emptyStatement");l.ExpressionStatement=S("expressionStatement");l.File=S("file");l.ForInStatement=S("forInStatement");l.ForStatement=S("forStatement");l.FunctionDeclaration=S("functionDeclaration");l.FunctionExpression=S("functionExpression");l.Identifier=S("identifier");l.IfStatement=S("ifStatement");l.LabeledStatement=S("labeledStatement");l.StringLiteral=S("stringLiteral");l.NumericLiteral=S("numericLiteral");l.NullLiteral=S("nullLiteral");l.BooleanLiteral=S("booleanLiteral");l.RegExpLiteral=S("regExpLiteral");l.LogicalExpression=S("logicalExpression");l.MemberExpression=S("memberExpression");l.NewExpression=S("newExpression");l.Program=S("program");l.ObjectExpression=S("objectExpression");l.ObjectMethod=S("objectMethod");l.ObjectProperty=S("objectProperty");l.RestElement=S("restElement");l.ReturnStatement=S("returnStatement");l.SequenceExpression=S("sequenceExpression");l.ParenthesizedExpression=S("parenthesizedExpression");l.SwitchCase=S("switchCase");l.SwitchStatement=S("switchStatement");l.ThisExpression=S("thisExpression");l.ThrowStatement=S("throwStatement");l.TryStatement=S("tryStatement");l.UnaryExpression=S("unaryExpression");l.UpdateExpression=S("updateExpression");l.VariableDeclaration=S("variableDeclaration");l.VariableDeclarator=S("variableDeclarator");l.WhileStatement=S("whileStatement");l.WithStatement=S("withStatement");l.AssignmentPattern=S("assignmentPattern");l.ArrayPattern=S("arrayPattern");l.ArrowFunctionExpression=S("arrowFunctionExpression");l.ClassBody=S("classBody");l.ClassExpression=S("classExpression");l.ClassDeclaration=S("classDeclaration");l.ExportAllDeclaration=S("exportAllDeclaration");l.ExportDefaultDeclaration=S("exportDefaultDeclaration");l.ExportNamedDeclaration=S("exportNamedDeclaration");l.ExportSpecifier=S("exportSpecifier");l.ForOfStatement=S("forOfStatement");l.ImportDeclaration=S("importDeclaration");l.ImportDefaultSpecifier=S("importDefaultSpecifier");l.ImportNamespaceSpecifier=S("importNamespaceSpecifier");l.ImportSpecifier=S("importSpecifier");l.ImportExpression=S("importExpression");l.MetaProperty=S("metaProperty");l.ClassMethod=S("classMethod");l.ObjectPattern=S("objectPattern");l.SpreadElement=S("spreadElement");l.Super=S("super");l.TaggedTemplateExpression=S("taggedTemplateExpression");l.TemplateElement=S("templateElement");l.TemplateLiteral=S("templateLiteral");l.YieldExpression=S("yieldExpression");l.AwaitExpression=S("awaitExpression");l.Import=S("import");l.BigIntLiteral=S("bigIntLiteral");l.ExportNamespaceSpecifier=S("exportNamespaceSpecifier");l.OptionalMemberExpression=S("optionalMemberExpression");l.OptionalCallExpression=S("optionalCallExpression");l.ClassProperty=S("classProperty");l.ClassAccessorProperty=S("classAccessorProperty");l.ClassPrivateProperty=S("classPrivateProperty");l.ClassPrivateMethod=S("classPrivateMethod");l.PrivateName=S("privateName");l.StaticBlock=S("staticBlock");l.ImportAttribute=S("importAttribute");l.AnyTypeAnnotation=S("anyTypeAnnotation");l.ArrayTypeAnnotation=S("arrayTypeAnnotation");l.BooleanTypeAnnotation=S("booleanTypeAnnotation");l.BooleanLiteralTypeAnnotation=S("booleanLiteralTypeAnnotation");l.NullLiteralTypeAnnotation=S("nullLiteralTypeAnnotation");l.ClassImplements=S("classImplements");l.DeclareClass=S("declareClass");l.DeclareFunction=S("declareFunction");l.DeclareInterface=S("declareInterface");l.DeclareModule=S("declareModule");l.DeclareModuleExports=S("declareModuleExports");l.DeclareTypeAlias=S("declareTypeAlias");l.DeclareOpaqueType=S("declareOpaqueType");l.DeclareVariable=S("declareVariable");l.DeclareExportDeclaration=S("declareExportDeclaration");l.DeclareExportAllDeclaration=S("declareExportAllDeclaration");l.DeclaredPredicate=S("declaredPredicate");l.ExistsTypeAnnotation=S("existsTypeAnnotation");l.FunctionTypeAnnotation=S("functionTypeAnnotation");l.FunctionTypeParam=S("functionTypeParam");l.GenericTypeAnnotation=S("genericTypeAnnotation");l.InferredPredicate=S("inferredPredicate");l.InterfaceExtends=S("interfaceExtends");l.InterfaceDeclaration=S("interfaceDeclaration");l.InterfaceTypeAnnotation=S("interfaceTypeAnnotation");l.IntersectionTypeAnnotation=S("intersectionTypeAnnotation");l.MixedTypeAnnotation=S("mixedTypeAnnotation");l.EmptyTypeAnnotation=S("emptyTypeAnnotation");l.NullableTypeAnnotation=S("nullableTypeAnnotation");l.NumberLiteralTypeAnnotation=S("numberLiteralTypeAnnotation");l.NumberTypeAnnotation=S("numberTypeAnnotation");l.ObjectTypeAnnotation=S("objectTypeAnnotation");l.ObjectTypeInternalSlot=S("objectTypeInternalSlot");l.ObjectTypeCallProperty=S("objectTypeCallProperty");l.ObjectTypeIndexer=S("objectTypeIndexer");l.ObjectTypeProperty=S("objectTypeProperty");l.ObjectTypeSpreadProperty=S("objectTypeSpreadProperty");l.OpaqueType=S("opaqueType");l.QualifiedTypeIdentifier=S("qualifiedTypeIdentifier");l.StringLiteralTypeAnnotation=S("stringLiteralTypeAnnotation");l.StringTypeAnnotation=S("stringTypeAnnotation");l.SymbolTypeAnnotation=S("symbolTypeAnnotation");l.ThisTypeAnnotation=S("thisTypeAnnotation");l.TupleTypeAnnotation=S("tupleTypeAnnotation");l.TypeofTypeAnnotation=S("typeofTypeAnnotation");l.TypeAlias=S("typeAlias");l.TypeAnnotation=S("typeAnnotation");l.TypeCastExpression=S("typeCastExpression");l.TypeParameter=S("typeParameter");l.TypeParameterDeclaration=S("typeParameterDeclaration");l.TypeParameterInstantiation=S("typeParameterInstantiation");l.UnionTypeAnnotation=S("unionTypeAnnotation");l.Variance=S("variance");l.VoidTypeAnnotation=S("voidTypeAnnotation");l.EnumDeclaration=S("enumDeclaration");l.EnumBooleanBody=S("enumBooleanBody");l.EnumNumberBody=S("enumNumberBody");l.EnumStringBody=S("enumStringBody");l.EnumSymbolBody=S("enumSymbolBody");l.EnumBooleanMember=S("enumBooleanMember");l.EnumNumberMember=S("enumNumberMember");l.EnumStringMember=S("enumStringMember");l.EnumDefaultedMember=S("enumDefaultedMember");l.IndexedAccessType=S("indexedAccessType");l.OptionalIndexedAccessType=S("optionalIndexedAccessType");l.JSXAttribute=S("jsxAttribute");l.JSXClosingElement=S("jsxClosingElement");l.JSXElement=S("jsxElement");l.JSXEmptyExpression=S("jsxEmptyExpression");l.JSXExpressionContainer=S("jsxExpressionContainer");l.JSXSpreadChild=S("jsxSpreadChild");l.JSXIdentifier=S("jsxIdentifier");l.JSXMemberExpression=S("jsxMemberExpression");l.JSXNamespacedName=S("jsxNamespacedName");l.JSXOpeningElement=S("jsxOpeningElement");l.JSXSpreadAttribute=S("jsxSpreadAttribute");l.JSXText=S("jsxText");l.JSXFragment=S("jsxFragment");l.JSXOpeningFragment=S("jsxOpeningFragment");l.JSXClosingFragment=S("jsxClosingFragment");l.Noop=S("noop");l.Placeholder=S("placeholder");l.V8IntrinsicIdentifier=S("v8IntrinsicIdentifier");l.ArgumentPlaceholder=S("argumentPlaceholder");l.BindExpression=S("bindExpression");l.Decorator=S("decorator");l.DoExpression=S("doExpression");l.ExportDefaultSpecifier=S("exportDefaultSpecifier");l.RecordExpression=S("recordExpression");l.TupleExpression=S("tupleExpression");l.DecimalLiteral=S("decimalLiteral");l.ModuleExpression=S("moduleExpression");l.TopicReference=S("topicReference");l.PipelineTopicExpression=S("pipelineTopicExpression");l.PipelineBareFunction=S("pipelineBareFunction");l.PipelinePrimaryTopicReference=S("pipelinePrimaryTopicReference");l.VoidPattern=S("voidPattern");l.TSParameterProperty=S("tsParameterProperty");l.TSDeclareFunction=S("tsDeclareFunction");l.TSDeclareMethod=S("tsDeclareMethod");l.TSQualifiedName=S("tsQualifiedName");l.TSCallSignatureDeclaration=S("tsCallSignatureDeclaration");l.TSConstructSignatureDeclaration=S("tsConstructSignatureDeclaration");l.TSPropertySignature=S("tsPropertySignature");l.TSMethodSignature=S("tsMethodSignature");l.TSIndexSignature=S("tsIndexSignature");l.TSAnyKeyword=S("tsAnyKeyword");l.TSBooleanKeyword=S("tsBooleanKeyword");l.TSBigIntKeyword=S("tsBigIntKeyword");l.TSIntrinsicKeyword=S("tsIntrinsicKeyword");l.TSNeverKeyword=S("tsNeverKeyword");l.TSNullKeyword=S("tsNullKeyword");l.TSNumberKeyword=S("tsNumberKeyword");l.TSObjectKeyword=S("tsObjectKeyword");l.TSStringKeyword=S("tsStringKeyword");l.TSSymbolKeyword=S("tsSymbolKeyword");l.TSUndefinedKeyword=S("tsUndefinedKeyword");l.TSUnknownKeyword=S("tsUnknownKeyword");l.TSVoidKeyword=S("tsVoidKeyword");l.TSThisType=S("tsThisType");l.TSFunctionType=S("tsFunctionType");l.TSConstructorType=S("tsConstructorType");l.TSTypeReference=S("tsTypeReference");l.TSTypePredicate=S("tsTypePredicate");l.TSTypeQuery=S("tsTypeQuery");l.TSTypeLiteral=S("tsTypeLiteral");l.TSArrayType=S("tsArrayType");l.TSTupleType=S("tsTupleType");l.TSOptionalType=S("tsOptionalType");l.TSRestType=S("tsRestType");l.TSNamedTupleMember=S("tsNamedTupleMember");l.TSUnionType=S("tsUnionType");l.TSIntersectionType=S("tsIntersectionType");l.TSConditionalType=S("tsConditionalType");l.TSInferType=S("tsInferType");l.TSParenthesizedType=S("tsParenthesizedType");l.TSTypeOperator=S("tsTypeOperator");l.TSIndexedAccessType=S("tsIndexedAccessType");l.TSMappedType=S("tsMappedType");l.TSTemplateLiteralType=S("tsTemplateLiteralType");l.TSLiteralType=S("tsLiteralType");l.TSExpressionWithTypeArguments=S("tsExpressionWithTypeArguments");l.TSInterfaceDeclaration=S("tsInterfaceDeclaration");l.TSInterfaceBody=S("tsInterfaceBody");l.TSTypeAliasDeclaration=S("tsTypeAliasDeclaration");l.TSInstantiationExpression=S("tsInstantiationExpression");l.TSAsExpression=S("tsAsExpression");l.TSSatisfiesExpression=S("tsSatisfiesExpression");l.TSTypeAssertion=S("tsTypeAssertion");l.TSEnumBody=S("tsEnumBody");l.TSEnumDeclaration=S("tsEnumDeclaration");l.TSEnumMember=S("tsEnumMember");l.TSModuleDeclaration=S("tsModuleDeclaration");l.TSModuleBlock=S("tsModuleBlock");l.TSImportType=S("tsImportType");l.TSImportEqualsDeclaration=S("tsImportEqualsDeclaration");l.TSExternalModuleReference=S("tsExternalModuleReference");l.TSNonNullExpression=S("tsNonNullExpression");l.TSExportAssignment=S("tsExportAssignment");l.TSNamespaceExportDeclaration=S("tsNamespaceExportDeclaration");l.TSTypeAnnotation=S("tsTypeAnnotation");l.TSTypeParameterInstantiation=S("tsTypeParameterInstantiation");l.TSTypeParameterDeclaration=S("tsTypeParameterDeclaration");l.TSTypeParameter=S("tsTypeParameter");l.NumberLiteral=dt.numberLiteral;l.RegexLiteral=dt.regexLiteral;l.RestProperty=dt.restProperty;l.SpreadProperty=dt.spreadProperty;(function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=f;Object.keys(e).forEach(function(s){s==="default"||s==="__esModule"||s in t&&t[s]===e[s]||Object.defineProperty(t,s,{enumerable:!0,get:function(){return e[s]}})});var r=l;Object.keys(r).forEach(function(s){s==="default"||s==="__esModule"||s in t&&t[s]===r[s]||Object.defineProperty(t,s,{enumerable:!0,get:function(){return r[s]}})})})(ue);var Pi;function c0(){if(Pi)return Et;Pi=1,Object.defineProperty(Et,"__esModule",{value:!0}),Et.default=r;var t=ue,e=_s();function r(s,i){const a=s.value.split(/\r\n|\n|\r/);let n=0;for(let u=0;u<a.length;u++)/[^ \t]/.exec(a[u])&&(n=u);let o="";for(let u=0;u<a.length;u++){const p=a[u],h=u===0,E=u===a.length-1,I=u===n;let A=p.replace(/\t/g," ");h||(A=A.replace(/^ +/,"")),E||(A=A.replace(/ +$/,"")),A&&(I||(A+=" "),o+=A)}o&&i.push((0,e.inherits)((0,t.stringLiteral)(o),s))}return Et}var gi;function p0(){if(gi)return bt;gi=1,Object.defineProperty(bt,"__esModule",{value:!0}),bt.default=r;var t=d,e=c0();function r(s){const i=[];for(let a=0;a<s.children.length;a++){let n=s.children[a];if((0,t.isJSXText)(n)){(0,e.default)(n,i);continue}(0,t.isJSXExpressionContainer)(n)&&(n=n.expression),!(0,t.isJSXEmptyExpression)(n)&&i.push(n)}return i}return bt}var is={},zt={};Object.defineProperty(zt,"__esModule",{value:!0});zt.default=d0;var f0=de();function d0(t){return!!(t&&f0.VISITOR_KEYS[t.type])}Object.defineProperty(is,"__esModule",{value:!0});is.default=y0;var h0=zt;function y0(t){if(!(0,h0.default)(t)){var e;const r=(e=t==null?void 0:t.type)!=null?e:JSON.stringify(t);throw new TypeError(`Not a valid node of type "${r}"`)}}var y={};Object.defineProperty(y,"__esModule",{value:!0});y.assertAccessor=_g;y.assertAnyTypeAnnotation=Qx;y.assertArgumentPlaceholder=CE;y.assertArrayExpression=T0;y.assertArrayPattern=yx;y.assertArrayTypeAnnotation=Zx;y.assertArrowFunctionExpression=mx;y.assertAssignmentExpression=S0;y.assertAssignmentPattern=hx;y.assertAwaitExpression=jx;y.assertBigIntLiteral=Ux;y.assertBinary=rg;y.assertBinaryExpression=x0;y.assertBindExpression=NE;y.assertBlock=ag;y.assertBlockParent=ig;y.assertBlockStatement=g0;y.assertBooleanLiteral=Y0;y.assertBooleanLiteralTypeAnnotation=tb;y.assertBooleanTypeAnnotation=eb;y.assertBreakStatement=A0;y.assertCallExpression=I0;y.assertCatchClause=v0;y.assertClass=Dg;y.assertClassAccessorProperty=Jx;y.assertClassBody=Tx;y.assertClassDeclaration=xx;y.assertClassExpression=Sx;y.assertClassImplements=sb;y.assertClassMethod=Dx;y.assertClassPrivateMethod=Wx;y.assertClassPrivateProperty=qx;y.assertClassProperty=Xx;y.assertCompletionStatement=lg;y.assertConditional=ug;y.assertConditionalExpression=C0;y.assertContinueStatement=N0;y.assertDebuggerStatement=w0;y.assertDecimalLiteral=ME;y.assertDeclaration=Sg;y.assertDeclareClass=ib;y.assertDeclareExportAllDeclaration=db;y.assertDeclareExportDeclaration=fb;y.assertDeclareFunction=ab;y.assertDeclareInterface=nb;y.assertDeclareModule=ob;y.assertDeclareModuleExports=lb;y.assertDeclareOpaqueType=cb;y.assertDeclareTypeAlias=ub;y.assertDeclareVariable=pb;y.assertDeclaredPredicate=hb;y.assertDecorator=wE;y.assertDirective=E0;y.assertDirectiveLiteral=P0;y.assertDoExpression=OE;y.assertDoWhileStatement=O0;y.assertEmptyStatement=D0;y.assertEmptyTypeAnnotation=Ib;y.assertEnumBody=Vg;y.assertEnumBooleanBody=Zb;y.assertEnumBooleanMember=sE;y.assertEnumDeclaration=Qb;y.assertEnumDefaultedMember=nE;y.assertEnumMember=$g;y.assertEnumNumberBody=eE;y.assertEnumNumberMember=iE;y.assertEnumStringBody=tE;y.assertEnumStringMember=aE;y.assertEnumSymbolBody=rE;y.assertExistsTypeAnnotation=yb;y.assertExportAllDeclaration=bx;y.assertExportDeclaration=kg;y.assertExportDefaultDeclaration=Ex;y.assertExportDefaultSpecifier=DE;y.assertExportNamedDeclaration=Px;y.assertExportNamespaceSpecifier=Vx;y.assertExportSpecifier=gx;y.assertExpression=tg;y.assertExpressionStatement=L0;y.assertExpressionWrapper=fg;y.assertFile=k0;y.assertFlow=Fg;y.assertFlowBaseAnnotation=jg;y.assertFlowDeclaration=Kg;y.assertFlowPredicate=Ug;y.assertFlowType=Rg;y.assertFor=dg;y.assertForInStatement=M0;y.assertForOfStatement=Ax;y.assertForStatement=_0;y.assertForXStatement=hg;y.assertFunction=yg;y.assertFunctionDeclaration=B0;y.assertFunctionExpression=F0;y.assertFunctionParameter=xg;y.assertFunctionParent=mg;y.assertFunctionTypeAnnotation=mb;y.assertFunctionTypeParam=Tb;y.assertGenericTypeAnnotation=Sb;y.assertIdentifier=R0;y.assertIfStatement=j0;y.assertImmutable=Ag;y.assertImport=Kx;y.assertImportAttribute=Gx;y.assertImportDeclaration=Ix;y.assertImportDefaultSpecifier=vx;y.assertImportExpression=wx;y.assertImportNamespaceSpecifier=Cx;y.assertImportOrExportDeclaration=Lg;y.assertImportSpecifier=Nx;y.assertIndexedAccessType=oE;y.assertInferredPredicate=xb;y.assertInterfaceDeclaration=Eb;y.assertInterfaceExtends=bb;y.assertInterfaceTypeAnnotation=Pb;y.assertInterpreterDirective=b0;y.assertIntersectionTypeAnnotation=gb;y.assertJSX=Yg;y.assertJSXAttribute=uE;y.assertJSXClosingElement=cE;y.assertJSXClosingFragment=gE;y.assertJSXElement=pE;y.assertJSXEmptyExpression=fE;y.assertJSXExpressionContainer=dE;y.assertJSXFragment=EE;y.assertJSXIdentifier=yE;y.assertJSXMemberExpression=mE;y.assertJSXNamespacedName=TE;y.assertJSXOpeningElement=SE;y.assertJSXOpeningFragment=PE;y.assertJSXSpreadAttribute=xE;y.assertJSXSpreadChild=hE;y.assertJSXText=bE;y.assertLVal=Eg;y.assertLabeledStatement=K0;y.assertLiteral=gg;y.assertLogicalExpression=J0;y.assertLoop=cg;y.assertMemberExpression=q0;y.assertMetaProperty=Ox;y.assertMethod=vg;y.assertMiscellaneous=Xg;y.assertMixedTypeAnnotation=Ab;y.assertModuleDeclaration=eA;y.assertModuleExpression=_E;y.assertModuleSpecifier=Mg;y.assertNewExpression=W0;y.assertNoop=AE;y.assertNullLiteral=$0;y.assertNullLiteralTypeAnnotation=rb;y.assertNullableTypeAnnotation=vb;y.assertNumberLiteral=zg;y.assertNumberLiteralTypeAnnotation=Cb;y.assertNumberTypeAnnotation=Nb;y.assertNumericLiteral=V0;y.assertObjectExpression=z0;y.assertObjectMember=Cg;y.assertObjectMethod=G0;y.assertObjectPattern=Lx;y.assertObjectProperty=Q0;y.assertObjectTypeAnnotation=wb;y.assertObjectTypeCallProperty=Db;y.assertObjectTypeIndexer=Lb;y.assertObjectTypeInternalSlot=Ob;y.assertObjectTypeProperty=kb;y.assertObjectTypeSpreadProperty=Mb;y.assertOpaqueType=_b;y.assertOptionalCallExpression=Yx;y.assertOptionalIndexedAccessType=lE;y.assertOptionalMemberExpression=$x;y.assertParenthesizedExpression=rx;y.assertPattern=Og;y.assertPatternLike=bg;y.assertPipelineBareFunction=RE;y.assertPipelinePrimaryTopicReference=jE;y.assertPipelineTopicExpression=FE;y.assertPlaceholder=IE;y.assertPrivate=Bg;y.assertPrivateName=Hx;y.assertProgram=H0;y.assertProperty=Ng;y.assertPureish=Tg;y.assertQualifiedTypeIdentifier=Bb;y.assertRecordExpression=LE;y.assertRegExpLiteral=X0;y.assertRegexLiteral=Gg;y.assertRestElement=Z0;y.assertRestProperty=Qg;y.assertReturnStatement=ex;y.assertScopable=sg;y.assertSequenceExpression=tx;y.assertSpreadElement=kx;y.assertSpreadProperty=Zg;y.assertStandardized=eg;y.assertStatement=ng;y.assertStaticBlock=zx;y.assertStringLiteral=U0;y.assertStringLiteralTypeAnnotation=Fb;y.assertStringTypeAnnotation=Rb;y.assertSuper=Mx;y.assertSwitchCase=sx;y.assertSwitchStatement=ix;y.assertSymbolTypeAnnotation=jb;y.assertTSAnyKeyword=zE;y.assertTSArrayType=mP;y.assertTSAsExpression=BP;y.assertTSBaseType=Hg;y.assertTSBigIntKeyword=QE;y.assertTSBooleanKeyword=GE;y.assertTSCallSignatureDeclaration=XE;y.assertTSConditionalType=gP;y.assertTSConstructSignatureDeclaration=JE;y.assertTSConstructorType=pP;y.assertTSDeclareFunction=VE;y.assertTSDeclareMethod=$E;y.assertTSEntityName=Pg;y.assertTSEnumBody=jP;y.assertTSEnumDeclaration=KP;y.assertTSEnumMember=UP;y.assertTSExportAssignment=WP;y.assertTSExpressionWithTypeArguments=DP;y.assertTSExternalModuleReference=JP;y.assertTSFunctionType=cP;y.assertTSImportEqualsDeclaration=XP;y.assertTSImportType=YP;y.assertTSIndexSignature=HE;y.assertTSIndexedAccessType=CP;y.assertTSInferType=AP;y.assertTSInstantiationExpression=_P;y.assertTSInterfaceBody=kP;y.assertTSInterfaceDeclaration=LP;y.assertTSIntersectionType=PP;y.assertTSIntrinsicKeyword=ZE;y.assertTSLiteralType=OP;y.assertTSMappedType=NP;y.assertTSMethodSignature=WE;y.assertTSModuleBlock=$P;y.assertTSModuleDeclaration=VP;y.assertTSNamedTupleMember=bP;y.assertTSNamespaceExportDeclaration=HP;y.assertTSNeverKeyword=eP;y.assertTSNonNullExpression=qP;y.assertTSNullKeyword=tP;y.assertTSNumberKeyword=rP;y.assertTSObjectKeyword=sP;y.assertTSOptionalType=SP;y.assertTSParameterProperty=UE;y.assertTSParenthesizedType=IP;y.assertTSPropertySignature=qE;y.assertTSQualifiedName=YE;y.assertTSRestType=xP;y.assertTSSatisfiesExpression=FP;y.assertTSStringKeyword=iP;y.assertTSSymbolKeyword=aP;y.assertTSTemplateLiteralType=wP;y.assertTSThisType=uP;y.assertTSTupleType=TP;y.assertTSType=Wg;y.assertTSTypeAliasDeclaration=MP;y.assertTSTypeAnnotation=zP;y.assertTSTypeAssertion=RP;y.assertTSTypeElement=qg;y.assertTSTypeLiteral=yP;y.assertTSTypeOperator=vP;y.assertTSTypeParameter=ZP;y.assertTSTypeParameterDeclaration=QP;y.assertTSTypeParameterInstantiation=GP;y.assertTSTypePredicate=dP;y.assertTSTypeQuery=hP;y.assertTSTypeReference=fP;y.assertTSUndefinedKeyword=nP;y.assertTSUnionType=EP;y.assertTSUnknownKeyword=oP;y.assertTSVoidKeyword=lP;y.assertTaggedTemplateExpression=_x;y.assertTemplateElement=Bx;y.assertTemplateLiteral=Fx;y.assertTerminatorless=og;y.assertThisExpression=ax;y.assertThisTypeAnnotation=Kb;y.assertThrowStatement=nx;y.assertTopicReference=BE;y.assertTryStatement=ox;y.assertTupleExpression=kE;y.assertTupleTypeAnnotation=Ub;y.assertTypeAlias=$b;y.assertTypeAnnotation=Yb;y.assertTypeCastExpression=Xb;y.assertTypeParameter=Jb;y.assertTypeParameterDeclaration=qb;y.assertTypeParameterInstantiation=Wb;y.assertTypeScript=Jg;y.assertTypeofTypeAnnotation=Vb;y.assertUnaryExpression=lx;y.assertUnaryLike=wg;y.assertUnionTypeAnnotation=Hb;y.assertUpdateExpression=ux;y.assertUserWhitespacable=Ig;y.assertV8IntrinsicIdentifier=vE;y.assertVariableDeclaration=cx;y.assertVariableDeclarator=px;y.assertVariance=zb;y.assertVoidPattern=KE;y.assertVoidTypeAnnotation=Gb;y.assertWhile=pg;y.assertWhileStatement=fx;y.assertWithStatement=dx;y.assertYieldExpression=Rx;var m0=ct(),ht=Je;function m(t,e,r){if(!(0,m0.default)(t,e,r))throw new Error(`Expected type "${t}" with option ${JSON.stringify(r)}, but instead got "${e.type}".`)}function T0(t,e){m("ArrayExpression",t,e)}function S0(t,e){m("AssignmentExpression",t,e)}function x0(t,e){m("BinaryExpression",t,e)}function b0(t,e){m("InterpreterDirective",t,e)}function E0(t,e){m("Directive",t,e)}function P0(t,e){m("DirectiveLiteral",t,e)}function g0(t,e){m("BlockStatement",t,e)}function A0(t,e){m("BreakStatement",t,e)}function I0(t,e){m("CallExpression",t,e)}function v0(t,e){m("CatchClause",t,e)}function C0(t,e){m("ConditionalExpression",t,e)}function N0(t,e){m("ContinueStatement",t,e)}function w0(t,e){m("DebuggerStatement",t,e)}function O0(t,e){m("DoWhileStatement",t,e)}function D0(t,e){m("EmptyStatement",t,e)}function L0(t,e){m("ExpressionStatement",t,e)}function k0(t,e){m("File",t,e)}function M0(t,e){m("ForInStatement",t,e)}function _0(t,e){m("ForStatement",t,e)}function B0(t,e){m("FunctionDeclaration",t,e)}function F0(t,e){m("FunctionExpression",t,e)}function R0(t,e){m("Identifier",t,e)}function j0(t,e){m("IfStatement",t,e)}function K0(t,e){m("LabeledStatement",t,e)}function U0(t,e){m("StringLiteral",t,e)}function V0(t,e){m("NumericLiteral",t,e)}function $0(t,e){m("NullLiteral",t,e)}function Y0(t,e){m("BooleanLiteral",t,e)}function X0(t,e){m("RegExpLiteral",t,e)}function J0(t,e){m("LogicalExpression",t,e)}function q0(t,e){m("MemberExpression",t,e)}function W0(t,e){m("NewExpression",t,e)}function H0(t,e){m("Program",t,e)}function z0(t,e){m("ObjectExpression",t,e)}function G0(t,e){m("ObjectMethod",t,e)}function Q0(t,e){m("ObjectProperty",t,e)}function Z0(t,e){m("RestElement",t,e)}function ex(t,e){m("ReturnStatement",t,e)}function tx(t,e){m("SequenceExpression",t,e)}function rx(t,e){m("ParenthesizedExpression",t,e)}function sx(t,e){m("SwitchCase",t,e)}function ix(t,e){m("SwitchStatement",t,e)}function ax(t,e){m("ThisExpression",t,e)}function nx(t,e){m("ThrowStatement",t,e)}function ox(t,e){m("TryStatement",t,e)}function lx(t,e){m("UnaryExpression",t,e)}function ux(t,e){m("UpdateExpression",t,e)}function cx(t,e){m("VariableDeclaration",t,e)}function px(t,e){m("VariableDeclarator",t,e)}function fx(t,e){m("WhileStatement",t,e)}function dx(t,e){m("WithStatement",t,e)}function hx(t,e){m("AssignmentPattern",t,e)}function yx(t,e){m("ArrayPattern",t,e)}function mx(t,e){m("ArrowFunctionExpression",t,e)}function Tx(t,e){m("ClassBody",t,e)}function Sx(t,e){m("ClassExpression",t,e)}function xx(t,e){m("ClassDeclaration",t,e)}function bx(t,e){m("ExportAllDeclaration",t,e)}function Ex(t,e){m("ExportDefaultDeclaration",t,e)}function Px(t,e){m("ExportNamedDeclaration",t,e)}function gx(t,e){m("ExportSpecifier",t,e)}function Ax(t,e){m("ForOfStatement",t,e)}function Ix(t,e){m("ImportDeclaration",t,e)}function vx(t,e){m("ImportDefaultSpecifier",t,e)}function Cx(t,e){m("ImportNamespaceSpecifier",t,e)}function Nx(t,e){m("ImportSpecifier",t,e)}function wx(t,e){m("ImportExpression",t,e)}function Ox(t,e){m("MetaProperty",t,e)}function Dx(t,e){m("ClassMethod",t,e)}function Lx(t,e){m("ObjectPattern",t,e)}function kx(t,e){m("SpreadElement",t,e)}function Mx(t,e){m("Super",t,e)}function _x(t,e){m("TaggedTemplateExpression",t,e)}function Bx(t,e){m("TemplateElement",t,e)}function Fx(t,e){m("TemplateLiteral",t,e)}function Rx(t,e){m("YieldExpression",t,e)}function jx(t,e){m("AwaitExpression",t,e)}function Kx(t,e){m("Import",t,e)}function Ux(t,e){m("BigIntLiteral",t,e)}function Vx(t,e){m("ExportNamespaceSpecifier",t,e)}function $x(t,e){m("OptionalMemberExpression",t,e)}function Yx(t,e){m("OptionalCallExpression",t,e)}function Xx(t,e){m("ClassProperty",t,e)}function Jx(t,e){m("ClassAccessorProperty",t,e)}function qx(t,e){m("ClassPrivateProperty",t,e)}function Wx(t,e){m("ClassPrivateMethod",t,e)}function Hx(t,e){m("PrivateName",t,e)}function zx(t,e){m("StaticBlock",t,e)}function Gx(t,e){m("ImportAttribute",t,e)}function Qx(t,e){m("AnyTypeAnnotation",t,e)}function Zx(t,e){m("ArrayTypeAnnotation",t,e)}function eb(t,e){m("BooleanTypeAnnotation",t,e)}function tb(t,e){m("BooleanLiteralTypeAnnotation",t,e)}function rb(t,e){m("NullLiteralTypeAnnotation",t,e)}function sb(t,e){m("ClassImplements",t,e)}function ib(t,e){m("DeclareClass",t,e)}function ab(t,e){m("DeclareFunction",t,e)}function nb(t,e){m("DeclareInterface",t,e)}function ob(t,e){m("DeclareModule",t,e)}function lb(t,e){m("DeclareModuleExports",t,e)}function ub(t,e){m("DeclareTypeAlias",t,e)}function cb(t,e){m("DeclareOpaqueType",t,e)}function pb(t,e){m("DeclareVariable",t,e)}function fb(t,e){m("DeclareExportDeclaration",t,e)}function db(t,e){m("DeclareExportAllDeclaration",t,e)}function hb(t,e){m("DeclaredPredicate",t,e)}function yb(t,e){m("ExistsTypeAnnotation",t,e)}function mb(t,e){m("FunctionTypeAnnotation",t,e)}function Tb(t,e){m("FunctionTypeParam",t,e)}function Sb(t,e){m("GenericTypeAnnotation",t,e)}function xb(t,e){m("InferredPredicate",t,e)}function bb(t,e){m("InterfaceExtends",t,e)}function Eb(t,e){m("InterfaceDeclaration",t,e)}function Pb(t,e){m("InterfaceTypeAnnotation",t,e)}function gb(t,e){m("IntersectionTypeAnnotation",t,e)}function Ab(t,e){m("MixedTypeAnnotation",t,e)}function Ib(t,e){m("EmptyTypeAnnotation",t,e)}function vb(t,e){m("NullableTypeAnnotation",t,e)}function Cb(t,e){m("NumberLiteralTypeAnnotation",t,e)}function Nb(t,e){m("NumberTypeAnnotation",t,e)}function wb(t,e){m("ObjectTypeAnnotation",t,e)}function Ob(t,e){m("ObjectTypeInternalSlot",t,e)}function Db(t,e){m("ObjectTypeCallProperty",t,e)}function Lb(t,e){m("ObjectTypeIndexer",t,e)}function kb(t,e){m("ObjectTypeProperty",t,e)}function Mb(t,e){m("ObjectTypeSpreadProperty",t,e)}function _b(t,e){m("OpaqueType",t,e)}function Bb(t,e){m("QualifiedTypeIdentifier",t,e)}function Fb(t,e){m("StringLiteralTypeAnnotation",t,e)}function Rb(t,e){m("StringTypeAnnotation",t,e)}function jb(t,e){m("SymbolTypeAnnotation",t,e)}function Kb(t,e){m("ThisTypeAnnotation",t,e)}function Ub(t,e){m("TupleTypeAnnotation",t,e)}function Vb(t,e){m("TypeofTypeAnnotation",t,e)}function $b(t,e){m("TypeAlias",t,e)}function Yb(t,e){m("TypeAnnotation",t,e)}function Xb(t,e){m("TypeCastExpression",t,e)}function Jb(t,e){m("TypeParameter",t,e)}function qb(t,e){m("TypeParameterDeclaration",t,e)}function Wb(t,e){m("TypeParameterInstantiation",t,e)}function Hb(t,e){m("UnionTypeAnnotation",t,e)}function zb(t,e){m("Variance",t,e)}function Gb(t,e){m("VoidTypeAnnotation",t,e)}function Qb(t,e){m("EnumDeclaration",t,e)}function Zb(t,e){m("EnumBooleanBody",t,e)}function eE(t,e){m("EnumNumberBody",t,e)}function tE(t,e){m("EnumStringBody",t,e)}function rE(t,e){m("EnumSymbolBody",t,e)}function sE(t,e){m("EnumBooleanMember",t,e)}function iE(t,e){m("EnumNumberMember",t,e)}function aE(t,e){m("EnumStringMember",t,e)}function nE(t,e){m("EnumDefaultedMember",t,e)}function oE(t,e){m("IndexedAccessType",t,e)}function lE(t,e){m("OptionalIndexedAccessType",t,e)}function uE(t,e){m("JSXAttribute",t,e)}function cE(t,e){m("JSXClosingElement",t,e)}function pE(t,e){m("JSXElement",t,e)}function fE(t,e){m("JSXEmptyExpression",t,e)}function dE(t,e){m("JSXExpressionContainer",t,e)}function hE(t,e){m("JSXSpreadChild",t,e)}function yE(t,e){m("JSXIdentifier",t,e)}function mE(t,e){m("JSXMemberExpression",t,e)}function TE(t,e){m("JSXNamespacedName",t,e)}function SE(t,e){m("JSXOpeningElement",t,e)}function xE(t,e){m("JSXSpreadAttribute",t,e)}function bE(t,e){m("JSXText",t,e)}function EE(t,e){m("JSXFragment",t,e)}function PE(t,e){m("JSXOpeningFragment",t,e)}function gE(t,e){m("JSXClosingFragment",t,e)}function AE(t,e){m("Noop",t,e)}function IE(t,e){m("Placeholder",t,e)}function vE(t,e){m("V8IntrinsicIdentifier",t,e)}function CE(t,e){m("ArgumentPlaceholder",t,e)}function NE(t,e){m("BindExpression",t,e)}function wE(t,e){m("Decorator",t,e)}function OE(t,e){m("DoExpression",t,e)}function DE(t,e){m("ExportDefaultSpecifier",t,e)}function LE(t,e){m("RecordExpression",t,e)}function kE(t,e){m("TupleExpression",t,e)}function ME(t,e){m("DecimalLiteral",t,e)}function _E(t,e){m("ModuleExpression",t,e)}function BE(t,e){m("TopicReference",t,e)}function FE(t,e){m("PipelineTopicExpression",t,e)}function RE(t,e){m("PipelineBareFunction",t,e)}function jE(t,e){m("PipelinePrimaryTopicReference",t,e)}function KE(t,e){m("VoidPattern",t,e)}function UE(t,e){m("TSParameterProperty",t,e)}function VE(t,e){m("TSDeclareFunction",t,e)}function $E(t,e){m("TSDeclareMethod",t,e)}function YE(t,e){m("TSQualifiedName",t,e)}function XE(t,e){m("TSCallSignatureDeclaration",t,e)}function JE(t,e){m("TSConstructSignatureDeclaration",t,e)}function qE(t,e){m("TSPropertySignature",t,e)}function WE(t,e){m("TSMethodSignature",t,e)}function HE(t,e){m("TSIndexSignature",t,e)}function zE(t,e){m("TSAnyKeyword",t,e)}function GE(t,e){m("TSBooleanKeyword",t,e)}function QE(t,e){m("TSBigIntKeyword",t,e)}function ZE(t,e){m("TSIntrinsicKeyword",t,e)}function eP(t,e){m("TSNeverKeyword",t,e)}function tP(t,e){m("TSNullKeyword",t,e)}function rP(t,e){m("TSNumberKeyword",t,e)}function sP(t,e){m("TSObjectKeyword",t,e)}function iP(t,e){m("TSStringKeyword",t,e)}function aP(t,e){m("TSSymbolKeyword",t,e)}function nP(t,e){m("TSUndefinedKeyword",t,e)}function oP(t,e){m("TSUnknownKeyword",t,e)}function lP(t,e){m("TSVoidKeyword",t,e)}function uP(t,e){m("TSThisType",t,e)}function cP(t,e){m("TSFunctionType",t,e)}function pP(t,e){m("TSConstructorType",t,e)}function fP(t,e){m("TSTypeReference",t,e)}function dP(t,e){m("TSTypePredicate",t,e)}function hP(t,e){m("TSTypeQuery",t,e)}function yP(t,e){m("TSTypeLiteral",t,e)}function mP(t,e){m("TSArrayType",t,e)}function TP(t,e){m("TSTupleType",t,e)}function SP(t,e){m("TSOptionalType",t,e)}function xP(t,e){m("TSRestType",t,e)}function bP(t,e){m("TSNamedTupleMember",t,e)}function EP(t,e){m("TSUnionType",t,e)}function PP(t,e){m("TSIntersectionType",t,e)}function gP(t,e){m("TSConditionalType",t,e)}function AP(t,e){m("TSInferType",t,e)}function IP(t,e){m("TSParenthesizedType",t,e)}function vP(t,e){m("TSTypeOperator",t,e)}function CP(t,e){m("TSIndexedAccessType",t,e)}function NP(t,e){m("TSMappedType",t,e)}function wP(t,e){m("TSTemplateLiteralType",t,e)}function OP(t,e){m("TSLiteralType",t,e)}function DP(t,e){m("TSExpressionWithTypeArguments",t,e)}function LP(t,e){m("TSInterfaceDeclaration",t,e)}function kP(t,e){m("TSInterfaceBody",t,e)}function MP(t,e){m("TSTypeAliasDeclaration",t,e)}function _P(t,e){m("TSInstantiationExpression",t,e)}function BP(t,e){m("TSAsExpression",t,e)}function FP(t,e){m("TSSatisfiesExpression",t,e)}function RP(t,e){m("TSTypeAssertion",t,e)}function jP(t,e){m("TSEnumBody",t,e)}function KP(t,e){m("TSEnumDeclaration",t,e)}function UP(t,e){m("TSEnumMember",t,e)}function VP(t,e){m("TSModuleDeclaration",t,e)}function $P(t,e){m("TSModuleBlock",t,e)}function YP(t,e){m("TSImportType",t,e)}function XP(t,e){m("TSImportEqualsDeclaration",t,e)}function JP(t,e){m("TSExternalModuleReference",t,e)}function qP(t,e){m("TSNonNullExpression",t,e)}function WP(t,e){m("TSExportAssignment",t,e)}function HP(t,e){m("TSNamespaceExportDeclaration",t,e)}function zP(t,e){m("TSTypeAnnotation",t,e)}function GP(t,e){m("TSTypeParameterInstantiation",t,e)}function QP(t,e){m("TSTypeParameterDeclaration",t,e)}function ZP(t,e){m("TSTypeParameter",t,e)}function eg(t,e){m("Standardized",t,e)}function tg(t,e){m("Expression",t,e)}function rg(t,e){m("Binary",t,e)}function sg(t,e){m("Scopable",t,e)}function ig(t,e){m("BlockParent",t,e)}function ag(t,e){m("Block",t,e)}function ng(t,e){m("Statement",t,e)}function og(t,e){m("Terminatorless",t,e)}function lg(t,e){m("CompletionStatement",t,e)}function ug(t,e){m("Conditional",t,e)}function cg(t,e){m("Loop",t,e)}function pg(t,e){m("While",t,e)}function fg(t,e){m("ExpressionWrapper",t,e)}function dg(t,e){m("For",t,e)}function hg(t,e){m("ForXStatement",t,e)}function yg(t,e){m("Function",t,e)}function mg(t,e){m("FunctionParent",t,e)}function Tg(t,e){m("Pureish",t,e)}function Sg(t,e){m("Declaration",t,e)}function xg(t,e){m("FunctionParameter",t,e)}function bg(t,e){m("PatternLike",t,e)}function Eg(t,e){m("LVal",t,e)}function Pg(t,e){m("TSEntityName",t,e)}function gg(t,e){m("Literal",t,e)}function Ag(t,e){m("Immutable",t,e)}function Ig(t,e){m("UserWhitespacable",t,e)}function vg(t,e){m("Method",t,e)}function Cg(t,e){m("ObjectMember",t,e)}function Ng(t,e){m("Property",t,e)}function wg(t,e){m("UnaryLike",t,e)}function Og(t,e){m("Pattern",t,e)}function Dg(t,e){m("Class",t,e)}function Lg(t,e){m("ImportOrExportDeclaration",t,e)}function kg(t,e){m("ExportDeclaration",t,e)}function Mg(t,e){m("ModuleSpecifier",t,e)}function _g(t,e){m("Accessor",t,e)}function Bg(t,e){m("Private",t,e)}function Fg(t,e){m("Flow",t,e)}function Rg(t,e){m("FlowType",t,e)}function jg(t,e){m("FlowBaseAnnotation",t,e)}function Kg(t,e){m("FlowDeclaration",t,e)}function Ug(t,e){m("FlowPredicate",t,e)}function Vg(t,e){m("EnumBody",t,e)}function $g(t,e){m("EnumMember",t,e)}function Yg(t,e){m("JSX",t,e)}function Xg(t,e){m("Miscellaneous",t,e)}function Jg(t,e){m("TypeScript",t,e)}function qg(t,e){m("TSTypeElement",t,e)}function Wg(t,e){m("TSType",t,e)}function Hg(t,e){m("TSBaseType",t,e)}function zg(t,e){(0,ht.default)("assertNumberLiteral","assertNumericLiteral"),m("NumberLiteral",t,e)}function Gg(t,e){(0,ht.default)("assertRegexLiteral","assertRegExpLiteral"),m("RegexLiteral",t,e)}function Qg(t,e){(0,ht.default)("assertRestProperty","assertRestElement"),m("RestProperty",t,e)}function Zg(t,e){(0,ht.default)("assertSpreadProperty","assertSpreadElement"),m("SpreadProperty",t,e)}function eA(t,e){(0,ht.default)("assertModuleDeclaration","assertImportOrExportDeclaration"),m("ModuleDeclaration",t,e)}var Gt={};Object.defineProperty(Gt,"__esModule",{value:!0});Gt.default=void 0;var pe=ue;Gt.default=tA;function tA(t){switch(t){case"string":return(0,pe.stringTypeAnnotation)();case"number":return(0,pe.numberTypeAnnotation)();case"undefined":return(0,pe.voidTypeAnnotation)();case"boolean":return(0,pe.booleanTypeAnnotation)();case"function":return(0,pe.genericTypeAnnotation)((0,pe.identifier)("Function"));case"object":return(0,pe.genericTypeAnnotation)((0,pe.identifier)("Object"));case"symbol":return(0,pe.genericTypeAnnotation)((0,pe.identifier)("Symbol"));case"bigint":return(0,pe.anyTypeAnnotation)()}throw new Error("Invalid typeof value: "+t)}var as={},Qt={};Object.defineProperty(Qt,"__esModule",{value:!0});Qt.default=ba;var st=d;function xa(t){return(0,st.isIdentifier)(t)?t.name:`${t.id.name}.${xa(t.qualification)}`}function ba(t){const e=Array.from(t),r=new Map,s=new Map,i=new Set,a=[];for(let n=0;n<e.length;n++){const o=e[n];if(o&&!a.includes(o)){if((0,st.isAnyTypeAnnotation)(o))return[o];if((0,st.isFlowBaseAnnotation)(o)){s.set(o.type,o);continue}if((0,st.isUnionTypeAnnotation)(o)){i.has(o.types)||(e.push(...o.types),i.add(o.types));continue}if((0,st.isGenericTypeAnnotation)(o)){const u=xa(o.id);if(r.has(u)){let p=r.get(u);p.typeParameters?o.typeParameters&&(p.typeParameters.params.push(...o.typeParameters.params),p.typeParameters.params=ba(p.typeParameters.params)):p=o.typeParameters}else r.set(u,o);continue}a.push(o)}}for(const[,n]of s)a.push(n);for(const[,n]of r)a.push(n);return a}Object.defineProperty(as,"__esModule",{value:!0});as.default=iA;var rA=ue,sA=Qt;function iA(t){const e=(0,sA.default)(t);return e.length===1?e[0]:(0,rA.unionTypeAnnotation)(e)}var ns={},os={};Object.defineProperty(os,"__esModule",{value:!0});os.default=Pa;var $e=d;function Ea(t){return(0,$e.isIdentifier)(t)?t.name:(0,$e.isThisExpression)(t)?"this":`${t.right.name}.${Ea(t.left)}`}function Pa(t){const e=Array.from(t),r=new Map,s=new Map,i=new Set,a=[];for(let n=0;n<e.length;n++){const o=e[n];if(!o||a.includes(o))continue;if((0,$e.isTSAnyKeyword)(o))return[o];if((0,$e.isTSBaseType)(o)){s.set(o.type,o);continue}if((0,$e.isTSUnionType)(o)){i.has(o.types)||(e.push(...o.types),i.add(o.types));continue}const u="typeParameters";if((0,$e.isTSTypeReference)(o)&&o[u]){const p=o[u],h=Ea(o.typeName);if(r.has(h)){let E=r.get(h);const I=E[u];I?(I.params.push(...p.params),I.params=Pa(I.params)):E=p}else r.set(h,o);continue}a.push(o)}for(const[,n]of s)a.push(n);for(const[,n]of r)a.push(n);return a}Object.defineProperty(ns,"__esModule",{value:!0});ns.default=lA;var aA=ue,nA=os,oA=d;function lA(t){const e=t.map(s=>(0,oA.isTSTypeAnnotation)(s)?s.typeAnnotation:s),r=(0,nA.default)(e);return r.length===1?r[0]:(0,aA.tsUnionType)(r)}var Zt={};Object.defineProperty(Zt,"__esModule",{value:!0});Zt.buildUndefinedNode=uA;var Ai=ue;function uA(){return(0,Ai.unaryExpression)("void",(0,Ai.numericLiteral)(0),!0)}var Ae={};Object.defineProperty(Ae,"__esModule",{value:!0});Ae.default=cA;var Ii=de(),vi=d;const{hasOwn:he}={hasOwn:Function.call.bind(Object.prototype.hasOwnProperty)};function Ci(t,e,r,s){return t&&typeof t.type=="string"?ga(t,e,r,s):t}function Nr(t,e,r,s){return Array.isArray(t)?t.map(i=>Ci(i,e,r,s)):Ci(t,e,r,s)}function cA(t,e=!0,r=!1){return ga(t,e,r,new Map)}function ga(t,e=!0,r=!1,s){if(!t)return t;const{type:i}=t,a={type:t.type};if((0,vi.isIdentifier)(t))a.name=t.name,he(t,"optional")&&typeof t.optional=="boolean"&&(a.optional=t.optional),he(t,"typeAnnotation")&&(a.typeAnnotation=e?Nr(t.typeAnnotation,!0,r,s):t.typeAnnotation),he(t,"decorators")&&(a.decorators=e?Nr(t.decorators,!0,r,s):t.decorators);else if(he(Ii.NODE_FIELDS,i))for(const n of Object.keys(Ii.NODE_FIELDS[i]))he(t,n)&&(e?a[n]=(0,vi.isFile)(t)&&n==="comments"?vt(t.comments,e,r,s):Nr(t[n],!0,r,s):a[n]=t[n]);else throw new Error(`Unknown node type: "${i}"`);return he(t,"loc")&&(r?a.loc=null:a.loc=t.loc),he(t,"leadingComments")&&(a.leadingComments=vt(t.leadingComments,e,r,s)),he(t,"innerComments")&&(a.innerComments=vt(t.innerComments,e,r,s)),he(t,"trailingComments")&&(a.trailingComments=vt(t.trailingComments,e,r,s)),he(t,"extra")&&(a.extra=Object.assign({},t.extra)),a}function vt(t,e,r,s){return!t||!e?t:t.map(i=>{const a=s.get(i);if(a)return a;const{type:n,value:o,loc:u}=i,p={type:n,value:o,loc:u};return r&&(p.loc=null),s.set(i,p),p})}var ls={};Object.defineProperty(ls,"__esModule",{value:!0});ls.default=fA;var pA=Ae;function fA(t){return(0,pA.default)(t,!1)}var us={};Object.defineProperty(us,"__esModule",{value:!0});us.default=hA;var dA=Ae;function hA(t){return(0,dA.default)(t)}var cs={};Object.defineProperty(cs,"__esModule",{value:!0});cs.default=mA;var yA=Ae;function mA(t){return(0,yA.default)(t,!0,!0)}var ps={};Object.defineProperty(ps,"__esModule",{value:!0});ps.default=SA;var TA=Ae;function SA(t){return(0,TA.default)(t,!1,!0)}var fs={},er={};Object.defineProperty(er,"__esModule",{value:!0});er.default=xA;function xA(t,e,r){if(!r||!t)return t;const s=`${e}Comments`;return t[s]?e==="leading"?t[s]=r.concat(t[s]):t[s].push(...r):t[s]=r,t}Object.defineProperty(fs,"__esModule",{value:!0});fs.default=EA;var bA=er;function EA(t,e,r,s){return(0,bA.default)(t,e,[{type:s?"CommentLine":"CommentBlock",value:r}])}var tr={},yt={};Object.defineProperty(yt,"__esModule",{value:!0});yt.default=PA;function PA(t,e,r){e&&r&&(e[t]=Array.from(new Set([].concat(e[t],r[t]).filter(Boolean))))}Object.defineProperty(tr,"__esModule",{value:!0});tr.default=AA;var gA=yt;function AA(t,e){(0,gA.default)("innerComments",t,e)}var rr={};Object.defineProperty(rr,"__esModule",{value:!0});rr.default=vA;var IA=yt;function vA(t,e){(0,IA.default)("leadingComments",t,e)}var sr={},ir={};Object.defineProperty(ir,"__esModule",{value:!0});ir.default=NA;var CA=yt;function NA(t,e){(0,CA.default)("trailingComments",t,e)}Object.defineProperty(sr,"__esModule",{value:!0});sr.default=LA;var wA=ir,OA=rr,DA=tr;function LA(t,e){return(0,wA.default)(t,e),(0,OA.default)(t,e),(0,DA.default)(t,e),t}var ds={};Object.defineProperty(ds,"__esModule",{value:!0});ds.default=MA;var kA=U;function MA(t){return kA.COMMENT_KEYS.forEach(e=>{t[e]=null}),t}var N={};Object.defineProperty(N,"__esModule",{value:!0});N.WHILE_TYPES=N.USERWHITESPACABLE_TYPES=N.UNARYLIKE_TYPES=N.TYPESCRIPT_TYPES=N.TSTYPE_TYPES=N.TSTYPEELEMENT_TYPES=N.TSENTITYNAME_TYPES=N.TSBASETYPE_TYPES=N.TERMINATORLESS_TYPES=N.STATEMENT_TYPES=N.STANDARDIZED_TYPES=N.SCOPABLE_TYPES=N.PUREISH_TYPES=N.PROPERTY_TYPES=N.PRIVATE_TYPES=N.PATTERN_TYPES=N.PATTERNLIKE_TYPES=N.OBJECTMEMBER_TYPES=N.MODULESPECIFIER_TYPES=N.MODULEDECLARATION_TYPES=N.MISCELLANEOUS_TYPES=N.METHOD_TYPES=N.LVAL_TYPES=N.LOOP_TYPES=N.LITERAL_TYPES=N.JSX_TYPES=N.IMPORTOREXPORTDECLARATION_TYPES=N.IMMUTABLE_TYPES=N.FUNCTION_TYPES=N.FUNCTIONPARENT_TYPES=N.FUNCTIONPARAMETER_TYPES=N.FOR_TYPES=N.FORXSTATEMENT_TYPES=N.FLOW_TYPES=N.FLOWTYPE_TYPES=N.FLOWPREDICATE_TYPES=N.FLOWDECLARATION_TYPES=N.FLOWBASEANNOTATION_TYPES=N.EXPRESSION_TYPES=N.EXPRESSIONWRAPPER_TYPES=N.EXPORTDECLARATION_TYPES=N.ENUMMEMBER_TYPES=N.ENUMBODY_TYPES=N.DECLARATION_TYPES=N.CONDITIONAL_TYPES=N.COMPLETIONSTATEMENT_TYPES=N.CLASS_TYPES=N.BLOCK_TYPES=N.BLOCKPARENT_TYPES=N.BINARY_TYPES=N.ACCESSOR_TYPES=void 0;var F=de();N.STANDARDIZED_TYPES=F.FLIPPED_ALIAS_KEYS.Standardized;N.EXPRESSION_TYPES=F.FLIPPED_ALIAS_KEYS.Expression;N.BINARY_TYPES=F.FLIPPED_ALIAS_KEYS.Binary;N.SCOPABLE_TYPES=F.FLIPPED_ALIAS_KEYS.Scopable;N.BLOCKPARENT_TYPES=F.FLIPPED_ALIAS_KEYS.BlockParent;N.BLOCK_TYPES=F.FLIPPED_ALIAS_KEYS.Block;N.STATEMENT_TYPES=F.FLIPPED_ALIAS_KEYS.Statement;N.TERMINATORLESS_TYPES=F.FLIPPED_ALIAS_KEYS.Terminatorless;N.COMPLETIONSTATEMENT_TYPES=F.FLIPPED_ALIAS_KEYS.CompletionStatement;N.CONDITIONAL_TYPES=F.FLIPPED_ALIAS_KEYS.Conditional;N.LOOP_TYPES=F.FLIPPED_ALIAS_KEYS.Loop;N.WHILE_TYPES=F.FLIPPED_ALIAS_KEYS.While;N.EXPRESSIONWRAPPER_TYPES=F.FLIPPED_ALIAS_KEYS.ExpressionWrapper;N.FOR_TYPES=F.FLIPPED_ALIAS_KEYS.For;N.FORXSTATEMENT_TYPES=F.FLIPPED_ALIAS_KEYS.ForXStatement;N.FUNCTION_TYPES=F.FLIPPED_ALIAS_KEYS.Function;N.FUNCTIONPARENT_TYPES=F.FLIPPED_ALIAS_KEYS.FunctionParent;N.PUREISH_TYPES=F.FLIPPED_ALIAS_KEYS.Pureish;N.DECLARATION_TYPES=F.FLIPPED_ALIAS_KEYS.Declaration;N.FUNCTIONPARAMETER_TYPES=F.FLIPPED_ALIAS_KEYS.FunctionParameter;N.PATTERNLIKE_TYPES=F.FLIPPED_ALIAS_KEYS.PatternLike;N.LVAL_TYPES=F.FLIPPED_ALIAS_KEYS.LVal;N.TSENTITYNAME_TYPES=F.FLIPPED_ALIAS_KEYS.TSEntityName;N.LITERAL_TYPES=F.FLIPPED_ALIAS_KEYS.Literal;N.IMMUTABLE_TYPES=F.FLIPPED_ALIAS_KEYS.Immutable;N.USERWHITESPACABLE_TYPES=F.FLIPPED_ALIAS_KEYS.UserWhitespacable;N.METHOD_TYPES=F.FLIPPED_ALIAS_KEYS.Method;N.OBJECTMEMBER_TYPES=F.FLIPPED_ALIAS_KEYS.ObjectMember;N.PROPERTY_TYPES=F.FLIPPED_ALIAS_KEYS.Property;N.UNARYLIKE_TYPES=F.FLIPPED_ALIAS_KEYS.UnaryLike;N.PATTERN_TYPES=F.FLIPPED_ALIAS_KEYS.Pattern;N.CLASS_TYPES=F.FLIPPED_ALIAS_KEYS.Class;const _A=N.IMPORTOREXPORTDECLARATION_TYPES=F.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration;N.EXPORTDECLARATION_TYPES=F.FLIPPED_ALIAS_KEYS.ExportDeclaration;N.MODULESPECIFIER_TYPES=F.FLIPPED_ALIAS_KEYS.ModuleSpecifier;N.ACCESSOR_TYPES=F.FLIPPED_ALIAS_KEYS.Accessor;N.PRIVATE_TYPES=F.FLIPPED_ALIAS_KEYS.Private;N.FLOW_TYPES=F.FLIPPED_ALIAS_KEYS.Flow;N.FLOWTYPE_TYPES=F.FLIPPED_ALIAS_KEYS.FlowType;N.FLOWBASEANNOTATION_TYPES=F.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation;N.FLOWDECLARATION_TYPES=F.FLIPPED_ALIAS_KEYS.FlowDeclaration;N.FLOWPREDICATE_TYPES=F.FLIPPED_ALIAS_KEYS.FlowPredicate;N.ENUMBODY_TYPES=F.FLIPPED_ALIAS_KEYS.EnumBody;N.ENUMMEMBER_TYPES=F.FLIPPED_ALIAS_KEYS.EnumMember;N.JSX_TYPES=F.FLIPPED_ALIAS_KEYS.JSX;N.MISCELLANEOUS_TYPES=F.FLIPPED_ALIAS_KEYS.Miscellaneous;N.TYPESCRIPT_TYPES=F.FLIPPED_ALIAS_KEYS.TypeScript;N.TSTYPEELEMENT_TYPES=F.FLIPPED_ALIAS_KEYS.TSTypeElement;N.TSTYPE_TYPES=F.FLIPPED_ALIAS_KEYS.TSType;N.TSBASETYPE_TYPES=F.FLIPPED_ALIAS_KEYS.TSBaseType;N.MODULEDECLARATION_TYPES=_A;var hs={},ar={};Object.defineProperty(ar,"__esModule",{value:!0});ar.default=BA;var Ct=d,wr=ue;function BA(t,e){if((0,Ct.isBlockStatement)(t))return t;let r=[];return(0,Ct.isEmptyStatement)(t)?r=[]:((0,Ct.isStatement)(t)||((0,Ct.isFunction)(e)?t=(0,wr.returnStatement)(t):t=(0,wr.expressionStatement)(t)),r=[t]),(0,wr.blockStatement)(r)}Object.defineProperty(hs,"__esModule",{value:!0});hs.default=RA;var FA=ar;function RA(t,e="body"){const r=(0,FA.default)(t[e],t);return t[e]=r,r}var ys={},nr={};Object.defineProperty(nr,"__esModule",{value:!0});nr.default=UA;var jA=Re,KA=Jt;function UA(t){t=t+"";let e="";for(const r of t)e+=(0,KA.isIdentifierChar)(r.codePointAt(0))?r:"-";return e=e.replace(/^[-0-9]+/,""),e=e.replace(/[-\s]+(.)?/g,function(r,s){return s?s.toUpperCase():""}),(0,jA.default)(e)||(e=`_${e}`),e||"_"}Object.defineProperty(ys,"__esModule",{value:!0});ys.default=$A;var VA=nr;function $A(t){return t=(0,VA.default)(t),(t==="eval"||t==="arguments")&&(t="_"+t),t}var ms={};Object.defineProperty(ms,"__esModule",{value:!0});ms.default=JA;var YA=d,XA=ue;function JA(t,e=t.key||t.property){return!t.computed&&(0,YA.isIdentifier)(e)&&(e=(0,XA.stringLiteral)(e.name)),e}var or={};Object.defineProperty(or,"__esModule",{value:!0});or.default=void 0;var et=d;or.default=qA;function qA(t){if((0,et.isExpressionStatement)(t)&&(t=t.expression),(0,et.isExpression)(t))return t;if((0,et.isClass)(t)?(t.type="ClassExpression",t.abstract=!1):(0,et.isFunction)(t)&&(t.type="FunctionExpression"),!(0,et.isExpression)(t))throw new Error(`cannot turn ${t.type} to an expression`);return t}var Ts={},lr={},ur={};Object.defineProperty(ur,"__esModule",{value:!0});ur.default=ot;var WA=de();const Aa=Symbol(),Ia=Symbol();function ot(t,e,r){if(!t)return!1;const s=WA.VISITOR_KEYS[t.type];if(!s)return!1;r=r||{};const i=e(t,r);if(i!==void 0)switch(i){case Aa:return!1;case Ia:return!0}for(const a of s){const n=t[a];if(n){if(Array.isArray(n)){for(const o of n)if(ot(o,e,r))return!0}else if(ot(n,e,r))return!0}}return!1}ot.skip=Aa;ot.stop=Ia;var cr={};Object.defineProperty(cr,"__esModule",{value:!0});cr.default=GA;var HA=U;const va=["tokens","start","end","loc","raw","rawValue"],zA=[...HA.COMMENT_KEYS,"comments",...va];function GA(t,e={}){const r=e.preserveComments?va:zA;for(const i of r)t[i]!=null&&(t[i]=void 0);for(const i of Object.keys(t))i[0]==="_"&&t[i]!=null&&(t[i]=void 0);const s=Object.getOwnPropertySymbols(t);for(const i of s)t[i]=null}Object.defineProperty(lr,"__esModule",{value:!0});lr.default=e1;var QA=ur,ZA=cr;function e1(t,e){return(0,QA.default)(t,ZA.default,e),t}Object.defineProperty(Ts,"__esModule",{value:!0});Ts.default=Fe;var Ni=d,t1=Ae,r1=lr;function Fe(t,e=t.key){let r;return t.kind==="method"?Fe.increment()+"":((0,Ni.isIdentifier)(e)?r=e.name:(0,Ni.isStringLiteral)(e)?r=JSON.stringify(e.value):r=JSON.stringify((0,r1.default)((0,t1.default)(e))),t.computed&&(r=`[${r}]`),t.static&&(r=`static:${r}`),r)}Fe.uid=0;Fe.increment=function(){return Fe.uid>=Number.MAX_SAFE_INTEGER?Fe.uid=0:Fe.uid++};var pr={};Object.defineProperty(pr,"__esModule",{value:!0});pr.default=void 0;var Nt=d,s1=ue;pr.default=i1;function i1(t,e){if((0,Nt.isStatement)(t))return t;let r=!1,s;if((0,Nt.isClass)(t))r=!0,s="ClassDeclaration";else if((0,Nt.isFunction)(t))r=!0,s="FunctionDeclaration";else if((0,Nt.isAssignmentExpression)(t))return(0,s1.expressionStatement)(t);if(r&&!t.id&&(s=!1),!s){if(e)return!1;throw new Error(`cannot turn ${t.type} to a statement`)}return t.type=s,t}var fr={};Object.defineProperty(fr,"__esModule",{value:!0});fr.default=void 0;var a1=Re,re=ue;fr.default=Fr;const n1=Function.call.bind(Object.prototype.toString);function o1(t){return n1(t)==="[object RegExp]"}function l1(t){if(typeof t!="object"||t===null||Object.prototype.toString.call(t)!=="[object Object]")return!1;const e=Object.getPrototypeOf(t);return e===null||Object.getPrototypeOf(e)===null}function Fr(t){if(t===void 0)return(0,re.identifier)("undefined");if(t===!0||t===!1)return(0,re.booleanLiteral)(t);if(t===null)return(0,re.nullLiteral)();if(typeof t=="string")return(0,re.stringLiteral)(t);if(typeof t=="number"){let e;if(Number.isFinite(t))e=(0,re.numericLiteral)(Math.abs(t));else{let r;Number.isNaN(t)?r=(0,re.numericLiteral)(0):r=(0,re.numericLiteral)(1),e=(0,re.binaryExpression)("/",r,(0,re.numericLiteral)(0))}return(t<0||Object.is(t,-0))&&(e=(0,re.unaryExpression)("-",e)),e}if(typeof t=="bigint")return t<0?(0,re.unaryExpression)("-",(0,re.bigIntLiteral)(-t)):(0,re.bigIntLiteral)(t);if(o1(t)){const e=t.source,r=/\/([a-z]*)$/.exec(t.toString())[1];return(0,re.regExpLiteral)(e,r)}if(Array.isArray(t))return(0,re.arrayExpression)(t.map(Fr));if(l1(t)){const e=[];for(const r of Object.keys(t)){let s,i=!1;(0,a1.default)(r)?r==="__proto__"?(i=!0,s=(0,re.stringLiteral)(r)):s=(0,re.identifier)(r):s=(0,re.stringLiteral)(r),e.push((0,re.objectProperty)(s,Fr(t[r]),i))}return(0,re.objectExpression)(e)}throw new Error("don't know how to turn this value into a node")}var Ss={};Object.defineProperty(Ss,"__esModule",{value:!0});Ss.default=c1;var u1=ue;function c1(t,e,r=!1){return t.object=(0,u1.memberExpression)(t.object,t.property,t.computed),t.property=e,t.computed=!!r,t}var xs={};Object.defineProperty(xs,"__esModule",{value:!0});xs.default=f1;var wi=U,p1=sr;function f1(t,e){if(!t||!e)return t;for(const r of wi.INHERIT_KEYS.optional)t[r]==null&&(t[r]=e[r]);for(const r of Object.keys(e))r[0]==="_"&&r!=="__clone"&&(t[r]=e[r]);for(const r of wi.INHERIT_KEYS.force)t[r]=e[r];return(0,p1.default)(t,e),t}var wt={},Oi;function d1(){if(Oi)return wt;Oi=1,Object.defineProperty(wt,"__esModule",{value:!0}),wt.default=r;var t=ue,e=_s();function r(s,i){if((0,e.isSuper)(s.object))throw new Error("Cannot prepend node to super property access (`super.foo`).");return s.object=(0,t.memberExpression)(i,s.object),s}return wt}var bs={};Object.defineProperty(bs,"__esModule",{value:!0});bs.default=h1;function h1(t){const e=[].concat(t),r=Object.create(null);for(;e.length;){const s=e.pop();if(s)switch(s.type){case"ArrayPattern":e.push(...s.elements);break;case"AssignmentExpression":case"AssignmentPattern":case"ForInStatement":case"ForOfStatement":e.push(s.left);break;case"ObjectPattern":e.push(...s.properties);break;case"ObjectProperty":e.push(s.value);break;case"RestElement":case"UpdateExpression":e.push(s.argument);break;case"UnaryExpression":s.operator==="delete"&&e.push(s.argument);break;case"Identifier":r[s.name]=s;break}}return r}var qe={};Object.defineProperty(qe,"__esModule",{value:!0});qe.default=Es;var Te=d;function Es(t,e,r,s){const i=[].concat(t),a=Object.create(null);for(;i.length;){const n=i.shift();if(!n||s&&((0,Te.isAssignmentExpression)(n)||(0,Te.isUnaryExpression)(n)||(0,Te.isUpdateExpression)(n)))continue;if((0,Te.isIdentifier)(n)){e?(a[n.name]=a[n.name]||[]).push(n):a[n.name]=n;continue}if((0,Te.isExportDeclaration)(n)&&!(0,Te.isExportAllDeclaration)(n)){(0,Te.isDeclaration)(n.declaration)&&i.push(n.declaration);continue}if(r){if((0,Te.isFunctionDeclaration)(n)){i.push(n.id);continue}if((0,Te.isFunctionExpression)(n))continue}const o=Es.keys[n.type];if(o)for(let u=0;u<o.length;u++){const p=o[u],h=n[p];h&&(Array.isArray(h)?i.push(...h):i.push(h))}}return a}const y1={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"],TSImportEqualsDeclaration:["id"],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"]};Es.keys=y1;var dr={};Object.defineProperty(dr,"__esModule",{value:!0});dr.default=void 0;var m1=qe;dr.default=T1;function T1(t,e){return(0,m1.default)(t,e,!0)}var Ps={};Object.defineProperty(Ps,"__esModule",{value:!0});Ps.default=x1;var ce=d;function S1(t){return(0,ce.isNullLiteral)(t)?"null":(0,ce.isRegExpLiteral)(t)?`/${t.pattern}/${t.flags}`:(0,ce.isTemplateLiteral)(t)?t.quasis.map(e=>e.value.raw).join(""):t.value!==void 0?String(t.value):null}function Di(t){if(!t.computed||(0,ce.isLiteral)(t.key))return t.key}function x1(t,e){if("id"in t&&t.id)return{name:t.id.name,originalNode:t.id};let r="",s;if((0,ce.isObjectProperty)(e,{value:t})?s=Di(e):(0,ce.isObjectMethod)(t)||(0,ce.isClassMethod)(t)?(s=Di(t),t.kind==="get"?r="get ":t.kind==="set"&&(r="set ")):(0,ce.isVariableDeclarator)(e,{init:t})?s=e.id:(0,ce.isAssignmentExpression)(e,{operator:"=",right:t})&&(s=e.left),!s)return null;const i=(0,ce.isLiteral)(s)?S1(s):(0,ce.isIdentifier)(s)?s.name:(0,ce.isPrivateName)(s)?s.id.name:null;return i==null?null:{name:r+i,originalNode:s}}var gs={};Object.defineProperty(gs,"__esModule",{value:!0});gs.default=E1;var b1=de();function E1(t,e,r){typeof e=="function"&&(e={enter:e});const{enter:s,exit:i}=e;Rr(t,s,i,r,[])}function Rr(t,e,r,s,i){const a=b1.VISITOR_KEYS[t.type];if(a){e&&e(t,i,s);for(const n of a){const o=t[n];if(Array.isArray(o))for(let u=0;u<o.length;u++){const p=o[u];p&&(i.push({node:t,key:n,index:u}),Rr(p,e,r,s,i),i.pop())}else o&&(i.push({node:t,key:n}),Rr(o,e,r,s,i),i.pop())}r&&r(t,i,s)}}var As={};Object.defineProperty(As,"__esModule",{value:!0});As.default=g1;var P1=qe;function g1(t,e,r){if(r&&t.type==="Identifier"&&e.type==="ObjectProperty"&&r.type==="ObjectExpression")return!1;const s=P1.default.keys[e.type];if(s)for(let i=0;i<s.length;i++){const a=s[i],n=e[a];if(Array.isArray(n)){if(n.includes(t))return!0}else if(n===t)return!0}return!1}var Is={},hr={};Object.defineProperty(hr,"__esModule",{value:!0});hr.default=v1;var A1=d,I1=Symbol.for("var used to be block scoped");function v1(t){return(0,A1.isVariableDeclaration)(t)&&(t.kind!=="var"||t[I1])}Object.defineProperty(Is,"__esModule",{value:!0});Is.default=N1;var Li=d,C1=hr;function N1(t){return(0,Li.isFunctionDeclaration)(t)||(0,Li.isClassDeclaration)(t)||(0,C1.default)(t)}var vs={};Object.defineProperty(vs,"__esModule",{value:!0});vs.default=D1;var w1=es(),O1=d;function D1(t){return(0,w1.default)(t.type,"Immutable")?!0:(0,O1.isIdentifier)(t)?t.name==="undefined":!1}var Cs={};Object.defineProperty(Cs,"__esModule",{value:!0});Cs.default=jr;var ki=de();function jr(t,e){if(typeof t!="object"||typeof e!="object"||t==null||e==null)return t===e;if(t.type!==e.type)return!1;const r=Object.keys(ki.NODE_FIELDS[t.type]||t.type),s=ki.VISITOR_KEYS[t.type];for(const i of r){const a=t[i],n=e[i];if(typeof a!=typeof n)return!1;if(!(a==null&&n==null)){if(a==null||n==null)return!1;if(Array.isArray(a)){if(!Array.isArray(n)||a.length!==n.length)return!1;for(let o=0;o<a.length;o++)if(!jr(a[o],n[o]))return!1;continue}if(typeof a=="object"&&!(s!=null&&s.includes(i))){for(const o of Object.keys(a))if(a[o]!==n[o])return!1;continue}if(!jr(a,n))return!1}}return!0}var Ns={};Object.defineProperty(Ns,"__esModule",{value:!0});Ns.default=L1;function L1(t,e,r){switch(e.type){case"MemberExpression":case"OptionalMemberExpression":return e.property===t?!!e.computed:e.object===t;case"JSXMemberExpression":return e.object===t;case"VariableDeclarator":return e.init===t;case"ArrowFunctionExpression":return e.body===t;case"PrivateName":return!1;case"ClassMethod":case"ClassPrivateMethod":case"ObjectMethod":return e.key===t?!!e.computed:!1;case"ObjectProperty":return e.key===t?!!e.computed:!r||r.type!=="ObjectPattern";case"ClassProperty":case"ClassAccessorProperty":return e.key===t?!!e.computed:!0;case"ClassPrivateProperty":return e.key!==t;case"ClassDeclaration":case"ClassExpression":return e.superClass===t;case"AssignmentExpression":return e.right===t;case"AssignmentPattern":return e.right===t;case"LabeledStatement":return!1;case"CatchClause":return!1;case"RestElement":return!1;case"BreakStatement":case"ContinueStatement":return!1;case"FunctionDeclaration":case"FunctionExpression":return!1;case"ExportNamespaceSpecifier":case"ExportDefaultSpecifier":return!1;case"ExportSpecifier":return r!=null&&r.source?!1:e.local===t;case"ImportDefaultSpecifier":case"ImportNamespaceSpecifier":case"ImportSpecifier":return!1;case"ImportAttribute":return!1;case"JSXAttribute":return!1;case"ObjectPattern":case"ArrayPattern":return!1;case"MetaProperty":return!1;case"ObjectTypeProperty":return e.key!==t;case"TSEnumMember":return e.id!==t;case"TSPropertySignature":return e.key===t?!!e.computed:!0}return!0}var ws={};Object.defineProperty(ws,"__esModule",{value:!0});ws.default=k1;var Me=d;function k1(t,e){return(0,Me.isBlockStatement)(t)&&((0,Me.isFunction)(e)||(0,Me.isCatchClause)(e))?!1:(0,Me.isPattern)(t)&&((0,Me.isFunction)(e)||(0,Me.isCatchClause)(e))?!0:(0,Me.isScopable)(t)}var Os={};Object.defineProperty(Os,"__esModule",{value:!0});Os.default=M1;var Mi=d;function M1(t){return(0,Mi.isImportDefaultSpecifier)(t)||(0,Mi.isIdentifier)(t.imported||t.exported,{name:"default"})}var Ds={};Object.defineProperty(Ds,"__esModule",{value:!0});Ds.default=F1;var _1=Re;const B1=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"]);function F1(t){return(0,_1.default)(t)&&!B1.has(t)}var Ls={};Object.defineProperty(Ls,"__esModule",{value:!0});Ls.default=K1;var R1=d,j1=Symbol.for("var used to be block scoped");function K1(t){return(0,R1.isVariableDeclaration)(t,{kind:"var"})&&!t[j1]}var ks={},Ms={};Object.defineProperty(Ms,"__esModule",{value:!0});Ms.default=Mt;var U1=qe,_e=d,Or=ue,Dr=Zt,V1=Ae;function Mt(t,e){const r=[];let s=!0;for(const i of t)if((0,_e.isEmptyStatement)(i)||(s=!1),(0,_e.isExpression)(i))r.push(i);else if((0,_e.isExpressionStatement)(i))r.push(i.expression);else if((0,_e.isVariableDeclaration)(i)){if(i.kind!=="var")return;for(const a of i.declarations){const n=(0,U1.default)(a);for(const o of Object.keys(n))e.push({kind:i.kind,id:(0,V1.default)(n[o])});a.init&&r.push((0,Or.assignmentExpression)("=",a.id,a.init))}s=!0}else if((0,_e.isIfStatement)(i)){const a=i.consequent?Mt([i.consequent],e):(0,Dr.buildUndefinedNode)(),n=i.alternate?Mt([i.alternate],e):(0,Dr.buildUndefinedNode)();if(!a||!n)return;r.push((0,Or.conditionalExpression)(i.test,a,n))}else if((0,_e.isBlockStatement)(i)){const a=Mt(i.body,e);if(!a)return;r.push(a)}else if((0,_e.isEmptyStatement)(i))t.indexOf(i)===0&&(s=!0);else return;return s&&r.push((0,Dr.buildUndefinedNode)()),r.length===1?r[0]:(0,Or.sequenceExpression)(r)}Object.defineProperty(ks,"__esModule",{value:!0});ks.default=Y1;var $1=Ms;function Y1(t,e){if(!(t!=null&&t.length))return;const r=[],s=(0,$1.default)(t,r);if(s){for(const i of r)e.push(i);return s}}var _i;function _s(){return _i||(_i=1,function(t){Object.defineProperty(t,"__esModule",{value:!0});var e={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,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getAssignmentIdentifiers:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,getFunctionName:!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 nn.default}}),Object.defineProperty(t,"addComment",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(t,"addComments",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(t,"appendToMemberExpression",{enumerable:!0,get:function(){return z.default}}),Object.defineProperty(t,"assertNode",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"buildMatchMemberExpression",{enumerable:!0,get:function(){return an.default}}),Object.defineProperty(t,"clone",{enumerable:!0,get:function(){return A.default}}),Object.defineProperty(t,"cloneDeep",{enumerable:!0,get:function(){return w.default}}),Object.defineProperty(t,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return P.default}}),Object.defineProperty(t,"cloneNode",{enumerable:!0,get:function(){return I.default}}),Object.defineProperty(t,"cloneWithoutLoc",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(t,"createFlowUnionType",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"createTSUnionType",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(t,"ensureBlock",{enumerable:!0,get:function(){return Ke.default}}),Object.defineProperty(t,"getAssignmentIdentifiers",{enumerable:!0,get:function(){return Ie.default}}),Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return Ba.default}}),Object.defineProperty(t,"getFunctionName",{enumerable:!0,get:function(){return Ra.default}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return Fa.default}}),Object.defineProperty(t,"inheritInnerComments",{enumerable:!0,get:function(){return k.default}}),Object.defineProperty(t,"inheritLeadingComments",{enumerable:!0,get:function(){return R.default}}),Object.defineProperty(t,"inheritTrailingComments",{enumerable:!0,get:function(){return se.default}}),Object.defineProperty(t,"inherits",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(t,"inheritsComments",{enumerable:!0,get:function(){return Q.default}}),Object.defineProperty(t,"is",{enumerable:!0,get:function(){return Ua.default}}),Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return Va.default}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return $a.default}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return Ya.default}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return Xa.default}}),Object.defineProperty(t,"isNode",{enumerable:!0,get:function(){return Ja.default}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return qa.default}}),Object.defineProperty(t,"isPlaceholderType",{enumerable:!0,get:function(){return Wa.default}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return Ha.default}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return za.default}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return Ga.default}}),Object.defineProperty(t,"isType",{enumerable:!0,get:function(){return Qa.default}}),Object.defineProperty(t,"isValidES3Identifier",{enumerable:!0,get:function(){return Za.default}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return en.default}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return tn.default}}),Object.defineProperty(t,"matchesPattern",{enumerable:!0,get:function(){return rn.default}}),Object.defineProperty(t,"prependToMemberExpression",{enumerable:!0,get:function(){return Z.default}}),t.react=void 0,Object.defineProperty(t,"removeComments",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(t,"removeProperties",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(t,"removePropertiesDeep",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return ye.default}}),Object.defineProperty(t,"shallowEqual",{enumerable:!0,get:function(){return Ka.default}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return mr.default}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return Tr.default}}),Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return We.default}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return Sr.default}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return mt.default}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return L.default}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(t,"traverse",{enumerable:!0,get:function(){return Tt.default}}),Object.defineProperty(t,"traverseFast",{enumerable:!0,get:function(){return ja.default}}),Object.defineProperty(t,"validate",{enumerable:!0,get:function(){return sn.default}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return q.default}});var r=$t,s=Zr,i=p0(),a=is,n=y;Object.keys(n).forEach(function(D){D==="default"||D==="__esModule"||Object.prototype.hasOwnProperty.call(e,D)||D in t&&t[D]===n[D]||Object.defineProperty(t,D,{enumerable:!0,get:function(){return n[D]}})});var o=Gt,u=as,p=ns,h=Zt;Object.keys(h).forEach(function(D){D==="default"||D==="__esModule"||Object.prototype.hasOwnProperty.call(e,D)||D in t&&t[D]===h[D]||Object.defineProperty(t,D,{enumerable:!0,get:function(){return h[D]}})});var E=ue;Object.keys(E).forEach(function(D){D==="default"||D==="__esModule"||Object.prototype.hasOwnProperty.call(e,D)||D in t&&t[D]===E[D]||Object.defineProperty(t,D,{enumerable:!0,get:function(){return E[D]}})});var I=Ae,A=ls,w=us,P=cs,v=ps,g=fs,C=er,k=tr,R=rr,Q=sr,se=ir,J=ds,ae=N;Object.keys(ae).forEach(function(D){D==="default"||D==="__esModule"||Object.prototype.hasOwnProperty.call(e,D)||D in t&&t[D]===ae[D]||Object.defineProperty(t,D,{enumerable:!0,get:function(){return ae[D]}})});var le=U;Object.keys(le).forEach(function(D){D==="default"||D==="__esModule"||Object.prototype.hasOwnProperty.call(e,D)||D in t&&t[D]===le[D]||Object.defineProperty(t,D,{enumerable:!0,get:function(){return le[D]}})});var Ke=hs,mr=ys,Tr=ar,We=ms,Sr=or,mt=nr,L=Ts,K=pr,q=fr,j=de();Object.keys(j).forEach(function(D){D==="default"||D==="__esModule"||Object.prototype.hasOwnProperty.call(e,D)||D in t&&t[D]===j[D]||Object.defineProperty(t,D,{enumerable:!0,get:function(){return j[D]}})});var z=Ss,te=xs,Z=d1(),G=cr,ee=lr,ye=Qt,Ie=bs,Ba=qe,Fa=dr,Ra=Ps,Tt=gs;Object.keys(Tt).forEach(function(D){D==="default"||D==="__esModule"||Object.prototype.hasOwnProperty.call(e,D)||D in t&&t[D]===Tt[D]||Object.defineProperty(t,D,{enumerable:!0,get:function(){return Tt[D]}})});var ja=ur,Ka=lt,Ua=ct(),Va=As,$a=Is,Ya=vs,Xa=hr,Ja=zt,qa=Cs,Wa=sa(),Ha=Ns,za=ws,Ga=Os,Qa=es(),Za=Ds,en=Re,tn=Ls,rn=Xt,sn=ss(),an=Yt,xr=d;Object.keys(xr).forEach(function(D){D==="default"||D==="__esModule"||Object.prototype.hasOwnProperty.call(e,D)||D in t&&t[D]===xr[D]||Object.defineProperty(t,D,{enumerable:!0,get:function(){return xr[D]}})});var nn=Je,on=ks;t.react={isReactComponent:r.default,isCompatTag:s.default,buildChildren:i.default},t.toSequenceExpression=on.default,process.env.BABEL_TYPES_8_BREAKING&&console.warn("BABEL_TYPES_8_BREAKING is not supported anymore. Use the latest Babel 8.0.0 pre-release instead!")}(Ir)),Ir}var jt=_s();const yr=(t,e,r="lithent")=>{const s=new Set,i=new Set,a=new Map,n=new Set;for(const P of t.program.body){if(P.type==="ExportDefaultDeclaration"){const v=P.declaration;v.type==="Identifier"&&n.add(v.name),v.type==="FunctionDeclaration"&&v.id&&n.add(v.id.name)}if(!(P.type!=="ImportDeclaration"||P.importKind==="type"))for(const v of P.specifiers){if(v.type==="ImportNamespaceSpecifier"){a.set(v.local.name,P.source.value);continue}if(v.type!=="ImportSpecifier"||v.importKind==="type")continue;const g=v.imported.type==="Identifier"?v.imported.name:v.imported.value;P.source.value===r&&((g==="mount"||g==="lmount")&&s.add(v.local.name),g==="h"&&i.add(v.local.name)),[`${r}/jsx-runtime`,`${r}/jsx-dev-runtime`].includes(P.source.value)&&["jsx","jsxs","jsxDEV"].includes(g)&&i.add(v.local.name)}}const o=P=>P.type==="TSAsExpression"||P.type==="TSSatisfiesExpression"||P.type==="TSNonNullExpression"?o(P.expression):P,u=(P,v)=>{if(P.type!=="CallExpression")return!1;const g=P.callee;if(g.type==="Identifier")return(v?s:i).has(g.name);if(g.type!=="MemberExpression"||g.object.type!=="Identifier")return!1;const C=a.get(g.object.name),k=!g.computed&&g.property.type==="Identifier"?g.property.name:g.property.type==="StringLiteral"?g.property.value:"";return v?C===r&&["mount","lmount"].includes(k):C===r&&k==="h"||[`${r}/jsx-runtime`,`${r}/jsx-dev-runtime`].includes(C||"")&&["jsx","jsxs","jsxDEV"].includes(k)},p=(P,v)=>(jt.VISITOR_KEYS[P.type]??[]).some(g=>{const C=P[g];return Array.isArray(C)?C.some(k=>(k==null?void 0:k.type)&&v(k)):(C==null?void 0:C.type)&&v(C)}),h=P=>P.type==="ArrowFunctionExpression"||P.type==="FunctionExpression"||P.type==="FunctionDeclaration",E=P=>{if(!h(P))return!1;const v=P;if(v.async||v.generator)return!1;const g=new Map,C=[],k=se=>(h(se)||(se.type==="VariableDeclarator"&&se.id.type==="Identifier"&&se.init&&g.set(se.id.name,se.init),se.type==="ReturnStatement"&&se.argument&&C.push(se.argument),p(se,k)),!1);v.body.type==="BlockStatement"?k(v.body):C.push(v.body);const R=new Set,Q=se=>{var ae;const J=o(se);if(J.type==="JSXElement"||J.type==="JSXFragment"||J.type==="NullLiteral"||J.type==="BooleanLiteral"&&!J.value||u(J,!1))return!0;if(J.type==="Identifier"){if(J.name==="undefined"||((ae=v.params[1])==null?void 0:ae.type)==="Identifier"&&J.name===v.params[1].name)return!0;const le=g.get(J.name);if(!le||R.has(J.name))return!1;R.add(J.name);const Ke=Q(le);return R.delete(J.name),Ke}return h(J)?!1:J.type==="CallExpression"?J.arguments.some(le=>h(le)&&E(le)):J.type==="ConditionalExpression"?Q(J.consequent)||Q(J.alternate):J.type==="LogicalExpression"?Q(J.left)||Q(J.right):J.type==="ArrayExpression"?!J.elements.length||J.elements.some(le=>le&&Q(le)):!1};return C.some(Q)},I=(P,v)=>{const g=o(P);return u(g,!0)?!0:!/^[A-Z]/.test(v)&&v!=="default"&&!n.has(v)?!1:E(g)},A=[],w=(P,v,g,C=!1)=>{I(P,v)&&A.push({componentName:v,declarationEnd:g,start:P.start,end:P.end,declaration:C})};for(const P of t.program.body){const v=P.type==="ExportNamedDeclaration"||P.type==="ExportDefaultDeclaration"?P.declaration:P;if(v)if(v.type==="VariableDeclaration")for(const g of v.declarations)g.id.type==="Identifier"&&g.init&&w(g.init,g.id.name,P.end);else v.type==="FunctionDeclaration"&&v.id?w(v,v.id.name,P.end,!0):P.type==="ExportDefaultDeclaration"&&w(v,"default",P.end)}return A},X1=t=>{const e=new Set;for(const r of t.program.body)if(r.type==="ExportDefaultDeclaration"&&e.add("default"),r.type==="ExportNamedDeclaration"){const{declaration:s,specifiers:i}=r;if(s)if(s.type==="FunctionDeclaration"&&s.id)e.add(s.id.name);else if(s.type==="VariableDeclaration"&&s.declarations.length)for(const a of s.declarations)a.id.type==="Identifier"&&e.add(a.id.name);else s.type==="ClassDeclaration"&&s.id&&e.add(s.id.name);i!=null&&i.length&&i.forEach(a=>{a.type==="ExportSpecifier"&&a.exported.type==="Identifier"&&e.add(a.exported.name)})}return Array.from(e)},Ca=t=>{const e=new Set(["render","mount","lmount","createApp","createRoot"]);for(const r of t.program.body){if(r.type!=="ImportDeclaration")continue;const s=r.source.value;if(typeof s=="string"){if(s==="lithent"&&r.specifiers.some(a=>{if(a.type==="ImportSpecifier"&&a.imported.type==="Identifier"){const n=a.imported.name;return e.has(n)}return!1}))return!0;if(s.startsWith("lithent/")){if(r.importKind==="type")continue;return!0}}}return!1},J1=(t,e,r,s)=>{var I,A;const i=[`import { getComponentKey as __lithentGetComponentKey, mountCallback as __lithentMountCallback, componentMap as __lithentComponentMap } from '${s}';`];let a=!1,n=0,o=((I=t.program.directives.at(-1))==null?void 0:I.end)??((A=t.program.interpreter)==null?void 0:A.end)??0,u=null;for(const w of t.program.body){if(w.type==="ImportDeclaration"){n=w.end??n,u==null&&(u=w.start??null),w.source.value===r&&w.importKind!=="type"&&(a=w.specifiers.some(P=>P.type==="ImportSpecifier"&&P.importKind!=="type"&&P.imported.type==="Identifier"&&P.imported.name==="createBoundary"&&P.local.name==="__lithentCreateBoundary")||a);continue}if(w.type==="ExpressionStatement"&&w.expression.type==="StringLiteral"){const P=w;if(typeof P.directive=="string"){o=P.end??o;continue}}break}a||i.push(`import { createBoundary as __lithentCreateBoundary } from '${r}';`);const p=u??o??0,h=n||o||0;let E="";if(i.length){const w=p>0?e[p-1]:void 0,P=p>0&&w!==`
|
|
152
|
-
`;E+=P?`
|
|
153
|
-
`:"",E+=i.join(`
|
|
154
|
-
`),E+=`
|
|
155
|
-
`}return{importInsertionPos:p,blockInsertionPos:h,headerSnippet:E}},Na=(t,e,r)=>{const s=il(t,{sourceType:"module",plugins:["typescript","jsx"],ranges:!0}),i=X1(s),a=i.length>0?i:["default"],{importInsertionPos:n,blockInsertionPos:o,headerSnippet:u}=J1(s,t,e,r);return{ast:s,targetExports:a,importInsertionPos:n,blockInsertionPos:o,headerSnippet:u}},wa=t=>{const{code:e,markerRegex:r,boundaryImportSpecifier:s,tagFunctionImportSpecifier:i}=t,{ast:a,targetExports:n,importInsertionPos:o,blockInsertionPos:u,headerSnippet:p}=Na(e,s,i),h=r.exec(e),E=h!=null&&h[1]?h[1].split(",").map(A=>A.trim()).filter(Boolean):[];return{targetExports:E.length?E:n,shouldTransform:!!h||Ca(a)||yr(a,e,i).length>0,importInsertionPos:o,blockInsertionPos:u,headerSnippet:p,ast:a,match:h??null}},Oa=t=>{const{code:e,boundaryImportSpecifier:r,tagFunctionImportSpecifier:s}=t,{ast:i,targetExports:a,importInsertionPos:n,blockInsertionPos:o,headerSnippet:u}=Na(e,r,s);return{targetExports:a,shouldTransform:Ca(i)||yr(i,e,s).length>0,importInsertionPos:n,blockInsertionPos:o,headerSnippet:u,ast:i}},q1=t=>t.includes("__lithentModuleId"),Da=(t,e,r,s)=>{const i=[];for(const a of e){const n=JSON.stringify(a.componentName);a.declaration?i.push(`${a.componentName} = __lithentWrapComponent(${n}, ${a.componentName});`):(t.appendLeft(a.start,`__lithentWrapComponent(${n}, `),t.appendRight(a.end,")"))}return i.join(`
|
|
156
|
-
`)},La=(t,e,r,s="lithent")=>{const i=new Set,a=new Set;for(const u of e.program.body)if(!(u.type!=="ImportDeclaration"||u.importKind==="type"||u.source.value!==s))for(const p of u.specifiers)p.type==="ImportNamespaceSpecifier"&&a.add(p.local.name),p.type==="ImportSpecifier"&&p.importKind!=="type"&&p.imported.type==="Identifier"&&p.imported.name==="render"&&i.add(p.local.name);const n=[],o=u=>{if(!jt.isFunction(u)){if(u.type==="CallExpression"){const p=u.callee;if(p.type==="Identifier"&&i.has(p.name)||p.type==="MemberExpression"&&!p.computed&&p.object.type==="Identifier"&&a.has(p.object.name)&&p.property.type==="Identifier"&&p.property.name==="render"){n.push(u);return}}for(const p of jt.VISITOR_KEYS[u.type]??[]){const h=u[p];Array.isArray(h)?h.forEach(E=>{E!=null&&E.type&&o(E)}):h!=null&&h.type&&o(h)}}};return o(e),n.sort((u,p)=>u.start-p.start).forEach((u,p)=>{t.appendLeft(u.start,`__lithentRenderOnce(${p}, () => `),t.appendRight(u.end,")")}),!!n.length},ka=(t,e)=>{const r=new Map;let s=!0;for(const a of t.program.body){if(a.type==="ExportAllDeclaration"&&a.exportKind!=="type"&&(s=!1),a.type==="ExportDefaultDeclaration"){const o=a.declaration;o.type==="Identifier"?r.set("default",o.name):(o.type==="FunctionDeclaration"||o.type==="ClassDeclaration")&&o.id?r.set("default",o.id.name):e.some(u=>u.componentName==="default")?r.set("default","__lithentCurrentComponents.default?.component"):s=!1}if(a.type!=="ExportNamedDeclaration"||a.exportKind==="type")continue;if(a.source){s=!1;continue}const n=a.declaration;if((n==null?void 0:n.type)==="VariableDeclaration")for(const o of n.declarations)for(const u of Object.keys(jt.getBindingIdentifiers(o.id)))r.set(u,u);else((n==null?void 0:n.type)==="FunctionDeclaration"||(n==null?void 0:n.type)==="ClassDeclaration")&&n.id?r.set(n.id.name,n.id.name):n&&n.type!=="TSInterfaceDeclaration"&&n.type!=="TSTypeAliasDeclaration"&&(s=!1);for(const o of a.specifiers)if(o.type==="ExportSpecifier"&&o.exportKind!=="type"){const u=o.exported.type==="Identifier"?o.exported.name:o.exported.value;r.set(u,o.local.name)}}return`
|
|
157
|
-
__lithentExportSnapshot = ${s?`{${Array.from(r,([a,n])=>`[${JSON.stringify(a)}]: ${n}`).join(", ")}}`:"null"};
|
|
158
|
-
`},Ma=t=>{const e=wa(t),{match:r,targetExports:s,shouldTransform:i,importInsertionPos:a,blockInsertionPos:n,headerSnippet:o}=e;if(!i||!r)return{transformed:!1,code:t.code,map:null};const u=yr(e.ast,t.code,t.tagFunctionImportSpecifier),p=Array.from(new Set(u.map(v=>v.componentName).filter(v=>!!v))),h=new Kt(t.code);u.length&&La(h,e.ast,t.code,t.tagFunctionImportSpecifier);const E=Da(h,u,t.code),I=Fi(s,p).trimStart(),A=n>0?t.code[n-1]:void 0,P=`${n>0&&A!==`
|
|
140
|
+
`):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(_.UnterminatedString,this.state.startLoc);let r=this.input.charCodeAt(this.state.pos);if(r===e)break;r===38?(t+=this.input.slice(n,this.state.pos),t+=this.jsxReadEntity(),n=this.state.pos):W(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(134,t)}jsxReadEntity(){let e=++this.state.pos;if(this.codePointAtPos(this.state.pos)===35){++this.state.pos;let e=10;this.codePointAtPos(this.state.pos)===120&&(e=16,++this.state.pos);let t=this.readInt(e,void 0,!1,`bail`);if(t!==null&&this.codePointAtPos(this.state.pos)===59)return++this.state.pos,String.fromCodePoint(t)}else{let t=0,n=!1;for(;t++<10&&this.state.pos<this.length&&!(n=this.codePointAtPos(this.state.pos)===59);)++this.state.pos;if(n){let t=Rt[this.input.slice(e,this.state.pos)];if(++this.state.pos,t)return t}}return this.state.pos=e,`&`}jsxReadWord(){let e,t=this.state.pos;do e=this.input.charCodeAt(++this.state.pos);while(H(e)||e===45);this.finishToken(141,this.input.slice(t,this.state.pos))}jsxParseIdentifier(){let e=this.startNode();return this.match(141)?e.name=this.state.value:ve(this.state.type)?e.name=R(this.state.type):this.unexpected(),this.next(),this.finishNode(e,`JSXIdentifier`)}jsxParseNamespacedName(){let e=this.state.startLoc,t=this.jsxParseIdentifier();if(!this.eat(14))return t;let n=this.startNodeAt(e);return n.namespace=t,n.name=this.jsxParseIdentifier(),this.finishNode(n,`JSXNamespacedName`)}jsxParseElementName(){let e=this.state.startLoc,t=this.jsxParseNamespacedName();if(t.type===`JSXNamespacedName`)return t;for(;this.eat(16);){let 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(x.brace),this.next(),e=this.jsxParseExpressionContainer(e,x.j_oTag),e.expression.type===`JSXEmptyExpression`&&this.raise(zt.AttributeIsEmpty,e),e;case 143:case 134:return this.parseExprAtom();default:throw this.raise(zt.UnsupportedJsxValue,this.state.startLoc)}}jsxParseEmptyExpression(){let 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(x.j_expr),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,`JSXSpreadChild`)}jsxParseExpressionContainer(e,t){return e.expression=this.match(8)?this.jsxParseEmptyExpression():this.parseExpression(),this.setContext(t),this.state.canStartJSXElement=!0,this.expect(8),this.finishNode(e,`JSXExpressionContainer`)}jsxParseAttribute(){let e=this.startNode();return this.match(5)?(this.setContext(x.brace),this.next(),this.expect(21),e.argument=this.parseMaybeAssignAllowIn(),this.setContext(x.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){let t=this.startNodeAt(e);return this.eat(144)?this.finishNode(t,`JSXOpeningFragment`):(t.name=this.jsxParseElementName(),this.jsxParseOpeningElementAfterName(t))}jsxParseOpeningElementAfterName(e){let t=[];for(;!this.match(56)&&!this.match(144);)t.push(this.jsxParseAttribute());return e.attributes=t,e.selfClosing=this.eat(56),this.expect(144),this.finishNode(e,`JSXOpeningElement`)}jsxParseClosingElementAt(e){let t=this.startNodeAt(e);return this.eat(144)?this.finishNode(t,`JSXClosingFragment`):(t.name=this.jsxParseElementName(),this.expect(144),this.finishNode(t,`JSXClosingElement`))}jsxParseElementAt(e){let t=this.startNodeAt(e),n=[],r=this.jsxParseOpeningElementAt(e),i=null;if(!r.selfClosing){contents:for(;;)switch(this.state.type){case 143:if(e=this.state.startLoc,this.next(),this.eat(56)){i=this.jsxParseClosingElementAt(e);break contents}n.push(this.jsxParseElementAt(e));break;case 142:n.push(this.parseLiteral(this.state.value,`JSXText`));break;case 5:{let e=this.startNode();this.setContext(x.brace),this.next(),this.match(21)?n.push(this.jsxParseSpreadChild(e)):n.push(this.jsxParseExpressionContainer(e,x.j_expr));break}default:this.unexpected()}Q(r)&&!Q(i)&&i!==null?this.raise(zt.MissingClosingTagFragment,i):(!Q(r)&&Q(i)||!Q(r)&&!Q(i)&&Bt(i.name)!==Bt(r.name))&&this.raise(zt.MissingClosingTagElement,i,{openingTagName:Bt(r.name)})}if(Q(r)?(t.openingFragment=r,t.closingFragment=i):(t.openingElement=r,t.closingElement=i),t.children=n,this.match(47))throw this.raise(zt.UnwrappedAdjacentJSXElements,this.state.startLoc);return Q(r)?this.finishNode(t,`JSXFragment`):this.finishNode(t,`JSXElement`)}jsxParseElement(){let e=this.state.startLoc;return this.next(),this.jsxParseElementAt(e)}setContext(e){let{context:t}=this.state;t[t.length-1]=e}parseExprAtom(e){return this.match(143)?this.jsxParseElement():this.match(47)&&this.input.charCodeAt(this.state.pos)!==33?(this.replaceToken(143),this.jsxParseElement()):super.parseExprAtom(e)}skipSpace(){this.curContext().preserveSpace||super.skipSpace()}getTokenFromCode(e){let t=this.curContext();if(t===x.j_expr)this.jsxReadToken();else{if(t===x.j_oTag||t===x.j_cTag){if(V(e)){this.jsxReadWord();return}if(e===62){++this.state.pos,this.finishToken(144);return}if((e===34||e===39)&&t===x.j_oTag){this.jsxReadString(e);return}}e===60&&this.state.canStartJSXElement&&this.input.charCodeAt(this.state.pos+1)!==33?(++this.state.pos,this.finishToken(143)):super.getTokenFromCode(e)}}updateContext(e){let{context:t,type:n}=this.state;if(n===56&&e===143)t.splice(-2,2,x.j_cTag),this.state.canStartJSXElement=!1;else if(n===143)t.push(x.j_oTag);else if(n===144){let n=t[t.length-1];n===x.j_oTag&&e===56||n===x.j_cTag?(t.pop(),this.state.canStartJSXElement=t[t.length-1]===x.j_expr):(this.setContext(x.j_expr),this.state.canStartJSXElement=!0)}else this.state.canStartJSXElement=me(n)}},Ht=class extends We{constructor(...e){super(...e),this.tsNames=new Map}},Ut=class extends Ge{constructor(...e){super(...e),this.importsStack=[]}createScope(e){return this.importsStack.push(new Set),new Ht(e)}enter(e){e===256&&this.importsStack.push(new Set),super.enter(e)}exit(){let e=super.exit();return e===256&&this.importsStack.pop(),e}hasImport(e,t){let 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(t&4096){this.hasImport(e,!0)&&this.parser.raise(_.VarRedeclaration,n,{identifierName:e}),this.importsStack[this.importsStack.length-1].add(e);return}let r=this.currentScope(),i=r.tsNames.get(e)||0;t&1024?(this.maybeExportDefined(r,e),r.tsNames.set(e,i|16)):(super.declareName(e,t,n),t&2&&(t&1||(this.checkRedeclarationInScope(r,e,t,n),this.maybeExportDefined(r,e)),i|=1),t&256&&(i|=2),t&512&&(i|=4),t&128&&(i|=8),i&&r.tsNames.set(e,i))}isRedeclaredInScope(e,t,n){let r=e.tsNames.get(t);return(r&2)>0?n&256?!!(n&512)!=(r&4)>0:!0:n&128&&(r&8)>0?e.names.get(t)&2?!!(n&1):!1:n&2&&(r&1)>0?!0:super.isRedeclaredInScope(e,t,n)}checkLocalExport(e){let{name:t}=e;if(this.hasImport(t))return;let n=this.scopeStack.length;for(let e=n-1;e>=0;e--){let n=this.scopeStack[e].tsNames.get(t);if((n&1)>0||(n&16)>0)return}super.checkLocalExport(e)}},Wt=e=>e.type===`ParenthesizedExpression`?Wt(e.expression):e,Gt=class extends At{toAssignable(e,t=!1){var n,r;let i;switch((e.type===`ParenthesizedExpression`||(n=e.extra)!=null&&n.parenthesized)&&(i=Wt(e),t?i.type===`Identifier`?this.expressionScope.recordArrowParameterBindingError(_.InvalidParenthesizedAssignment,e):i.type!==`MemberExpression`&&!this.isOptionalMemberExpression(i)&&this.raise(_.InvalidParenthesizedAssignment,e):this.raise(_.InvalidParenthesizedAssignment,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,i=r-1;n<r;n++){var a;let r=e.properties[n],o=n===i;this.toAssignableObjectExpressionProp(r,o,t),o&&r.type===`RestElement`&&(a=e.extra)!=null&&a.trailingCommaLoc&&this.raise(_.RestTrailingComma,e.extra.trailingCommaLoc)}break;case`ObjectProperty`:{let{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 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,(r=e.extra)==null?void 0:r.trailingCommaLoc,t);break;case`AssignmentExpression`:e.operator!==`=`&&this.raise(_.MissingEqInAssignment,e.left.loc.end),e.type=`AssignmentPattern`,delete e.operator,this.toAssignable(e.left,t);break;case`ParenthesizedExpression`:this.toAssignable(i,t)}}toAssignableObjectExpressionProp(e,t,n){if(e.type===`ObjectMethod`)this.raise(e.kind===`get`||e.kind===`set`?_.PatternHasAccessor:_.PatternHasMethod,e.key);else if(e.type===`SpreadElement`){e.type=`RestElement`;let r=e.argument;this.checkToRestConversion(r,!1),this.toAssignable(r,n),t||this.raise(_.RestTrailingComma,e)}else this.toAssignable(e,n)}toAssignableList(e,t,n){let r=e.length-1;for(let i=0;i<=r;i++){let a=e[i];if(a){if(a.type===`SpreadElement`){a.type=`RestElement`;let e=a.argument;this.checkToRestConversion(e,!0),this.toAssignable(e,n)}else this.toAssignable(a,n);a.type===`RestElement`&&(i<r?this.raise(_.RestTrailingComma,a):t&&this.raise(_.RestTrailingComma,t))}}}isAssignable(e,t){switch(e.type){case`Identifier`:case`ObjectPattern`:case`ArrayPattern`:case`AssignmentPattern`:case`RestElement`:return!0;case`ObjectExpression`:{let t=e.properties.length-1;return e.properties.every((e,n)=>e.type!==`ObjectMethod`&&(n===t||e.type!==`SpreadElement`)&&this.isAssignable(e))}case`ObjectProperty`:return this.isAssignable(e.value);case`SpreadElement`:return this.isAssignable(e.argument);case`ArrayExpression`:return e.elements.every(e=>e===null||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(let t of e)(t==null?void 0:t.type)===`ArrayExpression`&&this.toReferencedListDeep(t.elements)}parseSpread(e){let t=this.startNode();return this.next(),t.argument=this.parseMaybeAssignAllowIn(e,void 0),this.finishNode(t,`SpreadElement`)}parseRestBinding(){let e=this.startNode();return this.next(),e.argument=this.parseBindingAtom(),this.finishNode(e,`RestElement`)}parseBindingAtom(){switch(this.state.type){case 0:{let 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){let r=n&1,i=[],a=!0;for(;!this.eat(e);)if(a?a=!1:this.expect(12),r&&this.match(12))i.push(null);else if(this.eat(e))break;else if(this.match(21)){let r=this.parseRestBinding();if((this.hasPlugin(`flow`)||n&2)&&(r=this.parseFunctionParamType(r)),i.push(r),!this.checkCommaAfterRest(t)){this.expect(e);break}}else{let e=[];for(this.match(26)&&this.hasPlugin(`decorators`)&&this.raise(_.UnsupportedParameterDecorator,this.state.startLoc);this.match(26);)e.push(this.parseDecorator());i.push(this.parseAssignableListItem(n,e))}return i}parseBindingRestProperty(e){return this.next(),e.argument=this.parseIdentifier(),this.checkCommaAfterRest(125),this.finishNode(e,`RestElement`)}parseBindingProperty(){let{type:e,startLoc:t}=this.state;if(e===21)return this.parseBindingRestProperty(this.startNode());let n=this.startNode();return e===139?(this.expectPlugin(`destructuringPrivate`,t),this.classScope.usePrivateName(this.state.value,t),n.key=this.parsePrivateName()):this.parsePropertyName(n),n.method=!1,this.parseObjPropValue(n,t,!1,!1,!0,!1)}parseAssignableListItem(e,t){let n=this.parseMaybeDefault();(this.hasPlugin(`flow`)||e&2)&&this.parseFunctionParamType(n);let r=this.parseMaybeDefault(n.loc.start,n);return t.length&&(n.decorators=t),r}parseFunctionParamType(e){return e}parseMaybeDefault(e,t){if(e??(e=this.state.startLoc),t=t??this.parseBindingAtom(),!this.eat(29))return t;let n=this.startNodeAt(e);return n.left=t,n.right=this.parseMaybeAssignAllowIn(),this.finishNode(n,`AssignmentPattern`)}isValidLVal(e,t,n){switch(e){case`AssignmentPattern`:return`left`;case`RestElement`:return`argument`;case`ObjectProperty`:return`value`;case`ParenthesizedExpression`:return`expression`;case`ArrayPattern`:return`elements`;case`ObjectPattern`:return`properties`}return!1}isOptionalMemberExpression(e){return e.type===`OptionalMemberExpression`}checkLVal(e,t,n=64,r=!1,i=!1,a=!1){var o;let s=e.type;if(this.isObjectMethod(e))return;let c=this.isOptionalMemberExpression(e);if(c||s===`MemberExpression`){c&&(this.expectPlugin(`optionalChainingAssign`,e.loc.start),t.type!==`AssignmentExpression`&&this.raise(_.InvalidLhsOptionalChaining,e,{ancestor:t})),n!==64&&this.raise(_.InvalidPropertyBindingPattern,e);return}if(s===`Identifier`){this.checkIdentifier(e,n,i);let{name:t}=e;r&&(r.has(t)?this.raise(_.ParamDupe,e):r.add(t));return}let l=this.isValidLVal(s,!(a||(o=e.extra)!=null&&o.parenthesized)&&t.type===`AssignmentExpression`,n);if(l===!0)return;if(l===!1){let r=n===64?_.InvalidLhs:_.InvalidLhsBinding;this.raise(r,e,{ancestor:t});return}let u,d;typeof l==`string`?(u=l,d=s===`ParenthesizedExpression`):[u,d]=l;let f=s===`ArrayPattern`||s===`ObjectPattern`?{type:s}:t,p=e[u];if(Array.isArray(p))for(let e of p)e&&this.checkLVal(e,f,n,r,i,d);else p&&this.checkLVal(p,f,n,r,i,d)}checkIdentifier(e,t,n=!1){this.state.strict&&(n?ze(e.name,this.inModule):Re(e.name))&&(t===64?this.raise(_.StrictEvalArguments,e,{referenceName:e.name}):this.raise(_.StrictEvalArgumentsBinding,e,{bindingName:e.name})),t&8192&&e.name===`let`&&this.raise(_.LetInLexicalBinding,e),t&64||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(_.InvalidRestAssignmentPattern,e)}}checkCommaAfterRest(e){return this.match(12)?(this.raise(this.lookaheadCharCode()===e?_.RestTrailingComma:_.ElementAfterRest,this.state.startLoc),!0):!1}};function Kt(e){if(e==null)throw Error(`Unexpected ${e} value.`);return e}function qt(e){if(!e)throw Error(`Assert fail`)}var $=g`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.`,AccessorCannotBeOptional:`An 'accessor' property cannot be declared optional.`,AccessorCannotDeclareThisParameter:`'get' and 'set' accessors cannot declare 'this' parameters.`,AccessorCannotHaveTypeParameters:`An accessor cannot have type parameters.`,ClassMethodHasDeclare:`Class methods cannot have the 'declare' modifier.`,ClassMethodHasReadonly:`Class methods cannot have the 'readonly' modifier.`,ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference:`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.`,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.",SetAccessorCannotHaveOptionalParameter:`A 'set' accessor cannot have an optional parameter.`,SetAccessorCannotHaveRestParameter:`A 'set' accessor cannot have rest parameter.`,SetAccessorCannotHaveReturnType:`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 Jt(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}}function Yt(e){return e===`private`||e===`public`||e===`protected`}function Xt(e){return e===`in`||e===`out`}var Zt=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:$.InvalidModifierOnTypeParameter}),this.tsParseConstModifier=this.tsParseModifiers.bind(this,{allowedModifiers:[`const`],disallowedModifiers:[`in`,`out`],errorTemplate:$.InvalidModifierOnTypeParameterPositions}),this.tsParseInOutConstModifiers=this.tsParseModifiers.bind(this,{allowedModifiers:[`in`,`out`,`const`],disallowedModifiers:[`public`,`private`,`protected`,`readonly`,`declare`,`abstract`,`override`],errorTemplate:$.InvalidModifierOnTypeParameter})}getScopeHandler(){return Ut}tsIsIdentifier(){return P(this.state.type)}tsTokenCanFollowModifier(){return this.match(0)||this.match(5)||this.match(55)||this.match(21)||this.match(139)||this.isLiteralPropertyName()}tsNextTokenOnSameLineAndCanFollowModifier(){return this.next(),!this.hasPrecedingLineBreak()&&this.tsTokenCanFollowModifier()}tsNextTokenCanFollowModifier(){return this.match(106)?(this.next(),this.tsTokenCanFollowModifier()):this.tsNextTokenOnSameLineAndCanFollowModifier()}tsParseModifier(e,t){if(!P(this.state.type)&&this.state.type!==58&&this.state.type!==75)return;let n=this.state.value;if(e.includes(n)){if(t&&this.tsIsStartOfStaticBlocks())return;if(this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this)))return n}}tsParseModifiers({allowedModifiers:e,disallowedModifiers:t,stopOnStartOfClassStaticBlock:n,errorTemplate:r=$.InvalidModifierOnTypeMember},i){let a=(e,t,n,r)=>{t===n&&i[r]&&this.raise($.InvalidModifiersOrder,e,{orderedModifiers:[n,r]})},o=(e,t,n,r)=>{(i[n]&&t===r||i[r]&&t===n)&&this.raise($.IncompatibleModifiers,e,{modifiers:[n,r]})};for(;;){let{startLoc:s}=this.state,c=this.tsParseModifier(e.concat(t??[]),n);if(!c)break;Yt(c)?i.accessibility?this.raise($.DuplicateAccessibilityModifier,s,{modifier:c}):(a(s,c,c,`override`),a(s,c,c,`static`),a(s,c,c,`readonly`),i.accessibility=c):Xt(c)?(i[c]&&this.raise($.DuplicateModifier,s,{modifier:c}),i[c]=!0,a(s,c,`in`,`out`)):(hasOwnProperty.call(i,c)?this.raise($.DuplicateModifier,s,{modifier:c}):(a(s,c,`static`,`readonly`),a(s,c,`static`,`override`),a(s,c,`override`,`readonly`),a(s,c,`abstract`,`override`),o(s,c,`declare`,`override`),o(s,c,`static`,`abstract`)),i[c]=!0),t!=null&&t.includes(c)&&this.raise(r,s,{modifier:c})}}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){let n=[];for(;!this.tsIsListTerminator(e);)n.push(t());return n}tsParseDelimitedList(e,t,n){return Kt(this.tsParseDelimitedListWorker(e,t,!0,n))}tsParseDelimitedListWorker(e,t,n,r){let i=[],a=-1;for(;!this.tsIsListTerminator(e);){a=-1;let r=t();if(r==null)return;if(i.push(r),this.eat(12))a=this.state.lastTokStartLoc.index;else{if(this.tsIsListTerminator(e))break;n&&this.expect(12);return}}return r&&(r.value=a),i}tsParseBracketedList(e,t,n,r,i){r||(n?this.expect(0):this.expect(47));let a=this.tsParseDelimitedList(e,t,i);return n?this.expect(3):this.expect(48),a}tsParseImportType(){let e=this.startNode();return this.expect(83),this.expect(10),this.match(134)?e.argument=this.parseStringLiteral(this.state.value):(this.raise($.UnsupportedImportTypeArgument,this.state.startLoc),e.argument=super.parseExprAtom()),this.eat(12)&&!this.match(11)?(e.options=super.parseMaybeAssignAllowIn(),this.eat(12)):e.options=null,this.expect(11),this.eat(16)&&(e.qualifier=this.tsParseEntityName(3)),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,`TSImportType`)}tsParseEntityName(e){let t;if(e&1&&this.match(78)){if(e&2)t=this.parseIdentifier(!0);else{let e=this.startNode();this.next(),t=this.finishNode(e,`ThisExpression`)}}else t=this.parseIdentifier(!!(e&1));for(;this.eat(16);){let n=this.startNodeAtNode(t);n.left=t,n.right=this.parseIdentifier(!!(e&1)),t=this.finishNode(n,`TSQualifiedName`)}return t}tsParseTypeReference(){let e=this.startNode();return e.typeName=this.tsParseEntityName(1),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,`TSTypeReference`)}tsParseThisTypePredicate(e){this.next();let t=this.startNodeAtNode(e);return t.parameterName=e,t.typeAnnotation=this.tsParseTypeAnnotation(!1),t.asserts=!1,this.finishNode(t,`TSTypePredicate`)}tsParseThisTypeNode(){let e=this.startNode();return this.next(),this.finishNode(e,`TSThisType`)}tsParseTypeQuery(){let e=this.startNode();return this.expect(87),e.exprName=this.match(83)?this.tsParseImportType():this.tsParseEntityName(3),!this.hasPrecedingLineBreak()&&this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,`TSTypeQuery`)}tsParseTypeParameter(e){let 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){let t=this.startNode();this.match(47)||this.match(143)?this.next():this.unexpected();let n={value:-1};return t.params=this.tsParseBracketedList(`TypeParametersOrArguments`,this.tsParseTypeParameter.bind(this,e),!1,!0,n),t.params.length===0&&this.raise($.EmptyTypeParameters,t),n.value!==-1&&this.addExtra(t,`trailingComma`,n.value),this.finishNode(t,`TSTypeParameterDeclaration`)}tsFillSignature(e,t){let n=e===19;t.typeParameters=this.tsTryParseTypeParameters(this.tsParseConstModifier),this.expect(10),t.parameters=this.tsParseBindingListForSignature(),(n||this.match(e))&&(t.typeAnnotation=this.tsParseTypeOrTypePredicateAnnotation(e))}tsParseBindingListForSignature(){let e=super.parseBindingList(11,41,2);for(let t of e){let{type:e}=t;(e===`AssignmentPattern`||e===`TSParameterProperty`)&&this.raise($.UnsupportedSignatureParameterKind,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(),P(this.state.type)?(this.next(),this.match(14)):!1}tsTryParseIndexSignature(e){if(!(this.match(0)&&this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))))return;this.expect(0);let t=this.parseIdentifier();t.typeAnnotation=this.tsParseTypeAnnotation(),this.resetEndLocation(t),this.expect(3),e.parameters=[t];let n=this.tsTryParseTypeAnnotation();return n&&(e.typeAnnotation=n),this.tsParseTypeMemberSemicolon(),this.finishNode(e,`TSIndexSignature`)}tsParsePropertyOrMethodSignature(e,t){this.eat(17)&&(e.optional=!0);let n=e;if(this.match(10)||this.match(47)){t&&this.raise($.ReadonlyForMethodSignature,e);let r=n;r.kind&&this.match(47)&&this.raise($.AccessorCannotHaveTypeParameters,this.state.curPosition()),this.tsFillSignature(14,r),this.tsParseTypeMemberSemicolon();let i=`parameters`,a=`typeAnnotation`;if(r.kind===`get`)r[i].length>0&&(this.raise(_.BadGetterArity,this.state.curPosition()),this.isThisParam(r[i][0])&&this.raise($.AccessorCannotDeclareThisParameter,this.state.curPosition()));else if(r.kind===`set`){if(r[i].length!==1)this.raise(_.BadSetterArity,this.state.curPosition());else{let e=r[i][0];this.isThisParam(e)&&this.raise($.AccessorCannotDeclareThisParameter,this.state.curPosition()),e.type===`Identifier`&&e.optional&&this.raise($.SetAccessorCannotHaveOptionalParameter,this.state.curPosition()),e.type===`RestElement`&&this.raise($.SetAccessorCannotHaveRestParameter,this.state.curPosition())}r[a]&&this.raise($.SetAccessorCannotHaveReturnType,r[a])}else r.kind=`method`;return this.finishNode(r,`TSMethodSignature`)}{let e=n;t&&(e.readonly=!0);let r=this.tsTryParseTypeAnnotation();return r&&(e.typeAnnotation=r),this.tsParseTypeMemberSemicolon(),this.finishNode(e,`TSPropertySignature`)}}tsParseTypeMember(){let e=this.startNode();if(this.match(10)||this.match(47))return this.tsParseSignatureMember(`TSCallSignatureDeclaration`,e);if(this.match(77)){let 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))}return this.tsParseModifiers({allowedModifiers:[`readonly`],disallowedModifiers:[`declare`,`abstract`,`private`,`protected`,`public`,`static`,`override`]},e),this.tsTryParseIndexSignature(e)||(super.parsePropertyName(e),!e.computed&&e.key.type===`Identifier`&&(e.key.name===`get`||e.key.name===`set`)&&this.tsTokenCanFollowModifier()&&(e.kind=e.key.name,super.parsePropertyName(e)),this.tsParsePropertyOrMethodSignature(e,!!e.readonly))}tsParseTypeLiteral(){let e=this.startNode();return e.members=this.tsParseObjectTypeMembers(),this.finishNode(e,`TSTypeLiteral`)}tsParseObjectTypeMembers(){this.expect(5);let e=this.tsParseList(`TypeMembers`,this.tsParseTypeMember.bind(this));return this.expect(8),e}tsIsStartOfMappedType(){return this.next(),this.eat(53)?this.isContextual(122):(this.isContextual(122)&&this.next(),!this.match(0)||(this.next(),!this.tsIsIdentifier())?!1:(this.next(),this.match(58)))}tsParseMappedType(){let e=this.startNode();this.expect(5),this.match(53)?(e.readonly=this.state.value,this.next(),this.expectContextual(122)):this.eatContextual(122)&&(e.readonly=!0),this.expect(0);{let t=this.startNode();t.name=this.tsParseTypeParameterName(),t.constraint=this.tsExpectThenParseType(58),e.typeParameter=this.finishNode(t,`TSTypeParameter`)}return 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(){let e=this.startNode();e.elementTypes=this.tsParseBracketedList(`TupleElementTypes`,this.tsParseTupleElementType.bind(this),!0,!1);let t=!1;return e.elementTypes.forEach(e=>{let{type:n}=e;t&&n!==`TSRestType`&&n!==`TSOptionalType`&&!(n===`TSNamedTupleMember`&&e.optional)&&this.raise($.OptionalTypeBeforeRequired,e),t||(t=n===`TSNamedTupleMember`&&e.optional||n===`TSOptionalType`)}),this.finishNode(e,`TSTupleType`)}tsParseTupleElementType(){let e=this.state.startLoc,t=this.eat(21),{startLoc:n}=this.state,r,i,a,o,s=F(this.state.type)?this.lookaheadCharCode():null;if(s===58)r=!0,a=!1,i=this.parseIdentifier(!0),this.expect(14),o=this.tsParseType();else if(s===63){a=!0;let e=this.state.value,t=this.tsParseNonArrayType();this.lookaheadCharCode()===58?(r=!0,i=this.createIdentifier(this.startNodeAt(n),e),this.expect(17),this.expect(14),o=this.tsParseType()):(r=!1,o=t,this.expect(17))}else o=this.tsParseType(),a=this.eat(17),r=this.eat(14);if(r){let e;i?(e=this.startNodeAt(n),e.optional=a,e.label=i,e.elementType=o,this.eat(17)&&(e.optional=!0,this.raise($.TupleOptionalAfterType,this.state.lastTokStartLoc))):(e=this.startNodeAt(n),e.optional=a,this.raise($.InvalidTupleMemberLabel,o),e.label=o,e.elementType=this.tsParseType()),o=this.finishNode(e,`TSNamedTupleMember`)}else if(a){let e=this.startNodeAt(n);e.typeAnnotation=o,o=this.finishNode(e,`TSOptionalType`)}if(t){let t=this.startNodeAt(e);t.typeAnnotation=o,o=this.finishNode(t,`TSRestType`)}return o}tsParseParenthesizedType(){let e=this.startNode();return this.expect(10),e.typeAnnotation=this.tsParseType(),this.expect(11),this.finishNode(e,`TSParenthesizedType`)}tsParseFunctionOrConstructorType(e,t){let n=this.startNode();return e===`TSConstructorType`&&(n.abstract=!!t,t&&this.next(),this.next()),this.tsInAllowConditionalTypesContext(()=>this.tsFillSignature(19,n)),this.finishNode(n,e)}tsParseLiteralTypeNode(){let e=this.startNode();switch(this.state.type){case 135:case 136:case 134:case 85:case 86:e.literal=super.parseExprAtom();break;default:this.unexpected()}return this.finishNode(e,`TSLiteralType`)}tsParseTemplateLiteralType(){{let e=this.startNode();return e.literal=super.parseTemplate(!1),this.finishNode(e,`TSLiteralType`)}}parseTemplateSubstitution(){return this.state.inType?this.tsParseType():super.parseTemplateSubstitution()}tsParseThisTypeOrThisTypePredicate(){let e=this.tsParseThisTypeNode();return this.isContextual(116)&&!this.hasPrecedingLineBreak()?this.tsParseThisTypePredicate(e):e}tsParseNonArrayType(){switch(this.state.type){case 134:case 135:case 136:case 85:case 86:return this.tsParseLiteralTypeNode();case 53:if(this.state.value===`-`){let e=this.startNode(),t=this.lookahead();return t.type!==135&&t.type!==136&&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:{let{type:e}=this.state;if(P(e)||e===88||e===84){let t=e===88?`TSVoidKeyword`:e===84?`TSNullKeyword`:Jt(this.state.value);if(t!==void 0&&this.lookaheadCharCode()!==46){let e=this.startNode();return this.next(),this.finishNode(e,t)}return this.tsParseTypeReference()}}}this.unexpected()}tsParseArrayTypeOrHigher(){let{startLoc:e}=this.state,t=this.tsParseNonArrayType();for(;!this.hasPrecedingLineBreak()&&this.eat(0);)if(this.match(3)){let n=this.startNodeAt(e);n.elementType=t,this.expect(3),t=this.finishNode(n,`TSArrayType`)}else{let n=this.startNodeAt(e);n.objectType=t,n.indexType=this.tsParseType(),this.expect(3),t=this.finishNode(n,`TSIndexedAccessType`)}return t}tsParseTypeOperator(){let e=this.startNode(),t=this.state.value;return this.next(),e.operator=t,e.typeAnnotation=this.tsParseTypeOperatorOrHigher(),t===`readonly`&&this.tsCheckTypeAnnotationForReadOnly(e),this.finishNode(e,`TSTypeOperator`)}tsCheckTypeAnnotationForReadOnly(e){switch(e.typeAnnotation.type){case`TSTupleType`:case`TSArrayType`:return;default:this.raise($.UnexpectedReadonly,e)}}tsParseInferType(){let e=this.startNode();this.expectContextual(115);let 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)){let e=this.tsInDisallowConditionalTypesContext(()=>this.tsParseType());if(this.state.inDisallowConditionalTypesContext||!this.match(17))return e}}tsParseTypeOperatorOrHigher(){return xe(this.state.type)&&!this.state.containsEsc?this.tsParseTypeOperator():this.isContextual(115)?this.tsParseInferType():this.tsInAllowConditionalTypesContext(()=>this.tsParseArrayTypeOrHigher())}tsParseUnionOrIntersectionType(e,t,n){let r=this.startNode(),i=this.eat(n),a=[];do a.push(t());while(this.eat(n));return a.length===1&&!i?a[0]:(r.types=a,this.finishNode(r,e))}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)?!0:this.match(10)&&this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this))}tsSkipParameterStart(){if(P(this.state.type)||this.match(78))return this.next(),!0;if(this.match(5)){let{errors:e}=this.state,t=e.length;try{return this.parseObjectLike(8,!0),e.length===t}catch{return!1}}if(this.match(0)){this.next();let{errors:e}=this.state,t=e.length;try{return super.parseBindingList(3,93,1),e.length===t}catch{return!1}}return!1}tsIsUnambiguouslyStartOfFunctionType(){return this.next(),!!(this.match(11)||this.match(21)||this.tsSkipParameterStart()&&(this.match(14)||this.match(12)||this.match(17)||this.match(29)||this.match(11)&&(this.next(),this.match(19))))}tsParseTypeOrTypePredicateAnnotation(e){return this.tsInType(()=>{let t=this.startNode();this.expect(e);let n=this.startNode(),r=!!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this));if(r&&this.match(78)){let e=this.tsParseThisTypeOrThisTypePredicate();return e.type===`TSThisType`?(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`)}let i=this.tsIsIdentifier()&&this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this));if(!i)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);let a=this.tsParseTypeAnnotation(!1);return n.parameterName=i,n.typeAnnotation=a,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(){let e=this.parseIdentifier();if(this.isContextual(116)&&!this.hasPrecedingLineBreak())return this.next(),e}tsParseTypePredicateAsserts(){if(this.state.type!==109)return!1;let e=this.state.containsEsc;return this.next(),!P(this.state.type)&&!this.match(78)?!1:(e&&this.raise(_.InvalidEscapedReservedWord,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(){qt(this.state.inType);let e=this.tsParseNonConditionalType();if(this.state.inDisallowConditionalTypesContext||this.hasPrecedingLineBreak()||!this.eat(81))return e;let 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(124)&&this.lookahead().type===77}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($.ReservedTypeAssertion,this.state.startLoc);let 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){let t=this.state.startLoc,n=this.tsParseDelimitedList(`HeritageClauseElement`,()=>{let e=this.startNode();return e.expression=this.tsParseEntityName(3),this.match(47)&&(e.typeParameters=this.tsParseTypeArguments()),this.finishNode(e,`TSExpressionWithTypeArguments`)});return n.length||this.raise($.EmptyHeritageClauseType,t,{token:e}),n}tsParseInterfaceDeclaration(e,t={}){if(this.hasFollowingLineBreak())return null;this.expectContextual(129),t.declare&&(e.declare=!0),P(this.state.type)?(e.id=this.parseIdentifier(),this.checkIdentifier(e.id,130)):(e.id=null,this.raise($.MissingInterfaceName,this.state.startLoc)),e.typeParameters=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers),this.eat(81)&&(e.extends=this.tsParseHeritageClause(`extends`));let 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(114)&&this.lookahead().type!==16){let e=this.startNode();return this.next(),this.finishNode(e,`TSIntrinsicKeyword`)}return this.tsParseType()}),this.semicolon(),this.finishNode(e,`TSTypeAliasDeclaration`)}tsInTopLevelContext(e){if(this.curContext()!==x.brace){let t=this.state.context;this.state.context=[t[0]];try{return e()}finally{this.state.context=t}}else return e()}tsInType(e){let t=this.state.inType;this.state.inType=!0;try{return e()}finally{this.state.inType=t}}tsInDisallowConditionalTypesContext(e){let t=this.state.inDisallowConditionalTypesContext;this.state.inDisallowConditionalTypesContext=!0;try{return e()}finally{this.state.inDisallowConditionalTypesContext=t}}tsInAllowConditionalTypesContext(e){let 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(){let e=this.startNode();return e.id=this.match(134)?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(126),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`)}tsParseEnumBody(){let e=this.startNode();return this.expect(5),e.members=this.tsParseDelimitedList(`EnumMembers`,this.tsParseEnumMember.bind(this)),this.expect(8),this.finishNode(e,`TSEnumBody`)}tsParseModuleBlock(){let 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)){let 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(112)?(e.kind=`global`,e.global=!0,e.id=this.parseIdentifier()):this.match(134)?(e.kind=`module`,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);let r=this.tsParseModuleReference();return e.importKind===`type`&&r.type!==`TSExternalModuleReference`&&this.raise($.ImportAliasHasImportType,r),e.moduleReference=r,this.semicolon(),this.finishNode(e,`TSImportEqualsDeclaration`)}tsIsExternalModuleReference(){return this.isContextual(119)&&this.lookaheadCharCode()===40}tsParseModuleReference(){return this.tsIsExternalModuleReference()?this.tsParseExternalModuleReference():this.tsParseEntityName(0)}tsParseExternalModuleReference(){let e=this.startNode();return this.expectContextual(119),this.expect(10),this.match(134)||this.unexpected(),e.expression=super.parseExprAtom(),this.expect(11),this.sawUnambiguousESM=!0,this.finishNode(e,`TSExternalModuleReference`)}tsLookAhead(e){let t=this.state.clone(),n=e();return this.state=t,n}tsTryParseAndCatch(e){let t=this.tryParse(t=>e()||t());if(!t.aborted&&t.node)return t.error&&(this.state=t.failState),t.node}tsTryParse(e){let t=this.state.clone(),n=e();if(n!==void 0&&n!==!1)return n;this.state=t}tsTryParseDeclare(e){if(this.isLineTerminator())return;let t=this.state.type,n;return this.isContextual(100)&&(t=74,n=`let`),this.tsInAmbientContext(()=>{switch(t){case 68:return e.declare=!0,super.parseFunctionStatement(e,!1,!1);case 80:return e.declare=!0,this.parseClass(e,!0,!1);case 126:return this.tsParseEnumDeclaration(e,{declare:!0});case 112:return this.tsParseAmbientExternalModuleDeclaration(e);case 75:case 74:return!this.match(75)||!this.isLookaheadContextual(`enum`)?(e.declare=!0,this.parseVarStatement(e,n||this.state.value,!0)):(this.expect(75),this.tsParseEnumDeclaration(e,{const:!0,declare:!0}));case 129:{let t=this.tsParseInterfaceDeclaration(e,{declare:!0});if(t)return t}default:if(P(t))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`:{let t=this.tsTryParseDeclare(e);return t&&(t.declare=!0),t}case`global`:if(this.match(5)){this.scope.enter(256),this.prodParam.enter(0);let n=e;return n.kind=`global`,e.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)||P(this.state.type)))return this.tsParseAbstractDeclaration(e,r);break;case`module`:if(this.tsCheckLineTerminator(n)){if(this.match(134))return this.tsParseAmbientExternalModuleDeclaration(e);if(P(this.state.type))return e.kind=`module`,this.tsParseModuleOrNamespaceDeclaration(e)}break;case`namespace`:if(this.tsCheckLineTerminator(n)&&P(this.state.type))return e.kind=`namespace`,this.tsParseModuleOrNamespaceDeclaration(e);break;case`type`:if(this.tsCheckLineTerminator(n)&&P(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;let t=this.state.maybeInArrowParameters;this.state.maybeInArrowParameters=!0;let n=this.tsTryParseAndCatch(()=>{let t=this.startNodeAt(e);return t.typeParameters=this.tsParseTypeParameters(this.tsParseConstModifier),super.parseFunctionParams(t),t.returnType=this.tsTryParseTypeOrTypePredicateAnnotation(),this.expect(19),t});if(this.state.maybeInArrowParameters=t,n)return super.parseArrowExpression(n,null,!0)}tsParseTypeArgumentsInExpression(){if(this.reScan_lt()===47)return this.tsParseTypeArguments()}tsParseTypeArguments(){let e=this.startNode();return e.params=this.tsInType(()=>this.tsInTopLevelContext(()=>(this.expect(47),this.tsParseDelimitedList(`TypeParametersOrArguments`,this.tsParseType.bind(this))))),e.params.length===0?this.raise($.EmptyTypeArguments,e):!this.state.inType&&this.curContext()===x.brace&&this.reScan_lt_gt(),this.expect(48),this.finishNode(e,`TSTypeParameterInstantiation`)}tsIsDeclarationStart(){return Se(this.state.type)}isExportDefaultSpecifier(){return!this.tsIsDeclarationStart()&&super.isExportDefaultSpecifier()}parseAssignableListItem(e,t){let n=this.state.startLoc,r={};this.tsParseModifiers({allowedModifiers:[`public`,`private`,`protected`,`override`,`readonly`]},r);let i=r.accessibility,a=r.override,o=r.readonly;!(e&4)&&(i||o||a)&&this.raise($.UnexpectedParameterModifier,n);let s=this.parseMaybeDefault();e&2&&this.parseFunctionParamType(s);let c=this.parseMaybeDefault(s.loc.start,s);if(i||o||a){let e=this.startNodeAt(n);return t.length&&(e.decorators=t),i&&(e.accessibility=i),o&&(e.readonly=o),a&&(e.override=a),c.type!==`Identifier`&&c.type!==`AssignmentPattern`&&this.raise($.UnsupportedParameterPropertyKind,e),e.parameter=c,this.finishNode(e,`TSParameterProperty`)}return t.length&&(s.decorators=t),c}isSimpleParameter(e){return e.type===`TSParameterProperty`&&super.isSimpleParameter(e.parameter)||super.isSimpleParameter(e)}tsDisallowOptionalPattern(e){for(let t of e.params)t.type!==`Identifier`&&t.optional&&!this.state.isAmbientContext&&this.raise($.PatternIsOptional,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));let r=t===`FunctionDeclaration`?`TSDeclareFunction`:t===`ClassMethod`||t===`ClassPrivateMethod`?`TSDeclareMethod`:void 0;return r&&!this.match(5)&&this.isLineTerminator()?this.finishNode(e,r):r===`TSDeclareFunction`&&this.state.isAmbientContext&&(this.raise($.DeclareFunctionHasImplementation,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=>{(e==null?void 0:e.type)===`TSTypeCastExpression`&&this.raise($.UnexpectedTypeAnnotation,e.typeAnnotation)})}toReferencedList(e,t){return this.tsCheckForInvalidTypeCasts(e),e}parseArrayLike(e,t,n,r){let i=super.parseArrayLike(e,t,n,r);return i.type===`ArrayExpression`&&this.tsCheckForInvalidTypeCasts(i.elements),i}parseSubscript(e,t,n,r){if(!this.hasPrecedingLineBreak()&&this.match(35)){this.state.canStartJSXElement=!1,this.next();let n=this.startNodeAt(t);return n.expression=e,this.finishNode(n,`TSNonNullExpression`)}let i=!1;if(this.match(18)&&this.lookaheadCharCode()===60){if(n)return r.stop=!0,e;r.optionalChainMember=i=!0,this.next()}if(this.match(47)||this.match(51)){let a,o=this.tsTryParseAndCatch(()=>{if(!n&&this.atPossibleAsyncArrow(e)){let e=this.tsTryParseGenericAsyncArrowFunction(t);if(e)return e}let o=this.tsParseTypeArgumentsInExpression();if(!o)return;if(i&&!this.match(10)){a=this.state.curPosition();return}if(Te(this.state.type)){let n=super.parseTaggedTemplateExpression(e,t,r);return n.typeParameters=o,n}if(!n&&this.eat(10)){let n=this.startNodeAt(t);return n.callee=e,n.arguments=this.parseCallExpressionArguments(11),this.tsCheckForInvalidTypeCasts(n.arguments),n.typeParameters=o,r.optionalChainMember&&(n.optional=i),this.finishCallExpression(n,r.optionalChainMember)}let s=this.state.type;if(s===48||s===52||s!==10&&he(s)&&!this.hasPrecedingLineBreak())return;let c=this.startNodeAt(t);return c.expression=e,c.typeParameters=o,this.finishNode(c,`TSInstantiationExpression`)});if(a&&this.unexpected(a,10),o)return o.type===`TSInstantiationExpression`&&(this.match(16)||this.match(18)&&this.lookaheadCharCode()!==40)&&this.raise($.InvalidPropertyAccessAfterInstantiationExpression,this.state.startLoc),o}return super.parseSubscript(e,t,n,r)}parseNewCallee(e){var t;super.parseNewCallee(e);let{callee:n}=e;n.type===`TSInstantiationExpression`&&!((t=n.extra)!=null&&t.parenthesized)&&(e.typeParameters=n.typeParameters,e.callee=n.expression)}parseExprOp(e,t,n){let r;if(Ce(58)>n&&!this.hasPrecedingLineBreak()&&(this.isContextual(93)||(r=this.isContextual(120)))){let i=this.startNodeAt(t);return i.expression=e,i.typeAnnotation=this.tsInType(()=>(this.next(),this.match(75)?(r&&this.raise(_.UnexpectedKeyword,this.state.startLoc,{keyword:`const`}),this.tsParseTypeReference()):this.tsParseType())),this.finishNode(i,r?`TSSatisfiesExpression`:`TSAsExpression`),this.reScan_lt_gt(),this.parseExprOp(i,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&&e.importKind!==`value`&&this.raise($.ImportReflectionHasImportType,e.specifiers[0].loc.start)}checkDuplicateExports(){}isPotentialImportPhase(e){if(super.isPotentialImportPhase(e))return!0;if(this.isContextual(130)){let t=this.lookaheadCharCode();return e?t===123||t===42:t!==61}return!e&&this.isContextual(87)}applyImportPhase(e,t,n,r){super.applyImportPhase(e,t,n,r),t?e.exportKind=n===`type`?`type`:`value`:e.importKind=n===`type`||n===`typeof`?n:`value`}parseImport(e){if(this.match(134))return e.importKind=`value`,super.parseImport(e);let t;if(P(this.state.type)&&this.lookaheadCharCode()===61)return e.importKind=`value`,this.tsParseImportEqualsDeclaration(e);if(this.isContextual(130)){let n=this.parseMaybeImportPhase(e,!1);if(this.lookaheadCharCode()===61)return this.tsParseImportEqualsDeclaration(e,n);t=super.parseImportSpecifiersAndAfter(e,n)}else t=super.parseImport(e);return t.importKind===`type`&&t.specifiers.length>1&&t.specifiers[0].type===`ImportDefaultSpecifier`&&this.raise($.TypeImportCannotSpecifyDefaultAndNamed,t),t}parseExport(e,t){if(this.match(83)){let t=e;this.next();let n=null;return this.isContextual(130)&&this.isPotentialImportPhase(!1)?n=this.parseMaybeImportPhase(t,!1):t.importKind=`value`,this.tsParseImportEqualsDeclaration(t,n,!0)}if(this.eat(29)){let t=e;return t.expression=super.parseExpression(),this.semicolon(),this.sawUnambiguousESM=!0,this.finishNode(t,`TSExportAssignment`)}if(this.eatContextual(93)){let t=e;return this.expectContextual(128),t.id=this.parseIdentifier(),this.semicolon(),this.finishNode(t,`TSNamespaceExportDeclaration`)}return super.parseExport(e,t)}isAbstractClass(){return this.isContextual(124)&&this.lookahead().type===80}parseExportDefaultExpression(){if(this.isAbstractClass()){let e=this.startNode();return this.next(),e.abstract=!0,this.parseClass(e,!0,!0)}if(this.match(129)){let e=this.tsParseInterfaceDeclaration(this.startNode());if(e)return e}return super.parseExportDefaultExpression()}parseVarStatement(e,t,n=!1){let{isAmbientContext:r}=this.state,i=super.parseVarStatement(e,t,n||r);if(!r)return i;for(let{id:e,init:n}of i.declarations)n&&(t!==`const`||e.typeAnnotation?this.raise($.InitializerNotAllowedInAmbientContext,n):$t(n,this.hasPlugin(`estree`))||this.raise($.ConstInitializerMustBeStringOrNumericLiteralOrLiteralEnumReference,n));return i}parseStatementContent(e,t){if(this.match(75)&&this.isLookaheadContextual(`enum`)){let e=this.startNode();return this.expect(75),this.tsParseEnumDeclaration(e,{const:!0})}if(this.isContextual(126))return this.tsParseEnumDeclaration(this.startNode());if(this.isContextual(129)){let 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=>Yt(t)?e.accessibility===t:!!e[t])}tsIsStartOfStaticBlocks(){return this.isContextual(106)&&this.lookaheadCharCode()===123}parseClassMember(e,t,n){let r=[`declare`,`private`,`public`,`protected`,`override`,`abstract`,`readonly`,`static`];this.tsParseModifiers({allowedModifiers:r,disallowedModifiers:[`in`,`out`],stopOnStartOfClassStaticBlock:!0,errorTemplate:$.InvalidModifierOnTypeParameterPositions},t);let i=()=>{this.tsIsStartOfStaticBlocks()?(this.next(),this.next(),this.tsHasSomeModifiers(t,r)&&this.raise($.StaticBlockCannotHaveModifier,this.state.curPosition()),super.parseClassStaticBlock(e,t)):this.parseClassMemberWithIsStatic(e,t,n,!!t.static)};t.declare?this.tsInAmbientContext(i):i()}parseClassMemberWithIsStatic(e,t,n,r){let i=this.tsTryParseIndexSignature(t);i?(e.body.push(i),t.abstract&&this.raise($.IndexSignatureHasAbstract,t),t.accessibility&&this.raise($.IndexSignatureHasAccessibility,t,{modifier:t.accessibility}),t.declare&&this.raise($.IndexSignatureHasDeclare,t),t.override&&this.raise($.IndexSignatureHasOverride,t)):(!this.state.inAbstractClass&&t.abstract&&this.raise($.NonAbstractClassHasAbstractMethod,t),t.override&&(n.hadSuperClass||this.raise($.OverrideNotInSubClass,t)),super.parseClassMemberWithIsStatic(e,t,n,r))}parsePostMemberNameModifiers(e){this.eat(17)&&(e.optional=!0),e.readonly&&this.match(10)&&this.raise($.ClassMethodHasReadonly,e),e.declare&&this.match(10)&&this.raise($.ClassMethodHasDeclare,e)}parseExpressionStatement(e,t,n){return(t.type===`Identifier`?this.tsParseExpressionStatement(e,t,n):void 0)||super.parseExpressionStatement(e,t,n)}shouldParseExportDeclaration(){return this.tsIsDeclarationStart()?!0:super.shouldParseExportDeclaration()}parseConditional(e,t,n){if(!this.state.maybeInArrowParameters||!this.match(17))return super.parseConditional(e,t,n);let 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){let n=super.parseParenItem(e,t);if(this.eat(17)&&(n.optional=!0,this.resetEndLocation(e)),this.match(14)){let 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(125))return this.tsInAmbientContext(()=>this.parseExportDeclaration(e));let t=this.state.startLoc,n=this.eatContextual(125);if(n&&(this.isContextual(125)||!this.shouldParseExportDeclaration()))throw this.raise($.ExpectedAmbientAfterExportDeclare,this.state.startLoc);let r=P(this.state.type)&&this.tsTryParseExportDeclaration()||super.parseExportDeclaration(e);return r?((r.type===`TSInterfaceDeclaration`||r.type===`TSTypeAliasDeclaration`||n)&&(e.exportKind=`type`),n&&r.type!==`TSImportEqualsDeclaration`&&(this.resetStartLocation(r,t),r.declare=!0),r):null}parseClassId(e,t,n,r){if((!t||n)&&this.isContextual(113))return;super.parseClassId(e,t,n,e.declare?1024:8331);let i=this.tsTryParseTypeParameters(this.tsParseInOutConstModifiers);i&&(e.typeParameters=i)}parseClassPropertyAnnotation(e){e.optional||(this.eat(35)?e.definite=!0:this.eat(17)&&(e.optional=!0));let 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($.DeclareClassFieldHasInitializer,this.state.startLoc),e.abstract&&this.match(29)){let{key:t}=e;this.raise($.AbstractPropertyHasInitializer,this.state.startLoc,{propertyName:t.type===`Identifier`&&!e.computed?t.name:`[${this.input.slice(this.offsetToSourcePos(t.start),this.offsetToSourcePos(t.end))}]`})}return super.parseClassProperty(e)}parseClassPrivateProperty(e){return e.abstract&&this.raise($.PrivateElementHasAbstract,e),e.accessibility&&this.raise($.PrivateElementHasAccessibility,e,{modifier:e.accessibility}),this.parseClassPropertyAnnotation(e),super.parseClassPrivateProperty(e)}parseClassAccessorProperty(e){return this.parseClassPropertyAnnotation(e),e.optional&&this.raise($.AccessorCannotBeOptional,e),super.parseClassAccessorProperty(e)}pushClassMethod(e,t,n,r,i,a){let o=this.tsTryParseTypeParameters(this.tsParseConstModifier);o&&i&&this.raise($.ConstructorHasTypeParameters,o);let{declare:s=!1,kind:c}=t;s&&(c===`get`||c===`set`)&&this.raise($.DeclareAccessor,t,{kind:c}),o&&(t.typeParameters=o),super.pushClassMethod(e,t,n,r,i,a)}pushClassPrivateMethod(e,t,n,r){let i=this.tsTryParseTypeParameters(this.tsParseConstModifier);i&&(t.typeParameters=i),super.pushClassPrivateMethod(e,t,n,r)}declareClassPrivateMethodInScope(e,t){e.type!==`TSDeclareMethod`&&(e.type!==`MethodDefinition`||hasOwnProperty.call(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(113)&&(e.implements=this.tsParseHeritageClause(`implements`))}parseObjPropValue(e,t,n,r,i,a,o){let s=this.tsTryParseTypeParameters(this.tsParseConstModifier);return s&&(e.typeParameters=s),super.parseObjPropValue(e,t,n,r,i,a,o)}parseFunctionParams(e,t){let n=this.tsTryParseTypeParameters(this.tsParseConstModifier);n&&(e.typeParameters=n),super.parseFunctionParams(e,t)}parseVarId(e,t){super.parseVarId(e,t),e.id.type===`Identifier`&&!this.hasPrecedingLineBreak()&&this.eat(35)&&(e.definite=!0);let 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,i,a,o;let s,c,l;if(this.hasPlugin(`jsx`)&&(this.match(143)||this.match(47))){if(s=this.state.clone(),c=this.tryParse(()=>super.parseMaybeAssign(e,t),s),!c.error)return c.node;let{context:n}=this.state,r=n[n.length-1];(r===x.j_oTag||r===x.j_expr)&&n.pop()}if(!((n=c)!=null&&n.error)&&!this.match(47))return super.parseMaybeAssign(e,t);s&&s!==this.state||(s=this.state.clone());let u,d=this.tryParse(n=>{var r,i;u=this.tsParseTypeParameters(this.tsParseConstModifier);let a=super.parseMaybeAssign(e,t);return(a.type!==`ArrowFunctionExpression`||(r=a.extra)!=null&&r.parenthesized)&&n(),((i=u)==null?void 0:i.params.length)!==0&&this.resetStartLocationFromNode(a,u),a.typeParameters=u,a},s);if(!d.error&&!d.aborted)return u&&this.reportReservedArrowTypeParam(u),d.node;if(!c&&(qt(!this.hasPlugin(`jsx`)),l=this.tryParse(()=>super.parseMaybeAssign(e,t),s),!l.error))return l.node;if((r=c)!=null&&r.node)return this.state=c.failState,c.node;if(d.node)return this.state=d.failState,u&&this.reportReservedArrowTypeParam(u),d.node;if((i=l)!=null&&i.node)return this.state=l.failState,l.node;throw((a=c)==null?void 0:a.error)||d.error||((o=l)==null?void 0:o.error)}reportReservedArrowTypeParam(e){var t;e.params.length===1&&!e.params[0].constraint&&!((t=e.extra)!=null&&t.trailingComma)&&this.getPluginOption(`typescript`,`disallowAmbiguousJSXLike`)&&this.raise($.ReservedArrowTypeParam,e)}parseMaybeUnary(e,t){return!this.hasPlugin(`jsx`)&&this.match(47)?this.tsParseTypeAssertion():super.parseMaybeUnary(e,t)}parseArrow(e){if(this.match(14)){let t=this.tryParse(e=>{let 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)}parseFunctionParamType(e){this.eat(17)&&(e.optional=!0);let 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`TSSatisfiesExpression`:case`TSNonNullExpression`:case`TSTypeAssertion`:t?this.expressionScope.recordArrowParameterBindingError($.UnexpectedTypeCastInParameter,e):this.raise($.UnexpectedTypeCastInParameter,e),this.toAssignable(e.expression,t);break;case`AssignmentExpression`:!t&&e.left.type===`TSTypeCastExpression`&&(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){switch(e){case`TSTypeCastExpression`:return!0;case`TSParameterProperty`:return`parameter`;case`TSNonNullExpression`:case`TSInstantiationExpression`:return`expression`;case`TSAsExpression`:case`TSSatisfiesExpression`:case`TSTypeAssertion`:return(n!==64||!t)&&[`expression`,!0];default:return super.isValidLVal(e,t,n)}}parseBindingAtom(){return this.state.type===78?this.parseIdentifier(!0):super.parseBindingAtom()}parseMaybeDecoratorArguments(e,t){if(this.match(47)||this.match(51)){let n=this.tsParseTypeArgumentsInExpression();if(this.match(10)){let r=super.parseMaybeDecoratorArguments(e,t);return r.typeParameters=n,r}this.unexpected(null,10)}return super.parseMaybeDecoratorArguments(e,t)}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){let n=super.parseMaybeDefault(e,t);return n.type===`AssignmentPattern`&&n.typeAnnotation&&n.right.start<n.typeAnnotation.start&&this.raise($.TypeAnnotationAfterAssign,n.typeAnnotation),n}getTokenFromCode(e){if(this.state.inType){if(e===62){this.finishOp(48,1);return}if(e===60){this.finishOp(47,1);return}}super.getTokenFromCode(e)}reScan_lt_gt(){let{type:e}=this.state;e===47?(--this.state.pos,this.readToken_lt()):e===48&&(--this.state.pos,this.readToken_gt())}reScan_lt(){let{type:e}=this.state;return e===51?(this.state.pos-=2,this.finishOp(47,1),47):e}toAssignableList(e,t,n){for(let t=0;t<e.length;t++){let n=e[t];(n==null?void 0:n.type)===`TSTypeCastExpression`&&(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)){let t=this.tsTryParseAndCatch(()=>this.tsParseTypeArgumentsInExpression());t&&(e.typeParameters=t)}return super.jsxParseOpeningElementAfterName(e)}getGetterSetterExpectedParamCount(e){let t=super.getGetterSetterExpectedParamCount(e),n=this.getObjectOrClassMethodParams(e)[0];return n&&this.isThisParam(n)?t+1:t}parseCatchClauseParam(){let e=super.parseCatchClauseParam(),t=this.tsTryParseTypeAnnotation();return t&&(e.typeAnnotation=t,this.resetEndLocation(e)),e}tsInAmbientContext(e){let{isAmbientContext:t,strict:n}=this.state;this.state.isAmbientContext=!0,this.state.strict=!1;try{return e()}finally{this.state.isAmbientContext=t,this.state.strict=n}}parseClass(e,t,n){let 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(129)){if(!this.hasFollowingLineBreak())return e.abstract=!0,this.raise($.NonClassMethodPropertyHasAbstractModifer,e),this.tsParseInterfaceDeclaration(e)}else this.unexpected(null,80)}parseMethod(e,t,n,r,i,a,o){let s=super.parseMethod(e,t,n,r,i,a,o);if(s.abstract&&(this.hasPlugin(`estree`)?s.value:s).body){let{key:e}=s;this.raise($.AbstractMethodHasImplementation,s,{methodName:e.type===`Identifier`&&!s.computed?e.name:`[${this.input.slice(this.offsetToSourcePos(e.start),this.offsetToSourcePos(e.end))}]`})}return s}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,i){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){let r=t?`imported`:`local`,i=t?`local`:`exported`,a=e[r],o,s=!1,c=!0,l=a.loc.start;if(this.isContextual(93)){let e=this.parseIdentifier();if(this.isContextual(93)){let n=this.parseIdentifier();F(this.state.type)?(s=!0,a=e,o=t?this.parseIdentifier():this.parseModuleExportName(),c=!1):(o=n,c=!1)}else F(this.state.type)?(c=!1,o=t?this.parseIdentifier():this.parseModuleExportName()):(s=!0,a=e)}else F(this.state.type)&&(s=!0,t?(a=this.parseIdentifier(!0),this.isContextual(93)||this.checkReservedWord(a.name,a.loc.start,!0,!0)):a=this.parseModuleExportName());s&&n&&this.raise(t?$.TypeModifierIsUsedInTypeImports:$.TypeModifierIsUsedInTypeExports,l),e[r]=a,e[i]=o;let u=t?`importKind`:`exportKind`;e[u]=s?`type`:`value`,c&&this.eatContextual(93)&&(e[i]=t?this.parseIdentifier():this.parseModuleExportName()),e[i]||(e[i]=X(e[r])),t&&this.checkIdentifier(e[i],s?4098:4096)}};function Qt(e){if(e.type!==`MemberExpression`)return!1;let{computed:t,property:n}=e;return t&&n.type!==`StringLiteral`&&(n.type!==`TemplateLiteral`||n.expressions.length>0)?!1:nn(e.object)}function $t(e,t){var n;let{type:r}=e;if((n=e.extra)!=null&&n.parenthesized)return!1;if(t){if(r===`Literal`){let{value:t}=e;if(typeof t==`string`||typeof t==`boolean`)return!0}}else if(r===`StringLiteral`||r===`BooleanLiteral`)return!0;return!!(en(e,t)||tn(e,t)||r===`TemplateLiteral`&&e.expressions.length===0||Qt(e))}function en(e,t){return t?e.type===`Literal`&&(typeof e.value==`number`||`bigint`in e):e.type===`NumericLiteral`||e.type===`BigIntLiteral`}function tn(e,t){if(e.type===`UnaryExpression`){let{operator:n,argument:r}=e;if(n===`-`&&en(r,t))return!0}return!1}function nn(e){return e.type===`Identifier`?!0:e.type!==`MemberExpression`||e.computed?!1:nn(e.object)}var rn=g`placeholders`({ClassNameIsRequired:`A class name is required.`,UnexpectedSpace:`Unexpected space in placeholder.`}),an=e=>class extends e{parsePlaceholder(e){if(this.match(133)){let t=this.startNode();return this.next(),this.assertNoSpace(),t.name=super.parseIdentifier(!0),this.assertNoSpace(),this.expect(133),this.finishPlaceholder(t,e)}}finishPlaceholder(e,t){let n=e;return n.expectedNode&&n.type||(n=this.finishNode(n,`Placeholder`)),n.expectedNode=t,n}getTokenFromCode(e){e===37&&this.input.charCodeAt(this.state.pos+1)===37?this.finishOp(133,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){e!==void 0&&super.checkReservedWord(e,t,n,r)}parseBindingAtom(){return this.parsePlaceholder(`Pattern`)||super.parseBindingAtom()}isValidLVal(e,t,n){return e===`Placeholder`||super.isValidLVal(e,t,n)}toAssignable(e,t){e&&e.type===`Placeholder`&&e.expectedNode===`Expression`?e.expectedNode=`Pattern`:super.toAssignable(e,t)}chStartsBindingIdentifier(e,t){return!!(super.chStartsBindingIdentifier(e,t)||this.lookahead().type===133)}verifyBreakContinue(e,t){e.label&&e.label.type===`Placeholder`||super.verifyBreakContinue(e,t)}parseExpressionStatement(e,t){var n;if(t.type!==`Placeholder`||(n=t.extra)!=null&&n.parenthesized)return super.parseExpressionStatement(e,t);if(this.match(14)){let n=e;return n.label=this.finishPlaceholder(t,`Identifier`),this.next(),n.body=super.parseStatementOrSloppyAnnexBFunctionDeclaration(),this.finishNode(n,`LabeledStatement`)}this.semicolon();let r=e;return r.name=t.name,this.finishPlaceholder(r,`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){let r=t?`ClassDeclaration`:`ClassExpression`;this.next();let i=this.state.strict,a=this.parsePlaceholder(`Identifier`);if(a){if(this.match(81)||this.match(133)||this.match(5))e.id=a;else if(n||!t)return e.id=null,e.body=this.finishPlaceholder(a,`ClassBody`),this.finishNode(e,r);else throw this.raise(rn.ClassNameIsRequired,this.state.startLoc)}else this.parseClassId(e,t,n);return super.parseClassSuper(e),e.body=this.parsePlaceholder(`ClassBody`)||super.parseClassBody(!!e.superClass,i),this.finishNode(e,r)}parseExport(e,t){let n=this.parsePlaceholder(`Identifier`);if(!n)return super.parseExport(e,t);let r=e;if(!this.isContextual(98)&&!this.match(12))return r.specifiers=[],r.source=null,r.declaration=this.finishPlaceholder(n,`Declaration`),this.finishNode(r,`ExportNamedDeclaration`);this.expectPlugin(`exportDefaultFrom`);let i=this.startNode();return i.exported=n,r.specifiers=[this.finishNode(i,`ExportDefaultSpecifier`)],super.parseExport(r,t)}isExportDefaultSpecifier(){if(this.match(65)){let e=this.nextTokenStart();if(this.isUnparsedContextual(e,`from`)&&this.input.startsWith(R(133),this.nextTokenStartSince(e+4)))return!0}return super.isExportDefaultSpecifier()}maybeParseExportDefaultSpecifier(e,t){var n;return(n=e.specifiers)!=null&&n.length?!0:super.maybeParseExportDefaultSpecifier(e,t)}checkExport(e){let{specifiers:t}=e;t!=null&&t.length&&(e.specifiers=t.filter(e=>e.exported.type===`Placeholder`)),super.checkExport(e),e.specifiers=t}parseImport(e){let t=this.parsePlaceholder(`Identifier`);if(!t)return super.parseImport(e);if(e.specifiers=[],!this.isContextual(98)&&!this.match(12))return e.source=this.finishPlaceholder(t,`StringLiteral`),this.semicolon(),this.finishNode(e,`ImportDeclaration`);let 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(98),e.source=this.parseImportSource(),this.semicolon(),this.finishNode(e,`ImportDeclaration`)}parseImportSource(){return this.parsePlaceholder(`StringLiteral`)||super.parseImportSource()}assertNoSpace(){this.state.start>this.offsetToSourcePos(this.state.lastTokEndLoc.index)&&this.raise(rn.UnexpectedSpace,this.state.lastTokEndLoc)}},on=e=>class extends e{parseV8Intrinsic(){if(this.match(54)){let e=this.state.startLoc,t=this.startNode();if(this.next(),P(this.state.type)){let 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)}},sn=[`minimal`,`fsharp`,`hack`,`smart`],cn=[`^^`,`@@`,`^`,`%`,`#`];function ln(e){if(e.has(`decorators`)){if(e.has(`decorators-legacy`))throw Error(`Cannot use the decorators and decorators-legacy plugin together`);let t=e.get(`decorators`).decoratorsBeforeExport;if(t!=null&&typeof t!=`boolean`)throw Error(`'decoratorsBeforeExport' must be a boolean, if specified.`);let n=e.get(`decorators`).allowCallParenthesized;if(n!=null&&typeof n!=`boolean`)throw Error(`'allowCallParenthesized' must be a boolean.`)}if(e.has(`flow`)&&e.has(`typescript`))throw Error(`Cannot combine flow and typescript plugins.`);if(e.has(`placeholders`)&&e.has(`v8intrinsic`))throw Error(`Cannot combine placeholders and v8intrinsic plugins.`);if(e.has(`pipelineOperator`)){var t;let n=e.get(`pipelineOperator`).proposal;if(!sn.includes(n)){let e=sn.map(e=>`"${e}"`).join(`, `);throw Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${e}.`)}let r=((t=e.get(`recordAndTuple`))==null?void 0:t.syntaxType)===`hash`;if(n===`hack`){if(e.has(`placeholders`))throw Error(`Cannot combine placeholders plugin and Hack-style pipes.`);if(e.has(`v8intrinsic`))throw Error(`Cannot combine v8intrinsic plugin and Hack-style pipes.`);let t=e.get(`pipelineOperator`).topicToken;if(!cn.includes(t)){let e=cn.map(e=>`"${e}"`).join(`, `);throw Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${e}.`)}if(t===`#`&&r)throw Error(`Plugin conflict between \`["pipelineOperator", { proposal: "hack", topicToken: "#" }]\` and \`${JSON.stringify([`recordAndTuple`,e.get(`recordAndTuple`)])}\`.`)}else if(n===`smart`&&r)throw Error(`Plugin conflict between \`["pipelineOperator", { proposal: "smart" }]\` and \`${JSON.stringify([`recordAndTuple`,e.get(`recordAndTuple`)])}\`.`)}if(e.has(`moduleAttributes`)){if(e.has(`deprecatedImportAssert`)||e.has(`importAssertions`))throw Error(`Cannot combine importAssertions, deprecatedImportAssert and moduleAttributes plugins.`);if(e.get(`moduleAttributes`).version!==`may-2020`)throw Error(`The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'.`)}if(e.has(`importAssertions`)&&e.has(`deprecatedImportAssert`))throw Error(`Cannot combine importAssertions and deprecatedImportAssert plugins.`);if(!e.has(`deprecatedImportAssert`)&&e.has(`importAttributes`)&&e.get(`importAttributes`).deprecatedAssertSyntax&&e.set(`deprecatedImportAssert`,{}),e.has(`recordAndTuple`)){let t=e.get(`recordAndTuple`).syntaxType;if(t!=null){let e=[`hash`,`bar`];if(!e.includes(t))throw Error(`The 'syntaxType' option of the 'recordAndTuple' plugin must be one of: `+e.map(e=>`'${e}'`).join(`, `))}}if(e.has(`asyncDoExpressions`)&&!e.has(`doExpressions`)){let e=Error(`'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins.`);throw e.missingPlugins=`doExpressions`,e}if(e.has(`optionalChainingAssign`)&&e.get(`optionalChainingAssign`).version!==`2023-07`)throw Error(`The 'optionalChainingAssign' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is '2023-07'.`)}var un={estree:y,jsx:Vt,flow:Lt,typescript:Zt,v8intrinsic:on,placeholders:an},dn=Object.keys(un),fn=class extends Gt{checkProto(e,t,n,r){if(e.type===`SpreadElement`||this.isObjectMethod(e)||e.computed||e.shorthand)return;let i=e.key;if((i.type===`Identifier`?i.name:i.value)===`__proto__`){if(t){this.raise(_.RecordNoProto,i);return}n.used&&(r?r.doubleProtoLoc===null&&(r.doubleProtoLoc=i.loc.start):this.raise(_.DuplicateProto,i)),n.used=!0}}shouldExitDescending(e,t){return e.type===`ArrowFunctionExpression`&&this.offsetToSourcePos(e.start)===t}getExpression(){this.enterInitialScopes(),this.nextToken();let e=this.parseExpression();return this.match(140)||this.unexpected(),this.finalizeRemainingComments(),e.comments=this.comments,e.errors=this.state.errors,this.optionFlags&128&&(e.tokens=this.tokens),e}parseExpression(e,t){return e?this.disallowInAnd(()=>this.parseExpressionBase(t)):this.allowInAnd(()=>this.parseExpressionBase(t))}parseExpressionBase(e){let t=this.state.startLoc,n=this.parseMaybeAssign(e);if(this.match(12)){let 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){e.optionalParametersLoc=(t==null?void 0:t.loc)??this.state.startLoc}parseMaybeAssign(e,t){let n=this.state.startLoc;if(this.isContextual(108)&&this.prodParam.hasYield){let e=this.parseYield();return t&&(e=t.call(this,e,n)),e}let r;e?r=!1:(e=new J,r=!0);let{type:i}=this.state;(i===10||P(i))&&(this.state.potentialArrowAt=this.state.start);let a=this.parseMaybeConditional(e);if(t&&(a=t.call(this,a,n)),ge(this.state.type)){let t=this.startNodeAt(n);if(t.operator=this.state.value,this.match(29)){this.toAssignable(a,!0),t.left=a;let r=n.index;e.doubleProtoLoc!=null&&e.doubleProtoLoc.index>=r&&(e.doubleProtoLoc=null),e.shorthandAssignLoc!=null&&e.shorthandAssignLoc.index>=r&&(e.shorthandAssignLoc=null),e.privateKeyLoc!=null&&e.privateKeyLoc.index>=r&&(this.checkDestructuringPrivate(e),e.privateKeyLoc=null)}else t.left=a;return this.next(),t.right=this.parseMaybeAssign(),this.checkLVal(a,this.finishNode(t,`AssignmentExpression`)),t}return r&&this.checkExpressionErrors(e,!0),a}parseMaybeConditional(e){let 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)){let 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(139)?this.parsePrivateName():this.parseMaybeUnary(e)}parseExprOps(e){let 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)){let t=this.getPrivateNameSV(e);(n>=Ce(58)||!this.prodParam.hasIn||!this.match(58))&&this.raise(_.PrivateInExpectedIn,e,{identifierName:t}),this.classScope.usePrivateName(t,e.loc.start)}let r=this.state.type;if(ye(r)&&(this.prodParam.hasIn||!this.match(58))){let i=Ce(r);if(i>n){if(r===39){if(this.expectPlugin(`pipelineOperator`),this.state.inFSharpPipelineDirectBody)return e;this.checkPipelineAtInfixOperator(e,t)}let a=this.startNodeAt(t);a.left=e,a.operator=this.state.value;let o=r===41||r===42,s=r===40;if(s&&(i=Ce(42)),this.next(),r===39&&this.hasPlugin([`pipelineOperator`,{proposal:`minimal`}])&&this.state.type===96&&this.prodParam.hasAwait)throw this.raise(_.UnexpectedAwaitAfterPipelineBody,this.state.startLoc);a.right=this.parseExprOpRightExpr(r,i);let c=this.finishNode(a,o||s?`LogicalExpression`:`BinaryExpression`),l=this.state.type;if(s&&(l===41||l===42)||o&&l===40)throw this.raise(_.MixingCoalesceWithLogical,this.state.startLoc);return this.parseExprOp(c,t,n)}}return e}parseExprOpRightExpr(e,t){let n=this.state.startLoc;switch(e){case 39:switch(this.getPluginOption(`pipelineOperator`,`proposal`)){case`hack`:return this.withTopicBindingContext(()=>this.parseHackPipeBody());case`fsharp`:return this.withSoloAwaitPermittingContext(()=>this.parseFSharpPipelineBody(t))}if(this.getPluginOption(`pipelineOperator`,`proposal`)===`smart`)return this.withTopicBindingContext(()=>{if(this.prodParam.hasYield&&this.isContextual(108))throw this.raise(_.PipeBodyIsTighter,this.state.startLoc);return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e,t),n)});default:return this.parseExprOpBaseRightExpr(e,t)}}parseExprOpBaseRightExpr(e,t){let n=this.state.startLoc;return this.parseExprOp(this.parseMaybeUnaryOrPrivate(),n,we(e)?t-1:t)}parseHackPipeBody(){var e;let{startLoc:t}=this.state,n=this.parseMaybeAssign();return d.has(n.type)&&!((e=n.extra)!=null&&e.parenthesized)&&this.raise(_.PipeUnparenthesizedBody,t,{type:n.type}),this.topicReferenceWasUsedInCurrentContext()||this.raise(_.PipeTopicUnused,t),n}checkExponentialAfterUnary(e){this.match(57)&&this.raise(_.UnexpectedTokenUnaryExponentiation,e.argument)}parseMaybeUnary(e,t){let n=this.state.startLoc,r=this.isContextual(96);if(r&&this.recordAwaitIfAllowed()){this.next();let e=this.parseAwait(n);return t||this.checkExponentialAfterUnary(e),e}let i=this.match(34),a=this.startNode();if(be(this.state.type)){a.operator=this.state.value,a.prefix=!0,this.match(72)&&this.expectPlugin(`throwExpressions`);let n=this.match(89);if(this.next(),a.argument=this.parseMaybeUnary(null,!0),this.checkExpressionErrors(e,!0),this.state.strict&&n){let e=a.argument;e.type===`Identifier`?this.raise(_.StrictDelete,a):this.hasPropertyAsPrivateName(e)&&this.raise(_.DeletePrivateField,a)}if(!i)return t||this.checkExponentialAfterUnary(a),this.finishNode(a,`UnaryExpression`)}let o=this.parseUpdate(a,i,e);if(r){let{type:e}=this.state;if((this.hasPlugin(`v8intrinsic`)?he(e):he(e)&&!this.match(54))&&!this.isAmbiguousAwait())return this.raiseOverwrite(_.AwaitNotInAsyncContext,n),this.parseAwait(n)}return o}parseUpdate(e,t,n){if(t){let t=e;return this.checkLVal(t.argument,this.finishNode(t,`UpdateExpression`)),e}let r=this.state.startLoc,i=this.parseExprSubscripts(n);if(this.checkExpressionErrors(n,!1))return i;for(;L(this.state.type)&&!this.canInsertSemicolon();){let e=this.startNodeAt(r);e.operator=this.state.value,e.prefix=!1,e.argument=i,this.next(),this.checkLVal(i,i=this.finishNode(e,`UpdateExpression`))}return i}parseExprSubscripts(e){let 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){let 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){let{type:i}=this.state;if(!n&&i===15)return this.parseBind(e,t,n,r);if(Te(i))return this.parseTaggedTemplateExpression(e,t,r);let a=!1;if(i===18){if(n&&(this.raise(_.OptionalChainingNoNew,this.state.startLoc),this.lookaheadCharCode()===40))return r.stop=!0,e;r.optionalChainMember=a=!0,this.next()}if(!n&&this.match(10))return this.parseCoverCallAndAsyncArrowHead(e,t,r,a);{let n=this.eat(0);return n||a||this.eat(16)?this.parseMember(e,t,r,n,a):(r.stop=!0,e)}}parseMember(e,t,n,r,i){let a=this.startNodeAt(t);return a.object=e,a.computed=r,r?(a.property=this.parseExpression(),this.expect(3)):this.match(139)?(e.type===`Super`&&this.raise(_.SuperPrivateField,t),this.classScope.usePrivateName(this.state.value,this.state.startLoc),a.property=this.parsePrivateName()):a.property=this.parseIdentifier(!0),n.optionalChainMember?(a.optional=i,this.finishNode(a,`OptionalMemberExpression`)):this.finishNode(a,`MemberExpression`)}parseBind(e,t,n,r){let i=this.startNodeAt(t);return i.object=e,this.next(),i.callee=this.parseNoCallExpr(),r.stop=!0,this.parseSubscripts(this.finishNode(i,`BindExpression`),t,n)}parseCoverCallAndAsyncArrowHead(e,t,n,r){let i=this.state.maybeInArrowParameters,a=null;this.state.maybeInArrowParameters=!0,this.next();let o=this.startNodeAt(t);o.callee=e;let{maybeAsyncArrow:s,optionalChainMember:c}=n;s&&(this.expressionScope.enter(Ct()),a=new J),c&&(o.optional=r),o.arguments=r?this.parseCallExpressionArguments(11):this.parseCallExpressionArguments(11,e.type!==`Super`,o,a);let l=this.finishCallExpression(o,c);return s&&this.shouldParseAsyncArrow()&&!r?(n.stop=!0,this.checkDestructuringPrivate(a),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),l=this.parseAsyncArrowFromCallExpression(this.startNodeAt(t),l)):(s&&(this.checkExpressionErrors(a,!0),this.expressionScope.exit()),this.toReferencedArguments(l)),this.state.maybeInArrowParameters=i,l}toReferencedArguments(e,t){this.toReferencedListDeep(e.arguments,t)}parseTaggedTemplateExpression(e,t,n){let r=this.startNodeAt(t);return r.tag=e,r.quasi=this.parseTemplate(!0),n.optionalChainMember&&this.raise(_.OptionalChainingNoTemplate,t),this.finishNode(r,`TaggedTemplateExpression`)}atPossibleAsyncArrow(e){return e.type===`Identifier`&&e.name===`async`&&this.state.lastTokEndLoc.index===e.end&&!this.canInsertSemicolon()&&e.end-e.start===5&&this.offsetToSourcePos(e.start)===this.state.potentialArrowAt}finishCallExpression(e,t){if(e.callee.type===`Import`){if(e.arguments.length===0||e.arguments.length>2)this.raise(_.ImportCallArity,e);else for(let t of e.arguments)t.type===`SpreadElement`&&this.raise(_.ImportCallSpreadArgument,t)}return this.finishNode(e,t?`OptionalCallExpression`:`CallExpression`)}parseCallExpressionArguments(e,t,n,r){let i=[],a=!0,o=this.state.inFSharpPipelineDirectBody;for(this.state.inFSharpPipelineDirectBody=!1;!this.eat(e);){if(a)a=!1;else if(this.expect(12),this.match(e)){n&&this.addTrailingCommaExtraToNode(n),this.next();break}i.push(this.parseExprListItem(!1,r,t))}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,(n=t.extra)==null?void 0:n.trailingCommaLoc),t.innerComments&&Ze(e,t.innerComments),t.callee.trailingComments&&Ze(e,t.callee.trailingComments),e}parseNoCallExpr(){let e=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,!0)}parseExprAtom(e){let t,n=null,{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.optionFlags&256?this.parseImportCall(t):this.finishNode(t,`Import`):(this.raise(_.UnsupportedImport,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 135:return this.parseNumericLiteral(this.state.value);case 136:return this.parseBigIntLiteral(this.state.value);case 134: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:{let e=this.state.potentialArrowAt===this.state.start;return this.parseParenAndDistinguishExpression(e)}case 2:case 1:return this.parseArrayLike(this.state.type===2?4:3,!1,!0);case 0:return this.parseArrayLike(3,!0,!1,e);case 6:case 7:return this.parseObjectLike(this.state.type===6?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;let e=t.callee=this.parseNoCallExpr();if(e.type===`MemberExpression`)return this.finishNode(t,`BindExpression`);throw this.raise(_.UnsupportedBind,e)}case 139:return this.raise(_.PrivateInExpectedIn,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:{let e=this.getPluginOption(`pipelineOperator`,`proposal`);if(e)return this.parseTopicReference(e);this.unexpected();break}case 47:{let e=this.input.codePointAt(this.nextTokenStart());V(e)||e===62?this.expectOnePlugin([`jsx`,`flow`,`typescript`]):this.unexpected();break}default:if(r===137)return this.parseDecimalLiteral(this.state.value);if(P(r)){if(this.isContextual(127)&&this.lookaheadInLineCharCode()===123)return this.parseModuleExpression();let e=this.state.potentialArrowAt===this.state.start,t=this.state.containsEsc,n=this.parseIdentifier();if(!t&&n.name===`async`&&!this.canInsertSemicolon()){let{type:e}=this.state;if(e===68)return this.resetPreviousNodeTrailingComments(n),this.next(),this.parseAsyncFunctionExpression(this.startNodeAtNode(n));if(P(e))return this.lookaheadCharCode()===61?this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(n)):n;if(e===90)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){let 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){let 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))return n===`hack`?(this.topicReferenceIsAllowedInCurrentContext()||this.raise(_.PipeTopicUnbound,t),this.registerTopicReference(),this.finishNode(e,`TopicReference`)):(this.topicReferenceIsAllowedInCurrentContext()||this.raise(_.PrimaryTopicNotAllowed,t),this.registerTopicReference(),this.finishNode(e,`PipelinePrimaryTopicReference`));throw this.raise(_.PipeTopicUnconfiguredToken,t,{token:R(r)})}testTopicReferenceConfiguration(e,t,n){switch(e){case`hack`:return this.hasPlugin([`pipelineOperator`,{topicToken:R(n)}]);case`smart`:return n===27;default:throw this.raise(_.PipeTopicRequiresHackPipes,t)}}parseAsyncArrowUnaryFunction(e){this.prodParam.enter(q(!0,this.prodParam.hasYield));let t=[this.parseIdentifier()];return this.prodParam.exit(),this.hasPrecedingLineBreak()&&this.raise(_.LineTerminatorBeforeArrow,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();let 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(){let e=this.startNode();return this.next(),this.match(10)&&!this.scope.allowDirectSuper&&!(this.optionFlags&16)?this.raise(_.SuperNotAllowed,e):!this.scope.allowSuper&&!(this.optionFlags&16)&&this.raise(_.UnexpectedSuper,e),this.match(10)||this.match(0)||this.match(16)||this.raise(_.UnsupportedSuper,e),this.finishNode(e,`Super`)}parsePrivateName(){let 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(){let e=this.startNode();if(this.next(),this.prodParam.hasYield&&this.match(16)){let t=this.createIdentifier(this.startNodeAtNode(e),`function`);return this.next(),this.match(103)?this.expectPlugin(`functionSent`):this.hasPlugin(`functionSent`)||this.unexpected(),this.parseMetaProperty(e,t,`sent`)}return this.parseFunction(e)}parseMetaProperty(e,t,n){e.meta=t;let r=this.state.containsEsc;return e.property=this.parseIdentifier(!0),(e.property.name!==n||r)&&this.raise(_.UnsupportedMetaProperty,e.property,{target:t.name,onlyValidPropertyName:n}),this.finishNode(e,`MetaProperty`)}parseImportMetaProperty(e){let t=this.createIdentifier(this.startNodeAtNode(e),`import`);if(this.next(),this.isContextual(101))this.inModule||this.raise(_.ImportMetaOutsideModule,t),this.sawUnambiguousESM=!0;else if(this.isContextual(105)||this.isContextual(97)){let t=this.isContextual(105);if(this.expectPlugin(t?`sourcePhaseImports`:`deferredImportEvaluation`),!(this.optionFlags&256))throw this.raise(_.DynamicImportPhaseRequiresImportExpressions,this.state.startLoc,{phase:this.state.value});return this.next(),e.phase=t?`source`:`defer`,this.parseImportCall(e)}return this.parseMetaProperty(e,t,`meta`)}parseLiteralAtNode(e,t,n){return this.addExtra(n,`rawValue`,e),this.addExtra(n,`raw`,this.input.slice(this.offsetToSourcePos(n.start),this.state.end)),n.value=e,this.next(),this.finishNode(n,t)}parseLiteral(e,t){let 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){let t=this.startNode();return this.addExtra(t,`raw`,this.input.slice(this.offsetToSourcePos(t.start),this.state.end)),t.pattern=e.pattern,t.flags=e.flags,this.next(),this.finishNode(t,`RegExpLiteral`)}parseBooleanLiteral(e){let t=this.startNode();return t.value=e,this.next(),this.finishNode(t,`BooleanLiteral`)}parseNullLiteral(){let e=this.startNode();return this.next(),this.finishNode(e,`NullLiteral`)}parseParenAndDistinguishExpression(e){let t=this.state.startLoc,n;this.next(),this.expressionScope.enter(St());let r=this.state.maybeInArrowParameters,i=this.state.inFSharpPipelineDirectBody;this.state.maybeInArrowParameters=!0,this.state.inFSharpPipelineDirectBody=!1;let a=this.state.startLoc,o=[],s=new J,c=!0,l,u;for(;!this.match(11);){if(c)c=!1;else if(this.expect(12,s.optionalParametersLoc===null?null:s.optionalParametersLoc),this.match(11)){u=this.state.startLoc;break}if(this.match(21)){let e=this.state.startLoc;if(l=this.state.startLoc,o.push(this.parseParenItem(this.parseRestBinding(),e)),!this.checkCommaAfterRest(41))break}else o.push(this.parseMaybeAssignAllowIn(s,this.parseParenItem))}let d=this.state.lastTokEndLoc;this.expect(11),this.state.maybeInArrowParameters=r,this.state.inFSharpPipelineDirectBody=i;let f=this.startNodeAt(t);return e&&this.shouldParseArrow(o)&&(f=this.parseArrow(f))?(this.checkDestructuringPrivate(s),this.expressionScope.validateAsPattern(),this.expressionScope.exit(),this.parseArrowExpression(f,o,!1),f):(this.expressionScope.exit(),o.length||this.unexpected(this.state.lastTokStartLoc),u&&this.unexpected(u),l&&this.unexpected(l),this.checkExpressionErrors(s,!0),this.toReferencedListDeep(o,!0),o.length>1?(n=this.startNodeAt(a),n.expressions=o,this.finishNode(n,`SequenceExpression`),this.resetEndLocation(n,d)):n=o[0],this.wrapParenthesis(t,n))}wrapParenthesis(e,t){if(!(this.optionFlags&512))return this.addExtra(t,`parenthesized`,!0),this.addExtra(t,`parenStart`,e.index),this.takeSurroundingComments(t,e.index,this.state.lastTokEndLoc.index),t;let 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(){let e=this.startNode();if(this.next(),this.match(16)){let t=this.createIdentifier(this.startNodeAtNode(e),`new`);this.next();let n=this.parseMetaProperty(e,t,`target`);return this.scope.inNonArrowFunction||this.scope.inClass||this.optionFlags&4||this.raise(_.UnexpectedNewTarget,n),n}return this.parseNew(e)}parseNew(e){if(this.parseNewCallee(e),this.eat(10)){let t=this.parseExprList(11);this.toReferencedList(t),e.arguments=t}else e.arguments=[];return this.finishNode(e,`NewExpression`)}parseNewCallee(e){let t=this.match(83),n=this.parseNoCallExpr();e.callee=n,t&&(n.type===`Import`||n.type===`ImportExpression`)&&this.raise(_.ImportCallNotNewExpression,n)}parseTemplateElement(e){let{start:t,startLoc:n,end:r,value:a}=this.state,o=t+1,s=this.startNodeAt(i(n,1));a===null&&(e||this.raise(_.InvalidEscapeSequenceTemplate,i(this.state.firstInvalidTemplateEscapePos,1)));let c=this.match(24),l=c?-1:-2,u=r+l;s.value={raw:this.input.slice(o,u).replace(/\r\n?/g,`
|
|
141
|
+
`),cooked:a===null?null:a.slice(1,l)},s.tail=c,this.next();let d=this.finishNode(s,`TemplateElement`);return this.resetEndLocation(d,i(this.state.lastTokEndLoc,l)),d}parseTemplate(e){let t=this.startNode(),n=this.parseTemplateElement(e),r=[n],i=[];for(;!n.tail;)i.push(this.parseTemplateSubstitution()),this.readTemplateContinuation(),r.push(n=this.parseTemplateElement(e));return t.expressions=i,t.quasis=r,this.finishNode(t,`TemplateLiteral`)}parseTemplateSubstitution(){return this.parseExpression()}parseObjectLike(e,t,n,r){n&&this.expectPlugin(`recordAndTuple`);let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=Object.create(null),o=!0,s=this.startNode();for(s.properties=[],this.next();!this.match(e);){if(o)o=!1;else if(this.expect(12),this.match(e)){this.addTrailingCommaExtraToNode(s);break}let i;t?i=this.parseBindingProperty():(i=this.parsePropertyDefinition(r),this.checkProto(i,n,a,r)),n&&!this.isObjectProperty(i)&&i.type!==`SpreadElement`&&this.raise(_.InvalidRecordProperty,i),i.shorthand&&this.addExtra(i,`shorthand`,!0),s.properties.push(i)}this.next(),this.state.inFSharpPipelineDirectBody=i;let c=`ObjectExpression`;return t?c=`ObjectPattern`:n&&(c=`RecordExpression`),this.finishNode(s,c)}addTrailingCommaExtraToNode(e){this.addExtra(e,`trailingComma`,this.state.lastTokStartLoc.index),this.addExtra(e,`trailingCommaLoc`,this.state.lastTokStartLoc,!1)}maybeAsyncOrAccessorProp(e){return!e.computed&&e.key.type===`Identifier`&&(this.isLiteralPropertyName()||this.match(0)||this.match(55))}parsePropertyDefinition(e){let t=[];if(this.match(26))for(this.hasPlugin(`decorators`)&&this.raise(_.UnsupportedPropertyDecorator,this.state.startLoc);this.match(26);)t.push(this.parseDecorator());let n=this.startNode(),r=!1,i=!1,a;if(this.match(21))return t.length&&this.unexpected(),this.parseSpread();t.length&&(n.decorators=t,t=[]),n.method=!1,e&&(a=this.state.startLoc);let o=this.eat(55);this.parsePropertyNamePrefixOperator(n);let s=this.state.containsEsc;if(this.parsePropertyName(n,e),!o&&!s&&this.maybeAsyncOrAccessorProp(n)){let{key:e}=n,t=e.name;t===`async`&&!this.hasPrecedingLineBreak()&&(r=!0,this.resetPreviousNodeTrailingComments(e),o=this.eat(55),this.parsePropertyName(n)),(t===`get`||t===`set`)&&(i=!0,this.resetPreviousNodeTrailingComments(e),n.kind=t,this.match(55)&&(o=!0,this.raise(_.AccessorIsGenerator,this.state.curPosition(),{kind:t}),this.next()),this.parsePropertyName(n))}return this.parseObjPropValue(n,a,o,r,!1,i,e)}getGetterSetterExpectedParamCount(e){return e.kind===`get`?0:1}getObjectOrClassMethodParams(e){return e.params}checkGetterSetterParams(e){var t;let n=this.getGetterSetterExpectedParamCount(e),r=this.getObjectOrClassMethodParams(e);r.length!==n&&this.raise(e.kind===`get`?_.BadGetterArity:_.BadSetterArity,e),e.kind===`set`&&((t=r[r.length-1])==null?void 0:t.type)===`RestElement`&&this.raise(_.BadSetterRestParameter,e)}parseObjectMethod(e,t,n,r,i){if(i){let 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&&e.key.type===`Identifier`){if(this.checkReservedWord(e.key.name,e.key.loc.start,!0,!1),n)e.value=this.parseMaybeDefault(t,X(e.key));else if(this.match(29)){let n=this.state.startLoc;r==null?this.raise(_.InvalidCoverInitializedName,n):r.shorthandAssignLoc===null&&(r.shorthandAssignLoc=n),e.value=this.parseMaybeDefault(t,X(e.key))}else e.value=X(e.key);return e.shorthand=!0,this.finishNode(e,`ObjectProperty`)}}parseObjPropValue(e,t,n,r,i,a,o){let s=this.parseObjectMethod(e,n,r,i,a)||this.parseObjectProperty(e,t,i,o);return s||this.unexpected(),s}parsePropertyName(e,t){if(this.eat(0))e.computed=!0,e.key=this.parseMaybeAssignAllowIn(),this.expect(3);else{let{type:n,value:r}=this.state,i;if(F(n))i=this.parseIdentifier(!0);else switch(n){case 135:i=this.parseNumericLiteral(r);break;case 134:i=this.parseStringLiteral(r);break;case 136:i=this.parseBigIntLiteral(r);break;case 139:{let e=this.state.startLoc;t==null?this.raise(_.UnexpectedPrivateField,e):t.privateKeyLoc===null&&(t.privateKeyLoc=e),i=this.parsePrivateName();break}default:if(n===137){i=this.parseDecimalLiteral(r);break}this.unexpected()}e.key=i,n!==139&&(e.computed=!1)}}initFunction(e,t){e.id=null,e.generator=!1,e.async=t}parseMethod(e,t,n,r,i,a,o=!1){this.initFunction(e,n),e.generator=t,this.scope.enter(18|(o?64:0)|(i?32:0)),this.prodParam.enter(q(n,e.generator)),this.parseFunctionParams(e,r);let s=this.parseFunctionBodyAndFinish(e,a,!0);return this.prodParam.exit(),this.scope.exit(),s}parseArrayLike(e,t,n,r){n&&this.expectPlugin(`recordAndTuple`);let i=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!1;let a=this.startNode();return this.next(),a.elements=this.parseExprList(e,!n,r,a),this.state.inFSharpPipelineDirectBody=i,this.finishNode(a,n?`TupleExpression`:`ArrayExpression`)}parseArrowExpression(e,t,n,r){this.scope.enter(6);let i=q(n,!1);!this.match(5)&&this.prodParam.hasIn&&(i|=8),this.prodParam.enter(i),this.initFunction(e,n);let a=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=a,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){let r=t&&!this.match(5);if(this.expressionScope.enter(wt()),r)e.body=this.parseMaybeAssign(),this.checkParams(e,!1,t,!1);else{let r=this.state.strict,i=this.state.labels;this.state.labels=[],this.prodParam.enter(this.prodParam.currentFlags()|4),e.body=this.parseBlock(!0,!1,i=>{let a=!this.isSimpleParamList(e.params);i&&a&&this.raise(_.IllegalLanguageModeDirective,(e.kind===`method`||e.kind===`constructor`)&&e.key?e.key.loc.end:e);let o=!r&&this.state.strict;this.checkParams(e,!this.state.strict&&!t&&!n&&!a,t,o),this.state.strict&&e.id&&this.checkIdentifier(e.id,65,o)}),this.prodParam.exit(),this.state.labels=i}this.expressionScope.exit()}isSimpleParameter(e){return e.type===`Identifier`}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){let i=!t&&new Set,a={type:`FormalParameters`};for(let t of e.params)this.checkLVal(t,a,5,i,r)}parseExprList(e,t,n,r){let i=[],a=!0;for(;!this.eat(e);){if(a)a=!1;else if(this.expect(12),this.match(e)){r&&this.addTrailingCommaExtraToNode(r),this.next();break}i.push(this.parseExprListItem(t,n))}return i}parseExprListItem(e,t,n){let r;if(this.match(12))e||this.raise(_.UnexpectedToken,this.state.curPosition(),{unexpected:`,`}),r=null;else if(this.match(21)){let e=this.state.startLoc;r=this.parseParenItem(this.parseSpread(t),e)}else if(this.match(17)){this.expectPlugin(`partialApplication`),n||this.raise(_.UnexpectedArgumentPlaceholder,this.state.startLoc);let e=this.startNode();this.next(),r=this.finishNode(e,`ArgumentPlaceholder`)}else r=this.parseMaybeAssignAllowIn(t,this.parseParenItem);return r}parseIdentifier(e){let 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,{startLoc:n,type:r}=this.state;F(r)?t=this.state.value:this.unexpected();let i=fe(r);return e?i&&this.replaceToken(132):this.checkReservedWord(t,n,i,!1),this.next(),t}checkReservedWord(e,t,n,r){if(!(e.length>10)&&Ue(e)){if(n&&Be(e))this.raise(_.UnexpectedKeyword,t,{keyword:e});else if((this.state.strict?r?ze:Le:Ie)(e,this.inModule))this.raise(_.UnexpectedReservedWord,t,{reservedWord:e});else if(e===`yield`){if(this.prodParam.hasYield){this.raise(_.YieldBindingIdentifier,t);return}}else if(e===`await`){if(this.prodParam.hasAwait){this.raise(_.AwaitBindingIdentifier,t);return}if(this.scope.inStaticBlock){this.raise(_.AwaitBindingIdentifierInStaticBlock,t);return}this.expressionScope.recordAsyncArrowParametersError(t)}else if(e===`arguments`&&this.scope.inClassAndNotInNonArrowFunction){this.raise(_.ArgumentsInClass,t);return}}}recordAwaitIfAllowed(){let e=this.prodParam.hasAwait||this.optionFlags&1&&!this.scope.inFunction;return e&&!this.scope.inFunction&&(this.state.hasTopLevelAwait=!0),e}parseAwait(e){let t=this.startNodeAt(e);return this.expressionScope.recordParameterInitializerError(_.AwaitExpressionFormalParameter,t),this.eat(55)&&this.raise(_.ObsoleteAwaitStar,t),!this.scope.inFunction&&!(this.optionFlags&1)&&(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;let{type:e}=this.state;return e===53||e===10||e===0||Te(e)||e===102&&!this.state.containsEsc||e===138||e===56||this.hasPlugin(`v8intrinsic`)&&e===54}parseYield(){let e=this.startNode();this.expressionScope.recordParameterInitializerError(_.YieldInParameter,e),this.next();let t=!1,n=null;if(!this.hasPrecedingLineBreak())switch(t=this.eat(55),this.state.type){case 13:case 140: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`)}parseImportCall(e){if(this.next(),e.source=this.parseMaybeAssignAllowIn(),e.options=null,this.eat(12)&&!this.match(11)&&(e.options=this.parseMaybeAssignAllowIn(),this.eat(12)&&!this.match(11))){do this.parseMaybeAssignAllowIn();while(this.eat(12)&&!this.match(11));this.raise(_.ImportCallArity,e)}return this.expect(11),this.finishNode(e,`ImportExpression`)}checkPipelineAtInfixOperator(e,t){this.hasPlugin([`pipelineOperator`,{proposal:`smart`}])&&e.type===`SequenceExpression`&&this.raise(_.PipelineHeadSequenceExpression,t)}parseSmartPipelineBodyInStyle(e,t){if(this.isSimpleReference(e)){let n=this.startNodeAt(t);return n.callee=e,this.finishNode(n,`PipelineBareFunction`)}{let 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(_.PipelineBodyNoArrow,this.state.startLoc);this.topicReferenceWasUsedInCurrentContext()||this.raise(_.PipelineTopicUnused,e)}withTopicBindingContext(e){let 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`}])){let t=this.state.topicContext;this.state.topicContext={maxNumOfResolvableTopics:0,maxTopicIndex:null};try{return e()}finally{this.state.topicContext=t}}else return e()}withSoloAwaitPermittingContext(e){let t=this.state.soloAwait;this.state.soloAwait=!0;try{return e()}finally{this.state.soloAwait=t}}allowInAnd(e){let t=this.prodParam.currentFlags();if(8&~t){this.prodParam.enter(t|8);try{return e()}finally{this.prodParam.exit()}}return e()}disallowInAnd(e){let t=this.prodParam.currentFlags();if(8&t){this.prodParam.enter(t&-9);try{return e()}finally{this.prodParam.exit()}}return e()}registerTopicReference(){this.state.topicContext.maxTopicIndex=0}topicReferenceIsAllowedInCurrentContext(){return this.state.topicContext.maxNumOfResolvableTopics>=1}topicReferenceWasUsedInCurrentContext(){return this.state.topicContext.maxTopicIndex!=null&&this.state.topicContext.maxTopicIndex>=0}parseFSharpPipelineBody(e){let t=this.state.startLoc;this.state.potentialArrowAt=this.state.start;let n=this.state.inFSharpPipelineDirectBody;this.state.inFSharpPipelineDirectBody=!0;let r=this.parseExprOp(this.parseMaybeUnaryOrPrivate(),t,e);return this.state.inFSharpPipelineDirectBody=n,r}parseModuleExpression(){this.expectPlugin(`moduleBlocks`);let e=this.startNode();this.next(),this.match(5)||this.unexpected(null,5);let t=this.startNodeAt(this.state.endLoc);this.next();let n=this.initializeScopes(!0);this.enterInitialScopes();try{e.body=this.parseProgram(t,8,`module`)}finally{n()}return this.finishNode(e,`ModuleExpression`)}parsePropertyNamePrefixOperator(e){}},pn={kind:1},mn={kind:2},hn=/[\uD800-\uDFFF]/u,gn=/in(?:stanceof)?/y;function _n(e,t,n){for(let r=0;r<e.length;r++){let a=e[r],{type:o}=a;if(typeof o==`number`){if(o===139){let{loc:t,start:n,value:o,end:s}=a,c=n+1,l=i(t.start,1);e.splice(r,1,new K({type:z(27),value:`#`,start:n,end:c,startLoc:t.start,endLoc:l}),new K({type:z(132),value:o,start:c,end:s,startLoc:l,endLoc:t.end})),r++;continue}if(Te(o)){let{loc:s,start:c,value:l,end:u}=a,d=c+1,f=i(s.start,1),p;p=t.charCodeAt(c-n)===96?new K({type:z(22),value:"`",start:c,end:d,startLoc:s.start,endLoc:f}):new K({type:z(8),value:`}`,start:c,end:d,startLoc:s.start,endLoc:f});let m,h,g,_;o===24?(h=u-1,g=i(s.end,-1),m=l===null?null:l.slice(1,-1),_=new K({type:z(22),value:"`",start:h,end:u,startLoc:g,endLoc:s.end})):(h=u-2,g=i(s.end,-2),m=l===null?null:l.slice(1,-2),_=new K({type:z(23),value:"${",start:h,end:u,startLoc:g,endLoc:s.end})),e.splice(r,1,p,new K({type:z(20),value:m,start:d,end:h,startLoc:f,endLoc:g}),_),r+=2;continue}a.type=z(o)}}return e}var vn=class extends fn{parseTopLevel(e,t){return e.program=this.parseProgram(t),e.comments=this.comments,this.optionFlags&128&&(e.tokens=_n(this.tokens,this.input,this.startIndex)),this.finishNode(e,`File`)}parseProgram(e,t=140,n=this.options.sourceType){if(e.sourceType=n,e.interpreter=this.parseInterpreterDirective(),this.parseBlockBody(e,!0,!0,t),this.inModule){if(!(this.optionFlags&32)&&this.scope.undefinedExports.size>0)for(let[e,t]of Array.from(this.scope.undefinedExports))this.raise(_.ModuleExportUndefined,t,{localName:e});this.addExtra(e,`topLevelAwait`,this.state.hasTopLevelAwait)}let r;return r=t===140?this.finishNode(e,`Program`):this.finishNodeAt(e,`Program`,i(this.state.startLoc,-1)),r}stmtToDirective(e){let t=e;t.type=`Directive`,t.value=t.expression,delete t.expression;let n=t.value,r=n.value,i=this.input.slice(this.offsetToSourcePos(n.start),this.offsetToSourcePos(n.end)),a=n.value=i.slice(1,-1);return this.addExtra(n,`raw`,i),this.addExtra(n,`rawValue`,a),this.addExtra(n,`expressionValue`,r),n.type=`DirectiveLiteral`,t}parseInterpreterDirective(){if(!this.match(28))return null;let e=this.startNode();return e.value=this.state.value,this.next(),this.finishNode(e,`InterpreterDirective`)}isLet(){return this.isContextual(100)?this.hasFollowingBindingAtom():!1}chStartsBindingIdentifier(e,t){if(V(e)){if(gn.lastIndex=t,gn.test(this.input)){let e=this.codePointAtPos(gn.lastIndex);if(!H(e)&&e!==92)return!1}return!0}return e===92}chStartsBindingPattern(e){return e===91||e===123}hasFollowingBindingAtom(){let e=this.nextTokenStart(),t=this.codePointAtPos(e);return this.chStartsBindingPattern(t)||this.chStartsBindingIdentifier(t,e)}hasInLineFollowingBindingIdentifierOrBrace(){let e=this.nextTokenInLineStart(),t=this.codePointAtPos(e);return t===123||this.chStartsBindingIdentifier(t,e)}startsUsingForOf(){let{type:e,containsEsc:t}=this.lookahead();if(e===102&&!t)return!1;if(P(e)&&!this.hasFollowingLineBreak())return this.expectPlugin(`explicitResourceManagement`),!0}startsAwaitUsing(){let e=this.nextTokenInLineStart();if(this.isUnparsedContextual(e,`using`)){e=this.nextTokenInLineStartSince(e+5);let 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){let n=this.state.type,r=this.startNode(),i=!!(e&2),a=!!(e&4),o=e&1;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(this.lookaheadCharCode()===46)break;return a||this.raise(this.state.strict?_.StrictFunction:this.options.annexB?_.SloppyFunctionAnnexB:_.SloppyFunction,this.state.startLoc),this.parseFunctionStatement(r,!1,!i&&a);case 80:return i||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.recordAwaitIfAllowed()?i||this.raise(_.UnexpectedLexicalDeclaration,r):this.raise(_.AwaitUsingNotInAsyncContext,r),this.next(),this.parseVarStatement(r,`await using`);break;case 107:if(this.state.containsEsc||!this.hasInLineFollowingBindingIdentifierOrBrace())break;return this.expectPlugin(`explicitResourceManagement`),!this.scope.inModule&&this.scope.inTopLevel?this.raise(_.UnexpectedUsingDeclaration,this.state.startLoc):i||this.raise(_.UnexpectedLexicalDeclaration,this.state.startLoc),this.parseVarStatement(r,`using`);case 100:{if(this.state.containsEsc)break;let e=this.nextTokenStart(),t=this.codePointAtPos(e);if(t!==91&&(!i&&this.hasFollowingLineBreak()||!this.chStartsBindingIdentifier(t,e)&&t!==123))break}case 75:i||this.raise(_.UnexpectedLexicalDeclaration,this.state.startLoc);case 74:{let 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:{let e=this.lookaheadCharCode();if(e===40||e===46)break}case 82:{!(this.optionFlags&8)&&!o&&this.raise(_.UnexpectedImportExport,this.state.startLoc),this.next();let e;return n===83?(e=this.parseImport(r),e.type!==`ImportDeclaration`||e.importKind&&e.importKind!==`value`||(this.sawUnambiguousESM=!0)):(e=this.parseExport(r,t),(e.type!==`ExportNamedDeclaration`||e.exportKind&&e.exportKind!==`value`)&&(e.type!==`ExportAllDeclaration`||e.exportKind&&e.exportKind!==`value`)&&e.type!==`ExportDefaultDeclaration`||(this.sawUnambiguousESM=!0)),this.assertModuleNodeAllowed(e),e}default:if(this.isAsyncFunction())return i||this.raise(_.AsyncFunctionInSingleStatementContext,this.state.startLoc),this.next(),this.parseFunctionStatement(r,!0,!i&&a)}let s=this.state.value,c=this.parseExpression();return P(n)&&c.type===`Identifier`&&this.eat(14)?this.parseLabeledStatement(r,s,c,e):this.parseExpressionStatement(r,c,t)}assertModuleNodeAllowed(e){!(this.optionFlags&8)&&!this.inModule&&this.raise(_.ImportOutsideModule,e)}decoratorsEnabledBeforeExport(){return this.hasPlugin(`decorators-legacy`)?!0:this.hasPlugin(`decorators`)&&this.getPluginOption(`decorators`,`decoratorsBeforeExport`)!==!1}maybeTakeDecorators(e,t,n){if(e){var r;(r=t.decorators)!=null&&r.length?(typeof this.getPluginOption(`decorators`,`decoratorsBeforeExport`)!=`boolean`&&this.raise(_.DecoratorsBeforeAfterExport,t.decorators[0]),t.decorators.unshift(...e)):t.decorators=e,this.resetStartLocationFromNode(t,e[0]),n&&this.resetStartLocationFromNode(n,t)}return t}canHaveLeadingDecorator(){return this.match(80)}parseDecorators(e){let t=[];do t.push(this.parseDecorator());while(this.match(26));if(this.match(82))e||this.unexpected(),this.decoratorsEnabledBeforeExport()||this.raise(_.DecoratorExportClass,this.state.startLoc);else if(!this.canHaveLeadingDecorator())throw this.raise(_.UnexpectedLeadingDecorator,this.state.startLoc);return t}parseDecorator(){this.expectOnePlugin([`decorators`,`decorators-legacy`]);let e=this.startNode();if(this.next(),this.hasPlugin(`decorators`)){let t=this.state.startLoc,n;if(this.match(10)){let t=this.state.startLoc;this.next(),n=this.parseExpression(),this.expect(11),n=this.wrapParenthesis(t,n);let r=this.state.startLoc;e.expression=this.parseMaybeDecoratorArguments(n,t),this.getPluginOption(`decorators`,`allowCallParenthesized`)===!1&&e.expression!==n&&this.raise(_.DecoratorArgumentsOutsideParentheses,r)}else{for(n=this.parseIdentifier(!1);this.eat(16);){let e=this.startNodeAt(t);e.object=n,this.match(139)?(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,t)}}else e.expression=this.parseExprSubscripts();return this.finishNode(e,`Decorator`)}parseMaybeDecoratorArguments(e,t){if(this.eat(10)){let n=this.startNodeAt(t);return n.callee=e,n.arguments=this.parseCallExpressionArguments(11),this.toReferencedList(n.arguments),this.finishNode(n,`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=0;for(;n<this.state.labels.length;++n){let r=this.state.labels[n];if((e.label==null||r.name===e.label.name)&&(r.kind!=null&&(t||r.kind===1)||e.label&&t))break}if(n===this.state.labels.length){let n=t?`BreakStatement`:`ContinueStatement`;this.raise(_.IllegalBreakContinue,e,{type:n})}}parseDebuggerStatement(e){return this.next(),this.semicolon(),this.finishNode(e,`DebuggerStatement`)}parseHeaderExpression(){this.expect(10);let e=this.parseExpression();return this.expect(11),e}parseDoWhileStatement(e){return this.next(),this.state.labels.push(pn),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(pn);let t=null;if(this.isContextual(96)&&this.recordAwaitIfAllowed()&&(t=this.state.startLoc,this.next()),this.scope.enter(0),this.expect(10),this.match(13))return t!==null&&this.unexpected(t),this.parseFor(e,null);let n=this.isContextual(100);{let r=this.isContextual(96)&&this.startsAwaitUsing(),i=r||this.isContextual(107)&&this.startsUsingForOf(),a=n&&this.hasFollowingBindingAtom()||i;if(this.match(74)||this.match(75)||a){let n=this.startNode(),a;r?(a=`await using`,this.recordAwaitIfAllowed()||this.raise(_.AwaitUsingNotInAsyncContext,this.state.startLoc),this.next()):a=this.state.value,this.next(),this.parseVar(n,!0,a);let o=this.finishNode(n,`VariableDeclaration`),s=this.match(58);return s&&i&&this.raise(_.ForInUsing,o),(s||this.isContextual(102))&&o.declarations.length===1?this.parseForIn(e,o,t):(t!==null&&this.unexpected(t),this.parseFor(e,o))}}let r=this.isContextual(95),i=new J,a=this.parseExpression(!0,i),o=this.isContextual(102);if(o&&(n&&this.raise(_.ForOfLet,a),t===null&&r&&a.type===`Identifier`&&this.raise(_.ForOfAsync,a)),o||this.match(58)){this.checkDestructuringPrivate(i),this.toAssignable(a,!0);let n=o?`ForOfStatement`:`ForInStatement`;return this.checkLVal(a,{type:n}),this.parseForIn(e,a,t)}return this.checkExpressionErrors(i,!0),t!==null&&this.unexpected(t),this.parseFor(e,a)}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.optionFlags&2)&&this.raise(_.IllegalReturn,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();let t=e.cases=[];this.expect(5),this.state.labels.push(mn),this.scope.enter(0);let n;for(let e;!this.match(8);)if(this.match(61)||this.match(65)){let 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(_.MultipleDefaultsInSwitch,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(_.NewlineAfterThrow,this.state.lastTokEndLoc),e.argument=this.parseExpression(),this.semicolon(),this.finishNode(e,`ThrowStatement`)}parseCatchClauseParam(){let e=this.parseBindingAtom();return this.scope.enter(this.options.annexB&&e.type===`Identifier`?8:0),this.checkLVal(e,{type:`CatchClause`},9),e}parseTryStatement(e){if(this.next(),e.block=this.parseBlock(),e.handler=null,this.match(62)){let 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(_.NoCatchOrFinally,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(pn),e.body=this.withSmartMixTopicForbiddingContext(()=>this.parseStatement()),this.state.labels.pop(),this.finishNode(e,`WhileStatement`)}parseWithStatement(e){return this.state.strict&&this.raise(_.StrictWith,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(let e of this.state.labels)e.name===t&&this.raise(_.LabelRedeclaration,n,{labelName:t});let i=_e(this.state.type)?1:this.match(71)?2:null;for(let t=this.state.labels.length-1;t>=0;t--){let n=this.state.labels[t];if(n.statementStart===e.start)n.statementStart=this.sourceToOffsetPos(this.state.start),n.kind=i;else break}return this.state.labels.push({name:t,kind:i,statementStart:this.sourceToOffsetPos(this.state.start)}),e.body=r&8?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){let 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 e.type===`ExpressionStatement`&&e.expression.type===`StringLiteral`&&!e.expression.extra.parenthesized}parseBlockBody(e,t,n,r,i){let a=e.body=[],o=e.directives=[];this.parseBlockOrModuleBlockBody(a,t?o:void 0,n,r,i)}parseBlockOrModuleBlockBody(e,t,n,r,i){let a=this.state.strict,o=!1,s=!1;for(;!this.match(r);){let r=n?this.parseModuleItem():this.parseStatementListItem();if(t&&!s){if(this.isValidDirective(r)){let e=this.stmtToDirective(r);t.push(e),!o&&e.value.value===`use strict`&&(o=!0,this.setStrict(!0));continue}s=!0,this.state.strictErrors.clear()}e.push(r)}i==null||i.call(this,o),a||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){let r=this.match(58);return this.next(),r?n!==null&&this.unexpected(n):e.await=n!==null,t.type!==`VariableDeclaration`||t.declarations[0].init==null||r&&this.options.annexB&&!this.state.strict&&t.kind===`var`&&t.declarations[0].id.type===`Identifier`||this.raise(_.ForInOfLoopInitializer,t,{type:r?`ForInStatement`:`ForOfStatement`}),t.type===`AssignmentPattern`&&this.raise(_.InvalidLhs,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){let i=e.declarations=[];for(e.kind=n;;){let e=this.startNode();if(this.parseVarId(e,n),e.init=this.eat(29)?t?this.parseMaybeAssignDisallowIn():this.parseMaybeAssignAllowIn():null,e.init===null&&!r&&(e.id.type!==`Identifier`&&!(t&&(this.match(58)||this.isContextual(102)))?this.raise(_.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:`destructuring`}):n!==`const`&&n!==`using`&&n!==`await using`||this.match(58)||this.isContextual(102)||this.raise(_.DeclarationMissingInitializer,this.state.lastTokEndLoc,{kind:n})),i.push(this.finishNode(e,`VariableDeclarator`)),!this.eat(12))break}return e}parseVarId(e,t){let n=this.parseBindingAtom();t!==`using`&&t!==`await using`||n.type!==`ArrayPattern`&&n.type!==`ObjectPattern`||this.raise(_.UsingDeclarationHasBindingPattern,n.loc.start),this.checkLVal(n,{type:`VariableDeclarator`},t===`var`?5:8201),e.id=n}parseAsyncFunctionExpression(e){return this.parseFunction(e,8)}parseFunction(e,t=0){let n=t&2,r=!!(t&1),i=r&&!(t&4),a=!!(t&8);this.initFunction(e,a),this.match(55)&&(n&&this.raise(_.GeneratorInSingleStatementContext,this.state.startLoc),this.next(),e.generator=!0),r&&(e.id=this.parseFunctionId(i));let o=this.state.maybeInArrowParameters;return this.state.maybeInArrowParameters=!1,this.scope.enter(2),this.prodParam.enter(q(a,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=o,e}parseFunctionId(e){return e||P(this.state.type)?this.parseIdentifier():null}parseFunctionParams(e,t){this.expect(10),this.expressionScope.enter(xt()),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();let 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)}nameIsConstructor(e){return e.type===`Identifier`&&e.name===`constructor`||e.type===`StringLiteral`&&e.value===`constructor`}isNonstaticConstructor(e){return!e.computed&&!e.static&&this.nameIsConstructor(e.key)}parseClassBody(e,t){this.classScope.enter();let n={hadConstructor:!1,hadSuperClass:e},r=[],i=this.startNode();if(i.body=[],this.expect(5),this.withSmartMixTopicForbiddingContext(()=>{for(;!this.match(8);){if(this.eat(13)){if(r.length>0)throw this.raise(_.DecoratorSemicolon,this.state.lastTokEndLoc);continue}if(this.match(26)){r.push(this.parseDecorator());continue}let e=this.startNode();r.length&&(e.decorators=r,this.resetStartLocationFromNode(e,r[0]),r=[]),this.parseClassMember(i,e,n),e.kind===`constructor`&&e.decorators&&e.decorators.length>0&&this.raise(_.DecoratorConstructor,e)}}),this.state.strict=t,this.next(),r.length)throw this.raise(_.TrailingDecorator,this.state.startLoc);return this.classScope.exit(),this.finishNode(i,`ClassBody`)}parseClassMemberFromModifier(e,t){let n=this.parseIdentifier(!0);if(this.isClassMethod()){let 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()){let 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){let r=this.isContextual(106);if(r){if(this.parseClassMemberFromModifier(e,t))return;if(this.eat(5)){this.parseClassStaticBlock(e,t);return}}this.parseClassMemberWithIsStatic(e,t,n,r)}parseClassMemberWithIsStatic(e,t,n,r){let i=t,a=t,o=t,s=t,c=t,l=i,u=i;if(t.static=r,this.parsePropertyNamePrefixOperator(t),this.eat(55)){l.kind=`method`;let t=this.match(139);if(this.parseClassElementName(l),t){this.pushClassPrivateMethod(e,a,!0,!1);return}this.isNonstaticConstructor(i)&&this.raise(_.ConstructorIsGenerator,i.key),this.pushClassMethod(e,i,!0,!1,!1,!1);return}let d=!this.state.containsEsc&&P(this.state.type),f=this.parseClassElementName(t),p=d?f.name:null,m=this.isPrivateName(f),h=this.state.startLoc;if(this.parsePostMemberNameModifiers(u),this.isClassMethod()){if(l.kind=`method`,m){this.pushClassPrivateMethod(e,a,!1,!1);return}let r=this.isNonstaticConstructor(i),o=!1;r&&(i.kind=`constructor`,n.hadConstructor&&!this.hasPlugin(`typescript`)&&this.raise(_.DuplicateConstructor,f),r&&this.hasPlugin(`typescript`)&&t.override&&this.raise(_.OverrideOnConstructor,f),n.hadConstructor=!0,o=n.hadSuperClass),this.pushClassMethod(e,i,!1,!1,r,o)}else if(this.isClassProperty())m?this.pushClassPrivateProperty(e,s):this.pushClassProperty(e,o);else if(p===`async`&&!this.isLineTerminator()){this.resetPreviousNodeTrailingComments(f);let t=this.eat(55);u.optional&&this.unexpected(h),l.kind=`method`;let n=this.match(139);this.parseClassElementName(l),this.parsePostMemberNameModifiers(u),n?this.pushClassPrivateMethod(e,a,t,!0):(this.isNonstaticConstructor(i)&&this.raise(_.ConstructorIsAsync,i.key),this.pushClassMethod(e,i,t,!0,!1,!1))}else if((p===`get`||p===`set`)&&!(this.match(55)&&this.isLineTerminator())){this.resetPreviousNodeTrailingComments(f),l.kind=p;let t=this.match(139);this.parseClassElementName(i),t?this.pushClassPrivateMethod(e,a,!1,!1):(this.isNonstaticConstructor(i)&&this.raise(_.ConstructorIsAccessor,i.key),this.pushClassMethod(e,i,!1,!1,!1,!1)),this.checkGetterSetterParams(i)}else if(p===`accessor`&&!this.isLineTerminator()){this.expectPlugin(`decoratorAutoAccessors`),this.resetPreviousNodeTrailingComments(f);let t=this.match(139);this.parseClassElementName(o),this.pushClassAccessorProperty(e,c,t)}else this.isLineTerminator()?m?this.pushClassPrivateProperty(e,s):this.pushClassProperty(e,o):this.unexpected()}parseClassElementName(e){let{type:t,value:n}=this.state;if((t===132||t===134)&&e.static&&n===`prototype`&&this.raise(_.StaticPrototype,this.state.startLoc),t===139){n===`constructor`&&this.raise(_.ConstructorClassPrivateField,this.state.startLoc);let t=this.parsePrivateName();return e.key=t,t}return this.parsePropertyName(e),e.key}parseClassStaticBlock(e,t){var n;this.scope.enter(208);let r=this.state.labels;this.state.labels=[],this.prodParam.enter(0);let i=t.body=[];this.parseBlockOrModuleBlockBody(i,void 0,!1,8),this.prodParam.exit(),this.scope.exit(),this.state.labels=r,e.body.push(this.finishNode(t,`StaticBlock`)),(n=t.decorators)!=null&&n.length&&this.raise(_.DecoratorStaticBlock,t)}pushClassProperty(e,t){!t.computed&&this.nameIsConstructor(t.key)&&this.raise(_.ConstructorClassField,t.key),e.body.push(this.parseClassProperty(t))}pushClassPrivateProperty(e,t){let n=this.parseClassPrivateProperty(t);e.body.push(n),this.classScope.declarePrivateName(this.getPrivateNameSV(n.key),0,n.key.loc.start)}pushClassAccessorProperty(e,t,n){!n&&!t.computed&&this.nameIsConstructor(t.key)&&this.raise(_.ConstructorClassField,t.key);let 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,i,a){e.body.push(this.parseMethod(t,n,r,i,a,`ClassMethod`,!0))}pushClassPrivateMethod(e,t,n,r){let i=this.parseMethod(t,n,r,!1,!1,`ClassPrivateMethod`,!0);e.body.push(i);let a=i.kind===`get`?i.static?6:2:i.kind===`set`?i.static?5:1:0;this.declareClassPrivateMethodInScope(i,a)}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(wt()),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(P(this.state.type))e.id=this.parseIdentifier(),t&&this.declareNameFromIdentifier(e.id,r);else if(n||!t)e.id=null;else throw this.raise(_.MissingClassName,this.state.startLoc)}parseClassSuper(e){e.superClass=this.eat(81)?this.parseExprSubscripts():null}parseExport(e,t){let n=this.parseMaybeImportPhase(e,!0),r=this.maybeParseExportDefaultSpecifier(e,n),i=!r||this.eat(12),a=i&&this.eatExportStar(e),o=a&&this.maybeParseExportNamespaceSpecifier(e),s=i&&(!o||this.eat(12)),c=r||a;if(a&&!o){if(r&&this.unexpected(),t)throw this.raise(_.UnsupportedDecoratorExport,e);return this.parseExportFrom(e,!0),this.finishNode(e,`ExportAllDeclaration`)}let l=this.maybeParseExportNamedSpecifiers(e);r&&i&&!a&&!l&&this.unexpected(null,5),o&&s&&this.unexpected(null,98);let u;if(c||l){if(u=!1,t)throw this.raise(_.UnsupportedDecoratorExport,e);this.parseExportFrom(e,c)}else u=this.maybeParseExportDeclaration(e);if(c||l||u){var d;let n=e;if(this.checkExport(n,!0,!1,!!n.source),((d=n.declaration)==null?void 0:d.type)===`ClassDeclaration`)this.maybeTakeDecorators(t,n.declaration,n);else if(t)throw this.raise(_.UnsupportedDecoratorExport,e);return this.finishNode(n,`ExportNamedDeclaration`)}if(this.eat(65)){let n=e,r=this.parseExportDefaultExpression();if(n.declaration=r,r.type===`ClassDeclaration`)this.maybeTakeDecorators(t,r,n);else if(t)throw this.raise(_.UnsupportedDecoratorExport,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`,t==null?void 0:t.loc.start);let 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)){var t;(t=e).specifiers??(t.specifiers=[]);let n=this.startNodeAt(this.state.lastTokStartLoc);return this.next(),n.exported=this.parseModuleExportName(),e.specifiers.push(this.finishNode(n,`ExportNamespaceSpecifier`)),!0}return!1}maybeParseExportNamedSpecifiers(e){if(this.match(5)){let t=e;t.specifiers||(t.specifiers=[]);let n=t.exportKind===`type`;return t.specifiers.push(...this.parseExportSpecifiers(n)),t.source=null,t.declaration=null,this.hasPlugin(`importAssertions`)&&(t.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):!1}isAsyncFunction(){if(!this.isContextual(95))return!1;let e=this.nextTokenInLineStart();return this.isUnparsedContextual(e,`function`)}parseExportDefaultExpression(){let 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`)&&this.getPluginOption(`decorators`,`decoratorsBeforeExport`)===!0&&this.raise(_.DecoratorBeforeExport,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(_.UnsupportedDefaultExport,this.state.startLoc);let t=this.parseMaybeAssignAllowIn();return this.semicolon(),t}parseExportDeclaration(e){return this.match(80)?this.parseClass(this.startNode(),!0,!1):this.parseStatementListItem()}isExportDefaultSpecifier(){let{type:e}=this.state;if(P(e)){if(e===95&&!this.state.containsEsc||e===100)return!1;if((e===130||e===129)&&!this.state.containsEsc){let{type:e}=this.lookahead();if(P(e)&&e!==98||e===5)return this.expectOnePlugin([`flow`,`typescript`]),!1}}else if(!this.match(65))return!1;let t=this.nextTokenStart(),n=this.isUnparsedContextual(t,`from`);if(this.input.charCodeAt(t)===44||P(this.state.type)&&n)return!0;if(this.match(65)&&n){let e=this.input.charCodeAt(this.nextTokenStartSince(t+4));return e===34||e===39}return!1}parseExportFrom(e,t){this.eatContextual(98)?(e.source=this.parseImportSource(),this.checkExport(e),this.maybeParseImportAttributes(e),this.checkJSONModuleImport(e)):t&&this.unexpected(),this.semicolon()}shouldParseExportDeclaration(){let{type:e}=this.state;return e===26&&(this.expectOnePlugin([`decorators`,`decorators-legacy`]),this.hasPlugin(`decorators`))?(this.getPluginOption(`decorators`,`decoratorsBeforeExport`)===!0&&this.raise(_.DecoratorBeforeExport,this.state.startLoc),!0):this.isContextual(107)||this.isContextual(96)&&this.startsAwaitUsing()?(this.raise(_.UsingDeclarationExport,this.state.startLoc),!0):e===74||e===75||e===68||e===80||this.isLet()||this.isAsyncFunction()}checkExport(e,t,n,r){if(t){var i;if(n){if(this.checkDuplicateExports(e,`default`),this.hasPlugin(`exportDefaultFrom`)){var a;let t=e.declaration;t.type===`Identifier`&&t.name===`from`&&t.end-t.start===4&&!((a=t.extra)!=null&&a.parenthesized)&&this.raise(_.ExportDefaultFromAsIdentifier,t)}}else if((i=e.specifiers)!=null&&i.length)for(let t of e.specifiers){let{exported:e}=t,n=e.type===`Identifier`?e.name:e.value;if(this.checkDuplicateExports(t,n),!r&&t.local){let{local:e}=t;e.type===`Identifier`?(this.checkReservedWord(e.name,e.loc.start,!0,!1),this.scope.checkLocalExport(e)):this.raise(_.ExportBindingIsString,t,{localName:e.value,exportName:n})}}else if(e.declaration){let t=e.declaration;if(t.type===`FunctionDeclaration`||t.type===`ClassDeclaration`){let{id:n}=t;if(!n)throw Error(`Assertion failure`);this.checkDuplicateExports(e,n.name)}else if(t.type===`VariableDeclaration`)for(let e of t.declarations)this.checkDeclaration(e.id)}}}checkDeclaration(e){if(e.type===`Identifier`)this.checkDuplicateExports(e,e.name);else if(e.type===`ObjectPattern`)for(let t of e.properties)this.checkDeclaration(t);else if(e.type===`ArrayPattern`)for(let t of e.elements)t&&this.checkDeclaration(t);else e.type===`ObjectProperty`?this.checkDeclaration(e.value):e.type===`RestElement`?this.checkDeclaration(e.argument):e.type===`AssignmentPattern`&&this.checkDeclaration(e.left)}checkDuplicateExports(e,t){this.exportedIdentifiers.has(t)&&(t==="default"?this.raise(_.DuplicateDefaultExport,e):this.raise(_.DuplicateExport,e,{exportName:t})),this.exportedIdentifiers.add(t)}parseExportSpecifiers(e){let t=[],n=!0;for(this.expect(5);!this.eat(8);){if(n)n=!1;else if(this.expect(12),this.eat(8))break;let r=this.isContextual(130),i=this.match(134),a=this.startNode();a.local=this.parseModuleExportName(),t.push(this.parseExportSpecifier(a,i,e,r))}return t}parseExportSpecifier(e,t,n,r){return this.eatContextual(93)?e.exported=this.parseModuleExportName():t?e.exported=kt(e.local):e.exported||(e.exported=X(e.local)),this.finishNode(e,`ExportSpecifier`)}parseModuleExportName(){if(this.match(134)){let e=this.parseStringLiteral(this.state.value),t=hn.exec(e.value);return t&&this.raise(_.ModuleExportNameHasLoneSurrogate,e,{surrogateCharCode:t[0].charCodeAt(0)}),e}return this.parseIdentifier(!0)}isJSONModuleImport(e){return e.assertions!=null&&e.assertions.some(({key:e,value:t})=>t.value===`json`&&(e.type===`Identifier`?e.name===`type`:e.value===`type`))}checkImportReflection(e){let{specifiers:t}=e,n=t.length===1?t[0].type:null;if(e.phase===`source`)n!==`ImportDefaultSpecifier`&&this.raise(_.SourcePhaseImportRequiresDefault,t[0].loc.start);else if(e.phase===`defer`)n!==`ImportNamespaceSpecifier`&&this.raise(_.DeferImportRequiresNamespace,t[0].loc.start);else if(e.module){var r;n!==`ImportDefaultSpecifier`&&this.raise(_.ImportReflectionNotBinding,t[0].loc.start),((r=e.assertions)==null?void 0:r.length)>0&&this.raise(_.ImportReflectionHasAssertion,t[0].loc.start)}}checkJSONModuleImport(e){if(this.isJSONModuleImport(e)&&e.type!==`ExportAllDeclaration`){let{specifiers:t}=e;if(t!=null){let e=t.find(e=>{let t;if(e.type===`ExportSpecifier`?t=e.local:e.type===`ImportSpecifier`&&(t=e.imported),t!==void 0)return t.type===`Identifier`?t.name!=="default":t.value!=="default"});e!==void 0&&this.raise(_.ImportJSONBindingNotDefault,e.loc.start)}}}isPotentialImportPhase(e){return e?!1:this.isContextual(105)||this.isContextual(97)||this.isContextual(127)}applyImportPhase(e,t,n,r){t||(n===`module`?(this.expectPlugin(`importReflection`,r),e.module=!0):this.hasPlugin(`importReflection`)&&(e.module=!1),n===`source`?(this.expectPlugin(`sourcePhaseImports`,r),e.phase=`source`):n===`defer`?(this.expectPlugin(`deferredImportEvaluation`,r),e.phase=`defer`):this.hasPlugin(`sourcePhaseImports`)&&(e.phase=null))}parseMaybeImportPhase(e,t){if(!this.isPotentialImportPhase(t))return this.applyImportPhase(e,t,null),null;let n=this.parseIdentifier(!0),{type:r}=this.state;return(F(r)?r!==98||this.lookaheadCharCode()===102:r!==12)?(this.resetPreviousIdentifierLeadingComments(n),this.applyImportPhase(e,t,n.name,n.loc.start),null):(this.applyImportPhase(e,t,null),n)}isPrecedingIdImportPhase(e){let{type:t}=this.state;return P(t)?t!==98||this.lookaheadCharCode()===102:t!==12}parseImport(e){return this.match(134)?this.parseImportSourceAndAttributes(e):this.parseImportSpecifiersAndAfter(e,this.parseMaybeImportPhase(e,!1))}parseImportSpecifiersAndAfter(e,t){e.specifiers=[];let n=!this.maybeParseDefaultImportSpecifier(e,t)||this.eat(12),r=n&&this.maybeParseStarImportSpecifier(e);return n&&!r&&this.parseNamedImportSpecifiers(e),this.expectContextual(98),this.parseImportSourceAndAttributes(e)}parseImportSourceAndAttributes(e){return 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(134)||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,{type:t},n),this.finishNode(e,t)}parseImportAttributes(){this.expect(5);let e=[],t=new Set;do{if(this.match(8))break;let n=this.startNode(),r=this.state.value;if(t.has(r)&&this.raise(_.ModuleAttributesWithDuplicateKeys,this.state.startLoc,{key:r}),t.add(r),n.key=this.match(134)?this.parseStringLiteral(r):this.parseIdentifier(!0),this.expect(14),!this.match(134))throw this.raise(_.ModuleAttributeInvalidValue,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(){let e=[],t=new Set;do{let n=this.startNode();if(n.key=this.parseIdentifier(!0),n.key.name!==`type`&&this.raise(_.ModuleAttributeDifferentFromType,n.key),t.has(n.key.name)&&this.raise(_.ModuleAttributesWithDuplicateKeys,n.key,{key:n.key.name}),t.add(n.key.name),this.expect(14),!this.match(134))throw this.raise(_.ModuleAttributeInvalidValue,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;var n=!1;if(this.match(76)){if(this.hasPrecedingLineBreak()&&this.lookaheadCharCode()===40)return;this.next(),t=this.hasPlugin(`moduleAttributes`)?this.parseModuleAttributes():this.parseImportAttributes(),n=!0}else this.isContextual(94)&&!this.hasPrecedingLineBreak()?(!this.hasPlugin(`deprecatedImportAssert`)&&!this.hasPlugin(`importAssertions`)&&this.raise(_.ImportAttributesUseAssert,this.state.startLoc),this.hasPlugin(`importAssertions`)||this.addExtra(e,`deprecatedAssertSyntax`,!0),this.next(),t=this.parseImportAttributes()):t=[];!n&&this.hasPlugin(`importAssertions`)?e.assertions=t:e.attributes=t}maybeParseDefaultImportSpecifier(e,t){if(t){let n=this.startNodeAtNode(t);return n.local=t,e.specifiers.push(this.finishImportSpecifier(n,`ImportDefaultSpecifier`)),!0}return F(this.state.type)?(this.parseImportSpecifierLocal(e,this.startNode(),`ImportDefaultSpecifier`),!0):!1}maybeParseStarImportSpecifier(e){if(this.match(55)){let 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(_.DestructureNamedImport,this.state.startLoc);if(this.expect(12),this.eat(8))break}let n=this.startNode(),r=this.match(134),i=this.isContextual(130);n.imported=this.parseModuleExportName();let a=this.parseImportSpecifier(n,r,e.importKind===`type`||e.importKind===`typeof`,i,void 0);e.specifiers.push(a)}}parseImportSpecifier(e,t,n,r,i){if(this.eatContextual(93))e.local=this.parseIdentifier();else{let{imported:n}=e;if(t)throw this.raise(_.ImportBindingIsString,e,{importName:n.value});this.checkReservedWord(n.name,e.loc.start,!0,!0),e.local||(e.local=X(n))}return this.finishImportSpecifier(e,`ImportSpecifier`,i)}isThisParam(e){return e.type===`Identifier`&&e.name===`this`}},yn=class extends vn{constructor(e,t,n){e=te(e),super(e,t),this.options=e,this.initializeScopes(),this.plugins=n,this.filename=e.sourceFilename,this.startIndex=e.startIndex;let r=0;e.allowAwaitOutsideFunction&&(r|=1),e.allowReturnOutsideFunction&&(r|=2),e.allowImportExportEverywhere&&(r|=8),e.allowSuperOutsideMethod&&(r|=16),e.allowUndeclaredExports&&(r|=32),e.allowNewTargetOutsideFunction&&(r|=4),e.ranges&&(r|=64),e.tokens&&(r|=128),e.createImportExpressions&&(r|=256),e.createParenthesizedExpressions&&(r|=512),e.errorRecovery&&(r|=1024),e.attachComment&&(r|=2048),e.annexB&&(r|=4096),this.optionFlags=r}getScopeHandler(){return Ge}parse(){this.enterInitialScopes();let e=this.startNode(),t=this.startNode();return this.nextToken(),e.errors=null,this.parseTopLevel(e,t),e.errors=this.state.errors,e.comments.length=this.state.commentsLen,e}};function bn(e,t){var n;if(((n=t)==null?void 0:n.sourceType)===`unambiguous`){t=Object.assign({},t);try{t.sourceType=`module`;let n=Sn(t,e),r=n.parse();if(n.sawUnambiguousESM)return r;if(n.ambiguousScriptDifferentAst)try{return t.sourceType=`script`,Sn(t,e).parse()}catch{}else r.program.sourceType=`script`;return r}catch(n){try{return t.sourceType=`script`,Sn(t,e).parse()}catch{}throw n}}return Sn(t,e).parse()}function xn(e){let t={};for(let n of Object.keys(e))t[n]=z(e[n]);return t}xn(N);function Sn(e,t){let n=yn,r=new Map;if(e!=null&&e.plugins){for(let t of e.plugins){let e,n;typeof t==`string`?e=t:[e,n]=t,r.has(e)||r.set(e,n||{})}ln(r),n=wn(r)}return new n(e,t,r)}var Cn=new Map;function wn(e){let t=[];for(let n of dn)e.has(n)&&t.push(n);let n=t.join(`|`),r=Cn.get(n);if(!r){r=yn;for(let e of t)r=un[e](r);Cn.set(n,r)}return r}e.parse=bn})),ie=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(e,t){let n=Object.keys(t);for(let r of n)if(e[r]!==t[r])return!1;return!0}})),w=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=new Set;function n(e,n,i=``,a=e){if(t.has(a))return;t.add(a);let{internal:o,trace:s}=r(1,2);o||console.warn(`${i}\`${e}\` has been deprecated, please migrate to \`${n}\`\n${s}`)}function r(e,t){let{stackTraceLimit:n,prepareStackTrace:r}=Error,i;if(Error.stackTraceLimit=1+e+t,Error.prepareStackTrace=function(e,t){i=t},Error().stack,Error.stackTraceLimit=n,Error.prepareStackTrace=r,!i)return{internal:!1,trace:``};let a=i.slice(1+e,1+e+t);return{internal:/[\\/]@babel[\\/]/.test(a[1].getFileName()),trace:a.map(e=>` at ${e}`).join(`
|
|
142
|
+
`)}}})),T=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isAccessor=wi,e.isAnyTypeAnnotation=Ze,e.isArgumentPlaceholder=gn,e.isArrayExpression=r,e.isArrayPattern=L,e.isArrayTypeAnnotation=U,e.isArrowFunctionExpression=be,e.isAssignmentExpression=i,e.isAssignmentPattern=ye,e.isAwaitExpression=Re,e.isBigIntLiteral=Be,e.isBinary=Gr,e.isBinaryExpression=a,e.isBindExpression=_n,e.isBlock=Jr,e.isBlockParent=qr,e.isBlockStatement=l,e.isBooleanLiteral=oe,e.isBooleanLiteralTypeAnnotation=$e,e.isBooleanTypeAnnotation=Qe,e.isBreakStatement=u,e.isCallExpression=d,e.isCatchClause=f,e.isClass=bi,e.isClassAccessorProperty=Ge,e.isClassBody=xe,e.isClassDeclaration=R,e.isClassExpression=Se,e.isClassImplements=et,e.isClassMethod=V,e.isClassPrivateMethod=qe,e.isClassPrivateProperty=Ke,e.isClassProperty=We,e.isCompletionStatement=Zr,e.isConditional=Qr,e.isConditionalExpression=p,e.isContinueStatement=m,e.isDebuggerStatement=h,e.isDecimalLiteral=Cn,e.isDeclaration=si,e.isDeclareClass=tt,e.isDeclareExportAllDeclaration=ut,e.isDeclareExportDeclaration=lt,e.isDeclareFunction=nt,e.isDeclareInterface=rt,e.isDeclareModule=it,e.isDeclareModuleExports=at,e.isDeclareOpaqueType=st,e.isDeclareTypeAlias=ot,e.isDeclareVariable=ct,e.isDeclaredPredicate=dt,e.isDecorator=vn,e.isDirective=s,e.isDirectiveLiteral=c,e.isDoExpression=yn,e.isDoWhileStatement=g,e.isEmptyStatement=_,e.isEmptyTypeAnnotation=bt,e.isEnumBody=ji,e.isEnumBooleanBody=Ht,e.isEnumBooleanMember=Kt,e.isEnumDeclaration=Vt,e.isEnumDefaultedMember=Jt,e.isEnumMember=Mi,e.isEnumNumberBody=Ut,e.isEnumNumberMember=qt,e.isEnumStringBody=Wt,e.isEnumStringMember=$,e.isEnumSymbolBody=Gt,e.isExistsTypeAnnotation=ft,e.isExportAllDeclaration=Ce,e.isExportDeclaration=Si,e.isExportDefaultDeclaration=we,e.isExportDefaultSpecifier=bn,e.isExportNamedDeclaration=Te,e.isExportNamespaceSpecifier=Ve,e.isExportSpecifier=z,e.isExpression=Wr,e.isExpressionStatement=ee,e.isExpressionWrapper=ti,e.isFile=te,e.isFlow=Ei,e.isFlowBaseAnnotation=Oi,e.isFlowDeclaration=ki,e.isFlowPredicate=Ai,e.isFlowType=Di,e.isFor=ni,e.isForInStatement=ne,e.isForOfStatement=Ee,e.isForStatement=re,e.isForXStatement=ri,e.isFunction=ii,e.isFunctionDeclaration=v,e.isFunctionExpression=y,e.isFunctionParameter=ci,e.isFunctionParent=ai,e.isFunctionTypeAnnotation=pt,e.isFunctionTypeParam=G,e.isGenericTypeAnnotation=mt,e.isIdentifier=b,e.isIfStatement=x,e.isImmutable=pi,e.isImport=ze,e.isImportAttribute=Xe,e.isImportDeclaration=De,e.isImportDefaultSpecifier=Oe,e.isImportExpression=Ae,e.isImportNamespaceSpecifier=B,e.isImportOrExportDeclaration=xi,e.isImportSpecifier=ke,e.isIndexedAccessType=Yt,e.isInferredPredicate=K,e.isInterfaceDeclaration=gt,e.isInterfaceExtends=ht,e.isInterfaceTypeAnnotation=_t,e.isInterpreterDirective=o,e.isIntersectionTypeAnnotation=vt,e.isJSX=Ni,e.isJSXAttribute=Zt,e.isJSXClosingElement=Qt,e.isJSXClosingFragment=fn,e.isJSXElement=$t,e.isJSXEmptyExpression=en,e.isJSXExpressionContainer=tn,e.isJSXFragment=un,e.isJSXIdentifier=rn,e.isJSXMemberExpression=an,e.isJSXNamespacedName=on,e.isJSXOpeningElement=sn,e.isJSXOpeningFragment=dn,e.isJSXSpreadAttribute=cn,e.isJSXSpreadChild=nn,e.isJSXText=ln,e.isLVal=ui,e.isLabeledStatement=S,e.isLiteral=fi,e.isLogicalExpression=E,e.isLoop=$r,e.isMemberExpression=D,e.isMetaProperty=je,e.isMethod=hi,e.isMiscellaneous=Pi,e.isMixedTypeAnnotation=yt,e.isModuleDeclaration=Ui,e.isModuleExpression=wn,e.isModuleSpecifier=Ci,e.isNewExpression=O,e.isNoop=pn,e.isNullLiteral=ae,e.isNullLiteralTypeAnnotation=W,e.isNullableTypeAnnotation=xt,e.isNumberLiteral=zi,e.isNumberLiteralTypeAnnotation=St,e.isNumberTypeAnnotation=Ct,e.isNumericLiteral=T,e.isObjectExpression=ce,e.isObjectMember=gi,e.isObjectMethod=le,e.isObjectPattern=H,e.isObjectProperty=ue,e.isObjectTypeAnnotation=wt,e.isObjectTypeCallProperty=q,e.isObjectTypeIndexer=Et,e.isObjectTypeInternalSlot=Tt,e.isObjectTypeProperty=J,e.isObjectTypeSpreadProperty=Y,e.isOpaqueType=Dt,e.isOptionalCallExpression=Ue,e.isOptionalIndexedAccessType=Xt,e.isOptionalMemberExpression=He,e.isParenthesizedExpression=M,e.isPattern=yi,e.isPatternLike=li,e.isPipelineBareFunction=Dn,e.isPipelinePrimaryTopicReference=On,e.isPipelineTopicExpression=En,e.isPlaceholder=mn,e.isPrivate=Ti,e.isPrivateName=Je,e.isProgram=k,e.isProperty=_i,e.isPureish=oi,e.isQualifiedTypeIdentifier=Ot,e.isRecordExpression=xn,e.isRegExpLiteral=se,e.isRegexLiteral=Bi,e.isRestElement=A,e.isRestProperty=Vi,e.isReturnStatement=de,e.isScopable=Kr,e.isSequenceExpression=j,e.isSpreadElement=Me,e.isSpreadProperty=Hi,e.isStandardized=Ur,e.isStatement=Yr,e.isStaticBlock=Ye,e.isStringLiteral=C,e.isStringLiteralTypeAnnotation=X,e.isStringTypeAnnotation=kt,e.isSuper=Ne,e.isSwitchCase=N,e.isSwitchStatement=P,e.isSymbolTypeAnnotation=At,e.isTSAnyKeyword=zn,e.isTSArrayType=ar,e.isTSAsExpression=Tr,e.isTSBaseType=Ri,e.isTSBigIntKeyword=Vn,e.isTSBooleanKeyword=Bn,e.isTSCallSignatureDeclaration=Pn,e.isTSConditionalType=fr,e.isTSConstructSignatureDeclaration=Fn,e.isTSConstructorType=er,e.isTSDeclareFunction=jn,e.isTSDeclareMethod=Mn,e.isTSEntityName=di,e.isTSEnumBody=Or,e.isTSEnumDeclaration=kr,e.isTSEnumMember=Ar,e.isTSExportAssignment=Lr,e.isTSExpressionWithTypeArguments=br,e.isTSExternalModuleReference=Fr,e.isTSFunctionType=$n,e.isTSImportEqualsDeclaration=Pr,e.isTSImportType=Nr,e.isTSIndexSignature=Rn,e.isTSIndexedAccessType=gr,e.isTSInferType=pr,e.isTSInstantiationExpression=wr,e.isTSInterfaceBody=Sr,e.isTSInterfaceDeclaration=xr,e.isTSIntersectionType=dr,e.isTSIntrinsicKeyword=Hn,e.isTSLiteralType=yr,e.isTSMappedType=_r,e.isTSMethodSignature=Ln,e.isTSModuleBlock=Mr,e.isTSModuleDeclaration=jr,e.isTSNamedTupleMember=lr,e.isTSNamespaceExportDeclaration=Rr,e.isTSNeverKeyword=Un,e.isTSNonNullExpression=Ir,e.isTSNullKeyword=Wn,e.isTSNumberKeyword=Gn,e.isTSObjectKeyword=Kn,e.isTSOptionalType=sr,e.isTSParameterProperty=An,e.isTSParenthesizedType=mr,e.isTSPropertySignature=In,e.isTSQualifiedName=Nn,e.isTSRestType=cr,e.isTSSatisfiesExpression=Er,e.isTSStringKeyword=qn,e.isTSSymbolKeyword=Jn,e.isTSTemplateLiteralType=vr,e.isTSThisType=Qn,e.isTSTupleType=or,e.isTSType=Li,e.isTSTypeAliasDeclaration=Cr,e.isTSTypeAnnotation=zr,e.isTSTypeAssertion=Dr,e.isTSTypeElement=Ii,e.isTSTypeLiteral=ir,e.isTSTypeOperator=hr,e.isTSTypeParameter=Hr,e.isTSTypeParameterDeclaration=Vr,e.isTSTypeParameterInstantiation=Br,e.isTSTypePredicate=nr,e.isTSTypeQuery=rr,e.isTSTypeReference=tr,e.isTSUndefinedKeyword=Yn,e.isTSUnionType=ur,e.isTSUnknownKeyword=Xn,e.isTSVoidKeyword=Zn,e.isTaggedTemplateExpression=Pe,e.isTemplateElement=Fe,e.isTemplateLiteral=Ie,e.isTerminatorless=Xr,e.isThisExpression=fe,e.isThisTypeAnnotation=jt,e.isThrowStatement=F,e.isTopicReference=Tn,e.isTryStatement=pe,e.isTupleExpression=Sn,e.isTupleTypeAnnotation=Z,e.isTypeAlias=Nt,e.isTypeAnnotation=Pt,e.isTypeCastExpression=Ft,e.isTypeParameter=It,e.isTypeParameterDeclaration=Lt,e.isTypeParameterInstantiation=Rt,e.isTypeScript=Fi,e.isTypeofTypeAnnotation=Mt,e.isUnaryExpression=me,e.isUnaryLike=vi,e.isUnionTypeAnnotation=zt,e.isUpdateExpression=he,e.isUserWhitespacable=mi,e.isV8IntrinsicIdentifier=hn,e.isVariableDeclaration=ge,e.isVariableDeclarator=I,e.isVariance=Q,e.isVoidPattern=kn,e.isVoidTypeAnnotation=Bt,e.isWhile=ei,e.isWhileStatement=_e,e.isWithStatement=ve,e.isYieldExpression=Le;var t=ie(),n=w();function r(e,n){return!e||e.type!==`ArrayExpression`?!1:n==null||(0,t.default)(e,n)}function i(e,n){return!e||e.type!==`AssignmentExpression`?!1:n==null||(0,t.default)(e,n)}function a(e,n){return!e||e.type!==`BinaryExpression`?!1:n==null||(0,t.default)(e,n)}function o(e,n){return!e||e.type!==`InterpreterDirective`?!1:n==null||(0,t.default)(e,n)}function s(e,n){return!e||e.type!==`Directive`?!1:n==null||(0,t.default)(e,n)}function c(e,n){return!e||e.type!==`DirectiveLiteral`?!1:n==null||(0,t.default)(e,n)}function l(e,n){return!e||e.type!==`BlockStatement`?!1:n==null||(0,t.default)(e,n)}function u(e,n){return!e||e.type!==`BreakStatement`?!1:n==null||(0,t.default)(e,n)}function d(e,n){return!e||e.type!==`CallExpression`?!1:n==null||(0,t.default)(e,n)}function f(e,n){return!e||e.type!==`CatchClause`?!1:n==null||(0,t.default)(e,n)}function p(e,n){return!e||e.type!==`ConditionalExpression`?!1:n==null||(0,t.default)(e,n)}function m(e,n){return!e||e.type!==`ContinueStatement`?!1:n==null||(0,t.default)(e,n)}function h(e,n){return!e||e.type!==`DebuggerStatement`?!1:n==null||(0,t.default)(e,n)}function g(e,n){return!e||e.type!==`DoWhileStatement`?!1:n==null||(0,t.default)(e,n)}function _(e,n){return!e||e.type!==`EmptyStatement`?!1:n==null||(0,t.default)(e,n)}function ee(e,n){return!e||e.type!==`ExpressionStatement`?!1:n==null||(0,t.default)(e,n)}function te(e,n){return!e||e.type!==`File`?!1:n==null||(0,t.default)(e,n)}function ne(e,n){return!e||e.type!==`ForInStatement`?!1:n==null||(0,t.default)(e,n)}function re(e,n){return!e||e.type!==`ForStatement`?!1:n==null||(0,t.default)(e,n)}function v(e,n){return!e||e.type!==`FunctionDeclaration`?!1:n==null||(0,t.default)(e,n)}function y(e,n){return!e||e.type!==`FunctionExpression`?!1:n==null||(0,t.default)(e,n)}function b(e,n){return!e||e.type!==`Identifier`?!1:n==null||(0,t.default)(e,n)}function x(e,n){return!e||e.type!==`IfStatement`?!1:n==null||(0,t.default)(e,n)}function S(e,n){return!e||e.type!==`LabeledStatement`?!1:n==null||(0,t.default)(e,n)}function C(e,n){return!e||e.type!==`StringLiteral`?!1:n==null||(0,t.default)(e,n)}function T(e,n){return!e||e.type!==`NumericLiteral`?!1:n==null||(0,t.default)(e,n)}function ae(e,n){return!e||e.type!==`NullLiteral`?!1:n==null||(0,t.default)(e,n)}function oe(e,n){return!e||e.type!==`BooleanLiteral`?!1:n==null||(0,t.default)(e,n)}function se(e,n){return!e||e.type!==`RegExpLiteral`?!1:n==null||(0,t.default)(e,n)}function E(e,n){return!e||e.type!==`LogicalExpression`?!1:n==null||(0,t.default)(e,n)}function D(e,n){return!e||e.type!==`MemberExpression`?!1:n==null||(0,t.default)(e,n)}function O(e,n){return!e||e.type!==`NewExpression`?!1:n==null||(0,t.default)(e,n)}function k(e,n){return!e||e.type!==`Program`?!1:n==null||(0,t.default)(e,n)}function ce(e,n){return!e||e.type!==`ObjectExpression`?!1:n==null||(0,t.default)(e,n)}function le(e,n){return!e||e.type!==`ObjectMethod`?!1:n==null||(0,t.default)(e,n)}function ue(e,n){return!e||e.type!==`ObjectProperty`?!1:n==null||(0,t.default)(e,n)}function A(e,n){return!e||e.type!==`RestElement`?!1:n==null||(0,t.default)(e,n)}function de(e,n){return!e||e.type!==`ReturnStatement`?!1:n==null||(0,t.default)(e,n)}function j(e,n){return!e||e.type!==`SequenceExpression`?!1:n==null||(0,t.default)(e,n)}function M(e,n){return!e||e.type!==`ParenthesizedExpression`?!1:n==null||(0,t.default)(e,n)}function N(e,n){return!e||e.type!==`SwitchCase`?!1:n==null||(0,t.default)(e,n)}function P(e,n){return!e||e.type!==`SwitchStatement`?!1:n==null||(0,t.default)(e,n)}function fe(e,n){return!e||e.type!==`ThisExpression`?!1:n==null||(0,t.default)(e,n)}function F(e,n){return!e||e.type!==`ThrowStatement`?!1:n==null||(0,t.default)(e,n)}function pe(e,n){return!e||e.type!==`TryStatement`?!1:n==null||(0,t.default)(e,n)}function me(e,n){return!e||e.type!==`UnaryExpression`?!1:n==null||(0,t.default)(e,n)}function he(e,n){return!e||e.type!==`UpdateExpression`?!1:n==null||(0,t.default)(e,n)}function ge(e,n){return!e||e.type!==`VariableDeclaration`?!1:n==null||(0,t.default)(e,n)}function I(e,n){return!e||e.type!==`VariableDeclarator`?!1:n==null||(0,t.default)(e,n)}function _e(e,n){return!e||e.type!==`WhileStatement`?!1:n==null||(0,t.default)(e,n)}function ve(e,n){return!e||e.type!==`WithStatement`?!1:n==null||(0,t.default)(e,n)}function ye(e,n){return!e||e.type!==`AssignmentPattern`?!1:n==null||(0,t.default)(e,n)}function L(e,n){return!e||e.type!==`ArrayPattern`?!1:n==null||(0,t.default)(e,n)}function be(e,n){return!e||e.type!==`ArrowFunctionExpression`?!1:n==null||(0,t.default)(e,n)}function xe(e,n){return!e||e.type!==`ClassBody`?!1:n==null||(0,t.default)(e,n)}function Se(e,n){return!e||e.type!==`ClassExpression`?!1:n==null||(0,t.default)(e,n)}function R(e,n){return!e||e.type!==`ClassDeclaration`?!1:n==null||(0,t.default)(e,n)}function Ce(e,n){return!e||e.type!==`ExportAllDeclaration`?!1:n==null||(0,t.default)(e,n)}function we(e,n){return!e||e.type!==`ExportDefaultDeclaration`?!1:n==null||(0,t.default)(e,n)}function Te(e,n){return!e||e.type!==`ExportNamedDeclaration`?!1:n==null||(0,t.default)(e,n)}function z(e,n){return!e||e.type!==`ExportSpecifier`?!1:n==null||(0,t.default)(e,n)}function Ee(e,n){return!e||e.type!==`ForOfStatement`?!1:n==null||(0,t.default)(e,n)}function De(e,n){return!e||e.type!==`ImportDeclaration`?!1:n==null||(0,t.default)(e,n)}function Oe(e,n){return!e||e.type!==`ImportDefaultSpecifier`?!1:n==null||(0,t.default)(e,n)}function B(e,n){return!e||e.type!==`ImportNamespaceSpecifier`?!1:n==null||(0,t.default)(e,n)}function ke(e,n){return!e||e.type!==`ImportSpecifier`?!1:n==null||(0,t.default)(e,n)}function Ae(e,n){return!e||e.type!==`ImportExpression`?!1:n==null||(0,t.default)(e,n)}function je(e,n){return!e||e.type!==`MetaProperty`?!1:n==null||(0,t.default)(e,n)}function V(e,n){return!e||e.type!==`ClassMethod`?!1:n==null||(0,t.default)(e,n)}function H(e,n){return!e||e.type!==`ObjectPattern`?!1:n==null||(0,t.default)(e,n)}function Me(e,n){return!e||e.type!==`SpreadElement`?!1:n==null||(0,t.default)(e,n)}function Ne(e,n){return!e||e.type!==`Super`?!1:n==null||(0,t.default)(e,n)}function Pe(e,n){return!e||e.type!==`TaggedTemplateExpression`?!1:n==null||(0,t.default)(e,n)}function Fe(e,n){return!e||e.type!==`TemplateElement`?!1:n==null||(0,t.default)(e,n)}function Ie(e,n){return!e||e.type!==`TemplateLiteral`?!1:n==null||(0,t.default)(e,n)}function Le(e,n){return!e||e.type!==`YieldExpression`?!1:n==null||(0,t.default)(e,n)}function Re(e,n){return!e||e.type!==`AwaitExpression`?!1:n==null||(0,t.default)(e,n)}function ze(e,n){return!e||e.type!==`Import`?!1:n==null||(0,t.default)(e,n)}function Be(e,n){return!e||e.type!==`BigIntLiteral`?!1:n==null||(0,t.default)(e,n)}function Ve(e,n){return!e||e.type!==`ExportNamespaceSpecifier`?!1:n==null||(0,t.default)(e,n)}function He(e,n){return!e||e.type!==`OptionalMemberExpression`?!1:n==null||(0,t.default)(e,n)}function Ue(e,n){return!e||e.type!==`OptionalCallExpression`?!1:n==null||(0,t.default)(e,n)}function We(e,n){return!e||e.type!==`ClassProperty`?!1:n==null||(0,t.default)(e,n)}function Ge(e,n){return!e||e.type!==`ClassAccessorProperty`?!1:n==null||(0,t.default)(e,n)}function Ke(e,n){return!e||e.type!==`ClassPrivateProperty`?!1:n==null||(0,t.default)(e,n)}function qe(e,n){return!e||e.type!==`ClassPrivateMethod`?!1:n==null||(0,t.default)(e,n)}function Je(e,n){return!e||e.type!==`PrivateName`?!1:n==null||(0,t.default)(e,n)}function Ye(e,n){return!e||e.type!==`StaticBlock`?!1:n==null||(0,t.default)(e,n)}function Xe(e,n){return!e||e.type!==`ImportAttribute`?!1:n==null||(0,t.default)(e,n)}function Ze(e,n){return!e||e.type!==`AnyTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function U(e,n){return!e||e.type!==`ArrayTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Qe(e,n){return!e||e.type!==`BooleanTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function $e(e,n){return!e||e.type!==`BooleanLiteralTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function W(e,n){return!e||e.type!==`NullLiteralTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function et(e,n){return!e||e.type!==`ClassImplements`?!1:n==null||(0,t.default)(e,n)}function tt(e,n){return!e||e.type!==`DeclareClass`?!1:n==null||(0,t.default)(e,n)}function nt(e,n){return!e||e.type!==`DeclareFunction`?!1:n==null||(0,t.default)(e,n)}function rt(e,n){return!e||e.type!==`DeclareInterface`?!1:n==null||(0,t.default)(e,n)}function it(e,n){return!e||e.type!==`DeclareModule`?!1:n==null||(0,t.default)(e,n)}function at(e,n){return!e||e.type!==`DeclareModuleExports`?!1:n==null||(0,t.default)(e,n)}function ot(e,n){return!e||e.type!==`DeclareTypeAlias`?!1:n==null||(0,t.default)(e,n)}function st(e,n){return!e||e.type!==`DeclareOpaqueType`?!1:n==null||(0,t.default)(e,n)}function ct(e,n){return!e||e.type!==`DeclareVariable`?!1:n==null||(0,t.default)(e,n)}function lt(e,n){return!e||e.type!==`DeclareExportDeclaration`?!1:n==null||(0,t.default)(e,n)}function ut(e,n){return!e||e.type!==`DeclareExportAllDeclaration`?!1:n==null||(0,t.default)(e,n)}function dt(e,n){return!e||e.type!==`DeclaredPredicate`?!1:n==null||(0,t.default)(e,n)}function ft(e,n){return!e||e.type!==`ExistsTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function pt(e,n){return!e||e.type!==`FunctionTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function G(e,n){return!e||e.type!==`FunctionTypeParam`?!1:n==null||(0,t.default)(e,n)}function mt(e,n){return!e||e.type!==`GenericTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function K(e,n){return!e||e.type!==`InferredPredicate`?!1:n==null||(0,t.default)(e,n)}function ht(e,n){return!e||e.type!==`InterfaceExtends`?!1:n==null||(0,t.default)(e,n)}function gt(e,n){return!e||e.type!==`InterfaceDeclaration`?!1:n==null||(0,t.default)(e,n)}function _t(e,n){return!e||e.type!==`InterfaceTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function vt(e,n){return!e||e.type!==`IntersectionTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function yt(e,n){return!e||e.type!==`MixedTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function bt(e,n){return!e||e.type!==`EmptyTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function xt(e,n){return!e||e.type!==`NullableTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function St(e,n){return!e||e.type!==`NumberLiteralTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Ct(e,n){return!e||e.type!==`NumberTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function wt(e,n){return!e||e.type!==`ObjectTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Tt(e,n){return!e||e.type!==`ObjectTypeInternalSlot`?!1:n==null||(0,t.default)(e,n)}function q(e,n){return!e||e.type!==`ObjectTypeCallProperty`?!1:n==null||(0,t.default)(e,n)}function Et(e,n){return!e||e.type!==`ObjectTypeIndexer`?!1:n==null||(0,t.default)(e,n)}function J(e,n){return!e||e.type!==`ObjectTypeProperty`?!1:n==null||(0,t.default)(e,n)}function Y(e,n){return!e||e.type!==`ObjectTypeSpreadProperty`?!1:n==null||(0,t.default)(e,n)}function Dt(e,n){return!e||e.type!==`OpaqueType`?!1:n==null||(0,t.default)(e,n)}function Ot(e,n){return!e||e.type!==`QualifiedTypeIdentifier`?!1:n==null||(0,t.default)(e,n)}function X(e,n){return!e||e.type!==`StringLiteralTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function kt(e,n){return!e||e.type!==`StringTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function At(e,n){return!e||e.type!==`SymbolTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function jt(e,n){return!e||e.type!==`ThisTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Z(e,n){return!e||e.type!==`TupleTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Mt(e,n){return!e||e.type!==`TypeofTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Nt(e,n){return!e||e.type!==`TypeAlias`?!1:n==null||(0,t.default)(e,n)}function Pt(e,n){return!e||e.type!==`TypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Ft(e,n){return!e||e.type!==`TypeCastExpression`?!1:n==null||(0,t.default)(e,n)}function It(e,n){return!e||e.type!==`TypeParameter`?!1:n==null||(0,t.default)(e,n)}function Lt(e,n){return!e||e.type!==`TypeParameterDeclaration`?!1:n==null||(0,t.default)(e,n)}function Rt(e,n){return!e||e.type!==`TypeParameterInstantiation`?!1:n==null||(0,t.default)(e,n)}function zt(e,n){return!e||e.type!==`UnionTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Q(e,n){return!e||e.type!==`Variance`?!1:n==null||(0,t.default)(e,n)}function Bt(e,n){return!e||e.type!==`VoidTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Vt(e,n){return!e||e.type!==`EnumDeclaration`?!1:n==null||(0,t.default)(e,n)}function Ht(e,n){return!e||e.type!==`EnumBooleanBody`?!1:n==null||(0,t.default)(e,n)}function Ut(e,n){return!e||e.type!==`EnumNumberBody`?!1:n==null||(0,t.default)(e,n)}function Wt(e,n){return!e||e.type!==`EnumStringBody`?!1:n==null||(0,t.default)(e,n)}function Gt(e,n){return!e||e.type!==`EnumSymbolBody`?!1:n==null||(0,t.default)(e,n)}function Kt(e,n){return!e||e.type!==`EnumBooleanMember`?!1:n==null||(0,t.default)(e,n)}function qt(e,n){return!e||e.type!==`EnumNumberMember`?!1:n==null||(0,t.default)(e,n)}function $(e,n){return!e||e.type!==`EnumStringMember`?!1:n==null||(0,t.default)(e,n)}function Jt(e,n){return!e||e.type!==`EnumDefaultedMember`?!1:n==null||(0,t.default)(e,n)}function Yt(e,n){return!e||e.type!==`IndexedAccessType`?!1:n==null||(0,t.default)(e,n)}function Xt(e,n){return!e||e.type!==`OptionalIndexedAccessType`?!1:n==null||(0,t.default)(e,n)}function Zt(e,n){return!e||e.type!==`JSXAttribute`?!1:n==null||(0,t.default)(e,n)}function Qt(e,n){return!e||e.type!==`JSXClosingElement`?!1:n==null||(0,t.default)(e,n)}function $t(e,n){return!e||e.type!==`JSXElement`?!1:n==null||(0,t.default)(e,n)}function en(e,n){return!e||e.type!==`JSXEmptyExpression`?!1:n==null||(0,t.default)(e,n)}function tn(e,n){return!e||e.type!==`JSXExpressionContainer`?!1:n==null||(0,t.default)(e,n)}function nn(e,n){return!e||e.type!==`JSXSpreadChild`?!1:n==null||(0,t.default)(e,n)}function rn(e,n){return!e||e.type!==`JSXIdentifier`?!1:n==null||(0,t.default)(e,n)}function an(e,n){return!e||e.type!==`JSXMemberExpression`?!1:n==null||(0,t.default)(e,n)}function on(e,n){return!e||e.type!==`JSXNamespacedName`?!1:n==null||(0,t.default)(e,n)}function sn(e,n){return!e||e.type!==`JSXOpeningElement`?!1:n==null||(0,t.default)(e,n)}function cn(e,n){return!e||e.type!==`JSXSpreadAttribute`?!1:n==null||(0,t.default)(e,n)}function ln(e,n){return!e||e.type!==`JSXText`?!1:n==null||(0,t.default)(e,n)}function un(e,n){return!e||e.type!==`JSXFragment`?!1:n==null||(0,t.default)(e,n)}function dn(e,n){return!e||e.type!==`JSXOpeningFragment`?!1:n==null||(0,t.default)(e,n)}function fn(e,n){return!e||e.type!==`JSXClosingFragment`?!1:n==null||(0,t.default)(e,n)}function pn(e,n){return!e||e.type!==`Noop`?!1:n==null||(0,t.default)(e,n)}function mn(e,n){return!e||e.type!==`Placeholder`?!1:n==null||(0,t.default)(e,n)}function hn(e,n){return!e||e.type!==`V8IntrinsicIdentifier`?!1:n==null||(0,t.default)(e,n)}function gn(e,n){return!e||e.type!==`ArgumentPlaceholder`?!1:n==null||(0,t.default)(e,n)}function _n(e,n){return!e||e.type!==`BindExpression`?!1:n==null||(0,t.default)(e,n)}function vn(e,n){return!e||e.type!==`Decorator`?!1:n==null||(0,t.default)(e,n)}function yn(e,n){return!e||e.type!==`DoExpression`?!1:n==null||(0,t.default)(e,n)}function bn(e,n){return!e||e.type!==`ExportDefaultSpecifier`?!1:n==null||(0,t.default)(e,n)}function xn(e,n){return!e||e.type!==`RecordExpression`?!1:n==null||(0,t.default)(e,n)}function Sn(e,n){return!e||e.type!==`TupleExpression`?!1:n==null||(0,t.default)(e,n)}function Cn(e,n){return!e||e.type!==`DecimalLiteral`?!1:n==null||(0,t.default)(e,n)}function wn(e,n){return!e||e.type!==`ModuleExpression`?!1:n==null||(0,t.default)(e,n)}function Tn(e,n){return!e||e.type!==`TopicReference`?!1:n==null||(0,t.default)(e,n)}function En(e,n){return!e||e.type!==`PipelineTopicExpression`?!1:n==null||(0,t.default)(e,n)}function Dn(e,n){return!e||e.type!==`PipelineBareFunction`?!1:n==null||(0,t.default)(e,n)}function On(e,n){return!e||e.type!==`PipelinePrimaryTopicReference`?!1:n==null||(0,t.default)(e,n)}function kn(e,n){return!e||e.type!==`VoidPattern`?!1:n==null||(0,t.default)(e,n)}function An(e,n){return!e||e.type!==`TSParameterProperty`?!1:n==null||(0,t.default)(e,n)}function jn(e,n){return!e||e.type!==`TSDeclareFunction`?!1:n==null||(0,t.default)(e,n)}function Mn(e,n){return!e||e.type!==`TSDeclareMethod`?!1:n==null||(0,t.default)(e,n)}function Nn(e,n){return!e||e.type!==`TSQualifiedName`?!1:n==null||(0,t.default)(e,n)}function Pn(e,n){return!e||e.type!==`TSCallSignatureDeclaration`?!1:n==null||(0,t.default)(e,n)}function Fn(e,n){return!e||e.type!==`TSConstructSignatureDeclaration`?!1:n==null||(0,t.default)(e,n)}function In(e,n){return!e||e.type!==`TSPropertySignature`?!1:n==null||(0,t.default)(e,n)}function Ln(e,n){return!e||e.type!==`TSMethodSignature`?!1:n==null||(0,t.default)(e,n)}function Rn(e,n){return!e||e.type!==`TSIndexSignature`?!1:n==null||(0,t.default)(e,n)}function zn(e,n){return!e||e.type!==`TSAnyKeyword`?!1:n==null||(0,t.default)(e,n)}function Bn(e,n){return!e||e.type!==`TSBooleanKeyword`?!1:n==null||(0,t.default)(e,n)}function Vn(e,n){return!e||e.type!==`TSBigIntKeyword`?!1:n==null||(0,t.default)(e,n)}function Hn(e,n){return!e||e.type!==`TSIntrinsicKeyword`?!1:n==null||(0,t.default)(e,n)}function Un(e,n){return!e||e.type!==`TSNeverKeyword`?!1:n==null||(0,t.default)(e,n)}function Wn(e,n){return!e||e.type!==`TSNullKeyword`?!1:n==null||(0,t.default)(e,n)}function Gn(e,n){return!e||e.type!==`TSNumberKeyword`?!1:n==null||(0,t.default)(e,n)}function Kn(e,n){return!e||e.type!==`TSObjectKeyword`?!1:n==null||(0,t.default)(e,n)}function qn(e,n){return!e||e.type!==`TSStringKeyword`?!1:n==null||(0,t.default)(e,n)}function Jn(e,n){return!e||e.type!==`TSSymbolKeyword`?!1:n==null||(0,t.default)(e,n)}function Yn(e,n){return!e||e.type!==`TSUndefinedKeyword`?!1:n==null||(0,t.default)(e,n)}function Xn(e,n){return!e||e.type!==`TSUnknownKeyword`?!1:n==null||(0,t.default)(e,n)}function Zn(e,n){return!e||e.type!==`TSVoidKeyword`?!1:n==null||(0,t.default)(e,n)}function Qn(e,n){return!e||e.type!==`TSThisType`?!1:n==null||(0,t.default)(e,n)}function $n(e,n){return!e||e.type!==`TSFunctionType`?!1:n==null||(0,t.default)(e,n)}function er(e,n){return!e||e.type!==`TSConstructorType`?!1:n==null||(0,t.default)(e,n)}function tr(e,n){return!e||e.type!==`TSTypeReference`?!1:n==null||(0,t.default)(e,n)}function nr(e,n){return!e||e.type!==`TSTypePredicate`?!1:n==null||(0,t.default)(e,n)}function rr(e,n){return!e||e.type!==`TSTypeQuery`?!1:n==null||(0,t.default)(e,n)}function ir(e,n){return!e||e.type!==`TSTypeLiteral`?!1:n==null||(0,t.default)(e,n)}function ar(e,n){return!e||e.type!==`TSArrayType`?!1:n==null||(0,t.default)(e,n)}function or(e,n){return!e||e.type!==`TSTupleType`?!1:n==null||(0,t.default)(e,n)}function sr(e,n){return!e||e.type!==`TSOptionalType`?!1:n==null||(0,t.default)(e,n)}function cr(e,n){return!e||e.type!==`TSRestType`?!1:n==null||(0,t.default)(e,n)}function lr(e,n){return!e||e.type!==`TSNamedTupleMember`?!1:n==null||(0,t.default)(e,n)}function ur(e,n){return!e||e.type!==`TSUnionType`?!1:n==null||(0,t.default)(e,n)}function dr(e,n){return!e||e.type!==`TSIntersectionType`?!1:n==null||(0,t.default)(e,n)}function fr(e,n){return!e||e.type!==`TSConditionalType`?!1:n==null||(0,t.default)(e,n)}function pr(e,n){return!e||e.type!==`TSInferType`?!1:n==null||(0,t.default)(e,n)}function mr(e,n){return!e||e.type!==`TSParenthesizedType`?!1:n==null||(0,t.default)(e,n)}function hr(e,n){return!e||e.type!==`TSTypeOperator`?!1:n==null||(0,t.default)(e,n)}function gr(e,n){return!e||e.type!==`TSIndexedAccessType`?!1:n==null||(0,t.default)(e,n)}function _r(e,n){return!e||e.type!==`TSMappedType`?!1:n==null||(0,t.default)(e,n)}function vr(e,n){return!e||e.type!==`TSTemplateLiteralType`?!1:n==null||(0,t.default)(e,n)}function yr(e,n){return!e||e.type!==`TSLiteralType`?!1:n==null||(0,t.default)(e,n)}function br(e,n){return!e||e.type!==`TSExpressionWithTypeArguments`?!1:n==null||(0,t.default)(e,n)}function xr(e,n){return!e||e.type!==`TSInterfaceDeclaration`?!1:n==null||(0,t.default)(e,n)}function Sr(e,n){return!e||e.type!==`TSInterfaceBody`?!1:n==null||(0,t.default)(e,n)}function Cr(e,n){return!e||e.type!==`TSTypeAliasDeclaration`?!1:n==null||(0,t.default)(e,n)}function wr(e,n){return!e||e.type!==`TSInstantiationExpression`?!1:n==null||(0,t.default)(e,n)}function Tr(e,n){return!e||e.type!==`TSAsExpression`?!1:n==null||(0,t.default)(e,n)}function Er(e,n){return!e||e.type!==`TSSatisfiesExpression`?!1:n==null||(0,t.default)(e,n)}function Dr(e,n){return!e||e.type!==`TSTypeAssertion`?!1:n==null||(0,t.default)(e,n)}function Or(e,n){return!e||e.type!==`TSEnumBody`?!1:n==null||(0,t.default)(e,n)}function kr(e,n){return!e||e.type!==`TSEnumDeclaration`?!1:n==null||(0,t.default)(e,n)}function Ar(e,n){return!e||e.type!==`TSEnumMember`?!1:n==null||(0,t.default)(e,n)}function jr(e,n){return!e||e.type!==`TSModuleDeclaration`?!1:n==null||(0,t.default)(e,n)}function Mr(e,n){return!e||e.type!==`TSModuleBlock`?!1:n==null||(0,t.default)(e,n)}function Nr(e,n){return!e||e.type!==`TSImportType`?!1:n==null||(0,t.default)(e,n)}function Pr(e,n){return!e||e.type!==`TSImportEqualsDeclaration`?!1:n==null||(0,t.default)(e,n)}function Fr(e,n){return!e||e.type!==`TSExternalModuleReference`?!1:n==null||(0,t.default)(e,n)}function Ir(e,n){return!e||e.type!==`TSNonNullExpression`?!1:n==null||(0,t.default)(e,n)}function Lr(e,n){return!e||e.type!==`TSExportAssignment`?!1:n==null||(0,t.default)(e,n)}function Rr(e,n){return!e||e.type!==`TSNamespaceExportDeclaration`?!1:n==null||(0,t.default)(e,n)}function zr(e,n){return!e||e.type!==`TSTypeAnnotation`?!1:n==null||(0,t.default)(e,n)}function Br(e,n){return!e||e.type!==`TSTypeParameterInstantiation`?!1:n==null||(0,t.default)(e,n)}function Vr(e,n){return!e||e.type!==`TSTypeParameterDeclaration`?!1:n==null||(0,t.default)(e,n)}function Hr(e,n){return!e||e.type!==`TSTypeParameter`?!1:n==null||(0,t.default)(e,n)}function Ur(e,n){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`ImportExpression`: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`:case`ImportAttribute`:break;case`Placeholder`:switch(e.expectedNode){case`Identifier`:case`StringLiteral`:case`BlockStatement`:case`ClassBody`:break;default:return!1}break;default:return!1}return n==null||(0,t.default)(e,n)}function Wr(e,n){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`ImportExpression`: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 n==null||(0,t.default)(e,n)}function Gr(e,n){if(!e)return!1;switch(e.type){case`BinaryExpression`:case`LogicalExpression`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Kr(e,n){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(e.expectedNode===`BlockStatement`)break;default:return!1}return n==null||(0,t.default)(e,n)}function qr(e,n){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(e.expectedNode===`BlockStatement`)break;default:return!1}return n==null||(0,t.default)(e,n)}function Jr(e,n){if(!e)return!1;switch(e.type){case`BlockStatement`:case`Program`:case`TSModuleBlock`:break;case`Placeholder`:if(e.expectedNode===`BlockStatement`)break;default:return!1}return n==null||(0,t.default)(e,n)}function Yr(e,n){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 n==null||(0,t.default)(e,n)}function Xr(e,n){if(!e)return!1;switch(e.type){case`BreakStatement`:case`ContinueStatement`:case`ReturnStatement`:case`ThrowStatement`:case`YieldExpression`:case`AwaitExpression`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Zr(e,n){if(!e)return!1;switch(e.type){case`BreakStatement`:case`ContinueStatement`:case`ReturnStatement`:case`ThrowStatement`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Qr(e,n){if(!e)return!1;switch(e.type){case`ConditionalExpression`:case`IfStatement`:break;default:return!1}return n==null||(0,t.default)(e,n)}function $r(e,n){if(!e)return!1;switch(e.type){case`DoWhileStatement`:case`ForInStatement`:case`ForStatement`:case`WhileStatement`:case`ForOfStatement`:break;default:return!1}return n==null||(0,t.default)(e,n)}function ei(e,n){if(!e)return!1;switch(e.type){case`DoWhileStatement`:case`WhileStatement`:break;default:return!1}return n==null||(0,t.default)(e,n)}function ti(e,n){if(!e)return!1;switch(e.type){case`ExpressionStatement`:case`ParenthesizedExpression`:case`TypeCastExpression`:break;default:return!1}return n==null||(0,t.default)(e,n)}function ni(e,n){if(!e)return!1;switch(e.type){case`ForInStatement`:case`ForStatement`:case`ForOfStatement`:break;default:return!1}return n==null||(0,t.default)(e,n)}function ri(e,n){if(!e)return!1;switch(e.type){case`ForInStatement`:case`ForOfStatement`:break;default:return!1}return n==null||(0,t.default)(e,n)}function ii(e,n){if(!e)return!1;switch(e.type){case`FunctionDeclaration`:case`FunctionExpression`:case`ObjectMethod`:case`ArrowFunctionExpression`:case`ClassMethod`:case`ClassPrivateMethod`:break;default:return!1}return n==null||(0,t.default)(e,n)}function ai(e,n){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 n==null||(0,t.default)(e,n)}function oi(e,n){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(e.expectedNode===`StringLiteral`)break;default:return!1}return n==null||(0,t.default)(e,n)}function si(e,n){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`:case`TSImportEqualsDeclaration`:break;case`Placeholder`:if(e.expectedNode===`Declaration`)break;default:return!1}return n==null||(0,t.default)(e,n)}function ci(e,n){if(!e)return!1;switch(e.type){case`Identifier`:case`RestElement`:case`AssignmentPattern`:case`ArrayPattern`:case`ObjectPattern`:case`VoidPattern`:break;case`Placeholder`:if(e.expectedNode===`Identifier`)break;default:return!1}return n==null||(0,t.default)(e,n)}function li(e,n){if(!e)return!1;switch(e.type){case`Identifier`:case`MemberExpression`:case`RestElement`:case`AssignmentPattern`:case`ArrayPattern`:case`ObjectPattern`:case`VoidPattern`: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 n==null||(0,t.default)(e,n)}function ui(e,n){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 n==null||(0,t.default)(e,n)}function di(e,n){if(!e)return!1;switch(e.type){case`Identifier`:case`TSQualifiedName`:break;case`Placeholder`:if(e.expectedNode===`Identifier`)break;default:return!1}return n==null||(0,t.default)(e,n)}function fi(e,n){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(e.expectedNode===`StringLiteral`)break;default:return!1}return n==null||(0,t.default)(e,n)}function pi(e,n){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(e.expectedNode===`StringLiteral`)break;default:return!1}return n==null||(0,t.default)(e,n)}function mi(e,n){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 n==null||(0,t.default)(e,n)}function hi(e,n){if(!e)return!1;switch(e.type){case`ObjectMethod`:case`ClassMethod`:case`ClassPrivateMethod`:break;default:return!1}return n==null||(0,t.default)(e,n)}function gi(e,n){if(!e)return!1;switch(e.type){case`ObjectMethod`:case`ObjectProperty`:break;default:return!1}return n==null||(0,t.default)(e,n)}function _i(e,n){if(!e)return!1;switch(e.type){case`ObjectProperty`:case`ClassProperty`:case`ClassAccessorProperty`:case`ClassPrivateProperty`:break;default:return!1}return n==null||(0,t.default)(e,n)}function vi(e,n){if(!e)return!1;switch(e.type){case`UnaryExpression`:case`SpreadElement`:break;default:return!1}return n==null||(0,t.default)(e,n)}function yi(e,n){if(!e)return!1;switch(e.type){case`AssignmentPattern`:case`ArrayPattern`:case`ObjectPattern`:case`VoidPattern`:break;case`Placeholder`:if(e.expectedNode===`Pattern`)break;default:return!1}return n==null||(0,t.default)(e,n)}function bi(e,n){if(!e)return!1;switch(e.type){case`ClassExpression`:case`ClassDeclaration`:break;default:return!1}return n==null||(0,t.default)(e,n)}function xi(e,n){if(!e)return!1;switch(e.type){case`ExportAllDeclaration`:case`ExportDefaultDeclaration`:case`ExportNamedDeclaration`:case`ImportDeclaration`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Si(e,n){if(!e)return!1;switch(e.type){case`ExportAllDeclaration`:case`ExportDefaultDeclaration`:case`ExportNamedDeclaration`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Ci(e,n){if(!e)return!1;switch(e.type){case`ExportSpecifier`:case`ImportDefaultSpecifier`:case`ImportNamespaceSpecifier`:case`ImportSpecifier`:case`ExportNamespaceSpecifier`:case`ExportDefaultSpecifier`:break;default:return!1}return n==null||(0,t.default)(e,n)}function wi(e,n){if(!e)return!1;switch(e.type){case`ClassAccessorProperty`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Ti(e,n){if(!e)return!1;switch(e.type){case`ClassPrivateProperty`:case`ClassPrivateMethod`:case`PrivateName`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Ei(e,n){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 n==null||(0,t.default)(e,n)}function Di(e,n){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 n==null||(0,t.default)(e,n)}function Oi(e,n){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 n==null||(0,t.default)(e,n)}function ki(e,n){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 n==null||(0,t.default)(e,n)}function Ai(e,n){if(!e)return!1;switch(e.type){case`DeclaredPredicate`:case`InferredPredicate`:break;default:return!1}return n==null||(0,t.default)(e,n)}function ji(e,n){if(!e)return!1;switch(e.type){case`EnumBooleanBody`:case`EnumNumberBody`:case`EnumStringBody`:case`EnumSymbolBody`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Mi(e,n){if(!e)return!1;switch(e.type){case`EnumBooleanMember`:case`EnumNumberMember`:case`EnumStringMember`:case`EnumDefaultedMember`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Ni(e,n){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 n==null||(0,t.default)(e,n)}function Pi(e,n){if(!e)return!1;switch(e.type){case`Noop`:case`Placeholder`:case`V8IntrinsicIdentifier`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Fi(e,n){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`TSTemplateLiteralType`:case`TSLiteralType`:case`TSExpressionWithTypeArguments`:case`TSInterfaceDeclaration`:case`TSInterfaceBody`:case`TSTypeAliasDeclaration`:case`TSInstantiationExpression`:case`TSAsExpression`:case`TSSatisfiesExpression`:case`TSTypeAssertion`:case`TSEnumBody`: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 n==null||(0,t.default)(e,n)}function Ii(e,n){if(!e)return!1;switch(e.type){case`TSCallSignatureDeclaration`:case`TSConstructSignatureDeclaration`:case`TSPropertySignature`:case`TSMethodSignature`:case`TSIndexSignature`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Li(e,n){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`TSTemplateLiteralType`:case`TSLiteralType`:case`TSExpressionWithTypeArguments`:case`TSImportType`:break;default:return!1}return n==null||(0,t.default)(e,n)}function Ri(e,n){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`TSTemplateLiteralType`:case`TSLiteralType`:break;default:return!1}return n==null||(0,t.default)(e,n)}function zi(e,r){return(0,n.default)(`isNumberLiteral`,`isNumericLiteral`),!e||e.type!==`NumberLiteral`?!1:r==null||(0,t.default)(e,r)}function Bi(e,r){return(0,n.default)(`isRegexLiteral`,`isRegExpLiteral`),!e||e.type!==`RegexLiteral`?!1:r==null||(0,t.default)(e,r)}function Vi(e,r){return(0,n.default)(`isRestProperty`,`isRestElement`),!e||e.type!==`RestProperty`?!1:r==null||(0,t.default)(e,r)}function Hi(e,r){return(0,n.default)(`isSpreadProperty`,`isSpreadElement`),!e||e.type!==`SpreadProperty`?!1:r==null||(0,t.default)(e,r)}function Ui(e,t){return(0,n.default)(`isModuleDeclaration`,`isImportOrExportDeclaration`),xi(e,t)}})),ae=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T();function n(e){return(0,t.isMemberExpression)(e)||(0,t.isMetaProperty)(e)}function r(e,r,i){if(!n(e))return!1;let a=Array.isArray(r)?r:r.split(`.`),o=[],s;for(s=e;n(s);s=(c=s.object)??s.meta){var c;o.push(s.property)}if(o.push(s),o.length<a.length||!i&&o.length>a.length)return!1;for(let e=0,n=o.length-1;e<a.length;e++,n--){let r=o[n],i;if((0,t.isIdentifier)(r))i=r.name;else if((0,t.isStringLiteral)(r))i=r.value;else if((0,t.isThisExpression)(r))i=`this`;else if((0,t.isSuper)(r))i=`super`;else if((0,t.isPrivateName)(r))i=`#`+r.id.name;else return!1;if(a[e]!==i)return!1}return!0}})),oe=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=ae();function n(e,n){let r=e.split(`.`);return e=>(0,t.default)(e,r,n)}})),se=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.default=(0,oe().default)(`React.Component`)})),E=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(e){return!!e&&/^[a-z]/.test(e)}})),D=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=I();function n(e,n){if(e===n)return!0;if(e==null||t.ALIAS_KEYS[n])return!1;let r=t.FLIPPED_ALIAS_KEYS[n];return!!(r!=null&&r.includes(e))}})),O=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=I();function n(e,n){if(e===n)return!0;let r=t.PLACEHOLDERS_ALIAS[e];return!!(r!=null&&r.includes(n))}})),k=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=ie(),n=D(),r=O(),i=I();function a(e,a,o){return a?(0,n.default)(a.type,e)?o===void 0||(0,t.default)(a,o):!o&&a.type===`Placeholder`&&e in i.FLIPPED_ALIAS_KEYS&&(0,r.default)(a.expectedNode,e):!1}})),ce=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isIdentifierChar=l,e.isIdentifierName=u,e.isIdentifierStart=c;var t=`ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-Ა-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ--ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ`,n=`·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ--ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・`,r=RegExp(`[`+t+`]`),i=RegExp(`[`+t+n+`]`);t=n=null;var a=[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,4,51,13,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,7,25,39,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,39,27,10,22,251,41,7,1,17,5,57,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,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,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,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,24,43,261,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,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,229,29,3,0,208,30,2,2,2,1,2,6,3,4,10,1,225,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,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489],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,7,9,32,4,318,1,78,5,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,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,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,199,7,137,9,54,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,55,9,266,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,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,245,1,2,9,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function s(e,t){let n=65536;for(let r=0,i=t.length;r<i;r+=2){if(n+=t[r],n>e)return!1;if(n+=t[r+1],n>=e)return!0}return!1}function c(e){return e<65?e===36:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&r.test(String.fromCharCode(e)):s(e,a)}function l(e){return e<48?e===36:e<58?!0:e<65?!1:e<=90?!0:e<97?e===95:e<=122?!0:e<=65535?e>=170&&i.test(String.fromCharCode(e)):s(e,a)||s(e,o)}function u(e){let t=!0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if((r&64512)==55296&&n+1<e.length){let t=e.charCodeAt(++n);(t&64512)==56320&&(r=65536+((r&1023)<<10)+(t&1023))}if(t){if(t=!1,!c(r))return!1}else if(!l(r))return!1}return!t}})),le=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isKeyword=l,e.isReservedWord=a,e.isStrictBindOnlyReservedWord=s,e.isStrictBindReservedWord=c,e.isStrictReservedWord=o;var t={keyword:`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`.split(`.`),strict:[`implements`,`interface`,`let`,`package`,`private`,`protected`,`public`,`static`,`yield`],strictBind:[`eval`,`arguments`]},n=new Set(t.keyword),r=new Set(t.strict),i=new Set(t.strictBind);function a(e,t){return t&&e===`await`||e===`enum`}function o(e,t){return a(e,t)||r.has(e)}function s(e){return i.has(e)}function c(e,t){return o(e,t)||s(e)}function l(e){return n.has(e)}})),ue=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"isIdentifierChar",{enumerable:!0,get:function(){return t.isIdentifierChar}}),Object.defineProperty(e,"isIdentifierName",{enumerable:!0,get:function(){return t.isIdentifierName}}),Object.defineProperty(e,"isIdentifierStart",{enumerable:!0,get:function(){return t.isIdentifierStart}}),Object.defineProperty(e,"isKeyword",{enumerable:!0,get:function(){return n.isKeyword}}),Object.defineProperty(e,"isReservedWord",{enumerable:!0,get:function(){return n.isReservedWord}}),Object.defineProperty(e,"isStrictBindOnlyReservedWord",{enumerable:!0,get:function(){return n.isStrictBindOnlyReservedWord}}),Object.defineProperty(e,"isStrictBindReservedWord",{enumerable:!0,get:function(){return n.isStrictBindReservedWord}}),Object.defineProperty(e,"isStrictReservedWord",{enumerable:!0,get:function(){return n.isStrictReservedWord}});var t=ce(),n=le()})),A=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=ue();function n(e,n=!0){return typeof e!=`string`||n&&((0,t.isKeyword)(e)||(0,t.isStrictReservedWord)(e,!0))?!1:(0,t.isIdentifierName)(e)}})),de=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.readCodePoint=l,e.readInt=c,e.readStringContents=i;var t=function(e){return e>=48&&e<=57},n={decBinOct:new Set([46,66,69,79,95,98,101,111]),hex:new Set([46,88,95,120])},r={bin:e=>e===48||e===49,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,i,s){let c=n,l=r,u=i,d=``,f=null,p=n,{length:m}=t;for(;;){if(n>=m){s.unterminated(c,l,u),d+=t.slice(p,n);break}let h=t.charCodeAt(n);if(a(e,h,t,n)){d+=t.slice(p,n);break}if(h===92){d+=t.slice(p,n);let a=o(t,n,r,i,e===`template`,s);a.ch===null&&!f?f={pos:n,lineStart:r,curLine:i}:d+=a.ch,{pos:n,lineStart:r,curLine:i}=a,p=n}else h===8232||h===8233?(++n,++i,r=n):h===10||h===13?e===`template`?(d+=t.slice(p,n)+`
|
|
143
|
+
`,++n,h===13&&t.charCodeAt(n)===10&&++n,++i,p=r=n):s.unterminated(c,l,u):++n}return{pos:n,str:d,firstInvalidLoc:f,lineStart:r,curLine:i,containsInvalid:!!f}}function a(e,t,n,r){return e===`template`?t===96||t===36&&n.charCodeAt(r+1)===123:t===(e===`double`?34:39)}function o(e,t,n,r,i,a){let o=!i;t++;let c=e=>({pos:t,ch:e,lineStart:n,curLine:r}),u=e.charCodeAt(t++);switch(u){case 110:return c(`
|
|
144
|
+
`);case 114:return c(`\r`);case 120:{let i;return{code:i,pos:t}=s(e,t,n,r,2,!1,o,a),c(i===null?null:String.fromCharCode(i))}case 117:{let i;return{code:i,pos:t}=l(e,t,n,r,o,a),c(i===null?null:String.fromCodePoint(i))}case 116:return c(` `);case 98:return c(`\b`);case 118:return c(`\v`);case 102:return c(`\f`);case 13:e.charCodeAt(t)===10&&++t;case 10:n=t,++r;case 8232:case 8233:return c(``);case 56:case 57:if(i)return c(null);a.strictNumericEscape(t-1,n,r);default:if(u>=48&&u<=55){let o=t-1,s=/^[0-7]+/.exec(e.slice(o,t+2))[0],l=parseInt(s,8);l>255&&(s=s.slice(0,-1),l=parseInt(s,8)),t+=s.length-1;let u=e.charCodeAt(t);if(s!==`0`||u===56||u===57){if(i)return c(null);a.strictNumericEscape(o,n,r)}return c(String.fromCharCode(l))}return c(String.fromCharCode(u))}}function s(e,t,n,r,i,a,o,s){let l=t,u;return{n:u,pos:t}=c(e,t,n,r,16,i,a,!1,s,!o),u===null&&(o?s.invalidEscapeSequence(l,n,r):t=l-1),{code:u,pos:t}}function c(e,i,a,o,s,c,l,u,d,f){let p=i,m=s===16?n.hex:n.decBinOct,h=s===16?r.hex:s===10?r.dec:s===8?r.oct:r.bin,g=!1,_=0;for(let n=0,r=c??1/0;n<r;++n){let n=e.charCodeAt(i),r;if(n===95&&u!==`bail`){let t=e.charCodeAt(i-1),n=e.charCodeAt(i+1);if(!u){if(f)return{n:null,pos:i};d.numericSeparatorInEscapeSequence(i,a,o)}else if(Number.isNaN(n)||!h(n)||m.has(t)||m.has(n)){if(f)return{n:null,pos:i};d.unexpectedNumericSeparator(i,a,o)}++i}else{if(r=n>=97?n-97+10:n>=65?n-65+10:t(n)?n-48:1/0,r>=s){if(r<=9&&f)return{n:null,pos:i};if(r<=9&&d.invalidDigit(i,a,o,s))r=0;else if(l)r=0,g=!0;else break}++i,_=_*s+r}}return i===p||c!=null&&i-p!==c||g?{n:null,pos:i}:{n:_,pos:i}}function l(e,t,n,r,i,a){let o=e.charCodeAt(t),c;if(o===123){if(++t,{code:c,pos:t}=s(e,t,n,r,e.indexOf(`}`,t)-t,!0,i,a),++t,c!==null&&c>1114111){if(i)a.invalidCodePoint(t,n,r);else return{code:null,pos:t}}}else({code:c,pos:t}=s(e,t,n,r,4,!1,i,a));return{code:c,pos:t}}})),j=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.UPDATE_OPERATORS=e.UNARY_OPERATORS=e.STRING_UNARY_OPERATORS=e.STATEMENT_OR_BLOCK_KEYS=e.NUMBER_UNARY_OPERATORS=e.NUMBER_BINARY_OPERATORS=e.LOGICAL_OPERATORS=e.INHERIT_KEYS=e.FOR_INIT_KEYS=e.FLATTENABLE_KEYS=e.EQUALITY_BINARY_OPERATORS=e.COMPARISON_BINARY_OPERATORS=e.COMMENT_KEYS=e.BOOLEAN_UNARY_OPERATORS=e.BOOLEAN_NUMBER_BINARY_OPERATORS=e.BOOLEAN_BINARY_OPERATORS=e.BINARY_OPERATORS=e.ASSIGNMENT_OPERATORS=void 0,e.STATEMENT_OR_BLOCK_KEYS=[`consequent`,`body`,`alternate`],e.FLATTENABLE_KEYS=[`body`,`expressions`],e.FOR_INIT_KEYS=[`left`,`init`],e.COMMENT_KEYS=[`leadingComments`,`trailingComments`,`innerComments`];var t=e.LOGICAL_OPERATORS=[`||`,`&&`,`??`];e.UPDATE_OPERATORS=[`++`,`--`];var n=e.BOOLEAN_NUMBER_BINARY_OPERATORS=[`>`,`<`,`>=`,`<=`],r=e.BOOLEAN_BINARY_OPERATORS=[...e.COMPARISON_BINARY_OPERATORS=[...e.EQUALITY_BINARY_OPERATORS=[`==`,`===`,`!=`,`!==`],`in`,`instanceof`],...n],i=e.NUMBER_BINARY_OPERATORS=[`-`,`/`,`%`,`*`,`**`,`&`,`|`,`>>`,`>>>`,`<<`,`^`];e.BINARY_OPERATORS=[`+`,...i,...r,`|>`],e.ASSIGNMENT_OPERATORS=[`=`,`+=`,...i.map(e=>e+`=`),...t.map(e=>e+`=`)];var a=e.BOOLEAN_UNARY_OPERATORS=[`delete`,`!`],o=e.NUMBER_UNARY_OPERATORS=[`+`,`-`,`~`],s=e.STRING_UNARY_OPERATORS=[`typeof`];e.UNARY_OPERATORS=[`void`,`throw`,...a,...o,...s],e.INHERIT_KEYS={optional:[`typeAnnotation`,`typeParameters`,`returnType`],force:[`start`,`loc`,`end`]},e.BLOCK_SCOPED_SYMBOL=Symbol.for(`var used to be block scoped`),e.NOT_LOCAL_BINDING=Symbol.for(`should not be considered a local binding`)})),M=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.allExpandedTypes=e.VISITOR_KEYS=e.NODE_UNION_SHAPES__PRIVATE=e.NODE_PARENT_VALIDATIONS=e.NODE_FIELDS=e.FLIPPED_ALIAS_KEYS=e.DEPRECATED_KEYS=e.BUILDER_KEYS=e.ALIAS_KEYS=void 0,e.arrayOf=g,e.arrayOfType=_,e.assertEach=te,e.assertNodeOrValueType=y,e.assertNodeType=v,e.assertOneOf=ne,e.assertOptionalChainStart=S,e.assertShape=x,e.assertValueType=b,e.chain=C,e.default=oe,e.defineAliasedType=ae,e.validate=f,e.validateArrayOfType=ee,e.validateOptional=m,e.validateOptionalType=h,e.validateType=p;var t=k(),n=_e(),r=e.VISITOR_KEYS={},i=e.ALIAS_KEYS={},a=e.FLIPPED_ALIAS_KEYS={},o=e.NODE_FIELDS={},s=e.BUILDER_KEYS={},c=e.DEPRECATED_KEYS={},l=e.NODE_PARENT_VALIDATIONS={},u=e.NODE_UNION_SHAPES__PRIVATE={};function d(e){return Array.isArray(e)?`array`:e===null?`null`:typeof e}function f(e){return{validate:e}}function p(...e){return f(v(...e))}function m(e){return{validate:e,optional:!0}}function h(...e){return{validate:v(...e),optional:!0}}function g(e){return C(b(`array`),te(e))}function _(...e){return g(v(...e))}function ee(...e){return f(_(...e))}function te(e){let t=process.env.BABEL_TYPES_8_BREAKING?n.validateChild:()=>{};function r(n,r,i){if(!Array.isArray(i))return;let a=0,o={toString(){return`${r}[${a}]`}};for(;a<i.length;a++){let r=i[a];e(n,o,r),t(n,o,r)}}return r.each=e,r}function ne(...e){function t(t,n,r){if(!e.includes(r))throw TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`)}return t.oneOf=e,t}var re=e.allExpandedTypes=[];function v(...e){let r=new Set;re.push({types:e,set:r});function i(i,a,o){let s=o==null?void 0:o.type;if(s!=null){if(r.has(s)){(0,n.validateChild)(i,a,o);return}if(s===`Placeholder`){for(let r of e)if((0,t.default)(r,o)){(0,n.validateChild)(i,a,o);return}}}throw TypeError(`Property ${a} of ${i.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(s)}`)}return i.oneOfNodeTypes=e,i}function y(...e){function r(r,i,a){let o=d(a);for(let s of e)if(o===s||(0,t.default)(s,a)){(0,n.validateChild)(r,i,a);return}throw TypeError(`Property ${i} of ${r.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(a==null?void 0:a.type)}`)}return r.oneOfNodeOrValueTypes=e,r}function b(e){function t(t,n,r){if(d(r)!==e)throw TypeError(`Property ${n} expected type of ${e} but got ${d(r)}`)}return t.type=e,t}function x(e){let t=Object.keys(e);function r(r,i,a){let o=[];for(let i of t)try{(0,n.validateField)(r,i,a[i],e[i])}catch(e){if(e instanceof TypeError){o.push(e.message);continue}throw e}if(o.length)throw TypeError(`Property ${i} of ${r.type} expected to have the following:\n${o.join(`
|
|
145
|
+
`)}`)}return r.shapeOf=e,r}function S(){function e(e){var t;let n=e;for(;e;){let{type:e}=n;if(e===`OptionalCallExpression`){if(n.optional)return;n=n.callee}else if(e===`OptionalMemberExpression`){if(n.optional)return;n=n.object}else break}throw TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${(t=n)==null?void 0:t.type}`)}return e}function C(...e){function t(...t){for(let n of e)n(...t)}if(t.chainOf=e,e.length>=2&&`type`in e[0]&&e[0].type===`array`&&!(`each`in e[1]))throw Error(`An assertValueType("array") validator can only be followed by an assertEach(...) validator.`);return t}var ie=new Set([`aliases`,`builder`,`deprecatedAlias`,`fields`,`inherits`,`visitor`,`validate`,`unionShape`]),w=new Set([`default`,`optional`,`deprecated`,`validate`]),T={};function ae(...e){return(t,n={})=>{let r=n.aliases;if(!r){var i;n.inherits&&(r=(i=T[n.inherits].aliases)==null?void 0:i.slice()),r??(r=[]),n.aliases=r}let a=e.filter(e=>!r.includes(e));r.unshift(...a),oe(t,n)}}function oe(e,t={}){let n=t.inherits&&T[t.inherits]||{},f=t.fields;if(!f&&(f={},n.fields)){let e=Object.getOwnPropertyNames(n.fields);for(let t of e){let e=n.fields[t],r=e.default;if(Array.isArray(r)?r.length>0:r&&typeof r==`object`)throw Error(`field defaults can only be primitives or empty arrays currently`);f[t]={default:Array.isArray(r)?[]:r,optional:e.optional,deprecated:e.deprecated,validate:e.validate}}}let p=t.visitor||n.visitor||[],m=t.aliases||n.aliases||[],h=t.builder||n.builder||t.visitor||[];for(let n of Object.keys(t))if(!ie.has(n))throw Error(`Unknown type option "${n}" on ${e}`);t.deprecatedAlias&&(c[t.deprecatedAlias]=e);for(let e of p.concat(h))f[e]=f[e]||{};for(let t of Object.keys(f)){let n=f[t];n.default!==void 0&&!h.includes(t)&&(n.optional=!0),n.default===void 0?n.default=null:!n.validate&&n.default!=null&&(n.validate=b(d(n.default)));for(let r of Object.keys(n))if(!w.has(r))throw Error(`Unknown field key "${r}" on ${e}.${t}`)}r[e]=t.visitor=p,s[e]=t.builder=h,o[e]=t.fields=f,i[e]=t.aliases=m,m.forEach(t=>{a[t]=a[t]||[],a[t].push(e)}),t.validate&&(l[e]=t.validate),t.unionShape&&(u[e]=t.unionShape),T[e]=t}})),N=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.patternLikeCommon=e.importAttributes=e.functionTypeAnnotationCommon=e.functionDeclarationCommon=e.functionCommon=e.classMethodOrPropertyUnionShapeCommon=e.classMethodOrPropertyCommon=e.classMethodOrDeclareMethodCommon=void 0;var t=k(),n=A(),r=ue(),i=de(),a=j(),o=M(),s=(e=!1)=>({unionShape:{discriminator:`computed`,shapes:[{name:`computed`,value:[!0],properties:{key:{validate:(0,o.assertNodeType)(`Expression`)}}},{name:`nonComputed`,value:[!1],properties:{key:{validate:e?(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`,`PrivateName`):(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`)}}}]}});e.classMethodOrPropertyUnionShapeCommon=s;var c=(0,o.defineAliasedType)(`Standardized`);c(`ArrayExpression`,{fields:{elements:{validate:(0,o.arrayOf)((0,o.assertNodeOrValueType)(`null`,`Expression`,`SpreadElement`)),default:process.env.BABEL_TYPES_8_BREAKING?void 0:[]}},visitor:[`elements`],aliases:[`Expression`]}),c(`AssignmentExpression`,{fields:{operator:{validate:process.env.BABEL_TYPES_8_BREAKING?Object.assign(function(){let e=(0,o.assertOneOf)(...a.ASSIGNMENT_OPERATORS),n=(0,o.assertOneOf)(`=`);return function(r,i,a){((0,t.default)(`Pattern`,r.left)?n:e)(r,i,a)}}(),{oneOf:a.ASSIGNMENT_OPERATORS}):(0,o.assertValueType)(`string`)},left:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)(`Identifier`,`MemberExpression`,`OptionalMemberExpression`,`ArrayPattern`,`ObjectPattern`,`TSAsExpression`,`TSSatisfiesExpression`,`TSTypeAssertion`,`TSNonNullExpression`):(0,o.assertNodeType)(`LVal`,`OptionalMemberExpression`)},right:{validate:(0,o.assertNodeType)(`Expression`)}},builder:[`operator`,`left`,`right`],visitor:[`left`,`right`],aliases:[`Expression`]}),c(`BinaryExpression`,{builder:[`operator`,`left`,`right`],fields:{operator:{validate:(0,o.assertOneOf)(...a.BINARY_OPERATORS)},left:{validate:function(){let e=(0,o.assertNodeType)(`Expression`),t=(0,o.assertNodeType)(`Expression`,`PrivateName`);return Object.assign(function(n,r,i){(n.operator===`in`?t:e)(n,r,i)},{oneOfNodeTypes:[`Expression`,`PrivateName`]})}()},right:{validate:(0,o.assertNodeType)(`Expression`)}},visitor:[`left`,`right`],aliases:[`Binary`,`Expression`]}),c(`InterpreterDirective`,{builder:[`value`],fields:{value:{validate:(0,o.assertValueType)(`string`)}}}),c(`Directive`,{visitor:[`value`],fields:{value:{validate:(0,o.assertNodeType)(`DirectiveLiteral`)}}}),c(`DirectiveLiteral`,{builder:[`value`],fields:{value:{validate:(0,o.assertValueType)(`string`)}}}),c(`BlockStatement`,{builder:[`body`,`directives`],visitor:[`directives`,`body`],fields:{directives:{validate:(0,o.arrayOfType)(`Directive`),default:[]},body:(0,o.validateArrayOfType)(`Statement`)},aliases:[`Scopable`,`BlockParent`,`Block`,`Statement`]}),c(`BreakStatement`,{visitor:[`label`],fields:{label:{validate:(0,o.assertNodeType)(`Identifier`),optional:!0}},aliases:[`Statement`,`Terminatorless`,`CompletionStatement`]}),c(`CallExpression`,{visitor:[`callee`,`typeParameters`,`typeArguments`,`arguments`],builder:[`callee`,`arguments`],aliases:[`Expression`],fields:Object.assign({callee:{validate:(0,o.assertNodeType)(`Expression`,`Super`,`V8IntrinsicIdentifier`)},arguments:(0,o.validateArrayOfType)(`Expression`,`SpreadElement`,`ArgumentPlaceholder`),typeArguments:{validate:(0,o.assertNodeType)(`TypeParameterInstantiation`),optional:!0}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,o.assertValueType)(`boolean`),optional:!0},typeParameters:{validate:(0,o.assertNodeType)(`TSTypeParameterInstantiation`),optional:!0}})}),c(`CatchClause`,{visitor:[`param`,`body`],fields:{param:{validate:(0,o.assertNodeType)(`Identifier`,`ArrayPattern`,`ObjectPattern`),optional:!0},body:{validate:(0,o.assertNodeType)(`BlockStatement`)}},aliases:[`Scopable`,`BlockParent`]}),c(`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`]}),c(`ContinueStatement`,{visitor:[`label`],fields:{label:{validate:(0,o.assertNodeType)(`Identifier`),optional:!0}},aliases:[`Statement`,`Terminatorless`,`CompletionStatement`]}),c(`DebuggerStatement`,{aliases:[`Statement`]}),c(`DoWhileStatement`,{builder:[`test`,`body`],visitor:[`body`,`test`],fields:{test:{validate:(0,o.assertNodeType)(`Expression`)},body:{validate:(0,o.assertNodeType)(`Statement`)}},aliases:[`Statement`,`BlockParent`,`Loop`,`While`,`Scopable`]}),c(`EmptyStatement`,{aliases:[`Statement`]}),c(`ExpressionStatement`,{visitor:[`expression`],fields:{expression:{validate:(0,o.assertNodeType)(`Expression`)}},aliases:[`Statement`,`ExpressionWrapper`]}),c(`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}}}),c(`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`,`TSSatisfiesExpression`,`TSTypeAssertion`,`TSNonNullExpression`):(0,o.assertNodeType)(`VariableDeclaration`,`LVal`)},right:{validate:(0,o.assertNodeType)(`Expression`)},body:{validate:(0,o.assertNodeType)(`Statement`)}}}),c(`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`)}}});var l=()=>({params:(0,o.validateArrayOfType)(`FunctionParameter`),generator:{default:!1},async:{default:!1}});e.functionCommon=l;var u=()=>({returnType:{validate:(0,o.assertNodeType)(`TypeAnnotation`,`TSTypeAnnotation`,`Noop`),optional:!0},typeParameters:{validate:(0,o.assertNodeType)(`TypeParameterDeclaration`,`TSTypeParameterDeclaration`,`Noop`),optional:!0}});e.functionTypeAnnotationCommon=u;var d=()=>Object.assign({},l(),{declare:{validate:(0,o.assertValueType)(`boolean`),optional:!0},id:{validate:(0,o.assertNodeType)(`Identifier`),optional:!0}});e.functionDeclarationCommon=d,c(`FunctionDeclaration`,{builder:[`id`,`params`,`body`,`generator`,`async`],visitor:[`id`,`typeParameters`,`params`,`predicate`,`returnType`,`body`],fields:Object.assign({},d(),u(),{body:{validate:(0,o.assertNodeType)(`BlockStatement`)},predicate:{validate:(0,o.assertNodeType)(`DeclaredPredicate`,`InferredPredicate`),optional:!0}}),aliases:[`Scopable`,`Function`,`BlockParent`,`FunctionParent`,`Statement`,`Pureish`,`Declaration`],validate:process.env.BABEL_TYPES_8_BREAKING?function(){let e=(0,o.assertNodeType)(`Identifier`);return function(n,r,i){(0,t.default)(`ExportDefaultDeclaration`,n)||e(i,`id`,i.id)}}():void 0}),c(`FunctionExpression`,{inherits:`FunctionDeclaration`,aliases:[`Scopable`,`Function`,`BlockParent`,`FunctionParent`,`Expression`,`Pureish`],fields:Object.assign({},l(),u(),{id:{validate:(0,o.assertNodeType)(`Identifier`),optional:!0},body:{validate:(0,o.assertNodeType)(`BlockStatement`)},predicate:{validate:(0,o.assertNodeType)(`DeclaredPredicate`,`InferredPredicate`),optional:!0}})});var f=()=>({typeAnnotation:{validate:(0,o.assertNodeType)(`TypeAnnotation`,`TSTypeAnnotation`,`Noop`),optional:!0},optional:{validate:(0,o.assertValueType)(`boolean`),optional:!0},decorators:{validate:(0,o.arrayOfType)(`Decorator`),optional:!0}});e.patternLikeCommon=f,c(`Identifier`,{builder:[`name`],visitor:[`typeAnnotation`,`decorators`],aliases:[`Expression`,`FunctionParameter`,`PatternLike`,`LVal`,`TSEntityName`],fields:Object.assign({},f(),{name:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertValueType)(`string`),Object.assign(function(e,t,r){if(!(0,n.default)(r,!1))throw TypeError(`"${r}" is not a valid identifier name`)},{type:`string`})):(0,o.assertValueType)(`string`)}}),validate:process.env.BABEL_TYPES_8_BREAKING?function(e,n,i){let a=/\.(\w+)$/.exec(n.toString());if(!a)return;let[,o]=a,s={computed:!1};if(o===`property`){if((0,t.default)(`MemberExpression`,e,s)||(0,t.default)(`OptionalMemberExpression`,e,s))return}else if(o===`key`){if((0,t.default)(`Property`,e,s)||(0,t.default)(`Method`,e,s))return}else if(o===`exported`){if((0,t.default)(`ExportSpecifier`,e))return}else if(o===`imported`){if((0,t.default)(`ImportSpecifier`,e,{imported:i}))return}else if(o===`meta`&&(0,t.default)(`MetaProperty`,e,{meta:i}))return;if(((0,r.isKeyword)(i.name)||(0,r.isReservedWord)(i.name,!1))&&i.name!==`this`)throw TypeError(`"${i.name}" is not a valid identifier`)}:void 0}),c(`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`)}}}),c(`LabeledStatement`,{visitor:[`label`,`body`],aliases:[`Statement`],fields:{label:{validate:(0,o.assertNodeType)(`Identifier`)},body:{validate:(0,o.assertNodeType)(`Statement`)}}}),c(`StringLiteral`,{builder:[`value`],fields:{value:{validate:(0,o.assertValueType)(`string`)}},aliases:[`Expression`,`Pureish`,`Literal`,`Immutable`]}),c(`NumericLiteral`,{builder:[`value`],deprecatedAlias:`NumberLiteral`,fields:{value:{validate:(0,o.chain)((0,o.assertValueType)(`number`),Object.assign(function(e,t,n){(1/n<0||!Number.isFinite(n))&&`${n}`},{type:`number`}))}},aliases:[`Expression`,`Pureish`,`Literal`,`Immutable`]}),c(`NullLiteral`,{aliases:[`Expression`,`Pureish`,`Literal`,`Immutable`]}),c(`BooleanLiteral`,{builder:[`value`],fields:{value:{validate:(0,o.assertValueType)(`boolean`)}},aliases:[`Expression`,`Pureish`,`Literal`,`Immutable`]}),c(`RegExpLiteral`,{builder:[`pattern`,`flags`],deprecatedAlias:`RegexLiteral`,aliases:[`Expression`,`Pureish`,`Literal`],fields:{pattern:{validate:(0,o.assertValueType)(`string`)},flags:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertValueType)(`string`),Object.assign(function(e,t,n){let r=/[^dgimsuvy]/.exec(n);if(r)throw TypeError(`"${r[0]}" is not a valid RegExp flag`)},{type:`string`})):(0,o.assertValueType)(`string`),default:``}}}),c(`LogicalExpression`,{builder:[`operator`,`left`,`right`],visitor:[`left`,`right`],aliases:[`Binary`,`Expression`],fields:{operator:{validate:(0,o.assertOneOf)(...a.LOGICAL_OPERATORS)},left:{validate:(0,o.assertNodeType)(`Expression`)},right:{validate:(0,o.assertNodeType)(`Expression`)}}}),c(`MemberExpression`,{builder:[`object`,`property`,`computed`,...process.env.BABEL_TYPES_8_BREAKING?[]:[`optional`]],visitor:[`object`,`property`],aliases:[`Expression`,`LVal`,`PatternLike`],unionShape:{discriminator:`computed`,shapes:[{name:`computed`,value:[!0],properties:{property:{validate:(0,o.assertNodeType)(`Expression`)}}},{name:`nonComputed`,value:[!1],properties:{property:{validate:(0,o.assertNodeType)(`Identifier`,`PrivateName`)}}}]},fields:Object.assign({object:{validate:(0,o.assertNodeType)(`Expression`,`Super`)},property:{validate:function(){let e=(0,o.assertNodeType)(`Identifier`,`PrivateName`),t=(0,o.assertNodeType)(`Expression`),n=function(n,r,i){(n.computed?t:e)(n,r,i)};return n.oneOfNodeTypes=[`Expression`,`Identifier`,`PrivateName`],n}()},computed:{default:!1}},process.env.BABEL_TYPES_8_BREAKING?{}:{optional:{validate:(0,o.assertValueType)(`boolean`),optional:!0}})}),c(`NewExpression`,{inherits:`CallExpression`}),c(`Program`,{visitor:[`directives`,`body`],builder:[`body`,`directives`,`sourceType`,`interpreter`],fields:{sourceType:{validate:(0,o.assertOneOf)(`script`,`module`),default:`script`},interpreter:{validate:(0,o.assertNodeType)(`InterpreterDirective`),default:null,optional:!0},directives:{validate:(0,o.arrayOfType)(`Directive`),default:[]},body:(0,o.validateArrayOfType)(`Statement`)},aliases:[`Scopable`,`BlockParent`,`Block`]}),c(`ObjectExpression`,{visitor:[`properties`],aliases:[`Expression`],fields:{properties:(0,o.validateArrayOfType)(`ObjectMethod`,`ObjectProperty`,`SpreadElement`)}}),c(`ObjectMethod`,Object.assign({builder:[`kind`,`key`,`params`,`body`,`computed`,`generator`,`async`],visitor:[`decorators`,`key`,`typeParameters`,`params`,`returnType`,`body`]},s(),{fields:Object.assign({},l(),u(),{kind:Object.assign({validate:(0,o.assertOneOf)(`method`,`get`,`set`)},process.env.BABEL_TYPES_8_BREAKING?{}:{default:`method`}),computed:{default:!1},key:{validate:function(){let e=(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`),t=(0,o.assertNodeType)(`Expression`),n=function(n,r,i){(n.computed?t:e)(n,r,i)};return n.oneOfNodeTypes=[`Expression`,`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`],n}()},decorators:{validate:(0,o.arrayOfType)(`Decorator`),optional:!0},body:{validate:(0,o.assertNodeType)(`BlockStatement`)}}),aliases:[`UserWhitespacable`,`Function`,`Scopable`,`BlockParent`,`FunctionParent`,`Method`,`ObjectMember`]})),c(`ObjectProperty`,{builder:[`key`,`value`,`computed`,`shorthand`,...process.env.BABEL_TYPES_8_BREAKING?[]:[`decorators`]],unionShape:{discriminator:`computed`,shapes:[{name:`computed`,value:[!0],properties:{key:{validate:(0,o.assertNodeType)(`Expression`)}}},{name:`nonComputed`,value:[!1],properties:{key:{validate:(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`,`DecimalLiteral`,`PrivateName`)}}}]},fields:{computed:{default:!1},key:{validate:function(){let e=(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`,`DecimalLiteral`,`PrivateName`),t=(0,o.assertNodeType)(`Expression`);return Object.assign(function(n,r,i){(n.computed?t:e)(n,r,i)},{oneOfNodeTypes:[`Expression`,`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`,`DecimalLiteral`,`PrivateName`]})}()},value:{validate:(0,o.assertNodeType)(`Expression`,`PatternLike`)},shorthand:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertValueType)(`boolean`),Object.assign(function(e,n,r){if(r){if(e.computed)throw TypeError(`Property shorthand of ObjectProperty cannot be true if computed is true`);if(!(0,t.default)(`Identifier`,e.key))throw TypeError(`Property shorthand of ObjectProperty cannot be true if key is not an Identifier`)}},{type:`boolean`})):(0,o.assertValueType)(`boolean`),default:!1},decorators:{validate:(0,o.arrayOfType)(`Decorator`),optional:!0}},visitor:[`decorators`,`key`,`value`],aliases:[`UserWhitespacable`,`Property`,`ObjectMember`],validate:process.env.BABEL_TYPES_8_BREAKING?function(){let e=(0,o.assertNodeType)(`Identifier`,`Pattern`,`TSAsExpression`,`TSSatisfiesExpression`,`TSNonNullExpression`,`TSTypeAssertion`),n=(0,o.assertNodeType)(`Expression`);return function(r,i,a){((0,t.default)(`ObjectPattern`,r)?e:n)(a,`value`,a.value)}}():void 0}),c(`RestElement`,{visitor:[`argument`,`typeAnnotation`],builder:[`argument`],aliases:[`FunctionParameter`,`PatternLike`,`LVal`],deprecatedAlias:`RestProperty`,fields:Object.assign({},f(),{argument:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)(`Identifier`,`ArrayPattern`,`ObjectPattern`,`MemberExpression`,`TSAsExpression`,`TSSatisfiesExpression`,`TSTypeAssertion`,`TSNonNullExpression`):(0,o.assertNodeType)(`Identifier`,`ArrayPattern`,`ObjectPattern`,`MemberExpression`,`TSAsExpression`,`TSSatisfiesExpression`,`TSTypeAssertion`,`TSNonNullExpression`,`RestElement`,`AssignmentPattern`)}}),validate:process.env.BABEL_TYPES_8_BREAKING?function(e,t){let n=/(\w+)\[(\d+)\]/.exec(t.toString());if(!n)throw Error(`Internal Babel error: malformed key.`);let[,r,i]=n;if(e[r].length>+i+1)throw TypeError(`RestElement must be last element of ${r}`)}:void 0}),c(`ReturnStatement`,{visitor:[`argument`],aliases:[`Statement`,`Terminatorless`,`CompletionStatement`],fields:{argument:{validate:(0,o.assertNodeType)(`Expression`),optional:!0}}}),c(`SequenceExpression`,{visitor:[`expressions`],fields:{expressions:(0,o.validateArrayOfType)(`Expression`)},aliases:[`Expression`]}),c(`ParenthesizedExpression`,{visitor:[`expression`],aliases:[`Expression`,`ExpressionWrapper`],fields:{expression:{validate:(0,o.assertNodeType)(`Expression`)}}}),c(`SwitchCase`,{visitor:[`test`,`consequent`],fields:{test:{validate:(0,o.assertNodeType)(`Expression`),optional:!0},consequent:(0,o.validateArrayOfType)(`Statement`)}}),c(`SwitchStatement`,{visitor:[`discriminant`,`cases`],aliases:[`Statement`,`BlockParent`,`Scopable`],fields:{discriminant:{validate:(0,o.assertNodeType)(`Expression`)},cases:(0,o.validateArrayOfType)(`SwitchCase`)}}),c(`ThisExpression`,{aliases:[`Expression`]}),c(`ThrowStatement`,{visitor:[`argument`],aliases:[`Statement`,`Terminatorless`,`CompletionStatement`],fields:{argument:{validate:(0,o.assertNodeType)(`Expression`)}}}),c(`TryStatement`,{visitor:[`block`,`handler`,`finalizer`],aliases:[`Statement`],fields:{block:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertNodeType)(`BlockStatement`),Object.assign(function(e){if(!e.handler&&!e.finalizer)throw TypeError(`TryStatement expects either a handler or finalizer, or both`)},{oneOfNodeTypes:[`BlockStatement`]})):(0,o.assertNodeType)(`BlockStatement`)},handler:{optional:!0,validate:(0,o.assertNodeType)(`CatchClause`)},finalizer:{optional:!0,validate:(0,o.assertNodeType)(`BlockStatement`)}}}),c(`UnaryExpression`,{builder:[`operator`,`argument`,`prefix`],fields:{prefix:{default:!0},argument:{validate:(0,o.assertNodeType)(`Expression`)},operator:{validate:(0,o.assertOneOf)(...a.UNARY_OPERATORS)}},visitor:[`argument`],aliases:[`UnaryLike`,`Expression`]}),c(`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)(...a.UPDATE_OPERATORS)}},visitor:[`argument`],aliases:[`Expression`]}),c(`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`,`using`,`await using`)},declarations:(0,o.validateArrayOfType)(`VariableDeclarator`)},validate:process.env.BABEL_TYPES_8_BREAKING?(()=>{let e=(0,o.assertNodeType)(`Identifier`,`Placeholder`),n=(0,o.assertNodeType)(`Identifier`,`ArrayPattern`,`ObjectPattern`,`Placeholder`),r=(0,o.assertNodeType)(`Identifier`,`VoidPattern`,`Placeholder`);return function(i,a,o){let{kind:s,declarations:c}=o,l=(0,t.default)(`ForXStatement`,i,{left:o});if(l&&c.length!==1)throw TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${i.type}`);for(let t of c)s===`const`||s===`let`||s===`var`?!l&&!t.init?e(t,`id`,t.id):n(t,`id`,t.id):r(t,`id`,t.id)}})():void 0}),c(`VariableDeclarator`,{visitor:[`id`,`init`],fields:{id:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.assertNodeType)(`Identifier`,`ArrayPattern`,`ObjectPattern`,`VoidPattern`):(0,o.assertNodeType)(`LVal`,`VoidPattern`)},definite:{optional:!0,validate:(0,o.assertValueType)(`boolean`)},init:{optional:!0,validate:(0,o.assertNodeType)(`Expression`)}}}),c(`WhileStatement`,{visitor:[`test`,`body`],aliases:[`Statement`,`BlockParent`,`Loop`,`While`,`Scopable`],fields:{test:{validate:(0,o.assertNodeType)(`Expression`)},body:{validate:(0,o.assertNodeType)(`Statement`)}}}),c(`WithStatement`,{visitor:[`object`,`body`],aliases:[`Statement`],fields:{object:{validate:(0,o.assertNodeType)(`Expression`)},body:{validate:(0,o.assertNodeType)(`Statement`)}}}),c(`AssignmentPattern`,{visitor:[`left`,`right`,`decorators`],builder:[`left`,`right`],aliases:[`FunctionParameter`,`Pattern`,`PatternLike`,`LVal`],fields:Object.assign({},f(),{left:{validate:(0,o.assertNodeType)(`Identifier`,`ObjectPattern`,`ArrayPattern`,`MemberExpression`,`TSAsExpression`,`TSSatisfiesExpression`,`TSTypeAssertion`,`TSNonNullExpression`)},right:{validate:(0,o.assertNodeType)(`Expression`)},decorators:{validate:(0,o.arrayOfType)(`Decorator`),optional:!0}})}),c(`ArrayPattern`,{visitor:[`elements`,`typeAnnotation`],builder:[`elements`],aliases:[`FunctionParameter`,`Pattern`,`PatternLike`,`LVal`],fields:Object.assign({},f(),{elements:{validate:(0,o.chain)((0,o.assertValueType)(`array`),(0,o.assertEach)((0,o.assertNodeOrValueType)(`null`,`PatternLike`)))}})}),c(`ArrowFunctionExpression`,{builder:[`params`,`body`,`async`],visitor:[`typeParameters`,`params`,`predicate`,`returnType`,`body`],aliases:[`Scopable`,`Function`,`BlockParent`,`FunctionParent`,`Expression`,`Pureish`],fields:Object.assign({},l(),u(),{expression:{validate:(0,o.assertValueType)(`boolean`)},body:{validate:(0,o.assertNodeType)(`BlockStatement`,`Expression`)},predicate:{validate:(0,o.assertNodeType)(`DeclaredPredicate`,`InferredPredicate`),optional:!0}})}),c(`ClassBody`,{visitor:[`body`],fields:{body:(0,o.validateArrayOfType)(`ClassMethod`,`ClassPrivateMethod`,`ClassProperty`,`ClassPrivateProperty`,`ClassAccessorProperty`,`TSDeclareMethod`,`TSIndexSignature`,`StaticBlock`)}}),c(`ClassExpression`,{builder:[`id`,`superClass`,`body`,`decorators`],visitor:[`decorators`,`id`,`typeParameters`,`superClass`,`superTypeParameters`,`mixins`,`implements`,`body`],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.arrayOfType)(`TSExpressionWithTypeArguments`,`ClassImplements`),optional:!0},decorators:{validate:(0,o.arrayOfType)(`Decorator`),optional:!0},mixins:{validate:(0,o.assertNodeType)(`InterfaceExtends`),optional:!0}}}),c(`ClassDeclaration`,{inherits:`ClassExpression`,aliases:[`Scopable`,`Class`,`Statement`,`Declaration`],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.arrayOfType)(`TSExpressionWithTypeArguments`,`ClassImplements`),optional:!0},decorators:{validate:(0,o.arrayOfType)(`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:process.env.BABEL_TYPES_8_BREAKING?function(){let e=(0,o.assertNodeType)(`Identifier`);return function(n,r,i){(0,t.default)(`ExportDefaultDeclaration`,n)||e(i,`id`,i.id)}}():void 0});var p=e.importAttributes={attributes:{optional:!0,validate:(0,o.arrayOfType)(`ImportAttribute`)},assertions:{deprecated:!0,optional:!0,validate:(0,o.arrayOfType)(`ImportAttribute`)}};c(`ExportAllDeclaration`,{builder:[`source`],visitor:[`source`,`attributes`,`assertions`],aliases:[`Statement`,`Declaration`,`ImportOrExportDeclaration`,`ExportDeclaration`],fields:Object.assign({source:{validate:(0,o.assertNodeType)(`StringLiteral`)},exportKind:(0,o.validateOptional)((0,o.assertOneOf)(`type`,`value`))},p)}),c(`ExportDefaultDeclaration`,{visitor:[`declaration`],aliases:[`Statement`,`Declaration`,`ImportOrExportDeclaration`,`ExportDeclaration`],fields:{declaration:(0,o.validateType)(`TSDeclareFunction`,`FunctionDeclaration`,`ClassDeclaration`,`Expression`),exportKind:(0,o.validateOptional)((0,o.assertOneOf)(`value`))}}),c(`ExportNamedDeclaration`,{builder:[`declaration`,`specifiers`,`source`],visitor:[`declaration`,`specifiers`,`source`,`attributes`,`assertions`],aliases:[`Statement`,`Declaration`,`ImportOrExportDeclaration`,`ExportDeclaration`],fields:Object.assign({declaration:{optional:!0,validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertNodeType)(`Declaration`),Object.assign(function(e,t,n){if(n&&e.specifiers.length)throw TypeError(`Only declaration or specifiers is allowed on ExportNamedDeclaration`);if(n&&e.source)throw TypeError(`Cannot export a declaration from a source`)},{oneOfNodeTypes:[`Declaration`]})):(0,o.assertNodeType)(`Declaration`)}},p,{specifiers:{default:[],validate:(0,o.arrayOf)(function(){let e=(0,o.assertNodeType)(`ExportSpecifier`,`ExportDefaultSpecifier`,`ExportNamespaceSpecifier`),t=(0,o.assertNodeType)(`ExportSpecifier`);return process.env.BABEL_TYPES_8_BREAKING?Object.assign(function(n,r,i){(n.source?e:t)(n,r,i)},{oneOfNodeTypes:[`ExportSpecifier`,`ExportDefaultSpecifier`,`ExportNamespaceSpecifier`]}):e}())},source:{validate:(0,o.assertNodeType)(`StringLiteral`),optional:!0},exportKind:(0,o.validateOptional)((0,o.assertOneOf)(`type`,`value`))})}),c(`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}}}),c(`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`);let e=(0,o.assertNodeType)(`VariableDeclaration`),n=(0,o.assertNodeType)(`Identifier`,`MemberExpression`,`ArrayPattern`,`ObjectPattern`,`TSAsExpression`,`TSSatisfiesExpression`,`TSTypeAssertion`,`TSNonNullExpression`);return Object.assign(function(r,i,a){(0,t.default)(`VariableDeclaration`,a)?e(r,i,a):n(r,i,a)},{oneOfNodeTypes:[`VariableDeclaration`,`Identifier`,`MemberExpression`,`ArrayPattern`,`ObjectPattern`,`TSAsExpression`,`TSSatisfiesExpression`,`TSTypeAssertion`,`TSNonNullExpression`]})}()},right:{validate:(0,o.assertNodeType)(`Expression`)},body:{validate:(0,o.assertNodeType)(`Statement`)},await:{default:!1}}}),c(`ImportDeclaration`,{builder:[`specifiers`,`source`],visitor:[`specifiers`,`source`,`attributes`,`assertions`],aliases:[`Statement`,`Declaration`,`ImportOrExportDeclaration`],fields:Object.assign({},p,{module:{optional:!0,validate:(0,o.assertValueType)(`boolean`)},phase:{default:null,validate:(0,o.assertOneOf)(`source`,`defer`)},specifiers:(0,o.validateArrayOfType)(`ImportSpecifier`,`ImportDefaultSpecifier`,`ImportNamespaceSpecifier`),source:{validate:(0,o.assertNodeType)(`StringLiteral`)},importKind:{validate:(0,o.assertOneOf)(`type`,`typeof`,`value`),optional:!0}})}),c(`ImportDefaultSpecifier`,{visitor:[`local`],aliases:[`ModuleSpecifier`],fields:{local:{validate:(0,o.assertNodeType)(`Identifier`)}}}),c(`ImportNamespaceSpecifier`,{visitor:[`local`],aliases:[`ModuleSpecifier`],fields:{local:{validate:(0,o.assertNodeType)(`Identifier`)}}}),c(`ImportSpecifier`,{visitor:[`imported`,`local`],builder:[`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}}}),c(`ImportExpression`,{visitor:[`source`,`options`],aliases:[`Expression`],fields:{phase:{default:null,validate:(0,o.assertOneOf)(`source`,`defer`)},source:{validate:(0,o.assertNodeType)(`Expression`)},options:{validate:(0,o.assertNodeType)(`Expression`),optional:!0}}}),c(`MetaProperty`,{visitor:[`meta`,`property`],aliases:[`Expression`],fields:{meta:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertNodeType)(`Identifier`),Object.assign(function(e,n,r){let i;switch(r.name){case`function`:i=`sent`;break;case`new`:i=`target`;break;case`import`:i=`meta`}if(!(0,t.default)(`Identifier`,e.property,{name:i}))throw TypeError(`Unrecognised MetaProperty`)},{oneOfNodeTypes:[`Identifier`]})):(0,o.assertNodeType)(`Identifier`)},property:{validate:(0,o.assertNodeType)(`Identifier`)}}});var m=()=>({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(){let e=(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`),t=(0,o.assertNodeType)(`Expression`);return function(n,r,i){(n.computed?t:e)(n,r,i)}}(),(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`,`Expression`))}});e.classMethodOrPropertyCommon=m;var h=()=>Object.assign({},l(),m(),{params:(0,o.validateArrayOfType)(`FunctionParameter`,`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.arrayOfType)(`Decorator`),optional:!0}});e.classMethodOrDeclareMethodCommon=h,c(`ClassMethod`,Object.assign({aliases:[`Function`,`Scopable`,`BlockParent`,`FunctionParent`,`Method`],builder:[`kind`,`key`,`params`,`body`,`computed`,`static`,`generator`,`async`],visitor:[`decorators`,`key`,`typeParameters`,`params`,`returnType`,`body`]},s(),{fields:Object.assign({},h(),u(),{body:{validate:(0,o.assertNodeType)(`BlockStatement`)}})})),c(`ObjectPattern`,{visitor:[`decorators`,`properties`,`typeAnnotation`],builder:[`properties`],aliases:[`FunctionParameter`,`Pattern`,`PatternLike`,`LVal`],fields:Object.assign({},f(),{properties:(0,o.validateArrayOfType)(`RestElement`,`ObjectProperty`)})}),c(`SpreadElement`,{visitor:[`argument`],aliases:[`UnaryLike`],deprecatedAlias:`SpreadProperty`,fields:{argument:{validate:(0,o.assertNodeType)(`Expression`)}}}),c(`Super`,{aliases:[`Expression`]}),c(`TaggedTemplateExpression`,{visitor:[`tag`,`typeParameters`,`quasi`],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}}}),c(`TemplateElement`,{builder:[`value`,`tail`],fields:{value:{validate:(0,o.chain)((0,o.assertShape)({raw:{validate:(0,o.assertValueType)(`string`)},cooked:{validate:(0,o.assertValueType)(`string`),optional:!0}}),function(e){let t=e.value.raw,n=!1,r=()=>{throw Error(`Internal @babel/types error.`)},{str:a,firstInvalidLoc:o}=(0,i.readStringContents)(`template`,t,0,0,0,{unterminated(){n=!0},strictNumericEscape:r,invalidEscapeSequence:r,numericSeparatorInEscapeSequence:r,unexpectedNumericSeparator:r,invalidDigit:r,invalidCodePoint:r});if(!n)throw Error(`Invalid raw`);e.value.cooked=o?null:a})},tail:{default:!1}}}),c(`TemplateLiteral`,{visitor:[`quasis`,`expressions`],aliases:[`Expression`,`Literal`],fields:{quasis:(0,o.validateArrayOfType)(`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 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}`)})}}}),c(`YieldExpression`,{builder:[`argument`,`delegate`],visitor:[`argument`],aliases:[`Expression`,`Terminatorless`],fields:{delegate:{validate:process.env.BABEL_TYPES_8_BREAKING?(0,o.chain)((0,o.assertValueType)(`boolean`),Object.assign(function(e,t,n){if(n&&!e.argument)throw TypeError(`Property delegate of YieldExpression cannot be true if there is no argument`)},{type:`boolean`})):(0,o.assertValueType)(`boolean`),default:!1},argument:{optional:!0,validate:(0,o.assertNodeType)(`Expression`)}}}),c(`AwaitExpression`,{builder:[`argument`],visitor:[`argument`],aliases:[`Expression`,`Terminatorless`],fields:{argument:{validate:(0,o.assertNodeType)(`Expression`)}}}),c(`Import`,{aliases:[`Expression`]}),c(`BigIntLiteral`,{builder:[`value`],fields:{value:{validate:(0,o.assertValueType)(`string`)}},aliases:[`Expression`,`Pureish`,`Literal`,`Immutable`]}),c(`ExportNamespaceSpecifier`,{visitor:[`exported`],aliases:[`ModuleSpecifier`],fields:{exported:{validate:(0,o.assertNodeType)(`Identifier`)}}}),c(`OptionalMemberExpression`,{builder:[`object`,`property`,`computed`,`optional`],visitor:[`object`,`property`],aliases:[`Expression`],fields:{object:{validate:(0,o.assertNodeType)(`Expression`)},property:{validate:function(){let e=(0,o.assertNodeType)(`Identifier`),t=(0,o.assertNodeType)(`Expression`);return Object.assign(function(n,r,i){(n.computed?t:e)(n,r,i)},{oneOfNodeTypes:[`Expression`,`Identifier`]})}()},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`)}}}),c(`OptionalCallExpression`,{visitor:[`callee`,`typeParameters`,`typeArguments`,`arguments`],builder:[`callee`,`arguments`,`optional`],aliases:[`Expression`],fields:Object.assign({callee:{validate:(0,o.assertNodeType)(`Expression`)},arguments:(0,o.validateArrayOfType)(`Expression`,`SpreadElement`,`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}})}),c(`ClassProperty`,Object.assign({visitor:[`decorators`,`variance`,`key`,`typeAnnotation`,`value`],builder:[`key`,`value`,`typeAnnotation`,`decorators`,`computed`,`static`],aliases:[`Property`]},s(),{fields:Object.assign({},m(),{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.arrayOfType)(`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}})})),c(`ClassAccessorProperty`,Object.assign({visitor:[`decorators`,`key`,`typeAnnotation`,`value`],builder:[`key`,`value`,`typeAnnotation`,`decorators`,`computed`,`static`],aliases:[`Property`,`Accessor`]},s(!0),{fields:Object.assign({},m(),{key:{validate:(0,o.chain)(function(){let e=(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`,`PrivateName`),t=(0,o.assertNodeType)(`Expression`);return function(n,r,i){(n.computed?t:e)(n,r,i)}}(),(0,o.assertNodeType)(`Identifier`,`StringLiteral`,`NumericLiteral`,`BigIntLiteral`,`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.arrayOfType)(`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}})})),c(`ClassPrivateProperty`,{visitor:[`decorators`,`variance`,`key`,`typeAnnotation`,`value`],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.arrayOfType)(`Decorator`),optional:!0},static:{validate:(0,o.assertValueType)(`boolean`),default:!1},readonly:{validate:(0,o.assertValueType)(`boolean`),optional:!0},optional:{validate:(0,o.assertValueType)(`boolean`),optional:!0},definite:{validate:(0,o.assertValueType)(`boolean`),optional:!0},variance:{validate:(0,o.assertNodeType)(`Variance`),optional:!0}}}),c(`ClassPrivateMethod`,{builder:[`kind`,`key`,`params`,`body`,`static`],visitor:[`decorators`,`key`,`typeParameters`,`params`,`returnType`,`body`],aliases:[`Function`,`Scopable`,`BlockParent`,`FunctionParent`,`Method`,`Private`],fields:Object.assign({},h(),u(),{kind:{validate:(0,o.assertOneOf)(`get`,`set`,`method`),default:`method`},key:{validate:(0,o.assertNodeType)(`PrivateName`)},body:{validate:(0,o.assertNodeType)(`BlockStatement`)}})}),c(`PrivateName`,{visitor:[`id`],aliases:[`Private`],fields:{id:{validate:(0,o.assertNodeType)(`Identifier`)}}}),c(`StaticBlock`,{visitor:[`body`],fields:{body:(0,o.validateArrayOfType)(`Statement`)},aliases:[`Scopable`,`BlockParent`,`FunctionParent`]}),c(`ImportAttribute`,{visitor:[`key`,`value`],fields:{key:{validate:(0,o.assertNodeType)(`Identifier`,`StringLiteral`)},value:{validate:(0,o.assertNodeType)(`StringLiteral`)}}})})),P=e((()=>{var e=N(),t=M(),n=(0,t.defineAliasedType)(`Flow`),r=e=>{let r=e===`DeclareClass`;n(e,{builder:[`id`,`typeParameters`,`extends`,`body`],visitor:[`id`,`typeParameters`,`extends`,...r?[`mixins`,`implements`]:[],`body`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:Object.assign({id:(0,t.validateType)(`Identifier`),typeParameters:(0,t.validateOptionalType)(`TypeParameterDeclaration`),extends:(0,t.validateOptional)((0,t.arrayOfType)(`InterfaceExtends`))},r?{mixins:(0,t.validateOptional)((0,t.arrayOfType)(`InterfaceExtends`)),implements:(0,t.validateOptional)((0,t.arrayOfType)(`ClassImplements`))}:{},{body:(0,t.validateType)(`ObjectTypeAnnotation`)})})};n(`AnyTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`ArrayTypeAnnotation`,{visitor:[`elementType`],aliases:[`FlowType`],fields:{elementType:(0,t.validateType)(`FlowType`)}}),n(`BooleanTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`BooleanLiteralTypeAnnotation`,{builder:[`value`],aliases:[`FlowType`],fields:{value:(0,t.validate)((0,t.assertValueType)(`boolean`))}}),n(`NullLiteralTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`ClassImplements`,{visitor:[`id`,`typeParameters`],fields:{id:(0,t.validateType)(`Identifier`),typeParameters:(0,t.validateOptionalType)(`TypeParameterInstantiation`)}}),r(`DeclareClass`),n(`DeclareFunction`,{builder:[`id`],visitor:[`id`,`predicate`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:{id:(0,t.validateType)(`Identifier`),predicate:(0,t.validateOptionalType)(`DeclaredPredicate`)}}),r(`DeclareInterface`),n(`DeclareModule`,{builder:[`id`,`body`,`kind`],visitor:[`id`,`body`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:{id:(0,t.validateType)(`Identifier`,`StringLiteral`),body:(0,t.validateType)(`BlockStatement`),kind:(0,t.validateOptional)((0,t.assertOneOf)(`CommonJS`,`ES`))}}),n(`DeclareModuleExports`,{visitor:[`typeAnnotation`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:{typeAnnotation:(0,t.validateType)(`TypeAnnotation`)}}),n(`DeclareTypeAlias`,{visitor:[`id`,`typeParameters`,`right`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:{id:(0,t.validateType)(`Identifier`),typeParameters:(0,t.validateOptionalType)(`TypeParameterDeclaration`),right:(0,t.validateType)(`FlowType`)}}),n(`DeclareOpaqueType`,{visitor:[`id`,`typeParameters`,`supertype`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:{id:(0,t.validateType)(`Identifier`),typeParameters:(0,t.validateOptionalType)(`TypeParameterDeclaration`),supertype:(0,t.validateOptionalType)(`FlowType`),impltype:(0,t.validateOptionalType)(`FlowType`)}}),n(`DeclareVariable`,{visitor:[`id`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:{id:(0,t.validateType)(`Identifier`)}}),n(`DeclareExportDeclaration`,{visitor:[`declaration`,`specifiers`,`source`,`attributes`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:Object.assign({declaration:(0,t.validateOptionalType)(`Flow`),specifiers:(0,t.validateOptional)((0,t.arrayOfType)(`ExportSpecifier`,`ExportNamespaceSpecifier`)),source:(0,t.validateOptionalType)(`StringLiteral`),default:(0,t.validateOptional)((0,t.assertValueType)(`boolean`))},e.importAttributes)}),n(`DeclareExportAllDeclaration`,{visitor:[`source`,`attributes`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:Object.assign({source:(0,t.validateType)(`StringLiteral`),exportKind:(0,t.validateOptional)((0,t.assertOneOf)(`type`,`value`))},e.importAttributes)}),n(`DeclaredPredicate`,{visitor:[`value`],aliases:[`FlowPredicate`],fields:{value:(0,t.validateType)(`Flow`)}}),n(`ExistsTypeAnnotation`,{aliases:[`FlowType`]}),n(`FunctionTypeAnnotation`,{builder:[`typeParameters`,`params`,`rest`,`returnType`],visitor:[`typeParameters`,`this`,`params`,`rest`,`returnType`],aliases:[`FlowType`],fields:{typeParameters:(0,t.validateOptionalType)(`TypeParameterDeclaration`),params:(0,t.validateArrayOfType)(`FunctionTypeParam`),rest:(0,t.validateOptionalType)(`FunctionTypeParam`),this:(0,t.validateOptionalType)(`FunctionTypeParam`),returnType:(0,t.validateType)(`FlowType`)}}),n(`FunctionTypeParam`,{visitor:[`name`,`typeAnnotation`],fields:{name:(0,t.validateOptionalType)(`Identifier`),typeAnnotation:(0,t.validateType)(`FlowType`),optional:(0,t.validateOptional)((0,t.assertValueType)(`boolean`))}}),n(`GenericTypeAnnotation`,{visitor:[`id`,`typeParameters`],aliases:[`FlowType`],fields:{id:(0,t.validateType)(`Identifier`,`QualifiedTypeIdentifier`),typeParameters:(0,t.validateOptionalType)(`TypeParameterInstantiation`)}}),n(`InferredPredicate`,{aliases:[`FlowPredicate`]}),n(`InterfaceExtends`,{visitor:[`id`,`typeParameters`],fields:{id:(0,t.validateType)(`Identifier`,`QualifiedTypeIdentifier`),typeParameters:(0,t.validateOptionalType)(`TypeParameterInstantiation`)}}),r(`InterfaceDeclaration`),n(`InterfaceTypeAnnotation`,{visitor:[`extends`,`body`],aliases:[`FlowType`],fields:{extends:(0,t.validateOptional)((0,t.arrayOfType)(`InterfaceExtends`)),body:(0,t.validateType)(`ObjectTypeAnnotation`)}}),n(`IntersectionTypeAnnotation`,{visitor:[`types`],aliases:[`FlowType`],fields:{types:(0,t.validate)((0,t.arrayOfType)(`FlowType`))}}),n(`MixedTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`EmptyTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`NullableTypeAnnotation`,{visitor:[`typeAnnotation`],aliases:[`FlowType`],fields:{typeAnnotation:(0,t.validateType)(`FlowType`)}}),n(`NumberLiteralTypeAnnotation`,{builder:[`value`],aliases:[`FlowType`],fields:{value:(0,t.validate)((0,t.assertValueType)(`number`))}}),n(`NumberTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`ObjectTypeAnnotation`,{visitor:[`properties`,`indexers`,`callProperties`,`internalSlots`],aliases:[`FlowType`],builder:[`properties`,`indexers`,`callProperties`,`internalSlots`,`exact`],fields:{properties:(0,t.validate)((0,t.arrayOfType)(`ObjectTypeProperty`,`ObjectTypeSpreadProperty`)),indexers:{validate:(0,t.arrayOfType)(`ObjectTypeIndexer`),optional:!0,default:[]},callProperties:{validate:(0,t.arrayOfType)(`ObjectTypeCallProperty`),optional:!0,default:[]},internalSlots:{validate:(0,t.arrayOfType)(`ObjectTypeInternalSlot`),optional:!0,default:[]},exact:{validate:(0,t.assertValueType)(`boolean`),default:!1},inexact:(0,t.validateOptional)((0,t.assertValueType)(`boolean`))}}),n(`ObjectTypeInternalSlot`,{visitor:[`id`,`value`],builder:[`id`,`value`,`optional`,`static`,`method`],aliases:[`UserWhitespacable`],fields:{id:(0,t.validateType)(`Identifier`),value:(0,t.validateType)(`FlowType`),optional:(0,t.validate)((0,t.assertValueType)(`boolean`)),static:(0,t.validate)((0,t.assertValueType)(`boolean`)),method:(0,t.validate)((0,t.assertValueType)(`boolean`))}}),n(`ObjectTypeCallProperty`,{visitor:[`value`],aliases:[`UserWhitespacable`],fields:{value:(0,t.validateType)(`FlowType`),static:(0,t.validate)((0,t.assertValueType)(`boolean`))}}),n(`ObjectTypeIndexer`,{visitor:[`variance`,`id`,`key`,`value`],builder:[`id`,`key`,`value`,`variance`],aliases:[`UserWhitespacable`],fields:{id:(0,t.validateOptionalType)(`Identifier`),key:(0,t.validateType)(`FlowType`),value:(0,t.validateType)(`FlowType`),static:(0,t.validate)((0,t.assertValueType)(`boolean`)),variance:(0,t.validateOptionalType)(`Variance`)}}),n(`ObjectTypeProperty`,{visitor:[`key`,`value`,`variance`],aliases:[`UserWhitespacable`],fields:{key:(0,t.validateType)(`Identifier`,`StringLiteral`),value:(0,t.validateType)(`FlowType`),kind:(0,t.validate)((0,t.assertOneOf)(`init`,`get`,`set`)),static:(0,t.validate)((0,t.assertValueType)(`boolean`)),proto:(0,t.validate)((0,t.assertValueType)(`boolean`)),optional:(0,t.validate)((0,t.assertValueType)(`boolean`)),variance:(0,t.validateOptionalType)(`Variance`),method:(0,t.validate)((0,t.assertValueType)(`boolean`))}}),n(`ObjectTypeSpreadProperty`,{visitor:[`argument`],aliases:[`UserWhitespacable`],fields:{argument:(0,t.validateType)(`FlowType`)}}),n(`OpaqueType`,{visitor:[`id`,`typeParameters`,`supertype`,`impltype`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:{id:(0,t.validateType)(`Identifier`),typeParameters:(0,t.validateOptionalType)(`TypeParameterDeclaration`),supertype:(0,t.validateOptionalType)(`FlowType`),impltype:(0,t.validateType)(`FlowType`)}}),n(`QualifiedTypeIdentifier`,{visitor:[`qualification`,`id`],builder:[`id`,`qualification`],fields:{id:(0,t.validateType)(`Identifier`),qualification:(0,t.validateType)(`Identifier`,`QualifiedTypeIdentifier`)}}),n(`StringLiteralTypeAnnotation`,{builder:[`value`],aliases:[`FlowType`],fields:{value:(0,t.validate)((0,t.assertValueType)(`string`))}}),n(`StringTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`SymbolTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`ThisTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`TupleTypeAnnotation`,{visitor:[`types`],aliases:[`FlowType`],fields:{types:(0,t.validate)((0,t.arrayOfType)(`FlowType`))}}),n(`TypeofTypeAnnotation`,{visitor:[`argument`],aliases:[`FlowType`],fields:{argument:(0,t.validateType)(`FlowType`)}}),n(`TypeAlias`,{visitor:[`id`,`typeParameters`,`right`],aliases:[`FlowDeclaration`,`Statement`,`Declaration`],fields:{id:(0,t.validateType)(`Identifier`),typeParameters:(0,t.validateOptionalType)(`TypeParameterDeclaration`),right:(0,t.validateType)(`FlowType`)}}),n(`TypeAnnotation`,{visitor:[`typeAnnotation`],fields:{typeAnnotation:(0,t.validateType)(`FlowType`)}}),n(`TypeCastExpression`,{visitor:[`expression`,`typeAnnotation`],aliases:[`ExpressionWrapper`,`Expression`],fields:{expression:(0,t.validateType)(`Expression`),typeAnnotation:(0,t.validateType)(`TypeAnnotation`)}}),n(`TypeParameter`,{visitor:[`bound`,`default`,`variance`],fields:{name:(0,t.validate)((0,t.assertValueType)(`string`)),bound:(0,t.validateOptionalType)(`TypeAnnotation`),default:(0,t.validateOptionalType)(`FlowType`),variance:(0,t.validateOptionalType)(`Variance`)}}),n(`TypeParameterDeclaration`,{visitor:[`params`],fields:{params:(0,t.validate)((0,t.arrayOfType)(`TypeParameter`))}}),n(`TypeParameterInstantiation`,{visitor:[`params`],fields:{params:(0,t.validate)((0,t.arrayOfType)(`FlowType`))}}),n(`UnionTypeAnnotation`,{visitor:[`types`],aliases:[`FlowType`],fields:{types:(0,t.validate)((0,t.arrayOfType)(`FlowType`))}}),n(`Variance`,{builder:[`kind`],fields:{kind:(0,t.validate)((0,t.assertOneOf)(`minus`,`plus`))}}),n(`VoidTypeAnnotation`,{aliases:[`FlowType`,`FlowBaseAnnotation`]}),n(`EnumDeclaration`,{aliases:[`Statement`,`Declaration`],visitor:[`id`,`body`],fields:{id:(0,t.validateType)(`Identifier`),body:(0,t.validateType)(`EnumBooleanBody`,`EnumNumberBody`,`EnumStringBody`,`EnumSymbolBody`)}}),n(`EnumBooleanBody`,{aliases:[`EnumBody`],visitor:[`members`],fields:{explicitType:(0,t.validate)((0,t.assertValueType)(`boolean`)),members:(0,t.validateArrayOfType)(`EnumBooleanMember`),hasUnknownMembers:(0,t.validate)((0,t.assertValueType)(`boolean`))}}),n(`EnumNumberBody`,{aliases:[`EnumBody`],visitor:[`members`],fields:{explicitType:(0,t.validate)((0,t.assertValueType)(`boolean`)),members:(0,t.validateArrayOfType)(`EnumNumberMember`),hasUnknownMembers:(0,t.validate)((0,t.assertValueType)(`boolean`))}}),n(`EnumStringBody`,{aliases:[`EnumBody`],visitor:[`members`],fields:{explicitType:(0,t.validate)((0,t.assertValueType)(`boolean`)),members:(0,t.validateArrayOfType)(`EnumStringMember`,`EnumDefaultedMember`),hasUnknownMembers:(0,t.validate)((0,t.assertValueType)(`boolean`))}}),n(`EnumSymbolBody`,{aliases:[`EnumBody`],visitor:[`members`],fields:{members:(0,t.validateArrayOfType)(`EnumDefaultedMember`),hasUnknownMembers:(0,t.validate)((0,t.assertValueType)(`boolean`))}}),n(`EnumBooleanMember`,{aliases:[`EnumMember`],builder:[`id`],visitor:[`id`,`init`],fields:{id:(0,t.validateType)(`Identifier`),init:(0,t.validateType)(`BooleanLiteral`)}}),n(`EnumNumberMember`,{aliases:[`EnumMember`],visitor:[`id`,`init`],fields:{id:(0,t.validateType)(`Identifier`),init:(0,t.validateType)(`NumericLiteral`)}}),n(`EnumStringMember`,{aliases:[`EnumMember`],visitor:[`id`,`init`],fields:{id:(0,t.validateType)(`Identifier`),init:(0,t.validateType)(`StringLiteral`)}}),n(`EnumDefaultedMember`,{aliases:[`EnumMember`],visitor:[`id`],fields:{id:(0,t.validateType)(`Identifier`)}}),n(`IndexedAccessType`,{visitor:[`objectType`,`indexType`],aliases:[`FlowType`],fields:{objectType:(0,t.validateType)(`FlowType`),indexType:(0,t.validateType)(`FlowType`)}}),n(`OptionalIndexedAccessType`,{visitor:[`objectType`,`indexType`],aliases:[`FlowType`],fields:{objectType:(0,t.validateType)(`FlowType`),indexType:(0,t.validateType)(`FlowType`),optional:(0,t.validate)((0,t.assertValueType)(`boolean`))}})})),fe=e((()=>{var e=M(),t=(0,e.defineAliasedType)(`JSX`);t(`JSXAttribute`,{visitor:[`name`,`value`],aliases:[`Immutable`],fields:{name:{validate:(0,e.assertNodeType)(`JSXIdentifier`,`JSXNamespacedName`)},value:{optional:!0,validate:(0,e.assertNodeType)(`JSXElement`,`JSXFragment`,`StringLiteral`,`JSXExpressionContainer`)}}}),t(`JSXClosingElement`,{visitor:[`name`],aliases:[`Immutable`],fields:{name:{validate:(0,e.assertNodeType)(`JSXIdentifier`,`JSXMemberExpression`,`JSXNamespacedName`)}}}),t(`JSXElement`,{builder:[`openingElement`,`closingElement`,`children`,`selfClosing`],visitor:[`openingElement`,`children`,`closingElement`],aliases:[`Immutable`,`Expression`],fields:Object.assign({openingElement:{validate:(0,e.assertNodeType)(`JSXOpeningElement`)},closingElement:{optional:!0,validate:(0,e.assertNodeType)(`JSXClosingElement`)},children:(0,e.validateArrayOfType)(`JSXText`,`JSXExpressionContainer`,`JSXSpreadChild`,`JSXElement`,`JSXFragment`)},{selfClosing:{validate:(0,e.assertValueType)(`boolean`),optional:!0}})}),t(`JSXEmptyExpression`,{}),t(`JSXExpressionContainer`,{visitor:[`expression`],aliases:[`Immutable`],fields:{expression:{validate:(0,e.assertNodeType)(`Expression`,`JSXEmptyExpression`)}}}),t(`JSXSpreadChild`,{visitor:[`expression`],aliases:[`Immutable`],fields:{expression:{validate:(0,e.assertNodeType)(`Expression`)}}}),t(`JSXIdentifier`,{builder:[`name`],fields:{name:{validate:(0,e.assertValueType)(`string`)}}}),t(`JSXMemberExpression`,{visitor:[`object`,`property`],fields:{object:{validate:(0,e.assertNodeType)(`JSXMemberExpression`,`JSXIdentifier`)},property:{validate:(0,e.assertNodeType)(`JSXIdentifier`)}}}),t(`JSXNamespacedName`,{visitor:[`namespace`,`name`],fields:{namespace:{validate:(0,e.assertNodeType)(`JSXIdentifier`)},name:{validate:(0,e.assertNodeType)(`JSXIdentifier`)}}}),t(`JSXOpeningElement`,{builder:[`name`,`attributes`,`selfClosing`],visitor:[`name`,`typeParameters`,`typeArguments`,`attributes`],aliases:[`Immutable`],fields:Object.assign({name:{validate:(0,e.assertNodeType)(`JSXIdentifier`,`JSXMemberExpression`,`JSXNamespacedName`)},selfClosing:{default:!1},attributes:(0,e.validateArrayOfType)(`JSXAttribute`,`JSXSpreadAttribute`),typeArguments:{validate:(0,e.assertNodeType)(`TypeParameterInstantiation`),optional:!0}},{typeParameters:{validate:(0,e.assertNodeType)(`TSTypeParameterInstantiation`),optional:!0}})}),t(`JSXSpreadAttribute`,{visitor:[`argument`],fields:{argument:{validate:(0,e.assertNodeType)(`Expression`)}}}),t(`JSXText`,{aliases:[`Immutable`],builder:[`value`],fields:{value:{validate:(0,e.assertValueType)(`string`)}}}),t(`JSXFragment`,{builder:[`openingFragment`,`closingFragment`,`children`],visitor:[`openingFragment`,`children`,`closingFragment`],aliases:[`Immutable`,`Expression`],fields:{openingFragment:{validate:(0,e.assertNodeType)(`JSXOpeningFragment`)},closingFragment:{validate:(0,e.assertNodeType)(`JSXClosingFragment`)},children:(0,e.validateArrayOfType)(`JSXText`,`JSXExpressionContainer`,`JSXSpreadChild`,`JSXElement`,`JSXFragment`)}}),t(`JSXOpeningFragment`,{aliases:[`Immutable`]}),t(`JSXClosingFragment`,{aliases:[`Immutable`]})})),F=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.PLACEHOLDERS_FLIPPED_ALIAS=e.PLACEHOLDERS_ALIAS=e.PLACEHOLDERS=void 0;var t=M(),n=e.PLACEHOLDERS=[`Identifier`,`StringLiteral`,`Expression`,`Statement`,`Declaration`,`BlockStatement`,`ClassBody`,`Pattern`],r=e.PLACEHOLDERS_ALIAS={Declaration:[`Statement`],Pattern:[`PatternLike`,`LVal`]};for(let e of n){let n=t.ALIAS_KEYS[e];n!=null&&n.length&&(r[e]=n)}var i=e.PLACEHOLDERS_FLIPPED_ALIAS={};Object.keys(r).forEach(e=>{r[e].forEach(t=>{hasOwnProperty.call(i,t)||(i[t]=[]),i[t].push(e)})})})),pe=e((()=>{var e=M(),t=F(),n=N(),r=(0,e.defineAliasedType)(`Miscellaneous`);r(`Noop`,{visitor:[]}),r(`Placeholder`,{visitor:[],builder:[`expectedNode`,`name`],fields:Object.assign({name:{validate:(0,e.assertNodeType)(`Identifier`)},expectedNode:{validate:(0,e.assertOneOf)(...t.PLACEHOLDERS)}},(0,n.patternLikeCommon)())}),r(`V8IntrinsicIdentifier`,{builder:[`name`],fields:{name:{validate:(0,e.assertValueType)(`string`)}}})})),me=e((()=>{var e=M();(0,e.default)(`ArgumentPlaceholder`,{}),(0,e.default)(`BindExpression`,{visitor:[`object`,`callee`],aliases:[`Expression`],fields:process.env.BABEL_TYPES_8_BREAKING?{object:{validate:(0,e.assertNodeType)(`Expression`)},callee:{validate:(0,e.assertNodeType)(`Expression`)}}:{object:{validate:Object.assign(()=>{},{oneOfNodeTypes:[`Expression`]})},callee:{validate:Object.assign(()=>{},{oneOfNodeTypes:[`Expression`]})}}}),(0,e.default)(`Decorator`,{visitor:[`expression`],fields:{expression:{validate:(0,e.assertNodeType)(`Expression`)}}}),(0,e.default)(`DoExpression`,{visitor:[`body`],builder:[`body`,`async`],aliases:[`Expression`],fields:{body:{validate:(0,e.assertNodeType)(`BlockStatement`)},async:{validate:(0,e.assertValueType)(`boolean`),default:!1}}}),(0,e.default)(`ExportDefaultSpecifier`,{visitor:[`exported`],aliases:[`ModuleSpecifier`],fields:{exported:{validate:(0,e.assertNodeType)(`Identifier`)}}}),(0,e.default)(`RecordExpression`,{visitor:[`properties`],aliases:[`Expression`],fields:{properties:(0,e.validateArrayOfType)(`ObjectProperty`,`SpreadElement`)}}),(0,e.default)(`TupleExpression`,{fields:{elements:{validate:(0,e.arrayOfType)(`Expression`,`SpreadElement`),default:[]}},visitor:[`elements`],aliases:[`Expression`]}),(0,e.default)(`DecimalLiteral`,{builder:[`value`],fields:{value:{validate:(0,e.assertValueType)(`string`)}},aliases:[`Expression`,`Pureish`,`Literal`,`Immutable`]}),(0,e.default)(`ModuleExpression`,{visitor:[`body`],fields:{body:{validate:(0,e.assertNodeType)(`Program`)}},aliases:[`Expression`]}),(0,e.default)(`TopicReference`,{aliases:[`Expression`]}),(0,e.default)(`PipelineTopicExpression`,{builder:[`expression`],visitor:[`expression`],fields:{expression:{validate:(0,e.assertNodeType)(`Expression`)}},aliases:[`Expression`]}),(0,e.default)(`PipelineBareFunction`,{builder:[`callee`],visitor:[`callee`],fields:{callee:{validate:(0,e.assertNodeType)(`Expression`)}},aliases:[`Expression`]}),(0,e.default)(`PipelinePrimaryTopicReference`,{aliases:[`Expression`]}),(0,e.default)(`VoidPattern`,{aliases:[`Pattern`,`PatternLike`,`FunctionParameter`]})})),he=e((()=>{var e=M(),t=N(),n=k(),r=(0,e.defineAliasedType)(`TypeScript`),i=(0,e.assertValueType)(`boolean`),a=()=>({returnType:{validate:(0,e.assertNodeType)(`TSTypeAnnotation`,`Noop`),optional:!0},typeParameters:{validate:(0,e.assertNodeType)(`TSTypeParameterDeclaration`,`Noop`),optional:!0}});r(`TSParameterProperty`,{aliases:[`LVal`],visitor:[`parameter`],fields:{accessibility:{validate:(0,e.assertOneOf)(`public`,`private`,`protected`),optional:!0},readonly:{validate:(0,e.assertValueType)(`boolean`),optional:!0},parameter:{validate:(0,e.assertNodeType)(`Identifier`,`AssignmentPattern`)},override:{validate:(0,e.assertValueType)(`boolean`),optional:!0},decorators:{validate:(0,e.arrayOfType)(`Decorator`),optional:!0}}}),r(`TSDeclareFunction`,{aliases:[`Statement`,`Declaration`],visitor:[`id`,`typeParameters`,`params`,`returnType`],fields:Object.assign({},(0,t.functionDeclarationCommon)(),a())}),r(`TSDeclareMethod`,Object.assign({visitor:[`decorators`,`key`,`typeParameters`,`params`,`returnType`]},(0,t.classMethodOrPropertyUnionShapeCommon)(),{fields:Object.assign({},(0,t.classMethodOrDeclareMethodCommon)(),a())})),r(`TSQualifiedName`,{aliases:[`TSEntityName`],visitor:[`left`,`right`],fields:{left:(0,e.validateType)(`TSEntityName`),right:(0,e.validateType)(`Identifier`)}});var o=()=>({typeParameters:(0,e.validateOptionalType)(`TSTypeParameterDeclaration`),parameters:(0,e.validateArrayOfType)(`ArrayPattern`,`Identifier`,`ObjectPattern`,`RestElement`),typeAnnotation:(0,e.validateOptionalType)(`TSTypeAnnotation`)}),s={aliases:[`TSTypeElement`],visitor:[`typeParameters`,`parameters`,`typeAnnotation`],fields:o()};r(`TSCallSignatureDeclaration`,s),r(`TSConstructSignatureDeclaration`,s);var c=()=>({key:(0,e.validateType)(`Expression`),computed:{default:!1},optional:(0,e.validateOptional)(i)});r(`TSPropertySignature`,{aliases:[`TSTypeElement`],visitor:[`key`,`typeAnnotation`],fields:Object.assign({},c(),{readonly:(0,e.validateOptional)(i),typeAnnotation:(0,e.validateOptionalType)(`TSTypeAnnotation`),kind:{optional:!0,validate:(0,e.assertOneOf)(`get`,`set`)}})}),r(`TSMethodSignature`,{aliases:[`TSTypeElement`],visitor:[`key`,`typeParameters`,`parameters`,`typeAnnotation`],fields:Object.assign({},o(),c(),{kind:{validate:(0,e.assertOneOf)(`method`,`get`,`set`)}})}),r(`TSIndexSignature`,{aliases:[`TSTypeElement`],visitor:[`parameters`,`typeAnnotation`],fields:{readonly:(0,e.validateOptional)(i),static:(0,e.validateOptional)(i),parameters:(0,e.validateArrayOfType)(`Identifier`),typeAnnotation:(0,e.validateOptionalType)(`TSTypeAnnotation`)}});for(let e of[`TSAnyKeyword`,`TSBooleanKeyword`,`TSBigIntKeyword`,`TSIntrinsicKeyword`,`TSNeverKeyword`,`TSNullKeyword`,`TSNumberKeyword`,`TSObjectKeyword`,`TSStringKeyword`,`TSSymbolKeyword`,`TSUndefinedKeyword`,`TSUnknownKeyword`,`TSVoidKeyword`])r(e,{aliases:[`TSType`,`TSBaseType`],visitor:[],fields:{}});r(`TSThisType`,{aliases:[`TSType`,`TSBaseType`],visitor:[],fields:{}});var l={aliases:[`TSType`],visitor:[`typeParameters`,`parameters`,`typeAnnotation`]};r(`TSFunctionType`,Object.assign({},l,{fields:o()})),r(`TSConstructorType`,Object.assign({},l,{fields:Object.assign({},o(),{abstract:(0,e.validateOptional)(i)})})),r(`TSTypeReference`,{aliases:[`TSType`],visitor:[`typeName`,`typeParameters`],fields:{typeName:(0,e.validateType)(`TSEntityName`),typeParameters:(0,e.validateOptionalType)(`TSTypeParameterInstantiation`)}}),r(`TSTypePredicate`,{aliases:[`TSType`],visitor:[`parameterName`,`typeAnnotation`],builder:[`parameterName`,`typeAnnotation`,`asserts`],fields:{parameterName:(0,e.validateType)(`Identifier`,`TSThisType`),typeAnnotation:(0,e.validateOptionalType)(`TSTypeAnnotation`),asserts:(0,e.validateOptional)(i)}}),r(`TSTypeQuery`,{aliases:[`TSType`],visitor:[`exprName`,`typeParameters`],fields:{exprName:(0,e.validateType)(`TSEntityName`,`TSImportType`),typeParameters:(0,e.validateOptionalType)(`TSTypeParameterInstantiation`)}}),r(`TSTypeLiteral`,{aliases:[`TSType`],visitor:[`members`],fields:{members:(0,e.validateArrayOfType)(`TSTypeElement`)}}),r(`TSArrayType`,{aliases:[`TSType`],visitor:[`elementType`],fields:{elementType:(0,e.validateType)(`TSType`)}}),r(`TSTupleType`,{aliases:[`TSType`],visitor:[`elementTypes`],fields:{elementTypes:(0,e.validateArrayOfType)(`TSType`,`TSNamedTupleMember`)}}),r(`TSOptionalType`,{aliases:[`TSType`],visitor:[`typeAnnotation`],fields:{typeAnnotation:(0,e.validateType)(`TSType`)}}),r(`TSRestType`,{aliases:[`TSType`],visitor:[`typeAnnotation`],fields:{typeAnnotation:(0,e.validateType)(`TSType`)}}),r(`TSNamedTupleMember`,{visitor:[`label`,`elementType`],builder:[`label`,`elementType`,`optional`],fields:{label:(0,e.validateType)(`Identifier`),optional:{validate:i,default:!1},elementType:(0,e.validateType)(`TSType`)}});var u={aliases:[`TSType`],visitor:[`types`],fields:{types:(0,e.validateArrayOfType)(`TSType`)}};r(`TSUnionType`,u),r(`TSIntersectionType`,u),r(`TSConditionalType`,{aliases:[`TSType`],visitor:[`checkType`,`extendsType`,`trueType`,`falseType`],fields:{checkType:(0,e.validateType)(`TSType`),extendsType:(0,e.validateType)(`TSType`),trueType:(0,e.validateType)(`TSType`),falseType:(0,e.validateType)(`TSType`)}}),r(`TSInferType`,{aliases:[`TSType`],visitor:[`typeParameter`],fields:{typeParameter:(0,e.validateType)(`TSTypeParameter`)}}),r(`TSParenthesizedType`,{aliases:[`TSType`],visitor:[`typeAnnotation`],fields:{typeAnnotation:(0,e.validateType)(`TSType`)}}),r(`TSTypeOperator`,{aliases:[`TSType`],visitor:[`typeAnnotation`],builder:[`typeAnnotation`,`operator`],fields:{operator:{validate:(0,e.assertValueType)(`string`),default:`keyof`},typeAnnotation:(0,e.validateType)(`TSType`)}}),r(`TSIndexedAccessType`,{aliases:[`TSType`],visitor:[`objectType`,`indexType`],fields:{objectType:(0,e.validateType)(`TSType`),indexType:(0,e.validateType)(`TSType`)}}),r(`TSMappedType`,{aliases:[`TSType`],visitor:[`typeParameter`,`nameType`,`typeAnnotation`],builder:[`typeParameter`,`typeAnnotation`,`nameType`],fields:Object.assign({},{typeParameter:(0,e.validateType)(`TSTypeParameter`)},{readonly:(0,e.validateOptional)((0,e.assertOneOf)(!0,!1,`+`,`-`)),optional:(0,e.validateOptional)((0,e.assertOneOf)(!0,!1,`+`,`-`)),typeAnnotation:(0,e.validateOptionalType)(`TSType`),nameType:(0,e.validateOptionalType)(`TSType`)})}),r(`TSTemplateLiteralType`,{aliases:[`TSType`,`TSBaseType`],visitor:[`quasis`,`types`],fields:{quasis:(0,e.validateArrayOfType)(`TemplateElement`),types:{validate:(0,e.chain)((0,e.assertValueType)(`array`),(0,e.assertEach)((0,e.assertNodeType)(`TSType`)),function(e,t,n){if(e.quasis.length!==n.length+1)throw TypeError(`Number of ${e.type} quasis should be exactly one more than the number of types.\nExpected ${n.length+1} quasis but got ${e.quasis.length}`)})}}}),r(`TSLiteralType`,{aliases:[`TSType`,`TSBaseType`],visitor:[`literal`],fields:{literal:{validate:function(){let t=(0,e.assertNodeType)(`NumericLiteral`,`BigIntLiteral`),r=(0,e.assertOneOf)(`-`),i=(0,e.assertNodeType)(`NumericLiteral`,`StringLiteral`,`BooleanLiteral`,`BigIntLiteral`,`TemplateLiteral`),a=function(e,a,o){(0,n.default)(`UnaryExpression`,o)?(r(o,`operator`,o.operator),t(o,`argument`,o.argument)):i(e,a,o)};return a.oneOfNodeTypes=[`NumericLiteral`,`StringLiteral`,`BooleanLiteral`,`BigIntLiteral`,`TemplateLiteral`,`UnaryExpression`],a}()}}}),r(`TSExpressionWithTypeArguments`,{aliases:[`TSType`],visitor:[`expression`,`typeParameters`],fields:{expression:(0,e.validateType)(`TSEntityName`),typeParameters:(0,e.validateOptionalType)(`TSTypeParameterInstantiation`)}}),r(`TSInterfaceDeclaration`,{aliases:[`Statement`,`Declaration`],visitor:[`id`,`typeParameters`,`extends`,`body`],fields:{declare:(0,e.validateOptional)(i),id:(0,e.validateType)(`Identifier`),typeParameters:(0,e.validateOptionalType)(`TSTypeParameterDeclaration`),extends:(0,e.validateOptional)((0,e.arrayOfType)(`TSExpressionWithTypeArguments`)),body:(0,e.validateType)(`TSInterfaceBody`)}}),r(`TSInterfaceBody`,{visitor:[`body`],fields:{body:(0,e.validateArrayOfType)(`TSTypeElement`)}}),r(`TSTypeAliasDeclaration`,{aliases:[`Statement`,`Declaration`],visitor:[`id`,`typeParameters`,`typeAnnotation`],fields:{declare:(0,e.validateOptional)(i),id:(0,e.validateType)(`Identifier`),typeParameters:(0,e.validateOptionalType)(`TSTypeParameterDeclaration`),typeAnnotation:(0,e.validateType)(`TSType`)}}),r(`TSInstantiationExpression`,{aliases:[`Expression`],visitor:[`expression`,`typeParameters`],fields:{expression:(0,e.validateType)(`Expression`),typeParameters:(0,e.validateOptionalType)(`TSTypeParameterInstantiation`)}});var d={aliases:[`Expression`,`LVal`,`PatternLike`],visitor:[`expression`,`typeAnnotation`],fields:{expression:(0,e.validateType)(`Expression`),typeAnnotation:(0,e.validateType)(`TSType`)}};r(`TSAsExpression`,d),r(`TSSatisfiesExpression`,d),r(`TSTypeAssertion`,{aliases:[`Expression`,`LVal`,`PatternLike`],visitor:[`typeAnnotation`,`expression`],fields:{typeAnnotation:(0,e.validateType)(`TSType`),expression:(0,e.validateType)(`Expression`)}}),r(`TSEnumBody`,{visitor:[`members`],fields:{members:(0,e.validateArrayOfType)(`TSEnumMember`)}}),r(`TSEnumDeclaration`,{aliases:[`Statement`,`Declaration`],visitor:[`id`,`members`],fields:{declare:(0,e.validateOptional)(i),const:(0,e.validateOptional)(i),id:(0,e.validateType)(`Identifier`),members:(0,e.validateArrayOfType)(`TSEnumMember`),initializer:(0,e.validateOptionalType)(`Expression`),body:(0,e.validateOptionalType)(`TSEnumBody`)}}),r(`TSEnumMember`,{visitor:[`id`,`initializer`],fields:{id:(0,e.validateType)(`Identifier`,`StringLiteral`),initializer:(0,e.validateOptionalType)(`Expression`)}}),r(`TSModuleDeclaration`,{aliases:[`Statement`,`Declaration`],visitor:[`id`,`body`],fields:Object.assign({kind:{validate:(0,e.assertOneOf)(`global`,`module`,`namespace`)},declare:(0,e.validateOptional)(i)},{global:(0,e.validateOptional)(i)},{id:(0,e.validateType)(`Identifier`,`StringLiteral`),body:(0,e.validateType)(`TSModuleBlock`,`TSModuleDeclaration`)})}),r(`TSModuleBlock`,{aliases:[`Scopable`,`Block`,`BlockParent`,`FunctionParent`],visitor:[`body`],fields:{body:(0,e.validateArrayOfType)(`Statement`)}}),r(`TSImportType`,{aliases:[`TSType`],builder:[`argument`,`qualifier`,`typeParameters`],visitor:[`argument`,`options`,`qualifier`,`typeParameters`],fields:{argument:(0,e.validateType)(`StringLiteral`),qualifier:(0,e.validateOptionalType)(`TSEntityName`),typeParameters:(0,e.validateOptionalType)(`TSTypeParameterInstantiation`),options:{validate:(0,e.assertNodeType)(`ObjectExpression`),optional:!0}}}),r(`TSImportEqualsDeclaration`,{aliases:[`Statement`,`Declaration`],visitor:[`id`,`moduleReference`],fields:Object.assign({},{isExport:(0,e.validate)(i)},{id:(0,e.validateType)(`Identifier`),moduleReference:(0,e.validateType)(`TSEntityName`,`TSExternalModuleReference`),importKind:{validate:(0,e.assertOneOf)(`type`,`value`),optional:!0}})}),r(`TSExternalModuleReference`,{visitor:[`expression`],fields:{expression:(0,e.validateType)(`StringLiteral`)}}),r(`TSNonNullExpression`,{aliases:[`Expression`,`LVal`,`PatternLike`],visitor:[`expression`],fields:{expression:(0,e.validateType)(`Expression`)}}),r(`TSExportAssignment`,{aliases:[`Statement`],visitor:[`expression`],fields:{expression:(0,e.validateType)(`Expression`)}}),r(`TSNamespaceExportDeclaration`,{aliases:[`Statement`],visitor:[`id`],fields:{id:(0,e.validateType)(`Identifier`)}}),r(`TSTypeAnnotation`,{visitor:[`typeAnnotation`],fields:{typeAnnotation:{validate:(0,e.assertNodeType)(`TSType`)}}}),r(`TSTypeParameterInstantiation`,{visitor:[`params`],fields:{params:(0,e.validateArrayOfType)(`TSType`)}}),r(`TSTypeParameterDeclaration`,{visitor:[`params`],fields:{params:(0,e.validateArrayOfType)(`TSTypeParameter`)}}),r(`TSTypeParameter`,{builder:[`constraint`,`default`,`name`],visitor:[`constraint`,`default`],fields:{name:{validate:(0,e.assertValueType)(`string`)},in:{validate:(0,e.assertValueType)(`boolean`),optional:!0},out:{validate:(0,e.assertValueType)(`boolean`),optional:!0},const:{validate:(0,e.assertValueType)(`boolean`),optional:!0},constraint:{validate:(0,e.assertNodeType)(`TSType`),optional:!0},default:{validate:(0,e.assertNodeType)(`TSType`),optional:!0}}})})),ge=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.DEPRECATED_ALIASES=void 0,e.DEPRECATED_ALIASES={ModuleDeclaration:`ImportOrExportDeclaration`}})),I=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ALIAS_KEYS",{enumerable:!0,get:function(){return t.ALIAS_KEYS}}),Object.defineProperty(e,"BUILDER_KEYS",{enumerable:!0,get:function(){return t.BUILDER_KEYS}}),Object.defineProperty(e,"DEPRECATED_ALIASES",{enumerable:!0,get:function(){return r.DEPRECATED_ALIASES}}),Object.defineProperty(e,"DEPRECATED_KEYS",{enumerable:!0,get:function(){return t.DEPRECATED_KEYS}}),Object.defineProperty(e,"FLIPPED_ALIAS_KEYS",{enumerable:!0,get:function(){return t.FLIPPED_ALIAS_KEYS}}),Object.defineProperty(e,"NODE_FIELDS",{enumerable:!0,get:function(){return t.NODE_FIELDS}}),Object.defineProperty(e,"NODE_PARENT_VALIDATIONS",{enumerable:!0,get:function(){return t.NODE_PARENT_VALIDATIONS}}),Object.defineProperty(e,"NODE_UNION_SHAPES__PRIVATE",{enumerable:!0,get:function(){return t.NODE_UNION_SHAPES__PRIVATE}}),Object.defineProperty(e,"PLACEHOLDERS",{enumerable:!0,get:function(){return n.PLACEHOLDERS}}),Object.defineProperty(e,"PLACEHOLDERS_ALIAS",{enumerable:!0,get:function(){return n.PLACEHOLDERS_ALIAS}}),Object.defineProperty(e,"PLACEHOLDERS_FLIPPED_ALIAS",{enumerable:!0,get:function(){return n.PLACEHOLDERS_FLIPPED_ALIAS}}),e.TYPES=void 0,Object.defineProperty(e,"VISITOR_KEYS",{enumerable:!0,get:function(){return t.VISITOR_KEYS}}),N(),P(),fe(),pe(),me(),he();var t=M(),n=F(),r=ge();Object.keys(r.DEPRECATED_ALIASES).forEach(e=>{t.FLIPPED_ALIAS_KEYS[e]=t.FLIPPED_ALIAS_KEYS[r.DEPRECATED_ALIASES[e]]});for(let{types:e,set:n}of t.allExpandedTypes)for(let r of e){let e=t.FLIPPED_ALIAS_KEYS[r];e?e.forEach(n.add,n):n.add(r)}e.TYPES=[].concat(Object.keys(t.VISITOR_KEYS),Object.keys(t.FLIPPED_ALIAS_KEYS),Object.keys(t.DEPRECATED_KEYS))})),_e=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n,e.validateChild=a,e.validateField=i,e.validateInternal=r;var t=I();function n(e,n,r){if(!e)return;let o=t.NODE_FIELDS[e.type];if(!o)return;let s=o[n];i(e,n,r,s),a(e,n,r)}function r(e,n,r,i,a){if(e!=null&&e.validate&&!(e.optional&&i==null)&&(e.validate(n,r,i),a)){var o;let e=i.type;if(e==null)return;(o=t.NODE_PARENT_VALIDATIONS[e])==null||o.call(t.NODE_PARENT_VALIDATIONS,n,r,i)}}function i(e,t,n,r){r!=null&&r.validate&&(r.optional&&n==null||r.validate(e,t,n))}function a(e,n,r){var i;let a=r==null?void 0:r.type;a!=null&&((i=t.NODE_PARENT_VALIDATIONS[a])==null||i.call(t.NODE_PARENT_VALIDATIONS,e,n,r))}})),ve=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.anyTypeAnnotation=W,e.argumentPlaceholder=bn,e.arrayExpression=s,e.arrayPattern=Ce,e.arrayTypeAnnotation=et,e.arrowFunctionExpression=we,e.assignmentExpression=c,e.assignmentPattern=R,e.awaitExpression=Ue,e.bigIntLiteral=o,e.binaryExpression=l,e.bindExpression=xn,e.blockStatement=p,e.booleanLiteral=D,e.booleanLiteralTypeAnnotation=nt,e.booleanTypeAnnotation=tt,e.breakStatement=m,e.callExpression=h,e.catchClause=g,e.classAccessorProperty=Ye,e.classBody=Te,e.classDeclaration=Ee,e.classExpression=z,e.classImplements=it,e.classMethod=Fe,e.classPrivateMethod=Ze,e.classPrivateProperty=Xe,e.classProperty=Je,e.conditionalExpression=_,e.continueStatement=ee,e.debuggerStatement=te,e.decimalLiteral=Dn,e.declareClass=at,e.declareExportAllDeclaration=G,e.declareExportDeclaration=pt,e.declareFunction=ot,e.declareInterface=st,e.declareModule=ct,e.declareModuleExports=lt,e.declareOpaqueType=dt,e.declareTypeAlias=ut,e.declareVariable=ft,e.declaredPredicate=mt,e.decorator=Sn,e.directive=d,e.directiveLiteral=f,e.doExpression=Cn,e.doWhileStatement=ne,e.emptyStatement=re,e.emptyTypeAnnotation=wt,e.enumBooleanBody=Kt,e.enumBooleanMember=Yt,e.enumDeclaration=Gt,e.enumDefaultedMember=Qt,e.enumNumberBody=qt,e.enumNumberMember=Xt,e.enumStringBody=$,e.enumStringMember=Zt,e.enumSymbolBody=Jt,e.existsTypeAnnotation=K,e.exportAllDeclaration=De,e.exportDefaultDeclaration=Oe,e.exportDefaultSpecifier=wn,e.exportNamedDeclaration=B,e.exportNamespaceSpecifier=Ge,e.exportSpecifier=ke,e.expressionStatement=v,e.file=y,e.forInStatement=b,e.forOfStatement=Ae,e.forStatement=x,e.functionDeclaration=S,e.functionExpression=C,e.functionTypeAnnotation=ht,e.functionTypeParam=gt,e.genericTypeAnnotation=_t,e.identifier=ie,e.ifStatement=T,e.import=We,e.importAttribute=$e,e.importDeclaration=je,e.importDefaultSpecifier=V,e.importExpression=Ne,e.importNamespaceSpecifier=H,e.importSpecifier=Me,e.indexedAccessType=$t,e.inferredPredicate=vt,e.interfaceDeclaration=bt,e.interfaceExtends=yt,e.interfaceTypeAnnotation=xt,e.interpreterDirective=u,e.intersectionTypeAnnotation=St,e.jSXAttribute=e.jsxAttribute=tn,e.jSXClosingElement=e.jsxClosingElement=nn,e.jSXClosingFragment=e.jsxClosingFragment=gn,e.jSXElement=e.jsxElement=rn,e.jSXEmptyExpression=e.jsxEmptyExpression=an,e.jSXExpressionContainer=e.jsxExpressionContainer=on,e.jSXFragment=e.jsxFragment=mn,e.jSXIdentifier=e.jsxIdentifier=cn,e.jSXMemberExpression=e.jsxMemberExpression=ln,e.jSXNamespacedName=e.jsxNamespacedName=un,e.jSXOpeningElement=e.jsxOpeningElement=dn,e.jSXOpeningFragment=e.jsxOpeningFragment=hn,e.jSXSpreadAttribute=e.jsxSpreadAttribute=fn,e.jSXSpreadChild=e.jsxSpreadChild=sn,e.jSXText=e.jsxText=pn,e.labeledStatement=ae,e.logicalExpression=k,e.memberExpression=ce,e.metaProperty=Pe,e.mixedTypeAnnotation=Ct,e.moduleExpression=On,e.newExpression=le,e.noop=_n,e.nullLiteral=E,e.nullLiteralTypeAnnotation=rt,e.nullableTypeAnnotation=Tt,e.numberLiteral=qr,e.numberLiteralTypeAnnotation=q,e.numberTypeAnnotation=Et,e.numericLiteral=se,e.objectExpression=A,e.objectMethod=de,e.objectPattern=Ie,e.objectProperty=j,e.objectTypeAnnotation=J,e.objectTypeCallProperty=Dt,e.objectTypeIndexer=Ot,e.objectTypeInternalSlot=Y,e.objectTypeProperty=X,e.objectTypeSpreadProperty=kt,e.opaqueType=At,e.optionalCallExpression=qe,e.optionalIndexedAccessType=en,e.optionalMemberExpression=Ke,e.parenthesizedExpression=F,e.pipelineBareFunction=jn,e.pipelinePrimaryTopicReference=Mn,e.pipelineTopicExpression=An,e.placeholder=vn,e.privateName=U,e.program=ue,e.qualifiedTypeIdentifier=jt,e.recordExpression=Tn,e.regExpLiteral=O,e.regexLiteral=Jr,e.restElement=N,e.restProperty=Yr,e.returnStatement=P,e.sequenceExpression=fe,e.spreadElement=Le,e.spreadProperty=Xr,e.staticBlock=Qe,e.stringLiteral=oe,e.stringLiteralTypeAnnotation=Z,e.stringTypeAnnotation=Mt,e.super=Re,e.switchCase=pe,e.switchStatement=me,e.symbolTypeAnnotation=Nt,e.taggedTemplateExpression=ze,e.templateElement=Be,e.templateLiteral=Ve,e.thisExpression=he,e.thisTypeAnnotation=Pt,e.throwStatement=ge,e.topicReference=kn,e.tryStatement=I,e.tSAnyKeyword=e.tsAnyKeyword=Un,e.tSArrayType=e.tsArrayType=lr,e.tSAsExpression=e.tsAsExpression=kr,e.tSBigIntKeyword=e.tsBigIntKeyword=Gn,e.tSBooleanKeyword=e.tsBooleanKeyword=Wn,e.tSCallSignatureDeclaration=e.tsCallSignatureDeclaration=Rn,e.tSConditionalType=e.tsConditionalType=gr,e.tSConstructSignatureDeclaration=e.tsConstructSignatureDeclaration=zn,e.tSConstructorType=e.tsConstructorType=ir,e.tSDeclareFunction=e.tsDeclareFunction=Fn,e.tSDeclareMethod=e.tsDeclareMethod=In,e.tSEnumBody=e.tsEnumBody=Mr,e.tSEnumDeclaration=e.tsEnumDeclaration=Nr,e.tSEnumMember=e.tsEnumMember=Pr,e.tSExportAssignment=e.tsExportAssignment=Vr,e.tSExpressionWithTypeArguments=e.tsExpressionWithTypeArguments=wr,e.tSExternalModuleReference=e.tsExternalModuleReference=zr,e.tSFunctionType=e.tsFunctionType=rr,e.tSImportEqualsDeclaration=e.tsImportEqualsDeclaration=Rr,e.tSImportType=e.tsImportType=Lr,e.tSIndexSignature=e.tsIndexSignature=Hn,e.tSIndexedAccessType=e.tsIndexedAccessType=br,e.tSInferType=e.tsInferType=_r,e.tSInstantiationExpression=e.tsInstantiationExpression=Or,e.tSInterfaceBody=e.tsInterfaceBody=Er,e.tSInterfaceDeclaration=e.tsInterfaceDeclaration=Tr,e.tSIntersectionType=e.tsIntersectionType=hr,e.tSIntrinsicKeyword=e.tsIntrinsicKeyword=Kn,e.tSLiteralType=e.tsLiteralType=Cr,e.tSMappedType=e.tsMappedType=xr,e.tSMethodSignature=e.tsMethodSignature=Vn,e.tSModuleBlock=e.tsModuleBlock=Ir,e.tSModuleDeclaration=e.tsModuleDeclaration=Fr,e.tSNamedTupleMember=e.tsNamedTupleMember=pr,e.tSNamespaceExportDeclaration=e.tsNamespaceExportDeclaration=Hr,e.tSNeverKeyword=e.tsNeverKeyword=qn,e.tSNonNullExpression=e.tsNonNullExpression=Br,e.tSNullKeyword=e.tsNullKeyword=Jn,e.tSNumberKeyword=e.tsNumberKeyword=Yn,e.tSObjectKeyword=e.tsObjectKeyword=Xn,e.tSOptionalType=e.tsOptionalType=dr,e.tSParameterProperty=e.tsParameterProperty=Pn,e.tSParenthesizedType=e.tsParenthesizedType=vr,e.tSPropertySignature=e.tsPropertySignature=Bn,e.tSQualifiedName=e.tsQualifiedName=Ln,e.tSRestType=e.tsRestType=fr,e.tSSatisfiesExpression=e.tsSatisfiesExpression=Ar,e.tSStringKeyword=e.tsStringKeyword=Zn,e.tSSymbolKeyword=e.tsSymbolKeyword=Qn,e.tSTemplateLiteralType=e.tsTemplateLiteralType=Sr,e.tSThisType=e.tsThisType=nr,e.tSTupleType=e.tsTupleType=ur,e.tSTypeAliasDeclaration=e.tsTypeAliasDeclaration=Dr,e.tSTypeAnnotation=e.tsTypeAnnotation=Ur,e.tSTypeAssertion=e.tsTypeAssertion=jr,e.tSTypeLiteral=e.tsTypeLiteral=cr,e.tSTypeOperator=e.tsTypeOperator=yr,e.tSTypeParameter=e.tsTypeParameter=Kr,e.tSTypeParameterDeclaration=e.tsTypeParameterDeclaration=Gr,e.tSTypeParameterInstantiation=e.tsTypeParameterInstantiation=Wr,e.tSTypePredicate=e.tsTypePredicate=or,e.tSTypeQuery=e.tsTypeQuery=sr,e.tSTypeReference=e.tsTypeReference=ar,e.tSUndefinedKeyword=e.tsUndefinedKeyword=$n,e.tSUnionType=e.tsUnionType=mr,e.tSUnknownKeyword=e.tsUnknownKeyword=er,e.tSVoidKeyword=e.tsVoidKeyword=tr,e.tupleExpression=En,e.tupleTypeAnnotation=Ft,e.typeAlias=Lt,e.typeAnnotation=Rt,e.typeCastExpression=zt,e.typeParameter=Q,e.typeParameterDeclaration=Bt,e.typeParameterInstantiation=Vt,e.typeofTypeAnnotation=It,e.unaryExpression=ve,e.unionTypeAnnotation=Ht,e.updateExpression=ye,e.v8IntrinsicIdentifier=yn,e.variableDeclaration=L,e.variableDeclarator=be,e.variance=Ut,e.voidPattern=Nn,e.voidTypeAnnotation=Wt,e.whileStatement=xe,e.withStatement=Se,e.yieldExpression=He;var t=_e(),n=w(),r=M(),{validateInternal:i}=t,{NODE_FIELDS:a}=r;function o(e){typeof e==`bigint`&&(e=e.toString());let t={type:`BigIntLiteral`,value:e},n=a.BigIntLiteral;return i(n.value,t,`value`,e),t}function s(e=[]){let t={type:`ArrayExpression`,elements:e},n=a.ArrayExpression;return i(n.elements,t,`elements`,e,1),t}function c(e,t,n){let r={type:`AssignmentExpression`,operator:e,left:t,right:n},o=a.AssignmentExpression;return i(o.operator,r,`operator`,e),i(o.left,r,`left`,t,1),i(o.right,r,`right`,n,1),r}function l(e,t,n){let r={type:`BinaryExpression`,operator:e,left:t,right:n},o=a.BinaryExpression;return i(o.operator,r,`operator`,e),i(o.left,r,`left`,t,1),i(o.right,r,`right`,n,1),r}function u(e){let t={type:`InterpreterDirective`,value:e},n=a.InterpreterDirective;return i(n.value,t,`value`,e),t}function d(e){let t={type:`Directive`,value:e},n=a.Directive;return i(n.value,t,`value`,e,1),t}function f(e){let t={type:`DirectiveLiteral`,value:e},n=a.DirectiveLiteral;return i(n.value,t,`value`,e),t}function p(e,t=[]){let n={type:`BlockStatement`,body:e,directives:t},r=a.BlockStatement;return i(r.body,n,`body`,e,1),i(r.directives,n,`directives`,t,1),n}function m(e=null){let t={type:`BreakStatement`,label:e},n=a.BreakStatement;return i(n.label,t,`label`,e,1),t}function h(e,t){let n={type:`CallExpression`,callee:e,arguments:t},r=a.CallExpression;return i(r.callee,n,`callee`,e,1),i(r.arguments,n,`arguments`,t,1),n}function g(e=null,t){let n={type:`CatchClause`,param:e,body:t},r=a.CatchClause;return i(r.param,n,`param`,e,1),i(r.body,n,`body`,t,1),n}function _(e,t,n){let r={type:`ConditionalExpression`,test:e,consequent:t,alternate:n},o=a.ConditionalExpression;return i(o.test,r,`test`,e,1),i(o.consequent,r,`consequent`,t,1),i(o.alternate,r,`alternate`,n,1),r}function ee(e=null){let t={type:`ContinueStatement`,label:e},n=a.ContinueStatement;return i(n.label,t,`label`,e,1),t}function te(){return{type:`DebuggerStatement`}}function ne(e,t){let n={type:`DoWhileStatement`,test:e,body:t},r=a.DoWhileStatement;return i(r.test,n,`test`,e,1),i(r.body,n,`body`,t,1),n}function re(){return{type:`EmptyStatement`}}function v(e){let t={type:`ExpressionStatement`,expression:e},n=a.ExpressionStatement;return i(n.expression,t,`expression`,e,1),t}function y(e,t=null,n=null){let r={type:`File`,program:e,comments:t,tokens:n},o=a.File;return i(o.program,r,`program`,e,1),i(o.comments,r,`comments`,t,1),i(o.tokens,r,`tokens`,n),r}function b(e,t,n){let r={type:`ForInStatement`,left:e,right:t,body:n},o=a.ForInStatement;return i(o.left,r,`left`,e,1),i(o.right,r,`right`,t,1),i(o.body,r,`body`,n,1),r}function x(e=null,t=null,n=null,r){let o={type:`ForStatement`,init:e,test:t,update:n,body:r},s=a.ForStatement;return i(s.init,o,`init`,e,1),i(s.test,o,`test`,t,1),i(s.update,o,`update`,n,1),i(s.body,o,`body`,r,1),o}function S(e=null,t,n,r=!1,o=!1){let s={type:`FunctionDeclaration`,id:e,params:t,body:n,generator:r,async:o},c=a.FunctionDeclaration;return i(c.id,s,`id`,e,1),i(c.params,s,`params`,t,1),i(c.body,s,`body`,n,1),i(c.generator,s,`generator`,r),i(c.async,s,`async`,o),s}function C(e=null,t,n,r=!1,o=!1){let s={type:`FunctionExpression`,id:e,params:t,body:n,generator:r,async:o},c=a.FunctionExpression;return i(c.id,s,`id`,e,1),i(c.params,s,`params`,t,1),i(c.body,s,`body`,n,1),i(c.generator,s,`generator`,r),i(c.async,s,`async`,o),s}function ie(e){let t={type:`Identifier`,name:e},n=a.Identifier;return i(n.name,t,`name`,e),t}function T(e,t,n=null){let r={type:`IfStatement`,test:e,consequent:t,alternate:n},o=a.IfStatement;return i(o.test,r,`test`,e,1),i(o.consequent,r,`consequent`,t,1),i(o.alternate,r,`alternate`,n,1),r}function ae(e,t){let n={type:`LabeledStatement`,label:e,body:t},r=a.LabeledStatement;return i(r.label,n,`label`,e,1),i(r.body,n,`body`,t,1),n}function oe(e){let t={type:`StringLiteral`,value:e},n=a.StringLiteral;return i(n.value,t,`value`,e),t}function se(e){let t={type:`NumericLiteral`,value:e},n=a.NumericLiteral;return i(n.value,t,`value`,e),t}function E(){return{type:`NullLiteral`}}function D(e){let t={type:`BooleanLiteral`,value:e},n=a.BooleanLiteral;return i(n.value,t,`value`,e),t}function O(e,t=``){let n={type:`RegExpLiteral`,pattern:e,flags:t},r=a.RegExpLiteral;return i(r.pattern,n,`pattern`,e),i(r.flags,n,`flags`,t),n}function k(e,t,n){let r={type:`LogicalExpression`,operator:e,left:t,right:n},o=a.LogicalExpression;return i(o.operator,r,`operator`,e),i(o.left,r,`left`,t,1),i(o.right,r,`right`,n,1),r}function ce(e,t,n=!1,r=null){let o={type:`MemberExpression`,object:e,property:t,computed:n,optional:r},s=a.MemberExpression;return i(s.object,o,`object`,e,1),i(s.property,o,`property`,t,1),i(s.computed,o,`computed`,n),i(s.optional,o,`optional`,r),o}function le(e,t){let n={type:`NewExpression`,callee:e,arguments:t},r=a.NewExpression;return i(r.callee,n,`callee`,e,1),i(r.arguments,n,`arguments`,t,1),n}function ue(e,t=[],n=`script`,r=null){let o={type:`Program`,body:e,directives:t,sourceType:n,interpreter:r},s=a.Program;return i(s.body,o,`body`,e,1),i(s.directives,o,`directives`,t,1),i(s.sourceType,o,`sourceType`,n),i(s.interpreter,o,`interpreter`,r,1),o}function A(e){let t={type:`ObjectExpression`,properties:e},n=a.ObjectExpression;return i(n.properties,t,`properties`,e,1),t}function de(e=`method`,t,n,r,o=!1,s=!1,c=!1){let l={type:`ObjectMethod`,kind:e,key:t,params:n,body:r,computed:o,generator:s,async:c},u=a.ObjectMethod;return i(u.kind,l,`kind`,e),i(u.key,l,`key`,t,1),i(u.params,l,`params`,n,1),i(u.body,l,`body`,r,1),i(u.computed,l,`computed`,o),i(u.generator,l,`generator`,s),i(u.async,l,`async`,c),l}function j(e,t,n=!1,r=!1,o=null){let s={type:`ObjectProperty`,key:e,value:t,computed:n,shorthand:r,decorators:o},c=a.ObjectProperty;return i(c.key,s,`key`,e,1),i(c.value,s,`value`,t,1),i(c.computed,s,`computed`,n),i(c.shorthand,s,`shorthand`,r),i(c.decorators,s,`decorators`,o,1),s}function N(e){let t={type:`RestElement`,argument:e},n=a.RestElement;return i(n.argument,t,`argument`,e,1),t}function P(e=null){let t={type:`ReturnStatement`,argument:e},n=a.ReturnStatement;return i(n.argument,t,`argument`,e,1),t}function fe(e){let t={type:`SequenceExpression`,expressions:e},n=a.SequenceExpression;return i(n.expressions,t,`expressions`,e,1),t}function F(e){let t={type:`ParenthesizedExpression`,expression:e},n=a.ParenthesizedExpression;return i(n.expression,t,`expression`,e,1),t}function pe(e=null,t){let n={type:`SwitchCase`,test:e,consequent:t},r=a.SwitchCase;return i(r.test,n,`test`,e,1),i(r.consequent,n,`consequent`,t,1),n}function me(e,t){let n={type:`SwitchStatement`,discriminant:e,cases:t},r=a.SwitchStatement;return i(r.discriminant,n,`discriminant`,e,1),i(r.cases,n,`cases`,t,1),n}function he(){return{type:`ThisExpression`}}function ge(e){let t={type:`ThrowStatement`,argument:e},n=a.ThrowStatement;return i(n.argument,t,`argument`,e,1),t}function I(e,t=null,n=null){let r={type:`TryStatement`,block:e,handler:t,finalizer:n},o=a.TryStatement;return i(o.block,r,`block`,e,1),i(o.handler,r,`handler`,t,1),i(o.finalizer,r,`finalizer`,n,1),r}function ve(e,t,n=!0){let r={type:`UnaryExpression`,operator:e,argument:t,prefix:n},o=a.UnaryExpression;return i(o.operator,r,`operator`,e),i(o.argument,r,`argument`,t,1),i(o.prefix,r,`prefix`,n),r}function ye(e,t,n=!1){let r={type:`UpdateExpression`,operator:e,argument:t,prefix:n},o=a.UpdateExpression;return i(o.operator,r,`operator`,e),i(o.argument,r,`argument`,t,1),i(o.prefix,r,`prefix`,n),r}function L(e,t){let n={type:`VariableDeclaration`,kind:e,declarations:t},r=a.VariableDeclaration;return i(r.kind,n,`kind`,e),i(r.declarations,n,`declarations`,t,1),n}function be(e,t=null){let n={type:`VariableDeclarator`,id:e,init:t},r=a.VariableDeclarator;return i(r.id,n,`id`,e,1),i(r.init,n,`init`,t,1),n}function xe(e,t){let n={type:`WhileStatement`,test:e,body:t},r=a.WhileStatement;return i(r.test,n,`test`,e,1),i(r.body,n,`body`,t,1),n}function Se(e,t){let n={type:`WithStatement`,object:e,body:t},r=a.WithStatement;return i(r.object,n,`object`,e,1),i(r.body,n,`body`,t,1),n}function R(e,t){let n={type:`AssignmentPattern`,left:e,right:t},r=a.AssignmentPattern;return i(r.left,n,`left`,e,1),i(r.right,n,`right`,t,1),n}function Ce(e){let t={type:`ArrayPattern`,elements:e},n=a.ArrayPattern;return i(n.elements,t,`elements`,e,1),t}function we(e,t,n=!1){let r={type:`ArrowFunctionExpression`,params:e,body:t,async:n,expression:null},o=a.ArrowFunctionExpression;return i(o.params,r,`params`,e,1),i(o.body,r,`body`,t,1),i(o.async,r,`async`,n),r}function Te(e){let t={type:`ClassBody`,body:e},n=a.ClassBody;return i(n.body,t,`body`,e,1),t}function z(e=null,t=null,n,r=null){let o={type:`ClassExpression`,id:e,superClass:t,body:n,decorators:r},s=a.ClassExpression;return i(s.id,o,`id`,e,1),i(s.superClass,o,`superClass`,t,1),i(s.body,o,`body`,n,1),i(s.decorators,o,`decorators`,r,1),o}function Ee(e=null,t=null,n,r=null){let o={type:`ClassDeclaration`,id:e,superClass:t,body:n,decorators:r},s=a.ClassDeclaration;return i(s.id,o,`id`,e,1),i(s.superClass,o,`superClass`,t,1),i(s.body,o,`body`,n,1),i(s.decorators,o,`decorators`,r,1),o}function De(e){let t={type:`ExportAllDeclaration`,source:e},n=a.ExportAllDeclaration;return i(n.source,t,`source`,e,1),t}function Oe(e){let t={type:`ExportDefaultDeclaration`,declaration:e},n=a.ExportDefaultDeclaration;return i(n.declaration,t,`declaration`,e,1),t}function B(e=null,t=[],n=null){let r={type:`ExportNamedDeclaration`,declaration:e,specifiers:t,source:n},o=a.ExportNamedDeclaration;return i(o.declaration,r,`declaration`,e,1),i(o.specifiers,r,`specifiers`,t,1),i(o.source,r,`source`,n,1),r}function ke(e,t){let n={type:`ExportSpecifier`,local:e,exported:t},r=a.ExportSpecifier;return i(r.local,n,`local`,e,1),i(r.exported,n,`exported`,t,1),n}function Ae(e,t,n,r=!1){let o={type:`ForOfStatement`,left:e,right:t,body:n,await:r},s=a.ForOfStatement;return i(s.left,o,`left`,e,1),i(s.right,o,`right`,t,1),i(s.body,o,`body`,n,1),i(s.await,o,`await`,r),o}function je(e,t){let n={type:`ImportDeclaration`,specifiers:e,source:t},r=a.ImportDeclaration;return i(r.specifiers,n,`specifiers`,e,1),i(r.source,n,`source`,t,1),n}function V(e){let t={type:`ImportDefaultSpecifier`,local:e},n=a.ImportDefaultSpecifier;return i(n.local,t,`local`,e,1),t}function H(e){let t={type:`ImportNamespaceSpecifier`,local:e},n=a.ImportNamespaceSpecifier;return i(n.local,t,`local`,e,1),t}function Me(e,t){let n={type:`ImportSpecifier`,local:e,imported:t},r=a.ImportSpecifier;return i(r.local,n,`local`,e,1),i(r.imported,n,`imported`,t,1),n}function Ne(e,t=null){let n={type:`ImportExpression`,source:e,options:t},r=a.ImportExpression;return i(r.source,n,`source`,e,1),i(r.options,n,`options`,t,1),n}function Pe(e,t){let n={type:`MetaProperty`,meta:e,property:t},r=a.MetaProperty;return i(r.meta,n,`meta`,e,1),i(r.property,n,`property`,t,1),n}function Fe(e=`method`,t,n,r,o=!1,s=!1,c=!1,l=!1){let u={type:`ClassMethod`,kind:e,key:t,params:n,body:r,computed:o,static:s,generator:c,async:l},d=a.ClassMethod;return i(d.kind,u,`kind`,e),i(d.key,u,`key`,t,1),i(d.params,u,`params`,n,1),i(d.body,u,`body`,r,1),i(d.computed,u,`computed`,o),i(d.static,u,`static`,s),i(d.generator,u,`generator`,c),i(d.async,u,`async`,l),u}function Ie(e){let t={type:`ObjectPattern`,properties:e},n=a.ObjectPattern;return i(n.properties,t,`properties`,e,1),t}function Le(e){let t={type:`SpreadElement`,argument:e},n=a.SpreadElement;return i(n.argument,t,`argument`,e,1),t}function Re(){return{type:`Super`}}function ze(e,t){let n={type:`TaggedTemplateExpression`,tag:e,quasi:t},r=a.TaggedTemplateExpression;return i(r.tag,n,`tag`,e,1),i(r.quasi,n,`quasi`,t,1),n}function Be(e,t=!1){let n={type:`TemplateElement`,value:e,tail:t},r=a.TemplateElement;return i(r.value,n,`value`,e),i(r.tail,n,`tail`,t),n}function Ve(e,t){let n={type:`TemplateLiteral`,quasis:e,expressions:t},r=a.TemplateLiteral;return i(r.quasis,n,`quasis`,e,1),i(r.expressions,n,`expressions`,t,1),n}function He(e=null,t=!1){let n={type:`YieldExpression`,argument:e,delegate:t},r=a.YieldExpression;return i(r.argument,n,`argument`,e,1),i(r.delegate,n,`delegate`,t),n}function Ue(e){let t={type:`AwaitExpression`,argument:e},n=a.AwaitExpression;return i(n.argument,t,`argument`,e,1),t}function We(){return{type:`Import`}}function Ge(e){let t={type:`ExportNamespaceSpecifier`,exported:e},n=a.ExportNamespaceSpecifier;return i(n.exported,t,`exported`,e,1),t}function Ke(e,t,n=!1,r){let o={type:`OptionalMemberExpression`,object:e,property:t,computed:n,optional:r},s=a.OptionalMemberExpression;return i(s.object,o,`object`,e,1),i(s.property,o,`property`,t,1),i(s.computed,o,`computed`,n),i(s.optional,o,`optional`,r),o}function qe(e,t,n){let r={type:`OptionalCallExpression`,callee:e,arguments:t,optional:n},o=a.OptionalCallExpression;return i(o.callee,r,`callee`,e,1),i(o.arguments,r,`arguments`,t,1),i(o.optional,r,`optional`,n),r}function Je(e,t=null,n=null,r=null,o=!1,s=!1){let c={type:`ClassProperty`,key:e,value:t,typeAnnotation:n,decorators:r,computed:o,static:s},l=a.ClassProperty;return i(l.key,c,`key`,e,1),i(l.value,c,`value`,t,1),i(l.typeAnnotation,c,`typeAnnotation`,n,1),i(l.decorators,c,`decorators`,r,1),i(l.computed,c,`computed`,o),i(l.static,c,`static`,s),c}function Ye(e,t=null,n=null,r=null,o=!1,s=!1){let c={type:`ClassAccessorProperty`,key:e,value:t,typeAnnotation:n,decorators:r,computed:o,static:s},l=a.ClassAccessorProperty;return i(l.key,c,`key`,e,1),i(l.value,c,`value`,t,1),i(l.typeAnnotation,c,`typeAnnotation`,n,1),i(l.decorators,c,`decorators`,r,1),i(l.computed,c,`computed`,o),i(l.static,c,`static`,s),c}function Xe(e,t=null,n=null,r=!1){let o={type:`ClassPrivateProperty`,key:e,value:t,decorators:n,static:r},s=a.ClassPrivateProperty;return i(s.key,o,`key`,e,1),i(s.value,o,`value`,t,1),i(s.decorators,o,`decorators`,n,1),i(s.static,o,`static`,r),o}function Ze(e=`method`,t,n,r,o=!1){let s={type:`ClassPrivateMethod`,kind:e,key:t,params:n,body:r,static:o},c=a.ClassPrivateMethod;return i(c.kind,s,`kind`,e),i(c.key,s,`key`,t,1),i(c.params,s,`params`,n,1),i(c.body,s,`body`,r,1),i(c.static,s,`static`,o),s}function U(e){let t={type:`PrivateName`,id:e},n=a.PrivateName;return i(n.id,t,`id`,e,1),t}function Qe(e){let t={type:`StaticBlock`,body:e},n=a.StaticBlock;return i(n.body,t,`body`,e,1),t}function $e(e,t){let n={type:`ImportAttribute`,key:e,value:t},r=a.ImportAttribute;return i(r.key,n,`key`,e,1),i(r.value,n,`value`,t,1),n}function W(){return{type:`AnyTypeAnnotation`}}function et(e){let t={type:`ArrayTypeAnnotation`,elementType:e},n=a.ArrayTypeAnnotation;return i(n.elementType,t,`elementType`,e,1),t}function tt(){return{type:`BooleanTypeAnnotation`}}function nt(e){let t={type:`BooleanLiteralTypeAnnotation`,value:e},n=a.BooleanLiteralTypeAnnotation;return i(n.value,t,`value`,e),t}function rt(){return{type:`NullLiteralTypeAnnotation`}}function it(e,t=null){let n={type:`ClassImplements`,id:e,typeParameters:t},r=a.ClassImplements;return i(r.id,n,`id`,e,1),i(r.typeParameters,n,`typeParameters`,t,1),n}function at(e,t=null,n=null,r){let o={type:`DeclareClass`,id:e,typeParameters:t,extends:n,body:r},s=a.DeclareClass;return i(s.id,o,`id`,e,1),i(s.typeParameters,o,`typeParameters`,t,1),i(s.extends,o,`extends`,n,1),i(s.body,o,`body`,r,1),o}function ot(e){let t={type:`DeclareFunction`,id:e},n=a.DeclareFunction;return i(n.id,t,`id`,e,1),t}function st(e,t=null,n=null,r){let o={type:`DeclareInterface`,id:e,typeParameters:t,extends:n,body:r},s=a.DeclareInterface;return i(s.id,o,`id`,e,1),i(s.typeParameters,o,`typeParameters`,t,1),i(s.extends,o,`extends`,n,1),i(s.body,o,`body`,r,1),o}function ct(e,t,n=null){let r={type:`DeclareModule`,id:e,body:t,kind:n},o=a.DeclareModule;return i(o.id,r,`id`,e,1),i(o.body,r,`body`,t,1),i(o.kind,r,`kind`,n),r}function lt(e){let t={type:`DeclareModuleExports`,typeAnnotation:e},n=a.DeclareModuleExports;return i(n.typeAnnotation,t,`typeAnnotation`,e,1),t}function ut(e,t=null,n){let r={type:`DeclareTypeAlias`,id:e,typeParameters:t,right:n},o=a.DeclareTypeAlias;return i(o.id,r,`id`,e,1),i(o.typeParameters,r,`typeParameters`,t,1),i(o.right,r,`right`,n,1),r}function dt(e,t=null,n=null){let r={type:`DeclareOpaqueType`,id:e,typeParameters:t,supertype:n},o=a.DeclareOpaqueType;return i(o.id,r,`id`,e,1),i(o.typeParameters,r,`typeParameters`,t,1),i(o.supertype,r,`supertype`,n,1),r}function ft(e){let t={type:`DeclareVariable`,id:e},n=a.DeclareVariable;return i(n.id,t,`id`,e,1),t}function pt(e=null,t=null,n=null,r=null){let o={type:`DeclareExportDeclaration`,declaration:e,specifiers:t,source:n,attributes:r},s=a.DeclareExportDeclaration;return i(s.declaration,o,`declaration`,e,1),i(s.specifiers,o,`specifiers`,t,1),i(s.source,o,`source`,n,1),i(s.attributes,o,`attributes`,r,1),o}function G(e,t=null){let n={type:`DeclareExportAllDeclaration`,source:e,attributes:t},r=a.DeclareExportAllDeclaration;return i(r.source,n,`source`,e,1),i(r.attributes,n,`attributes`,t,1),n}function mt(e){let t={type:`DeclaredPredicate`,value:e},n=a.DeclaredPredicate;return i(n.value,t,`value`,e,1),t}function K(){return{type:`ExistsTypeAnnotation`}}function ht(e=null,t,n=null,r){let o={type:`FunctionTypeAnnotation`,typeParameters:e,params:t,rest:n,returnType:r},s=a.FunctionTypeAnnotation;return i(s.typeParameters,o,`typeParameters`,e,1),i(s.params,o,`params`,t,1),i(s.rest,o,`rest`,n,1),i(s.returnType,o,`returnType`,r,1),o}function gt(e=null,t){let n={type:`FunctionTypeParam`,name:e,typeAnnotation:t},r=a.FunctionTypeParam;return i(r.name,n,`name`,e,1),i(r.typeAnnotation,n,`typeAnnotation`,t,1),n}function _t(e,t=null){let n={type:`GenericTypeAnnotation`,id:e,typeParameters:t},r=a.GenericTypeAnnotation;return i(r.id,n,`id`,e,1),i(r.typeParameters,n,`typeParameters`,t,1),n}function vt(){return{type:`InferredPredicate`}}function yt(e,t=null){let n={type:`InterfaceExtends`,id:e,typeParameters:t},r=a.InterfaceExtends;return i(r.id,n,`id`,e,1),i(r.typeParameters,n,`typeParameters`,t,1),n}function bt(e,t=null,n=null,r){let o={type:`InterfaceDeclaration`,id:e,typeParameters:t,extends:n,body:r},s=a.InterfaceDeclaration;return i(s.id,o,`id`,e,1),i(s.typeParameters,o,`typeParameters`,t,1),i(s.extends,o,`extends`,n,1),i(s.body,o,`body`,r,1),o}function xt(e=null,t){let n={type:`InterfaceTypeAnnotation`,extends:e,body:t},r=a.InterfaceTypeAnnotation;return i(r.extends,n,`extends`,e,1),i(r.body,n,`body`,t,1),n}function St(e){let t={type:`IntersectionTypeAnnotation`,types:e},n=a.IntersectionTypeAnnotation;return i(n.types,t,`types`,e,1),t}function Ct(){return{type:`MixedTypeAnnotation`}}function wt(){return{type:`EmptyTypeAnnotation`}}function Tt(e){let t={type:`NullableTypeAnnotation`,typeAnnotation:e},n=a.NullableTypeAnnotation;return i(n.typeAnnotation,t,`typeAnnotation`,e,1),t}function q(e){let t={type:`NumberLiteralTypeAnnotation`,value:e},n=a.NumberLiteralTypeAnnotation;return i(n.value,t,`value`,e),t}function Et(){return{type:`NumberTypeAnnotation`}}function J(e,t=[],n=[],r=[],o=!1){let s={type:`ObjectTypeAnnotation`,properties:e,indexers:t,callProperties:n,internalSlots:r,exact:o},c=a.ObjectTypeAnnotation;return i(c.properties,s,`properties`,e,1),i(c.indexers,s,`indexers`,t,1),i(c.callProperties,s,`callProperties`,n,1),i(c.internalSlots,s,`internalSlots`,r,1),i(c.exact,s,`exact`,o),s}function Y(e,t,n,r,o){let s={type:`ObjectTypeInternalSlot`,id:e,value:t,optional:n,static:r,method:o},c=a.ObjectTypeInternalSlot;return i(c.id,s,`id`,e,1),i(c.value,s,`value`,t,1),i(c.optional,s,`optional`,n),i(c.static,s,`static`,r),i(c.method,s,`method`,o),s}function Dt(e){let t={type:`ObjectTypeCallProperty`,value:e,static:null},n=a.ObjectTypeCallProperty;return i(n.value,t,`value`,e,1),t}function Ot(e=null,t,n,r=null){let o={type:`ObjectTypeIndexer`,id:e,key:t,value:n,variance:r,static:null},s=a.ObjectTypeIndexer;return i(s.id,o,`id`,e,1),i(s.key,o,`key`,t,1),i(s.value,o,`value`,n,1),i(s.variance,o,`variance`,r,1),o}function X(e,t,n=null){let r={type:`ObjectTypeProperty`,key:e,value:t,variance:n,kind:null,method:null,optional:null,proto:null,static:null},o=a.ObjectTypeProperty;return i(o.key,r,`key`,e,1),i(o.value,r,`value`,t,1),i(o.variance,r,`variance`,n,1),r}function kt(e){let t={type:`ObjectTypeSpreadProperty`,argument:e},n=a.ObjectTypeSpreadProperty;return i(n.argument,t,`argument`,e,1),t}function At(e,t=null,n=null,r){let o={type:`OpaqueType`,id:e,typeParameters:t,supertype:n,impltype:r},s=a.OpaqueType;return i(s.id,o,`id`,e,1),i(s.typeParameters,o,`typeParameters`,t,1),i(s.supertype,o,`supertype`,n,1),i(s.impltype,o,`impltype`,r,1),o}function jt(e,t){let n={type:`QualifiedTypeIdentifier`,id:e,qualification:t},r=a.QualifiedTypeIdentifier;return i(r.id,n,`id`,e,1),i(r.qualification,n,`qualification`,t,1),n}function Z(e){let t={type:`StringLiteralTypeAnnotation`,value:e},n=a.StringLiteralTypeAnnotation;return i(n.value,t,`value`,e),t}function Mt(){return{type:`StringTypeAnnotation`}}function Nt(){return{type:`SymbolTypeAnnotation`}}function Pt(){return{type:`ThisTypeAnnotation`}}function Ft(e){let t={type:`TupleTypeAnnotation`,types:e},n=a.TupleTypeAnnotation;return i(n.types,t,`types`,e,1),t}function It(e){let t={type:`TypeofTypeAnnotation`,argument:e},n=a.TypeofTypeAnnotation;return i(n.argument,t,`argument`,e,1),t}function Lt(e,t=null,n){let r={type:`TypeAlias`,id:e,typeParameters:t,right:n},o=a.TypeAlias;return i(o.id,r,`id`,e,1),i(o.typeParameters,r,`typeParameters`,t,1),i(o.right,r,`right`,n,1),r}function Rt(e){let t={type:`TypeAnnotation`,typeAnnotation:e},n=a.TypeAnnotation;return i(n.typeAnnotation,t,`typeAnnotation`,e,1),t}function zt(e,t){let n={type:`TypeCastExpression`,expression:e,typeAnnotation:t},r=a.TypeCastExpression;return i(r.expression,n,`expression`,e,1),i(r.typeAnnotation,n,`typeAnnotation`,t,1),n}function Q(e=null,t=null,n=null){let r={type:`TypeParameter`,bound:e,default:t,variance:n,name:null},o=a.TypeParameter;return i(o.bound,r,`bound`,e,1),i(o.default,r,`default`,t,1),i(o.variance,r,`variance`,n,1),r}function Bt(e){let t={type:`TypeParameterDeclaration`,params:e},n=a.TypeParameterDeclaration;return i(n.params,t,`params`,e,1),t}function Vt(e){let t={type:`TypeParameterInstantiation`,params:e},n=a.TypeParameterInstantiation;return i(n.params,t,`params`,e,1),t}function Ht(e){let t={type:`UnionTypeAnnotation`,types:e},n=a.UnionTypeAnnotation;return i(n.types,t,`types`,e,1),t}function Ut(e){let t={type:`Variance`,kind:e},n=a.Variance;return i(n.kind,t,`kind`,e),t}function Wt(){return{type:`VoidTypeAnnotation`}}function Gt(e,t){let n={type:`EnumDeclaration`,id:e,body:t},r=a.EnumDeclaration;return i(r.id,n,`id`,e,1),i(r.body,n,`body`,t,1),n}function Kt(e){let t={type:`EnumBooleanBody`,members:e,explicitType:null,hasUnknownMembers:null},n=a.EnumBooleanBody;return i(n.members,t,`members`,e,1),t}function qt(e){let t={type:`EnumNumberBody`,members:e,explicitType:null,hasUnknownMembers:null},n=a.EnumNumberBody;return i(n.members,t,`members`,e,1),t}function $(e){let t={type:`EnumStringBody`,members:e,explicitType:null,hasUnknownMembers:null},n=a.EnumStringBody;return i(n.members,t,`members`,e,1),t}function Jt(e){let t={type:`EnumSymbolBody`,members:e,hasUnknownMembers:null},n=a.EnumSymbolBody;return i(n.members,t,`members`,e,1),t}function Yt(e){let t={type:`EnumBooleanMember`,id:e,init:null},n=a.EnumBooleanMember;return i(n.id,t,`id`,e,1),t}function Xt(e,t){let n={type:`EnumNumberMember`,id:e,init:t},r=a.EnumNumberMember;return i(r.id,n,`id`,e,1),i(r.init,n,`init`,t,1),n}function Zt(e,t){let n={type:`EnumStringMember`,id:e,init:t},r=a.EnumStringMember;return i(r.id,n,`id`,e,1),i(r.init,n,`init`,t,1),n}function Qt(e){let t={type:`EnumDefaultedMember`,id:e},n=a.EnumDefaultedMember;return i(n.id,t,`id`,e,1),t}function $t(e,t){let n={type:`IndexedAccessType`,objectType:e,indexType:t},r=a.IndexedAccessType;return i(r.objectType,n,`objectType`,e,1),i(r.indexType,n,`indexType`,t,1),n}function en(e,t){let n={type:`OptionalIndexedAccessType`,objectType:e,indexType:t,optional:null},r=a.OptionalIndexedAccessType;return i(r.objectType,n,`objectType`,e,1),i(r.indexType,n,`indexType`,t,1),n}function tn(e,t=null){let n={type:`JSXAttribute`,name:e,value:t},r=a.JSXAttribute;return i(r.name,n,`name`,e,1),i(r.value,n,`value`,t,1),n}function nn(e){let t={type:`JSXClosingElement`,name:e},n=a.JSXClosingElement;return i(n.name,t,`name`,e,1),t}function rn(e,t=null,n,r=null){let o={type:`JSXElement`,openingElement:e,closingElement:t,children:n,selfClosing:r},s=a.JSXElement;return i(s.openingElement,o,`openingElement`,e,1),i(s.closingElement,o,`closingElement`,t,1),i(s.children,o,`children`,n,1),i(s.selfClosing,o,`selfClosing`,r),o}function an(){return{type:`JSXEmptyExpression`}}function on(e){let t={type:`JSXExpressionContainer`,expression:e},n=a.JSXExpressionContainer;return i(n.expression,t,`expression`,e,1),t}function sn(e){let t={type:`JSXSpreadChild`,expression:e},n=a.JSXSpreadChild;return i(n.expression,t,`expression`,e,1),t}function cn(e){let t={type:`JSXIdentifier`,name:e},n=a.JSXIdentifier;return i(n.name,t,`name`,e),t}function ln(e,t){let n={type:`JSXMemberExpression`,object:e,property:t},r=a.JSXMemberExpression;return i(r.object,n,`object`,e,1),i(r.property,n,`property`,t,1),n}function un(e,t){let n={type:`JSXNamespacedName`,namespace:e,name:t},r=a.JSXNamespacedName;return i(r.namespace,n,`namespace`,e,1),i(r.name,n,`name`,t,1),n}function dn(e,t,n=!1){let r={type:`JSXOpeningElement`,name:e,attributes:t,selfClosing:n},o=a.JSXOpeningElement;return i(o.name,r,`name`,e,1),i(o.attributes,r,`attributes`,t,1),i(o.selfClosing,r,`selfClosing`,n),r}function fn(e){let t={type:`JSXSpreadAttribute`,argument:e},n=a.JSXSpreadAttribute;return i(n.argument,t,`argument`,e,1),t}function pn(e){let t={type:`JSXText`,value:e},n=a.JSXText;return i(n.value,t,`value`,e),t}function mn(e,t,n){let r={type:`JSXFragment`,openingFragment:e,closingFragment:t,children:n},o=a.JSXFragment;return i(o.openingFragment,r,`openingFragment`,e,1),i(o.closingFragment,r,`closingFragment`,t,1),i(o.children,r,`children`,n,1),r}function hn(){return{type:`JSXOpeningFragment`}}function gn(){return{type:`JSXClosingFragment`}}function _n(){return{type:`Noop`}}function vn(e,t){let n={type:`Placeholder`,expectedNode:e,name:t},r=a.Placeholder;return i(r.expectedNode,n,`expectedNode`,e),i(r.name,n,`name`,t,1),n}function yn(e){let t={type:`V8IntrinsicIdentifier`,name:e},n=a.V8IntrinsicIdentifier;return i(n.name,t,`name`,e),t}function bn(){return{type:`ArgumentPlaceholder`}}function xn(e,t){let n={type:`BindExpression`,object:e,callee:t},r=a.BindExpression;return i(r.object,n,`object`,e,1),i(r.callee,n,`callee`,t,1),n}function Sn(e){let t={type:`Decorator`,expression:e},n=a.Decorator;return i(n.expression,t,`expression`,e,1),t}function Cn(e,t=!1){let n={type:`DoExpression`,body:e,async:t},r=a.DoExpression;return i(r.body,n,`body`,e,1),i(r.async,n,`async`,t),n}function wn(e){let t={type:`ExportDefaultSpecifier`,exported:e},n=a.ExportDefaultSpecifier;return i(n.exported,t,`exported`,e,1),t}function Tn(e){let t={type:`RecordExpression`,properties:e},n=a.RecordExpression;return i(n.properties,t,`properties`,e,1),t}function En(e=[]){let t={type:`TupleExpression`,elements:e},n=a.TupleExpression;return i(n.elements,t,`elements`,e,1),t}function Dn(e){let t={type:`DecimalLiteral`,value:e},n=a.DecimalLiteral;return i(n.value,t,`value`,e),t}function On(e){let t={type:`ModuleExpression`,body:e},n=a.ModuleExpression;return i(n.body,t,`body`,e,1),t}function kn(){return{type:`TopicReference`}}function An(e){let t={type:`PipelineTopicExpression`,expression:e},n=a.PipelineTopicExpression;return i(n.expression,t,`expression`,e,1),t}function jn(e){let t={type:`PipelineBareFunction`,callee:e},n=a.PipelineBareFunction;return i(n.callee,t,`callee`,e,1),t}function Mn(){return{type:`PipelinePrimaryTopicReference`}}function Nn(){return{type:`VoidPattern`}}function Pn(e){let t={type:`TSParameterProperty`,parameter:e},n=a.TSParameterProperty;return i(n.parameter,t,`parameter`,e,1),t}function Fn(e=null,t=null,n,r=null){let o={type:`TSDeclareFunction`,id:e,typeParameters:t,params:n,returnType:r},s=a.TSDeclareFunction;return i(s.id,o,`id`,e,1),i(s.typeParameters,o,`typeParameters`,t,1),i(s.params,o,`params`,n,1),i(s.returnType,o,`returnType`,r,1),o}function In(e=null,t,n=null,r,o=null){let s={type:`TSDeclareMethod`,decorators:e,key:t,typeParameters:n,params:r,returnType:o},c=a.TSDeclareMethod;return i(c.decorators,s,`decorators`,e,1),i(c.key,s,`key`,t,1),i(c.typeParameters,s,`typeParameters`,n,1),i(c.params,s,`params`,r,1),i(c.returnType,s,`returnType`,o,1),s}function Ln(e,t){let n={type:`TSQualifiedName`,left:e,right:t},r=a.TSQualifiedName;return i(r.left,n,`left`,e,1),i(r.right,n,`right`,t,1),n}function Rn(e=null,t,n=null){let r={type:`TSCallSignatureDeclaration`,typeParameters:e,parameters:t,typeAnnotation:n},o=a.TSCallSignatureDeclaration;return i(o.typeParameters,r,`typeParameters`,e,1),i(o.parameters,r,`parameters`,t,1),i(o.typeAnnotation,r,`typeAnnotation`,n,1),r}function zn(e=null,t,n=null){let r={type:`TSConstructSignatureDeclaration`,typeParameters:e,parameters:t,typeAnnotation:n},o=a.TSConstructSignatureDeclaration;return i(o.typeParameters,r,`typeParameters`,e,1),i(o.parameters,r,`parameters`,t,1),i(o.typeAnnotation,r,`typeAnnotation`,n,1),r}function Bn(e,t=null){let n={type:`TSPropertySignature`,key:e,typeAnnotation:t},r=a.TSPropertySignature;return i(r.key,n,`key`,e,1),i(r.typeAnnotation,n,`typeAnnotation`,t,1),n}function Vn(e,t=null,n,r=null){let o={type:`TSMethodSignature`,key:e,typeParameters:t,parameters:n,typeAnnotation:r,kind:null},s=a.TSMethodSignature;return i(s.key,o,`key`,e,1),i(s.typeParameters,o,`typeParameters`,t,1),i(s.parameters,o,`parameters`,n,1),i(s.typeAnnotation,o,`typeAnnotation`,r,1),o}function Hn(e,t=null){let n={type:`TSIndexSignature`,parameters:e,typeAnnotation:t},r=a.TSIndexSignature;return i(r.parameters,n,`parameters`,e,1),i(r.typeAnnotation,n,`typeAnnotation`,t,1),n}function Un(){return{type:`TSAnyKeyword`}}function Wn(){return{type:`TSBooleanKeyword`}}function Gn(){return{type:`TSBigIntKeyword`}}function Kn(){return{type:`TSIntrinsicKeyword`}}function qn(){return{type:`TSNeverKeyword`}}function Jn(){return{type:`TSNullKeyword`}}function Yn(){return{type:`TSNumberKeyword`}}function Xn(){return{type:`TSObjectKeyword`}}function Zn(){return{type:`TSStringKeyword`}}function Qn(){return{type:`TSSymbolKeyword`}}function $n(){return{type:`TSUndefinedKeyword`}}function er(){return{type:`TSUnknownKeyword`}}function tr(){return{type:`TSVoidKeyword`}}function nr(){return{type:`TSThisType`}}function rr(e=null,t,n=null){let r={type:`TSFunctionType`,typeParameters:e,parameters:t,typeAnnotation:n},o=a.TSFunctionType;return i(o.typeParameters,r,`typeParameters`,e,1),i(o.parameters,r,`parameters`,t,1),i(o.typeAnnotation,r,`typeAnnotation`,n,1),r}function ir(e=null,t,n=null){let r={type:`TSConstructorType`,typeParameters:e,parameters:t,typeAnnotation:n},o=a.TSConstructorType;return i(o.typeParameters,r,`typeParameters`,e,1),i(o.parameters,r,`parameters`,t,1),i(o.typeAnnotation,r,`typeAnnotation`,n,1),r}function ar(e,t=null){let n={type:`TSTypeReference`,typeName:e,typeParameters:t},r=a.TSTypeReference;return i(r.typeName,n,`typeName`,e,1),i(r.typeParameters,n,`typeParameters`,t,1),n}function or(e,t=null,n=null){let r={type:`TSTypePredicate`,parameterName:e,typeAnnotation:t,asserts:n},o=a.TSTypePredicate;return i(o.parameterName,r,`parameterName`,e,1),i(o.typeAnnotation,r,`typeAnnotation`,t,1),i(o.asserts,r,`asserts`,n),r}function sr(e,t=null){let n={type:`TSTypeQuery`,exprName:e,typeParameters:t},r=a.TSTypeQuery;return i(r.exprName,n,`exprName`,e,1),i(r.typeParameters,n,`typeParameters`,t,1),n}function cr(e){let t={type:`TSTypeLiteral`,members:e},n=a.TSTypeLiteral;return i(n.members,t,`members`,e,1),t}function lr(e){let t={type:`TSArrayType`,elementType:e},n=a.TSArrayType;return i(n.elementType,t,`elementType`,e,1),t}function ur(e){let t={type:`TSTupleType`,elementTypes:e},n=a.TSTupleType;return i(n.elementTypes,t,`elementTypes`,e,1),t}function dr(e){let t={type:`TSOptionalType`,typeAnnotation:e},n=a.TSOptionalType;return i(n.typeAnnotation,t,`typeAnnotation`,e,1),t}function fr(e){let t={type:`TSRestType`,typeAnnotation:e},n=a.TSRestType;return i(n.typeAnnotation,t,`typeAnnotation`,e,1),t}function pr(e,t,n=!1){let r={type:`TSNamedTupleMember`,label:e,elementType:t,optional:n},o=a.TSNamedTupleMember;return i(o.label,r,`label`,e,1),i(o.elementType,r,`elementType`,t,1),i(o.optional,r,`optional`,n),r}function mr(e){let t={type:`TSUnionType`,types:e},n=a.TSUnionType;return i(n.types,t,`types`,e,1),t}function hr(e){let t={type:`TSIntersectionType`,types:e},n=a.TSIntersectionType;return i(n.types,t,`types`,e,1),t}function gr(e,t,n,r){let o={type:`TSConditionalType`,checkType:e,extendsType:t,trueType:n,falseType:r},s=a.TSConditionalType;return i(s.checkType,o,`checkType`,e,1),i(s.extendsType,o,`extendsType`,t,1),i(s.trueType,o,`trueType`,n,1),i(s.falseType,o,`falseType`,r,1),o}function _r(e){let t={type:`TSInferType`,typeParameter:e},n=a.TSInferType;return i(n.typeParameter,t,`typeParameter`,e,1),t}function vr(e){let t={type:`TSParenthesizedType`,typeAnnotation:e},n=a.TSParenthesizedType;return i(n.typeAnnotation,t,`typeAnnotation`,e,1),t}function yr(e,t=`keyof`){let n={type:`TSTypeOperator`,typeAnnotation:e,operator:t},r=a.TSTypeOperator;return i(r.typeAnnotation,n,`typeAnnotation`,e,1),i(r.operator,n,`operator`,t),n}function br(e,t){let n={type:`TSIndexedAccessType`,objectType:e,indexType:t},r=a.TSIndexedAccessType;return i(r.objectType,n,`objectType`,e,1),i(r.indexType,n,`indexType`,t,1),n}function xr(e,t=null,n=null){let r={type:`TSMappedType`,typeParameter:e,typeAnnotation:t,nameType:n},o=a.TSMappedType;return i(o.typeParameter,r,`typeParameter`,e,1),i(o.typeAnnotation,r,`typeAnnotation`,t,1),i(o.nameType,r,`nameType`,n,1),r}function Sr(e,t){let n={type:`TSTemplateLiteralType`,quasis:e,types:t},r=a.TSTemplateLiteralType;return i(r.quasis,n,`quasis`,e,1),i(r.types,n,`types`,t,1),n}function Cr(e){let t={type:`TSLiteralType`,literal:e},n=a.TSLiteralType;return i(n.literal,t,`literal`,e,1),t}function wr(e,t=null){let n={type:`TSExpressionWithTypeArguments`,expression:e,typeParameters:t},r=a.TSExpressionWithTypeArguments;return i(r.expression,n,`expression`,e,1),i(r.typeParameters,n,`typeParameters`,t,1),n}function Tr(e,t=null,n=null,r){let o={type:`TSInterfaceDeclaration`,id:e,typeParameters:t,extends:n,body:r},s=a.TSInterfaceDeclaration;return i(s.id,o,`id`,e,1),i(s.typeParameters,o,`typeParameters`,t,1),i(s.extends,o,`extends`,n,1),i(s.body,o,`body`,r,1),o}function Er(e){let t={type:`TSInterfaceBody`,body:e},n=a.TSInterfaceBody;return i(n.body,t,`body`,e,1),t}function Dr(e,t=null,n){let r={type:`TSTypeAliasDeclaration`,id:e,typeParameters:t,typeAnnotation:n},o=a.TSTypeAliasDeclaration;return i(o.id,r,`id`,e,1),i(o.typeParameters,r,`typeParameters`,t,1),i(o.typeAnnotation,r,`typeAnnotation`,n,1),r}function Or(e,t=null){let n={type:`TSInstantiationExpression`,expression:e,typeParameters:t},r=a.TSInstantiationExpression;return i(r.expression,n,`expression`,e,1),i(r.typeParameters,n,`typeParameters`,t,1),n}function kr(e,t){let n={type:`TSAsExpression`,expression:e,typeAnnotation:t},r=a.TSAsExpression;return i(r.expression,n,`expression`,e,1),i(r.typeAnnotation,n,`typeAnnotation`,t,1),n}function Ar(e,t){let n={type:`TSSatisfiesExpression`,expression:e,typeAnnotation:t},r=a.TSSatisfiesExpression;return i(r.expression,n,`expression`,e,1),i(r.typeAnnotation,n,`typeAnnotation`,t,1),n}function jr(e,t){let n={type:`TSTypeAssertion`,typeAnnotation:e,expression:t},r=a.TSTypeAssertion;return i(r.typeAnnotation,n,`typeAnnotation`,e,1),i(r.expression,n,`expression`,t,1),n}function Mr(e){let t={type:`TSEnumBody`,members:e},n=a.TSEnumBody;return i(n.members,t,`members`,e,1),t}function Nr(e,t){let n={type:`TSEnumDeclaration`,id:e,members:t},r=a.TSEnumDeclaration;return i(r.id,n,`id`,e,1),i(r.members,n,`members`,t,1),n}function Pr(e,t=null){let n={type:`TSEnumMember`,id:e,initializer:t},r=a.TSEnumMember;return i(r.id,n,`id`,e,1),i(r.initializer,n,`initializer`,t,1),n}function Fr(e,t){let n={type:`TSModuleDeclaration`,id:e,body:t,kind:null},r=a.TSModuleDeclaration;return i(r.id,n,`id`,e,1),i(r.body,n,`body`,t,1),n}function Ir(e){let t={type:`TSModuleBlock`,body:e},n=a.TSModuleBlock;return i(n.body,t,`body`,e,1),t}function Lr(e,t=null,n=null){let r={type:`TSImportType`,argument:e,qualifier:t,typeParameters:n},o=a.TSImportType;return i(o.argument,r,`argument`,e,1),i(o.qualifier,r,`qualifier`,t,1),i(o.typeParameters,r,`typeParameters`,n,1),r}function Rr(e,t){let n={type:`TSImportEqualsDeclaration`,id:e,moduleReference:t,isExport:null},r=a.TSImportEqualsDeclaration;return i(r.id,n,`id`,e,1),i(r.moduleReference,n,`moduleReference`,t,1),n}function zr(e){let t={type:`TSExternalModuleReference`,expression:e},n=a.TSExternalModuleReference;return i(n.expression,t,`expression`,e,1),t}function Br(e){let t={type:`TSNonNullExpression`,expression:e},n=a.TSNonNullExpression;return i(n.expression,t,`expression`,e,1),t}function Vr(e){let t={type:`TSExportAssignment`,expression:e},n=a.TSExportAssignment;return i(n.expression,t,`expression`,e,1),t}function Hr(e){let t={type:`TSNamespaceExportDeclaration`,id:e},n=a.TSNamespaceExportDeclaration;return i(n.id,t,`id`,e,1),t}function Ur(e){let t={type:`TSTypeAnnotation`,typeAnnotation:e},n=a.TSTypeAnnotation;return i(n.typeAnnotation,t,`typeAnnotation`,e,1),t}function Wr(e){let t={type:`TSTypeParameterInstantiation`,params:e},n=a.TSTypeParameterInstantiation;return i(n.params,t,`params`,e,1),t}function Gr(e){let t={type:`TSTypeParameterDeclaration`,params:e},n=a.TSTypeParameterDeclaration;return i(n.params,t,`params`,e,1),t}function Kr(e=null,t=null,n){let r={type:`TSTypeParameter`,constraint:e,default:t,name:n},o=a.TSTypeParameter;return i(o.constraint,r,`constraint`,e,1),i(o.default,r,`default`,t,1),i(o.name,r,`name`,n),r}function qr(e){return(0,n.default)(`NumberLiteral`,`NumericLiteral`,`The node type `),se(e)}function Jr(e,t=``){return(0,n.default)(`RegexLiteral`,`RegExpLiteral`,`The node type `),O(e,t)}function Yr(e){return(0,n.default)(`RestProperty`,`RestElement`,`The node type `),N(e)}function Xr(e){return(0,n.default)(`SpreadProperty`,`SpreadElement`,`The node type `),Le(e)}})),ye=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.JSXIdentifier=e.JSXFragment=e.JSXExpressionContainer=e.JSXEmptyExpression=e.JSXElement=e.JSXClosingFragment=e.JSXClosingElement=e.JSXAttribute=e.IntersectionTypeAnnotation=e.InterpreterDirective=e.InterfaceTypeAnnotation=e.InterfaceExtends=e.InterfaceDeclaration=e.InferredPredicate=e.IndexedAccessType=e.ImportSpecifier=e.ImportNamespaceSpecifier=e.ImportExpression=e.ImportDefaultSpecifier=e.ImportDeclaration=e.ImportAttribute=e.Import=e.IfStatement=e.Identifier=e.GenericTypeAnnotation=e.FunctionTypeParam=e.FunctionTypeAnnotation=e.FunctionExpression=e.FunctionDeclaration=e.ForStatement=e.ForOfStatement=e.ForInStatement=e.File=e.ExpressionStatement=e.ExportSpecifier=e.ExportNamespaceSpecifier=e.ExportNamedDeclaration=e.ExportDefaultSpecifier=e.ExportDefaultDeclaration=e.ExportAllDeclaration=e.ExistsTypeAnnotation=e.EnumSymbolBody=e.EnumStringMember=e.EnumStringBody=e.EnumNumberMember=e.EnumNumberBody=e.EnumDefaultedMember=e.EnumDeclaration=e.EnumBooleanMember=e.EnumBooleanBody=e.EmptyTypeAnnotation=e.EmptyStatement=e.DoWhileStatement=e.DoExpression=e.DirectiveLiteral=e.Directive=e.Decorator=e.DeclaredPredicate=e.DeclareVariable=e.DeclareTypeAlias=e.DeclareOpaqueType=e.DeclareModuleExports=e.DeclareModule=e.DeclareInterface=e.DeclareFunction=e.DeclareExportDeclaration=e.DeclareExportAllDeclaration=e.DeclareClass=e.DecimalLiteral=e.DebuggerStatement=e.ContinueStatement=e.ConditionalExpression=e.ClassProperty=e.ClassPrivateProperty=e.ClassPrivateMethod=e.ClassMethod=e.ClassImplements=e.ClassExpression=e.ClassDeclaration=e.ClassBody=e.ClassAccessorProperty=e.CatchClause=e.CallExpression=e.BreakStatement=e.BooleanTypeAnnotation=e.BooleanLiteralTypeAnnotation=e.BooleanLiteral=e.BlockStatement=e.BindExpression=e.BinaryExpression=e.BigIntLiteral=e.AwaitExpression=e.AssignmentPattern=e.AssignmentExpression=e.ArrowFunctionExpression=e.ArrayTypeAnnotation=e.ArrayPattern=e.ArrayExpression=e.ArgumentPlaceholder=e.AnyTypeAnnotation=void 0,e.TSNumberKeyword=e.TSNullKeyword=e.TSNonNullExpression=e.TSNeverKeyword=e.TSNamespaceExportDeclaration=e.TSNamedTupleMember=e.TSModuleDeclaration=e.TSModuleBlock=e.TSMethodSignature=e.TSMappedType=e.TSLiteralType=e.TSIntrinsicKeyword=e.TSIntersectionType=e.TSInterfaceDeclaration=e.TSInterfaceBody=e.TSInstantiationExpression=e.TSInferType=e.TSIndexedAccessType=e.TSIndexSignature=e.TSImportType=e.TSImportEqualsDeclaration=e.TSFunctionType=e.TSExternalModuleReference=e.TSExpressionWithTypeArguments=e.TSExportAssignment=e.TSEnumMember=e.TSEnumDeclaration=e.TSEnumBody=e.TSDeclareMethod=e.TSDeclareFunction=e.TSConstructorType=e.TSConstructSignatureDeclaration=e.TSConditionalType=e.TSCallSignatureDeclaration=e.TSBooleanKeyword=e.TSBigIntKeyword=e.TSAsExpression=e.TSArrayType=e.TSAnyKeyword=e.SymbolTypeAnnotation=e.SwitchStatement=e.SwitchCase=e.Super=e.StringTypeAnnotation=e.StringLiteralTypeAnnotation=e.StringLiteral=e.StaticBlock=e.SpreadProperty=e.SpreadElement=e.SequenceExpression=e.ReturnStatement=e.RestProperty=e.RestElement=e.RegexLiteral=e.RegExpLiteral=e.RecordExpression=e.QualifiedTypeIdentifier=e.Program=e.PrivateName=e.Placeholder=e.PipelineTopicExpression=e.PipelinePrimaryTopicReference=e.PipelineBareFunction=e.ParenthesizedExpression=e.OptionalMemberExpression=e.OptionalIndexedAccessType=e.OptionalCallExpression=e.OpaqueType=e.ObjectTypeSpreadProperty=e.ObjectTypeProperty=e.ObjectTypeInternalSlot=e.ObjectTypeIndexer=e.ObjectTypeCallProperty=e.ObjectTypeAnnotation=e.ObjectProperty=e.ObjectPattern=e.ObjectMethod=e.ObjectExpression=e.NumericLiteral=e.NumberTypeAnnotation=e.NumberLiteralTypeAnnotation=e.NumberLiteral=e.NullableTypeAnnotation=e.NullLiteralTypeAnnotation=e.NullLiteral=e.Noop=e.NewExpression=e.ModuleExpression=e.MixedTypeAnnotation=e.MetaProperty=e.MemberExpression=e.LogicalExpression=e.LabeledStatement=e.JSXText=e.JSXSpreadChild=e.JSXSpreadAttribute=e.JSXOpeningFragment=e.JSXOpeningElement=e.JSXNamespacedName=e.JSXMemberExpression=void 0,e.YieldExpression=e.WithStatement=e.WhileStatement=e.VoidTypeAnnotation=e.VoidPattern=e.Variance=e.VariableDeclarator=e.VariableDeclaration=e.V8IntrinsicIdentifier=e.UpdateExpression=e.UnionTypeAnnotation=e.UnaryExpression=e.TypeofTypeAnnotation=e.TypeParameterInstantiation=e.TypeParameterDeclaration=e.TypeParameter=e.TypeCastExpression=e.TypeAnnotation=e.TypeAlias=e.TupleTypeAnnotation=e.TupleExpression=e.TryStatement=e.TopicReference=e.ThrowStatement=e.ThisTypeAnnotation=e.ThisExpression=e.TemplateLiteral=e.TemplateElement=e.TaggedTemplateExpression=e.TSVoidKeyword=e.TSUnknownKeyword=e.TSUnionType=e.TSUndefinedKeyword=e.TSTypeReference=e.TSTypeQuery=e.TSTypePredicate=e.TSTypeParameterInstantiation=e.TSTypeParameterDeclaration=e.TSTypeParameter=e.TSTypeOperator=e.TSTypeLiteral=e.TSTypeAssertion=e.TSTypeAnnotation=e.TSTypeAliasDeclaration=e.TSTupleType=e.TSThisType=e.TSTemplateLiteralType=e.TSSymbolKeyword=e.TSStringKeyword=e.TSSatisfiesExpression=e.TSRestType=e.TSQualifiedName=e.TSPropertySignature=e.TSParenthesizedType=e.TSParameterProperty=e.TSOptionalType=e.TSObjectKeyword=void 0;var t=ve();w();function n(e){return t[e]}e.ArrayExpression=n(`arrayExpression`),e.AssignmentExpression=n(`assignmentExpression`),e.BinaryExpression=n(`binaryExpression`),e.InterpreterDirective=n(`interpreterDirective`),e.Directive=n(`directive`),e.DirectiveLiteral=n(`directiveLiteral`),e.BlockStatement=n(`blockStatement`),e.BreakStatement=n(`breakStatement`),e.CallExpression=n(`callExpression`),e.CatchClause=n(`catchClause`),e.ConditionalExpression=n(`conditionalExpression`),e.ContinueStatement=n(`continueStatement`),e.DebuggerStatement=n(`debuggerStatement`),e.DoWhileStatement=n(`doWhileStatement`),e.EmptyStatement=n(`emptyStatement`),e.ExpressionStatement=n(`expressionStatement`),e.File=n(`file`),e.ForInStatement=n(`forInStatement`),e.ForStatement=n(`forStatement`),e.FunctionDeclaration=n(`functionDeclaration`),e.FunctionExpression=n(`functionExpression`),e.Identifier=n(`identifier`),e.IfStatement=n(`ifStatement`),e.LabeledStatement=n(`labeledStatement`),e.StringLiteral=n(`stringLiteral`),e.NumericLiteral=n(`numericLiteral`),e.NullLiteral=n(`nullLiteral`),e.BooleanLiteral=n(`booleanLiteral`),e.RegExpLiteral=n(`regExpLiteral`),e.LogicalExpression=n(`logicalExpression`),e.MemberExpression=n(`memberExpression`),e.NewExpression=n(`newExpression`),e.Program=n(`program`),e.ObjectExpression=n(`objectExpression`),e.ObjectMethod=n(`objectMethod`),e.ObjectProperty=n(`objectProperty`),e.RestElement=n(`restElement`),e.ReturnStatement=n(`returnStatement`),e.SequenceExpression=n(`sequenceExpression`),e.ParenthesizedExpression=n(`parenthesizedExpression`),e.SwitchCase=n(`switchCase`),e.SwitchStatement=n(`switchStatement`),e.ThisExpression=n(`thisExpression`),e.ThrowStatement=n(`throwStatement`),e.TryStatement=n(`tryStatement`),e.UnaryExpression=n(`unaryExpression`),e.UpdateExpression=n(`updateExpression`),e.VariableDeclaration=n(`variableDeclaration`),e.VariableDeclarator=n(`variableDeclarator`),e.WhileStatement=n(`whileStatement`),e.WithStatement=n(`withStatement`),e.AssignmentPattern=n(`assignmentPattern`),e.ArrayPattern=n(`arrayPattern`),e.ArrowFunctionExpression=n(`arrowFunctionExpression`),e.ClassBody=n(`classBody`),e.ClassExpression=n(`classExpression`),e.ClassDeclaration=n(`classDeclaration`),e.ExportAllDeclaration=n(`exportAllDeclaration`),e.ExportDefaultDeclaration=n(`exportDefaultDeclaration`),e.ExportNamedDeclaration=n(`exportNamedDeclaration`),e.ExportSpecifier=n(`exportSpecifier`),e.ForOfStatement=n(`forOfStatement`),e.ImportDeclaration=n(`importDeclaration`),e.ImportDefaultSpecifier=n(`importDefaultSpecifier`),e.ImportNamespaceSpecifier=n(`importNamespaceSpecifier`),e.ImportSpecifier=n(`importSpecifier`),e.ImportExpression=n(`importExpression`),e.MetaProperty=n(`metaProperty`),e.ClassMethod=n(`classMethod`),e.ObjectPattern=n(`objectPattern`),e.SpreadElement=n(`spreadElement`),e.Super=n(`super`),e.TaggedTemplateExpression=n(`taggedTemplateExpression`),e.TemplateElement=n(`templateElement`),e.TemplateLiteral=n(`templateLiteral`),e.YieldExpression=n(`yieldExpression`),e.AwaitExpression=n(`awaitExpression`),e.Import=n(`import`),e.BigIntLiteral=n(`bigIntLiteral`),e.ExportNamespaceSpecifier=n(`exportNamespaceSpecifier`),e.OptionalMemberExpression=n(`optionalMemberExpression`),e.OptionalCallExpression=n(`optionalCallExpression`),e.ClassProperty=n(`classProperty`),e.ClassAccessorProperty=n(`classAccessorProperty`),e.ClassPrivateProperty=n(`classPrivateProperty`),e.ClassPrivateMethod=n(`classPrivateMethod`),e.PrivateName=n(`privateName`),e.StaticBlock=n(`staticBlock`),e.ImportAttribute=n(`importAttribute`),e.AnyTypeAnnotation=n(`anyTypeAnnotation`),e.ArrayTypeAnnotation=n(`arrayTypeAnnotation`),e.BooleanTypeAnnotation=n(`booleanTypeAnnotation`),e.BooleanLiteralTypeAnnotation=n(`booleanLiteralTypeAnnotation`),e.NullLiteralTypeAnnotation=n(`nullLiteralTypeAnnotation`),e.ClassImplements=n(`classImplements`),e.DeclareClass=n(`declareClass`),e.DeclareFunction=n(`declareFunction`),e.DeclareInterface=n(`declareInterface`),e.DeclareModule=n(`declareModule`),e.DeclareModuleExports=n(`declareModuleExports`),e.DeclareTypeAlias=n(`declareTypeAlias`),e.DeclareOpaqueType=n(`declareOpaqueType`),e.DeclareVariable=n(`declareVariable`),e.DeclareExportDeclaration=n(`declareExportDeclaration`),e.DeclareExportAllDeclaration=n(`declareExportAllDeclaration`),e.DeclaredPredicate=n(`declaredPredicate`),e.ExistsTypeAnnotation=n(`existsTypeAnnotation`),e.FunctionTypeAnnotation=n(`functionTypeAnnotation`),e.FunctionTypeParam=n(`functionTypeParam`),e.GenericTypeAnnotation=n(`genericTypeAnnotation`),e.InferredPredicate=n(`inferredPredicate`),e.InterfaceExtends=n(`interfaceExtends`),e.InterfaceDeclaration=n(`interfaceDeclaration`),e.InterfaceTypeAnnotation=n(`interfaceTypeAnnotation`),e.IntersectionTypeAnnotation=n(`intersectionTypeAnnotation`),e.MixedTypeAnnotation=n(`mixedTypeAnnotation`),e.EmptyTypeAnnotation=n(`emptyTypeAnnotation`),e.NullableTypeAnnotation=n(`nullableTypeAnnotation`),e.NumberLiteralTypeAnnotation=n(`numberLiteralTypeAnnotation`),e.NumberTypeAnnotation=n(`numberTypeAnnotation`),e.ObjectTypeAnnotation=n(`objectTypeAnnotation`),e.ObjectTypeInternalSlot=n(`objectTypeInternalSlot`),e.ObjectTypeCallProperty=n(`objectTypeCallProperty`),e.ObjectTypeIndexer=n(`objectTypeIndexer`),e.ObjectTypeProperty=n(`objectTypeProperty`),e.ObjectTypeSpreadProperty=n(`objectTypeSpreadProperty`),e.OpaqueType=n(`opaqueType`),e.QualifiedTypeIdentifier=n(`qualifiedTypeIdentifier`),e.StringLiteralTypeAnnotation=n(`stringLiteralTypeAnnotation`),e.StringTypeAnnotation=n(`stringTypeAnnotation`),e.SymbolTypeAnnotation=n(`symbolTypeAnnotation`),e.ThisTypeAnnotation=n(`thisTypeAnnotation`),e.TupleTypeAnnotation=n(`tupleTypeAnnotation`),e.TypeofTypeAnnotation=n(`typeofTypeAnnotation`),e.TypeAlias=n(`typeAlias`),e.TypeAnnotation=n(`typeAnnotation`),e.TypeCastExpression=n(`typeCastExpression`),e.TypeParameter=n(`typeParameter`),e.TypeParameterDeclaration=n(`typeParameterDeclaration`),e.TypeParameterInstantiation=n(`typeParameterInstantiation`),e.UnionTypeAnnotation=n(`unionTypeAnnotation`),e.Variance=n(`variance`),e.VoidTypeAnnotation=n(`voidTypeAnnotation`),e.EnumDeclaration=n(`enumDeclaration`),e.EnumBooleanBody=n(`enumBooleanBody`),e.EnumNumberBody=n(`enumNumberBody`),e.EnumStringBody=n(`enumStringBody`),e.EnumSymbolBody=n(`enumSymbolBody`),e.EnumBooleanMember=n(`enumBooleanMember`),e.EnumNumberMember=n(`enumNumberMember`),e.EnumStringMember=n(`enumStringMember`),e.EnumDefaultedMember=n(`enumDefaultedMember`),e.IndexedAccessType=n(`indexedAccessType`),e.OptionalIndexedAccessType=n(`optionalIndexedAccessType`),e.JSXAttribute=n(`jsxAttribute`),e.JSXClosingElement=n(`jsxClosingElement`),e.JSXElement=n(`jsxElement`),e.JSXEmptyExpression=n(`jsxEmptyExpression`),e.JSXExpressionContainer=n(`jsxExpressionContainer`),e.JSXSpreadChild=n(`jsxSpreadChild`),e.JSXIdentifier=n(`jsxIdentifier`),e.JSXMemberExpression=n(`jsxMemberExpression`),e.JSXNamespacedName=n(`jsxNamespacedName`),e.JSXOpeningElement=n(`jsxOpeningElement`),e.JSXSpreadAttribute=n(`jsxSpreadAttribute`),e.JSXText=n(`jsxText`),e.JSXFragment=n(`jsxFragment`),e.JSXOpeningFragment=n(`jsxOpeningFragment`),e.JSXClosingFragment=n(`jsxClosingFragment`),e.Noop=n(`noop`),e.Placeholder=n(`placeholder`),e.V8IntrinsicIdentifier=n(`v8IntrinsicIdentifier`),e.ArgumentPlaceholder=n(`argumentPlaceholder`),e.BindExpression=n(`bindExpression`),e.Decorator=n(`decorator`),e.DoExpression=n(`doExpression`),e.ExportDefaultSpecifier=n(`exportDefaultSpecifier`),e.RecordExpression=n(`recordExpression`),e.TupleExpression=n(`tupleExpression`),e.DecimalLiteral=n(`decimalLiteral`),e.ModuleExpression=n(`moduleExpression`),e.TopicReference=n(`topicReference`),e.PipelineTopicExpression=n(`pipelineTopicExpression`),e.PipelineBareFunction=n(`pipelineBareFunction`),e.PipelinePrimaryTopicReference=n(`pipelinePrimaryTopicReference`),e.VoidPattern=n(`voidPattern`),e.TSParameterProperty=n(`tsParameterProperty`),e.TSDeclareFunction=n(`tsDeclareFunction`),e.TSDeclareMethod=n(`tsDeclareMethod`),e.TSQualifiedName=n(`tsQualifiedName`),e.TSCallSignatureDeclaration=n(`tsCallSignatureDeclaration`),e.TSConstructSignatureDeclaration=n(`tsConstructSignatureDeclaration`),e.TSPropertySignature=n(`tsPropertySignature`),e.TSMethodSignature=n(`tsMethodSignature`),e.TSIndexSignature=n(`tsIndexSignature`),e.TSAnyKeyword=n(`tsAnyKeyword`),e.TSBooleanKeyword=n(`tsBooleanKeyword`),e.TSBigIntKeyword=n(`tsBigIntKeyword`),e.TSIntrinsicKeyword=n(`tsIntrinsicKeyword`),e.TSNeverKeyword=n(`tsNeverKeyword`),e.TSNullKeyword=n(`tsNullKeyword`),e.TSNumberKeyword=n(`tsNumberKeyword`),e.TSObjectKeyword=n(`tsObjectKeyword`),e.TSStringKeyword=n(`tsStringKeyword`),e.TSSymbolKeyword=n(`tsSymbolKeyword`),e.TSUndefinedKeyword=n(`tsUndefinedKeyword`),e.TSUnknownKeyword=n(`tsUnknownKeyword`),e.TSVoidKeyword=n(`tsVoidKeyword`),e.TSThisType=n(`tsThisType`),e.TSFunctionType=n(`tsFunctionType`),e.TSConstructorType=n(`tsConstructorType`),e.TSTypeReference=n(`tsTypeReference`),e.TSTypePredicate=n(`tsTypePredicate`),e.TSTypeQuery=n(`tsTypeQuery`),e.TSTypeLiteral=n(`tsTypeLiteral`),e.TSArrayType=n(`tsArrayType`),e.TSTupleType=n(`tsTupleType`),e.TSOptionalType=n(`tsOptionalType`),e.TSRestType=n(`tsRestType`),e.TSNamedTupleMember=n(`tsNamedTupleMember`),e.TSUnionType=n(`tsUnionType`),e.TSIntersectionType=n(`tsIntersectionType`),e.TSConditionalType=n(`tsConditionalType`),e.TSInferType=n(`tsInferType`),e.TSParenthesizedType=n(`tsParenthesizedType`),e.TSTypeOperator=n(`tsTypeOperator`),e.TSIndexedAccessType=n(`tsIndexedAccessType`),e.TSMappedType=n(`tsMappedType`),e.TSTemplateLiteralType=n(`tsTemplateLiteralType`),e.TSLiteralType=n(`tsLiteralType`),e.TSExpressionWithTypeArguments=n(`tsExpressionWithTypeArguments`),e.TSInterfaceDeclaration=n(`tsInterfaceDeclaration`),e.TSInterfaceBody=n(`tsInterfaceBody`),e.TSTypeAliasDeclaration=n(`tsTypeAliasDeclaration`),e.TSInstantiationExpression=n(`tsInstantiationExpression`),e.TSAsExpression=n(`tsAsExpression`),e.TSSatisfiesExpression=n(`tsSatisfiesExpression`),e.TSTypeAssertion=n(`tsTypeAssertion`),e.TSEnumBody=n(`tsEnumBody`),e.TSEnumDeclaration=n(`tsEnumDeclaration`),e.TSEnumMember=n(`tsEnumMember`),e.TSModuleDeclaration=n(`tsModuleDeclaration`),e.TSModuleBlock=n(`tsModuleBlock`),e.TSImportType=n(`tsImportType`),e.TSImportEqualsDeclaration=n(`tsImportEqualsDeclaration`),e.TSExternalModuleReference=n(`tsExternalModuleReference`),e.TSNonNullExpression=n(`tsNonNullExpression`),e.TSExportAssignment=n(`tsExportAssignment`),e.TSNamespaceExportDeclaration=n(`tsNamespaceExportDeclaration`),e.TSTypeAnnotation=n(`tsTypeAnnotation`),e.TSTypeParameterInstantiation=n(`tsTypeParameterInstantiation`),e.TSTypeParameterDeclaration=n(`tsTypeParameterDeclaration`),e.TSTypeParameter=n(`tsTypeParameter`),e.NumberLiteral=t.numberLiteral,e.RegexLiteral=t.regexLiteral,e.RestProperty=t.restProperty,e.SpreadProperty=t.spreadProperty})),L=e((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t=ve();Object.keys(t).forEach(function(n){n!=="default"&&n!=="__esModule"&&(n in e&&e[n]===t[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[n]}}))});var n=ye();Object.keys(n).forEach(function(t){t!=="default"&&t!=="__esModule"&&(t in e&&e[t]===n[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return n[t]}}))})})),be=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=L(),n=K();function r(e,r){let i=e.value.split(/\r\n|\n|\r/),a=0;for(let e=0;e<i.length;e++)/[^ \t]/.exec(i[e])&&(a=e);let o=``;for(let e=0;e<i.length;e++){let t=i[e],n=e===0,r=e===i.length-1,s=e===a,c=t.replace(/\t/g,` `);n||(c=c.replace(/^ +/,``)),r||(c=c.replace(/ +$/,``)),c&&(s||(c+=` `),o+=c)}o&&r.push((0,n.inherits)((0,t.stringLiteral)(o),e))}})),xe=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T(),n=be();function r(e){let r=[];for(let i=0;i<e.children.length;i++){let a=e.children[i];(0,t.isJSXText)(a)?(0,n.default)(a,r):((0,t.isJSXExpressionContainer)(a)&&(a=a.expression),(0,t.isJSXEmptyExpression)(a)||r.push(a))}return r}})),Se=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=I();function n(e){return!!(e&&t.VISITOR_KEYS[e.type])}})),R=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=Se();function n(e){if(!(0,t.default)(e)){let t=(e==null?void 0:e.type)??JSON.stringify(e);throw TypeError(`Not a valid node of type "${t}"`)}}})),Ce=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.assertAccessor=Ti,e.assertAnyTypeAnnotation=U,e.assertArgumentPlaceholder=_n,e.assertArrayExpression=i,e.assertArrayPattern=be,e.assertArrayTypeAnnotation=Qe,e.assertArrowFunctionExpression=xe,e.assertAssignmentExpression=a,e.assertAssignmentPattern=L,e.assertAwaitExpression=ze,e.assertBigIntLiteral=Ve,e.assertBinary=Kr,e.assertBinaryExpression=o,e.assertBindExpression=vn,e.assertBlock=Yr,e.assertBlockParent=Jr,e.assertBlockStatement=u,e.assertBooleanLiteral=oe,e.assertBooleanLiteralTypeAnnotation=W,e.assertBooleanTypeAnnotation=$e,e.assertBreakStatement=d,e.assertCallExpression=f,e.assertCatchClause=p,e.assertClass=xi,e.assertClassAccessorProperty=Ke,e.assertClassBody=Se,e.assertClassDeclaration=Ce,e.assertClassExpression=R,e.assertClassImplements=tt,e.assertClassMethod=H,e.assertClassPrivateMethod=Je,e.assertClassPrivateProperty=qe,e.assertClassProperty=Ge,e.assertCompletionStatement=Qr,e.assertConditional=$r,e.assertConditionalExpression=m,e.assertContinueStatement=h,e.assertDebuggerStatement=g,e.assertDecimalLiteral=wn,e.assertDeclaration=ci,e.assertDeclareClass=nt,e.assertDeclareExportAllDeclaration=dt,e.assertDeclareExportDeclaration=ut,e.assertDeclareFunction=rt,e.assertDeclareInterface=it,e.assertDeclareModule=at,e.assertDeclareModuleExports=ot,e.assertDeclareOpaqueType=ct,e.assertDeclareTypeAlias=st,e.assertDeclareVariable=lt,e.assertDeclaredPredicate=ft,e.assertDecorator=yn,e.assertDirective=c,e.assertDirectiveLiteral=l,e.assertDoExpression=bn,e.assertDoWhileStatement=_,e.assertEmptyStatement=ee,e.assertEmptyTypeAnnotation=xt,e.assertEnumBody=Mi,e.assertEnumBooleanBody=Ut,e.assertEnumBooleanMember=qt,e.assertEnumDeclaration=Ht,e.assertEnumDefaultedMember=Yt,e.assertEnumMember=Ni,e.assertEnumNumberBody=Wt,e.assertEnumNumberMember=$,e.assertEnumStringBody=Gt,e.assertEnumStringMember=Jt,e.assertEnumSymbolBody=Kt,e.assertExistsTypeAnnotation=pt,e.assertExportAllDeclaration=we,e.assertExportDeclaration=Ci,e.assertExportDefaultDeclaration=Te,e.assertExportDefaultSpecifier=xn,e.assertExportNamedDeclaration=z,e.assertExportNamespaceSpecifier=He,e.assertExportSpecifier=Ee,e.assertExpression=Gr,e.assertExpressionStatement=te,e.assertExpressionWrapper=ni,e.assertFile=ne,e.assertFlow=Di,e.assertFlowBaseAnnotation=ki,e.assertFlowDeclaration=Ai,e.assertFlowPredicate=ji,e.assertFlowType=Oi,e.assertFor=ri,e.assertForInStatement=re,e.assertForOfStatement=De,e.assertForStatement=v,e.assertForXStatement=ii,e.assertFunction=ai,e.assertFunctionDeclaration=y,e.assertFunctionExpression=b,e.assertFunctionParameter=li,e.assertFunctionParent=oi,e.assertFunctionTypeAnnotation=G,e.assertFunctionTypeParam=mt,e.assertGenericTypeAnnotation=K,e.assertIdentifier=x,e.assertIfStatement=S,e.assertImmutable=mi,e.assertImport=Be,e.assertImportAttribute=Ze,e.assertImportDeclaration=Oe,e.assertImportDefaultSpecifier=B,e.assertImportExpression=je,e.assertImportNamespaceSpecifier=ke,e.assertImportOrExportDeclaration=Si,e.assertImportSpecifier=Ae,e.assertIndexedAccessType=Xt,e.assertInferredPredicate=ht,e.assertInterfaceDeclaration=_t,e.assertInterfaceExtends=gt,e.assertInterfaceTypeAnnotation=vt,e.assertInterpreterDirective=s,e.assertIntersectionTypeAnnotation=yt,e.assertJSX=Pi,e.assertJSXAttribute=Qt,e.assertJSXClosingElement=$t,e.assertJSXClosingFragment=pn,e.assertJSXElement=en,e.assertJSXEmptyExpression=tn,e.assertJSXExpressionContainer=nn,e.assertJSXFragment=dn,e.assertJSXIdentifier=an,e.assertJSXMemberExpression=on,e.assertJSXNamespacedName=sn,e.assertJSXOpeningElement=cn,e.assertJSXOpeningFragment=fn,e.assertJSXSpreadAttribute=ln,e.assertJSXSpreadChild=rn,e.assertJSXText=un,e.assertLVal=di,e.assertLabeledStatement=C,e.assertLiteral=pi,e.assertLogicalExpression=E,e.assertLoop=ei,e.assertMemberExpression=D,e.assertMetaProperty=V,e.assertMethod=gi,e.assertMiscellaneous=Fi,e.assertMixedTypeAnnotation=bt,e.assertModuleDeclaration=Wi,e.assertModuleExpression=Tn,e.assertModuleSpecifier=wi,e.assertNewExpression=O,e.assertNoop=mn,e.assertNullLiteral=ae,e.assertNullLiteralTypeAnnotation=et,e.assertNullableTypeAnnotation=St,e.assertNumberLiteral=Bi,e.assertNumberLiteralTypeAnnotation=Ct,e.assertNumberTypeAnnotation=wt,e.assertNumericLiteral=T,e.assertObjectExpression=le,e.assertObjectMember=_i,e.assertObjectMethod=ue,e.assertObjectPattern=Me,e.assertObjectProperty=A,e.assertObjectTypeAnnotation=Tt,e.assertObjectTypeCallProperty=Et,e.assertObjectTypeIndexer=J,e.assertObjectTypeInternalSlot=q,e.assertObjectTypeProperty=Y,e.assertObjectTypeSpreadProperty=Dt,e.assertOpaqueType=Ot,e.assertOptionalCallExpression=We,e.assertOptionalIndexedAccessType=Zt,e.assertOptionalMemberExpression=Ue,e.assertParenthesizedExpression=N,e.assertPattern=bi,e.assertPatternLike=ui,e.assertPipelineBareFunction=On,e.assertPipelinePrimaryTopicReference=kn,e.assertPipelineTopicExpression=Dn,e.assertPlaceholder=hn,e.assertPrivate=Ei,e.assertPrivateName=Ye,e.assertProgram=ce,e.assertProperty=vi,e.assertPureish=si,e.assertQualifiedTypeIdentifier=X,e.assertRecordExpression=Sn,e.assertRegExpLiteral=se,e.assertRegexLiteral=Vi,e.assertRestElement=de,e.assertRestProperty=Hi,e.assertReturnStatement=j,e.assertScopable=qr,e.assertSequenceExpression=M,e.assertSpreadElement=Ne,e.assertSpreadProperty=Ui,e.assertStandardized=Wr,e.assertStatement=Xr,e.assertStaticBlock=Xe,e.assertStringLiteral=ie,e.assertStringLiteralTypeAnnotation=kt,e.assertStringTypeAnnotation=At,e.assertSuper=Pe,e.assertSwitchCase=P,e.assertSwitchStatement=fe,e.assertSymbolTypeAnnotation=jt,e.assertTSAnyKeyword=Bn,e.assertTSArrayType=or,e.assertTSAsExpression=Er,e.assertTSBaseType=zi,e.assertTSBigIntKeyword=Hn,e.assertTSBooleanKeyword=Vn,e.assertTSCallSignatureDeclaration=Fn,e.assertTSConditionalType=pr,e.assertTSConstructSignatureDeclaration=In,e.assertTSConstructorType=tr,e.assertTSDeclareFunction=Mn,e.assertTSDeclareMethod=Nn,e.assertTSEntityName=fi,e.assertTSEnumBody=kr,e.assertTSEnumDeclaration=Ar,e.assertTSEnumMember=jr,e.assertTSExportAssignment=Rr,e.assertTSExpressionWithTypeArguments=xr,e.assertTSExternalModuleReference=Ir,e.assertTSFunctionType=er,e.assertTSImportEqualsDeclaration=Fr,e.assertTSImportType=Pr,e.assertTSIndexSignature=zn,e.assertTSIndexedAccessType=_r,e.assertTSInferType=mr,e.assertTSInstantiationExpression=Tr,e.assertTSInterfaceBody=Cr,e.assertTSInterfaceDeclaration=Sr,e.assertTSIntersectionType=fr,e.assertTSIntrinsicKeyword=Un,e.assertTSLiteralType=br,e.assertTSMappedType=vr,e.assertTSMethodSignature=Rn,e.assertTSModuleBlock=Nr,e.assertTSModuleDeclaration=Mr,e.assertTSNamedTupleMember=ur,e.assertTSNamespaceExportDeclaration=zr,e.assertTSNeverKeyword=Wn,e.assertTSNonNullExpression=Lr,e.assertTSNullKeyword=Gn,e.assertTSNumberKeyword=Kn,e.assertTSObjectKeyword=qn,e.assertTSOptionalType=cr,e.assertTSParameterProperty=jn,e.assertTSParenthesizedType=hr,e.assertTSPropertySignature=Ln,e.assertTSQualifiedName=Pn,e.assertTSRestType=lr,e.assertTSSatisfiesExpression=Dr,e.assertTSStringKeyword=Jn,e.assertTSSymbolKeyword=Yn,e.assertTSTemplateLiteralType=yr,e.assertTSThisType=$n,e.assertTSTupleType=sr,e.assertTSType=Ri,e.assertTSTypeAliasDeclaration=wr,e.assertTSTypeAnnotation=Br,e.assertTSTypeAssertion=Or,e.assertTSTypeElement=Li,e.assertTSTypeLiteral=ar,e.assertTSTypeOperator=gr,e.assertTSTypeParameter=Ur,e.assertTSTypeParameterDeclaration=Hr,e.assertTSTypeParameterInstantiation=Vr,e.assertTSTypePredicate=rr,e.assertTSTypeQuery=ir,e.assertTSTypeReference=nr,e.assertTSUndefinedKeyword=Xn,e.assertTSUnionType=dr,e.assertTSUnknownKeyword=Zn,e.assertTSVoidKeyword=Qn,e.assertTaggedTemplateExpression=Fe,e.assertTemplateElement=Ie,e.assertTemplateLiteral=Le,e.assertTerminatorless=Zr,e.assertThisExpression=F,e.assertThisTypeAnnotation=Z,e.assertThrowStatement=pe,e.assertTopicReference=En,e.assertTryStatement=me,e.assertTupleExpression=Cn,e.assertTupleTypeAnnotation=Mt,e.assertTypeAlias=Pt,e.assertTypeAnnotation=Ft,e.assertTypeCastExpression=It,e.assertTypeParameter=Lt,e.assertTypeParameterDeclaration=Rt,e.assertTypeParameterInstantiation=zt,e.assertTypeScript=Ii,e.assertTypeofTypeAnnotation=Nt,e.assertUnaryExpression=he,e.assertUnaryLike=yi,e.assertUnionTypeAnnotation=Q,e.assertUpdateExpression=ge,e.assertUserWhitespacable=hi,e.assertV8IntrinsicIdentifier=gn,e.assertVariableDeclaration=I,e.assertVariableDeclarator=_e,e.assertVariance=Bt,e.assertVoidPattern=An,e.assertVoidTypeAnnotation=Vt,e.assertWhile=ti,e.assertWhileStatement=ve,e.assertWithStatement=ye,e.assertYieldExpression=Re;var t=k(),n=w();function r(e,n,r){if(!(0,t.default)(e,n,r))throw Error(`Expected type "${e}" with option ${JSON.stringify(r)}, but instead got "${n.type}".`)}function i(e,t){r(`ArrayExpression`,e,t)}function a(e,t){r(`AssignmentExpression`,e,t)}function o(e,t){r(`BinaryExpression`,e,t)}function s(e,t){r(`InterpreterDirective`,e,t)}function c(e,t){r(`Directive`,e,t)}function l(e,t){r(`DirectiveLiteral`,e,t)}function u(e,t){r(`BlockStatement`,e,t)}function d(e,t){r(`BreakStatement`,e,t)}function f(e,t){r(`CallExpression`,e,t)}function p(e,t){r(`CatchClause`,e,t)}function m(e,t){r(`ConditionalExpression`,e,t)}function h(e,t){r(`ContinueStatement`,e,t)}function g(e,t){r(`DebuggerStatement`,e,t)}function _(e,t){r(`DoWhileStatement`,e,t)}function ee(e,t){r(`EmptyStatement`,e,t)}function te(e,t){r(`ExpressionStatement`,e,t)}function ne(e,t){r(`File`,e,t)}function re(e,t){r(`ForInStatement`,e,t)}function v(e,t){r(`ForStatement`,e,t)}function y(e,t){r(`FunctionDeclaration`,e,t)}function b(e,t){r(`FunctionExpression`,e,t)}function x(e,t){r(`Identifier`,e,t)}function S(e,t){r(`IfStatement`,e,t)}function C(e,t){r(`LabeledStatement`,e,t)}function ie(e,t){r(`StringLiteral`,e,t)}function T(e,t){r(`NumericLiteral`,e,t)}function ae(e,t){r(`NullLiteral`,e,t)}function oe(e,t){r(`BooleanLiteral`,e,t)}function se(e,t){r(`RegExpLiteral`,e,t)}function E(e,t){r(`LogicalExpression`,e,t)}function D(e,t){r(`MemberExpression`,e,t)}function O(e,t){r(`NewExpression`,e,t)}function ce(e,t){r(`Program`,e,t)}function le(e,t){r(`ObjectExpression`,e,t)}function ue(e,t){r(`ObjectMethod`,e,t)}function A(e,t){r(`ObjectProperty`,e,t)}function de(e,t){r(`RestElement`,e,t)}function j(e,t){r(`ReturnStatement`,e,t)}function M(e,t){r(`SequenceExpression`,e,t)}function N(e,t){r(`ParenthesizedExpression`,e,t)}function P(e,t){r(`SwitchCase`,e,t)}function fe(e,t){r(`SwitchStatement`,e,t)}function F(e,t){r(`ThisExpression`,e,t)}function pe(e,t){r(`ThrowStatement`,e,t)}function me(e,t){r(`TryStatement`,e,t)}function he(e,t){r(`UnaryExpression`,e,t)}function ge(e,t){r(`UpdateExpression`,e,t)}function I(e,t){r(`VariableDeclaration`,e,t)}function _e(e,t){r(`VariableDeclarator`,e,t)}function ve(e,t){r(`WhileStatement`,e,t)}function ye(e,t){r(`WithStatement`,e,t)}function L(e,t){r(`AssignmentPattern`,e,t)}function be(e,t){r(`ArrayPattern`,e,t)}function xe(e,t){r(`ArrowFunctionExpression`,e,t)}function Se(e,t){r(`ClassBody`,e,t)}function R(e,t){r(`ClassExpression`,e,t)}function Ce(e,t){r(`ClassDeclaration`,e,t)}function we(e,t){r(`ExportAllDeclaration`,e,t)}function Te(e,t){r(`ExportDefaultDeclaration`,e,t)}function z(e,t){r(`ExportNamedDeclaration`,e,t)}function Ee(e,t){r(`ExportSpecifier`,e,t)}function De(e,t){r(`ForOfStatement`,e,t)}function Oe(e,t){r(`ImportDeclaration`,e,t)}function B(e,t){r(`ImportDefaultSpecifier`,e,t)}function ke(e,t){r(`ImportNamespaceSpecifier`,e,t)}function Ae(e,t){r(`ImportSpecifier`,e,t)}function je(e,t){r(`ImportExpression`,e,t)}function V(e,t){r(`MetaProperty`,e,t)}function H(e,t){r(`ClassMethod`,e,t)}function Me(e,t){r(`ObjectPattern`,e,t)}function Ne(e,t){r(`SpreadElement`,e,t)}function Pe(e,t){r(`Super`,e,t)}function Fe(e,t){r(`TaggedTemplateExpression`,e,t)}function Ie(e,t){r(`TemplateElement`,e,t)}function Le(e,t){r(`TemplateLiteral`,e,t)}function Re(e,t){r(`YieldExpression`,e,t)}function ze(e,t){r(`AwaitExpression`,e,t)}function Be(e,t){r(`Import`,e,t)}function Ve(e,t){r(`BigIntLiteral`,e,t)}function He(e,t){r(`ExportNamespaceSpecifier`,e,t)}function Ue(e,t){r(`OptionalMemberExpression`,e,t)}function We(e,t){r(`OptionalCallExpression`,e,t)}function Ge(e,t){r(`ClassProperty`,e,t)}function Ke(e,t){r(`ClassAccessorProperty`,e,t)}function qe(e,t){r(`ClassPrivateProperty`,e,t)}function Je(e,t){r(`ClassPrivateMethod`,e,t)}function Ye(e,t){r(`PrivateName`,e,t)}function Xe(e,t){r(`StaticBlock`,e,t)}function Ze(e,t){r(`ImportAttribute`,e,t)}function U(e,t){r(`AnyTypeAnnotation`,e,t)}function Qe(e,t){r(`ArrayTypeAnnotation`,e,t)}function $e(e,t){r(`BooleanTypeAnnotation`,e,t)}function W(e,t){r(`BooleanLiteralTypeAnnotation`,e,t)}function et(e,t){r(`NullLiteralTypeAnnotation`,e,t)}function tt(e,t){r(`ClassImplements`,e,t)}function nt(e,t){r(`DeclareClass`,e,t)}function rt(e,t){r(`DeclareFunction`,e,t)}function it(e,t){r(`DeclareInterface`,e,t)}function at(e,t){r(`DeclareModule`,e,t)}function ot(e,t){r(`DeclareModuleExports`,e,t)}function st(e,t){r(`DeclareTypeAlias`,e,t)}function ct(e,t){r(`DeclareOpaqueType`,e,t)}function lt(e,t){r(`DeclareVariable`,e,t)}function ut(e,t){r(`DeclareExportDeclaration`,e,t)}function dt(e,t){r(`DeclareExportAllDeclaration`,e,t)}function ft(e,t){r(`DeclaredPredicate`,e,t)}function pt(e,t){r(`ExistsTypeAnnotation`,e,t)}function G(e,t){r(`FunctionTypeAnnotation`,e,t)}function mt(e,t){r(`FunctionTypeParam`,e,t)}function K(e,t){r(`GenericTypeAnnotation`,e,t)}function ht(e,t){r(`InferredPredicate`,e,t)}function gt(e,t){r(`InterfaceExtends`,e,t)}function _t(e,t){r(`InterfaceDeclaration`,e,t)}function vt(e,t){r(`InterfaceTypeAnnotation`,e,t)}function yt(e,t){r(`IntersectionTypeAnnotation`,e,t)}function bt(e,t){r(`MixedTypeAnnotation`,e,t)}function xt(e,t){r(`EmptyTypeAnnotation`,e,t)}function St(e,t){r(`NullableTypeAnnotation`,e,t)}function Ct(e,t){r(`NumberLiteralTypeAnnotation`,e,t)}function wt(e,t){r(`NumberTypeAnnotation`,e,t)}function Tt(e,t){r(`ObjectTypeAnnotation`,e,t)}function q(e,t){r(`ObjectTypeInternalSlot`,e,t)}function Et(e,t){r(`ObjectTypeCallProperty`,e,t)}function J(e,t){r(`ObjectTypeIndexer`,e,t)}function Y(e,t){r(`ObjectTypeProperty`,e,t)}function Dt(e,t){r(`ObjectTypeSpreadProperty`,e,t)}function Ot(e,t){r(`OpaqueType`,e,t)}function X(e,t){r(`QualifiedTypeIdentifier`,e,t)}function kt(e,t){r(`StringLiteralTypeAnnotation`,e,t)}function At(e,t){r(`StringTypeAnnotation`,e,t)}function jt(e,t){r(`SymbolTypeAnnotation`,e,t)}function Z(e,t){r(`ThisTypeAnnotation`,e,t)}function Mt(e,t){r(`TupleTypeAnnotation`,e,t)}function Nt(e,t){r(`TypeofTypeAnnotation`,e,t)}function Pt(e,t){r(`TypeAlias`,e,t)}function Ft(e,t){r(`TypeAnnotation`,e,t)}function It(e,t){r(`TypeCastExpression`,e,t)}function Lt(e,t){r(`TypeParameter`,e,t)}function Rt(e,t){r(`TypeParameterDeclaration`,e,t)}function zt(e,t){r(`TypeParameterInstantiation`,e,t)}function Q(e,t){r(`UnionTypeAnnotation`,e,t)}function Bt(e,t){r(`Variance`,e,t)}function Vt(e,t){r(`VoidTypeAnnotation`,e,t)}function Ht(e,t){r(`EnumDeclaration`,e,t)}function Ut(e,t){r(`EnumBooleanBody`,e,t)}function Wt(e,t){r(`EnumNumberBody`,e,t)}function Gt(e,t){r(`EnumStringBody`,e,t)}function Kt(e,t){r(`EnumSymbolBody`,e,t)}function qt(e,t){r(`EnumBooleanMember`,e,t)}function $(e,t){r(`EnumNumberMember`,e,t)}function Jt(e,t){r(`EnumStringMember`,e,t)}function Yt(e,t){r(`EnumDefaultedMember`,e,t)}function Xt(e,t){r(`IndexedAccessType`,e,t)}function Zt(e,t){r(`OptionalIndexedAccessType`,e,t)}function Qt(e,t){r(`JSXAttribute`,e,t)}function $t(e,t){r(`JSXClosingElement`,e,t)}function en(e,t){r(`JSXElement`,e,t)}function tn(e,t){r(`JSXEmptyExpression`,e,t)}function nn(e,t){r(`JSXExpressionContainer`,e,t)}function rn(e,t){r(`JSXSpreadChild`,e,t)}function an(e,t){r(`JSXIdentifier`,e,t)}function on(e,t){r(`JSXMemberExpression`,e,t)}function sn(e,t){r(`JSXNamespacedName`,e,t)}function cn(e,t){r(`JSXOpeningElement`,e,t)}function ln(e,t){r(`JSXSpreadAttribute`,e,t)}function un(e,t){r(`JSXText`,e,t)}function dn(e,t){r(`JSXFragment`,e,t)}function fn(e,t){r(`JSXOpeningFragment`,e,t)}function pn(e,t){r(`JSXClosingFragment`,e,t)}function mn(e,t){r(`Noop`,e,t)}function hn(e,t){r(`Placeholder`,e,t)}function gn(e,t){r(`V8IntrinsicIdentifier`,e,t)}function _n(e,t){r(`ArgumentPlaceholder`,e,t)}function vn(e,t){r(`BindExpression`,e,t)}function yn(e,t){r(`Decorator`,e,t)}function bn(e,t){r(`DoExpression`,e,t)}function xn(e,t){r(`ExportDefaultSpecifier`,e,t)}function Sn(e,t){r(`RecordExpression`,e,t)}function Cn(e,t){r(`TupleExpression`,e,t)}function wn(e,t){r(`DecimalLiteral`,e,t)}function Tn(e,t){r(`ModuleExpression`,e,t)}function En(e,t){r(`TopicReference`,e,t)}function Dn(e,t){r(`PipelineTopicExpression`,e,t)}function On(e,t){r(`PipelineBareFunction`,e,t)}function kn(e,t){r(`PipelinePrimaryTopicReference`,e,t)}function An(e,t){r(`VoidPattern`,e,t)}function jn(e,t){r(`TSParameterProperty`,e,t)}function Mn(e,t){r(`TSDeclareFunction`,e,t)}function Nn(e,t){r(`TSDeclareMethod`,e,t)}function Pn(e,t){r(`TSQualifiedName`,e,t)}function Fn(e,t){r(`TSCallSignatureDeclaration`,e,t)}function In(e,t){r(`TSConstructSignatureDeclaration`,e,t)}function Ln(e,t){r(`TSPropertySignature`,e,t)}function Rn(e,t){r(`TSMethodSignature`,e,t)}function zn(e,t){r(`TSIndexSignature`,e,t)}function Bn(e,t){r(`TSAnyKeyword`,e,t)}function Vn(e,t){r(`TSBooleanKeyword`,e,t)}function Hn(e,t){r(`TSBigIntKeyword`,e,t)}function Un(e,t){r(`TSIntrinsicKeyword`,e,t)}function Wn(e,t){r(`TSNeverKeyword`,e,t)}function Gn(e,t){r(`TSNullKeyword`,e,t)}function Kn(e,t){r(`TSNumberKeyword`,e,t)}function qn(e,t){r(`TSObjectKeyword`,e,t)}function Jn(e,t){r(`TSStringKeyword`,e,t)}function Yn(e,t){r(`TSSymbolKeyword`,e,t)}function Xn(e,t){r(`TSUndefinedKeyword`,e,t)}function Zn(e,t){r(`TSUnknownKeyword`,e,t)}function Qn(e,t){r(`TSVoidKeyword`,e,t)}function $n(e,t){r(`TSThisType`,e,t)}function er(e,t){r(`TSFunctionType`,e,t)}function tr(e,t){r(`TSConstructorType`,e,t)}function nr(e,t){r(`TSTypeReference`,e,t)}function rr(e,t){r(`TSTypePredicate`,e,t)}function ir(e,t){r(`TSTypeQuery`,e,t)}function ar(e,t){r(`TSTypeLiteral`,e,t)}function or(e,t){r(`TSArrayType`,e,t)}function sr(e,t){r(`TSTupleType`,e,t)}function cr(e,t){r(`TSOptionalType`,e,t)}function lr(e,t){r(`TSRestType`,e,t)}function ur(e,t){r(`TSNamedTupleMember`,e,t)}function dr(e,t){r(`TSUnionType`,e,t)}function fr(e,t){r(`TSIntersectionType`,e,t)}function pr(e,t){r(`TSConditionalType`,e,t)}function mr(e,t){r(`TSInferType`,e,t)}function hr(e,t){r(`TSParenthesizedType`,e,t)}function gr(e,t){r(`TSTypeOperator`,e,t)}function _r(e,t){r(`TSIndexedAccessType`,e,t)}function vr(e,t){r(`TSMappedType`,e,t)}function yr(e,t){r(`TSTemplateLiteralType`,e,t)}function br(e,t){r(`TSLiteralType`,e,t)}function xr(e,t){r(`TSExpressionWithTypeArguments`,e,t)}function Sr(e,t){r(`TSInterfaceDeclaration`,e,t)}function Cr(e,t){r(`TSInterfaceBody`,e,t)}function wr(e,t){r(`TSTypeAliasDeclaration`,e,t)}function Tr(e,t){r(`TSInstantiationExpression`,e,t)}function Er(e,t){r(`TSAsExpression`,e,t)}function Dr(e,t){r(`TSSatisfiesExpression`,e,t)}function Or(e,t){r(`TSTypeAssertion`,e,t)}function kr(e,t){r(`TSEnumBody`,e,t)}function Ar(e,t){r(`TSEnumDeclaration`,e,t)}function jr(e,t){r(`TSEnumMember`,e,t)}function Mr(e,t){r(`TSModuleDeclaration`,e,t)}function Nr(e,t){r(`TSModuleBlock`,e,t)}function Pr(e,t){r(`TSImportType`,e,t)}function Fr(e,t){r(`TSImportEqualsDeclaration`,e,t)}function Ir(e,t){r(`TSExternalModuleReference`,e,t)}function Lr(e,t){r(`TSNonNullExpression`,e,t)}function Rr(e,t){r(`TSExportAssignment`,e,t)}function zr(e,t){r(`TSNamespaceExportDeclaration`,e,t)}function Br(e,t){r(`TSTypeAnnotation`,e,t)}function Vr(e,t){r(`TSTypeParameterInstantiation`,e,t)}function Hr(e,t){r(`TSTypeParameterDeclaration`,e,t)}function Ur(e,t){r(`TSTypeParameter`,e,t)}function Wr(e,t){r(`Standardized`,e,t)}function Gr(e,t){r(`Expression`,e,t)}function Kr(e,t){r(`Binary`,e,t)}function qr(e,t){r(`Scopable`,e,t)}function Jr(e,t){r(`BlockParent`,e,t)}function Yr(e,t){r(`Block`,e,t)}function Xr(e,t){r(`Statement`,e,t)}function Zr(e,t){r(`Terminatorless`,e,t)}function Qr(e,t){r(`CompletionStatement`,e,t)}function $r(e,t){r(`Conditional`,e,t)}function ei(e,t){r(`Loop`,e,t)}function ti(e,t){r(`While`,e,t)}function ni(e,t){r(`ExpressionWrapper`,e,t)}function ri(e,t){r(`For`,e,t)}function ii(e,t){r(`ForXStatement`,e,t)}function ai(e,t){r(`Function`,e,t)}function oi(e,t){r(`FunctionParent`,e,t)}function si(e,t){r(`Pureish`,e,t)}function ci(e,t){r(`Declaration`,e,t)}function li(e,t){r(`FunctionParameter`,e,t)}function ui(e,t){r(`PatternLike`,e,t)}function di(e,t){r(`LVal`,e,t)}function fi(e,t){r(`TSEntityName`,e,t)}function pi(e,t){r(`Literal`,e,t)}function mi(e,t){r(`Immutable`,e,t)}function hi(e,t){r(`UserWhitespacable`,e,t)}function gi(e,t){r(`Method`,e,t)}function _i(e,t){r(`ObjectMember`,e,t)}function vi(e,t){r(`Property`,e,t)}function yi(e,t){r(`UnaryLike`,e,t)}function bi(e,t){r(`Pattern`,e,t)}function xi(e,t){r(`Class`,e,t)}function Si(e,t){r(`ImportOrExportDeclaration`,e,t)}function Ci(e,t){r(`ExportDeclaration`,e,t)}function wi(e,t){r(`ModuleSpecifier`,e,t)}function Ti(e,t){r(`Accessor`,e,t)}function Ei(e,t){r(`Private`,e,t)}function Di(e,t){r(`Flow`,e,t)}function Oi(e,t){r(`FlowType`,e,t)}function ki(e,t){r(`FlowBaseAnnotation`,e,t)}function Ai(e,t){r(`FlowDeclaration`,e,t)}function ji(e,t){r(`FlowPredicate`,e,t)}function Mi(e,t){r(`EnumBody`,e,t)}function Ni(e,t){r(`EnumMember`,e,t)}function Pi(e,t){r(`JSX`,e,t)}function Fi(e,t){r(`Miscellaneous`,e,t)}function Ii(e,t){r(`TypeScript`,e,t)}function Li(e,t){r(`TSTypeElement`,e,t)}function Ri(e,t){r(`TSType`,e,t)}function zi(e,t){r(`TSBaseType`,e,t)}function Bi(e,t){(0,n.default)(`assertNumberLiteral`,`assertNumericLiteral`),r(`NumberLiteral`,e,t)}function Vi(e,t){(0,n.default)(`assertRegexLiteral`,`assertRegExpLiteral`),r(`RegexLiteral`,e,t)}function Hi(e,t){(0,n.default)(`assertRestProperty`,`assertRestElement`),r(`RestProperty`,e,t)}function Ui(e,t){(0,n.default)(`assertSpreadProperty`,`assertSpreadElement`),r(`SpreadProperty`,e,t)}function Wi(e,t){(0,n.default)(`assertModuleDeclaration`,`assertImportOrExportDeclaration`),r(`ModuleDeclaration`,e,t)}})),we=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t=L();e.default=n;function n(e){switch(e){case`string`:return(0,t.stringTypeAnnotation)();case`number`:return(0,t.numberTypeAnnotation)();case`undefined`:return(0,t.voidTypeAnnotation)();case`boolean`:return(0,t.booleanTypeAnnotation)();case`function`:return(0,t.genericTypeAnnotation)((0,t.identifier)(`Function`));case`object`:return(0,t.genericTypeAnnotation)((0,t.identifier)(`Object`));case`symbol`:return(0,t.genericTypeAnnotation)((0,t.identifier)(`Symbol`));case`bigint`:return(0,t.anyTypeAnnotation)()}throw Error(`Invalid typeof value: `+e)}})),Te=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T();function n(e){return(0,t.isIdentifier)(e)?e.name:`${e.id.name}.${n(e.qualification)}`}function r(e){let i=Array.from(e),a=new Map,o=new Map,s=new Set,c=[];for(let e=0;e<i.length;e++){let l=i[e];if(l&&!c.includes(l)){if((0,t.isAnyTypeAnnotation)(l))return[l];if((0,t.isFlowBaseAnnotation)(l))o.set(l.type,l);else if((0,t.isUnionTypeAnnotation)(l))s.has(l.types)||(i.push(...l.types),s.add(l.types));else if((0,t.isGenericTypeAnnotation)(l)){let e=n(l.id);if(a.has(e)){let t=a.get(e);t.typeParameters?l.typeParameters&&(t.typeParameters.params.push(...l.typeParameters.params),t.typeParameters.params=r(t.typeParameters.params)):t=l.typeParameters}else a.set(e,l)}else c.push(l)}}for(let[,e]of o)c.push(e);for(let[,e]of a)c.push(e);return c}})),z=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=L(),n=Te();function r(e){let r=(0,n.default)(e);return r.length===1?r[0]:(0,t.unionTypeAnnotation)(r)}})),Ee=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T();function n(e){return(0,t.isIdentifier)(e)?e.name:(0,t.isThisExpression)(e)?`this`:`${e.right.name}.${n(e.left)}`}function r(e){let i=Array.from(e),a=new Map,o=new Map,s=new Set,c=[];for(let e=0;e<i.length;e++){let l=i[e];if(!l||c.includes(l))continue;if((0,t.isTSAnyKeyword)(l))return[l];if((0,t.isTSBaseType)(l)){o.set(l.type,l);continue}if((0,t.isTSUnionType)(l)){s.has(l.types)||(i.push(...l.types),s.add(l.types));continue}let u=`typeParameters`;if((0,t.isTSTypeReference)(l)&&l[u]){let e=l[u],t=n(l.typeName);if(a.has(t)){let n=a.get(t),i=n[u];i?(i.params.push(...e.params),i.params=r(i.params)):n=e}else a.set(t,l)}else c.push(l)}for(let[,e]of o)c.push(e);for(let[,e]of a)c.push(e);return c}})),De=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=L(),n=Ee(),r=T();function i(e){let i=e.map(e=>(0,r.isTSTypeAnnotation)(e)?e.typeAnnotation:e),a=(0,n.default)(i);return a.length===1?a[0]:(0,t.tsUnionType)(a)}})),Oe=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.buildUndefinedNode=n;var t=L();function n(){return(0,t.unaryExpression)(`void`,(0,t.numericLiteral)(0),!0)}})),B=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=I(),n=T(),{hasOwn:r}={hasOwn:Function.call.bind(Object.prototype.hasOwnProperty)};function i(e,t,n,r){return e&&typeof e.type==`string`?s(e,t,n,r):e}function a(e,t,n,r){return Array.isArray(e)?e.map(e=>i(e,t,n,r)):i(e,t,n,r)}function o(e,t=!0,n=!1){return s(e,t,n,new Map)}function s(e,i=!0,o=!1,s){if(!e)return e;let{type:l}=e,u={type:e.type};if((0,n.isIdentifier)(e))u.name=e.name,r(e,`optional`)&&typeof e.optional==`boolean`&&(u.optional=e.optional),r(e,`typeAnnotation`)&&(u.typeAnnotation=i?a(e.typeAnnotation,!0,o,s):e.typeAnnotation),r(e,`decorators`)&&(u.decorators=i?a(e.decorators,!0,o,s):e.decorators);else if(r(t.NODE_FIELDS,l))for(let d of Object.keys(t.NODE_FIELDS[l]))r(e,d)&&(u[d]=i?(0,n.isFile)(e)&&d===`comments`?c(e.comments,i,o,s):a(e[d],!0,o,s):e[d]);else throw Error(`Unknown node type: "${l}"`);return r(e,`loc`)&&(u.loc=o?null:e.loc),r(e,`leadingComments`)&&(u.leadingComments=c(e.leadingComments,i,o,s)),r(e,`innerComments`)&&(u.innerComments=c(e.innerComments,i,o,s)),r(e,`trailingComments`)&&(u.trailingComments=c(e.trailingComments,i,o,s)),r(e,`extra`)&&(u.extra=Object.assign({},e.extra)),u}function c(e,t,n,r){return!e||!t?e:e.map(e=>{let t=r.get(e);if(t)return t;let{type:i,value:a,loc:o}=e,s={type:i,value:a,loc:o};return n&&(s.loc=null),r.set(e,s),s})}})),ke=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=B();function n(e){return(0,t.default)(e,!1)}})),Ae=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=B();function n(e){return(0,t.default)(e)}})),je=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=B();function n(e){return(0,t.default)(e,!0,!0)}})),V=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=B();function n(e){return(0,t.default)(e,!1,!0)}})),H=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(e,t,n){if(!n||!e)return e;let r=`${t}Comments`;return e[r]?t===`leading`?e[r]=n.concat(e[r]):e[r].push(...n):e[r]=n,e}})),Me=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=H();function n(e,n,r,i){return(0,t.default)(e,n,[{type:i?`CommentLine`:`CommentBlock`,value:r}])}})),Ne=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(e,t,n){t&&n&&(t[e]=Array.from(new Set([].concat(t[e],n[e]).filter(Boolean))))}})),Pe=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=Ne();function n(e,n){(0,t.default)(`innerComments`,e,n)}})),Fe=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=Ne();function n(e,n){(0,t.default)(`leadingComments`,e,n)}})),Ie=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=Ne();function n(e,n){(0,t.default)(`trailingComments`,e,n)}})),Le=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=Ie(),n=Fe(),r=Pe();function i(e,i){return(0,t.default)(e,i),(0,n.default)(e,i),(0,r.default)(e,i),e}})),Re=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=j();function n(e){return t.COMMENT_KEYS.forEach(t=>{e[t]=null}),e}})),ze=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.WHILE_TYPES=e.USERWHITESPACABLE_TYPES=e.UNARYLIKE_TYPES=e.TYPESCRIPT_TYPES=e.TSTYPE_TYPES=e.TSTYPEELEMENT_TYPES=e.TSENTITYNAME_TYPES=e.TSBASETYPE_TYPES=e.TERMINATORLESS_TYPES=e.STATEMENT_TYPES=e.STANDARDIZED_TYPES=e.SCOPABLE_TYPES=e.PUREISH_TYPES=e.PROPERTY_TYPES=e.PRIVATE_TYPES=e.PATTERN_TYPES=e.PATTERNLIKE_TYPES=e.OBJECTMEMBER_TYPES=e.MODULESPECIFIER_TYPES=e.MODULEDECLARATION_TYPES=e.MISCELLANEOUS_TYPES=e.METHOD_TYPES=e.LVAL_TYPES=e.LOOP_TYPES=e.LITERAL_TYPES=e.JSX_TYPES=e.IMPORTOREXPORTDECLARATION_TYPES=e.IMMUTABLE_TYPES=e.FUNCTION_TYPES=e.FUNCTIONPARENT_TYPES=e.FUNCTIONPARAMETER_TYPES=e.FOR_TYPES=e.FORXSTATEMENT_TYPES=e.FLOW_TYPES=e.FLOWTYPE_TYPES=e.FLOWPREDICATE_TYPES=e.FLOWDECLARATION_TYPES=e.FLOWBASEANNOTATION_TYPES=e.EXPRESSION_TYPES=e.EXPRESSIONWRAPPER_TYPES=e.EXPORTDECLARATION_TYPES=e.ENUMMEMBER_TYPES=e.ENUMBODY_TYPES=e.DECLARATION_TYPES=e.CONDITIONAL_TYPES=e.COMPLETIONSTATEMENT_TYPES=e.CLASS_TYPES=e.BLOCK_TYPES=e.BLOCKPARENT_TYPES=e.BINARY_TYPES=e.ACCESSOR_TYPES=void 0;var t=I();e.STANDARDIZED_TYPES=t.FLIPPED_ALIAS_KEYS.Standardized,e.EXPRESSION_TYPES=t.FLIPPED_ALIAS_KEYS.Expression,e.BINARY_TYPES=t.FLIPPED_ALIAS_KEYS.Binary,e.SCOPABLE_TYPES=t.FLIPPED_ALIAS_KEYS.Scopable,e.BLOCKPARENT_TYPES=t.FLIPPED_ALIAS_KEYS.BlockParent,e.BLOCK_TYPES=t.FLIPPED_ALIAS_KEYS.Block,e.STATEMENT_TYPES=t.FLIPPED_ALIAS_KEYS.Statement,e.TERMINATORLESS_TYPES=t.FLIPPED_ALIAS_KEYS.Terminatorless,e.COMPLETIONSTATEMENT_TYPES=t.FLIPPED_ALIAS_KEYS.CompletionStatement,e.CONDITIONAL_TYPES=t.FLIPPED_ALIAS_KEYS.Conditional,e.LOOP_TYPES=t.FLIPPED_ALIAS_KEYS.Loop,e.WHILE_TYPES=t.FLIPPED_ALIAS_KEYS.While,e.EXPRESSIONWRAPPER_TYPES=t.FLIPPED_ALIAS_KEYS.ExpressionWrapper,e.FOR_TYPES=t.FLIPPED_ALIAS_KEYS.For,e.FORXSTATEMENT_TYPES=t.FLIPPED_ALIAS_KEYS.ForXStatement,e.FUNCTION_TYPES=t.FLIPPED_ALIAS_KEYS.Function,e.FUNCTIONPARENT_TYPES=t.FLIPPED_ALIAS_KEYS.FunctionParent,e.PUREISH_TYPES=t.FLIPPED_ALIAS_KEYS.Pureish,e.DECLARATION_TYPES=t.FLIPPED_ALIAS_KEYS.Declaration,e.FUNCTIONPARAMETER_TYPES=t.FLIPPED_ALIAS_KEYS.FunctionParameter,e.PATTERNLIKE_TYPES=t.FLIPPED_ALIAS_KEYS.PatternLike,e.LVAL_TYPES=t.FLIPPED_ALIAS_KEYS.LVal,e.TSENTITYNAME_TYPES=t.FLIPPED_ALIAS_KEYS.TSEntityName,e.LITERAL_TYPES=t.FLIPPED_ALIAS_KEYS.Literal,e.IMMUTABLE_TYPES=t.FLIPPED_ALIAS_KEYS.Immutable,e.USERWHITESPACABLE_TYPES=t.FLIPPED_ALIAS_KEYS.UserWhitespacable,e.METHOD_TYPES=t.FLIPPED_ALIAS_KEYS.Method,e.OBJECTMEMBER_TYPES=t.FLIPPED_ALIAS_KEYS.ObjectMember,e.PROPERTY_TYPES=t.FLIPPED_ALIAS_KEYS.Property,e.UNARYLIKE_TYPES=t.FLIPPED_ALIAS_KEYS.UnaryLike,e.PATTERN_TYPES=t.FLIPPED_ALIAS_KEYS.Pattern,e.CLASS_TYPES=t.FLIPPED_ALIAS_KEYS.Class;var n=e.IMPORTOREXPORTDECLARATION_TYPES=t.FLIPPED_ALIAS_KEYS.ImportOrExportDeclaration;e.EXPORTDECLARATION_TYPES=t.FLIPPED_ALIAS_KEYS.ExportDeclaration,e.MODULESPECIFIER_TYPES=t.FLIPPED_ALIAS_KEYS.ModuleSpecifier,e.ACCESSOR_TYPES=t.FLIPPED_ALIAS_KEYS.Accessor,e.PRIVATE_TYPES=t.FLIPPED_ALIAS_KEYS.Private,e.FLOW_TYPES=t.FLIPPED_ALIAS_KEYS.Flow,e.FLOWTYPE_TYPES=t.FLIPPED_ALIAS_KEYS.FlowType,e.FLOWBASEANNOTATION_TYPES=t.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation,e.FLOWDECLARATION_TYPES=t.FLIPPED_ALIAS_KEYS.FlowDeclaration,e.FLOWPREDICATE_TYPES=t.FLIPPED_ALIAS_KEYS.FlowPredicate,e.ENUMBODY_TYPES=t.FLIPPED_ALIAS_KEYS.EnumBody,e.ENUMMEMBER_TYPES=t.FLIPPED_ALIAS_KEYS.EnumMember,e.JSX_TYPES=t.FLIPPED_ALIAS_KEYS.JSX,e.MISCELLANEOUS_TYPES=t.FLIPPED_ALIAS_KEYS.Miscellaneous,e.TYPESCRIPT_TYPES=t.FLIPPED_ALIAS_KEYS.TypeScript,e.TSTYPEELEMENT_TYPES=t.FLIPPED_ALIAS_KEYS.TSTypeElement,e.TSTYPE_TYPES=t.FLIPPED_ALIAS_KEYS.TSType,e.TSBASETYPE_TYPES=t.FLIPPED_ALIAS_KEYS.TSBaseType,e.MODULEDECLARATION_TYPES=n})),Be=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T(),n=L();function r(e,r){if((0,t.isBlockStatement)(e))return e;let i=[];return(0,t.isEmptyStatement)(e)?i=[]:((0,t.isStatement)(e)||(e=(0,t.isFunction)(r)?(0,n.returnStatement)(e):(0,n.expressionStatement)(e)),i=[e]),(0,n.blockStatement)(i)}})),Ve=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=Be();function n(e,n=`body`){let r=(0,t.default)(e[n],e);return e[n]=r,r}})),He=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=A(),n=ue();function r(e){e+=``;let r=``;for(let t of e)r+=(0,n.isIdentifierChar)(t.codePointAt(0))?t:`-`;return r=r.replace(/^[-0-9]+/,``),r=r.replace(/[-\s]+(.)?/g,function(e,t){return t?t.toUpperCase():``}),(0,t.default)(r)||(r=`_${r}`),r||`_`}})),Ue=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=He();function n(e){return e=(0,t.default)(e),(e===`eval`||e===`arguments`)&&(e=`_`+e),e}})),We=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T(),n=L();function r(e,r=e.key||e.property){return!e.computed&&(0,t.isIdentifier)(r)&&(r=(0,n.stringLiteral)(r.name)),r}})),Ge=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t=T();e.default=n;function n(e){if((0,t.isExpressionStatement)(e)&&(e=e.expression),(0,t.isExpression)(e))return e;if((0,t.isClass)(e)?(e.type=`ClassExpression`,e.abstract=!1):(0,t.isFunction)(e)&&(e.type=`FunctionExpression`),!(0,t.isExpression)(e))throw Error(`cannot turn ${e.type} to an expression`);return e}})),Ke=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=I(),n=Symbol(),r=Symbol();function i(e,a,o){if(!e)return!1;let s=t.VISITOR_KEYS[e.type];if(!s)return!1;o=o||{};let c=a(e,o);if(c!==void 0)switch(c){case n:return!1;case r:return!0}for(let t of s){let n=e[t];if(n){if(Array.isArray(n)){for(let e of n)if(i(e,a,o))return!0}else if(i(n,a,o))return!0}}return!1}i.skip=n,i.stop=r})),qe=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=j(),n=[`tokens`,`start`,`end`,`loc`,`raw`,`rawValue`],r=[...t.COMMENT_KEYS,`comments`,...n];function i(e,t={}){let i=t.preserveComments?n:r;for(let t of i)e[t]!=null&&(e[t]=void 0);for(let t of Object.keys(e))t[0]===`_`&&e[t]!=null&&(e[t]=void 0);let a=Object.getOwnPropertySymbols(e);for(let t of a)e[t]=null}})),Je=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=Ke(),n=qe();function r(e,r){return(0,t.default)(e,n.default,r),e}})),Ye=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=T(),n=B(),r=Je();function i(e,a=e.key){let o;return e.kind===`method`?i.increment()+``:(o=(0,t.isIdentifier)(a)?a.name:(0,t.isStringLiteral)(a)?JSON.stringify(a.value):JSON.stringify((0,r.default)((0,n.default)(a))),e.computed&&(o=`[${o}]`),e.static&&(o=`static:${o}`),o)}i.uid=0,i.increment=function(){return i.uid>=2**53-1?i.uid=0:i.uid++}})),Xe=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t=T(),n=L();e.default=r;function r(e,r){if((0,t.isStatement)(e))return e;let i=!1,a;if((0,t.isClass)(e))i=!0,a=`ClassDeclaration`;else if((0,t.isFunction)(e))i=!0,a=`FunctionDeclaration`;else if((0,t.isAssignmentExpression)(e))return(0,n.expressionStatement)(e);if(i&&!e.id&&(a=!1),!a){if(r)return!1;throw Error(`cannot turn ${e.type} to a statement`)}return e.type=a,e}})),Ze=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t=A(),n=L();e.default=o;var r=Function.call.bind(Object.prototype.toString);function i(e){return r(e)===`[object RegExp]`}function a(e){if(typeof e!=`object`||!e||Object.prototype.toString.call(e)!==`[object Object]`)return!1;let t=Object.getPrototypeOf(e);return t===null||Object.getPrototypeOf(t)===null}function o(e){if(e===void 0)return(0,n.identifier)(`undefined`);if(e===!0||e===!1)return(0,n.booleanLiteral)(e);if(e===null)return(0,n.nullLiteral)();if(typeof e==`string`)return(0,n.stringLiteral)(e);if(typeof e==`number`){let t;if(Number.isFinite(e))t=(0,n.numericLiteral)(Math.abs(e));else{let r;r=Number.isNaN(e)?(0,n.numericLiteral)(0):(0,n.numericLiteral)(1),t=(0,n.binaryExpression)(`/`,r,(0,n.numericLiteral)(0))}return(e<0||Object.is(e,-0))&&(t=(0,n.unaryExpression)(`-`,t)),t}if(typeof e==`bigint`)return e<0?(0,n.unaryExpression)(`-`,(0,n.bigIntLiteral)(-e)):(0,n.bigIntLiteral)(e);if(i(e)){let t=e.source,r=/\/([a-z]*)$/.exec(e.toString())[1];return(0,n.regExpLiteral)(t,r)}if(Array.isArray(e))return(0,n.arrayExpression)(e.map(o));if(a(e)){let r=[];for(let i of Object.keys(e)){let a,s=!1;(0,t.default)(i)?i===`__proto__`?(s=!0,a=(0,n.stringLiteral)(i)):a=(0,n.identifier)(i):a=(0,n.stringLiteral)(i),r.push((0,n.objectProperty)(a,o(e[i]),s))}return(0,n.objectExpression)(r)}throw Error(`don't know how to turn this value into a node`)}})),U=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=L();function n(e,n,r=!1){return e.object=(0,t.memberExpression)(e.object,e.property,e.computed),e.property=n,e.computed=!!r,e}})),Qe=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=j(),n=Le();function r(e,r){if(!e||!r)return e;for(let n of t.INHERIT_KEYS.optional)e[n]??(e[n]=r[n]);for(let t of Object.keys(r))t[0]===`_`&&t!==`__clone`&&(e[t]=r[t]);for(let n of t.INHERIT_KEYS.force)e[n]=r[n];return(0,n.default)(e,r),e}})),$e=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=L(),n=K();function r(e,r){if((0,n.isSuper)(e.object))throw Error("Cannot prepend node to super property access (`super.foo`).");return e.object=(0,t.memberExpression)(r,e.object),e}})),W=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(e){let t=[].concat(e),n=Object.create(null);for(;t.length;){let e=t.pop();if(e)switch(e.type){case`ArrayPattern`:t.push(...e.elements);break;case`AssignmentExpression`:case`AssignmentPattern`:case`ForInStatement`:case`ForOfStatement`:t.push(e.left);break;case`ObjectPattern`:t.push(...e.properties);break;case`ObjectProperty`:t.push(e.value);break;case`RestElement`:case`UpdateExpression`:t.push(e.argument);break;case`UnaryExpression`:e.operator===`delete`&&t.push(e.argument);break;case`Identifier`:n[e.name]=e}}return n}})),et=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=T();function n(e,r,i,a){let o=[].concat(e),s=Object.create(null);for(;o.length;){let e=o.shift();if(!e||a&&((0,t.isAssignmentExpression)(e)||(0,t.isUnaryExpression)(e)||(0,t.isUpdateExpression)(e)))continue;if((0,t.isIdentifier)(e)){r?(s[e.name]=s[e.name]||[]).push(e):s[e.name]=e;continue}if((0,t.isExportDeclaration)(e)&&!(0,t.isExportAllDeclaration)(e)){(0,t.isDeclaration)(e.declaration)&&o.push(e.declaration);continue}if(i){if((0,t.isFunctionDeclaration)(e)){o.push(e.id);continue}if((0,t.isFunctionExpression)(e))continue}let c=n.keys[e.type];if(c)for(let t=0;t<c.length;t++){let n=e[c[t]];n&&(Array.isArray(n)?o.push(...n):o.push(n))}}return s}n.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`],TSImportEqualsDeclaration:[`id`],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`]}})),tt=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t=et();e.default=n;function n(e,n){return(0,t.default)(e,n,!0)}})),nt=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=T();function n(e){return(0,t.isNullLiteral)(e)?`null`:(0,t.isRegExpLiteral)(e)?`/${e.pattern}/${e.flags}`:(0,t.isTemplateLiteral)(e)?e.quasis.map(e=>e.value.raw).join(``):e.value===void 0?null:String(e.value)}function r(e){if(!e.computed||(0,t.isLiteral)(e.key))return e.key}function i(e,i){if(`id`in e&&e.id)return{name:e.id.name,originalNode:e.id};let a=``,o;if((0,t.isObjectProperty)(i,{value:e})?o=r(i):(0,t.isObjectMethod)(e)||(0,t.isClassMethod)(e)?(o=r(e),e.kind===`get`?a=`get `:e.kind===`set`&&(a=`set `)):(0,t.isVariableDeclarator)(i,{init:e})?o=i.id:(0,t.isAssignmentExpression)(i,{operator:`=`,right:e})&&(o=i.left),!o)return null;let s=(0,t.isLiteral)(o)?n(o):(0,t.isIdentifier)(o)?o.name:(0,t.isPrivateName)(o)?o.id.name:null;return s==null?null:{name:a+s,originalNode:o}}})),rt=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=I();function n(e,t,n){typeof t==`function`&&(t={enter:t});let{enter:i,exit:a}=t;r(e,i,a,n,[])}function r(e,n,i,a,o){let s=t.VISITOR_KEYS[e.type];if(s){n&&n(e,o,a);for(let t of s){let s=e[t];if(Array.isArray(s))for(let c=0;c<s.length;c++){let l=s[c];l&&(o.push({node:e,key:t,index:c}),r(l,n,i,a,o),o.pop())}else s&&(o.push({node:e,key:t}),r(s,n,i,a,o),o.pop())}i&&i(e,o,a)}}})),it=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=et();function n(e,n,r){if(r&&e.type===`Identifier`&&n.type===`ObjectProperty`&&r.type===`ObjectExpression`)return!1;let i=t.default.keys[n.type];if(i)for(let t=0;t<i.length;t++){let r=n[i[t]];if(Array.isArray(r)){if(r.includes(e))return!0}else if(r===e)return!0}return!1}})),at=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T(),n=Symbol.for(`var used to be block scoped`);function r(e){return(0,t.isVariableDeclaration)(e)&&(e.kind!==`var`||e[n])}})),ot=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T(),n=at();function r(e){return(0,t.isFunctionDeclaration)(e)||(0,t.isClassDeclaration)(e)||(0,n.default)(e)}})),st=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=D(),n=T();function r(e){return(0,t.default)(e.type,`Immutable`)?!0:(0,n.isIdentifier)(e)?e.name===`undefined`:!1}})),ct=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=I();function n(e,r){if(typeof e!=`object`||typeof r!=`object`||e==null||r==null)return e===r;if(e.type!==r.type)return!1;let i=Object.keys(t.NODE_FIELDS[e.type]||e.type),a=t.VISITOR_KEYS[e.type];for(let t of i){let i=e[t],o=r[t];if(typeof i!=typeof o)return!1;if(i!=null||o!=null){if(i==null||o==null)return!1;if(Array.isArray(i)){if(!Array.isArray(o)||i.length!==o.length)return!1;for(let e=0;e<i.length;e++)if(!n(i[e],o[e]))return!1}else if(typeof i==`object`&&!(a!=null&&a.includes(t))){for(let e of Object.keys(i))if(i[e]!==o[e])return!1}else if(!n(i,o))return!1}}return!0}})),lt=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(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`:return!1;case`ClassMethod`:case`ClassPrivateMethod`:case`ObjectMethod`:return t.key===e&&!!t.computed;case`ObjectProperty`:return t.key===e?!!t.computed:!n||n.type!==`ObjectPattern`;case`ClassProperty`:case`ClassAccessorProperty`:return t.key!==e||!!t.computed;case`ClassPrivateProperty`:return t.key!==e;case`ClassDeclaration`:case`ClassExpression`:return t.superClass===e;case`AssignmentExpression`:return t.right===e;case`AssignmentPattern`:return t.right===e;case`LabeledStatement`:return!1;case`CatchClause`:return!1;case`RestElement`:return!1;case`BreakStatement`:case`ContinueStatement`:return!1;case`FunctionDeclaration`:case`FunctionExpression`:return!1;case`ExportNamespaceSpecifier`:case`ExportDefaultSpecifier`:return!1;case`ExportSpecifier`:return n!=null&&n.source?!1:t.local===e;case`ImportDefaultSpecifier`:case`ImportNamespaceSpecifier`:case`ImportSpecifier`:return!1;case`ImportAttribute`:return!1;case`JSXAttribute`:return!1;case`ObjectPattern`:case`ArrayPattern`:return!1;case`MetaProperty`:return!1;case`ObjectTypeProperty`:return t.key!==e;case`TSEnumMember`:return t.id!==e;case`TSPropertySignature`:return t.key!==e||!!t.computed}return!0}})),ut=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=T();function n(e,n){return(0,t.isBlockStatement)(e)&&((0,t.isFunction)(n)||(0,t.isCatchClause)(n))?!1:(0,t.isPattern)(e)&&((0,t.isFunction)(n)||(0,t.isCatchClause)(n))?!0:(0,t.isScopable)(e)}})),dt=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=T();function n(e){return(0,t.isImportDefaultSpecifier)(e)||(0,t.isIdentifier)(e.imported||e.exported,{name:`default`})}})),ft=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=A(),n=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`]);function r(e){return(0,t.default)(e)&&!n.has(e)}})),pt=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;var t=T(),n=Symbol.for(`var used to be block scoped`);function r(e){return(0,t.isVariableDeclaration)(e,{kind:`var`})&&!e[n]}})),G=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=et(),n=T(),r=L(),i=Oe(),a=B();function o(e,s){let c=[],l=!0;for(let u of e)if((0,n.isEmptyStatement)(u)||(l=!1),(0,n.isExpression)(u))c.push(u);else if((0,n.isExpressionStatement)(u))c.push(u.expression);else if((0,n.isVariableDeclaration)(u)){if(u.kind!==`var`)return;for(let e of u.declarations){let n=(0,t.default)(e);for(let e of Object.keys(n))s.push({kind:u.kind,id:(0,a.default)(n[e])});e.init&&c.push((0,r.assignmentExpression)(`=`,e.id,e.init))}l=!0}else if((0,n.isIfStatement)(u)){let e=u.consequent?o([u.consequent],s):(0,i.buildUndefinedNode)(),t=u.alternate?o([u.alternate],s):(0,i.buildUndefinedNode)();if(!e||!t)return;c.push((0,r.conditionalExpression)(u.test,e,t))}else if((0,n.isBlockStatement)(u)){let e=o(u.body,s);if(!e)return;c.push(e)}else if((0,n.isEmptyStatement)(u))e.indexOf(u)===0&&(l=!0);else return;return l&&c.push((0,i.buildUndefinedNode)()),c.length===1?c[0]:(0,r.sequenceExpression)(c)}})),mt=e((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default=n;var t=G();function n(e,n){if(!(e!=null&&e.length))return;let r=[],i=(0,t.default)(e,r);if(i){for(let e of r)n.push(e);return i}}})),K=e((e=>{Object.defineProperty(e,"__esModule",{value:!0});var t={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,toStatement:!0,valueToNode:!0,appendToMemberExpression:!0,inherits:!0,prependToMemberExpression:!0,removeProperties:!0,removePropertiesDeep:!0,removeTypeDuplicates:!0,getAssignmentIdentifiers:!0,getBindingIdentifiers:!0,getOuterBindingIdentifiers:!0,getFunctionName:!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(e,"__internal__deprecationWarning",{enumerable:!0,get:function(){return jt.default}}),Object.defineProperty(e,"addComment",{enumerable:!0,get:function(){return _.default}}),Object.defineProperty(e,"addComments",{enumerable:!0,get:function(){return ee.default}}),Object.defineProperty(e,"appendToMemberExpression",{enumerable:!0,get:function(){return F.default}}),Object.defineProperty(e,"assertNode",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"buildMatchMemberExpression",{enumerable:!0,get:function(){return kt.default}}),Object.defineProperty(e,"clone",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"cloneDeep",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(e,"cloneDeepWithoutLoc",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"cloneNode",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(e,"cloneWithoutLoc",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(e,"createFlowUnionType",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"createTSUnionType",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"ensureBlock",{enumerable:!0,get:function(){return S.default}}),Object.defineProperty(e,"getAssignmentIdentifiers",{enumerable:!0,get:function(){return ye.default}}),Object.defineProperty(e,"getBindingIdentifiers",{enumerable:!0,get:function(){return be.default}}),Object.defineProperty(e,"getFunctionName",{enumerable:!0,get:function(){return Ne.default}}),Object.defineProperty(e,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return Ee.default}}),Object.defineProperty(e,"inheritInnerComments",{enumerable:!0,get:function(){return te.default}}),Object.defineProperty(e,"inheritLeadingComments",{enumerable:!0,get:function(){return ne.default}}),Object.defineProperty(e,"inheritTrailingComments",{enumerable:!0,get:function(){return v.default}}),Object.defineProperty(e,"inherits",{enumerable:!0,get:function(){return pe.default}}),Object.defineProperty(e,"inheritsComments",{enumerable:!0,get:function(){return re.default}}),Object.defineProperty(e,"is",{enumerable:!0,get:function(){return gt.default}}),Object.defineProperty(e,"isBinding",{enumerable:!0,get:function(){return _t.default}}),Object.defineProperty(e,"isBlockScoped",{enumerable:!0,get:function(){return vt.default}}),Object.defineProperty(e,"isImmutable",{enumerable:!0,get:function(){return yt.default}}),Object.defineProperty(e,"isLet",{enumerable:!0,get:function(){return bt.default}}),Object.defineProperty(e,"isNode",{enumerable:!0,get:function(){return xt.default}}),Object.defineProperty(e,"isNodesEquivalent",{enumerable:!0,get:function(){return St.default}}),Object.defineProperty(e,"isPlaceholderType",{enumerable:!0,get:function(){return Ct.default}}),Object.defineProperty(e,"isReferenced",{enumerable:!0,get:function(){return wt.default}}),Object.defineProperty(e,"isScope",{enumerable:!0,get:function(){return Tt.default}}),Object.defineProperty(e,"isSpecifierDefault",{enumerable:!0,get:function(){return q.default}}),Object.defineProperty(e,"isType",{enumerable:!0,get:function(){return Et.default}}),Object.defineProperty(e,"isValidES3Identifier",{enumerable:!0,get:function(){return J.default}}),Object.defineProperty(e,"isValidIdentifier",{enumerable:!0,get:function(){return Y.default}}),Object.defineProperty(e,"isVar",{enumerable:!0,get:function(){return Dt.default}}),Object.defineProperty(e,"matchesPattern",{enumerable:!0,get:function(){return Ot.default}}),Object.defineProperty(e,"prependToMemberExpression",{enumerable:!0,get:function(){return me.default}}),e.react=void 0,Object.defineProperty(e,"removeComments",{enumerable:!0,get:function(){return y.default}}),Object.defineProperty(e,"removeProperties",{enumerable:!0,get:function(){return he.default}}),Object.defineProperty(e,"removePropertiesDeep",{enumerable:!0,get:function(){return ge.default}}),Object.defineProperty(e,"removeTypeDuplicates",{enumerable:!0,get:function(){return ve.default}}),Object.defineProperty(e,"shallowEqual",{enumerable:!0,get:function(){return ht.default}}),Object.defineProperty(e,"toBindingIdentifierName",{enumerable:!0,get:function(){return C.default}}),Object.defineProperty(e,"toBlock",{enumerable:!0,get:function(){return ce.default}}),Object.defineProperty(e,"toComputedKey",{enumerable:!0,get:function(){return le.default}}),Object.defineProperty(e,"toExpression",{enumerable:!0,get:function(){return ue.default}}),Object.defineProperty(e,"toIdentifier",{enumerable:!0,get:function(){return de.default}}),Object.defineProperty(e,"toKeyAlias",{enumerable:!0,get:function(){return M.default}}),Object.defineProperty(e,"toStatement",{enumerable:!0,get:function(){return N.default}}),Object.defineProperty(e,"traverse",{enumerable:!0,get:function(){return G.default}}),Object.defineProperty(e,"traverseFast",{enumerable:!0,get:function(){return K.default}}),Object.defineProperty(e,"validate",{enumerable:!0,get:function(){return X.default}}),Object.defineProperty(e,"valueToNode",{enumerable:!0,get:function(){return P.default}});var n=se(),r=E(),i=xe(),a=R(),o=Ce();Object.keys(o).forEach(function(n){n!=="default"&&n!=="__esModule"&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===o[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return o[n]}}))});var s=we(),c=z(),l=De(),u=Oe();Object.keys(u).forEach(function(n){n!=="default"&&n!=="__esModule"&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===u[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return u[n]}}))});var d=L();Object.keys(d).forEach(function(n){n!=="default"&&n!=="__esModule"&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===d[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return d[n]}}))});var f=B(),p=ke(),m=Ae(),h=je(),g=V(),_=Me(),ee=H(),te=Pe(),ne=Fe(),re=Le(),v=Ie(),y=Re(),b=ze();Object.keys(b).forEach(function(n){n!=="default"&&n!=="__esModule"&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===b[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return b[n]}}))});var x=j();Object.keys(x).forEach(function(n){n!=="default"&&n!=="__esModule"&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===x[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return x[n]}}))});var S=Ve(),C=Ue(),ce=Be(),le=We(),ue=Ge(),de=He(),M=Ye(),N=Xe(),P=Ze(),fe=I();Object.keys(fe).forEach(function(n){n!=="default"&&n!=="__esModule"&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===fe[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return fe[n]}}))});var F=U(),pe=Qe(),me=$e(),he=qe(),ge=Je(),ve=Te(),ye=W(),be=et(),Ee=tt(),Ne=nt(),G=rt();Object.keys(G).forEach(function(n){n!=="default"&&n!=="__esModule"&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===G[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return G[n]}}))});var K=Ke(),ht=ie(),gt=k(),_t=it(),vt=ot(),yt=st(),bt=at(),xt=Se(),St=ct(),Ct=O(),wt=lt(),Tt=ut(),q=dt(),Et=D(),J=ft(),Y=A(),Dt=pt(),Ot=ae(),X=_e(),kt=oe(),At=T();Object.keys(At).forEach(function(n){n!=="default"&&n!=="__esModule"&&(Object.prototype.hasOwnProperty.call(t,n)||n in e&&e[n]===At[n]||Object.defineProperty(e,n,{enumerable:!0,get:function(){return At[n]}}))});var jt=w(),Z=mt();e.react={isReactComponent:n.default,isCompatTag:r.default,buildChildren:i.default},e.toSequenceExpression=Z.default,process.env.BABEL_TYPES_8_BREAKING&&console.warn(`BABEL_TYPES_8_BREAKING is not supported anymore. Use the latest Babel 8.0.0 pre-release instead!`)})),ht=C(),gt=K(),_t=(e,t,n=`lithent`)=>{let r=new Set,i=new Set,a=new Map,o=new Set;for(let t of e.program.body){if(t.type===`ExportDefaultDeclaration`){let e=t.declaration;e.type===`Identifier`&&o.add(e.name),e.type===`FunctionDeclaration`&&e.id&&o.add(e.id.name)}if(t.type===`ImportDeclaration`&&t.importKind!==`type`)for(let e of t.specifiers){if(e.type===`ImportNamespaceSpecifier`){a.set(e.local.name,t.source.value);continue}if(e.type!==`ImportSpecifier`||e.importKind===`type`)continue;let o=e.imported.type===`Identifier`?e.imported.name:e.imported.value;t.source.value===n&&((o===`mount`||o===`lmount`)&&r.add(e.local.name),o===`h`&&i.add(e.local.name)),[`${n}/jsx-runtime`,`${n}/jsx-dev-runtime`].includes(t.source.value)&&[`jsx`,`jsxs`,`jsxDEV`].includes(o)&&i.add(e.local.name)}}let s=e=>e.type===`TSAsExpression`||e.type===`TSSatisfiesExpression`||e.type===`TSNonNullExpression`?s(e.expression):e,c=(e,t)=>{if(e.type!==`CallExpression`)return!1;let o=e.callee;if(o.type===`Identifier`)return(t?r:i).has(o.name);if(o.type!==`MemberExpression`||o.object.type!==`Identifier`)return!1;let s=a.get(o.object.name),c=!o.computed&&o.property.type===`Identifier`?o.property.name:o.property.type===`StringLiteral`?o.property.value:``;return t?s===n&&[`mount`,`lmount`].includes(c):s===n&&c===`h`||[`${n}/jsx-runtime`,`${n}/jsx-dev-runtime`].includes(s||``)&&[`jsx`,`jsxs`,`jsxDEV`].includes(c)},l=(e,t)=>(gt.VISITOR_KEYS[e.type]??[]).some(n=>{let r=e[n];return Array.isArray(r)?r.some(e=>(e==null?void 0:e.type)&&t(e)):(r==null?void 0:r.type)&&t(r)}),u=e=>e.type===`ArrowFunctionExpression`||e.type===`FunctionExpression`||e.type===`FunctionDeclaration`,d=e=>{if(!u(e))return!1;let t=e;if(t.async||t.generator)return!1;let n=new Map,r=[],i=e=>(u(e)||(e.type===`VariableDeclarator`&&e.id.type===`Identifier`&&e.init&&n.set(e.id.name,e.init),e.type===`ReturnStatement`&&e.argument&&r.push(e.argument),l(e,i)),!1);t.body.type===`BlockStatement`?i(t.body):r.push(t.body);let a=new Set,o=e=>{let r=s(e);if(r.type===`JSXElement`||r.type===`JSXFragment`||r.type===`NullLiteral`||r.type===`BooleanLiteral`&&!r.value||c(r,!1))return!0;if(r.type===`Identifier`){var i;if(r.name===`undefined`||((i=t.params[1])==null?void 0:i.type)===`Identifier`&&r.name===t.params[1].name)return!0;let e=n.get(r.name);if(!e||a.has(r.name))return!1;a.add(r.name);let s=o(e);return a.delete(r.name),s}return u(r)?!1:r.type===`CallExpression`?r.arguments.some(e=>u(e)&&d(e)):r.type===`ConditionalExpression`?o(r.consequent)||o(r.alternate):r.type===`LogicalExpression`?o(r.left)||o(r.right):r.type===`ArrayExpression`?!r.elements.length||r.elements.some(e=>e&&o(e)):!1};return r.some(o)},f=(e,t)=>{let n=s(e);return c(n,!0)?!0:!/^[A-Z]/.test(t)&&t!=="default"&&!o.has(t)?!1:d(n)},p=[],m=(e,t,n,r=!1)=>{f(e,t)&&p.push({componentName:t,declarationEnd:n,start:e.start,end:e.end,declaration:r})};for(let t of e.program.body){let e=t.type===`ExportNamedDeclaration`||t.type===`ExportDefaultDeclaration`?t.declaration:t;if(e){if(e.type===`VariableDeclaration`)for(let n of e.declarations)n.id.type===`Identifier`&&n.init&&m(n.init,n.id.name,t.end);else e.type===`FunctionDeclaration`&&e.id?m(e,e.id.name,t.end,!0):t.type===`ExportDefaultDeclaration`&&m(e,`default`,t.end)}}return p},vt=e=>{let t=new Set;for(let n of e.program.body)if(n.type===`ExportDefaultDeclaration`&&t.add(`default`),n.type===`ExportNamedDeclaration`){let{declaration:e,specifiers:r}=n;if(e){if(e.type===`FunctionDeclaration`&&e.id)t.add(e.id.name);else if(e.type===`VariableDeclaration`&&e.declarations.length)for(let n of e.declarations)n.id.type===`Identifier`&&t.add(n.id.name);else e.type===`ClassDeclaration`&&e.id&&t.add(e.id.name)}r!=null&&r.length&&r.forEach(e=>{e.type===`ExportSpecifier`&&e.exported.type===`Identifier`&&t.add(e.exported.name)})}return Array.from(t)},yt=e=>{let t=new Set([`render`,`mount`,`lmount`,`createApp`,`createRoot`]);for(let n of e.program.body){if(n.type!==`ImportDeclaration`)continue;let e=n.source.value;if(typeof e==`string`){if(e===`lithent`&&n.specifiers.some(e=>{if(e.type===`ImportSpecifier`&&e.imported.type===`Identifier`){let n=e.imported.name;return t.has(n)}return!1}))return!0;if(e.startsWith(`lithent/`)){if(n.importKind===`type`)continue;return!0}}}return!1},bt=(e,t,n,r)=>{var i,a;let o=[`import { getComponentKey as __lithentGetComponentKey, mountCallback as __lithentMountCallback, componentMap as __lithentComponentMap } from '${r}';`],s=!1,c=0,l=((i=e.program.directives.at(-1))==null?void 0:i.end)??((a=e.program.interpreter)==null?void 0:a.end)??0,u=null;for(let t of e.program.body)if(t.type===`ImportDeclaration`)c=t.end??c,u??(u=t.start??null),t.source.value===n&&t.importKind!==`type`&&(s=t.specifiers.some(e=>e.type===`ImportSpecifier`&&e.importKind!==`type`&&e.imported.type===`Identifier`&&e.imported.name===`createBoundary`&&e.local.name===`__lithentCreateBoundary`)||s);else{if(t.type===`ExpressionStatement`&&t.expression.type===`StringLiteral`){let e=t;if(typeof e.directive==`string`){l=e.end??l;continue}}break}s||o.push(`import { createBoundary as __lithentCreateBoundary } from '${n}';`);let d=u??l??0,f=c||l||0,p=``;if(o.length){let e=d>0?t[d-1]:void 0;p+=d>0&&e!==`
|
|
159
146
|
`?`
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
147
|
+
`:``,p+=o.join(`
|
|
148
|
+
`),p+=`
|
|
149
|
+
`}return{importInsertionPos:d,blockInsertionPos:f,headerSnippet:p}},xt=(e,t,n)=>{let r=(0,ht.parse)(e,{sourceType:`module`,plugins:[`typescript`,`jsx`],ranges:!0}),i=vt(r),a=i.length>0?i:[`default`],{importInsertionPos:o,blockInsertionPos:s,headerSnippet:c}=bt(r,e,t,n);return{ast:r,targetExports:a,importInsertionPos:o,blockInsertionPos:s,headerSnippet:c}},St=e=>{let{code:t,markerRegex:n,boundaryImportSpecifier:r,tagFunctionImportSpecifier:i}=e,{ast:a,targetExports:o,importInsertionPos:s,blockInsertionPos:c,headerSnippet:l}=xt(t,r,i),u=n.exec(t),d=u!=null&&u[1]?u[1].split(`,`).map(e=>e.trim()).filter(Boolean):[];return{targetExports:d.length?d:o,shouldTransform:!!u||yt(a)||_t(a,t,i).length>0,importInsertionPos:s,blockInsertionPos:c,headerSnippet:l,ast:a,match:u??null}},Ct=e=>{let{code:t,boundaryImportSpecifier:n,tagFunctionImportSpecifier:r}=e,{ast:i,targetExports:a,importInsertionPos:o,blockInsertionPos:s,headerSnippet:c}=xt(t,n,r);return{targetExports:a,shouldTransform:yt(i)||_t(i,t,r).length>0,importInsertionPos:o,blockInsertionPos:s,headerSnippet:c,ast:i}},wt=e=>e.includes(`__lithentModuleId`),Tt=(e,t,n,r)=>{let i=[];for(let n of t){let t=JSON.stringify(n.componentName);n.declaration?i.push(`${n.componentName} = __lithentWrapComponent(${t}, ${n.componentName});`):(e.appendLeft(n.start,`__lithentWrapComponent(${t}, `),e.appendRight(n.end,`)`))}return i.join(`
|
|
150
|
+
`)},q=(e,t,n,r=`lithent`)=>{let i=new Set,a=new Set;for(let e of t.program.body)if(e.type===`ImportDeclaration`&&e.importKind!==`type`&&e.source.value===r)for(let t of e.specifiers)t.type===`ImportNamespaceSpecifier`&&a.add(t.local.name),t.type===`ImportSpecifier`&&t.importKind!==`type`&&t.imported.type===`Identifier`&&t.imported.name===`render`&&i.add(t.local.name);let o=[],s=e=>{if(!(0,gt.isFunction)(e)){if(e.type===`CallExpression`){let t=e.callee;if(t.type===`Identifier`&&i.has(t.name)||t.type===`MemberExpression`&&!t.computed&&t.object.type===`Identifier`&&a.has(t.object.name)&&t.property.type===`Identifier`&&t.property.name===`render`){o.push(e);return}}for(let t of gt.VISITOR_KEYS[e.type]??[]){let n=e[t];Array.isArray(n)?n.forEach(e=>{e!=null&&e.type&&s(e)}):n!=null&&n.type&&s(n)}}};return s(t),o.sort((e,t)=>e.start-t.start).forEach((t,n)=>{e.appendLeft(t.start,`__lithentRenderOnce(${n}, () => `),e.appendRight(t.end,`)`)}),!!o.length},Et=(e,t)=>{let n=new Map,r=!0;for(let i of e.program.body){if(i.type===`ExportAllDeclaration`&&i.exportKind!==`type`&&(r=!1),i.type===`ExportDefaultDeclaration`){let e=i.declaration;e.type===`Identifier`?n.set(`default`,e.name):(e.type===`FunctionDeclaration`||e.type===`ClassDeclaration`)&&e.id?n.set(`default`,e.id.name):t.some(e=>e.componentName==="default")?n.set(`default`,`__lithentCurrentComponents.default?.component`):r=!1}if(i.type!==`ExportNamedDeclaration`||i.exportKind===`type`)continue;if(i.source){r=!1;continue}let e=i.declaration;if((e==null?void 0:e.type)===`VariableDeclaration`)for(let t of e.declarations)for(let e of Object.keys((0,gt.getBindingIdentifiers)(t.id)))n.set(e,e);else((e==null?void 0:e.type)===`FunctionDeclaration`||(e==null?void 0:e.type)===`ClassDeclaration`)&&e.id?n.set(e.id.name,e.id.name):e&&e.type!==`TSInterfaceDeclaration`&&e.type!==`TSTypeAliasDeclaration`&&(r=!1);for(let e of i.specifiers)if(e.type===`ExportSpecifier`&&e.exportKind!==`type`){let t=e.exported.type===`Identifier`?e.exported.name:e.exported.value;n.set(t,e.local.name)}}return`\n__lithentExportSnapshot = ${r?`{${Array.from(n,([e,t])=>`[${JSON.stringify(e)}]: ${t}`).join(`, `)}}`:`null`};\n`},J=e=>{let t=St(e),{match:n,targetExports:r,shouldTransform:i,importInsertionPos:a,blockInsertionPos:o,headerSnippet:s}=t;if(!i||!n)return{transformed:!1,code:e.code,map:null};let c=_t(t.ast,e.code,e.tagFunctionImportSpecifier),l=Array.from(new Set(c.map(e=>e.componentName).filter(e=>!!e))),u=new x(e.code);c.length&&q(u,t.ast,e.code,e.tagFunctionImportSpecifier);let d=Tt(u,c,e.code,a),f=S(r,l).trimStart(),p=o>0?e.code[o-1]:void 0,m=`${o>0&&p!==`
|
|
164
151
|
`?`
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
//# sourceMappingURL=lithentHmrParser.cjs.map
|
|
152
|
+
`:``}${f}\n${d}\n\n`;return o===a?u.appendLeft(a,`${s}${m}`):(u.appendLeft(a,s),u.appendLeft(o,m)),u.overwrite(n.index,n.index+n[0].length,``),u.append(Et(t.ast,c)),{transformed:!0,code:u.toString(),map:u.generateMap({hires:!0})}},Y=e=>{let{targetExports:t,shouldTransform:n,importInsertionPos:r,blockInsertionPos:i,headerSnippet:a,ast:o}=Ct(e);if(!n)return{transformed:!1,code:e.code,map:null};let s=_t(o,e.code,e.tagFunctionImportSpecifier),c=Array.from(new Set(s.map(e=>e.componentName).filter(e=>!!e))),l=new x(e.code);s.length&&q(l,o,e.code,e.tagFunctionImportSpecifier);let u=Tt(l,s,e.code,r),d=S(t,c).trimStart(),f=i>0?e.code[i-1]:void 0,p=`${i>0&&f!==`
|
|
153
|
+
`?`
|
|
154
|
+
`:``}${d}\n${u}\n\n`;return!a&&!p.trim().length?{transformed:!1,code:e.code,map:null}:(a?i===r?l.appendLeft(r,`${a}${p}`):(l.appendLeft(r,a),l.appendLeft(i,p)):l.appendLeft(i,p),l.append(Et(o,s)),{transformed:!0,code:l.toString(),map:l.generateMap({hires:!0})})},Dt=e=>{let t=J(e);return t.transformed?t:Y({code:e.code,boundaryImportSpecifier:e.boundaryImportSpecifier,tagFunctionImportSpecifier:e.tagFunctionImportSpecifier})};exports.analyzeMarker=St,exports.analyzeNoMarker=Ct,exports.shouldSkipTransform=wt,exports.transformWithHmr=Dt,exports.transformWithMarker=J,exports.transformWithoutMarker=Y;
|
|
155
|
+
//# sourceMappingURL=lithentHmrParser.cjs.map
|